From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Sahana Prasad To: git-commits@fedoraproject.org Subject: [rpms/openssl] rebase_40beta: Rebase to upstream version 3.0.0 Date: Tue, 09 Jun 2026 12:44:55 GMT Message-ID: <178100909575.1.7875117301514762792.rpms-openssl-347681c6b246@fedoraproject.org> List-ID: X-Git-Repo: rpms/openssl X-Git-Branch: rebase_40beta X-Git-Rev: 347681c6b246d9b6a08c73bb40e5eefaf8596d71 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvb3BlbnNzbAogICAgICAgICAgICBCcmFuY2ggOiByZWJhc2VfNDBiZXRhCiAg ICAgICAgICAgIENvbW1pdCA6IDM0NzY4MWM2YjI0NmQ5YjZhMDhjNzNiYjQwZTVlZWZhZjg1OTZk NzEKICAgICAgICAgICAgQXV0aG9yIDogU2FoYW5hIFByYXNhZCA8c2FoYW5hQHJlZGhhdC5jb20+ CiAgICAgICAgICAgIERhdGUgICA6IDIwMjEtMDktMDlUMTc6Mjc6MjErMDI6MDAKICAgICAgICAg ICAgU3RhdHMgIDogKzcwNzAvLTQ1NzUxIGluIDU3IGZpbGUocykKICAgICAgICAgICAgVVJMICAg IDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9vcGVuc3NsL2MvMzQ3NjgxYzZi MjQ2ZDliNmEwOGM3M2JiNDBlNWVlZmFmODU5NmQ3MT9icmFuY2g9cmViYXNlXzQwYmV0YQoKICAg ICAgICAgICAgTG9nOgogICAgICAgICAgICBSZWJhc2UgdG8gdXBzdHJlYW0gdmVyc2lvbiAzLjAu MAoKU2lnbmVkLW9mZi1ieTogU2FoYW5hIFByYXNhZCA8c2FoYW5hQHJlZGhhdC5jb20+CgotLS0K ZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCmluZGV4IDYyMDlmOTkuLjdjZGFk MzUgMTAwNjQ0Ci0tLSBhLy5naXRpZ25vcmUKKysrIGIvLmdpdGlnbm9yZQpAQCAtNTIsMyArNTIs NCBAQCBvcGVuc3NsLTEuMC4wYS11c2EudGFyLmJ6MgogL29wZW5zc2wtMS4xLjFpLWhvYmJsZWQu dGFyLnh6CiAvb3BlbnNzbC0xLjEuMWotaG9iYmxlZC50YXIueHoKIC9vcGVuc3NsLTEuMS4xay1o b2JibGVkLnRhci54egorL29wZW5zc2wtMy4wLjAtaG9iYmxlZC50YXIueHoKCmRpZmYgLS1naXQg YS8wMDAxLUFhcmNoNjQtYW5kLXBwYzY0bGUtdXNlLWxpYjY0LnBhdGNoIGIvMDAwMS1BYXJjaDY0 LWFuZC1wcGM2NGxlLXVzZS1saWI2NC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi5lNWQyM2JhCi0tLSAvZGV2L251bGwKKysrIGIvMDAwMS1BYXJjaDY0LWFuZC1wcGM2 NGxlLXVzZS1saWI2NC5wYXRjaApAQCAtMCwwICsxLDMzIEBACitGcm9tIDYwM2EzNTgwMjMxOWMw NDU5NzM3ZTNmMDY3MzY5Y2ViOTkwZmUyZTYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9t OiBUb21hcyBNcmF6IDx0bXJhekBmZWRvcmFwcm9qZWN0Lm9yZz4KK0RhdGU6IFRodSwgMjQgU2Vw IDIwMjAgMDk6MDE6NDEgKzAyMDAKK1N1YmplY3Q6IEFhcmNoNjQgYW5kIHBwYzY0bGUgdXNlIGxp YjY0CisKKyhXYXMgb3BlbnNzbC0xLjEuMS1idWlsZC5wYXRjaCkKKy0tLQorIENvbmZpZ3VyYXRp b25zLzEwLW1haW4uY29uZiB8IDIgKysKKyAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp CisKK2RpZmYgLS1naXQgYS9Db25maWd1cmF0aW9ucy8xMC1tYWluLmNvbmYgYi9Db25maWd1cmF0 aW9ucy8xMC1tYWluLmNvbmYKK2luZGV4IGQ3NTgwYmYzZTEuLmE3ZGJmZDdmNDAgMTAwNjQ0Cist LS0gYS9Db25maWd1cmF0aW9ucy8xMC1tYWluLmNvbmYKKysrKyBiL0NvbmZpZ3VyYXRpb25zLzEw LW1haW4uY29uZgorQEAgLTcyMyw2ICs3MjMsNyBAQCBteSAldGFyZ2V0cyA9ICgKKyAgICAgICAg IGxpYl9jcHBmbGFncyAgICAgPT4gYWRkKCItRExfRU5ESUFOIiksCisgICAgICAgICBhc21fYXJj aCAgICAgICAgID0+ICdwcGM2NCcsCisgICAgICAgICBwZXJsYXNtX3NjaGVtZSAgID0+ICJsaW51 eDY0bGUiLAorKyAgICAgICAgbXVsdGlsaWIgICAgICAgICA9PiAiNjQiLAorICAgICB9LAorIAor ICAgICAibGludXgtYXJtdjQiID0+IHsKK0BAIC03NjUsNiArNzY2LDcgQEAgbXkgJXRhcmdldHMg PSAoCisgICAgICAgICBpbmhlcml0X2Zyb20gICAgID0+IFsgImxpbnV4LWdlbmVyaWM2NCIgXSwK KyAgICAgICAgIGFzbV9hcmNoICAgICAgICAgPT4gJ2FhcmNoNjQnLAorICAgICAgICAgcGVybGFz bV9zY2hlbWUgICA9PiAibGludXg2NCIsCisrICAgICAgICBtdWx0aWxpYiAgICAgICAgID0+ICI2 NCIsCisgICAgIH0sCisgICAgICJsaW51eC1hcm02NGlscDMyIiA9PiB7ICAjIGh0dHBzOi8vd2lr aS5saW5hcm8ub3JnL1BsYXRmb3JtL2FybTY0LWlscDMyCisgICAgICAgICBpbmhlcml0X2Zyb20g ICAgID0+IFsgImxpbnV4LWdlbmVyaWMzMiIgXSwKKy0tIAorMi4yNi4yCisKCmRpZmYgLS1naXQg YS8wMDAyLVVzZS1tb3JlLWdlbmVyYWwtZGVmYXVsdC12YWx1ZXMtaW4tb3BlbnNzbC5jbmYucGF0 Y2ggYi8wMDAyLVVzZS1tb3JlLWdlbmVyYWwtZGVmYXVsdC12YWx1ZXMtaW4tb3BlbnNzbC5jbmYu cGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uODNlZDU5OQotLS0gL2Rl di9udWxsCisrKyBiLzAwMDItVXNlLW1vcmUtZ2VuZXJhbC1kZWZhdWx0LXZhbHVlcy1pbi1vcGVu c3NsLmNuZi5wYXRjaApAQCAtMCwwICsxLDY4IEBACitGcm9tIDQxZGY5YWUyMTVjZWU5NTc0ZTE3 ZTZmODg3Yzk2YTdjOTdkNTg4ZjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBUb21h cyBNcmF6IDx0bXJhekBmZWRvcmFwcm9qZWN0Lm9yZz4KK0RhdGU6IFRodSwgMjQgU2VwIDIwMjAg MDk6MDM6NDAgKzAyMDAKK1N1YmplY3Q6IFVzZSBtb3JlIGdlbmVyYWwgZGVmYXVsdCB2YWx1ZXMg aW4gb3BlbnNzbC5jbmYKKworQWxzbyBzZXQgc2hhMjU2IGFzIGRlZmF1bHQgaGFzaCwgYWx0aG91 Z2ggdGhhdCBzaG91bGQgbm90IGJlCituZWNlc3NhcnkgYW55bW9yZS4KKworKHdhcyBvcGVuc3Ns LTEuMS4xLWRlZmF1bHRzLnBhdGNoKQorLS0tCisgYXBwcy9vcGVuc3NsLmNuZiB8IDEyICsrKysr KystLS0tLQorIDEgZmlsZSBjaGFuZ2VkLCA3IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0p CisKK2RpZmYgLS1naXQgYS9hcHBzL29wZW5zc2wuY25mIGIvYXBwcy9vcGVuc3NsLmNuZgoraW5k ZXggOTc1NjdhNjdiZS4uZWIyNWEwYWM0OCAxMDA2NDQKKy0tLSBhL2FwcHMvb3BlbnNzbC5jbmYK KysrKyBiL2FwcHMvb3BlbnNzbC5jbmYKK0BAIC0xMDQsNyArMTA0LDcgQEAgY2VydF9vcHQgCT0g Y2FfZGVmYXVsdAkJIyBDZXJ0aWZpY2F0ZSBmaWVsZCBvcHRpb25zCisgCisgZGVmYXVsdF9kYXlz CT0gMzY1CQkJIyBob3cgbG9uZyB0byBjZXJ0aWZ5IGZvcgorIGRlZmF1bHRfY3JsX2RheXM9IDMw CQkJIyBob3cgbG9uZyBiZWZvcmUgbmV4dCBDUkwKKy1kZWZhdWx0X21kCT0gZGVmYXVsdAkJIyB1 c2UgcHVibGljIGtleSBkZWZhdWx0IE1ECisrZGVmYXVsdF9tZAk9IHNoYTI1NgkJIyB1c2UgU0hB LTI1NiBieSBkZWZhdWx0CisgcHJlc2VydmUJPSBubwkJCSMga2VlcCBwYXNzZWQgRE4gb3JkZXJp bmcKKyAKKyAjIEEgZmV3IGRpZmZlcmVuY2Ugd2F5IG9mIHNwZWNpZnlpbmcgaG93IHNpbWlsYXIg dGhlIHJlcXVlc3Qgc2hvdWxkIGxvb2sKK0BAIC0xMzYsNiArMTM2LDcgQEAgZW1haWxBZGRyZXNz CQk9IG9wdGlvbmFsCisgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKyBbIHJlcSBdCisgZGVmYXVsdF9iaXRzCQk9IDIw NDgKKytkZWZhdWx0X21kCQk9IHNoYTI1NgorIGRlZmF1bHRfa2V5ZmlsZSAJPSBwcml2a2V5LnBl bQorIGRpc3Rpbmd1aXNoZWRfbmFtZQk9IHJlcV9kaXN0aW5ndWlzaGVkX25hbWUKKyBhdHRyaWJ1 dGVzCQk9IHJlcV9hdHRyaWJ1dGVzCitAQCAtMTU4LDE3ICsxNTksMTggQEAgc3RyaW5nX21hc2sg PSB1dGY4b25seQorIAorIFsgcmVxX2Rpc3Rpbmd1aXNoZWRfbmFtZSBdCisgY291bnRyeU5hbWUJ CQk9IENvdW50cnkgTmFtZSAoMiBsZXR0ZXIgY29kZSkKKy1jb3VudHJ5TmFtZV9kZWZhdWx0CQk9 IEFVCisrY291bnRyeU5hbWVfZGVmYXVsdAkJPSBYWAorIGNvdW50cnlOYW1lX21pbgkJCT0gMgor IGNvdW50cnlOYW1lX21heAkJCT0gMgorIAorIHN0YXRlT3JQcm92aW5jZU5hbWUJCT0gU3RhdGUg b3IgUHJvdmluY2UgTmFtZSAoZnVsbCBuYW1lKQorLXN0YXRlT3JQcm92aW5jZU5hbWVfZGVmYXVs dAk9IFNvbWUtU3RhdGUKKysjc3RhdGVPclByb3ZpbmNlTmFtZV9kZWZhdWx0CT0gRGVmYXVsdCBQ cm92aW5jZQorIAorIGxvY2FsaXR5TmFtZQkJCT0gTG9jYWxpdHkgTmFtZSAoZWcsIGNpdHkpCisr bG9jYWxpdHlOYW1lX2RlZmF1bHQJCT0gRGVmYXVsdCBDaXR5CisgCisgMC5vcmdhbml6YXRpb25O YW1lCQk9IE9yZ2FuaXphdGlvbiBOYW1lIChlZywgY29tcGFueSkKKy0wLm9yZ2FuaXphdGlvbk5h bWVfZGVmYXVsdAk9IEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZAorKzAub3JnYW5pemF0aW9uTmFt ZV9kZWZhdWx0CT0gRGVmYXVsdCBDb21wYW55IEx0ZAorIAorICMgd2UgY2FuIGRvIHRoaXMgYnV0 IGl0IGlzIG5vdCBuZWVkZWQgbm9ybWFsbHkgOi0pCisgIzEub3JnYW5pemF0aW9uTmFtZQkJPSBT ZWNvbmQgT3JnYW5pemF0aW9uIE5hbWUgKGVnLCBjb21wYW55KQorQEAgLTE3Nyw3ICsxNzksNyBA QCBsb2NhbGl0eU5hbWUJCQk9IExvY2FsaXR5IE5hbWUgKGVnLCBjaXR5KQorIG9yZ2FuaXphdGlv bmFsVW5pdE5hbWUJCT0gT3JnYW5pemF0aW9uYWwgVW5pdCBOYW1lIChlZywgc2VjdGlvbikKKyAj b3JnYW5pemF0aW9uYWxVbml0TmFtZV9kZWZhdWx0CT0KKyAKKy1jb21tb25OYW1lCQkJPSBDb21t b24gTmFtZSAoZS5nLiBzZXJ2ZXIgRlFETiBvciBZT1VSIG5hbWUpCisrY29tbW9uTmFtZQkJCT0g Q29tbW9uIE5hbWUgKGVnLCB5b3VyIG5hbWUgb3IgeW91ciBzZXJ2ZXJcJ3MgaG9zdG5hbWUpCisg Y29tbW9uTmFtZV9tYXgJCQk9IDY0CisgCisgZW1haWxBZGRyZXNzCQkJPSBFbWFpbCBBZGRyZXNz CistLSAKKzIuMjYuMgorCgpkaWZmIC0tZ2l0IGEvMDAwMy1Eby1ub3QtaW5zdGFsbC1odG1sLWRv Y3MucGF0Y2ggYi8wMDAzLURvLW5vdC1pbnN0YWxsLWh0bWwtZG9jcy5wYXRjaApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NmQ2MmUwCi0tLSAvZGV2L251bGwKKysrIGIvMDAw My1Eby1ub3QtaW5zdGFsbC1odG1sLWRvY3MucGF0Y2gKQEAgLTAsMCArMSwyNiBAQAorRnJvbSAz ZDU3NTVkZjhkMDljYTg0MWMwYWNhMmQ3MzQ0ZGIwNjBmNmNjOTdmIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQorRnJvbTogVG9tYXMgTXJheiA8dG1yYXpAZmVkb3JhcHJvamVjdC5vcmc+CitEYXRl OiBUaHUsIDI0IFNlcCAyMDIwIDA5OjA1OjU1ICswMjAwCitTdWJqZWN0OiBEbyBub3QgaW5zdGFs bCBodG1sIGRvY3MKKworKHdhcyBvcGVuc3NsLTEuMS4xLW5vLWh0bWwucGF0Y2gpCistLS0KKyBD b25maWd1cmF0aW9ucy91bml4LU1ha2VmaWxlLnRtcGwgfCAyICstCisgMSBmaWxlIGNoYW5nZWQs IDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCisKK2RpZmYgLS1naXQgYS9Db25maWd1cmF0 aW9ucy91bml4LU1ha2VmaWxlLnRtcGwgYi9Db25maWd1cmF0aW9ucy91bml4LU1ha2VmaWxlLnRt cGwKK2luZGV4IDM0MmU0NmQyNGQuLjlmMzY5ZWRmMGUgMTAwNjQ0CistLS0gYS9Db25maWd1cmF0 aW9ucy91bml4LU1ha2VmaWxlLnRtcGwKKysrKyBiL0NvbmZpZ3VyYXRpb25zL3VuaXgtTWFrZWZp bGUudG1wbAorQEAgLTU1NCw3ICs1NTQsNyBAQCBpbnN0YWxsX3N3OiBpbnN0YWxsX2RldiBpbnN0 YWxsX2VuZ2luZXMgaW5zdGFsbF9tb2R1bGVzIGluc3RhbGxfcnVudGltZQorIAorIHVuaW5zdGFs bF9zdzogdW5pbnN0YWxsX3J1bnRpbWUgdW5pbnN0YWxsX21vZHVsZXMgdW5pbnN0YWxsX2VuZ2lu ZXMgdW5pbnN0YWxsX2RldgorIAorLWluc3RhbGxfZG9jczogaW5zdGFsbF9tYW5fZG9jcyBpbnN0 YWxsX2h0bWxfZG9jcworK2luc3RhbGxfZG9jczogaW5zdGFsbF9tYW5fZG9jcworIAorIHVuaW5z dGFsbF9kb2NzOiB1bmluc3RhbGxfbWFuX2RvY3MgdW5pbnN0YWxsX2h0bWxfZG9jcworIAkkKFJN KSAtciAkKERFU1RESVIpJChET0NESVIpCistLSAKKzIuMjYuMgorCgpkaWZmIC0tZ2l0IGEvMDAw NC1PdmVycmlkZS1kZWZhdWx0LXBhdGhzLWZvci10aGUtQ0EtZGlyZWN0b3J5LXRyZWUucGF0Y2gg Yi8wMDA0LU92ZXJyaWRlLWRlZmF1bHQtcGF0aHMtZm9yLXRoZS1DQS1kaXJlY3RvcnktdHJlZS5w YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43YzcwYzYwCi0tLSAvZGV2 L251bGwKKysrIGIvMDAwNC1PdmVycmlkZS1kZWZhdWx0LXBhdGhzLWZvci10aGUtQ0EtZGlyZWN0 b3J5LXRyZWUucGF0Y2gKQEAgLTAsMCArMSw3MyBAQAorRnJvbSA2NzkwOTYwMDc2NzQyYTkwNTNj NjI0ZTI2ZmJiODdmY2Q1Nzg5ZTI3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogVG9t YXMgTXJheiA8dG1yYXpAZmVkb3JhcHJvamVjdC5vcmc+CitEYXRlOiBUaHUsIDI0IFNlcCAyMDIw IDA5OjE3OjI2ICswMjAwCitTdWJqZWN0OiBPdmVycmlkZSBkZWZhdWx0IHBhdGhzIGZvciB0aGUg Q0EgZGlyZWN0b3J5IHRyZWUKKworQWxzbyBhZGQgZGVmYXVsdCBzZWN0aW9uIHRvIGxvYWQgY3J5 cHRvLXBvbGljaWVzIGNvbmZpZ3VyYXRpb24KK2ZvciBUTFMuCisKK0l0IG5lZWRzIHRvIGJlIHJl dmVydGVkIGJlZm9yZSBydW5uaW5nIHRlc3RzLgorCisod2FzIG9wZW5zc2wtMS4xLjEtY29uZi1w YXRocy5wYXRjaCkKKy0tLQorIGFwcHMvQ0EucGwuaW4gICAgfCAgMiArLQorIGFwcHMvb3BlbnNz bC5jbmYgfCAyMCArKysrKysrKysrKysrKysrKystLQorIDIgZmlsZXMgY2hhbmdlZCwgMTkgaW5z ZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2FwcHMvQ0EucGwuaW4g Yi9hcHBzL0NBLnBsLmluCitpbmRleCBjMGFmYjk2NzE2Li5kNmE1ZmFiZDE2IDEwMDY0NAorLS0t IGEvYXBwcy9DQS5wbC5pbgorKysrIGIvYXBwcy9DQS5wbC5pbgorQEAgLTI5LDcgKzI5LDcgQEAg bXkgJFg1MDkgPSAiJG9wZW5zc2wgeDUwOSI7CisgbXkgJFBLQ1MxMiA9ICIkb3BlbnNzbCBwa2Nz MTIiOworIAorICMgRGVmYXVsdCB2YWx1ZXMgZm9yIHZhcmlvdXMgY29uZmlndXJhdGlvbiBzZXR0 aW5ncy4KKy1teSAkQ0FUT1AgPSAiLi9kZW1vQ0EiOworK215ICRDQVRPUCA9ICIvZXRjL3BraS9D QSI7CisgbXkgJENBS0VZID0gImNha2V5LnBlbSI7CisgbXkgJENBUkVRID0gImNhcmVxLnBlbSI7 CisgbXkgJENBQ0VSVCA9ICJjYWNlcnQucGVtIjsKK2RpZmYgLXVwIG9wZW5zc2wtMy4wLjAtYWxw aGExNi9hcHBzL29wZW5zc2wuY25mLmRlZmF1bHQtdGxzIG9wZW5zc2wtMy4wLjAtYWxwaGExNi9h cHBzL29wZW5zc2wuY25mCistLS0gb3BlbnNzbC0zLjAuMC1hbHBoYTE2L2FwcHMvb3BlbnNzbC5j bmYuZGVmYXVsdC10bHMJMjAyMS0wNy0wNiAxMzo0MTozOS4yMDQ5NzgyNzIgKzAyMDAKKysrKyBv cGVuc3NsLTMuMC4wLWFscGhhMTYvYXBwcy9vcGVuc3NsLmNuZgkyMDIxLTA3LTA2IDEzOjQ5OjUw LjM2Mjg1NzY4MyArMDIwMAorQEAgLTUzLDYgKzUzLDggQEAgdHNhX3BvbGljeTMgPSAxLjIuMy40 LjUuNworIAorIFtvcGVuc3NsX2luaXRdCisgcHJvdmlkZXJzID0gcHJvdmlkZXJfc2VjdAorKyMg TG9hZCBkZWZhdWx0IFRMUyBwb2xpY3kgY29uZmlndXJhdGlvbgorK3NzbF9jb25mID0gc3NsX21v ZHVsZQorIAorICMgTGlzdCBvZiBwcm92aWRlcnMgdG8gbG9hZAorIFtwcm92aWRlcl9zZWN0XQor QEAgLTY0LDYgKzY2LDEzIEBAIGRlZmF1bHQgPSBkZWZhdWx0X3NlY3QKKyBbZGVmYXVsdF9zZWN0 XQorICMgYWN0aXZhdGUgPSAxCisgCisrWyBzc2xfbW9kdWxlIF0KKysKKytzeXN0ZW1fZGVmYXVs dCA9IGNyeXB0b19wb2xpY3kKKysKKytbIGNyeXB0b19wb2xpY3kgXQorKworKy5pbmNsdWRlID0g L2V0Yy9jcnlwdG8tcG9saWNpZXMvYmFjay1lbmRzL29wZW5zc2xjbmYuY29uZmlnCisgCisgIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMKKyBbIGNhIF0KK0BAIC03Miw3ICs4MSw3IEBAIGRlZmF1bHRfY2EJPSBDQV9kZWZh dWx0CQkjIFRoZSBkZWZhdWx0IGMKKyAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworIFsgQ0FfZGVmYXVsdCBdCisgCist ZGlyCQk9IC4vZGVtb0NBCQkjIFdoZXJlIGV2ZXJ5dGhpbmcgaXMga2VwdAorK2RpcgkJPSAvZXRj L3BraS9DQQkJIyBXaGVyZSBldmVyeXRoaW5nIGlzIGtlcHQKKyBjZXJ0cwkJPSAkZGlyL2NlcnRz CQkjIFdoZXJlIHRoZSBpc3N1ZWQgY2VydHMgYXJlIGtlcHQKKyBjcmxfZGlyCQk9ICRkaXIvY3Js CQkjIFdoZXJlIHRoZSBpc3N1ZWQgY3JsIGFyZSBrZXB0CisgZGF0YWJhc2UJPSAkZGlyL2luZGV4 LnR4dAkjIGRhdGFiYXNlIGluZGV4IGZpbGUuCitAQCAtMzA0LDcgKzMxMyw3IEBAIGRlZmF1bHRf dHNhID0gdHNhX2NvbmZpZzEJIyB0aGUgZGVmYXVsdAorIFsgdHNhX2NvbmZpZzEgXQorIAorICMg VGhlc2UgYXJlIHVzZWQgYnkgdGhlIFRTQSByZXBseSBnZW5lcmF0aW9uIG9ubHkuCistZGlyCQk9 IC4vZGVtb0NBCQkjIFRTQSByb290IGRpcmVjdG9yeQorK2RpcgkJPSAvZXRjL3BraS9DQQkJIyBU U0Egcm9vdCBkaXJlY3RvcnkKKyBzZXJpYWwJCT0gJGRpci90c2FzZXJpYWwJIyBUaGUgY3VycmVu dCBzZXJpYWwgbnVtYmVyIChtYW5kYXRvcnkpCisgY3J5cHRvX2RldmljZQk9IGJ1aWx0aW4JCSMg T3BlblNTTCBlbmdpbmUgdG8gdXNlIGZvciBzaWduaW5nCisgc2lnbmVyX2NlcnQJPSAkZGlyL3Rz YWNlcnQucGVtIAkjIFRoZSBUU0Egc2lnbmluZyBjZXJ0aWZpY2F0ZQoKZGlmZiAtLWdpdCBhLzAw MDUtYXBwcy1jYS1maXgtbWQtb3B0aW9uLWhlbHAtdGV4dC5wYXRjaCBiLzAwMDUtYXBwcy1jYS1m aXgtbWQtb3B0aW9uLWhlbHAtdGV4dC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi4xZmVkNGM0Ci0tLSAvZGV2L251bGwKKysrIGIvMDAwNS1hcHBzLWNhLWZpeC1tZC1v cHRpb24taGVscC10ZXh0LnBhdGNoCkBAIC0wLDAgKzEsMjggQEAKK0Zyb20gM2Q4ZmE5ODU5NTAx YjA3ZTAyYjc2YjU1NzdlMjkxNWQ1ODUxZTkyNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zy b206IFRvbWFzIE1yYXogPHRtcmF6QGZlZG9yYXByb2plY3Qub3JnPgorRGF0ZTogVGh1LCAyNCBT ZXAgMjAyMCAwOToyNzoxOCArMDIwMAorU3ViamVjdDogYXBwcy9jYTogZml4IG1kIG9wdGlvbiBo ZWxwIHRleHQKKwordXBzdHJlYW1hYmxlCisKKyh3YXMgb3BlbnNzbC0xLjEuMS1hcHBzLWRnc3Qu cGF0Y2gpCistLS0KKyBhcHBzL2NhLmMgfCAyICstCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0 aW9uKCspLCAxIGRlbGV0aW9uKC0pCisKK2RpZmYgLS1naXQgYS9hcHBzL2NhLmMgYi9hcHBzL2Nh LmMKK2luZGV4IDBmMjFiNGZhMWMuLjNkNGIyYzE2NzMgMTAwNzU1CistLS0gYS9hcHBzL2NhLmMK KysrKyBiL2FwcHMvY2EuYworQEAgLTIwOSw3ICsyMDksNyBAQCBjb25zdCBPUFRJT05TIGNhX29w dGlvbnNbXSA9IHsKKyAgICAgeyJub2VtYWlsRE4iLCBPUFRfTk9FTUFJTEROLCAnLScsICJEb24n dCBhZGQgdGhlIEVNQUlMIGZpZWxkIHRvIHRoZSBETiJ9LAorIAorICAgICBPUFRfU0VDVElPTigi U2lnbmluZyIpLAorLSAgICB7Im1kIiwgT1BUX01ELCAncycsICJEaWdlc3QgdG8gdXNlLCBzdWNo IGFzIHNoYTI1NiJ9LAorKyAgICB7Im1kIiwgT1BUX01ELCAncycsICJEaWdlc3QgdG8gdXNlLCBz dWNoIGFzIHNoYTI1Njsgc2VlIG9wZW5zc2wgaGVscCBmb3IgbGlzdCJ9LAorICAgICB7ImtleWZp bGUiLCBPUFRfS0VZRklMRSwgJ3MnLCAiVGhlIENBIHByaXZhdGUga2V5In0sCisgICAgIHsia2V5 Zm9ybSIsIE9QVF9LRVlGT1JNLCAnZicsCisgICAgICAiUHJpdmF0ZSBrZXkgZmlsZSBmb3JtYXQg KEVOR0lORSwgb3RoZXIgdmFsdWVzIGlnbm9yZWQpIn0sCistLSAKKzIuMjYuMgorCgpkaWZmIC0t Z2l0IGEvMDAwNi1EaXNhYmxlLXNpZ25hdHVyZS12ZXJpZmljYXRpb24td2l0aC10b3RhbGx5LXVu c2FmZS1oLnBhdGNoIGIvMDAwNi1EaXNhYmxlLXNpZ25hdHVyZS12ZXJpZmljYXRpb24td2l0aC10 b3RhbGx5LXVuc2FmZS1oLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu LmY5ZGQyZGQKLS0tIC9kZXYvbnVsbAorKysgYi8wMDA2LURpc2FibGUtc2lnbmF0dXJlLXZlcmlm aWNhdGlvbi13aXRoLXRvdGFsbHktdW5zYWZlLWgucGF0Y2gKQEAgLTAsMCArMSwyOSBAQAorRnJv bSAzZjlkZWZmMzBhZTZlZmJmZTk3OTA0M2IwMGNkZjY0OWIzOTc5M2MwIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQorRnJvbTogVG9tYXMgTXJheiA8dG1yYXpAZmVkb3JhcHJvamVjdC5vcmc+CitE YXRlOiBUaHUsIDI0IFNlcCAyMDIwIDA5OjUxOjM0ICswMjAwCitTdWJqZWN0OiBEaXNhYmxlIHNp Z25hdHVyZSB2ZXJpZmljYXRpb24gd2l0aCB0b3RhbGx5IHVuc2FmZSBoYXNoIGFsZ29yaXRobXMK KworKHdhcyBvcGVuc3NsLTEuMS4xLW5vLXdlYWstdmVyaWZ5LnBhdGNoKQorLS0tCisgY3J5cHRv L2FzbjEvYV92ZXJpZnkuYyB8IDUgKysrKysKKyAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25z KCspCisKK2RpZmYgLS1naXQgYS9jcnlwdG8vYXNuMS9hX3ZlcmlmeS5jIGIvY3J5cHRvL2FzbjEv YV92ZXJpZnkuYworaW5kZXggYjdlZWQ5MTRiMC4uYWY2MmYwZWYwOCAxMDA2NDQKKy0tLSBhL2Ny eXB0by9hc24xL2FfdmVyaWZ5LmMKKysrKyBiL2NyeXB0by9hc24xL2FfdmVyaWZ5LmMKK0BAIC0x NTIsNiArMTUyLDExIEBAIGludCBBU04xX2l0ZW1fdmVyaWZ5X2N0eChjb25zdCBBU04xX0lURU0g Kml0LCBjb25zdCBYNTA5X0FMR09SICphbGcsCisgICAgICAgICAgICAgRVJSX3JhaXNlKEVSUl9M SUJfQVNOMSwgRVJSX1JfRVZQX0xJQik7CisgICAgICAgICBpZiAocmV0IDw9IDEpCisgICAgICAg ICAgICAgZ290byBlcnI7CisrICAgIH0gZWxzZSBpZiAoKG1kbmlkID09IE5JRF9tZDUKKysgICAg ICAgICAgICAgICAmJiBvc3NsX3NhZmVfZ2V0ZW52KCJPUEVOU1NMX0VOQUJMRV9NRDVfVkVSSUZZ IikgPT0gTlVMTCkgfHwKKysgICAgICAgICAgICAgICBtZG5pZCA9PSBOSURfbWQ0IHx8IG1kbmlk ID09IE5JRF9tZDIgfHwgbWRuaWQgPT0gTklEX3NoYSkgeworKyAgICAgICAgRVJSX3JhaXNlKEVS Ul9MSUJfQVNOMSwgQVNOMV9SX1VOS05PV05fTUVTU0FHRV9ESUdFU1RfQUxHT1JJVEhNKTsKKysg ICAgICAgIGdvdG8gZXJyOworICAgICB9IGVsc2UgeworICAgICAgICAgY29uc3QgRVZQX01EICp0 eXBlID0gTlVMTDsKKyAKKy0tIAorMi4yNi4yCisKCmRpZmYgLS1naXQgYS8wMDA3LUFkZC1zdXBw b3J0LWZvci1QUk9GSUxFLVNZU1RFTS1zeXN0ZW0tZGVmYXVsdC1jaXBoZXIucGF0Y2ggYi8wMDA3 LUFkZC1zdXBwb3J0LWZvci1QUk9GSUxFLVNZU1RFTS1zeXN0ZW0tZGVmYXVsdC1jaXBoZXIucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTMyYzllOAotLS0gL2Rldi9u dWxsCisrKyBiLzAwMDctQWRkLXN1cHBvcnQtZm9yLVBST0ZJTEUtU1lTVEVNLXN5c3RlbS1kZWZh dWx0LWNpcGhlci5wYXRjaApAQCAtMCwwICsxLDMzMSBAQAorRnJvbSA3MzZkNzA5ZWMxOTRiM2E3 NjNlMDA0Njk2ZGYyMjc5MmM2MmExMWZjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTog VG9tYXMgTXJheiA8dG1yYXpAZmVkb3JhcHJvamVjdC5vcmc+CitEYXRlOiBUaHUsIDI0IFNlcCAy MDIwIDEwOjE2OjQ2ICswMjAwCitTdWJqZWN0OiBBZGQgc3VwcG9ydCBmb3IgUFJPRklMRT1TWVNU RU0gc3lzdGVtIGRlZmF1bHQgY2lwaGVybGlzdAorCisod2FzIG9wZW5zc2wtMS4xLjEtc3lzdGVt LWNpcGhlcmxpc3QucGF0Y2gpCistLS0KKyBDb25maWd1cmF0aW9ucy91bml4LU1ha2VmaWxlLnRt cGwgfCAgNSArKworIENvbmZpZ3VyZSAgICAgICAgICAgICAgICAgICAgICAgICB8IDEwICsrKy0K KyBkb2MvbWFuMS9vcGVuc3NsLWNpcGhlcnMucG9kLmluICAgfCAgOSArKysrCisgaW5jbHVkZS9v cGVuc3NsL3NzbC5oLmluICAgICAgICAgIHwgIDUgKysKKyBzc2wvc3NsX2NpcGguYyAgICAgICAg ICAgICAgICAgICAgfCA4OCArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tCisgc3NsL3Nz bF9saWIuYyAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0KKyB0ZXN0L2NpcGhlcmxpc3RfdGVz dC5jICAgICAgICAgICAgfCAgMiArCisgdXRpbC9saWJjcnlwdG8ubnVtICAgICAgICAgICAgICAg IHwgIDEgKworIDggZmlsZXMgY2hhbmdlZCwgMTEwIGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9u cygtKQorCitkaWZmIC0tZ2l0IGEvQ29uZmlndXJhdGlvbnMvdW5peC1NYWtlZmlsZS50bXBsIGIv Q29uZmlndXJhdGlvbnMvdW5peC1NYWtlZmlsZS50bXBsCitpbmRleCA5ZjM2OWVkZjBlLi5jNTIz ODlmODMxIDEwMDY0NAorLS0tIGEvQ29uZmlndXJhdGlvbnMvdW5peC1NYWtlZmlsZS50bXBsCisr KysgYi9Db25maWd1cmF0aW9ucy91bml4LU1ha2VmaWxlLnRtcGwKK0BAIC0yNjksNiArMjY5LDEw IEBAIE1BTkRJUj0kKElOU1RBTExUT1ApL3NoYXJlL21hbgorIERPQ0RJUj0kKElOU1RBTExUT1Ap L3NoYXJlL2RvYy8kKEJBU0VOQU1FKQorIEhUTUxESVI9JChET0NESVIpL2h0bWwKKyAKKyt7LSBv dXRwdXRfb2ZmKCkgaWYgJGNvbmZpZ3tzeXN0ZW1fY2lwaGVyc19maWxlfSBlcSAiIjsgIiIgLX0K KytTWVNURU1fQ0lQSEVSU19GSUxFX0RFRklORT0tRFNZU1RFTV9DSVBIRVJTX0ZJTEU9Ilwiey0g JGNvbmZpZ3tzeXN0ZW1fY2lwaGVyc19maWxlfSAtfVwiIgorK3stIG91dHB1dF9vbigpIGlmICRj b25maWd7c3lzdGVtX2NpcGhlcnNfZmlsZX0gZXEgIiI7ICIiIC19CisrCisgIyBNQU5TVUZGSVgg aXMgZm9yIHRoZSBiZW5lZml0IG9mIGFueW9uZSB3aG8gbWF5IHdhbnQgdG8gaGF2ZSBhIHN1ZmZp eAorICMgYXBwZW5kZWQgYWZ0ZXIgdGhlIG1hbnBhZ2UgZmlsZSBzZWN0aW9uIG51bWJlci4gICJz c2wiIGlzIHBvcHVsYXIsCisgIyByZXN1bHRpbmcgaW4gZmlsZXMgc3VjaCBhcyBjb25maWcuNXNz bCByYXRoZXIgdGhhbiBjb25maWcuNS4KK0BAIC0yOTIsNiArMjk2LDcgQEAgQ0M9JChDUk9TU19D T01QSUxFKXstICRjb25maWd7Q0N9IC19CisgQ1hYPXstICRjb25maWd7Q1hYfSA/ICJcJChDUk9T U19DT01QSUxFKSRjb25maWd7Q1hYfSIgOiAnJyAtfQorIENQUEZMQUdTPXstIG91ciAkY3BwZmxh Z3MxID0gam9pbigiICIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXAg eyAiLUQiLiRffSBAeyRjb25maWd7Q1BQREVGSU5FU319KSwKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIlwkKFNZU1RFTV9DSVBIRVJTX0ZJTEVfREVGSU5FKSIsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtYXAgeyAiLUkiLiRffSBAeyRjb25maWd7Q1BQ SU5DTFVERVN9fSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEB7JGNvbmZp Z3tDUFBGTEFHU319KSAtfQorIENGTEFHUz17LSBqb2luKCcgJywgQHskY29uZmlne0NGTEFHU319 KSAtfQorZGlmZiAtLWdpdCBhL2RvYy9tYW4xL29wZW5zc2wtY2lwaGVycy5wb2QuaW4gYi9kb2Mv bWFuMS9vcGVuc3NsLWNpcGhlcnMucG9kLmluCitpbmRleCBiNGVkM2U1MWQ1Li4yMTIyZTZiZGZk IDEwMDY0NAorLS0tIGEvZG9jL21hbjEvb3BlbnNzbC1jaXBoZXJzLnBvZC5pbgorKysrIGIvZG9j L21hbjEvb3BlbnNzbC1jaXBoZXJzLnBvZC5pbgorQEAgLTE4Nyw2ICsxODcsMTUgQEAgQXMgb2Yg T3BlblNTTCAxLjAuMCwgdGhlIEI8QUxMPiBjaXBoZXIgc3VpdGVzIGFyZSBzZW5zaWJseSBvcmRl cmVkIGJ5IGRlZmF1bHQuCisgCisgVGhlIGNpcGhlciBzdWl0ZXMgbm90IGVuYWJsZWQgYnkgQjxB TEw+LCBjdXJyZW50bHkgQjxlTlVMTD4uCisgCisrPWl0ZW0gQjxQUk9GSUxFPVNZU1RFTT4KKysK KytUaGUgbGlzdCBvZiBlbmFibGVkIGNpcGhlciBzdWl0ZXMgd2lsbCBiZSBsb2FkZWQgZnJvbSB0 aGUgc3lzdGVtIGNyeXB0byBwb2xpY3kKKytjb25maWd1cmF0aW9uIGZpbGUgQjwvZXRjL2NyeXB0 by1wb2xpY2llcy9iYWNrLWVuZHMvb3BlbnNzbC5jb25maWc+LgorK1NlZSBhbHNvIEw8dXBkYXRl LWNyeXB0by1wb2xpY2llcyg4KT4uCisrVGhpcyBpcyB0aGUgZGVmYXVsdCBiZWhhdmlvciB1bmxl c3MgYW4gYXBwbGljYXRpb24gZXhwbGljaXRseSBzZXRzIGEgY2lwaGVyCisrbGlzdC4gSWYgdXNl ZCBpbiBhIGNpcGhlciBsaXN0IGNvbmZpZ3VyYXRpb24gdmFsdWUgdGhpcyBzdHJpbmcgbXVzdCBi ZSBhdCB0aGUKKytiZWdpbm5pbmcgb2YgdGhlIGNpcGhlciBsaXN0LCBvdGhlcndpc2UgaXQgd2ls bCBub3QgYmUgcmVjb2duaXplZC4KKysKKyA9aXRlbSBCPEhJR0g+CisgCisgIkhpZ2giIGVuY3J5 cHRpb24gY2lwaGVyIHN1aXRlcy4gVGhpcyBjdXJyZW50bHkgbWVhbnMgdGhvc2Ugd2l0aCBrZXkg bGVuZ3RocworZGlmZiAtLWdpdCBhL2luY2x1ZGUvb3BlbnNzbC9zc2wuaC5pbiBiL2luY2x1ZGUv b3BlbnNzbC9zc2wuaC5pbgoraW5kZXggZjlhNjE2MDllNC4uYzZmOTVmZWQzZiAxMDA2NDQKKy0t LSBhL2luY2x1ZGUvb3BlbnNzbC9zc2wuaC5pbgorKysrIGIvaW5jbHVkZS9vcGVuc3NsL3NzbC5o LmluCitAQCAtMjA5LDYgKzIwOSwxMSBAQCBleHRlcm4gIkMiIHsKKyAgKiB0aHJvd2luZyBvdXQg YW5vbnltb3VzIGFuZCB1bmVuY3J5cHRlZCBjaXBoZXJzdWl0ZXMhIChUaGUgbGF0dGVyIGFyZSBu b3QKKyAgKiBhY3R1YWxseSBlbmFibGVkIGJ5IEFMTCwgYnV0ICJBTEw6UlNBIiB3b3VsZCBlbmFi bGUgc29tZSBvZiB0aGVtLikKKyAgKi8KKysjIGlmZGVmIFNZU1RFTV9DSVBIRVJTX0ZJTEUKKysj ICBkZWZpbmUgU1NMX1NZU1RFTV9ERUZBVUxUX0NJUEhFUl9MSVNUICJQUk9GSUxFPVNZU1RFTSIK KysjIGVsc2UKKysjICBkZWZpbmUgU1NMX1NZU1RFTV9ERUZBVUxUX0NJUEhFUl9MSVNUIE9TU0xf ZGVmYXVsdF9jaXBoZXJfbGlzdCgpCisrIyBlbmRpZgorIAorIC8qIFVzZWQgaW4gU1NMX3NldF9z aHV0ZG93bigpL1NTTF9nZXRfc2h1dGRvd24oKTsgKi8KKyAjIGRlZmluZSBTU0xfU0VOVF9TSFVU RE9XTiAgICAgICAxCitkaWZmIC0tZ2l0IGEvc3NsL3NzbF9jaXBoLmMgYi9zc2wvc3NsX2NpcGgu YworaW5kZXggYjFkM2Y3OTE5ZS4uZjdjYzdmZWQ0OCAxMDA2NDQKKy0tLSBhL3NzbC9zc2xfY2lw aC5jCisrKysgYi9zc2wvc3NsX2NpcGguYworQEAgLTE0MTEsNiArMTQxMSw1MyBAQCBpbnQgU1NM X3NldF9jaXBoZXJzdWl0ZXMoU1NMICpzLCBjb25zdCBjaGFyICpzdHIpCisgICAgIHJldHVybiBy ZXQ7CisgfQorIAorKyNpZmRlZiBTWVNURU1fQ0lQSEVSU19GSUxFCisrc3RhdGljIGNoYXIgKmxv YWRfc3lzdGVtX3N0cihjb25zdCBjaGFyICpzdWZmaXgpCisreworKyAgICBGSUxFICpmcDsKKysg ICAgY2hhciBidWZbMTAyNF07CisrICAgIGNoYXIgKm5ld19ydWxlczsKKysgICAgY29uc3QgY2hh ciAqY2lwaGVyc19wYXRoOworKyAgICB1bnNpZ25lZCBsZW4sIHNsZW47CisrCisrICAgIGlmICgo Y2lwaGVyc19wYXRoID0gb3NzbF9zYWZlX2dldGVudigiT1BFTlNTTF9TWVNURU1fQ0lQSEVSU19P VkVSUklERSIpKSA9PSBOVUxMKQorKyAgICAgICAgY2lwaGVyc19wYXRoID0gU1lTVEVNX0NJUEhF UlNfRklMRTsKKysgICAgZnAgPSBmb3BlbihjaXBoZXJzX3BhdGgsICJyIik7CisrICAgIGlmIChm cCA9PSBOVUxMIHx8IGZnZXRzKGJ1Ziwgc2l6ZW9mKGJ1ZiksIGZwKSA9PSBOVUxMKSB7CisrICAg ICAgICAvKiBjYW5ub3Qgb3BlbiBvciBmaWxlIGlzIGVtcHR5ICovCisrICAgICAgICBzbnByaW50 ZihidWYsIHNpemVvZihidWYpLCAiJXMiLCBTU0xfREVGQVVMVF9DSVBIRVJfTElTVCk7CisrICAg IH0KKysKKysgICAgaWYgKGZwKQorKyAgICAgICAgZmNsb3NlKGZwKTsKKysKKysgICAgc2xlbiA9 IHN0cmxlbihzdWZmaXgpOworKyAgICBsZW4gPSBzdHJsZW4oYnVmKTsKKysKKysgICAgaWYgKGJ1 ZltsZW4gLSAxXSA9PSAnXG4nKSB7CisrICAgICAgICBsZW4tLTsKKysgICAgICAgIGJ1ZltsZW5d ID0gMDsKKysgICAgfQorKyAgICBpZiAoYnVmW2xlbiAtIDFdID09ICdccicpIHsKKysgICAgICAg IGxlbi0tOworKyAgICAgICAgYnVmW2xlbl0gPSAwOworKyAgICB9CisrCisrICAgIG5ld19ydWxl cyA9IE9QRU5TU0xfbWFsbG9jKGxlbiArIHNsZW4gKyAxKTsKKysgICAgaWYgKG5ld19ydWxlcyA9 PSAwKQorKyAgICAgICAgcmV0dXJuIE5VTEw7CisrCisrICAgIG1lbWNweShuZXdfcnVsZXMsIGJ1 ZiwgbGVuKTsKKysgICAgaWYgKHNsZW4gPiAwKSB7CisrICAgICAgICBtZW1jcHkoJm5ld19ydWxl c1tsZW5dLCBzdWZmaXgsIHNsZW4pOworKyAgICAgICAgbGVuICs9IHNsZW47CisrICAgIH0KKysg ICAgbmV3X3J1bGVzW2xlbl0gPSAwOworKworKyAgICByZXR1cm4gbmV3X3J1bGVzOworK30KKysj ZW5kaWYKKysKKyBTVEFDS19PRihTU0xfQ0lQSEVSKSAqc3NsX2NyZWF0ZV9jaXBoZXJfbGlzdChT U0xfQ1RYICpjdHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgU1RBQ0tfT0YoU1NMX0NJUEhFUikgKnRsczEzX2NpcGhlcnN1aXRlcywKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTVEFDS19PRihTU0xfQ0lQSEVSKSAq KmNpcGhlcl9saXN0LAorQEAgLTE0MjUsMTUgKzE0NzIsMjUgQEAgU1RBQ0tfT0YoU1NMX0NJUEhF UikgKnNzbF9jcmVhdGVfY2lwaGVyX2xpc3QoU1NMX0NUWCAqY3R4LAorICAgICBDSVBIRVJfT1JE RVIgKmNvX2xpc3QgPSBOVUxMLCAqaGVhZCA9IE5VTEwsICp0YWlsID0gTlVMTCwgKmN1cnI7Cisg ICAgIGNvbnN0IFNTTF9DSVBIRVIgKipjYV9saXN0ID0gTlVMTDsKKyAgICAgY29uc3QgU1NMX01F VEhPRCAqc3NsX21ldGhvZCA9IGN0eC0+bWV0aG9kOworKyNpZmRlZiBTWVNURU1fQ0lQSEVSU19G SUxFCisrICAgIGNoYXIgKm5ld19ydWxlcyA9IE5VTEw7CisrCisrICAgIGlmIChydWxlX3N0ciAh PSBOVUxMICYmIHN0cm5jbXAocnVsZV9zdHIsICJQUk9GSUxFPVNZU1RFTSIsIDE0KSA9PSAwKSB7 CisrICAgICAgICBjaGFyICpwID0gcnVsZV9zdHIgKyAxNDsKKysKKysgICAgICAgIG5ld19ydWxl cyA9IGxvYWRfc3lzdGVtX3N0cihwKTsKKysgICAgICAgIHJ1bGVfc3RyID0gbmV3X3J1bGVzOwor KyAgICB9CisrI2VuZGlmCisgCisgICAgIC8qCisgICAgICAqIFJldHVybiB3aXRoIGVycm9yIGlm IG5vdGhpbmcgdG8gZG8uCisgICAgICAqLworICAgICBpZiAocnVsZV9zdHIgPT0gTlVMTCB8fCBj aXBoZXJfbGlzdCA9PSBOVUxMIHx8IGNpcGhlcl9saXN0X2J5X2lkID09IE5VTEwpCistICAgICAg ICByZXR1cm4gTlVMTDsKKysgICAgICAgIGdvdG8gZXJyOworCisgICAgIGlmICghY2hlY2tfc3Vp dGViX2NpcGhlcl9saXN0KHNzbF9tZXRob2QsIGMsICZydWxlX3N0cikpCistICAgICAgICByZXR1 cm4gTlVMTDsKKysgICAgICAgIGdvdG8gZXJyOworIAorICAgICAvKgorICAgICAgKiBUbyByZWR1 Y2UgdGhlIHdvcmsgdG8gZG8gd2Ugb25seSB3YW50IHRvIHByb2Nlc3MgdGhlIGNvbXBpbGVkCitA QCAtMTQ1Niw3ICsxNTEzLDcgQEAgU1RBQ0tfT0YoU1NMX0NJUEhFUikgKnNzbF9jcmVhdGVfY2lw aGVyX2xpc3QoU1NMX0NUWCAqY3R4LAorICAgICBjb19saXN0ID0gT1BFTlNTTF9tYWxsb2Moc2l6 ZW9mKCpjb19saXN0KSAqIG51bV9vZl9jaXBoZXJzKTsKKyAgICAgaWYgKGNvX2xpc3QgPT0gTlVM TCkgeworICAgICAgICAgRVJSX3JhaXNlKEVSUl9MSUJfU1NMLCBFUlJfUl9NQUxMT0NfRkFJTFVS RSk7CistICAgICAgICByZXR1cm4gTlVMTDsgICAgICAgICAgLyogRmFpbHVyZSAqLworKyAgICAg ICAgZ290byBlcnI7CisgICAgIH0KKyAKKyAgICAgc3NsX2NpcGhlcl9jb2xsZWN0X2NpcGhlcnMo c3NsX21ldGhvZCwgbnVtX29mX2NpcGhlcnMsCitAQCAtMTUyMiw4ICsxNTc5LDcgQEAgU1RBQ0tf T0YoU1NMX0NJUEhFUikgKnNzbF9jcmVhdGVfY2lwaGVyX2xpc3QoU1NMX0NUWCAqY3R4LAorICAg ICAgKiBpbiBmb3JjZSB3aXRoaW4gZWFjaCBjbGFzcworICAgICAgKi8KKyAgICAgaWYgKCFzc2xf Y2lwaGVyX3N0cmVuZ3RoX3NvcnQoJmhlYWQsICZ0YWlsKSkgeworLSAgICAgICAgT1BFTlNTTF9m cmVlKGNvX2xpc3QpOworLSAgICAgICAgcmV0dXJuIE5VTEw7CisrICAgICAgICBnb3RvIGVycjsK KyAgICAgfQorIAorICAgICAvKgorQEAgLTE1NjgsOSArMTYyNCw4IEBAIFNUQUNLX09GKFNTTF9D SVBIRVIpICpzc2xfY3JlYXRlX2NpcGhlcl9saXN0KFNTTF9DVFggKmN0eCwKKyAgICAgbnVtX29m X2FsaWFzX21heCA9IG51bV9vZl9jaXBoZXJzICsgbnVtX29mX2dyb3VwX2FsaWFzZXMgKyAxOwor ICAgICBjYV9saXN0ID0gT1BFTlNTTF9tYWxsb2Moc2l6ZW9mKCpjYV9saXN0KSAqIG51bV9vZl9h bGlhc19tYXgpOworICAgICBpZiAoY2FfbGlzdCA9PSBOVUxMKSB7CistICAgICAgICBPUEVOU1NM X2ZyZWUoY29fbGlzdCk7CisgICAgICAgICBFUlJfcmFpc2UoRVJSX0xJQl9TU0wsIEVSUl9SX01B TExPQ19GQUlMVVJFKTsKKy0gICAgICAgIHJldHVybiBOVUxMOyAgICAgICAgICAvKiBGYWlsdXJl ICovCisrICAgICAgICBnb3RvIGVycjsKKyAgICAgfQorICAgICBzc2xfY2lwaGVyX2NvbGxlY3Rf YWxpYXNlcyhjYV9saXN0LCBudW1fb2ZfZ3JvdXBfYWxpYXNlcywKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZGlzYWJsZWRfbWtleSwgZGlzYWJsZWRfYXV0aCwgZGlzYWJsZWRfZW5j LAorQEAgLTE1OTYsOCArMTY1MSw3IEBAIFNUQUNLX09GKFNTTF9DSVBIRVIpICpzc2xfY3JlYXRl X2NpcGhlcl9saXN0KFNTTF9DVFggKmN0eCwKKyAgICAgT1BFTlNTTF9mcmVlKGNhX2xpc3QpOyAg ICAgIC8qIE5vdCBuZWVkZWQgYW55bW9yZSAqLworIAorICAgICBpZiAoIW9rKSB7ICAgICAgICAg ICAgICAgICAgLyogUnVsZSBwcm9jZXNzaW5nIGZhaWx1cmUgKi8KKy0gICAgICAgIE9QRU5TU0xf ZnJlZShjb19saXN0KTsKKy0gICAgICAgIHJldHVybiBOVUxMOworKyAgICAgICAgZ290byBlcnI7 CisgICAgIH0KKyAKKyAgICAgLyoKK0BAIC0xNjA1LDEwICsxNjU5LDEzIEBAIFNUQUNLX09GKFNT TF9DSVBIRVIpICpzc2xfY3JlYXRlX2NpcGhlcl9saXN0KFNTTF9DVFggKmN0eCwKKyAgICAgICog aWYgd2UgY2Fubm90IGdldCBvbmUuCisgICAgICAqLworICAgICBpZiAoKGNpcGhlcnN0YWNrID0g c2tfU1NMX0NJUEhFUl9uZXdfbnVsbCgpKSA9PSBOVUxMKSB7CistICAgICAgICBPUEVOU1NMX2Zy ZWUoY29fbGlzdCk7CistICAgICAgICByZXR1cm4gTlVMTDsKKysgICAgICAgIGdvdG8gZXJyOwor ICAgICB9CisgCisrI2lmZGVmIFNZU1RFTV9DSVBIRVJTX0ZJTEUKKysgICAgT1BFTlNTTF9mcmVl KG5ld19ydWxlcyk7ICAgIC8qIE5vdCBuZWVkZWQgYW55bW9yZSAqLworKyNlbmRpZgorKworICAg ICAvKiBBZGQgVExTdjEuMyBjaXBoZXJzIGZpcnN0IC0gd2UgYWx3YXlzIHByZWZlciB0aG9zZSBp ZiBwb3NzaWJsZSAqLworICAgICBmb3IgKGkgPSAwOyBpIDwgc2tfU1NMX0NJUEhFUl9udW0odGxz MTNfY2lwaGVyc3VpdGVzKTsgaSsrKSB7CisgICAgICAgICBjb25zdCBTU0xfQ0lQSEVSICpzc2xj ID0gc2tfU1NMX0NJUEhFUl92YWx1ZSh0bHMxM19jaXBoZXJzdWl0ZXMsIGkpOworQEAgLTE2MjIs NiArMTY3OSw3IEBAIFNUQUNLX09GKFNTTF9DSVBIRVIpICpzc2xfY3JlYXRlX2NpcGhlcl9saXN0 KFNTTF9DVFggKmN0eCwKKyAKKyAgICAgICAgIGlmICghc2tfU1NMX0NJUEhFUl9wdXNoKGNpcGhl cnN0YWNrLCBzc2xjKSkgeworICAgICAgICAgICAgIHNrX1NTTF9DSVBIRVJfZnJlZShjaXBoZXJz dGFjayk7CisrICAgICAgICAgICAgT1BFTlNTTF9mcmVlKGNvX2xpc3QpOworICAgICAgICAgICAg IHJldHVybiBOVUxMOworICAgICAgICAgfQorICAgICB9CitAQCAtMTY1Niw2ICsxNzE0LDE0IEBA IFNUQUNLX09GKFNTTF9DSVBIRVIpICpzc2xfY3JlYXRlX2NpcGhlcl9saXN0KFNTTF9DVFggKmN0 eCwKKyAgICAgKmNpcGhlcl9saXN0ID0gY2lwaGVyc3RhY2s7CisgCisgICAgIHJldHVybiBjaXBo ZXJzdGFjazsKKysKKytlcnI6CisrICAgIE9QRU5TU0xfZnJlZShjb19saXN0KTsKKysjaWZkZWYg U1lTVEVNX0NJUEhFUlNfRklMRQorKyAgICBPUEVOU1NMX2ZyZWUobmV3X3J1bGVzKTsKKysjZW5k aWYKKysgICAgcmV0dXJuIE5VTEw7CisrICAKKyB9CisgCisgY2hhciAqU1NMX0NJUEhFUl9kZXNj cmlwdGlvbihjb25zdCBTU0xfQ0lQSEVSICpjaXBoZXIsIGNoYXIgKmJ1ZiwgaW50IGxlbikKK2Rp ZmYgLS1naXQgYS9zc2wvc3NsX2xpYi5jIGIvc3NsL3NzbF9saWIuYworaW5kZXggZDE0ZDU4MTli YS4uNDhkNDkxMjE5YSAxMDA2NDQKKy0tLSBhL3NzbC9zc2xfbGliLmMKKysrKyBiL3NzbC9zc2xf bGliLmMKK0BAIC02NjAsNyArNjYwLDcgQEAgaW50IFNTTF9DVFhfc2V0X3NzbF92ZXJzaW9uKFNT TF9DVFggKmN0eCwgY29uc3QgU1NMX01FVEhPRCAqbWV0aCkKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGN0eC0+dGxzMTNfY2lwaGVyc3VpdGVzLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJihjdHgtPmNpcGhlcl9saXN0KSwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICYoY3R4LT5jaXBoZXJfbGlzdF9ieV9pZCksCistICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBPU1NMX2RlZmF1bHRfY2lwaGVyX2xpc3QoKSwgY3R4LT5jZXJ0KTsK KysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNTTF9TWVNURU1fREVGQVVMVF9DSVBI RVJfTElTVCwgY3R4LT5jZXJ0KTsKKyAgICAgaWYgKChzayA9PSBOVUxMKSB8fCAoc2tfU1NMX0NJ UEhFUl9udW0oc2spIDw9IDApKSB7CisgICAgICAgICBFUlJfcmFpc2UoRVJSX0xJQl9TU0wsIFNT TF9SX1NTTF9MSUJSQVJZX0hBU19OT19DSVBIRVJTKTsKKyAgICAgICAgIHJldHVybiAwOworQEAg LTMxOTMsNyArMzE5Myw3IEBAIFNTTF9DVFggKlNTTF9DVFhfbmV3X2V4KE9TU0xfTElCX0NUWCAq bGliY3R4LCBjb25zdCBjaGFyICpwcm9wcSwKKyAgICAgaWYgKCFzc2xfY3JlYXRlX2NpcGhlcl9s aXN0KHJldCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldC0+dGxzMTNfY2lw aGVyc3VpdGVzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnJldC0+Y2lwaGVy X2xpc3QsICZyZXQtPmNpcGhlcl9saXN0X2J5X2lkLAorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgT1NTTF9kZWZhdWx0X2NpcGhlcl9saXN0KCksIHJldC0+Y2VydCkKKysgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFNTTF9TWVNURU1fREVGQVVMVF9DSVBIRVJfTElTVCwg cmV0LT5jZXJ0KQorICAgICAgICAgfHwgc2tfU1NMX0NJUEhFUl9udW0ocmV0LT5jaXBoZXJfbGlz dCkgPD0gMCkgeworICAgICAgICAgRVJSX3JhaXNlKEVSUl9MSUJfU1NMLCBTU0xfUl9MSUJSQVJZ X0hBU19OT19DSVBIRVJTKTsKKyAgICAgICAgIGdvdG8gZXJyMjsKK2RpZmYgLS1naXQgYS90ZXN0 L2NpcGhlcmxpc3RfdGVzdC5jIGIvdGVzdC9jaXBoZXJsaXN0X3Rlc3QuYworaW5kZXggMzgwZjA3 MjdmYy4uNjkyMmE4N2MzMCAxMDA2NDQKKy0tLSBhL3Rlc3QvY2lwaGVybGlzdF90ZXN0LmMKKysr KyBiL3Rlc3QvY2lwaGVybGlzdF90ZXN0LmMKK0BAIC0yNDQsNyArMjQ0LDkgQEAgZW5kOgorIAor IGludCBzZXR1cF90ZXN0cyh2b2lkKQorIHsKKysjaWZuZGVmIFNZU1RFTV9DSVBIRVJTX0ZJTEUK KyAgICAgQUREX1RFU1QodGVzdF9kZWZhdWx0X2NpcGhlcmxpc3RfaW1wbGljaXQpOworKyNlbmRp ZgorICAgICBBRERfVEVTVCh0ZXN0X2RlZmF1bHRfY2lwaGVybGlzdF9leHBsaWNpdCk7CisgICAg IEFERF9URVNUKHRlc3RfZGVmYXVsdF9jaXBoZXJsaXN0X2NsZWFyKTsKKyAgICAgcmV0dXJuIDE7 CitkaWZmIC0tZ2l0IGEvdXRpbC9saWJjcnlwdG8ubnVtIGIvdXRpbC9saWJjcnlwdG8ubnVtCitp bmRleCA0MDRhNzA2ZmFiLi5lODFmYTllYzNlIDEwMDY0NAorLS0tIGEvdXRpbC9saWJjcnlwdG8u bnVtCisrKysgYi91dGlsL2xpYmNyeXB0by5udW0KK0BAIC01MjgyLDMgKzUyODIsNCBAQCBPU1NM X0RFQ09ERVJfQ1RYX3NldF9pbnB1dF9zdHJ1Y3R1cmUgICAgPwkzXzBfMAlFWElTVDo6RlVOQ1RJ T046CisgQVNOMV9USU1FX3ByaW50X2V4ICAgICAgICAgICAgICAgICAgICAgIDU1NTMJM18wXzAJ RVhJU1Q6OkZVTkNUSU9OOgorIEVWUF9QS0VZX2dldDBfcHJvdmlkZXIgICAgICAgICAgICAgICAg ICA1NTU0CTNfMF8wCUVYSVNUOjpGVU5DVElPTjoKKyBFVlBfUEtFWV9DVFhfZ2V0MF9wcm92aWRl ciAgICAgICAgICAgICAgNTU1NQkzXzBfMAlFWElTVDo6RlVOQ1RJT046Cisrb3NzbF9zYWZlX2dl dGVudiAgICAgICAgICAgICAgICAgICAgICAgID8JM18wXzAJRVhJU1Q6OkZVTkNUSU9OOgorLS0g CisyLjI2LjIKKworZGlmZiAtdXAgb3BlbnNzbC0zLjAuMC1iZXRhMS9Db25maWd1cmUuc3lzLWRl ZmF1bHQgb3BlbnNzbC0zLjAuMC1iZXRhMS9Db25maWd1cmUKKy0tLSBvcGVuc3NsLTMuMC4wLWJl dGExL0NvbmZpZ3VyZS5zeXMtZGVmYXVsdAkyMDIxLTA2LTI5IDExOjQ3OjU4Ljk3ODE0NDM4NiAr MDIwMAorKysrIG9wZW5zc2wtMy4wLjAtYmV0YTEvQ29uZmlndXJlCTIwMjEtMDYtMjkgMTE6NTI6 MDEuNjMxMTI2MjYwICswMjAwCitAQCAtMjcsNyArMjcsNyBAQCB1c2UgT3BlblNTTDo6Y29uZmln OworIG15ICRvcmlnX2RlYXRoX2hhbmRsZXIgPSAkU0lHe19fRElFX199OworICRTSUd7X19ESUVf X30gPSBcJmRlYXRoX2hhbmRsZXI7CisgCistbXkgJHVzYWdlPSJVc2FnZTogQ29uZmlndXJlIFtu by08Y2lwaGVyPiAuLi5dIFtlbmFibGUtPGNpcGhlcj4gLi4uXSBbLUR4eHhdIFstbHh4eF0gWy1M eHh4XSBbLWZ4eHhdIFstS3h4eF0gW25vLWh3LXh4eHxuby1od10gW1tuby1ddGhyZWFkc10gW1tu by1dc2hhcmVkXSBbW25vLV16bGlifHpsaWItZHluYW1pY10gW25vLWFzbV0gW25vLWVnZF0gW3Nj dHBdIFszODZdIFstLXByZWZpeD1ESVJdIFstLW9wZW5zc2xkaXI9T1BFTlNTTERJUl0gWy0td2l0 aC14eHhbPXZ2dl1dIFstLWNvbmZpZz1GSUxFXSBvcy9jb21waWxlcls6ZmxhZ3NdXG4iOworK215 ICR1c2FnZT0iVXNhZ2U6IENvbmZpZ3VyZSBbbm8tPGNpcGhlcj4gLi4uXSBbZW5hYmxlLTxjaXBo ZXI+IC4uLl0gWy1EeHh4XSBbLWx4eHhdIFstTHh4eF0gWy1meHh4XSBbLUt4eHhdIFtuby1ody14 eHh8bm8taHddIFtbbm8tXXRocmVhZHNdIFtbbm8tXXNoYXJlZF0gW1tuby1demxpYnx6bGliLWR5 bmFtaWNdIFtuby1hc21dIFtuby1lZ2RdIFtzY3RwXSBbMzg2XSBbLS1wcmVmaXg9RElSXSBbLS1v cGVuc3NsZGlyPU9QRU5TU0xESVJdIFstLXN5c3RlbS1jaXBoZXJzLWZpbGU9U1lTVEVNQ0lQSEVS RklMRV0gWy0td2l0aC14eHhbPXZ2dl1dIFstLWNvbmZpZz1GSUxFXSBvcy9jb21waWxlcls6Zmxh Z3NdXG4iOworIAorIG15ICRiYW5uZXIgPSA8PCJFT0YiOworIAorQEAgLTYxLDYgKzYxLDEwIEBA IEVPRgorICMgICAgICAgICAgICAgICBnaXZlbiB3aXRoIC0tcHJlZml4LgorICMgICAgICAgICAg ICAgICBUaGlzIGJlY29tZXMgdGhlIHZhbHVlIG9mIE9QRU5TU0xESVIgaW4gTWFrZWZpbGUgYW5k IGluIEMuCisgIyAgICAgICAgICAgICAgIChEZWZhdWx0OiBQUkVGSVgvc3NsKQorKyMKKysjIC0t c3lzdGVtLWNpcGhlcnMtZmlsZSAgQSBmaWxlIHRvIHJlYWQgY2lwaGVyIHN0cmluZyBmcm9tIHdo ZW4gdGhlIFBST0ZJTEU9U1lTVEVNCisrIwkJY2lwaGVyIGlzIHNwZWNpZmllZCAoZGVmYXVsdCku CisrIworICMgLS1iYW5uZXI9Ii4uIiBPdXRwdXQgc3BlY2lmaWVkIHRleHQgaW5zdGVhZCBvZiBk ZWZhdWx0IGNvbXBsZXRpb24gYmFubmVyCisgIworICMgLXcgICAgICAgICAgICBEb24ndCB3YWl0 IGFmdGVyIHNob3dpbmcgYSBDb25maWd1cmUgd2FybmluZworQEAgLTM4NSw2ICszODksNyBAQCAk Y29uZmlne3ByZWZpeH09IiI7CisgJGNvbmZpZ3tvcGVuc3NsZGlyfT0iIjsKKyAkY29uZmlne3By b2Nlc3Nvcn09IiI7CisgJGNvbmZpZ3tsaWJkaXJ9PSIiOworKyRjb25maWd7c3lzdGVtX2NpcGhl cnNfZmlsZX09IiI7CisgbXkgJGF1dG9fdGhyZWFkcz0xOyAgICAjIGVuYWJsZSB0aHJlYWRzIGF1 dG9tYXRpY2FsbHk/IHRydWUgYnkgZGVmYXVsdAorIG15ICRkZWZhdWx0X3JhbmxpYjsKKyAKK0BA IC05ODcsNiArOTkyLDEwIEBAIHdoaWxlIChAYXJndmNvcHkpCisgICAgICAgICAgICAgICAgICAg ICAgICAgZGllICJGSVBTIGtleSB0b28gbG9uZyAoNjQgYnl0ZXMgbWF4KVxuIgorICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGlmIGxlbmd0aCAkMSA+IDY0OworICAgICAgICAgICAgICAgICAg ICAgICAgIH0KKysJCWVsc2lmICgvXi0tc3lzdGVtLWNpcGhlcnMtZmlsZT0oLiopJC8pCisrCQkJ eworKwkJCSRjb25maWd7c3lzdGVtX2NpcGhlcnNfZmlsZX09JDE7CisrCQkJfQorICAgICAgICAg ICAgICAgICBlbHNpZiAoL14tLWJhbm5lcj0oLiopJC8pCisgICAgICAgICAgICAgICAgICAgICAg ICAgeworICAgICAgICAgICAgICAgICAgICAgICAgICRiYW5uZXIgPSAkMSAuICJcbiI7CgpkaWZm IC0tZ2l0IGEvMDAwOC1BZGQtRklQU19tb2RlLWNvbXBhdGliaWxpdHktbWFjcm8ucGF0Y2ggYi8w MDA4LUFkZC1GSVBTX21vZGUtY29tcGF0aWJpbGl0eS1tYWNyby5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZmFjNGViCi0tLSAvZGV2L251bGwKKysrIGIvMDAwOC1B ZGQtRklQU19tb2RlLWNvbXBhdGliaWxpdHktbWFjcm8ucGF0Y2gKQEAgLTAsMCArMSw4NyBAQAor RnJvbSA1YjJlYzlhNTQwMzdkN2IwMDczMjRiZjUzZTA2N2U3MzUxMWNkZmU0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQorRnJvbTogVG9tYXMgTXJheiA8dG1yYXpAZmVkb3JhcHJvamVjdC5vcmc+ CitEYXRlOiBUaHUsIDI2IE5vdiAyMDIwIDE0OjAwOjE2ICswMTAwCitTdWJqZWN0OiBBZGQgRklQ U19tb2RlKCkgY29tcGF0aWJpbGl0eSBtYWNybworCitUaGUgbWFjcm8gY2FsbHMgRVZQX2RlZmF1 bHRfcHJvcGVydGllc19pc19maXBzX2VuYWJsZWQoKSBvbiB0aGUKK2RlZmF1bHQgY29udGV4dC4K Ky0tLQorIGluY2x1ZGUvb3BlbnNzbC9jcnlwdG8uaC5pbiB8ICAxICsKKyBpbmNsdWRlL29wZW5z c2wvZmlwcy5oICAgICAgfCAyNSArKysrKysrKysrKysrKysrKysrKysrKysrCisgdGVzdC9wcm9w ZXJ0eV90ZXN0LmMgICAgICAgIHwgMTMgKysrKysrKysrKysrKworIDMgZmlsZXMgY2hhbmdlZCwg MzkgaW5zZXJ0aW9ucygrKQorIGNyZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL29wZW5zc2wvZmlw cy5oCisKK2RpZmYgLS1naXQgYS9pbmNsdWRlL29wZW5zc2wvY3J5cHRvLmguaW4gYi9pbmNsdWRl L29wZW5zc2wvY3J5cHRvLmguaW4KK2luZGV4IDEwMzZkYTlhMmIuLjlkNDg5NmZjYWYgMTAwNjQ0 CistLS0gYS9pbmNsdWRlL29wZW5zc2wvY3J5cHRvLmguaW4KKysrKyBiL2luY2x1ZGUvb3BlbnNz bC9jcnlwdG8uaC5pbgorQEAgLTM4LDYgKzM4LDcgQEAgdXNlIE9wZW5TU0w6OnN0YWNraGFzaCBx dyhnZW5lcmF0ZV9zdGFja19tYWNyb3MpOworICMgaW5jbHVkZSA8b3BlbnNzbC9vcGVuc3NsY29u Zi5oPgorICMgaW5jbHVkZSA8b3BlbnNzbC9jcnlwdG9lcnIuaD4KKyAjIGluY2x1ZGUgPG9wZW5z c2wvY29yZS5oPgorKyMgaW5jbHVkZSA8b3BlbnNzbC9maXBzLmg+CisgCisgIyBpZmRlZiBDSEFS U0VUX0VCQ0RJQworICMgIGluY2x1ZGUgPG9wZW5zc2wvZWJjZGljLmg+CitkaWZmIC0tZ2l0IGEv aW5jbHVkZS9vcGVuc3NsL2ZpcHMuaCBiL2luY2x1ZGUvb3BlbnNzbC9maXBzLmgKK25ldyBmaWxl IG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMDAwLi5jNjRmMGY4ZThmCistLS0gL2Rldi9udWxs CisrKysgYi9pbmNsdWRlL29wZW5zc2wvZmlwcy5oCitAQCAtMCwwICsxLDI1IEBACisrLyoKKysg KiBDb3B5cmlnaHQgMjAxNi0yMDIwIFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJp Z2h0cyBSZXNlcnZlZC4KKysgKgorKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5z ZSAyLjAgKHRoZSAiTGljZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCisrICogdGhpcyBmaWxlIGV4 Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuICBZb3UgY2FuIG9idGFpbiBhIGNv cHkKKysgKiBpbiB0aGUgZmlsZSBMSUNFTlNFIGluIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9y IGF0CisrICogaHR0cHM6Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2UuaHRtbAorKyAq LworKworKyNpZm5kZWYgT1BFTlNTTF9GSVBTX0gKKysjIGRlZmluZSBPUEVOU1NMX0ZJUFNfSAor KyMgcHJhZ21hIG9uY2UKKysKKysjIGluY2x1ZGUgPG9wZW5zc2wvbWFjcm9zLmg+CisrCisrIyBp ZmRlZiBfX2NwbHVzcGx1cworK2V4dGVybiAiQyIgeworKyMgZW5kaWYKKysKKysjIGRlZmluZSBG SVBTX21vZGUoKSBFVlBfZGVmYXVsdF9wcm9wZXJ0aWVzX2lzX2ZpcHNfZW5hYmxlZChOVUxMKQor KworKyMgaWZkZWYgX19jcGx1c3BsdXMKKyt9CisrIyBlbmRpZgorKyNlbmRpZgorZGlmZiAtdXAg b3BlbnNzbC0zLjAuMC1iZXRhMS90ZXN0L3Byb3BlcnR5X3Rlc3QuYy5maXBzLW1hY3JvIG9wZW5z c2wtMy4wLjAtYmV0YTEvdGVzdC9wcm9wZXJ0eV90ZXN0LmMKKy0tLSBvcGVuc3NsLTMuMC4wLWJl dGExL3Rlc3QvcHJvcGVydHlfdGVzdC5jLmZpcHMtbWFjcm8JMjAyMS0wNi0yOSAxMjoxNDo1OC44 NTE1NTc2OTggKzAyMDAKKysrKyBvcGVuc3NsLTMuMC4wLWJldGExL3Rlc3QvcHJvcGVydHlfdGVz dC5jCTIwMjEtMDYtMjkgMTI6MTc6MTQuNjMwMTQzODMyICswMjAwCitAQCAtNDg4LDYgKzQ4OCwx OCBAQCBzdGF0aWMgaW50IHRlc3RfcHJvcGVydHlfbGlzdF90b19zdHJpbmcoCisgICAgIHJldHVy biByZXQ7CisgfQorIAorK3N0YXRpYyBpbnQgdGVzdF9kb3duc3RyZWFtX0ZJUFNfbW9kZSh2b2lk KQorK3sKKysgICAgaW50IHJldCA9IDA7CisrCisrICAgIHJldCA9IFRFU1RfdHJ1ZShFVlBfc2V0 X2RlZmF1bHRfcHJvcGVydGllcyhOVUxMLCAiZmlwcz15ZXMiKSkKKysgICAgICAgICAgJiYgVEVT VF90cnVlKEZJUFNfbW9kZSgpKQorKyAgICAgICAgICAmJiBURVNUX3RydWUoRVZQX3NldF9kZWZh dWx0X3Byb3BlcnRpZXMoTlVMTCwgImZpcHM9bm8iKSkKKysgICAgICAgICAgJiYgVEVTVF9mYWxz ZShGSVBTX21vZGUoKSk7CisrCisrICAgIHJldHVybiByZXQ7CisrfQorKworIGludCBzZXR1cF90 ZXN0cyh2b2lkKQorIHsKKyAgICAgQUREX1RFU1QodGVzdF9wcm9wZXJ0eV9zdHJpbmcpOworQEAg LTUwMCw2ICs1MTIsNyBAQCBpbnQgc2V0dXBfdGVzdHModm9pZCkKKyAgICAgQUREX1RFU1QodGVz dF9wcm9wZXJ0eSk7CisgICAgIEFERF9URVNUKHRlc3RfcXVlcnlfY2FjaGVfc3RvY2hhc3RpYyk7 CisgICAgIEFERF9URVNUKHRlc3RfZmlwc19tb2RlKTsKKysgICAgQUREX1RFU1QodGVzdF9kb3du c3RyZWFtX0ZJUFNfbW9kZSk7CisgICAgIEFERF9BTExfVEVTVFModGVzdF9wcm9wZXJ0eV9saXN0 X3RvX3N0cmluZywgT1NTTF9ORUxFTSh0b19zdHJpbmdfdGVzdHMpKTsKKyAgICAgcmV0dXJuIDE7 CisgfQoKZGlmZiAtLWdpdCBhLzAwMDktQWRkLUtlcm5lbC1GSVBTLW1vZGUtZmxhZy1zdXBwb3J0 LnBhdGNoIGIvMDAwOS1BZGQtS2VybmVsLUZJUFMtbW9kZS1mbGFnLXN1cHBvcnQucGF0Y2gKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZWQ5OTdkYgotLS0gL2Rldi9udWxsCisr KyBiLzAwMDktQWRkLUtlcm5lbC1GSVBTLW1vZGUtZmxhZy1zdXBwb3J0LnBhdGNoCkBAIC0wLDAg KzEsNzkgQEAKK2RpZmYgLXVwIG9wZW5zc2wtMy4wLjAtYWxwaGExMy9jcnlwdG8vY29udGV4dC5j Lmtlcm5lbC1maXBzIG9wZW5zc2wtMy4wLjAtYWxwaGExMy9jcnlwdG8vY29udGV4dC5jCistLS0g b3BlbnNzbC0zLjAuMC1hbHBoYTEzL2NyeXB0by9jb250ZXh0LmMua2VybmVsLWZpcHMJMjAyMS0w My0xNiAwMDowOTo1NS44MTQ4MjY0MzIgKzAxMDAKKysrKyBvcGVuc3NsLTMuMC4wLWFscGhhMTMv Y3J5cHRvL2NvbnRleHQuYwkyMDIxLTAzLTE2IDAwOjE1OjU1LjEyOTA0MzgxMSArMDEwMAorQEAg LTEyLDExICsxMiw1NCBAQAorICNpbmNsdWRlICJpbnRlcm5hbC9iaW8uaCIKKyAjaW5jbHVkZSAi aW50ZXJuYWwvcHJvdmlkZXIuaCIKKyAKKysjaWZuZGVmIEZJUFNfTU9EVUxFCisrIyBpbmNsdWRl IDxzeXMvdHlwZXMuaD4KKysjIGluY2x1ZGUgPHN5cy9zdGF0Lmg+CisrIyBpbmNsdWRlIDxmY250 bC5oPgorKyMgaW5jbHVkZSA8dW5pc3RkLmg+CisrIyBpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgor KyNlbmRpZgorKworIHN0cnVjdCBvc3NsX2xpYl9jdHhfb25mcmVlX2xpc3Rfc3QgeworICAgICBv c3NsX2xpYl9jdHhfb25mcmVlX2ZuICpmbjsKKyAgICAgc3RydWN0IG9zc2xfbGliX2N0eF9vbmZy ZWVfbGlzdF9zdCAqbmV4dDsKKyB9OworIAorKyMgaWZuZGVmIEZJUFNfTU9EVUxFCisrIyBkZWZp bmUgRklQU19NT0RFX1NXSVRDSF9GSUxFICIvcHJvYy9zeXMvY3J5cHRvL2ZpcHNfZW5hYmxlZCIK KysKKytzdGF0aWMgaW50IGtlcm5lbF9maXBzX2ZsYWc7CisrCisrc3RhdGljIHZvaWQgcmVhZF9r ZXJuZWxfZmlwc19mbGFnKHZvaWQpCisreworKwljaGFyIGJ1ZlsyXSA9ICIwIjsKKysJaW50IGZk OworKworKwlpZiAob3NzbF9zYWZlX2dldGVudigiT1BFTlNTTF9GT1JDRV9GSVBTX01PREUiKSAh PSBOVUxMKSB7CisrCQlidWZbMF0gPSAnMSc7CisrCX0gZWxzZSBpZiAoKGZkID0gb3BlbihGSVBT X01PREVfU1dJVENIX0ZJTEUsIE9fUkRPTkxZKSkgPj0gMCkgeworKwkJd2hpbGUgKHJlYWQoZmQs IGJ1Ziwgc2l6ZW9mKGJ1ZikpIDwgMCAmJiBlcnJubyA9PSBFSU5UUikgOworKwkJY2xvc2UoZmQp OworKwl9CisrCisrCWlmIChidWZbMF0gPT0gJzEnKSB7CisrCQlrZXJuZWxfZmlwc19mbGFnID0g MTsKKysJfQorKworKwkJcmV0dXJuOworK30KKysKKytzdGF0aWMgaW50IGFwcGx5X2tlcm5lbF9m aXBzX2ZsYWcoT1NTTF9MSUJfQ1RYICpjdHgpCisreworKwlpZiAoa2VybmVsX2ZpcHNfZmxhZykg eworKwkJcmV0dXJuIEVWUF9kZWZhdWx0X3Byb3BlcnRpZXNfZW5hYmxlX2ZpcHMoY3R4LCAxKTsK KysJfQorKworKwlyZXR1cm4gMTsKKyt9CisrIyBlbmRpZgorKworKworIHN0cnVjdCBvc3NsX2xp Yl9jdHhfc3QgeworICAgICBDUllQVE9fUldMT0NLICpsb2NrOworICAgICBDUllQVE9fRVhfREFU QSBkYXRhOworQEAgLTc0LDYgKzExNywxMiBAQCBzdGF0aWMgaW50IGNvbnRleHRfaW5pdChPU1NM X0xJQl9DVFggKmN0CisgICAgIGlmICghb3NzbF9wcm9wZXJ0eV9wYXJzZV9pbml0KGN0eCkpCisg ICAgICAgICBnb3RvIGVycjsKKyAKKysjIGlmbmRlZiBGSVBTX01PRFVMRQorKwkvKiBQcmVzZXQg dGhlIGZpcHM9eWVzIGRlZmF1bHQgcHJvcGVydHkgd2l0aCBrZXJuZWwgRklQUyBtb2RlICovCisr CWlmICghYXBwbHlfa2VybmVsX2ZpcHNfZmxhZyhjdHgpKQorKwkJZ290byBlcnI7CisrIyBlbmRp ZgorKworICAgICByZXR1cm4gMTsKKyAgZXJyOgorICAgICBpZiAoZXhkYXRhX2RvbmUpCitAQCAt MTIxLDYgKzE3MCw3IEBAIHN0YXRpYyBDUllQVE9fVEhSRUFEX0xPQ0FMIGRlZmF1bHRfY29udGUK KyAKKyBERUZJTkVfUlVOX09OQ0VfU1RBVElDKGRlZmF1bHRfY29udGV4dF9kb19pbml0KQorIHsK KysJIHJlYWRfa2VybmVsX2ZpcHNfZmxhZygpOworICAgICByZXR1cm4gQ1JZUFRPX1RIUkVBRF9p bml0X2xvY2FsKCZkZWZhdWx0X2NvbnRleHRfdGhyZWFkX2xvY2FsLCBOVUxMKQorICAgICAgICAg JiYgY29udGV4dF9pbml0KCZkZWZhdWx0X2NvbnRleHRfaW50KTsKKyB9CgpkaWZmIC0tZ2l0IGEv MDAxMS1SZW1vdmUtRUMtY3VydmVzLnBhdGNoIGIvMDAxMS1SZW1vdmUtRUMtY3VydmVzLnBhdGNo Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjUxYzlkMjMKLS0tIC9kZXYvbnVs bAorKysgYi8wMDExLVJlbW92ZS1FQy1jdXJ2ZXMucGF0Y2gKQEAgLTAsMCArMSw1MDEzIEBACitk aWZmIC11cCBvcGVuc3NsLTMuMC4wLWFscGhhMTMvYXBwcy9zcGVlZC5jLmVjLWN1cnZlcyBvcGVu c3NsLTMuMC4wLWFscGhhMTMvYXBwcy9zcGVlZC5jCistLS0gb3BlbnNzbC0zLjAuMC1hbHBoYTEz L2FwcHMvc3BlZWQuYy5lYy1jdXJ2ZXMJMjAyMS0wNC0xMCAxMjoxMjowMC42MjAxMjkzMDIgKzAy MDAKKysrKyBvcGVuc3NsLTMuMC4wLWFscGhhMTMvYXBwcy9zcGVlZC5jCTIwMjEtMDQtMTAgMTI6 MTg6MTEuODcyMzY5NDE3ICswMjAwCitAQCAtMzY0LDY4ICszNjQsMjMgQEAgc3RhdGljIGRvdWJs ZSBmZmRoX3Jlc3VsdHNbRkZESF9OVU1dWzFdOworICNlbmRpZiAvKiBPUEVOU1NMX05PX0RIICov CisgCisgZW51bSBlY19jdXJ2ZXNfdCB7CistICAgIFJfRUNfUDE2MCwgUl9FQ19QMTkyLCBSX0VD X1AyMjQsIFJfRUNfUDI1NiwgUl9FQ19QMzg0LCBSX0VDX1A1MjEsCistI2lmbmRlZiBPUEVOU1NM X05PX0VDMk0KKy0gICAgUl9FQ19LMTYzLCBSX0VDX0syMzMsIFJfRUNfSzI4MywgUl9FQ19LNDA5 LCBSX0VDX0s1NzEsCistICAgIFJfRUNfQjE2MywgUl9FQ19CMjMzLCBSX0VDX0IyODMsIFJfRUNf QjQwOSwgUl9FQ19CNTcxLAorLSNlbmRpZgorLSAgICBSX0VDX0JSUDI1NlIxLCBSX0VDX0JSUDI1 NlQxLCBSX0VDX0JSUDM4NFIxLCBSX0VDX0JSUDM4NFQxLAorLSAgICBSX0VDX0JSUDUxMlIxLCBS X0VDX0JSUDUxMlQxLCBFQ0RTQV9OVU0KKysgICAgUl9FQ19QMjI0LCBSX0VDX1AyNTYsIFJfRUNf UDM4NCwgUl9FQ19QNTIxLAorKyAgICBFQ0RTQV9OVU0KKyB9OworIC8qIGxpc3Qgb2YgZWNkc2Eg Y3VydmVzICovCisgc3RhdGljIGNvbnN0IE9QVF9QQUlSIGVjZHNhX2Nob2ljZXNbRUNEU0FfTlVN XSA9IHsKKy0gICAgeyJlY2RzYXAxNjAiLCBSX0VDX1AxNjB9LAorLSAgICB7ImVjZHNhcDE5MiIs IFJfRUNfUDE5Mn0sCisgICAgIHsiZWNkc2FwMjI0IiwgUl9FQ19QMjI0fSwKKyAgICAgeyJlY2Rz YXAyNTYiLCBSX0VDX1AyNTZ9LAorICAgICB7ImVjZHNhcDM4NCIsIFJfRUNfUDM4NH0sCisgICAg IHsiZWNkc2FwNTIxIiwgUl9FQ19QNTIxfSwKKy0jaWZuZGVmIE9QRU5TU0xfTk9fRUMyTQorLSAg ICB7ImVjZHNhazE2MyIsIFJfRUNfSzE2M30sCistICAgIHsiZWNkc2FrMjMzIiwgUl9FQ19LMjMz fSwKKy0gICAgeyJlY2RzYWsyODMiLCBSX0VDX0syODN9LAorLSAgICB7ImVjZHNhazQwOSIsIFJf RUNfSzQwOX0sCistICAgIHsiZWNkc2FrNTcxIiwgUl9FQ19LNTcxfSwKKy0gICAgeyJlY2RzYWIx NjMiLCBSX0VDX0IxNjN9LAorLSAgICB7ImVjZHNhYjIzMyIsIFJfRUNfQjIzM30sCistICAgIHsi ZWNkc2FiMjgzIiwgUl9FQ19CMjgzfSwKKy0gICAgeyJlY2RzYWI0MDkiLCBSX0VDX0I0MDl9LAor LSAgICB7ImVjZHNhYjU3MSIsIFJfRUNfQjU3MX0sCistI2VuZGlmCistICAgIHsiZWNkc2FicnAy NTZyMSIsIFJfRUNfQlJQMjU2UjF9LAorLSAgICB7ImVjZHNhYnJwMjU2dDEiLCBSX0VDX0JSUDI1 NlQxfSwKKy0gICAgeyJlY2RzYWJycDM4NHIxIiwgUl9FQ19CUlAzODRSMX0sCistICAgIHsiZWNk c2FicnAzODR0MSIsIFJfRUNfQlJQMzg0VDF9LAorLSAgICB7ImVjZHNhYnJwNTEycjEiLCBSX0VD X0JSUDUxMlIxfSwKKy0gICAgeyJlY2RzYWJycDUxMnQxIiwgUl9FQ19CUlA1MTJUMX0KKyB9Owor IGVudW0geyBSX0VDX1gyNTUxOSA9IEVDRFNBX05VTSwgUl9FQ19YNDQ4LCBFQ19OVU0gfTsKKyAv KiBsaXN0IG9mIGVjZGggY3VydmVzLCBleHRlbnNpb24gb2YgfGVjZHNhX2Nob2ljZXN8IGxpc3Qg YWJvdmUgKi8KKyBzdGF0aWMgY29uc3QgT1BUX1BBSVIgZWNkaF9jaG9pY2VzW0VDX05VTV0gPSB7 CistICAgIHsiZWNkaHAxNjAiLCBSX0VDX1AxNjB9LAorLSAgICB7ImVjZGhwMTkyIiwgUl9FQ19Q MTkyfSwKKyAgICAgeyJlY2RocDIyNCIsIFJfRUNfUDIyNH0sCisgICAgIHsiZWNkaHAyNTYiLCBS X0VDX1AyNTZ9LAorICAgICB7ImVjZGhwMzg0IiwgUl9FQ19QMzg0fSwKKyAgICAgeyJlY2RocDUy MSIsIFJfRUNfUDUyMX0sCistI2lmbmRlZiBPUEVOU1NMX05PX0VDMk0KKy0gICAgeyJlY2RoazE2 MyIsIFJfRUNfSzE2M30sCistICAgIHsiZWNkaGsyMzMiLCBSX0VDX0syMzN9LAorLSAgICB7ImVj ZGhrMjgzIiwgUl9FQ19LMjgzfSwKKy0gICAgeyJlY2RoazQwOSIsIFJfRUNfSzQwOX0sCistICAg IHsiZWNkaGs1NzEiLCBSX0VDX0s1NzF9LAorLSAgICB7ImVjZGhiMTYzIiwgUl9FQ19CMTYzfSwK Ky0gICAgeyJlY2RoYjIzMyIsIFJfRUNfQjIzM30sCistICAgIHsiZWNkaGIyODMiLCBSX0VDX0Iy ODN9LAorLSAgICB7ImVjZGhiNDA5IiwgUl9FQ19CNDA5fSwKKy0gICAgeyJlY2RoYjU3MSIsIFJf RUNfQjU3MX0sCistI2VuZGlmCistICAgIHsiZWNkaGJycDI1NnIxIiwgUl9FQ19CUlAyNTZSMX0s CistICAgIHsiZWNkaGJycDI1NnQxIiwgUl9FQ19CUlAyNTZUMX0sCistICAgIHsiZWNkaGJycDM4 NHIxIiwgUl9FQ19CUlAzODRSMX0sCistICAgIHsiZWNkaGJycDM4NHQxIiwgUl9FQ19CUlAzODRU MX0sCistICAgIHsiZWNkaGJycDUxMnIxIiwgUl9FQ19CUlA1MTJSMX0sCistICAgIHsiZWNkaGJy cDUxMnQxIiwgUl9FQ19CUlA1MTJUMX0sCisgICAgIHsiZWNkaHgyNTUxOSIsIFJfRUNfWDI1NTE5 fSwKKyAgICAgeyJlY2RoeDQ0OCIsIFJfRUNfWDQ0OH0KKyB9OworQEAgLTE0NDksMzEgKzE0MDQs MTAgQEAgaW50IHNwZWVkX21haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQorICAgICAgKi8KKyAg ICAgc3RhdGljIGNvbnN0IEVDX0NVUlZFIGVjX2N1cnZlc1tFQ19OVU1dID0geworICAgICAgICAg LyogUHJpbWUgQ3VydmVzICovCistICAgICAgICB7InNlY3AxNjByMSIsIE5JRF9zZWNwMTYwcjEs IDE2MH0sCistICAgICAgICB7Im5pc3RwMTkyIiwgTklEX1g5XzYyX3ByaW1lMTkydjEsIDE5Mn0s CisgICAgICAgICB7Im5pc3RwMjI0IiwgTklEX3NlY3AyMjRyMSwgMjI0fSwKKyAgICAgICAgIHsi bmlzdHAyNTYiLCBOSURfWDlfNjJfcHJpbWUyNTZ2MSwgMjU2fSwKKyAgICAgICAgIHsibmlzdHAz ODQiLCBOSURfc2VjcDM4NHIxLCAzODR9LAorICAgICAgICAgeyJuaXN0cDUyMSIsIE5JRF9zZWNw NTIxcjEsIDUyMX0sCistI2lmbmRlZiBPUEVOU1NMX05PX0VDMk0KKy0gICAgICAgIC8qIEJpbmFy eSBDdXJ2ZXMgKi8KKy0gICAgICAgIHsibmlzdGsxNjMiLCBOSURfc2VjdDE2M2sxLCAxNjN9LAor LSAgICAgICAgeyJuaXN0azIzMyIsIE5JRF9zZWN0MjMzazEsIDIzM30sCistICAgICAgICB7Im5p c3RrMjgzIiwgTklEX3NlY3QyODNrMSwgMjgzfSwKKy0gICAgICAgIHsibmlzdGs0MDkiLCBOSURf c2VjdDQwOWsxLCA0MDl9LAorLSAgICAgICAgeyJuaXN0azU3MSIsIE5JRF9zZWN0NTcxazEsIDU3 MX0sCistICAgICAgICB7Im5pc3RiMTYzIiwgTklEX3NlY3QxNjNyMiwgMTYzfSwKKy0gICAgICAg IHsibmlzdGIyMzMiLCBOSURfc2VjdDIzM3IxLCAyMzN9LAorLSAgICAgICAgeyJuaXN0YjI4MyIs IE5JRF9zZWN0MjgzcjEsIDI4M30sCistICAgICAgICB7Im5pc3RiNDA5IiwgTklEX3NlY3Q0MDly MSwgNDA5fSwKKy0gICAgICAgIHsibmlzdGI1NzEiLCBOSURfc2VjdDU3MXIxLCA1NzF9LAorLSNl bmRpZgorLSAgICAgICAgeyJicmFpbnBvb2xQMjU2cjEiLCBOSURfYnJhaW5wb29sUDI1NnIxLCAy NTZ9LAorLSAgICAgICAgeyJicmFpbnBvb2xQMjU2dDEiLCBOSURfYnJhaW5wb29sUDI1NnQxLCAy NTZ9LAorLSAgICAgICAgeyJicmFpbnBvb2xQMzg0cjEiLCBOSURfYnJhaW5wb29sUDM4NHIxLCAz ODR9LAorLSAgICAgICAgeyJicmFpbnBvb2xQMzg0dDEiLCBOSURfYnJhaW5wb29sUDM4NHQxLCAz ODR9LAorLSAgICAgICAgeyJicmFpbnBvb2xQNTEycjEiLCBOSURfYnJhaW5wb29sUDUxMnIxLCA1 MTJ9LAorLSAgICAgICAgeyJicmFpbnBvb2xQNTEydDEiLCBOSURfYnJhaW5wb29sUDUxMnQxLCA1 MTJ9LAorICAgICAgICAgLyogT3RoZXIgYW5kIEVDREggb25seSBvbmVzICovCisgICAgICAgICB7 IlgyNTUxOSIsIE5JRF9YMjU1MTksIDI1M30sCisgICAgICAgICB7Ilg0NDgiLCBOSURfWDQ0OCwg NDQ4fQorZGlmZiAtdXAgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3QvZWNkc2F0ZXN0LmguZWMt Y3VydmVzIG9wZW5zc2wtMy4wLjAtYWxwaGExMy90ZXN0L2VjZHNhdGVzdC5oCistLS0gb3BlbnNz bC0zLjAuMC1hbHBoYTEzL3Rlc3QvZWNkc2F0ZXN0LmguZWMtY3VydmVzCTIwMjEtMDQtMTAgMTI6 MDc6NDMuMTU4MDEzMDI4ICswMjAwCisrKysgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3QvZWNk c2F0ZXN0LmgJMjAyMS0wNC0xMCAxMjoxMToyMS42MDE4Mjg3MzcgKzAyMDAKK0BAIC0zMiwyMyAr MzIsNiBAQCB0eXBlZGVmIHN0cnVjdCB7CisgfSBlY2RzYV9jYXZzX2thdF90OworIAorIHN0YXRp YyBjb25zdCBlY2RzYV9jYXZzX2thdF90IGVjZHNhX2NhdnNfa2F0c1tdID0geworLSAgICAvKiBw cmltZSBLQVRzIGZyb20gWDkuNjIgKi8KKy0gICAge05JRF9YOV82Ml9wcmltZTE5MnYxLCBOSURf c2hhMSwKKy0gICAgICI2MTYyNjMiLCAgICAgICAgICAgICAgICAgIC8qICJhYmMiICovCistICAg ICAiMWE4ZDU5OGZjMTViZjBmZDg5MDMwYjVjYjExMTFhZWI5MmFlOGJhZjVlYTQ3NWZiIiwKKy0g ICAgICIwNDYyYjEyZDYwNjkwY2RjZjMzMGJhYmFiNmU2OTc2M2I0NzFmOTk0ZGQ3MDJkMTZhNTYz YmY1ZWMwODA2OTcwNWZmZmY2NWUiCistICAgICAiNWNhNWMwZDY5NzE2ZGZjYjM0NzQzNzM5MDIi LAorLSAgICAgImZhNmRlMjk3NDZiYmViN2Y4YmIxZTc2MWY4NWY3ZGZiMjk4MzE2OWQ4MmZhMmY0 ZSIsCistICAgICAiODg1MDUyMzgwZmYxNDdiNzM0YzMzMGM0M2QzOWIyYzRhODlmMjliMGY3NDlm ZWFkIiwKKy0gICAgICJlOWVjYzc4MTA2ZGVmODJiZjEwNzBjZjFkNGQ4MDRjM2NiMzkwMDQ2OTUx ZGY2ODYifSwKKy0gICAge05JRF9YOV82Ml9wcmltZTIzOXYxLCBOSURfc2hhMSwKKy0gICAgICI2 MTYyNjMiLCAgICAgICAgICAgICAgICAgIC8qICJhYmMiICovCistICAgICAiN2VmN2M2ZmFiZWZm ZmRlYTg2NDIwNmU4MGIwYjA4YTkzMzFlZDkzZTY5ODU2MWI2NGNhMGY3Nzc3ZjNkIiwKKy0gICAg ICIwNDViNmRjNTNiYzYxYTI1NDhmZmIwZjY3MTQ3MmRlNmM5NTIxYTlkMmQyNTM0ZTY1YWJmY2Jk NWZlMGM3MDdmZDlmMWVkMmUiCistICAgICAiNjVmMDlmNmNlMDg5M2JhZjVlOGUzMWU2YWU4MmVh OGMzNTkyMzM1YmU5MDZkMzhkZWUiLAorLSAgICAgIjY1NmM3MTk2YmY4N2RjYzVkMWYxMDIwOTA2 ZGYyNzgyMzYwZDM2YjJkZTdhMTdlY2UzN2Q1MDM3ODRhZiIsCistICAgICAiMmNiN2YzNjgwM2Vi YjljNDI3YzU4ZDgyNjVmMTFmYzUwODQ3NDcxMzMwNzhmYzI3OWRlODc0ZmJlY2IwIiwKKy0gICAg ICIyZWVhZTk4ODEwNGU5YzIyMzRhM2MyYmViMWY1M2JmYTVkYzExZmYzNmE4NzVkMWUzY2NiMWY3 ZTQ1Y2YifSwKKyAgICAgLyogcHJpbWUgS0FUcyBmcm9tIE5JU1QgQ0FWUCAqLworICAgICB7TklE X3NlY3AyMjRyMSwgTklEX3NoYTIyNCwKKyAgICAgICI2OTkzMjVkNmZjOGZiYmI0OTgxYTZkZWQz YzNhNTRhZDJlNGUzZGI4YTU2NjkyMDE5MTIwNjRjNjRlNzAwYzEzOTI0OGNkYzEiCitkaWZmIC11 cCBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9yZWNpcGVzLzE1LXRlc3RfZ2VuZWMudC5lYy1j dXJ2ZXMgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3QvcmVjaXBlcy8xNS10ZXN0X2dlbmVjLnQK Ky0tLSBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9yZWNpcGVzLzE1LXRlc3RfZ2VuZWMudC5l Yy1jdXJ2ZXMJMjAyMS0wNC0xMCAxMTo1OTozNy40NTMzMzI2NjggKzAyMDAKKysrKyBvcGVuc3Ns LTMuMC4wLWFscGhhMTMvdGVzdC9yZWNpcGVzLzE1LXRlc3RfZ2VuZWMudAkyMDIxLTA0LTEwIDEy OjAzOjQzLjM2MzUzODk3NiArMDIwMAorQEAgLTQxLDQ1ICs0MSwxMSBAQCBwbGFuIHNraXBfYWxs ID0+ICJUaGlzIHRlc3QgaXMgdW5zdXBwb3J0CisgICAgIGlmIGRpc2FibGVkKCJlYyIpOworIAor IG15IEBwcmltZV9jdXJ2ZXMgPSBxdygKKy0gICAgc2VjcDExMnIxCistICAgIHNlY3AxMTJyMgor LSAgICBzZWNwMTI4cjEKKy0gICAgc2VjcDEyOHIyCistICAgIHNlY3AxNjBrMQorLSAgICBzZWNw MTYwcjEKKy0gICAgc2VjcDE2MHIyCistICAgIHNlY3AxOTJrMQorLSAgICBzZWNwMjI0azEKKyAg ICAgc2VjcDIyNHIxCisgICAgIHNlY3AyNTZrMQorICAgICBzZWNwMzg0cjEKKyAgICAgc2VjcDUy MXIxCistICAgIHByaW1lMTkydjEKKy0gICAgcHJpbWUxOTJ2MgorLSAgICBwcmltZTE5MnYzCist ICAgIHByaW1lMjM5djEKKy0gICAgcHJpbWUyMzl2MgorLSAgICBwcmltZTIzOXYzCisgICAgIHBy aW1lMjU2djEKKy0gICAgd2FwLXdzZy1pZG0tZWNpZC13dGxzNgorLSAgICB3YXAtd3NnLWlkbS1l Y2lkLXd0bHM3CistICAgIHdhcC13c2ctaWRtLWVjaWQtd3RsczgKKy0gICAgd2FwLXdzZy1pZG0t ZWNpZC13dGxzOQorLSAgICB3YXAtd3NnLWlkbS1lY2lkLXd0bHMxMgorLSAgICBicmFpbnBvb2xQ MTYwcjEKKy0gICAgYnJhaW5wb29sUDE2MHQxCistICAgIGJyYWlucG9vbFAxOTJyMQorLSAgICBi cmFpbnBvb2xQMTkydDEKKy0gICAgYnJhaW5wb29sUDIyNHIxCistICAgIGJyYWlucG9vbFAyMjR0 MQorLSAgICBicmFpbnBvb2xQMjU2cjEKKy0gICAgYnJhaW5wb29sUDI1NnQxCistICAgIGJyYWlu cG9vbFAzMjByMQorLSAgICBicmFpbnBvb2xQMzIwdDEKKy0gICAgYnJhaW5wb29sUDM4NHIxCist ICAgIGJyYWlucG9vbFAzODR0MQorLSAgICBicmFpbnBvb2xQNTEycjEKKy0gICAgYnJhaW5wb29s UDUxMnQxCisgKTsKKyAKKyBteSBAYmluYXJ5X2N1cnZlcyA9IHF3KAorQEAgLTEzNiw3ICsxMDIs NiBAQCBwdXNoKEBvdGhlcl9jdXJ2ZXMsICdTTTInKQorICAgICBpZiAhZGlzYWJsZWQoInNtMiIp OworIAorIG15IEBjdXJ2ZV9hbGlhc2VzID0gcXcoCistICAgIFAtMTkyCisgICAgIFAtMjI0Cisg ICAgIFAtMjU2CisgICAgIFAtMzg0CitkaWZmIC11cCBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVz dC9yZWNpcGVzLzA2LXRlc3RfYWxnb3JpdGhtaWQudC5lYy1jdXJ2ZXMgb3BlbnNzbC0zLjAuMC1h bHBoYTEzL3Rlc3QvcmVjaXBlcy8wNi10ZXN0X2FsZ29yaXRobWlkLnQKKy0tLSBvcGVuc3NsLTMu MC4wLWFscGhhMTMvdGVzdC9yZWNpcGVzLzA2LXRlc3RfYWxnb3JpdGhtaWQudC5lYy1jdXJ2ZXMJ MjAyMS0wNC0xMCAxMjo0MDo1OS44NzE4NTg3NjQgKzAyMDAKKysrKyBvcGVuc3NsLTMuMC4wLWFs cGhhMTMvdGVzdC9yZWNpcGVzLzA2LXRlc3RfYWxnb3JpdGhtaWQudAkyMDIxLTA0LTEwIDEyOjQx OjQxLjE0MDQ1NTA3MCArMDIwMAorQEAgLTMzLDcgKzMzLDcgQEAgbXkgJWNlcnRzX2luZm8gPQor ICAgICAgICAgICdlZS1jZXJ0LWVjLW5hbWVkLWV4cGxpY2l0JyA9PiAnY2EtY2VydC1lYy1leHBs aWNpdCcsCisgICAgICAgICAgJ2VlLWNlcnQtZWMtbmFtZWQtbmFtZWQnID0+ICdjYS1jZXJ0LWVj LW5hbWVkJywKKyAgICAgICAgICAjICdzZXJ2ZXItZWQ0NDgtY2VydCcgPT4gJ3Jvb3QtZWQ0NDgt Y2VydCcKKy0gICAgICAgICAnc2VydmVyLWVjZHNhLWJyYWlucG9vbFAyNTZyMS1jZXJ0JyA9PiAn cm9vdGNlcnQnLAorKwkJICMgJ3NlcnZlci1lY2RzYS1icmFpbnBvb2xQMjU2cjEtY2VydCcgPT4g J3Jvb3RjZXJ0JywKKyAgICAgICAgICkKKyAgICAgICkKKyAgICAgKTsKK2RpZmYgLXVwIG9wZW5z c2wtMy4wLjAtYWxwaGExMy90ZXN0L3JlY2lwZXMvMTUtdGVzdF9lYy50LmVjLWN1cnZlcyBvcGVu c3NsLTMuMC4wLWFscGhhMTMvdGVzdC9yZWNpcGVzLzE1LXRlc3RfZWMudAorZGlmZiAtdXAgb3Bl bnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3QvcmVjaXBlcy8yMC10ZXN0X2NsaV9maXBzLnQuZWMtY3Vy dmVzIG9wZW5zc2wtMy4wLjAtYWxwaGExMy90ZXN0L3JlY2lwZXMvMjAtdGVzdF9jbGlfZmlwcy50 CitkaWZmIC11cCBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9yZWNpcGVzLzMwLXRlc3RfYWN2 cC50LmVjLWN1cnZlcyBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9yZWNpcGVzLzMwLXRlc3Rf YWN2cC50CitkaWZmIC11cCBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9zc2wtdGVzdHMvMjAt Y2VydC1zZWxlY3QuY25mLmVjLWN1cnZlcyBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9zc2wt dGVzdHMvMjAtY2VydC1zZWxlY3QuY25mCistLS0gb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3Qv c3NsLXRlc3RzLzIwLWNlcnQtc2VsZWN0LmNuZi5lYy1jdXJ2ZXMJMjAyMS0wNC0xMCAxMzoyMTo1 Mi4xMjMwNDAyMjYgKzAyMDAKKysrKyBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9zc2wtdGVz dHMvMjAtY2VydC1zZWxlY3QuY25mCTIwMjEtMDQtMTAgMTM6Mjg6MjAuODU2MDIzOTg1ICswMjAw CitAQCAtNzc2LDE0ICs3NzYsMTIgQEAgc2VydmVyID0gMjItRUNEU0Egd2l0aCBicmFpbnBvb2wt c2VydmVyCisgY2xpZW50ID0gMjItRUNEU0Egd2l0aCBicmFpbnBvb2wtY2xpZW50CisgCisgWzIy LUVDRFNBIHdpdGggYnJhaW5wb29sLXNlcnZlcl0KKy1DZXJ0aWZpY2F0ZSA9ICR7RU5WOjpURVNU X0NFUlRTX0RJUn0vc2VydmVyLWVjZHNhLWJyYWlucG9vbFAyNTZyMS1jZXJ0LnBlbQorK0NlcnRp ZmljYXRlID0gJHtFTlY6OlRFU1RfQ0VSVFNfRElSfS9zZXJ2ZXItZWNkc2EtY2VydC5wZW0KKyBD aXBoZXJTdHJpbmcgPSBERUZBVUxUCistR3JvdXBzID0gYnJhaW5wb29sUDI1NnIxCistUHJpdmF0 ZUtleSA9ICR7RU5WOjpURVNUX0NFUlRTX0RJUn0vc2VydmVyLWVjZHNhLWJyYWlucG9vbFAyNTZy MS1rZXkucGVtCisrUHJpdmF0ZUtleSA9ICR7RU5WOjpURVNUX0NFUlRTX0RJUn0vc2VydmVyLWVj ZHNhLWtleS5wZW0KKyAKKyBbMjItRUNEU0Egd2l0aCBicmFpbnBvb2wtY2xpZW50XQorIENpcGhl clN0cmluZyA9IGFFQ0RTQQorLUdyb3VwcyA9IGJyYWlucG9vbFAyNTZyMQorIE1heFByb3RvY29s ID0gVExTdjEuMgorIFJlcXVlc3RDQUZpbGUgPSAke0VOVjo6VEVTVF9DRVJUU19ESVJ9L3Jvb3Qt Y2VydC5wZW0KKyBWZXJpZnlDQUZpbGUgPSAke0VOVjo6VEVTVF9DRVJUU19ESVJ9L3Jvb3RjZXJ0 LnBlbQorQEAgLTc5MSw5ICs3ODksNiBAQCBWZXJpZnlNb2RlID0gUGVlcgorIAorIFt0ZXN0LTIy XQorIEV4cGVjdGVkUmVzdWx0ID0gU3VjY2VzcworLUV4cGVjdGVkU2VydmVyQ0FOYW1lcyA9IGVt cHR5CistRXhwZWN0ZWRTZXJ2ZXJDZXJ0VHlwZSA9IGJyYWlucG9vbFAyNTZyMQorLUV4cGVjdGVk U2VydmVyU2lnblR5cGUgPSBFQworIAorIAorICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK0BAIC0xNzQxLDkgKzE3MzYsOSBAQCBz ZXJ2ZXIgPSA1My1UTFMgMS4zIEVDRFNBIHdpdGggYnJhaW5wb29sCisgY2xpZW50ID0gNTMtVExT IDEuMyBFQ0RTQSB3aXRoIGJyYWlucG9vbC1jbGllbnQKKyAKKyBbNTMtVExTIDEuMyBFQ0RTQSB3 aXRoIGJyYWlucG9vbC1zZXJ2ZXJdCistQ2VydGlmaWNhdGUgPSAke0VOVjo6VEVTVF9DRVJUU19E SVJ9L3NlcnZlci1lY2RzYS1icmFpbnBvb2xQMjU2cjEtY2VydC5wZW0KKytDZXJ0aWZpY2F0ZSA9 ICR7RU5WOjpURVNUX0NFUlRTX0RJUn0vc2VydmVyLWVjZHNhLWNlcnQucGVtCisgQ2lwaGVyU3Ry aW5nID0gREVGQVVMVAorLVByaXZhdGVLZXkgPSAke0VOVjo6VEVTVF9DRVJUU19ESVJ9L3NlcnZl ci1lY2RzYS1icmFpbnBvb2xQMjU2cjEta2V5LnBlbQorK1ByaXZhdGVLZXkgPSAke0VOVjo6VEVT VF9DRVJUU19ESVJ9L3NlcnZlci1lY2RzYS1rZXkucGVtCisgCisgWzUzLVRMUyAxLjMgRUNEU0Eg d2l0aCBicmFpbnBvb2wtY2xpZW50XQorIENpcGhlclN0cmluZyA9IERFRkFVTFQKK0BAIC0xNzU0 LDcgKzE3NDksNyBAQCBWZXJpZnlDQUZpbGUgPSAke0VOVjo6VEVTVF9DRVJUU19ESVJ9L3JvCisg VmVyaWZ5TW9kZSA9IFBlZXIKKyAKKyBbdGVzdC01M10KKy1FeHBlY3RlZFJlc3VsdCA9IFNlcnZl ckZhaWwKKytFeHBlY3RlZFJlc3VsdCA9IFN1Y2Nlc3MKKyAKKyAKKyAjID09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CitkaWZmIC11cCBv cGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9zc2wtdGVzdHMvMjAtY2VydC1zZWxlY3QuY25mLmlu LmVjLWN1cnZlcyBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9zc2wtdGVzdHMvMjAtY2VydC1z ZWxlY3QuY25mLmluCistLS0gb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3Qvc3NsLXRlc3RzLzIw LWNlcnQtc2VsZWN0LmNuZi5pbi5lYy1jdXJ2ZXMJMjAyMS0wNC0xMCAxMzoyMjowNi4yNzUyMjE2 NjIgKzAyMDAKKysrKyBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9zc2wtdGVzdHMvMjAtY2Vy dC1zZWxlY3QuY25mLmluCTIwMjEtMDQtMTAgMTM6MzU6MTguNzc0NjIzMzE5ICswMjAwCitAQCAt NDI4LDIxICs0MjgsMjEgQEAgbXkgQHRlc3RzX25vbl9maXBzID0gKAorICAgICB7CisgICAgICAg ICBuYW1lID0+ICJFQ0RTQSB3aXRoIGJyYWlucG9vbCIsCisgICAgICAgICBzZXJ2ZXIgPT4gIHsK Ky0gICAgICAgICAgICAiQ2VydGlmaWNhdGUiID0+IHRlc3RfcGVtKCJzZXJ2ZXItZWNkc2EtYnJh aW5wb29sUDI1NnIxLWNlcnQucGVtIiksCistICAgICAgICAgICAgIlByaXZhdGVLZXkiID0+IHRl c3RfcGVtKCJzZXJ2ZXItZWNkc2EtYnJhaW5wb29sUDI1NnIxLWtleS5wZW0iKSwKKy0gICAgICAg ICAgICAiR3JvdXBzIiA9PiAiYnJhaW5wb29sUDI1NnIxIiwKKysgICAgICAgICAgICAiQ2VydGlm aWNhdGUiID0+IHRlc3RfcGVtKCJzZXJ2ZXItZWNkc2EtY2VydC5wZW0iKSwKKysgICAgICAgICAg ICAiUHJpdmF0ZUtleSIgPT4gdGVzdF9wZW0oInNlcnZlci1lY2RzYS1rZXkucGVtIiksCisrCQkJ IyJHcm91cHMiID0+ICJicmFpbnBvb2xQMjU2cjEiLAorICAgICAgICAgfSwKKyAgICAgICAgIGNs aWVudCA9PiB7CisgICAgICAgICAgICAgIk1heFByb3RvY29sIiA9PiAiVExTdjEuMiIsCisgICAg ICAgICAgICAgIkNpcGhlclN0cmluZyIgPT4gImFFQ0RTQSIsCisgICAgICAgICAgICAgIlJlcXVl c3RDQUZpbGUiID0+IHRlc3RfcGVtKCJyb290LWNlcnQucGVtIiksCistICAgICAgICAgICAgIkdy b3VwcyIgPT4gImJyYWlucG9vbFAyNTZyMSIsCisrCQkJIyJHcm91cHMiID0+ICJicmFpbnBvb2xQ MjU2cjEiLAorICAgICAgICAgfSwKKyAgICAgICAgIHRlc3QgICA9PiB7CistICAgICAgICAgICAg IkV4cGVjdGVkU2VydmVyQ2VydFR5cGUiID0+LCAiYnJhaW5wb29sUDI1NnIxIiwKKy0gICAgICAg ICAgICAiRXhwZWN0ZWRTZXJ2ZXJTaWduVHlwZSIgPT4sICJFQyIsCisrICAgICAgICAgICAgIyJF eHBlY3RlZFNlcnZlckNlcnRUeXBlIiA9PiwgImJyYWlucG9vbFAyNTZyMSIsCisrICAgICAgICAg ICAgIyJFeHBlY3RlZFNlcnZlclNpZ25UeXBlIiA9PiwgIkVDIiwKKyAgICAgICAgICAgICAjIE5v dGU6IGNlcnRpZmljYXRlX2F1dGhvcml0aWVzIG5vdCBzZW50IGZvciBUTFMgPCAxLjMKKy0gICAg ICAgICAgICAiRXhwZWN0ZWRTZXJ2ZXJDQU5hbWVzIiA9PiwgImVtcHR5IiwKKysgICAgICAgICAg ICAjIkV4cGVjdGVkU2VydmVyQ0FOYW1lcyIgPT4sICJlbXB0eSIsCisgICAgICAgICAgICAgIkV4 cGVjdGVkUmVzdWx0IiA9PiAiU3VjY2VzcyIKKyAgICAgICAgIH0sCisgICAgIH0sCitAQCAtOTE1 LDggKzkxNSw4IEBAIG15IEB0ZXN0c190bHNfMV8zX25vbl9maXBzID0gKAorICAgICB7CisgICAg ICAgICBuYW1lID0+ICJUTFMgMS4zIEVDRFNBIHdpdGggYnJhaW5wb29sIiwKKyAgICAgICAgIHNl cnZlciA9PiAgeworLSAgICAgICAgICAgICJDZXJ0aWZpY2F0ZSIgPT4gdGVzdF9wZW0oInNlcnZl ci1lY2RzYS1icmFpbnBvb2xQMjU2cjEtY2VydC5wZW0iKSwKKy0gICAgICAgICAgICAiUHJpdmF0 ZUtleSIgPT4gdGVzdF9wZW0oInNlcnZlci1lY2RzYS1icmFpbnBvb2xQMjU2cjEta2V5LnBlbSIp LAorKyAgICAgICAgICAgICJDZXJ0aWZpY2F0ZSIgPT4gdGVzdF9wZW0oInNlcnZlci1lY2RzYS1j ZXJ0LnBlbSIpLAorKyAgICAgICAgICAgICJQcml2YXRlS2V5IiA9PiB0ZXN0X3BlbSgic2VydmVy LWVjZHNhLWtleS5wZW0iKSwKKyAgICAgICAgIH0sCisgICAgICAgICBjbGllbnQgPT4geworICAg ICAgICAgICAgICJSZXF1ZXN0Q0FGaWxlIiA9PiB0ZXN0X3BlbSgicm9vdC1jZXJ0LnBlbSIpLAor QEAgLTkyNCw3ICs5MjQsNyBAQCBteSBAdGVzdHNfdGxzXzFfM19ub25fZmlwcyA9ICgKKyAgICAg ICAgICAgICAiTWF4UHJvdG9jb2wiID0+ICJUTFN2MS4zIgorICAgICAgICAgfSwKKyAgICAgICAg IHRlc3QgICA9PiB7CistICAgICAgICAgICAgIkV4cGVjdGVkUmVzdWx0IiA9PiAiU2VydmVyRmFp bCIKKysgICAgICAgICAgICAiRXhwZWN0ZWRSZXN1bHQiID0+ICJTdWNjZXNzIgorICAgICAgICAg fSwKKyAgICAgfSwKKyApOworZGlmZiAtdXAgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3QvcmVj aXBlcy8yMC10ZXN0X2NsaV9maXBzLnQuZWMtY3VydmVzIG9wZW5zc2wtMy4wLjAtYWxwaGExMy90 ZXN0L3JlY2lwZXMvMjAtdGVzdF9jbGlfZmlwcy50CistLS0gb3BlbnNzbC0zLjAuMC1hbHBoYTEz L3Rlc3QvcmVjaXBlcy8yMC10ZXN0X2NsaV9maXBzLnQuZWMtY3VydmVzCTIwMjEtMDQtMTAgMTQ6 MDA6MjIuNDgyNzgyMjE2ICswMjAwCisrKysgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3QvcmVj aXBlcy8yMC10ZXN0X2NsaV9maXBzLnQJMjAyMS0wNC0xMCAxNDowODo1MC43Njk3Mjc2NTEgKzAy MDAKK0BAIC0xNTgsNjAgKzE1OCw2IEBAIHN1YiB0c2lnbnZlcmlmeSB7CisgICAgICAgICR0ZXN0 dGV4dCk7CisgfQorIAorLVNLSVAgOiB7CistICAgIHNraXAgIkZJUFMgRUMgdGVzdHMgYmVjYXVz ZSBvZiBubyBlYyBpbiB0aGlzIGJ1aWxkIiwgMQorLSAgICAgICAgaWYgZGlzYWJsZWQoImVjIik7 CistCistICAgIHN1YnRlc3QgRUMgPT4gc3ViIHsKKy0gICAgICAgIG15ICR0ZXN0dGV4dF9wcmVm aXggPSAnRUMnOworLSAgICAgICAgbXkgJGFfZmlwc19jdXJ2ZSA9ICdwcmltZTI1NnYxJzsKKy0g ICAgICAgIG15ICRmaXBzX2tleSA9ICR0ZXN0dGV4dF9wcmVmaXguJy5maXBzLnByaXYucGVtJzsK Ky0gICAgICAgIG15ICRmaXBzX3B1Yl9rZXkgPSAkdGVzdHRleHRfcHJlZml4LicuZmlwcy5wdWIu cGVtJzsKKy0gICAgICAgIG15ICRhX25vbmZpcHNfY3VydmUgPSAnYnJhaW5wb29sUDI1NnIxJzsK Ky0gICAgICAgIG15ICRub25maXBzX2tleSA9ICR0ZXN0dGV4dF9wcmVmaXguJy5ub25maXBzLnBy aXYucGVtJzsKKy0gICAgICAgIG15ICRub25maXBzX3B1Yl9rZXkgPSAkdGVzdHRleHRfcHJlZml4 Licubm9uZmlwcy5wdWIucGVtJzsKKy0gICAgICAgIG15ICR0ZXN0dGV4dCA9ICcnOworLSAgICAg ICAgbXkgJGN1cnZlbmFtZSA9ICcnOworLQorLSAgICAgICAgcGxhbiB0ZXN0cyA9PiA1ICsgJHRz aWdudmVyaWZ5X2NvdW50OworLQorLSAgICAgICAgJEVOVntPUEVOU1NMX0NPTkZ9ID0gJGRlZmF1 bHRjb25mOworLSAgICAgICAgJGN1cnZlbmFtZSA9ICRhX25vbmZpcHNfY3VydmU7CistICAgICAg ICAkdGVzdHRleHQgPSAkdGVzdHRleHRfcHJlZml4Lic6ICcuCistICAgICAgICAgICAgJ0dlbmVy YXRlIGEga2V5IHdpdGggYSBub24tRklQUyBhbGdvcml0aG0gd2l0aCB0aGUgZGVmYXVsdCBwcm92 aWRlcic7CistICAgICAgICBvayhydW4oYXBwKFsnb3BlbnNzbCcsICdnZW5wa2V5JywgJy1hbGdv cml0aG0nLCAnRUMnLAorLSAgICAgICAgICAgICAgICAgICAgJy1wa2V5b3B0JywgJ2VjX3BhcmFt Z2VuX2N1cnZlOicuJGN1cnZlbmFtZSwKKy0gICAgICAgICAgICAgICAgICAgICctb3V0JywgJG5v bmZpcHNfa2V5XSkpLAorLSAgICAgICAgICAgJHRlc3R0ZXh0KTsKKy0KKy0gICAgICAgIHB1YmZy b21wcml2KCR0ZXN0dGV4dF9wcmVmaXgsICRub25maXBzX2tleSwgJG5vbmZpcHNfcHViX2tleSwg Im5vbi1GSVBTIik7CistCistICAgICAgICAkRU5We09QRU5TU0xfQ09ORn0gPSAkZmlwc2NvbmY7 CistCistICAgICAgICAkY3VydmVuYW1lID0gJGFfZmlwc19jdXJ2ZTsKKy0gICAgICAgICR0ZXN0 dGV4dCA9ICR0ZXN0dGV4dF9wcmVmaXguJzogJy4KKy0gICAgICAgICAgICAnR2VuZXJhdGUgYSBr ZXkgd2l0aCBhIEZJUFMgYWxnb3JpdGhtJzsKKy0gICAgICAgIG9rKHJ1bihhcHAoWydvcGVuc3Ns JywgJ2dlbnBrZXknLCAnLWFsZ29yaXRobScsICdFQycsCistICAgICAgICAgICAgICAgICAgICAn LXBrZXlvcHQnLCAnZWNfcGFyYW1nZW5fY3VydmU6Jy4kY3VydmVuYW1lLAorLSAgICAgICAgICAg ICAgICAgICAgJy1vdXQnLCAkZmlwc19rZXldKSksCistICAgICAgICAgICAkdGVzdHRleHQpOwor LQorLSAgICAgICAgcHViZnJvbXByaXYoJHRlc3R0ZXh0X3ByZWZpeCwgJGZpcHNfa2V5LCAkZmlw c19wdWJfa2V5LCAiRklQUyIpOworLQorLSAgICAgICAgJGN1cnZlbmFtZSA9ICRhX25vbmZpcHNf Y3VydmU7CistICAgICAgICAkdGVzdHRleHQgPSAkdGVzdHRleHRfcHJlZml4Lic6ICcuCistICAg ICAgICAgICAgJ0dlbmVyYXRlIGEga2V5IHdpdGggYSBub24tRklQUyBhbGdvcml0aG0nLgorLSAg ICAgICAgICAgICcgKHNob3VsZCBmYWlsKSc7CistICAgICAgICBvayghcnVuKGFwcChbJ29wZW5z c2wnLCAnZ2VucGtleScsICctYWxnb3JpdGhtJywgJ0VDJywKKy0gICAgICAgICAgICAgICAgICAg ICAnLXBrZXlvcHQnLCAnZWNfcGFyYW1nZW5fY3VydmU6Jy4kY3VydmVuYW1lLAorLSAgICAgICAg ICAgICAgICAgICAgICctb3V0JywgJHRlc3R0ZXh0X3ByZWZpeC4nLicuJGN1cnZlbmFtZS4nLnBy aXYucGVtJ10pKSwKKy0gICAgICAgICAgICR0ZXN0dGV4dCk7CistCistICAgICAgICB0c2lnbnZl cmlmeSgkdGVzdHRleHRfcHJlZml4LCAkZmlwc19rZXksICRmaXBzX3B1Yl9rZXksICRub25maXBz X2tleSwKKy0gICAgICAgICAgICAgICAgICAgICRub25maXBzX3B1Yl9rZXkpOworLSAgICB9Owor LX0KKy0KKyBTS0lQOiB7CisgICAgIHNraXAgIkZJUFMgUlNBIHRlc3RzIGJlY2F1c2Ugb2Ygbm8g cnNhIGluIHRoaXMgYnVpbGQiLCAxCisgICAgICAgICBpZiBkaXNhYmxlZCgicnNhIik7CitkaWZm IC11cCBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9yZWNpcGVzLzIwLXRlc3RfY2xpX2ZpcHMu dC5lYy1jdXJ2ZXMgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3QvcmVjaXBlcy8yMC10ZXN0X2Ns aV9maXBzLnQKKy0tLSBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9yZWNpcGVzLzIwLXRlc3Rf Y2xpX2ZpcHMudC5lYy1jdXJ2ZXMJMjAyMS0wNC0xMCAxNDoyMzowOS44MDU0Njg0ODMgKzAyMDAK KysrKyBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9yZWNpcGVzLzIwLXRlc3RfY2xpX2ZpcHMu dAkyMDIxLTA0LTEwIDE0OjIzOjMzLjAwMjc4NDI2NSArMDIwMAorQEAgLTI2LDcgKzI2LDcgQEAg dXNlIHBsYXRmb3JtOworIG15ICRub19jaGVjayA9IGRpc2FibGVkKCJmaXBzIikgfHwgZGlzYWJs ZWQoJ2ZpcHMtc2VjdXJpdHljaGVja3MnKTsKKyBwbGFuIHNraXBfYWxsID0+ICJUZXN0IG9ubHkg c3VwcG9ydGVkIGluIGEgZmlwcyBidWlsZCB3aXRoIHNlY3VyaXR5IGNoZWNrcyIKKyAgICAgaWYg JG5vX2NoZWNrOworLXBsYW4gdGVzdHMgPT4gMTE7CisrcGxhbiB0ZXN0cyA9PiAxMDsKKyAKKyBt eSAkZmlwc21vZHVsZSA9IGJsZHRvcF9maWxlKCdwcm92aWRlcnMnLCBwbGF0Zm9ybS0+ZHNvKCdm aXBzJykpOworIG15ICRmaXBzY29uZiA9IHNyY3RvcF9maWxlKCJ0ZXN0IiwgImZpcHMtYW5kLWJh c2UuY25mIik7CitkaWZmIC11cCBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9zc2wtdGVzdHMv MjAtY2VydC1zZWxlY3QuY25mLmVjLWN1cnZlcyBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9z c2wtdGVzdHMvMjAtY2VydC1zZWxlY3QuY25mCistLS0gb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rl c3Qvc3NsLXRlc3RzLzIwLWNlcnQtc2VsZWN0LmNuZi5lYy1jdXJ2ZXMJMjAyMS0wNC0xMCAxNzo1 Mjo0Ni40Nzg3MjE2MTEgKzAyMDAKKysrKyBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9zc2wt dGVzdHMvMjAtY2VydC1zZWxlY3QuY25mCTIwMjEtMDQtMTAgMTc6NTQ6MTEuMzcxNjg4NDQ2ICsw MjAwCitAQCAtMTcxMCwyMCArMTcxMCwxOCBAQCBzZXJ2ZXIgPSA1Mi1UTFMgMS4zIEVDRFNBIHdp dGggYnJhaW5wb29sCisgY2xpZW50ID0gNTItVExTIDEuMyBFQ0RTQSB3aXRoIGJyYWlucG9vbCBi dXQgbm8gc3VpdGFibGUgZ3JvdXBzLWNsaWVudAorIAorIFs1Mi1UTFMgMS4zIEVDRFNBIHdpdGgg YnJhaW5wb29sIGJ1dCBubyBzdWl0YWJsZSBncm91cHMtc2VydmVyXQorLUNlcnRpZmljYXRlID0g JHtFTlY6OlRFU1RfQ0VSVFNfRElSfS9zZXJ2ZXItZWNkc2EtYnJhaW5wb29sUDI1NnIxLWNlcnQu cGVtCisrQ2VydGlmaWNhdGUgPSAke0VOVjo6VEVTVF9DRVJUU19ESVJ9L3NlcnZlci1lY2RzYS1j ZXJ0LnBlbQorIENpcGhlclN0cmluZyA9IERFRkFVTFQKKy1Hcm91cHMgPSBicmFpbnBvb2xQMjU2 cjEKKy1Qcml2YXRlS2V5ID0gJHtFTlY6OlRFU1RfQ0VSVFNfRElSfS9zZXJ2ZXItZWNkc2EtYnJh aW5wb29sUDI1NnIxLWtleS5wZW0KKytQcml2YXRlS2V5ID0gJHtFTlY6OlRFU1RfQ0VSVFNfRElS fS9zZXJ2ZXItZWNkc2Eta2V5LnBlbQorIAorIFs1Mi1UTFMgMS4zIEVDRFNBIHdpdGggYnJhaW5w b29sIGJ1dCBubyBzdWl0YWJsZSBncm91cHMtY2xpZW50XQorIENpcGhlclN0cmluZyA9IGFFQ0RT QQorLUdyb3VwcyA9IGJyYWlucG9vbFAyNTZyMQorIFJlcXVlc3RDQUZpbGUgPSAke0VOVjo6VEVT VF9DRVJUU19ESVJ9L3Jvb3QtY2VydC5wZW0KKyBWZXJpZnlDQUZpbGUgPSAke0VOVjo6VEVTVF9D RVJUU19ESVJ9L3Jvb3RjZXJ0LnBlbQorIFZlcmlmeU1vZGUgPSBQZWVyCisgCisgW3Rlc3QtNTJd CistRXhwZWN0ZWRSZXN1bHQgPSBDbGllbnRGYWlsCisrRXhwZWN0ZWRSZXN1bHQgPSBTdWNjZXNz CisgCisgCisgIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQorZGlmZiAtdXAgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3Qvc3NsLXRl c3RzLzIwLWNlcnQtc2VsZWN0LmNuZi5pbi5lYy1jdXJ2ZXMgb3BlbnNzbC0zLjAuMC1hbHBoYTEz L3Rlc3Qvc3NsLXRlc3RzLzIwLWNlcnQtc2VsZWN0LmNuZi5pbgorLS0tIG9wZW5zc2wtMy4wLjAt YWxwaGExMy90ZXN0L3NzbC10ZXN0cy8yMC1jZXJ0LXNlbGVjdC5jbmYuaW4uZWMtY3VydmVzCTIw MjEtMDQtMTAgMTc6NTM6MDMuMzE3OTEzMzkwICswMjAwCisrKysgb3BlbnNzbC0zLjAuMC1hbHBo YTEzL3Rlc3Qvc3NsLXRlc3RzLzIwLWNlcnQtc2VsZWN0LmNuZi5pbgkyMDIxLTA0LTEwIDE3OjU1 OjIyLjUwNzQ5ODYwNiArMDIwMAorQEAgLTg5NiwyMCArODk2LDIwIEBAIG15IEB0ZXN0c190bHNf MV8zX25vbl9maXBzID0gKAorICAgICB7CisgICAgICAgICBuYW1lID0+ICJUTFMgMS4zIEVDRFNB IHdpdGggYnJhaW5wb29sIGJ1dCBubyBzdWl0YWJsZSBncm91cHMiLAorICAgICAgICAgc2VydmVy ID0+ICB7CistICAgICAgICAgICAgIkNlcnRpZmljYXRlIiA9PiB0ZXN0X3BlbSgic2VydmVyLWVj ZHNhLWJyYWlucG9vbFAyNTZyMS1jZXJ0LnBlbSIpLAorLSAgICAgICAgICAgICJQcml2YXRlS2V5 IiA9PiB0ZXN0X3BlbSgic2VydmVyLWVjZHNhLWJyYWlucG9vbFAyNTZyMS1rZXkucGVtIiksCist ICAgICAgICAgICAgIkdyb3VwcyIgPT4gImJyYWlucG9vbFAyNTZyMSIsCisrICAgICAgICAgICAg IkNlcnRpZmljYXRlIiA9PiB0ZXN0X3BlbSgic2VydmVyLWVjZHNhLWNlcnQucGVtIiksCisrICAg ICAgICAgICAgIlByaXZhdGVLZXkiID0+IHRlc3RfcGVtKCJzZXJ2ZXItZWNkc2Eta2V5LnBlbSIp LAorKyAgICAgICAgICAgICMiR3JvdXBzIiA9PiAiYnJhaW5wb29sUDI1NnIxIiwKKyAgICAgICAg IH0sCisgICAgICAgICBjbGllbnQgPT4geworICAgICAgICAgICAgICJDaXBoZXJTdHJpbmciID0+ ICJhRUNEU0EiLAorICAgICAgICAgICAgICJSZXF1ZXN0Q0FGaWxlIiA9PiB0ZXN0X3BlbSgicm9v dC1jZXJ0LnBlbSIpLAorLSAgICAgICAgICAgICJHcm91cHMiID0+ICJicmFpbnBvb2xQMjU2cjEi LAorKyAgICAgICAgICAgICMiR3JvdXBzIiA9PiAiYnJhaW5wb29sUDI1NnIxIiwKKyAgICAgICAg IH0sCisgICAgICAgICB0ZXN0ICAgPT4geworICAgICAgICAgICAgICNXZSBvbmx5IGNvbmZpZ3Vy ZWQgYnJhaW5wb29sUDI1NnIxIG9uIHRoZSBjbGllbnQgc2lkZSwgYnV0IFRMU3YxLjMKKyAgICAg ICAgICAgICAjaXMgZW5hYmxlZCBhbmQgdGhpcyBncm91cCBpcyBub3QgYWxsb3dlZCBpbiBUTFN2 MS4zLiBUaGVyZWZvcmUgdGhpcworICAgICAgICAgICAgICNzaG91bGQgZmFpbAorLSAgICAgICAg ICAgICJFeHBlY3RlZFJlc3VsdCIgPT4gIkNsaWVudEZhaWwiCisrICAgICAgICAgICAgIkV4cGVj dGVkUmVzdWx0IiA9PiAiU3VjY2VzcyIKKyAgICAgICAgIH0sCisgICAgIH0sCisgICAgIHsKK2Rp ZmYgLXVwIG9wZW5zc2wtMy4wLjAtYWxwaGExMy9jcnlwdG8vZXZwL2VjX3N1cHBvcnQuYy5lYy1j dXJ2ZXMgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL2NyeXB0by9ldnAvZWNfc3VwcG9ydC5jCistLS0g b3BlbnNzbC0zLjAuMC1hbHBoYTEzL2NyeXB0by9ldnAvZWNfc3VwcG9ydC5jLmVjLWN1cnZlcwky MDIxLTA0LTExIDExOjEzOjE0LjIzNjg5MTg0NCArMDIwMAorKysrIG9wZW5zc2wtMy4wLjAtYWxw aGExMy9jcnlwdG8vZXZwL2VjX3N1cHBvcnQuYwkyMDIxLTA0LTExIDExOjEyOjA1LjEyODA5ODcx NCArMDIwMAorQEAgLTIwLDk5ICsyMCwxMyBAQCB0eXBlZGVmIHN0cnVjdCBlY19uYW1lMm5pZF9z dCB7Cisgc3RhdGljIGNvbnN0IEVDX05BTUUyTklEIGN1cnZlX2xpc3RbXSA9IHsKKyAgICAgLyog cHJpbWUgZmllbGQgY3VydmVzICovCisgICAgIC8qIHNlY2cgY3VydmVzICovCistICAgIHsic2Vj cDExMnIxIiwgTklEX3NlY3AxMTJyMSB9LAorLSAgICB7InNlY3AxMTJyMiIsIE5JRF9zZWNwMTEy cjIgfSwKKy0gICAgeyJzZWNwMTI4cjEiLCBOSURfc2VjcDEyOHIxIH0sCistICAgIHsic2VjcDEy OHIyIiwgTklEX3NlY3AxMjhyMiB9LAorLSAgICB7InNlY3AxNjBrMSIsIE5JRF9zZWNwMTYwazEg fSwKKy0gICAgeyJzZWNwMTYwcjEiLCBOSURfc2VjcDE2MHIxIH0sCistICAgIHsic2VjcDE2MHIy IiwgTklEX3NlY3AxNjByMiB9LAorLSAgICB7InNlY3AxOTJrMSIsIE5JRF9zZWNwMTkyazEgfSwK KyAgICAgeyJzZWNwMjI0azEiLCBOSURfc2VjcDIyNGsxIH0sCisgICAgIHsic2VjcDIyNHIxIiwg TklEX3NlY3AyMjRyMSB9LAorICAgICB7InNlY3AyNTZrMSIsIE5JRF9zZWNwMjU2azEgfSwKKyAg ICAgeyJzZWNwMzg0cjEiLCBOSURfc2VjcDM4NHIxIH0sCisgICAgIHsic2VjcDUyMXIxIiwgTklE X3NlY3A1MjFyMSB9LAorICAgICAvKiBYOS42MiBjdXJ2ZXMgKi8KKy0gICAgeyJwcmltZTE5MnYx IiwgTklEX1g5XzYyX3ByaW1lMTkydjEgfSwKKy0gICAgeyJwcmltZTE5MnYyIiwgTklEX1g5XzYy X3ByaW1lMTkydjIgfSwKKy0gICAgeyJwcmltZTE5MnYzIiwgTklEX1g5XzYyX3ByaW1lMTkydjMg fSwKKy0gICAgeyJwcmltZTIzOXYxIiwgTklEX1g5XzYyX3ByaW1lMjM5djEgfSwKKy0gICAgeyJw cmltZTIzOXYyIiwgTklEX1g5XzYyX3ByaW1lMjM5djIgfSwKKy0gICAgeyJwcmltZTIzOXYzIiwg TklEX1g5XzYyX3ByaW1lMjM5djMgfSwKKyAgICAgeyJwcmltZTI1NnYxIiwgTklEX1g5XzYyX3By aW1lMjU2djEgfSwKKy0gICAgLyogY2hhcmFjdGVyaXN0aWMgdHdvIGZpZWxkIGN1cnZlcyAqLwor LSAgICAvKiBOSVNUL1NFQ0cgY3VydmVzICovCistICAgIHsic2VjdDExM3IxIiwgTklEX3NlY3Qx MTNyMSB9LAorLSAgICB7InNlY3QxMTNyMiIsIE5JRF9zZWN0MTEzcjIgfSwKKy0gICAgeyJzZWN0 MTMxcjEiLCBOSURfc2VjdDEzMXIxIH0sCistICAgIHsic2VjdDEzMXIyIiwgTklEX3NlY3QxMzFy MiB9LAorLSAgICB7InNlY3QxNjNrMSIsIE5JRF9zZWN0MTYzazEgfSwKKy0gICAgeyJzZWN0MTYz cjEiLCBOSURfc2VjdDE2M3IxIH0sCistICAgIHsic2VjdDE2M3IyIiwgTklEX3NlY3QxNjNyMiB9 LAorLSAgICB7InNlY3QxOTNyMSIsIE5JRF9zZWN0MTkzcjEgfSwKKy0gICAgeyJzZWN0MTkzcjIi LCBOSURfc2VjdDE5M3IyIH0sCistICAgIHsic2VjdDIzM2sxIiwgTklEX3NlY3QyMzNrMSB9LAor LSAgICB7InNlY3QyMzNyMSIsIE5JRF9zZWN0MjMzcjEgfSwKKy0gICAgeyJzZWN0MjM5azEiLCBO SURfc2VjdDIzOWsxIH0sCistICAgIHsic2VjdDI4M2sxIiwgTklEX3NlY3QyODNrMSB9LAorLSAg ICB7InNlY3QyODNyMSIsIE5JRF9zZWN0MjgzcjEgfSwKKy0gICAgeyJzZWN0NDA5azEiLCBOSURf c2VjdDQwOWsxIH0sCistICAgIHsic2VjdDQwOXIxIiwgTklEX3NlY3Q0MDlyMSB9LAorLSAgICB7 InNlY3Q1NzFrMSIsIE5JRF9zZWN0NTcxazEgfSwKKy0gICAgeyJzZWN0NTcxcjEiLCBOSURfc2Vj dDU3MXIxIH0sCistICAgIC8qIFg5LjYyIGN1cnZlcyAqLworLSAgICB7ImMycG5iMTYzdjEiLCBO SURfWDlfNjJfYzJwbmIxNjN2MSB9LAorLSAgICB7ImMycG5iMTYzdjIiLCBOSURfWDlfNjJfYzJw bmIxNjN2MiB9LAorLSAgICB7ImMycG5iMTYzdjMiLCBOSURfWDlfNjJfYzJwbmIxNjN2MyB9LAor LSAgICB7ImMycG5iMTc2djEiLCBOSURfWDlfNjJfYzJwbmIxNzZ2MSB9LAorLSAgICB7ImMydG5i MTkxdjEiLCBOSURfWDlfNjJfYzJ0bmIxOTF2MSB9LAorLSAgICB7ImMydG5iMTkxdjIiLCBOSURf WDlfNjJfYzJ0bmIxOTF2MiB9LAorLSAgICB7ImMydG5iMTkxdjMiLCBOSURfWDlfNjJfYzJ0bmIx OTF2MyB9LAorLSAgICB7ImMycG5iMjA4dzEiLCBOSURfWDlfNjJfYzJwbmIyMDh3MSB9LAorLSAg ICB7ImMydG5iMjM5djEiLCBOSURfWDlfNjJfYzJ0bmIyMzl2MSB9LAorLSAgICB7ImMydG5iMjM5 djIiLCBOSURfWDlfNjJfYzJ0bmIyMzl2MiB9LAorLSAgICB7ImMydG5iMjM5djMiLCBOSURfWDlf NjJfYzJ0bmIyMzl2MyB9LAorLSAgICB7ImMycG5iMjcydzEiLCBOSURfWDlfNjJfYzJwbmIyNzJ3 MSB9LAorLSAgICB7ImMycG5iMzA0dzEiLCBOSURfWDlfNjJfYzJwbmIzMDR3MSB9LAorLSAgICB7 ImMydG5iMzU5djEiLCBOSURfWDlfNjJfYzJ0bmIzNTl2MSB9LAorLSAgICB7ImMycG5iMzY4dzEi LCBOSURfWDlfNjJfYzJwbmIzNjh3MSB9LAorLSAgICB7ImMydG5iNDMxcjEiLCBOSURfWDlfNjJf YzJ0bmI0MzFyMSB9LAorLSAgICAvKgorLSAgICAgKiB0aGUgV0FQL1dUTFMgY3VydmVzIFt1bmxp a2UgU0VDRywgc3BlYyBoYXMgaXRzIG93biBPSURzIGZvciBjdXJ2ZXMKKy0gICAgICogZnJvbSBY OS42Ml0KKy0gICAgICovCistICAgIHsid2FwLXdzZy1pZG0tZWNpZC13dGxzMSIsIE5JRF93YXBf d3NnX2lkbV9lY2lkX3d0bHMxIH0sCistICAgIHsid2FwLXdzZy1pZG0tZWNpZC13dGxzMyIsIE5J RF93YXBfd3NnX2lkbV9lY2lkX3d0bHMzIH0sCistICAgIHsid2FwLXdzZy1pZG0tZWNpZC13dGxz NCIsIE5JRF93YXBfd3NnX2lkbV9lY2lkX3d0bHM0IH0sCistICAgIHsid2FwLXdzZy1pZG0tZWNp ZC13dGxzNSIsIE5JRF93YXBfd3NnX2lkbV9lY2lkX3d0bHM1IH0sCistICAgIHsid2FwLXdzZy1p ZG0tZWNpZC13dGxzNiIsIE5JRF93YXBfd3NnX2lkbV9lY2lkX3d0bHM2IH0sCistICAgIHsid2Fw LXdzZy1pZG0tZWNpZC13dGxzNyIsIE5JRF93YXBfd3NnX2lkbV9lY2lkX3d0bHM3IH0sCistICAg IHsid2FwLXdzZy1pZG0tZWNpZC13dGxzOCIsIE5JRF93YXBfd3NnX2lkbV9lY2lkX3d0bHM4IH0s CistICAgIHsid2FwLXdzZy1pZG0tZWNpZC13dGxzOSIsIE5JRF93YXBfd3NnX2lkbV9lY2lkX3d0 bHM5IH0sCistICAgIHsid2FwLXdzZy1pZG0tZWNpZC13dGxzMTAiLCBOSURfd2FwX3dzZ19pZG1f ZWNpZF93dGxzMTAgfSwKKy0gICAgeyJ3YXAtd3NnLWlkbS1lY2lkLXd0bHMxMSIsIE5JRF93YXBf d3NnX2lkbV9lY2lkX3d0bHMxMSB9LAorLSAgICB7IndhcC13c2ctaWRtLWVjaWQtd3RsczEyIiwg TklEX3dhcF93c2dfaWRtX2VjaWRfd3RsczEyIH0sCistICAgIC8qIElQU2VjIGN1cnZlcyAqLwor LSAgICB7Ik9ha2xleS1FQzJOLTMiLCBOSURfaXBzZWMzIH0sCistICAgIHsiT2FrbGV5LUVDMk4t NCIsIE5JRF9pcHNlYzQgfSwKKy0gICAgLyogYnJhaW5wb29sIGN1cnZlcyAqLworLSAgICB7ImJy YWlucG9vbFAxNjByMSIsIE5JRF9icmFpbnBvb2xQMTYwcjEgfSwKKy0gICAgeyJicmFpbnBvb2xQ MTYwdDEiLCBOSURfYnJhaW5wb29sUDE2MHQxIH0sCistICAgIHsiYnJhaW5wb29sUDE5MnIxIiwg TklEX2JyYWlucG9vbFAxOTJyMSB9LAorLSAgICB7ImJyYWlucG9vbFAxOTJ0MSIsIE5JRF9icmFp bnBvb2xQMTkydDEgfSwKKy0gICAgeyJicmFpbnBvb2xQMjI0cjEiLCBOSURfYnJhaW5wb29sUDIy NHIxIH0sCistICAgIHsiYnJhaW5wb29sUDIyNHQxIiwgTklEX2JyYWlucG9vbFAyMjR0MSB9LAor LSAgICB7ImJyYWlucG9vbFAyNTZyMSIsIE5JRF9icmFpbnBvb2xQMjU2cjEgfSwKKy0gICAgeyJi cmFpbnBvb2xQMjU2dDEiLCBOSURfYnJhaW5wb29sUDI1NnQxIH0sCistICAgIHsiYnJhaW5wb29s UDMyMHIxIiwgTklEX2JyYWlucG9vbFAzMjByMSB9LAorLSAgICB7ImJyYWlucG9vbFAzMjB0MSIs IE5JRF9icmFpbnBvb2xQMzIwdDEgfSwKKy0gICAgeyJicmFpbnBvb2xQMzg0cjEiLCBOSURfYnJh aW5wb29sUDM4NHIxIH0sCistICAgIHsiYnJhaW5wb29sUDM4NHQxIiwgTklEX2JyYWlucG9vbFAz ODR0MSB9LAorLSAgICB7ImJyYWlucG9vbFA1MTJyMSIsIE5JRF9icmFpbnBvb2xQNTEycjEgfSwK Ky0gICAgeyJicmFpbnBvb2xQNTEydDEiLCBOSURfYnJhaW5wb29sUDUxMnQxIH0sCistICAgIC8q IFNNMiBjdXJ2ZSAqLworLSAgICB7IlNNMiIsIE5JRF9zbTIgfSwKKyB9OworIAorIGNvbnN0IGNo YXIgKk9TU0xfRUNfY3VydmVfbmlkMm5hbWUoaW50IG5pZCkKK2RpZmYgLXVwIG9wZW5zc2wtMy4w LjAtYWxwaGExMy90ZXN0L2FjdnBfdGVzdC5pbmMuZWMtY3VydmVzIG9wZW5zc2wtMy4wLjAtYWxw aGExMy90ZXN0L2FjdnBfdGVzdC5pbmMKKy0tLSBvcGVuc3NsLTMuMC4wLWFscGhhMTMvdGVzdC9h Y3ZwX3Rlc3QuaW5jLmVjLWN1cnZlcwkyMDIxLTA0LTExIDEzOjQ2OjU3LjI4NjgyODkzMyArMDIw MAorKysrIG9wZW5zc2wtMy4wLjAtYWxwaGExMy90ZXN0L2FjdnBfdGVzdC5pbmMJMjAyMS0wNC0x MSAxMzo0ODowMS4zNTY3MDQ1MjYgKzAyMDAKK0BAIC0yMTIsMTUgKzIxMiw2IEBAIHN0YXRpYyBj b25zdCB1bnNpZ25lZCBjaGFyIGVjZHNhX3NpZ3Zlcl8KKyB9OworIHN0YXRpYyBjb25zdCBzdHJ1 Y3QgZWNkc2Ffc2lndmVyX3N0IGVjZHNhX3NpZ3Zlcl9kYXRhW10gPSB7CisgICAgIHsKKy0gICAg ICAgICJTSEEtMSIsCistICAgICAgICAiUC0xOTIiLAorLSAgICAgICAgSVRNKGVjZHNhX3NpZ3Zl cl9tc2cwKSwKKy0gICAgICAgIElUTShlY2RzYV9zaWd2ZXJfcHViMCksCistICAgICAgICBJVE0o ZWNkc2Ffc2lndmVyX3IwKSwKKy0gICAgICAgIElUTShlY2RzYV9zaWd2ZXJfczApLAorLSAgICAg ICAgUEFTUywKKy0gICAgfSwKKy0gICAgeworICAgICAgICAgIlNIQTItNTEyIiwKKyAgICAgICAg ICJQLTUyMSIsCisgICAgICAgICBJVE0oZWNkc2Ffc2lndmVyX21zZzEpLAorZGlmZiAtdXAgb3Bl bnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3QvcmVjaXBlcy82NS10ZXN0X2NtcF9wcm90ZWN0LnQuZWMt Y3VydmVzIG9wZW5zc2wtMy4wLjAtYWxwaGExMy90ZXN0L3JlY2lwZXMvNjUtdGVzdF9jbXBfcHJv dGVjdC50CistLS0gb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3QvcmVjaXBlcy82NS10ZXN0X2Nt cF9wcm90ZWN0LnQuZWMtY3VydmVzCTIwMjEtMDQtMTEgMjE6NDU6MDQuOTQ5OTQ4NzI1ICswMjAw CisrKysgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3QvcmVjaXBlcy82NS10ZXN0X2NtcF9wcm90 ZWN0LnQJMjAyMS0wNC0xMSAyMTo0NDowOS41ODUyODM2MDQgKzAyMDAKK0BAIC03LDcgKzcsNiBA QAorICMgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuICBZ b3UgY2FuIG9idGFpbiBhIGNvcHkKKyAjIGluIHRoZSBmaWxlIExJQ0VOU0UgaW4gdGhlIHNvdXJj ZSBkaXN0cmlidXRpb24gb3IgYXQKKyAjIGh0dHBzOi8vd3d3Lm9wZW5zc2wub3JnL3NvdXJjZS9s aWNlbnNlLmh0bWwKKy0KKyB1c2Ugc3RyaWN0OworIHVzZSBPcGVuU1NMOjpUZXN0IHF3LzpERUZB VUxUIGRhdGFfZmlsZSBzcmN0b3BfZmlsZSBzcmN0b3BfZGlyIGJsZHRvcF9maWxlIGJsZHRvcF9k aXIvOworIHVzZSBPcGVuU1NMOjpUZXN0OjpVdGlsczsKK0BAIC0yNyw3ICsyNiw3IEBAIHBsYW4g c2tpcF9hbGwgPT4gIlRoaXMgdGVzdCBpcyBub3Qgc3VwcG8KKyBwbGFuIHNraXBfYWxsID0+ICJU aGlzIHRlc3QgaXMgbm90IHN1cHBvcnRlZCBpbiBhIHNoYXJlZCBsaWJyYXJ5IGJ1aWxkIG9uIFdp bmRvd3MiCisgICAgIGlmICReTyBlcSAnTVNXaW4zMicgJiYgIWRpc2FibGVkKCJzaGFyZWQiKTsK KyAKKy1wbGFuIHRlc3RzID0+IDIgKyAoJG5vX2ZpcHMgPyAwIDogMSk7ICNmaXBzIHRlc3QKKytw bGFuIHNraXBfYWxsID0+IDIgKyAoJG5vX2ZpcHMgPyAwIDogMSk7ICNmaXBzIHRlc3QKKyAKKyBt eSBAYmFzaWNfY21kID0gKCJjbXBfcHJvdGVjdF90ZXN0IiwKKyAgICAgICAgICAgICAgICAgIGRh dGFfZmlsZSgic2VydmVyLnBlbSIpLAorZGlmZiAtdXAgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rl c3QvcmVjaXBlcy82NS10ZXN0X2NtcF92ZnkudC5lYy1jdXJ2ZXMgb3BlbnNzbC0zLjAuMC1hbHBo YTEzL3Rlc3QvcmVjaXBlcy82NS10ZXN0X2NtcF92ZnkudAorLS0tIG9wZW5zc2wtMy4wLjAtYWxw aGExMy90ZXN0L3JlY2lwZXMvNjUtdGVzdF9jbXBfdmZ5LnQuZWMtY3VydmVzCTIwMjEtMDQtMTEg MjE6NDU6MjUuNDE0MTk0NTc0ICswMjAwCisrKysgb3BlbnNzbC0zLjAuMC1hbHBoYTEzL3Rlc3Qv cmVjaXBlcy82NS10ZXN0X2NtcF92ZnkudAkyMDIxLTA0LTExIDIxOjQ0OjQwLjc4NjY1ODQ0MCAr MDIwMAorQEAgLTcsNyArNyw2IEBACisgIyB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ug d2l0aCB0aGUgTGljZW5zZS4gIFlvdSBjYW4gb2J0YWluIGEgY29weQorICMgaW4gdGhlIGZpbGUg TElDRU5TRSBpbiB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBvciBhdAorICMgaHR0cHM6Ly93d3cu b3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2UuaHRtbAorLQorIHVzZSBzdHJpY3Q7CisgdXNlIE9w ZW5TU0w6OlRlc3QgcXcvOkRFRkFVTFQgZGF0YV9maWxlIHNyY3RvcF9maWxlIHNyY3RvcF9kaXIg YmxkdG9wX2ZpbGUgYmxkdG9wX2Rpci87CisgdXNlIE9wZW5TU0w6OlRlc3Q6OlV0aWxzOworQEAg LTI3LDcgKzI2LDcgQEAgcGxhbiBza2lwX2FsbCA9PiAiVGhpcyB0ZXN0IGlzIG5vdCBzdXBwbwor IHBsYW4gc2tpcF9hbGwgPT4gIlRoaXMgdGVzdCBpcyBub3Qgc3VwcG9ydGVkIGluIGEgbm8tZWMg YnVpbGQiCisgICAgIGlmIGRpc2FibGVkKCJlYyIpOworCistcGxhbiB0ZXN0cyA9PiAyICsgKCRu b19maXBzID8gMCA6IDEpOyAjZmlwcyB0ZXN0CisrcGxhbiBza2lwX2FsbCA9PiAyICsgKCRub19m aXBzID8gMCA6IDEpOyAjZmlwcyB0ZXN0CisKKyBteSBAYmFzaWNfY21kID0gKCJjbXBfdmZ5X3Rl c3QiLAorICAgICAgICAgICAgICAgICAgZGF0YV9maWxlKCJzZXJ2ZXIuY3J0IiksICAgICBkYXRh X2ZpbGUoImNsaWVudC5jcnQiKSwKK2RpZmYgLXVwIG9wZW5zc2wtMy4wLjAtYWxwaGExNS9jcnlw dG8vZXZwL2VjX3N1cHBvcnQuYy5lYy1jdXJ2ZXMgb3BlbnNzbC0zLjAuMC1hbHBoYTE1L2NyeXB0 by9ldnAvZWNfc3VwcG9ydC5jCistLS0gb3BlbnNzbC0zLjAuMC1hbHBoYTE1L2NyeXB0by9ldnAv ZWNfc3VwcG9ydC5jLmVjLWN1cnZlcwkyMDIxLTA0LTIzIDE4OjE1OjEyLjU3MTY5MTI4NCArMDIw MAorKysrIG9wZW5zc2wtMy4wLjAtYWxwaGExNS9jcnlwdG8vZXZwL2VjX3N1cHBvcnQuYwkyMDIx LTA0LTIzIDE4OjE2OjAwLjgwMzA4NzQwMyArMDIwMAorQEAgLTI4LDcgKzI4LDYgQEAgc3RhdGlj IGNvbnN0IEVDX05BTUUyTklEIGN1cnZlX2xpc3RbXSA9Cisgc3RhdGljIGNvbnN0IEVDX05BTUUy TklEIGN1cnZlX2xpc3RbXSA9IHsKKyAgICAgLyogcHJpbWUgZmllbGQgY3VydmVzICovCisgICAg IC8qIHNlY2cgY3VydmVzICovCistICAgIHsic2VjcDIyNGsxIiwgTklEX3NlY3AyMjRrMSB9LAor ICAgICB7InNlY3AyMjRyMSIsIE5JRF9zZWNwMjI0cjEgfSwKKyAgICAgeyJzZWNwMjU2azEiLCBO SURfc2VjcDI1NmsxIH0sCisgICAgIHsic2VjcDM4NHIxIiwgTklEX3NlY3AzODRyMSB9LAorZGlm ZiAtdXAgb3BlbnNzbC0zLjAuMC1hbHBoYTE1L2FwcHMvc3BlZWQuYy5lYy1jdXJ2ZXMgb3BlbnNz bC0zLjAuMC1hbHBoYTE1L2FwcHMvc3BlZWQuYworLS0tIG9wZW5zc2wtMy4wLjAtYWxwaGExNS9h cHBzL3NwZWVkLmMuZWMtY3VydmVzCTIwMjEtMDQtMjYgMTQ6MjU6NDQuMDQ5OTkxOTQyICswMjAw CisrKysgb3BlbnNzbC0zLjAuMC1hbHBoYTE1L2FwcHMvc3BlZWQuYwkyMDIxLTA0LTI2IDE0OjM2 OjEwLjY0MzU3MDI3MyArMDIwMAorQEAgLTE0MzksOCArMTQzOSw4IEBAIGludCBzcGVlZF9tYWlu KGludCBhcmdjLCBjaGFyICoqYXJndikKKyAgICAgT1BFTlNTTF9hc3NlcnQoZWNfY3VydmVzW0VD X05VTSAtIDFdLm5pZCA9PSBOSURfWDQ0OCk7CisgICAgIE9QRU5TU0xfYXNzZXJ0KHN0cmNtcChl Y2RoX2Nob2ljZXNbRUNfTlVNIC0gMV0ubmFtZSwgImVjZGh4NDQ4IikgPT0gMCk7CisgCistICAg IE9QRU5TU0xfYXNzZXJ0KGVjX2N1cnZlc1tFQ0RTQV9OVU0gLSAxXS5uaWQgPT0gTklEX2JyYWlu cG9vbFA1MTJ0MSk7CistICAgIE9QRU5TU0xfYXNzZXJ0KHN0cmNtcChlY2RzYV9jaG9pY2VzW0VD RFNBX05VTSAtIDFdLm5hbWUsICJlY2RzYWJycDUxMnQxIikgPT0gMCk7CisrICAgIE9QRU5TU0xf YXNzZXJ0KGVjX2N1cnZlc1tFQ0RTQV9OVU0gLSAxXS5uaWQgPT0gTklEX3NlY3A1MjFyMSk7Cisr ICAgIE9QRU5TU0xfYXNzZXJ0KHN0cmNtcChlY2RzYV9jaG9pY2VzW0VDRFNBX05VTSAtIDFdLm5h bWUsICJlY2RzYXA1MjEiKSA9PSAwKTsKKyAKKyAjaWZuZGVmIE9QRU5TU0xfTk9fU00yCisgICAg IE9QRU5TU0xfYXNzZXJ0KHNtMl9jdXJ2ZXNbU00yX05VTSAtIDFdLm5pZCA9PSBOSURfc20yKTsK K2RpZmYgLXVwIG9wZW5zc2wtMy4wLjAtYWxwaGExNi90ZXN0L2V2cF9leHRyYV90ZXN0LmMuZWMt Y3VydmVzIG9wZW5zc2wtMy4wLjAtYWxwaGExNi90ZXN0L2V2cF9leHRyYV90ZXN0LmMKKy0tLSBv cGVuc3NsLTMuMC4wLWFscGhhMTYvdGVzdC9ldnBfZXh0cmFfdGVzdC5jLmVjLWN1cnZlcwkyMDIx LTA1LTEwIDE0OjQ0OjI4LjkzMjc1MTU1MSArMDIwMAorKysrIG9wZW5zc2wtMy4wLjAtYWxwaGEx Ni90ZXN0L2V2cF9leHRyYV90ZXN0LmMJMjAyMS0wNS0xMCAxNDo0NToyMS41MzcyMzg4ODMgKzAy MDAKK0BAIC0yNzAxLDEzICsyNzAxLDEyIEBAIGVycjoKKyAKKyAjaWZuZGVmIE9QRU5TU0xfTk9f RUMKKyBzdGF0aWMgaW50IGVjcHViX25pZHNbXSA9IHsKKy0gICAgTklEX2JyYWlucG9vbFAyNTZy MSwgTklEX1g5XzYyX3ByaW1lMjU2djEsCisrICAgIE5JRF9YOV82Ml9wcmltZTI1NnYxLAorICAg ICBOSURfc2VjcDM4NHIxLCBOSURfc2VjcDUyMXIxLAorICMgaWZuZGVmIE9QRU5TU0xfTk9fRUMy TQorICAgICBOSURfc2VjdDIzM2sxLCBOSURfc2VjdDIzM3IxLCBOSURfc2VjdDI4M3IxLAorICAg ICBOSURfc2VjdDQwOWsxLCBOSURfc2VjdDQwOXIxLCBOSURfc2VjdDU3MWsxLCBOSURfc2VjdDU3 MXIxLAorICMgZW5kaWYKKy0gICAgTklEX2JyYWlucG9vbFAzODRyMSwgTklEX2JyYWlucG9vbFA1 MTJyMQorIH07CisgCisgc3RhdGljIGludCB0ZXN0X2VjcHViKGludCBpZHgpCitkaWZmIC11cCBv cGVuc3NsLTMuMC4wLWFscGhhMTYvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwcGtl eV9taXNtYXRjaC50eHQuZWMtY3VydmVzIG9wZW5zc2wtMy4wLjAtYWxwaGExNi90ZXN0L3JlY2lw ZXMvMzAtdGVzdF9ldnBfZGF0YS9ldnBwa2V5X21pc21hdGNoLnR4dAorLS0tIG9wZW5zc2wtMy4w LjAtYWxwaGExNi90ZXN0L3JlY2lwZXMvMzAtdGVzdF9ldnBfZGF0YS9ldnBwa2V5X21pc21hdGNo LnR4dC5lYy1jdXJ2ZXMJMjAyMS0wNS0xNyAxMDo0NTowMy45NjgzNjg3ODIgKzAyMDAKKysrKyBv cGVuc3NsLTMuMC4wLWFscGhhMTYvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwcGtl eV9taXNtYXRjaC50eHQJMjAyMS0wNS0xNyAxMDo0NTo1NC4yMTE3NDc4NjUgKzAyMDAKK0BAIC0z MSwxMiArMzEsNiBAQCBNRmt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFjRFFnQUVMQlVQCisg eC9pVUpBY3NKeGw5ZUxNN2tnNlZ6YlprNlpEYzhNL3FEWlRpcU9hdm5RNVlCVzVsTVFTU1c1L215 UT09CisgLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCisgCistUHVibGljS2V5PUtBUy1FQ0MtQ0RI X0stMTYzX0MwLVBVQkxJQworLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUVBd0VBWUhL b1pJemowQ0FRWUZLNEVFQUFFRExBQUVCeCtMS0hmV0FuMmNHdDVDUlBMZW9TYVM3eVBWQmNGZQor LTUzWWlISEs0U3pSODQ0UHpnR2U0bkQ2YQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQor IFByaXZhdGVLZXkgPSBSU0EtMjA0OAorIC0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorIE1J SUV2QUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktZd2dnU2lBZ0VBQW9JQkFRRE5BSUhxZXly aDZnYlYKK0BAIC03Nyw5ICs3MSwzIEBAIFJlc3VsdCA9IEtFWVBBSVJfVFlQRV9NSVNNQVRDSAor IAorIFByaXZQdWJLZXlQYWlyID0gUlNBLTIwNDg6UC0yNTYtUFVCTElDCisgUmVzdWx0ID0gS0VZ UEFJUl9UWVBFX01JU01BVENICistCistUHJpdlB1YktleVBhaXIgPSBSU0EtMjA0ODpLQVMtRUND LUNESF9LLTE2M19DMC1QVUJMSUMKKy1SZXN1bHQgPSBLRVlQQUlSX1RZUEVfTUlTTUFUQ0gKKy0K Ky1Qcml2UHViS2V5UGFpciA9IEFsaWNlLTI1NTE5OktBUy1FQ0MtQ0RIX0stMTYzX0MwLVBVQkxJ QworLVJlc3VsdCA9IEtFWVBBSVJfVFlQRV9NSVNNQVRDSAorZGlmZiAtdXAgb3BlbnNzbC0zLjAu MC1hbHBoYTE2L3Rlc3QvcmVjaXBlcy8zMC10ZXN0X2V2cC50LmVjLWN1cnZlcyBvcGVuc3NsLTMu MC4wLWFscGhhMTYvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwLnQKKy0tLSBvcGVuc3NsLTMuMC4w LWFscGhhMTYvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwLnQuZWMtY3VydmVzCTIwMjEtMDUtMTcg MTA6NDk6MjguMDUwODQ0OTc3ICswMjAwCisrKysgb3BlbnNzbC0zLjAuMC1hbHBoYTE2L3Rlc3Qv cmVjaXBlcy8zMC10ZXN0X2V2cC50CTIwMjEtMDUtMTcgMTA6NTM6NTMuNDgwNDQ0NTc2ICswMjAw CitAQCAtMTExLDcgKzExMSw2IEBAIG15IEBkZWZsdGZpbGVzID0gcXcoCisgICAgICAgICAgICAg ICAgICAgICAgZXZwcGtleV9rZGZfdGxzMV9wcmYudHh0CisgICAgICAgICAgICAgICAgICAgICAg ZXZwcGtleV9yc2EudHh0CisgICAgICAgICAgICAgICAgICAgICApOworLXB1c2ggQGRlZmx0Zmls ZXMsIHF3KGV2cHBrZXlfYnJhaW5wb29sLnR4dCkgdW5sZXNzICRub19lYzsKKyBwdXNoIEBkZWZs dGZpbGVzLCBxdyhldnBwa2V5X3NtMi50eHQpIHVubGVzcyAkbm9fc20yOworIAorIHBsYW4gdGVz dHMgPT4KK2RpZmYgLXVwIG9wZW5zc2wtMy4wLjAtYmV0YTEvdGVzdC9yZWNpcGVzLzMwLXRlc3Rf ZXZwX2RhdGEvZXZwcGtleV9lY2MudHh0LnJlbW92ZS1lYyBvcGVuc3NsLTMuMC4wLWJldGExL3Rl c3QvcmVjaXBlcy8zMC10ZXN0X2V2cF9kYXRhL2V2cHBrZXlfZWNjLnR4dAorLS0tIG9wZW5zc2wt My4wLjAtYmV0YTEvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwcGtleV9lY2MudHh0 LnJlbW92ZS1lYwkyMDIxLTA2LTI5IDE2OjI0OjU2Ljg2MzMwMzQ5OSArMDIwMAorKysrIG9wZW5z c2wtMy4wLjAtYmV0YTEvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwcGtleV9lY2Mu dHh0CTIwMjEtMDYtMjkgMTY6Mzg6MDQuMTg5OTk2NDI1ICswMjAwCitAQCAtMTEsMTk0OSArMTEs NiBAQAorICMgICAgICAgUHJpdlB1YktleVBhaXIgU2lnbiBWZXJpZnkgVmVyaWZ5UmVjb3Zlcgor ICMgYW5kIGNvbnRpbnVlIHVudGlsIGEgYmxhbmsgbGluZS4gTGluZXMgc3RhcnRpbmcgd2l0aCBh IHBvdW5kIHNpZ24gYXJlIGlnbm9yZWQuCisgCistVGl0bGU9YzJwbmIxNjN2MSBjdXJ2ZSB0ZXN0 cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2ZfYzJwbmIxNjN2MQorLS0tLS0tQkVHSU4gUFJJVkFU RSBLRVktLS0tLQorLU1EWUNBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFFRUhEQWFBZ0VC QkJVRDFKZkc4Y0xOUDk0MThZVytoVmhyaXFINk81WT0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0t LS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX2MycG5iMTYzdjFfUFVCCistLS0tLS1CRUdJTiBQ VUJMSUMgS0VZLS0tLS0KKy1NRU13RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFFRExBQUVCWGdv T2dWbFdUTFFuclFaWGdRdVNCY0lTM2JRQWxYUSt5SmhTMDNCCistNEc4cktRWGJyYzBtdldzRgor LS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVBy aXZQdWJLZXlQYWlyPUFMSUNFX2NmX2MycG5iMTYzdjE6QUxJQ0VfY2ZfYzJwbmIxNjN2MV9QVUIK Ky0KKy1Qcml2YXRlS2V5PUJPQl9jZl9jMnBuYjE2M3YxCistLS0tLS1CRUdJTiBQUklWQVRFIEtF WS0tLS0tCistTURZQ0FRQXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQUVFSERBYUFnRUJCQlVB YzNFYW9NbU1PUlR6UWhNa2hQSVhZKy9qVVNJPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K Ky0KKy1QdWJsaWNLZXk9Qk9CX2NmX2MycG5iMTYzdjFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMg S0VZLS0tLS0KKy1NRU13RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFFRExBQUVCbjlKMGpvMzlh RlZacWhCc0FLWjZiVmlBdTZ6QkM4V2FGR0V4bnBaCistS3VCaDh0UDhWU1RIUENIRgorLS0tLS0t RU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJL ZXlQYWlyPUJPQl9jZl9jMnBuYjE2M3YxOkJPQl9jZl9jMnBuYjE2M3YxX1BVQgorLQorLSMgRUNE SCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFM SUNFX2NmX2MycG5iMTYzdjEKKy1QZWVyS2V5PUJPQl9jZl9jMnBuYjE2M3YxX1BVQgorLVNoYXJl ZFNlY3JldD0wNjVkZDM4ZmI2ZGU3ZjM5NDc3OGUxYmY2NWQ4NDBhMmMwZTcyMTlhY2QKKy0KKy0j IEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2 ZT1CT0JfY2ZfYzJwbmIxNjN2MQorLVBlZXJLZXk9QUxJQ0VfY2ZfYzJwbmIxNjN2MV9QVUIKKy1T aGFyZWRTZWNyZXQ9MDY1ZGQzOGZiNmRlN2YzOTQ3NzhlMWJmNjVkODQwYTJjMGU3MjE5YWNkCist CistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1EZXJpdmU9QUxJQ0VfY2ZfYzJwbmIxNjN2MQorLVBlZXJLZXk9Qk9CX2NmX2MycG5iMTYzdjFf UFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0wNjZmYzQ2ZThj YzQzMjc2MzRkZDEyNzc0ODAyMGYyZGU2YWFiNjc1ODUKKy0KKy0jIEVDQyBDREggQm9iIHdpdGgg QWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2ZfYzJwbmIx NjN2MQorLVBlZXJLZXk9QUxJQ0VfY2ZfYzJwbmIxNjN2MV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0 b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTA2NmZjNDZlOGNjNDMyNzYzNGRkMTI3NzQ4MDIwZjJk ZTZhYWI2NzU4NQorLQorLVB1YmxpY0tleT1NQUxJQ0VfY2ZfYzJwbmIxNjN2MV9QVUIKKy0tLS0t LUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FTXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQUVE TEFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQzhKeGVwUzA1bk4KKy0vcGlLZGhERDNk REtYVWloCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0MgQ0RIIEJvYiB3aXRo IE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnBu YjE2M3YxCistUGVlcktleT1NQUxJQ0VfY2ZfYzJwbmIxNjN2MV9QVUIKKy1DdHJsPWVjZGhfY29m YWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZp bml0eQorLQorLSMgRUNDIENESCBBbGljZSB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4g PSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX2MycG5iMTYzdjEKKy1QZWVyS2V5PU1BTElDRV9j Zl9jMnBuYjE2M3YxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVS SVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistVGl0bGU9YzJwbmIxNjN2 MiBjdXJ2ZSB0ZXN0cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2ZfYzJwbmIxNjN2MgorLS0tLS0t QkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1EWUNBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBE QUFJRUhEQWFBZ0VCQkJVQTRLRnY3YzFkeWd0VmJkcC9nMnoyVHFMQUhrST0KKy0tLS0tLUVORCBQ UklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX2MycG5iMTYzdjJfUFVCCist LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRU13RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBE QUFJRExBQUVBVm5sTDdsTUJhQVN3Q0lKYWY5eDJMZ05QVm1FQWI0M2h1SFFsbzNRCistNFB6YXdI WFFvWW0vcWdEZAorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX2MycG5iMTYzdjI6QUxJQ0VfY2ZfYzJw bmIxNjN2Ml9QVUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl9jMnBuYjE2M3YyCistLS0tLS1CRUdJ TiBQUklWQVRFIEtFWS0tLS0tCistTURZQ0FRQXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQUlF SERBYUFnRUJCQlVDRWRZcUNsUldJbDJtK1gzNGUrREIyaVpTeG1RPQorLS0tLS0tRU5EIFBSSVZB VEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9CX2NmX2MycG5iMTYzdjJfUFVCCistLS0tLS1C RUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRU13RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFJRExB QUVBVldOSUtuNy9XTWZ6dU5uZDV3czlKMERJMkNmQmtFSml6WkhBRnF5Cista0JGM2p1QVF1QVJn eHVUNgorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVs dAorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9jMnBuYjE2M3YyOkJPQl9jZl9jMnBuYjE2M3YyX1BV QgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0 CistRGVyaXZlPUFMSUNFX2NmX2MycG5iMTYzdjIKKy1QZWVyS2V5PUJPQl9jZl9jMnBuYjE2M3Yy X1BVQgorLVNoYXJlZFNlY3JldD0wMDc4ZWJiOTg2ZDRmOWIwYWEwYmM0YWY5OWU4MmMyYmQyNDEz MGYzZjQKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVm YXVsdAorLURlcml2ZT1CT0JfY2ZfYzJwbmIxNjN2MgorLVBlZXJLZXk9QUxJQ0VfY2ZfYzJwbmIx NjN2Ml9QVUIKKy1TaGFyZWRTZWNyZXQ9MDA3OGViYjk4NmQ0ZjliMGFhMGJjNGFmOTllODJjMmJk MjQxMzBmM2Y0CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVp biA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJwbmIxNjN2MgorLVBlZXJLZXk9Qk9CX2Nm X2MycG5iMTYzdjJfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3Jl dD0wNjlhODBiY2Q0NTk4N2ZkMWM4NzRjZDlkYzU0NTMyMDdhMDliNjFkNDEKKy0KKy0jIEVDQyBD REggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1C T0JfY2ZfYzJwbmIxNjN2MgorLVBlZXJLZXk9QUxJQ0VfY2ZfYzJwbmIxNjN2Ml9QVUIKKy1DdHJs PWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTA2OWE4MGJjZDQ1OTg3ZmQxYzg3 NGNkOWRjNTQ1MzIwN2EwOWI2MWQ0MQorLQorLVB1YmxpY0tleT1NQUxJQ0VfY2ZfYzJwbmIxNjN2 Ml9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FTXdFd1lIS29aSXpqMENBUVlJ S29aSXpqMERBQUlETEFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCdVZCbDFWNXV5c1kK Ky1uNkhBTlBFb01vSys3U3YwCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0Mg Q0RIIEJvYiB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZl PUJPQl9jZl9jMnBuYjE2M3YyCistUGVlcktleT1NQUxJQ0VfY2ZfYzJwbmIxNjN2Ml9QVUIKKy1D dHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1w b2ludCBhdCBpbmZpbml0eQorLQorLSMgRUNDIENESCBBbGljZSB3aXRoIE1hbGljZSBwZWVyCist QXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX2MycG5iMTYzdjIKKy1QZWVy S2V5PU1BTElDRV9jZl9jMnBuYjE2M3YyX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEK Ky1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistVGl0 bGU9YzJwbmIxNjN2MyBjdXJ2ZSB0ZXN0cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2ZfYzJwbmIx NjN2MworLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1EWUNBUUF3RXdZSEtvWkl6ajBD QVFZSUtvWkl6ajBEQUFNRUhEQWFBZ0VCQkJVQkl0QjB5L1FlSitjQ2g5eW9IZjB6cUxWeU1aYz0K Ky0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX2MycG5i MTYzdjNfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRU13RXdZSEtvWkl6ajBD QVFZSUtvWkl6ajBEQUFNRExBQUVCeDFIUnlqdUJNanQrdmxiV2FRYktPcE52V0tGQXNsekViUHY2 TXBLCistWW5PYkxucTM0TFJ1V3puYgorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2 YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX2MycG5iMTYzdjM6 QUxJQ0VfY2ZfYzJwbmIxNjN2M19QVUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl9jMnBuYjE2M3Yz CistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURZQ0FRQXdFd1lIS29aSXpqMENBUVlJ S29aSXpqMERBQU1FSERBYUFnRUJCQlVBWFZIVUhlUDhJb3o3SXFYT1diamFVWEVIRTVNPQorLS0t LS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9CX2NmX2MycG5iMTYzdjNf UFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRU13RXdZSEtvWkl6ajBDQVFZSUtv Wkl6ajBEQUFNRExBQUVBcVhGN3JzQVo0MFoxUFQ0VGVlQzQ1UktUeFA0QUpCQWRmdWtuSi9KCist RFpuQkxoeEJ3dHFuZlVwQQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJs ZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9jMnBuYjE2M3YzOkJPQl9jZl9j MnBuYjE2M3YzX1BVQgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX2MycG5iMTYzdjMKKy1QZWVyS2V5PUJPQl9j Zl9jMnBuYjE2M3YzX1BVQgorLVNoYXJlZFNlY3JldD0wN2ZkMmZmZTliMTg5NzNjNTFjYWVhZGJj MjE1NGI5N2E5YTAzOTBiZTkKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWls YWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2ZfYzJwbmIxNjN2MworLVBlZXJLZXk9QUxJ Q0VfY2ZfYzJwbmIxNjN2M19QVUIKKy1TaGFyZWRTZWNyZXQ9MDdmZDJmZmU5YjE4OTczYzUxY2Fl YWRiYzIxNTRiOTdhOWEwMzkwYmU5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIK Ky1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJwbmIxNjN2MworLVBl ZXJLZXk9Qk9CX2NmX2MycG5iMTYzdjNfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQor LVNoYXJlZFNlY3JldD0wNmY3ZGFmMWM5NjM1OTRlMWExM2Y5ZjE3YjYyYWFhYjI5MzQ4NzJjMTYK Ky0KKy0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVs dAorLURlcml2ZT1CT0JfY2ZfYzJwbmIxNjN2MworLVBlZXJLZXk9QUxJQ0VfY2ZfYzJwbmIxNjN2 M19QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTA2ZjdkYWYx Yzk2MzU5NGUxYTEzZjlmMTdiNjJhYWFiMjkzNDg3MmMxNgorLQorLVB1YmxpY0tleT1NQUxJQ0Vf Y2ZfYzJwbmIxNjN2M19QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FTXdFd1lI S29aSXpqMENBUVlJS29aSXpqMERBQU1ETEFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB N2pSbFVnOW9hTEsKKy1Md0F1SEY4ZzVZMEpqSm5JCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0t CistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZh dWx0CistRGVyaXZlPUJPQl9jZl9jMnBuYjE2M3YzCistUGVlcktleT1NQUxJQ0VfY2ZfYzJwbmIx NjN2M19QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJP UgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLSMgRUNDIENESCBBbGljZSB3aXRoIE1h bGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX2MycG5i MTYzdjMKKy1QZWVyS2V5PU1BTElDRV9jZl9jMnBuYjE2M3YzX1BVQgorLUN0cmw9ZWNkaF9jb2Zh Y3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmlu aXR5CistCistVGl0bGU9YzJwbmIxNzZ2MSBjdXJ2ZSB0ZXN0cworLQorLVByaXZhdGVLZXk9QUxJ Q0VfY2ZfYzJwbmIxNzZ2MQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1EWUNBUUF3 RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFRRUhEQWFBZ0VCQkJVQWFaMWpWMWpNOW1lVjVpaU5H UFUvV01TZldPTT0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFM SUNFX2NmX2MycG5iMTc2djFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRVV3 RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFRRExnQUVQak1FN0lWNlR1ejJQKyt3SVQ2MGhSeFRr azBNMFBOZ3ZxWWNVb0NJCistaXczZ2lyRExoTnpPdTNJUThBYz0KKy0tLS0tLUVORCBQVUJMSUMg S0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElD RV9jZl9jMnBuYjE3NnYxOkFMSUNFX2NmX2MycG5iMTc2djFfUFVCCistCistUHJpdmF0ZUtleT1C T0JfY2ZfYzJwbmIxNzZ2MQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1EWUNBUUF3 RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFRRUhEQWFBZ0VCQkJVQXJleVliY0YrT05JZjY0S21l U3pWODJPSS81MD0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJP Ql9jZl9jMnBuYjE3NnYxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUVVd0V3 WUhLb1pJemowQ0FRWUlLb1pJemowREFBUURMZ0FFcEpuMUlEbUZqNUxjZUxHZlkyd2xoSTFWSHE1 dkorcU5JQU9YVlpoWAorLXVNdHA2cHp5NjNyQ0VLNTNiZ3M9CistLS0tLS1FTkQgUFVCTElDIEtF WS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2Nm X2MycG5iMTc2djE6Qk9CX2NmX2MycG5iMTc2djFfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGgg Qm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJwbmIx NzZ2MQorLVBlZXJLZXk9Qk9CX2NmX2MycG5iMTc2djFfUFVCCistU2hhcmVkU2VjcmV0PTNhODAy MTg0OGVlMGIyYzFjMzc3NDA0MjY3YTUxNTIyNTc4MWMxODFlNmFiCistCistIyBFQ0RIIEJvYiB3 aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2My cG5iMTc2djEKKy1QZWVyS2V5PUFMSUNFX2NmX2MycG5iMTc2djFfUFVCCistU2hhcmVkU2VjcmV0 PTNhODAyMTg0OGVlMGIyYzFjMzc3NDA0MjY3YTUxNTIyNTc4MWMxODFlNmFiCistCistIyBFQ0Mg Q0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9 QUxJQ0VfY2ZfYzJwbmIxNzZ2MQorLVBlZXJLZXk9Qk9CX2NmX2MycG5iMTc2djFfUFVCCistQ3Ry bD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD1iMDZjZGM2MzNiNTZlODEzZDYz MzI2YzY5ZDJjZmEzMzUzNTIyNzk1NDBhYworLQorLSMgRUNDIENESCBCb2Igd2l0aCBBbGljZSBw ZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnBuYjE3NnYxCist UGVlcktleT1BTElDRV9jZl9jMnBuYjE3NnYxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2Rl OjEKKy1TaGFyZWRTZWNyZXQ9YjA2Y2RjNjMzYjU2ZTgxM2Q2MzMyNmM2OWQyY2ZhMzM1MzUyMjc5 NTQwYWMKKy0KKy1QdWJsaWNLZXk9TUFMSUNFX2NmX2MycG5iMTc2djFfUFVCCistLS0tLS1CRUdJ TiBQVUJMSUMgS0VZLS0tLS0KKy1NRVV3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFRRExnQUU0 ZVByaTJvcENvQVVKSVVRbmFRbHZEYXhaZDlic2RLbmpXU3ZoK0ZMCistelhWM2w1ajhLM3BvdytH SkJFND0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGgg TWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2MycG5i MTc2djEKKy1QZWVyS2V5PU1BTElDRV9jZl9jMnBuYjE3NnYxX1BVQgorLUN0cmw9ZWNkaF9jb2Zh Y3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmlu aXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9 IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJwbmIxNzZ2MQorLVBlZXJLZXk9TUFMSUNFX2Nm X2MycG5iMTc2djFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJ VkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy1UaXRsZT1jMnBuYjIwOHcx IGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9jMnBuYjIwOHcxCistLS0tLS1C RUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURvQ0FRQXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERB QW9FSURBZUFnRUJCQmtBaUVOcm9YTVlOYksvN0RRUXdDcGJYazAwZ25WZAorLVhGMmsKKy0tLS0t LUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX2MycG5iMjA4dzFf UFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRTB3RXdZSEtvWkl6ajBDQVFZSUtv Wkl6ajBEQUFvRE5nQUVMK0lIT0wySWZlTFJpRTZXcXNjMEZycWpxN3QvSm5CbWhOMWxNQjlZCist WWozK0J0Y25lNENQV2Y4S3ZmR2pBZE1zNkpLUDRBPT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0t LS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9j MnBuYjIwOHcxOkFMSUNFX2NmX2MycG5iMjA4dzFfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zf YzJwbmIyMDh3MQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1Eb0NBUUF3RXdZSEtv Wkl6ajBDQVFZSUtvWkl6ajBEQUFvRUlEQWVBZ0VCQkJrQVkxR1pMeW5PL0lEV3dPT2pFV1VFN2sr SS9Na1AKKy1jSm90CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1C T0JfY2ZfYzJwbmIyMDh3MV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FMHdF d1lIS29aSXpqMENBUVlJS29aSXpqMERBQW9ETmdBRU5CdmR6Q0RPSXZ1OXpvN3JlSnExdW1taFIr MGphRGMrRW9TbFc5ODQKKy1jbDlGVGkvSkp6bndDK1JOZ3dWZkoxV0tKdW4xWUE9PQorLS0tLS0t RU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJL ZXlQYWlyPUJPQl9jZl9jMnBuYjIwOHcxOkJPQl9jZl9jMnBuYjIwOHcxX1BVQgorLQorLSMgRUNE SCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFM SUNFX2NmX2MycG5iMjA4dzEKKy1QZWVyS2V5PUJPQl9jZl9jMnBuYjIwOHcxX1BVQgorLVNoYXJl ZFNlY3JldD1iYTMyYmY4MGMwZjdhYjUzY2IwODNmMjY3YTkwMmExYWQ2Mzk2ZWIyODMyMzdmYWQ5 MWNkCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1 bHQKKy1EZXJpdmU9Qk9CX2NmX2MycG5iMjA4dzEKKy1QZWVyS2V5PUFMSUNFX2NmX2MycG5iMjA4 dzFfUFVCCistU2hhcmVkU2VjcmV0PWJhMzJiZjgwYzBmN2FiNTNjYjA4M2YyNjdhOTAyYTFhZDYz OTZlYjI4MzIzN2ZhZDkxY2QKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2 YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9jMnBuYjIwOHcxCistUGVlcktl eT1CT0JfY2ZfYzJwbmIyMDh3MV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hh cmVkU2VjcmV0PWYwOWY1ZmM4YmYyMDY3NzU1OGJjNjU5MzliZjFiN2ZiYmJlMjU3OTcwMjcyOTMw NDI1OGIKKy0KKy0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLURlcml2ZT1CT0JfY2ZfYzJwbmIyMDh3MQorLVBlZXJLZXk9QUxJQ0VfY2ZfYzJw bmIyMDh3MV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PWYw OWY1ZmM4YmYyMDY3NzU1OGJjNjU5MzliZjFiN2ZiYmJlMjU3OTcwMjcyOTMwNDI1OGIKKy0KKy1Q dWJsaWNLZXk9TUFMSUNFX2NmX2MycG5iMjA4dzFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZ LS0tLS0KKy1NRTB3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFvRE5nQUVmdVdCOXBCWlFpbitW bm1xZ1lWcGJVcEt4U1Fzblh4TnFpRHRWd3FKCistb1BrSHhSV251NWU3cUkyaWRNY3FhS0RlZW5p VWFBPT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGgg TWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2MycG5i MjA4dzEKKy1QZWVyS2V5PU1BTElDRV9jZl9jMnBuYjIwOHcxX1BVQgorLUN0cmw9ZWNkaF9jb2Zh Y3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmlu aXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9 IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJwbmIyMDh3MQorLVBlZXJLZXk9TUFMSUNFX2Nm X2MycG5iMjA4dzFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJ VkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy1UaXRsZT1jMnBuYjI3Mncx IGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9jMnBuYjI3MncxCistLS0tLS1C RUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUVJQ0FRQXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERB QkFFS0RBbUFnRUJCQ0VBMFNvSHdLQWdLYjdXUStzMHcxaU5CZW1EWjMrZgorLVN0SFU2N2ZwUDdZ b0Y4VT0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2Nm X2MycG5iMjcydzFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRjB3RXdZSEtv Wkl6ajBDQVFZSUtvWkl6ajBEQUJBRFJnQUUwSUg2MGJHaTQ2RkR6RXByR1o4RUJLNXVNTWNWa2Uv dHhlQlJOR0hRCistRHpHNjhyM0VNTFprT2ZFMStnMDRNTjdIZ1k3enQzak1ZYjhJbXlMUm12cVIy YWJqczZjPQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVm YXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX2MycG5iMjcydzE6QUxJQ0VfY2ZfYzJwbmIy NzJ3MV9QVUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl9jMnBuYjI3MncxCistLS0tLS1CRUdJTiBQ UklWQVRFIEtFWS0tLS0tCistTUVJQ0FRQXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQkFFS0RB bUFnRUJCQ0VBRnFCNUdiUEo0ZCtYN3llN20wNWwvT2lyRHFmbgorLU1Pc09KNnhPYkJwaDN6UT0K Ky0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl9jMnBuYjI3 MncxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUYwd0V3WUhLb1pJemowQ0FR WUlLb1pJemowREFCQURSZ0FFSWVJa2NNSEF1T2d2SHQyV3A1MnZWZTBEWVBOblVYNzl0L21MU3gw MworLWNVbERtY3hMN3ZJWGR4OWhCNE9tUUJZYm0rWUxETmZURkdBSWxEZnIydEVMcFZWUFdQbz0K Ky0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Q cml2UHViS2V5UGFpcj1CT0JfY2ZfYzJwbmIyNzJ3MTpCT0JfY2ZfYzJwbmIyNzJ3MV9QVUIKKy0K Ky0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURl cml2ZT1BTElDRV9jZl9jMnBuYjI3MncxCistUGVlcktleT1CT0JfY2ZfYzJwbmIyNzJ3MV9QVUIK Ky1TaGFyZWRTZWNyZXQ9Y2ZlYmQ2NTAwNjUyMGE0MGYwODFkODk0MGVkZjBlYmI4ZTU0NDkxYmEx NDk5ZDlmM2M2M2RlZWNlZTg0ZGRjMDcxNDIKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVl cgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2ZfYzJwbmIyNzJ3MQorLVBl ZXJLZXk9QUxJQ0VfY2ZfYzJwbmIyNzJ3MV9QVUIKKy1TaGFyZWRTZWNyZXQ9Y2ZlYmQ2NTAwNjUy MGE0MGYwODFkODk0MGVkZjBlYmI4ZTU0NDkxYmExNDk5ZDlmM2M2M2RlZWNlZTg0ZGRjMDcxNDIK Ky0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVs dAorLURlcml2ZT1BTElDRV9jZl9jMnBuYjI3MncxCistUGVlcktleT1CT0JfY2ZfYzJwbmIyNzJ3 MV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTc1NmZjMjBi MjczNTJhYzc0ZTUxMzUzNTljNjNkMzc1ZDI3MzJjNmQwMmYyNWNkNTI2MTU1YmFjMDg4MmE5MjEx ZGQ0CistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRl ZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2MycG5iMjcydzEKKy1QZWVyS2V5PUFMSUNFX2NmX2MycG5i MjcydzFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD03NTZm YzIwYjI3MzUyYWM3NGU1MTM1MzU5YzYzZDM3NWQyNzMyYzZkMDJmMjVjZDUyNjE1NWJhYzA4ODJh OTIxMWRkNAorLQorLVB1YmxpY0tleT1NQUxJQ0VfY2ZfYzJwbmIyNzJ3MV9QVUIKKy0tLS0tLUJF R0lOIFBVQkxJQyBLRVktLS0tLQorLU1GMHdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQkFEUmdB RXZJRDNBTTdxenBLRG5PTEZZMDArRTdFS1p6L3ZTL3BYZ3NVQTNiV04KKy1vSkY4RWxYRlh2NTlz L1N5a1FCQ1RIUHF6bVViVm1yWG10RDQ0S3Qxd1VCUkpmdXd4eTQ9CistLS0tLS1FTkQgUFVCTElD IEtFWS0tLS0tCistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnBuYjI3MncxCistUGVlcktleT1NQUxJQ0Vf Y2ZfYzJwbmIyNzJ3MV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURF UklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLSMgRUNDIENESCBBbGlj ZSB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNF X2NmX2MycG5iMjcydzEKKy1QZWVyS2V5PU1BTElDRV9jZl9jMnBuYjI3MncxX1BVQgorLUN0cmw9 ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50 IGF0IGluZmluaXR5CistCistVGl0bGU9YzJwbmIzMDR3MSBjdXJ2ZSB0ZXN0cworLQorLVByaXZh dGVLZXk9QUxJQ0VfY2ZfYzJwbmIzMDR3MQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQor LU1FWUNBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUJFRUxEQXFBZ0VCQkNVQXFKeGg1MFpJ VVhPSjFIRTNjVmtlY2g5T1RUUEoKKy04ankvdjVjRmNPMFg2ZHlrSGduWgorLS0tLS0tRU5EIFBS SVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2ZfYzJwbmIzMDR3MV9QVUIKKy0t LS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1HVXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERB QkVEVGdBRXZvYXFSWDZxaU5RaUZIMUJoZ0xDUFRwWXN6b1JobWxMaXJrdmx3L1EKKy1pWEJsZlE3 VTRnK2lSUi9rbXUyUmx3d09IZ05OTCttV2N2TGtGZlM4S3I0anp2MUVZMUVjeDk2bjIxbDBZUT09 CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0Cist UHJpdlB1YktleVBhaXI9QUxJQ0VfY2ZfYzJwbmIzMDR3MTpBTElDRV9jZl9jMnBuYjMwNHcxX1BV QgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX2MycG5iMzA0dzEKKy0tLS0tLUJFR0lOIFBSSVZBVEUg S0VZLS0tLS0KKy1NRVlDQVFBd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFCRUVMREFxQWdFQkJD VUFPU2NIZXBYK0l3cUM4VGp5QUpJMWJrUjNjWVl0CistWDlCYnFZTTlHUWZWTlNMSG50VGcKKy0t LS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl9jMnBuYjMwNHcx X1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUdVd0V3WUhLb1pJemowQ0FRWUlL b1pJemowREFCRURUZ0FFWXVBcS82WXc1SHhNZU1vaGxXbXdsK1pLNFpRdWNmcjF0V0RLd2hEYgor LWtBT1VPMlAvUS9IK3VlbE0zVlZ3eGV1NkExa2FYN0swVVpwTmE5Nk5SQndJNGFldmMrdk94Q2dZ a0d0OUJBPT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRl ZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2ZfYzJwbmIzMDR3MTpCT0JfY2ZfYzJwbmIzMDR3 MV9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVm YXVsdAorLURlcml2ZT1BTElDRV9jZl9jMnBuYjMwNHcxCistUGVlcktleT1CT0JfY2ZfYzJwbmIz MDR3MV9QVUIKKy1TaGFyZWRTZWNyZXQ9YmZkZGY5ZjkyMzIxMGU4MjMxYTcwMmUzYTFjOTg3Y2Yy NzY2MWRlMWJjMjQzYzE4OTBlNDM3ZDY3ZDlmNDljNmNjZmFkYzAzNWQ5ZAorLQorLSMgRUNESCBC b2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9j Zl9jMnBuYjMwNHcxCistUGVlcktleT1BTElDRV9jZl9jMnBuYjMwNHcxX1BVQgorLVNoYXJlZFNl Y3JldD1iZmRkZjlmOTIzMjEwZTgyMzFhNzAyZTNhMWM5ODdjZjI3NjYxZGUxYmMyNDNjMTg5MGU0 MzdkNjdkOWY0OWM2Y2NmYWRjMDM1ZDlkCistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBl ZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJwbmIzMDR3MQor LVBlZXJLZXk9Qk9CX2NmX2MycG5iMzA0dzFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6 MQorLVNoYXJlZFNlY3JldD0wYzdhZmIzMTQzZjkzZWYyMTY2YzA1NDM3YTE3NTdhNjJjOTE2ZmYx NzUxYzZkNDU2ZGQ3ZjIzNTZkY2JjNzVkZjQ4MDE1ZWI1Y2U4CistCistIyBFQ0MgQ0RIIEJvYiB3 aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2My cG5iMzA0dzEKKy1QZWVyS2V5PUFMSUNFX2NmX2MycG5iMzA0dzFfUFVCCistQ3RybD1lY2RoX2Nv ZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0wYzdhZmIzMTQzZjkzZWYyMTY2YzA1NDM3YTE3 NTdhNjJjOTE2ZmYxNzUxYzZkNDU2ZGQ3ZjIzNTZkY2JjNzVkZjQ4MDE1ZWI1Y2U4CistCistUHVi bGljS2V5PU1BTElDRV9jZl9jMnBuYjMwNHcxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0t LS0tCistTUdVd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFCRURUZ0FFQlo1RnV0aFF0MG14VEo4 TlFXTjJKMzdrWVQ4eVNEODkzSVhFbVhZUAorLWZNVHIrQ1NOa2Yvc2ZGLzEzR0VkVkduSG1CZ0NI NjFzUFdHNjlSZ3pkalJQcHJaRlp4WGp1YklXWWtwMERRPT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZ LS0tLS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9 IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2MycG5iMzA0dzEKKy1QZWVyS2V5PU1BTElDRV9jZl9j MnBuYjMwNHcxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZF X0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdp dGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zf YzJwbmIzMDR3MQorLVBlZXJLZXk9TUFMSUNFX2NmX2MycG5iMzA0dzFfUFVCCistQ3RybD1lY2Ro X2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQg aW5maW5pdHkKKy0KKy1UaXRsZT1jMnBuYjM2OHcxIGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtl eT1BTElDRV9jZl9jMnBuYjM2OHcxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUU0 Q0FRQXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQk1FTkRBeUFnRUJCQzBBWGVTVFhzSGIyUEVI MTJ0Wkw4dzJxNmV2QTJtaQorLUtmTExJYTFjMjlCVG1NLy9vV2RLcHFldXZ3TUlCdG89CistLS0t LS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1BTElDRV9jZl9jMnBuYjM2OHcx X1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUhVd0V3WUhLb1pJemowQ0FRWUlL b1pJemowREFCTURYZ0FFbUVCWGN2TWduSHdKVzd3QUtNNGNxYm9jbzZ6RjAxSjludFV3b0FDSQor LWV1dmYzY3BQWEJ2eFVhd0pYZk85RndGUlFhYkRSYWdHUDk5V2FsaWRkMkpXOG5XRFdaZ1pNS2ox NVdoKzRicDJkWkhjMnRQSUlISGQKKy0zbWFrYndRPQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0t LQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX2My cG5iMzY4dzE6QUxJQ0VfY2ZfYzJwbmIzNjh3MV9QVUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl9j MnBuYjM2OHcxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUU0Q0FRQXdFd1lIS29a SXpqMENBUVlJS29aSXpqMERBQk1FTkRBeUFnRUJCQzBBcTFSOU0vbUNNYkpNajZWQlVwQmtTNEhY eXdFegorLVF1bjZkNnVYZ3lVNExaUnN6QTdEejkrZUtiWEVNc2s9CistLS0tLS1FTkQgUFJJVkFU RSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2ZfYzJwbmIzNjh3MV9QVUIKKy0tLS0tLUJF R0lOIFBVQkxJQyBLRVktLS0tLQorLU1IVXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQk1EWGdB RUpPU25zYVhBOXdiNXA4Q0dMUHZZSTQ3WWYzSWRaU2JXUTNTbjZHMnYKKy1BdCt6WWxwekdheDFv SjFDVzhmR0EwR3UwUm52QWZEZVc5dmdydHpzaEgxVnkvTmk2YTdMUGhvOTlQdFVQMm56VUJudito ZmhGU3JhCistZ3FmUmFPcz0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFi bGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2ZfYzJwbmIzNjh3MTpCT0JfY2Zf YzJwbmIzNjh3MV9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJs ZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9jMnBuYjM2OHcxCistUGVlcktleT1CT0Jf Y2ZfYzJwbmIzNjh3MV9QVUIKKy1TaGFyZWRTZWNyZXQ9MDA4ZDIwZWRlMzk2MWJlM2IwMTA1MWQ2 ZmRhZTYzZGI0Mzg2NTY2NDgwNGQ0MzIyOTNhMmVkYjEzZGNjOGJlMGZlNWIwYzY1NTI5N2E4NGI5 MDY3YTI5YzJhNmYKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWlu ID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2ZfYzJwbmIzNjh3MQorLVBlZXJLZXk9QUxJQ0VfY2Zf YzJwbmIzNjh3MV9QVUIKKy1TaGFyZWRTZWNyZXQ9MDA4ZDIwZWRlMzk2MWJlM2IwMTA1MWQ2ZmRh ZTYzZGI0Mzg2NTY2NDgwNGQ0MzIyOTNhMmVkYjEzZGNjOGJlMGZlNWIwYzY1NTI5N2E4NGI5MDY3 YTI5YzJhNmYKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWlu ID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9jMnBuYjM2OHcxCistUGVlcktleT1CT0JfY2Zf YzJwbmIzNjh3MV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0 PWRmMzJkZGVlZmZhMDI5YWVhZGFiYWQwMDBhNzljMzE1NGEwZGRkMGFlYWNmNGUzZGU0MjZmNWMx MDA5NmVmZjg5MTIwMzhjNjRkNGM4OTkxMzFkY2Q0ZGYyNTYxCistCistIyBFQ0MgQ0RIIEJvYiB3 aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2My cG5iMzY4dzEKKy1QZWVyS2V5PUFMSUNFX2NmX2MycG5iMzY4dzFfUFVCCistQ3RybD1lY2RoX2Nv ZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD1kZjMyZGRlZWZmYTAyOWFlYWRhYmFkMDAwYTc5 YzMxNTRhMGRkZDBhZWFjZjRlM2RlNDI2ZjVjMTAwOTZlZmY4OTEyMDM4YzY0ZDRjODk5MTMxZGNk NGRmMjU2MQorLQorLVB1YmxpY0tleT1NQUxJQ0VfY2ZfYzJwbmIzNjh3MV9QVUIKKy0tLS0tLUJF R0lOIFBVQkxJQyBLRVktLS0tLQorLU1IVXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQk1EWGdB RVdEbi9VOXJ5bUNsTS9hMFExbWF3SGpRanZweFNlaFJXc3RTRSsyU2QKKy11YmNab3dKK3J3NUxz RVp0ZVF5ZVZyQ3BLWVVpSUJtSVZ1RmIyTERqdE5MSUpEMWxyOEMrdmRjbzI0Y2lMUzlSekYvRGM5 WCt0Y0lqCistNzI2ZTFCRT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBD REggQm9iIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9 Qk9CX2NmX2MycG5iMzY4dzEKKy1QZWVyS2V5PU1BTElDRV9jZl9jMnBuYjM2OHcxX1BVQgorLUN0 cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBv aW50IGF0IGluZmluaXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1B dmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJwbmIzNjh3MQorLVBlZXJL ZXk9TUFMSUNFX2NmX2MycG5iMzY4dzFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQor LVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy1UaXRs ZT1jMnRuYjE5MXYxIGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9jMnRuYjE5 MXYxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURrQ0FRQXdFd1lIS29aSXpqMENB UVlJS29aSXpqMERBQVVFSHpBZEFnRUJCQmdYeUc3QTRCdlNtaktFbDNhVStGUVV0MDJwOVU3eAor LUprND0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2Nm X2MydG5iMTkxdjFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRWt3RXdZSEtv Wkl6ajBDQVFZSUtvWkl6ajBEQUFVRE1nQUVHOWl1Wm1uaHoySC9ZUUttVlVhTy8vZm03aHZWK0NQ NWMyaXN6cFIzCistN2xSaW1xTFdIUHl2S2djUCtQUkNJVW9tCistLS0tLS1FTkQgUFVCTElDIEtF WS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9QUxJQ0Vf Y2ZfYzJ0bmIxOTF2MTpBTElDRV9jZl9jMnRuYjE5MXYxX1BVQgorLQorLVByaXZhdGVLZXk9Qk9C X2NmX2MydG5iMTkxdjEKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRGtDQVFBd0V3 WUhLb1pJemowQ0FRWUlLb1pJemowREFBVUVIekFkQWdFQkJCZzQrMmh2OXg5SHhGeTBjMmMxWEVT RGRnT2FtSHUwCistTVRVPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNL ZXk9Qk9CX2NmX2MydG5iMTkxdjFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1N RWt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFVRE1nQUVkTy80aWk4Z2k4ZVFmQnJ2M1htc09F VHdJZlQ4T0lwQlcva1VvSEQrCistYWRxYWxjQjZTSVdPZm9KUmVETGNweEFECistLS0tLS1FTkQg UFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBh aXI9Qk9CX2NmX2MydG5iMTkxdjE6Qk9CX2NmX2MydG5iMTkxdjFfUFVCCistCistIyBFQ0RIIEFs aWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0Vf Y2ZfYzJ0bmIxOTF2MQorLVBlZXJLZXk9Qk9CX2NmX2MydG5iMTkxdjFfUFVCCistU2hhcmVkU2Vj cmV0PTJlZThhODUxNTFjMzk3NjAwOTg0Mjg1MzA3YzE0ZjBlYTBlNGMyMDcxZDc1M2E5OQorLQor LSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVy aXZlPUJPQl9jZl9jMnRuYjE5MXYxCistUGVlcktleT1BTElDRV9jZl9jMnRuYjE5MXYxX1BVQgor LVNoYXJlZFNlY3JldD0yZWU4YTg1MTUxYzM5NzYwMDk4NDI4NTMwN2MxNGYwZWEwZTRjMjA3MWQ3 NTNhOTkKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9jMnRuYjE5MXYxCistUGVlcktleT1CT0JfY2ZfYzJ0 bmIxOTF2MV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTMz NDA1MWRmZDYyMjM3ZTY5ZTI4MGNlMmZhYjk3OWJkNzcyNjBmOGRmZTRkZjk4OQorLQorLSMgRUND IENESCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZl PUJPQl9jZl9jMnRuYjE5MXYxCistUGVlcktleT1BTElDRV9jZl9jMnRuYjE5MXYxX1BVQgorLUN0 cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MzM0MDUxZGZkNjIyMzdlNjll MjgwY2UyZmFiOTc5YmQ3NzI2MGY4ZGZlNGRmOTg5CistCistUHVibGljS2V5PU1BTElDRV9jZl9j MnRuYjE5MXYxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUVrd0V3WUhLb1pJ emowQ0FRWUlLb1pJemowREFBVURNZ0FFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFj UEV3WjF3agorLWlOb0Z5enlBTlpsOElEQjBmRjFSbVpENgorLS0tLS0tRU5EIFBVQkxJQyBLRVkt LS0tLQorLQorLSMgRUNDIENESCBCb2Igd2l0aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLURlcml2ZT1CT0JfY2ZfYzJ0bmIxOTF2MQorLVBlZXJLZXk9TUFMSUNFX2NmX2My dG5iMTkxdjFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVf RVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0 aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9j MnRuYjE5MXYxCistUGVlcktleT1NQUxJQ0VfY2ZfYzJ0bmIxOTF2MV9QVUIKKy1DdHJsPWVjZGhf Y29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBp bmZpbml0eQorLQorLVRpdGxlPWMydG5iMTkxdjIgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5 PUFMSUNFX2NmX2MydG5iMTkxdjIKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRGtD QVFBd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFBWUVIekFkQWdFQkJCZ1FaSElRSVByQXNiSnFx NFpYM0pkTXJaQWthSUdQCistamJvPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1Q dWJsaWNLZXk9QUxJQ0VfY2ZfYzJ0bmIxOTF2Ml9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVkt LS0tLQorLU1Fa3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQVlETWdBRUF5UWR3WllSSWl2N080 L1dSTERLSjI0OVRNOGRyMlkrT3o4clN4Q0kKKy1VVnZKVC9KdjltNDYySjZJejFYT29oaFAKKy0t LS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2 UHViS2V5UGFpcj1BTElDRV9jZl9jMnRuYjE5MXYyOkFMSUNFX2NmX2MydG5iMTkxdjJfUFVCCist CistUHJpdmF0ZUtleT1CT0JfY2ZfYzJ0bmIxOTF2MgorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVkt LS0tLQorLU1Ea0NBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFZRUh6QWRBZ0VCQkJnVGho VzZkNVFEYXFNOHlobTE2cTZQdS9WRkJwZjcKKy13Y3M9CistLS0tLS1FTkQgUFJJVkFURSBLRVkt LS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2ZfYzJ0bmIxOTF2Ml9QVUIKKy0tLS0tLUJFR0lOIFBV QkxJQyBLRVktLS0tLQorLU1Fa3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQVlETWdBRUJWa0I0 TzZmRnZHek1IdjRCRjUxbXVGQTBucE9HS29PZEtiSUlNUVkKKy1KQklvejFSTk5YVGNnZHBndUxj cnZjUEoKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1 bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2ZfYzJ0bmIxOTF2MjpCT0JfY2ZfYzJ0bmIxOTF2Ml9Q VUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVs dAorLURlcml2ZT1BTElDRV9jZl9jMnRuYjE5MXYyCistUGVlcktleT1CT0JfY2ZfYzJ0bmIxOTF2 Ml9QVUIKKy1TaGFyZWRTZWNyZXQ9NzExZjkwY2IyYWFlYTY1ZTkzOTA2NWNiZDE4OTZhZmZlMWQ0 OTBiYTE0NTcxNDAwCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVp biA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2MydG5iMTkxdjIKKy1QZWVyS2V5PUFMSUNFX2Nm X2MydG5iMTkxdjJfUFVCCistU2hhcmVkU2VjcmV0PTcxMWY5MGNiMmFhZWE2NWU5MzkwNjVjYmQx ODk2YWZmZTFkNDkwYmExNDU3MTQwMAorLQorLSMgRUNDIENESCBBbGljZSB3aXRoIEJvYiBwZWVy CistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX2MydG5iMTkxdjIKKy1Q ZWVyS2V5PUJPQl9jZl9jMnRuYjE5MXYyX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEK Ky1TaGFyZWRTZWNyZXQ9MTc0MGRiNWI3NzFmYTI4ODlkM2VjN2MxYmE4ZWVmZmE3NzQxZjBlZTYy NDMzZGNlCistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9 IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2MydG5iMTkxdjIKKy1QZWVyS2V5PUFMSUNFX2NmX2My dG5iMTkxdjJfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0x NzQwZGI1Yjc3MWZhMjg4OWQzZWM3YzFiYThlZWZmYTc3NDFmMGVlNjI0MzNkY2UKKy0KKy1QdWJs aWNLZXk9TUFMSUNFX2NmX2MydG5iMTkxdjJfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0t LS0KKy1NRWt3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFZRE1nQUVBM3lQVjZJbHg3UFU3ZFdJ RHpnS3pGVjA3TE5zbjFFaE15TFFhYTVVCistMnZxdW5wV2VmKy9DYU8ycEZCY3d3Vyt4CistLS0t LS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIE1hbGljZSBwZWVy CistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnRuYjE5MXYyCistUGVl cktleT1NQUxJQ0VfY2ZfYzJ0bmIxOTF2Ml9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZTox CistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLSMg RUNDIENESCBBbGljZSB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0Cist RGVyaXZlPUFMSUNFX2NmX2MydG5iMTkxdjIKKy1QZWVyS2V5PU1BTElDRV9jZl9jMnRuYjE5MXYy X1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCist UmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistVGl0bGU9YzJ0bmIxOTF2MyBjdXJ2ZSB0ZXN0 cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2ZfYzJ0bmIxOTF2MworLS0tLS0tQkVHSU4gUFJJVkFU RSBLRVktLS0tLQorLU1Ea0NBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUFjRUh6QWRBZ0VC QkJnVFBqZjA2QjAxSnE1OXFVMWljek51QTI5V2ZXK2IKKy1lclU9CistLS0tLS1FTkQgUFJJVkFU RSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1BTElDRV9jZl9jMnRuYjE5MXYzX1BVQgorLS0tLS0t QkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUVrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFBY0RN Z0FFTDROR0VVWDJDWFkxOE15b0gxaW5LcTVrZGU5UkdyMjVPRG0vMEJFWAorLUhXc0d2REUySEMr NnBMMkJNbDNNUkN0eQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWlu ID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX2MydG5iMTkxdjM6QUxJQ0VfY2Zf YzJ0bmIxOTF2M19QVUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl9jMnRuYjE5MXYzCistLS0tLS1C RUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURrQ0FRQXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERB QWNFSHpBZEFnRUJCQmdVQzJiQzQ2NUpUWFlMVWFhRVQvcjVuN1g4NWdSSAorLWlTUT0KKy0tLS0t LUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl9jMnRuYjE5MXYzX1BV QgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUVrd0V3WUhLb1pJemowQ0FRWUlLb1pJ emowREFBY0RNZ0FFUEtla05rVDltUThLUkNUUjJSd0NGa2hOdnNqTCsvbUxIWXpiTXJZZQorLVFG SWI1UXdYQWRiZzJ0RU9sN3lqOXFraworLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2 YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9jMnRuYjE5MXYzOkJP Ql9jZl9jMnRuYjE5MXYzX1BVQgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZh aWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX2MydG5iMTkxdjMKKy1QZWVyS2V5 PUJPQl9jZl9jMnRuYjE5MXYzX1BVQgorLVNoYXJlZFNlY3JldD0xOTYyMDBmN2VhMDZjNDNjMzU1 MTZiOTk1Y2Y0YTRkZDQxNTFkYmQwZWQ5OTg1NjEKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2Ug cGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2ZfYzJ0bmIxOTF2Mwor LVBlZXJLZXk9QUxJQ0VfY2ZfYzJ0bmIxOTF2M19QVUIKKy1TaGFyZWRTZWNyZXQ9MTk2MjAwZjdl YTA2YzQzYzM1NTE2Yjk5NWNmNGE0ZGQ0MTUxZGJkMGVkOTk4NTYxCistCistIyBFQ0MgQ0RIIEFs aWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0Vf Y2ZfYzJ0bmIxOTF2MworLVBlZXJLZXk9Qk9CX2NmX2MydG5iMTkxdjNfUFVCCistQ3RybD1lY2Ro X2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0zMTE5MzkzNzc2NzBhOGExZWQxZWUxN2Y5 ZGQxODIxNjdkYTAwYzVhMTllMmUxMDkKKy0KKy0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVl cgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2ZfYzJ0bmIxOTF2MworLVBl ZXJLZXk9QUxJQ0VfY2ZfYzJ0bmIxOTF2M19QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZTox CistU2hhcmVkU2VjcmV0PTMxMTkzOTM3NzY3MGE4YTFlZDFlZTE3ZjlkZDE4MjE2N2RhMDBjNWEx OWUyZTEwOQorLQorLVB1YmxpY0tleT1NQUxJQ0VfY2ZfYzJ0bmIxOTF2M19QVUIKKy0tLS0tLUJF R0lOIFBVQkxJQyBLRVktLS0tLQorLU1Fa3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQWNETWdB RVN2UGpXbExuQU5LMmozOGhIWjB1cXVlYW5pb3ZraHd3ZEpaanJtVWsKKy1uNXZRQlR4VXprSWtN akwzM3Y2THIzejcKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9i IHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2Nm X2MydG5iMTkxdjMKKy1QZWVyS2V5PU1BTElDRV9jZl9jMnRuYjE5MXYzX1BVQgorLUN0cmw9ZWNk aF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0 IGluZmluaXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFi bGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJ0bmIxOTF2MworLVBlZXJLZXk9TUFM SUNFX2NmX2MydG5iMTkxdjNfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3Vs dD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy1UaXRsZT1jMnRu YjIzOXYxIGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9jMnRuYjIzOXYxCist LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUQ4Q0FRQXdFd1lIS29aSXpqMENBUVlJS29a SXpqMERBQXNFSlRBakFnRUJCQjRmTUpEaENFaXVFZi9SRjZvR2pIVmNOd04rd0NZRworLXJKTW5K TElYaUNJPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0Vf Y2ZfYzJ0bmIyMzl2MV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1GVXdFd1lI S29aSXpqMENBUVlJS29aSXpqMERBQXNEUGdBRVVnRy91TVd5NGswUi9rYlZKRWFwRjZyNWlrNFE5 V1BzRFhBZDA4NTYKKy1kVkw4UHZCWGdpeGsydEtmeVkxeFVWZWJjRVZsZ2RaUDFwTjFYeXZpCist LS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJp dlB1YktleVBhaXI9QUxJQ0VfY2ZfYzJ0bmIyMzl2MTpBTElDRV9jZl9jMnRuYjIzOXYxX1BVQgor LQorLVByaXZhdGVLZXk9Qk9CX2NmX2MydG5iMjM5djEKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZ LS0tLS0KKy1NRDhDQVFBd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFBc0VKVEFqQWdFQkJCNEpM RHdWSlF3MyswMEZpWkJEV0ZFcmQ3UFhuY2hICistc2ZwWmVWM2k1Rk09CistLS0tLS1FTkQgUFJJ VkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2ZfYzJ0bmIyMzl2MV9QVUIKKy0tLS0t LUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1GVXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQXNE UGdBRWN3S3QzMWNXYW9GVWQ3UXhZU2R3Z01ET3FFaGpQYkQzWjlBZlIzdGMKKy1HNzcvTVk1ejFv UWVncUltQm9nNjQ1dnRQV0k4bFpkMXpjbDZRWVJTCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0t CistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX2MydG5i MjM5djE6Qk9CX2NmX2MydG5iMjM5djFfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBl ZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJ0bmIyMzl2MQor LVBlZXJLZXk9Qk9CX2NmX2MydG5iMjM5djFfUFVCCistU2hhcmVkU2VjcmV0PTQxM2VhOTQzY2Rm NDBjNDU3OTVjNzdhZWVhNzA5OWI4MWNjNDI1NjYwNjc5MjRkMWZkYmFlNDJkZGY5OQorLQorLSMg RUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZl PUJPQl9jZl9jMnRuYjIzOXYxCistUGVlcktleT1BTElDRV9jZl9jMnRuYjIzOXYxX1BVQgorLVNo YXJlZFNlY3JldD00MTNlYTk0M2NkZjQwYzQ1Nzk1Yzc3YWVlYTcwOTliODFjYzQyNTY2MDY3OTI0 ZDFmZGJhZTQyZGRmOTkKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWls YWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9jMnRuYjIzOXYxCistUGVlcktleT1C T0JfY2ZfYzJ0bmIyMzl2MV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVk U2VjcmV0PTFmMWU1YTYwODQ0OTJlODk1YzM1ZDc2YTVkMmI0YTNmYWZiZDk2YzRiMjIzMGVhNzFj YzFjNzExZmEzOAorLQorLSMgRUNDIENESCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnRuYjIzOXYxCistUGVlcktleT1BTElDRV9j Zl9jMnRuYjIzOXYxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNy ZXQ9MWYxZTVhNjA4NDQ5MmU4OTVjMzVkNzZhNWQyYjRhM2ZhZmJkOTZjNGIyMjMwZWE3MWNjMWM3 MTFmYTM4CistCistUHVibGljS2V5PU1BTElDRV9jZl9jMnRuYjIzOXYxX1BVQgorLS0tLS0tQkVH SU4gUFVCTElDIEtFWS0tLS0tCistTUZVd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFBc0RQZ0FF SkZuODlGRjd4YWE1bStYR3hXS0Z3Q0grTXU0cmJ4d2k2bHZodUV1VAorLUl0bC9PQW9zQUxGaDh4 cHQrTjVnbUt0VWRocGp5b2sydWRDNEIvbVkKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0K Ky0jIEVDQyBDREggQm9iIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1EZXJpdmU9Qk9CX2NmX2MydG5iMjM5djEKKy1QZWVyS2V5PU1BTElDRV9jZl9jMnRuYjIzOXYx X1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCist UmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNl IHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJ0bmIyMzl2 MQorLVBlZXJLZXk9TUFMSUNFX2NmX2MydG5iMjM5djFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9y X21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkK Ky0KKy1UaXRsZT1jMnRuYjIzOXYyIGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9j Zl9jMnRuYjIzOXYyCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUQ4Q0FRQXdFd1lI S29aSXpqMENBUVlJS29aSXpqMERBQXdFSlRBakFnRUJCQjRLVTRZS2R6Rk9rbDZNMWJpSGt4dFZH RDJ1TlhyNgorLUdiRWNwNFBiSktVPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1Q dWJsaWNLZXk9QUxJQ0VfY2ZfYzJ0bmIyMzl2Ml9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVkt LS0tLQorLU1GVXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQXdEUGdBRUt6cHljZmxVcnN5cVZW LytmenZDMitBdVgzcjBiMFN5bjhhY3ZuNzgKKy1WbktBOW1aS3dQTFdobk1KY0x5emFySXpjLzYv VWNmWUdObVR5VWxHCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4g PSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9QUxJQ0VfY2ZfYzJ0bmIyMzl2MjpBTElDRV9jZl9j MnRuYjIzOXYyX1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX2MydG5iMjM5djIKKy0tLS0tLUJF R0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRDhDQVFBd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFB d0VKVEFqQWdFQkJCNEhaUUxLR0tCcElLaXlUcTZYWVpXUU5waDFvR1ArCistSkx3Q3duN2xZeDA9 CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2ZfYzJ0bmIy Mzl2Ml9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1GVXdFd1lIS29aSXpqMENB UVlJS29aSXpqMERBQXdEUGdBRVRQU2toTXMzSlczQkc2NkZTZkNvdjc2SktkY1JpQmhNQ1c0NTNX a3UKKy1ON3lCeEJtV2plY2xIaG5YSXpmYzRxTTRxZjluM0t6TVNYZWpQVllnCistLS0tLS1FTkQg UFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBh aXI9Qk9CX2NmX2MydG5iMjM5djI6Qk9CX2NmX2MydG5iMjM5djJfUFVCCistCistIyBFQ0RIIEFs aWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0Vf Y2ZfYzJ0bmIyMzl2MgorLVBlZXJLZXk9Qk9CX2NmX2MydG5iMjM5djJfUFVCCistU2hhcmVkU2Vj cmV0PTJlNzM4ZjE0Nzk1YjJlMTllZTc5MWMxYmYzMGM1ZTQ2MmNhNmM2ZWQwZWM1YzZjNjQwMmQw NzMwY2Y0YworLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBk ZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnRuYjIzOXYyCistUGVlcktleT1BTElDRV9jZl9jMnRu YjIzOXYyX1BVQgorLVNoYXJlZFNlY3JldD0yZTczOGYxNDc5NWIyZTE5ZWU3OTFjMWJmMzBjNWU0 NjJjYTZjNmVkMGVjNWM2YzY0MDJkMDczMGNmNGMKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBC b2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9jMnRuYjIz OXYyCistUGVlcktleT1CT0JfY2ZfYzJ0bmIyMzl2Ml9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3Jf bW9kZToxCistU2hhcmVkU2VjcmV0PTc2NjJkOGI5NGQzZjBkMjBlYjhlMTEyY2E4YjdkNTY5OWQ4 MWYzNTkwMmRmNWI3NzU2MTk3N2RmMzk0NgorLQorLSMgRUNDIENESCBCb2Igd2l0aCBBbGljZSBw ZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnRuYjIzOXYyCist UGVlcktleT1BTElDRV9jZl9jMnRuYjIzOXYyX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2Rl OjEKKy1TaGFyZWRTZWNyZXQ9NzY2MmQ4Yjk0ZDNmMGQyMGViOGUxMTJjYThiN2Q1Njk5ZDgxZjM1 OTAyZGY1Yjc3NTYxOTc3ZGYzOTQ2CistCistUHVibGljS2V5PU1BTElDRV9jZl9jMnRuYjIzOXYy X1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZVd0V3WUhLb1pJemowQ0FRWUlL b1pJemowREFBd0RQZ0FFUzhmTGM1bXRWSTBIcWdLUko3bU44TVUxQjBGQmtpaW02akNIWUpmMwor LUpZVVgzR24zQWkxMWNIaWUrblZiM3o1MWpTa3BEUUVOSEVTVHY1SzIKKy0tLS0tLUVORCBQVUJM SUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFi bGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2MydG5iMjM5djIKKy1QZWVyS2V5PU1BTElD RV9jZl9jMnRuYjIzOXYyX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9 REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistIyBFQ0MgQ0RIIEFs aWNlIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJ Q0VfY2ZfYzJ0bmIyMzl2MgorLVBlZXJLZXk9TUFMSUNFX2NmX2MydG5iMjM5djJfUFVCCistQ3Ry bD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9p bnQgYXQgaW5maW5pdHkKKy0KKy1UaXRsZT1jMnRuYjIzOXYzIGN1cnZlIHRlc3RzCistCistUHJp dmF0ZUtleT1BTElDRV9jZl9jMnRuYjIzOXYzCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0t CistTUQ4Q0FRQXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQTBFSlRBakFnRUJCQjRCWlpYdGNN dzVHcnBnSEpMeDREOHo3TTZvY1dkdgorLXJEbDJmVjlPYkM4PQorLS0tLS0tRU5EIFBSSVZBVEUg S0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2ZfYzJ0bmIyMzl2M19QVUIKKy0tLS0tLUJF R0lOIFBVQkxJQyBLRVktLS0tLQorLU1GVXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQTBEUGdB RU91MkhJQVVYK3I2SWJSbHJQVUpVQkRMODE0ZFIrK21hVkFBa1VJakQKKy1IMzNld3FjSTlaTHRw dnVSOFA4aGdSTlVUWGxoMUdXZ3JCNkYyMUVvCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCist CistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9QUxJQ0VfY2ZfYzJ0bmIy Mzl2MzpBTElDRV9jZl9jMnRuYjIzOXYzX1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX2MydG5i MjM5djMKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRDhDQVFBd0V3WUhLb1pJemow Q0FRWUlLb1pJemowREFBMEVKVEFqQWdFQkJCNEJEeHczU0E1NHk2dVlPVzFuNHlaYVVLMjJKOWVm CistWEczSGNRWCs0aTA9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tl eT1CT0JfY2ZfYzJ0bmIyMzl2M19QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1G VXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQTBEUGdBRVZhRWk3Nnd5emxwemtrU0VsZjRTbUda N2tmMWdoSE1QODJIa0drN0sKKy1CQzEwelV5cHBvU09BcjBlWDRwSEFrRFVGMW0vS0dvSmE3UWNK Snd3CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0 CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX2MydG5iMjM5djM6Qk9CX2NmX2MydG5iMjM5djNfUFVC CistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1EZXJpdmU9QUxJQ0VfY2ZfYzJ0bmIyMzl2MworLVBlZXJLZXk9Qk9CX2NmX2MydG5iMjM5djNf UFVCCistU2hhcmVkU2VjcmV0PTZhNzU2MDIyZWMyZWE4OWIwZmE3NTc4MjQ5MDk3MDcxMDJhY2Yz YjdkYTM5ZGM2MjVjNjI1MmViNGM0OAorLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCist QXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnRuYjIzOXYzCistUGVlcktl eT1BTElDRV9jZl9jMnRuYjIzOXYzX1BVQgorLVNoYXJlZFNlY3JldD02YTc1NjAyMmVjMmVhODli MGZhNzU3ODI0OTA5NzA3MTAyYWNmM2I3ZGEzOWRjNjI1YzYyNTJlYjRjNDgKKy0KKy0jIEVDQyBD REggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1B TElDRV9jZl9jMnRuYjIzOXYzCistUGVlcktleT1CT0JfY2ZfYzJ0bmIyMzl2M19QVUIKKy1DdHJs PWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTMyNDBlMTlkZDhjMjkwZTVlMTc0 OWRmNjBhZDAxNjZkZDlkYmZhZDY0NWU1MThiNDk0OGUxNGY3NzRjZQorLQorLSMgRUNDIENESCBC b2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9j Zl9jMnRuYjIzOXYzCistUGVlcktleT1BTElDRV9jZl9jMnRuYjIzOXYzX1BVQgorLUN0cmw9ZWNk aF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MzI0MGUxOWRkOGMyOTBlNWUxNzQ5ZGY2 MGFkMDE2NmRkOWRiZmFkNjQ1ZTUxOGI0OTQ4ZTE0Zjc3NGNlCistCistUHVibGljS2V5PU1BTElD RV9jZl9jMnRuYjIzOXYzX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZVd0V3 WUhLb1pJemowQ0FRWUlLb1pJemowREFBMERQZ0FFTGUvem5DODcvMnVjS1g3bVhVVXlpVXZnNjdz bFdSZEgrV0hEY3Q5ZAorLUxjWER5QjM0MlpOMW5tME5DQW1CTWNMam9oWDBaemEwamkzWU5qVDEK Ky0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGggTWFsaWNl IHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX2MydG5iMjM5djMK Ky1QZWVyS2V5PU1BTElDRV9jZl9jMnRuYjIzOXYzX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9t b2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5Cist CistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1 bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJ0bmIyMzl2MworLVBlZXJLZXk9TUFMSUNFX2NmX2MydG5i MjM5djNfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJS T1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy1UaXRsZT1jMnRuYjM1OXYxIGN1cnZl IHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9jMnRuYjM1OXYxCistLS0tLS1CRUdJTiBQ UklWQVRFIEtFWS0tLS0tCistTUU0Q0FRQXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBQklFTkRB eUFnRUJCQzBBZmVhL2ExTnJSZjZyUlJyL1VEc0k1NTlBRFRGUAorLUJkNUhhUzMzbGFUWmtDZE5M SVR3MVVVckVTVUlPaVU9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tl eT1BTElDRV9jZl9jMnRuYjM1OXYxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCist TUhNd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFCSURYQUFFWk1KVTNRRjlVSkpwMm02cXlDbmhQ dVZsUEtQSHRhdjNEQ2dIMjdTWQorLVJMTU43QzRyUm1xaUpha0QxMVF0T2Zvck9nYlBXNXIvdjd0 NFRVV0lscThqVjdrYXBKTnR4UXRnL1M4N0wwTlFHZ0hCcS9sbkpMOHgKKy1mTjNZCistLS0tLS1F TkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1Yktl eVBhaXI9QUxJQ0VfY2ZfYzJ0bmIzNTl2MTpBTElDRV9jZl9jMnRuYjM1OXYxX1BVQgorLQorLVBy aXZhdGVLZXk9Qk9CX2NmX2MydG5iMzU5djEKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0K Ky1NRTRDQVFBd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFCSUVOREF5QWdFQkJDMEFhdyt5cjdB dHo4Q1hqTHNiSTVtc1hMcXhGb01yCistZXNIVmZVNTNpNnVjQ3NuUFRXU0RXU2I1Q2VQdEk5Zz0K Ky0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl9jMnRuYjM1 OXYxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUhNd0V3WUhLb1pJemowQ0FR WUlLb1pJemowREFCSURYQUFFVVFkZTBpeURIYnNGSlo0NTlkNHpVaHNySllBa3FuZG1FQlJ3U2xn NQorLVpOWDhTU1M3OVpmMkhzUWwrTFdJWnl6ZVl6b0hvYktYdWZDaHc5L0g0VGhTNThWd1Y1LzBo b0U5MjlQSWdKMU1TRXFyNUx2SlhpK2IKKy1SOGZlCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0t CistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX2MydG5i MzU5djE6Qk9CX2NmX2MydG5iMzU5djFfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBl ZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJ0bmIzNTl2MQor LVBlZXJLZXk9Qk9CX2NmX2MydG5iMzU5djFfUFVCCistU2hhcmVkU2VjcmV0PTYyM2E3MTEyMmI1 YWNhZDQ2N2Q0MGQ5N2VmOGQ4ZmQ0NjU0MWQ4YzQxZDdkZTZiYTE4MWMyNGUyNzE0YzFiYzM1YmNl ZmNmMDg5YWY2OWM0MDZlZWRlY2MxMgorLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCist QXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnRuYjM1OXYxCistUGVlcktl eT1BTElDRV9jZl9jMnRuYjM1OXYxX1BVQgorLVNoYXJlZFNlY3JldD02MjNhNzExMjJiNWFjYWQ0 NjdkNDBkOTdlZjhkOGZkNDY1NDFkOGM0MWQ3ZGU2YmExODFjMjRlMjcxNGMxYmMzNWJjZWZjZjA4 OWFmNjljNDA2ZWVkZWNjMTIKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2 YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9jMnRuYjM1OXYxCistUGVlcktl eT1CT0JfY2ZfYzJ0bmIzNTl2MV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hh cmVkU2VjcmV0PTFjOWM0Y2VhMzI1MWRhY2UyY2I3NjNlYWJmNjBmMTA2Y2MxYjAzZjI0OTFlNmYy MGQ3YmVhNzhlMDYyZjhmMTRjNGU4MmU0ZDQzNzg2ZWVmYTQ0ZDMzZjdlOQorLQorLSMgRUNDIENE SCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJP Ql9jZl9jMnRuYjM1OXYxCistUGVlcktleT1BTElDRV9jZl9jMnRuYjM1OXYxX1BVQgorLUN0cmw9 ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MWM5YzRjZWEzMjUxZGFjZTJjYjc2 M2VhYmY2MGYxMDZjYzFiMDNmMjQ5MWU2ZjIwZDdiZWE3OGUwNjJmOGYxNGM0ZTgyZTRkNDM3ODZl ZWZhNDRkMzNmN2U5CistCistUHVibGljS2V5PU1BTElDRV9jZl9jMnRuYjM1OXYxX1BVQgorLS0t LS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUhNd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFC SURYQUFFRFcxRHhlSmZ5UFBueFg0V2lMTTVablg5QXlwcXFlS2o3RlRIeGFubAorLSsrQTZGZ1ZG alVDYXR0OFNyNHhuU2MzekRFMGtoNmYvd1M5U2J0Q0FpNzRpOEhBWDVTSmljY0NNUFJrdzZrQnVI WmdpRzhFbUZKNTMKKy1PRVF3CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0Mg Q0RIIEJvYiB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZl PUJPQl9jZl9jMnRuYjM1OXYxCistUGVlcktleT1NQUxJQ0VfY2ZfYzJ0bmIzNTl2MV9QVUIKKy1D dHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1w b2ludCBhdCBpbmZpbml0eQorLQorLSMgRUNDIENESCBBbGljZSB3aXRoIE1hbGljZSBwZWVyCist QXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX2MydG5iMzU5djEKKy1QZWVy S2V5PU1BTElDRV9jZl9jMnRuYjM1OXYxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEK Ky1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistVGl0 bGU9YzJ0bmI0MzFyMSBjdXJ2ZSB0ZXN0cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2ZfYzJ0bmI0 MzFyMQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1GWUNBUUF3RXdZSEtvWkl6ajBD QVFZSUtvWkl6ajBEQUJRRVBEQTZBZ0VCQkRVQUcxcmdVbkgzK1BTeHFsenQ5K1FUV3Y3UHJZeHoK Ky1RZ3FqNUEyTXFpMExiZGl4VkRjaVZTU2dyVTZrZVZ1NzJvQ21IVlArT1E9PQorLS0tLS0tRU5E IFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2ZfYzJ0bmI0MzFyMV9QVUIK Ky0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1JR0ZNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NN NDlBd0FVQTI0QUJGY1FFRGljOXBZeHR4U3RrL29CeGFmcXlVdXgxa3ZFT093UjRGeEoKKy1wR0VN VGg4QitZZmtXdXErSURZNXpTcU5LdGc3Y1JsQUZYMmRsSGhSU3ZOeHJOM0RKQ3JoZS9UUXE4U0lZ YXdjcUVRbk0zOUY4aEhNCistN1ZRSkxFc0JwSi9XVW9ud01KWGtuamdmT05QN0dBPT0KKy0tLS0t LUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHVi S2V5UGFpcj1BTElDRV9jZl9jMnRuYjQzMXIxOkFMSUNFX2NmX2MydG5iNDMxcjFfUFVCCistCist UHJpdmF0ZUtleT1CT0JfY2ZfYzJ0bmI0MzFyMQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0t LQorLU1GWUNBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQUJRRVBEQTZBZ0VCQkRVQk9zWnJw STZoVGdJbVI4REJoS09PcmgyU3ZjVC8KKy1Wd216WW5idUNScnRyL3p3SVFjcUtLSTF6dGxybCtr eEZ4SmZrNUw3VVE9PQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9 Qk9CX2NmX2MydG5iNDMxcjFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NSUdG TUJNR0J5cUdTTTQ5QWdFR0NDcUdTTTQ5QXdBVUEyNEFCSGVURzZ4amJzS0t4bjRvWVF0OXFVTTlM clNQWmZZMTFYc0JtUk9jCistZmI5a0ViQkxVK1FpeFNiWVpPcnFQYXNlc0RWOWRBcERYRit3NkVm SWVOeUpFSzVMaythWGFtcm43ZlJNVUFRMm03K09kcDg3R2dBKworLThDZzZZcGdiSzMxNFNLNVNU emlxb1p3ekVJU0o5dz09CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX2MydG5iNDMxcjE6Qk9CX2NmX2My dG5iNDMxcjFfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVp biA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2ZfYzJ0bmI0MzFyMQorLVBlZXJLZXk9Qk9CX2Nm X2MydG5iNDMxcjFfUFVCCistU2hhcmVkU2VjcmV0PTFjOWE2NGRlMGI3MDZmMGU1NjJkNTE0NGNl ZWI0ODA2Y2U4NzgyODY1ZGMwZTNmYWI2OTQ5Njc5NTViZDQwYWZjNzliZjkyNDFlZjRhMTczZmJm OWJhZWFjMGQ0MTYzOTJmYjEzYmRjNjk3OAorLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVy CistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnRuYjQzMXIxCistUGVl cktleT1BTElDRV9jZl9jMnRuYjQzMXIxX1BVQgorLVNoYXJlZFNlY3JldD0xYzlhNjRkZTBiNzA2 ZjBlNTYyZDUxNDRjZWViNDgwNmNlODc4Mjg2NWRjMGUzZmFiNjk0OTY3OTU1YmQ0MGFmYzc5YmY5 MjQxZWY0YTE3M2ZiZjliYWVhYzBkNDE2MzkyZmIxM2JkYzY5NzgKKy0KKy0jIEVDQyBDREggQWxp Y2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9j Zl9jMnRuYjQzMXIxCistUGVlcktleT1CT0JfY2ZfYzJ0bmI0MzFyMV9QVUIKKy1DdHJsPWVjZGhf Y29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTA1OWUyZWEyZDBkOGJhZDUwMDVhOTQwMTE5 NmViYjE2MzMzNzdjN2RlZDhlYzU4YTAzOThjZjFkMGY0MmVhODI2MTRmNjhjYjgzNmVjZmMzMzYx MmI4YTcwNWI0YzNiN2I0ZWQxMmViNmUyMgorLQorLSMgRUNDIENESCBCb2Igd2l0aCBBbGljZSBw ZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9jMnRuYjQzMXIxCist UGVlcktleT1BTElDRV9jZl9jMnRuYjQzMXIxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2Rl OjEKKy1TaGFyZWRTZWNyZXQ9MDU5ZTJlYTJkMGQ4YmFkNTAwNWE5NDAxMTk2ZWJiMTYzMzM3N2M3 ZGVkOGVjNThhMDM5OGNmMWQwZjQyZWE4MjYxNGY2OGNiODM2ZWNmYzMzNjEyYjhhNzA1YjRjM2I3 YjRlZDEyZWI2ZTIyCistCistUHVibGljS2V5PU1BTElDRV9jZl9jMnRuYjQzMXIxX1BVQgorLS0t LS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUlHRk1CTUdCeXFHU000OUFnRUdDQ3FHU000OUF3 QVVBMjRBQkEvY0hKMWJOSjJsM0djclQ2N1dFb1Uwdy9BankyOFQ5WDRYTHY4YQorLTVFcG5rZW1i ZUZsUkc4SUxwbERjWmltRThrak5RV3luQWsrTmJKUnNJVS9YTHpjbTdWWGtrcUVreC95Q1EvVE9j YmVCM3FycHpXWXIKKy1GM0Nsczl4NjB3dUZZTmM5ZDZlSWU0QitwdXo5SVE9PQorLS0tLS0tRU5E IFBVQkxJQyBLRVktLS0tLQorLQorLSMgRUNDIENESCBCb2Igd2l0aCBNYWxpY2UgcGVlcgorLUF2 YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2ZfYzJ0bmI0MzFyMQorLVBlZXJLZXk9 TUFMSUNFX2NmX2MydG5iNDMxcjFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJl c3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy0jIEVDQyBD REggQWxpY2Ugd2l0aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2 ZT1BTElDRV9jZl9jMnRuYjQzMXIxCistUGVlcktleT1NQUxJQ0VfY2ZfYzJ0bmI0MzFyMV9QVUIK Ky1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNv bj1wb2ludCBhdCBpbmZpbml0eQorLQorLVRpdGxlPXByaW1lMTkydjIgY3VydmUgdGVzdHMKKy0K Ky1Qcml2YXRlS2V5PUFMSUNFX2NmX3ByaW1lMTkydjIKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZ LS0tLS0KKy1NRGtDQVFBd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRSUVIekFkQWdFQkJCaDZy Y2dQRkRtQTJQNENHU3JDN2lpOURBamVwbGpYCistc01NPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZ LS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2ZfcHJpbWUxOTJ2Ml9QVUIKKy0tLS0tLUJFR0lO IFBVQkxJQyBLRVktLS0tLQorLU1Fa3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUUlETWdBRVQ2 d09Qb0RVM0JlVTdWS296c0dFdkRlSnMvLzlaL2FORWNiYkxRMGQKKy1nNUl6c1MvWE1KemlmakNK WmdOc2I3bWkKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRl ZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9wcmltZTE5MnYyOkFMSUNFX2NmX3ByaW1l MTkydjJfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2ZfcHJpbWUxOTJ2MgorLS0tLS0tQkVHSU4g UFJJVkFURSBLRVktLS0tLQorLU1Ea0NBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFJRUh6 QWRBZ0VCQkJqYTRSOWladWl1OTVYRXVNMTU1OEFyVHdObkFsN00KKy14cUk9CistLS0tLS1FTkQg UFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2ZfcHJpbWUxOTJ2Ml9QVUIKKy0t LS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1Fa3dFd1lIS29aSXpqMENBUVlJS29aSXpqMERB UUlETWdBRWNnV05BT0w0cFpDbW91WmwrYmUrckMweUxBSmttMll1UFdzK0ZYMnUKKy1ZNk9VMWFI a2tzcFpUQzF1VVZXamNoeTUKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFi bGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2ZfcHJpbWUxOTJ2MjpCT0JfY2Zf cHJpbWUxOTJ2Ml9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJs ZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9wcmltZTE5MnYyCistUGVlcktleT1CT0Jf Y2ZfcHJpbWUxOTJ2Ml9QVUIKKy1TaGFyZWRTZWNyZXQ9YWUyZmY5ZjFmOWYyNGU2ZDI4MWRjNzg5 OTNkOWY3MTkxM2UxZTEwNTk2NTAwMGExCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIK Ky1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3ByaW1lMTkydjIKKy1QZWVy S2V5PUFMSUNFX2NmX3ByaW1lMTkydjJfUFVCCistU2hhcmVkU2VjcmV0PWFlMmZmOWYxZjlmMjRl NmQyODFkYzc4OTkzZDlmNzE5MTNlMWUxMDU5NjUwMDBhMQorLQorLVRpdGxlPXByaW1lMTkydjMg Y3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX2NmX3ByaW1lMTkydjMKKy0tLS0tLUJF R0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRGtDQVFBd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFR TUVIekFkQWdFQkJCaWo1YmxQUVJLTTEvOWM1N1lEWlhJSXVlODBNRHF4CistSWd3PQorLS0tLS0t RU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2ZfcHJpbWUxOTJ2M19Q VUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1Fa3dFd1lIS29aSXpqMENBUVlJS29a SXpqMERBUU1ETWdBRTErbUxlaVQvampITzcxSUwvQy9aY25GNit5ajlGVjZlcWZ1UGRIQWkKKy1N c0RSRkNCNi9oOFRjQ1VGdW9zcHU1bDAKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1B dmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9wcmltZTE5MnYz OkFMSUNFX2NmX3ByaW1lMTkydjNfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2ZfcHJpbWUxOTJ2 MworLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1Ea0NBUUF3RXdZSEtvWkl6ajBDQVFZ SUtvWkl6ajBEQVFNRUh6QWRBZ0VCQkJoZ0ZQNGZGTHRtL3lrNXRzb3NCVUJLVGczNzBGT3UKKy05 Mmc9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2ZfcHJp bWUxOTJ2M19QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1Fa3dFd1lIS29aSXpq MENBUVlJS29aSXpqMERBUU1ETWdBRXYzNWJPejB4cUxlSnFwWmRaOEx5aVVnc0pNQkV0TjJVTUpt OGJsWDIKKy12TVdBZ0VlTGh6YXI4NkJVbFM3ZFp3UzcKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0t LS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2ZfcHJp bWUxOTJ2MzpCT0JfY2ZfcHJpbWUxOTJ2M19QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2Ig cGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9wcmltZTE5MnYz CistUGVlcktleT1CT0JfY2ZfcHJpbWUxOTJ2M19QVUIKKy1TaGFyZWRTZWNyZXQ9OWU1NjJlY2Jl MjljNTEwYTEzYjBkYWVhODIyZWM4NjRjMmE5Njg0ZDJhMzgyODEyCistCistIyBFQ0RIIEJvYiB3 aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3By aW1lMTkydjMKKy1QZWVyS2V5PUFMSUNFX2NmX3ByaW1lMTkydjNfUFVCCistU2hhcmVkU2VjcmV0 PTllNTYyZWNiZTI5YzUxMGExM2IwZGFlYTgyMmVjODY0YzJhOTY4NGQyYTM4MjgxMgorLQorLVRp dGxlPXByaW1lMjM5djEgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX2NmX3ByaW1l MjM5djEKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRDhDQVFBd0V3WUhLb1pJemow Q0FRWUlLb1pJemowREFRUUVKVEFqQWdFQkJCNW5IMm10L0dVeCtJLzYwTmxjdVFscmR1cERYd01Z CistU0YvdytTVVROcVk9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tl eT1BTElDRV9jZl9wcmltZTIzOXYxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCist TUZVd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRUURQZ0FFTXFRTENnRFI5bmprcTlRRUx1T3Ur Si85WUdjeEpIVUxkdnhISW1MVworLVJYcUJVTTVYZWErUWsyU0tJcFdjb2d4cjJ6RmVReWVMajJi UXlzdW8KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1 bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9wcmltZTIzOXYxOkFMSUNFX2NmX3ByaW1lMjM5 djFfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2ZfcHJpbWUyMzl2MQorLS0tLS0tQkVHSU4gUFJJ VkFURSBLRVktLS0tLQorLU1EOENBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFRRUpUQWpB Z0VCQkI1UlpnWVYrait6aHdJMTJ6Q3pCK21kUG9mTXgwa0IKKy1qWjlncGxnWHh6az0KKy0tLS0t LUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl9wcmltZTIzOXYxX1BV QgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZVd0V3WUhLb1pJemowQ0FRWUlLb1pJ emowREFRUURQZ0FFQlI1bS9rbGxoMDI1b080R3ZxQUxralJsaVZ2N3E0eDhyby90a1luVAorLUwy VTRoa1Q2eFVlUnU5UUM0S096N0tVVkgrbkJiUUFTTDRYUWcvM0MKKy0tLS0tLUVORCBQVUJMSUMg S0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0Jf Y2ZfcHJpbWUyMzl2MTpCT0JfY2ZfcHJpbWUyMzl2MV9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0 aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9wcmlt ZTIzOXYxCistUGVlcktleT1CT0JfY2ZfcHJpbWUyMzl2MV9QVUIKKy1TaGFyZWRTZWNyZXQ9MTk2 YjFkMDIwNmQ0Zjg3YzMxM2MyNjZiZmIxMmM5MGRkMWYxZjY0Yjg5YmZjMTY1MTgwODZiOTgwMWI4 CistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1EZXJpdmU9Qk9CX2NmX3ByaW1lMjM5djEKKy1QZWVyS2V5PUFMSUNFX2NmX3ByaW1lMjM5djFf UFVCCistU2hhcmVkU2VjcmV0PTE5NmIxZDAyMDZkNGY4N2MzMTNjMjY2YmZiMTJjOTBkZDFmMWY2 NGI4OWJmYzE2NTE4MDg2Yjk4MDFiOAorLQorLVRpdGxlPXByaW1lMjM5djIgY3VydmUgdGVzdHMK Ky0KKy1Qcml2YXRlS2V5PUFMSUNFX2NmX3ByaW1lMjM5djIKKy0tLS0tLUJFR0lOIFBSSVZBVEUg S0VZLS0tLS0KKy1NRDhDQVFBd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRVUVKVEFqQWdFQkJC NXVMQ3dvZmJEMlN1Yy9pSVJoWEpzUHFaNG1lODdoCistK3RGZXZzZzFwUEU9CistLS0tLS1FTkQg UFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1BTElDRV9jZl9wcmltZTIzOXYyX1BVQgor LS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZVd0V3WUhLb1pJemowQ0FRWUlLb1pJemow REFRVURQZ0FFVEg3N2pYSEJJdFY2NzNnVE5LL0hURmxkbzRWeFBpc2NiaWRlVWdLZAorLUNXamRW c1hlYmdBWmJxUXdmMGg5UVdjSWdNN0s3T0RkVzVrQ3VaMUcKKy0tLS0tLUVORCBQVUJMSUMgS0VZ LS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9j Zl9wcmltZTIzOXYyOkFMSUNFX2NmX3ByaW1lMjM5djJfUFVCCistCistUHJpdmF0ZUtleT1CT0Jf Y2ZfcHJpbWUyMzl2MgorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1EOENBUUF3RXdZ SEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFVRUpUQWpBZ0VCQkI1bmxGK291dXczTGprZ3kzcEhrQ04r L0pvSEFNeVQKKy1LWTB3bHZKZG8vdz0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCist UHVibGljS2V5PUJPQl9jZl9wcmltZTIzOXYyX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0t LS0tCistTUZVd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRVURQZ0FFTFVRWW8wVUg4SGJLL1JN RDJqVnBoQlUraUI0T1RPZnZhYVRsSHEwNgorLWRjSjhhOWErbUFRS2hiMU9aVkVxMW40blFzZ1Jp STFyUHh1Z1ZFUk0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9 IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2ZfcHJpbWUyMzl2MjpCT0JfY2ZfcHJpbWUy Mzl2Ml9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9wcmltZTIzOXYyCistUGVlcktleT1CT0JfY2ZfcHJp bWUyMzl2Ml9QVUIKKy1TaGFyZWRTZWNyZXQ9MWQxOGNhNjM2NmJjZWJhM2MxNDc3ZGFhMGUwODIw MjA4OGFiY2YxNGZjMmI4ZmJmOThiYTk1ODU4ZmNmCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNl IHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3ByaW1lMjM5djIK Ky1QZWVyS2V5PUFMSUNFX2NmX3ByaW1lMjM5djJfUFVCCistU2hhcmVkU2VjcmV0PTFkMThjYTYz NjZiY2ViYTNjMTQ3N2RhYTBlMDgyMDIwODhhYmNmMTRmYzJiOGZiZjk4YmE5NTg1OGZjZgorLQor LVRpdGxlPXByaW1lMjM5djMgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX2NmX3By aW1lMjM5djMKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRDhDQVFBd0V3WUhLb1pJ emowQ0FRWUlLb1pJemowREFRWUVKVEFqQWdFQkJCNUo5NUpSaEJEVHpseUFQQWZ1NlQyUGI5dksw Tkt1CistWTlBZmhBMkcrbUk9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1Ymxp Y0tleT1BTElDRV9jZl9wcmltZTIzOXYzX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0t CistTUZVd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRWURQZ0FFWkVONDhwcWdMRjA4WWpqLzhC TE0yTnI1WmhwWXh5QnVyYnpLUnVCYgorLUdMcHpaTHRlSk45dlpqTjdvdU5wTXhMVlVGUXhUT3dw c3ZVdzg2TGsKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRl ZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9wcmltZTIzOXYzOkFMSUNFX2NmX3ByaW1l MjM5djNfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2ZfcHJpbWUyMzl2MworLS0tLS0tQkVHSU4g UFJJVkFURSBLRVktLS0tLQorLU1EOENBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFZRUpU QWpBZ0VCQkI1WjdyTVpNTDF4ZXJ5QmFZWXIrUXVNaVF4SFQ0NEkKKy1kOWJtSVZ2RzNkTT0KKy0t LS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl9wcmltZTIzOXYz X1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZVd0V3WUhLb1pJemowQ0FRWUlL b1pJemowREFRWURQZ0FFUVVXS3FvaEFQQW9JWUVaT3ZjMVF3U2xjQitnVzBmZWJhTnhHT3k0Nwor LUxhSVdkc05NN0dKVlA5eHBkU3dtL0wrRGlwL29INEU1OWYzU2lPQWQKKy0tLS0tLUVORCBQVUJM SUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1C T0JfY2ZfcHJpbWUyMzl2MzpCT0JfY2ZfcHJpbWUyMzl2M19QVUIKKy0KKy0jIEVDREggQWxpY2Ug d2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9w cmltZTIzOXYzCistUGVlcktleT1CT0JfY2ZfcHJpbWUyMzl2M19QVUIKKy1TaGFyZWRTZWNyZXQ9 NGRjYzJjNjdjNTk5MzE2MmVkNzFlYmIzMzA3N2JiYjg1Mzk1YjBkM2VlYzIzMTFhYTQwNGU0NTkw MWEwCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1 bHQKKy1EZXJpdmU9Qk9CX2NmX3ByaW1lMjM5djMKKy1QZWVyS2V5PUFMSUNFX2NmX3ByaW1lMjM5 djNfUFVCCistU2hhcmVkU2VjcmV0PTRkY2MyYzY3YzU5OTMxNjJlZDcxZWJiMzMwNzdiYmI4NTM5 NWIwZDNlZWMyMzExYWE0MDRlNDU5MDFhMAorLQorLVRpdGxlPXNlY3AxMTJyMSBjdXJ2ZSB0ZXN0 cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2Zfc2VjcDExMnIxCistLS0tLS1CRUdJTiBQUklWQVRF IEtFWS0tLS0tCistTUN3Q0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFBWUVGVEFUQWdFQkJBNnpD NVp6RUlJZHZZNFE3RFMwdXc9PQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJs aWNLZXk9QUxJQ0VfY2Zfc2VjcDExMnIxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0t CistTURJd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFZREhnQUVZSWF3ZmpIM3FSckpKV3d1RzNZczVa aERKc21kV2kzNGFIZ0tBQT09CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxh YmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9QUxJQ0VfY2Zfc2VjcDExMnIxOkFMSUNF X2NmX3NlY3AxMTJyMV9QVUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl9zZWNwMTEycjEKKy0tLS0t LUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NQ3dDQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFZ RUZUQVRBZ0VCQkE2V1B4NFl4Qk9EaXVtOEJLRHcwQT09CistLS0tLS1FTkQgUFJJVkFURSBLRVkt LS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2Zfc2VjcDExMnIxX1BVQgorLS0tLS0tQkVHSU4gUFVC TElDIEtFWS0tLS0tCistTURJd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFZREhnQUVjaGgzaVFkUE4x cnJ6cnBkWlJROTVHNnR2ZHdFQlErZ2Z1MXR2QT09CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0t CistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX3NlY3Ax MTJyMTpCT0JfY2Zfc2VjcDExMnIxX1BVQgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVy CistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3NlY3AxMTJyMQorLVBl ZXJLZXk9Qk9CX2NmX3NlY3AxMTJyMV9QVUIKKy1TaGFyZWRTZWNyZXQ9NGRkZDFkNTA0YjQ0NGQ0 YmU2N2JhMmU0NjEwYQorLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9zZWNwMTEycjEKKy1QZWVyS2V5PUFMSUNFX2Nm X3NlY3AxMTJyMV9QVUIKKy1TaGFyZWRTZWNyZXQ9NGRkZDFkNTA0YjQ0NGQ0YmU2N2JhMmU0NjEw YQorLQorLVRpdGxlPXNlY3AxMTJyMiBjdXJ2ZSB0ZXN0cworLQorLVByaXZhdGVLZXk9QUxJQ0Vf Y2Zfc2VjcDExMnIyCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUN3Q0FRQXdFQVlI S29aSXpqMENBUVlGSzRFRUFBY0VGVEFUQWdFQkJBNEdjdkl4OTdlUEhkQWlIMFo5RUE9PQorLS0t LS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2Zfc2VjcDExMnIy X1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTURJd0VBWUhLb1pJemowQ0FRWUZL NEVFQUFjREhnQUVISzl1TkFJTEhCbVBaZEtLaDc5L256WUUwSGJ2Qy8vckE3aTBYdz09CistLS0t LS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1 YktleVBhaXI9QUxJQ0VfY2Zfc2VjcDExMnIyOkFMSUNFX2NmX3NlY3AxMTJyMl9QVUIKKy0KKy1Q cml2YXRlS2V5PUJPQl9jZl9zZWNwMTEycjIKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0K Ky1NQ3dDQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFjRUZUQVRBZ0VCQkE0V3pwVkZablp2OW12 dHBuWU55dz09CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0Jf Y2Zfc2VjcDExMnIyX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTURJd0VBWUhL b1pJemowQ0FRWUZLNEVFQUFjREhnQUVVekJMTlF1cHFVcEdnbVpsOUpWaktCcHd1c2w1MnJGZzVP VkZKQT09CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZh dWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX3NlY3AxMTJyMjpCT0JfY2Zfc2VjcDExMnIyX1BV QgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0 CistRGVyaXZlPUFMSUNFX2NmX3NlY3AxMTJyMgorLVBlZXJLZXk9Qk9CX2NmX3NlY3AxMTJyMl9Q VUIKKy1TaGFyZWRTZWNyZXQ9YTZkMDVjN2JhNTEyOGE5Njg1YzcwNWI1MDMwYgorLQorLSMgRUNE SCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJP Ql9jZl9zZWNwMTEycjIKKy1QZWVyS2V5PUFMSUNFX2NmX3NlY3AxMTJyMl9QVUIKKy1TaGFyZWRT ZWNyZXQ9YTZkMDVjN2JhNTEyOGE5Njg1YzcwNWI1MDMwYgorLQorLSMgRUNDIENESCBBbGljZSB3 aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3Nl Y3AxMTJyMgorLVBlZXJLZXk9Qk9CX2NmX3NlY3AxMTJyMl9QVUIKKy1DdHJsPWVjZGhfY29mYWN0 b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTA0ZjMyODBlOTJjMjY5ZDc5NGFhNzc5ZWZjZWYKKy0K Ky0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAor LURlcml2ZT1CT0JfY2Zfc2VjcDExMnIyCistUGVlcktleT1BTElDRV9jZl9zZWNwMTEycjJfUFVC CistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0wNGYzMjgwZTkyYzI2 OWQ3OTRhYTc3OWVmY2VmCistCistUHVibGljS2V5PU1BTElDRV9jZl9zZWNwMTEycjJfUFVCCist LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NREl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQWNE SGdBRXNmMk40U2ZVWld0WFByVVRtRXlyNzFJL0pTbjhWdHpRc0ZIdXFRPT0KKy0tLS0tLUVORCBQ VUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFp bGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3NlY3AxMTJyMgorLVBlZXJLZXk9TUFM SUNFX2NmX3NlY3AxMTJyMl9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0 PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLSMgRUNDIENESCBB bGljZSB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFM SUNFX2NmX3NlY3AxMTJyMgorLVBlZXJLZXk9TUFMSUNFX2NmX3NlY3AxMTJyMl9QVUIKKy1DdHJs PWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2lu dCBhdCBpbmZpbml0eQorLQorLVRpdGxlPXNlY3AxMjhyMSBjdXJ2ZSB0ZXN0cworLQorLVByaXZh dGVLZXk9QUxJQ0VfY2Zfc2VjcDEyOHIxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCist TUM0Q0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFCd0VGekFWQWdFQkJCQitSWDE4ZDArZ0twZGNL YkpKVHJFWgorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0Vf Y2Zfc2VjcDEyOHIxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTURZd0VBWUhL b1pJemowQ0FRWUZLNEVFQUJ3RElnQUVHMFhNQWRyQVpPUFVXNkw5QURVOFhLOHNacjdkdEljRGlu U1dVMXpTVjlzPQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3NlY3AxMjhyMTpBTElDRV9jZl9zZWNw MTI4cjFfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zfc2VjcDEyOHIxCistLS0tLS1CRUdJTiBQ UklWQVRFIEtFWS0tLS0tCistTUM0Q0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFCd0VGekFWQWdF QkJCQi9KOS9lQ2x0OW1pbUd3T2NPc2pKRgorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0K Ky1QdWJsaWNLZXk9Qk9CX2NmX3NlY3AxMjhyMV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVkt LS0tLQorLU1EWXdFQVlIS29aSXpqMENBUVlGSzRFRUFCd0RJZ0FFODJua25zT1MrdThteWJQMEtK cVFodm04M2diUE5UWk9jdm0wWkRWUjVzVT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0K Ky1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2Zfc2VjcDEyOHIx OkJPQl9jZl9zZWNwMTI4cjFfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1B dmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjcDEyOHIxCistUGVlcktl eT1CT0JfY2Zfc2VjcDEyOHIxX1BVQgorLVNoYXJlZFNlY3JldD01MDIwZjFiNzU5ZGExZjczN2E2 MWEyOWEyNjhkNzY2OQorLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9zZWNwMTI4cjEKKy1QZWVyS2V5PUFMSUNFX2Nm X3NlY3AxMjhyMV9QVUIKKy1TaGFyZWRTZWNyZXQ9NTAyMGYxYjc1OWRhMWY3MzdhNjFhMjlhMjY4 ZDc2NjkKKy0KKy1UaXRsZT1zZWNwMTI4cjIgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFM SUNFX2NmX3NlY3AxMjhyMgorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1DNENBUUF3 RUFZSEtvWkl6ajBDQVFZRks0RUVBQjBFRnpBVkFnRUJCQkFMUGFVWUNuUGdOaUxoZXo5M1oxR2kK Ky0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3NlY3Ax MjhyMl9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1EWXdFQVlIS29aSXpqMENB UVlGSzRFRUFCMERJZ0FFT0tpUFJHdFpYd3htdlRyMzVObVVrTnNBR0drOVJLTkE0RDVCRTlacmpa UT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9zZWNwMTI4cjI6QUxJQ0VfY2Zfc2VjcDEyOHIyX1BV QgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3NlY3AxMjhyMgorLS0tLS0tQkVHSU4gUFJJVkFURSBL RVktLS0tLQorLU1DNENBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQjBFRnpBVkFnRUJCQkFSZzN2 YjQzNlFneUhkeXQ2bC9iNkcKKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGlj S2V5PUJPQl9jZl9zZWNwMTI4cjJfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1N RFl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQjBESWdBRUxwaDdoMjdCWWpJSU5DMkVkZGNwSU94S2Jk ejhYZTdoM0F6MVp1UjliQUk9CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxh YmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX3NlY3AxMjhyMjpCT0JfY2Zf c2VjcDEyOHIyX1BVQgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3NlY3AxMjhyMgorLVBlZXJLZXk9Qk9CX2Nm X3NlY3AxMjhyMl9QVUIKKy1TaGFyZWRTZWNyZXQ9OGY0ZDhjNzUxNDFlOWIwODQzMjgyMjI0NDBl YjVkZmEKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVm YXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjcDEyOHIyCistUGVlcktleT1BTElDRV9jZl9zZWNwMTI4 cjJfUFVCCistU2hhcmVkU2VjcmV0PThmNGQ4Yzc1MTQxZTliMDg0MzI4MjIyNDQwZWI1ZGZhCist CistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1EZXJpdmU9QUxJQ0VfY2Zfc2VjcDEyOHIyCistUGVlcktleT1CT0JfY2Zfc2VjcDEyOHIyX1BV QgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9YmFhYTBjMTZlMTZl ZWYyOTEwMDE0NzVkNjM4ZTQ4MzAKKy0KKy0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVlcgor LUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjcDEyOHIyCistUGVlcktl eT1BTElDRV9jZl9zZWNwMTI4cjJfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNo YXJlZFNlY3JldD1iYWFhMGMxNmUxNmVlZjI5MTAwMTQ3NWQ2MzhlNDgzMAorLQorLVB1YmxpY0tl eT1NQUxJQ0VfY2Zfc2VjcDEyOHIyX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCist TURZd0VBWUhLb1pJemowQ0FRWUZLNEVFQUIwRElnQUU2aDZSekpJcDZITFI2UkRPUHR5ekdEdXJr dUU5YUFhWnFIb3NQVG5rTHhRPQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLSMgRUND IENESCBCb2Igd2l0aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2 ZT1CT0JfY2Zfc2VjcDEyOHIyCistUGVlcktleT1NQUxJQ0VfY2Zfc2VjcDEyOHIyX1BVQgorLUN0 cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBv aW50IGF0IGluZmluaXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1B dmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjcDEyOHIyCistUGVlcktl eT1NQUxJQ0VfY2Zfc2VjcDEyOHIyX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1S ZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistVGl0bGU9 c2VjcDE2MGsxIGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9zZWNwMTYwazEK Ky0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRE1DQVFBd0VBWUhLb1pJemowQ0FRWUZL NEVFQUFrRUhEQWFBZ0VCQkJVQWx4VEJPNTBLd0Z3V0tQdGsxcnV0dTY4bSt6ST0KKy0tLS0tLUVO RCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3NlY3AxNjBrMV9QVUIK Ky0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1ENHdFQVlIS29aSXpqMENBUVlGSzRFRUFB a0RLZ0FFY1ZXSWp0UFpuMWNIY2tjbHBuNWpLRENwaFFVVkh4Rk41dFNlRkc5d3NKWlQKKy1FdnFQ eUxTNjR3PT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRl ZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9zZWNwMTYwazE6QUxJQ0VfY2Zfc2VjcDE2 MGsxX1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3NlY3AxNjBrMQorLS0tLS0tQkVHSU4gUFJJ VkFURSBLRVktLS0tLQorLU1ETUNBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQWtFSERBYUFnRUJC QlVBZHJQa29Oa1JWVWxvaXV3enJ1UXN6U1V1d3BZPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0t LS0KKy0KKy1QdWJsaWNLZXk9Qk9CX2NmX3NlY3AxNjBrMV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJ QyBLRVktLS0tLQorLU1ENHdFQVlIS29aSXpqMENBUVlGSzRFRUFBa0RLZ0FFU0dONDFjQWo4Rmc0 cEFKTTdGVUtIaWF3YkNSMGI5dW5NcFpXeHFPS2VXMS8KKy1ieFQvQ3FFa3l3PT0KKy0tLS0tLUVO RCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5 UGFpcj1CT0JfY2Zfc2VjcDE2MGsxOkJPQl9jZl9zZWNwMTYwazFfUFVCCistCistIyBFQ0RIIEFs aWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0Vf Y2Zfc2VjcDE2MGsxCistUGVlcktleT1CT0JfY2Zfc2VjcDE2MGsxX1BVQgorLVNoYXJlZFNlY3Jl dD1iNzM4YTBiZjE3ZjMyNzFhOWExNTViZmRmZTJmMGYxZDUxNDk0ZDQyCistCistIyBFQ0RIIEJv YiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2Nm X3NlY3AxNjBrMQorLVBlZXJLZXk9QUxJQ0VfY2Zfc2VjcDE2MGsxX1BVQgorLVNoYXJlZFNlY3Jl dD1iNzM4YTBiZjE3ZjMyNzFhOWExNTViZmRmZTJmMGYxZDUxNDk0ZDQyCistCistVGl0bGU9c2Vj cDE2MHIxIGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9zZWNwMTYwcjEKKy0t LS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRE1DQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVF QUFnRUhEQWFBZ0VCQkJVQVI2bTEraklCdUpuU0t4OWZIbXlBWWhzblllOD0KKy0tLS0tLUVORCBQ UklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3NlY3AxNjByMV9QVUIKKy0t LS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1ENHdFQVlIS29aSXpqMENBUVlGSzRFRUFBZ0RL Z0FFTzc4R1p1QmFDZkpqSEs5N2M5TjIxeis0bW0zN2I1eDcvSHIzWGM0cFVidGIKKy1Pb05qL0Er Vzl3PT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1 bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9zZWNwMTYwcjE6QUxJQ0VfY2Zfc2VjcDE2MHIx X1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3NlY3AxNjByMQorLS0tLS0tQkVHSU4gUFJJVkFU RSBLRVktLS0tLQorLU1ETUNBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQWdFSERBYUFnRUJCQlVB VHF2ZDU0Smo3VGJuckxBZDJkTVlDcEV4THdzPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K Ky0KKy1QdWJsaWNLZXk9Qk9CX2NmX3NlY3AxNjByMV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBL RVktLS0tLQorLU1ENHdFQVlIS29aSXpqMENBUVlGSzRFRUFBZ0RLZ0FFQktEYkJTUFR3bWIwME1G dk10Sk14UTJZRG1jUE9aSEU4WWJWcjVocDhzNUoKKy1Kd3kxN0ZhTk5nPT0KKy0tLS0tLUVORCBQ VUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFp cj1CT0JfY2Zfc2VjcDE2MHIxOkJPQl9jZl9zZWNwMTYwcjFfUFVCCistCistIyBFQ0RIIEFsaWNl IHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zf c2VjcDE2MHIxCistUGVlcktleT1CT0JfY2Zfc2VjcDE2MHIxX1BVQgorLVNoYXJlZFNlY3JldD0x OTEyZWE3YjliYjFkZTViOGQzY2VmODNlN2E2ZTdhOTE3ODE2NTQxCistCistIyBFQ0RIIEJvYiB3 aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3Nl Y3AxNjByMQorLVBlZXJLZXk9QUxJQ0VfY2Zfc2VjcDE2MHIxX1BVQgorLVNoYXJlZFNlY3JldD0x OTEyZWE3YjliYjFkZTViOGQzY2VmODNlN2E2ZTdhOTE3ODE2NTQxCistCistVGl0bGU9c2VjcDE2 MHIyIGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9zZWNwMTYwcjIKKy0tLS0t LUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRE1DQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUI0 RUhEQWFBZ0VCQkJVQTNJc1ZnNFI0cGFYYVBBVERIdnpmbnZNK3ZqUT0KKy0tLS0tLUVORCBQUklW QVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3NlY3AxNjByMl9QVUIKKy0tLS0t LUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1ENHdFQVlIS29aSXpqMENBUVlGSzRFRUFCNERLZ0FF NFYrMjVZQ3BWa0tGNk5GL1VQYzFTWXhvaFlXY2YzcVQzSkRvUFJobm0vcmoKKy1tU3FDQ0E2Z1V3 PT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9zZWNwMTYwcjI6QUxJQ0VfY2Zfc2VjcDE2MHIyX1BV QgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3NlY3AxNjByMgorLS0tLS0tQkVHSU4gUFJJVkFURSBL RVktLS0tLQorLU1ETUNBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQjRFSERBYUFnRUJCQlVBWVQv NUM3VXBEMTdEblptNE9ic3dtR0ZNSTFRPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0K Ky1QdWJsaWNLZXk9Qk9CX2NmX3NlY3AxNjByMl9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVkt LS0tLQorLU1ENHdFQVlIS29aSXpqMENBUVlGSzRFRUFCNERLZ0FFQjdZVnpCbXpobklkb3V2Ti9u YjhWTVhDcU84ZGtobWVieVZ6b0Qwb0F6dUgKKy1uTitTZldyNmFRPT0KKy0tLS0tLUVORCBQVUJM SUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1C T0JfY2Zfc2VjcDE2MHIyOkJPQl9jZl9zZWNwMTYwcjJfUFVCCistCistIyBFQ0RIIEFsaWNlIHdp dGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2Vj cDE2MHIyCistUGVlcktleT1CT0JfY2Zfc2VjcDE2MHIyX1BVQgorLVNoYXJlZFNlY3JldD1jY2I5 Y2FlNWM5NDg3ZmY2MGM0ODdiZDFiMzlhNjJlYjQ2ODBlOWI2CistCistIyBFQ0RIIEJvYiB3aXRo IEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3NlY3Ax NjByMgorLVBlZXJLZXk9QUxJQ0VfY2Zfc2VjcDE2MHIyX1BVQgorLVNoYXJlZFNlY3JldD1jY2I5 Y2FlNWM5NDg3ZmY2MGM0ODdiZDFiMzlhNjJlYjQ2ODBlOWI2CistCistVGl0bGU9c2VjcDE5Mmsx IGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9zZWNwMTkyazEKKy0tLS0tLUJF R0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRFlDQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUI4RUh6 QWRBZ0VCQkJpa1ZackNaUUI3WnRraE5mUVlwaktIWjlLeFhnb29KOTA9CistLS0tLS1FTkQgUFJJ VkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1BTElDRV9jZl9zZWNwMTkyazFfUFVCCistLS0t LS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRVl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQjhETWdB RXlWNEV6TVpnbEJYdFlkbjM4aE5UckNHZmxBc0pwck1reGtPbHc1OGNoWjI1CistNkVBdTdnVnZZ RFRwblJreW1LeUgKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9 IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9zZWNwMTkyazE6QUxJQ0VfY2Zfc2Vj cDE5MmsxX1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3NlY3AxOTJrMQorLS0tLS0tQkVHSU4g UFJJVkFURSBLRVktLS0tLQorLU1EWUNBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQjhFSHpBZEFn RUJCQmlKUS9QdW5LR2s5UVBVeXFJQkdNZ0hLS2creXhKcjVpbz0KKy0tLS0tLUVORCBQUklWQVRF IEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl9zZWNwMTkyazFfUFVCCistLS0tLS1CRUdJ TiBQVUJMSUMgS0VZLS0tLS0KKy1NRVl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQjhETWdBRTk5MFRu bWg5UVFRSFZIdUxwZnJBc2dqdkI5UjJNSlh6aEJaTjFXdnR4THFGCistT1oyb0ZNUDBLZmNyN0hi STdhNWoKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1 bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2Zfc2VjcDE5MmsxOkJPQl9jZl9zZWNwMTkyazFfUFVC CistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1EZXJpdmU9QUxJQ0VfY2Zfc2VjcDE5MmsxCistUGVlcktleT1CT0JfY2Zfc2VjcDE5MmsxX1BV QgorLVNoYXJlZFNlY3JldD1hNDZhNmJmYjI3OWQ0ZGMzMGNmZmFjNTg1ZDFmYmVjOTA1ZGJlNDZh Y2E1ZTNjOWQKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjcDE5MmsxCistUGVlcktleT1BTElDRV9jZl9zZWNw MTkyazFfUFVCCistU2hhcmVkU2VjcmV0PWE0NmE2YmZiMjc5ZDRkYzMwY2ZmYWM1ODVkMWZiZWM5 MDVkYmU0NmFjYTVlM2M5ZAorLQorLVRpdGxlPXNlY3AyMjRrMSBjdXJ2ZSB0ZXN0cworLQorLVBy aXZhdGVLZXk9QUxJQ0VfY2Zfc2VjcDIyNGsxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0t CistTURzQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFDQUVKREFpQWdFQkJCMEFaUGszVHp4R2hY N1RsakJCaEpETEJmdWxBTXA2QmgzVworLXc0MFF5Zz09CistLS0tLS1FTkQgUFJJVkFURSBLRVkt LS0tLQorLQorLVB1YmxpY0tleT1BTElDRV9jZl9zZWNwMjI0azFfUFVCCistLS0tLS1CRUdJTiBQ VUJMSUMgS0VZLS0tLS0KKy1NRTR3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ0FET2dBRTRvN0xHZEpE aXhxSlo1aW1ucWFYNEllRTU1Tkc0VzBIRWU3MkxWQzdwbW4yCistZTNtN3VDOTJaUWhkdUY5bEps aTRkWEQ1ZW4vMXdrRT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVp biA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9zZWNwMjI0azE6QUxJQ0VfY2Zf c2VjcDIyNGsxX1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3NlY3AyMjRrMQorLS0tLS0tQkVH SU4gUFJJVkFURSBLRVktLS0tLQorLU1Ec0NBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ0FFSkRB aUFnRUJCQjBBZFEwMkdndVJ5M3lIT2pMa3BvV2IyN1FBL0wxYWJmV2UKKy1xMnhVZkE9PQorLS0t LS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9CX2NmX3NlY3AyMjRrMV9Q VUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FNHdFQVlIS29aSXpqMENBUVlGSzRF RUFDQURPZ0FFenAwMG0wRGFBRG4xbUdpRENUN0sxTFpub2ovdkN4SFBvd1VEQzl5UWQxN0sKKy1L cEpNNXNHSUxyVGtrZ3hxdHQ1cEJlWUUxTkMxUVVRPQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0t LQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9zZWNw MjI0azE6Qk9CX2NmX3NlY3AyMjRrMV9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVl cgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9zZWNwMjI0azEKKy1Q ZWVyS2V5PUJPQl9jZl9zZWNwMjI0azFfUFVCCistU2hhcmVkU2VjcmV0PTZmN2I5ZDE2YzljMWQz YTVjODRiNjAyOGYyYTRmZWQ5YWU4ZTAyNDU1ZTY3OGEyNzI0M2JjYzQ4CistCistIyBFQ0RIIEJv YiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2Nm X3NlY3AyMjRrMQorLVBlZXJLZXk9QUxJQ0VfY2Zfc2VjcDIyNGsxX1BVQgorLVNoYXJlZFNlY3Jl dD02ZjdiOWQxNmM5YzFkM2E1Yzg0YjYwMjhmMmE0ZmVkOWFlOGUwMjQ1NWU2NzhhMjcyNDNiY2M0 OAorLQorIFRpdGxlPXNlY3AyNTZrMSBjdXJ2ZSB0ZXN0cworIAorIFByaXZhdGVLZXk9QUxJQ0Vf Y2Zfc2VjcDI1NmsxCitAQCAtMTk5OCwxMzIzICs1NSw2IEBAIERlcml2ZT1CT0JfY2Zfc2VjcDI1 NmsxCisgUGVlcktleT1BTElDRV9jZl9zZWNwMjU2azFfUFVCCisgU2hhcmVkU2VjcmV0PWE0NzQ1 Y2M0ZDE5Y2FiYjllNWNiMGFiZGQ1YzYwNGNhYjI4NDZhNDYzOGFkODQ0ZWQ5MTc1ZjNjYWRkYTJk YTEKKyAKKy1UaXRsZT1zZWN0MTEzcjEgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNF X2NmX3NlY3QxMTNyMQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1DMENBUUF3RUFZ SEtvWkl6ajBDQVFZRks0RUVBQVFFRmpBVUFnRUJCQThBTHc5Q2dzdU5Ca2toaFVIRThiUT0KKy0t LS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3NlY3QxMTNy MV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1EUXdFQVlIS29aSXpqMENBUVlG SzRFRUFBUURJQUFFQVNPOWpjYW1sZzFwUkU3SmZmclRBZTlreVJaTzJ4cnltSFhvR2RuQQorLS0t LS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQ dWJLZXlQYWlyPUFMSUNFX2NmX3NlY3QxMTNyMTpBTElDRV9jZl9zZWN0MTEzcjFfUFVCCistCist UHJpdmF0ZUtleT1CT0JfY2Zfc2VjdDExM3IxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0t CistTUMwQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFBUUVGakFVQWdFQkJBOEEvOXFiczhzVEZO a2pTOS80Q3VNPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9C X2NmX3NlY3QxMTNyMV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1EUXdFQVlI S29aSXpqMENBUVlGSzRFRUFBUURJQUFFQVR5a2FmL2N2SnpMT1V0bzFFYmJBRXovMysrbnV0NnEw ZGNKT1FlVgorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVm YXVsdAorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9zZWN0MTEzcjE6Qk9CX2NmX3NlY3QxMTNyMV9Q VUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVs dAorLURlcml2ZT1BTElDRV9jZl9zZWN0MTEzcjEKKy1QZWVyS2V5PUJPQl9jZl9zZWN0MTEzcjFf UFVCCistU2hhcmVkU2VjcmV0PTAxZWQxNmYxOTQ4ZGNiMzY4YTU0MDA0MjM3ODQyZAorLQorLSMg RUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZl PUJPQl9jZl9zZWN0MTEzcjEKKy1QZWVyS2V5PUFMSUNFX2NmX3NlY3QxMTNyMV9QVUIKKy1TaGFy ZWRTZWNyZXQ9MDFlZDE2ZjE5NDhkY2IzNjhhNTQwMDQyMzc4NDJkCistCistIyBFQ0MgQ0RIIEFs aWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0Vf Y2Zfc2VjdDExM3IxCistUGVlcktleT1CT0JfY2Zfc2VjdDExM3IxX1BVQgorLUN0cmw9ZWNkaF9j b2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDEyZTVmM2UzNDhjMmE4YTg4ZDk1OTBhNjM5 MjE5CistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRl ZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3NlY3QxMTNyMQorLVBlZXJLZXk9QUxJQ0VfY2Zfc2VjdDEx M3IxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDEyZTVm M2UzNDhjMmE4YTg4ZDk1OTBhNjM5MjE5CistCistUHVibGljS2V5PU1BTElDRV9jZl9zZWN0MTEz cjFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRFF3RUFZSEtvWkl6ajBDQVFZ Rks0RUVBQVFESUFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQWQrVHFpQlhuVGQvbHlBL09Gc1IKKy0t LS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGggTWFsaWNlIHBl ZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3NlY3QxMTNyMQorLVBl ZXJLZXk9TUFMSUNFX2NmX3NlY3QxMTNyMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZTox CistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLSMg RUNDIENESCBBbGljZSB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0Cist RGVyaXZlPUFMSUNFX2NmX3NlY3QxMTNyMQorLVBlZXJLZXk9TUFMSUNFX2NmX3NlY3QxMTNyMV9Q VUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJl YXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLVRpdGxlPXNlY3QxMTNyMiBjdXJ2ZSB0ZXN0cwor LQorLVByaXZhdGVLZXk9QUxJQ0VfY2Zfc2VjdDExM3IyCistLS0tLS1CRUdJTiBQUklWQVRFIEtF WS0tLS0tCistTUMwQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFBVUVGakFVQWdFQkJBOEF2b3Zp ckhycVR4b0tKM2wrN3kwPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNL ZXk9QUxJQ0VfY2Zfc2VjdDExM3IyX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCist TURRd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFVRElBQUVBRnZRNEpnUVRTOGtqR2VWZnVJVEFTODFx TmNPUXZ0M1BZYTFIdUNrCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9QUxJQ0VfY2Zfc2VjdDExM3IyOkFMSUNFX2Nm X3NlY3QxMTNyMl9QVUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl9zZWN0MTEzcjIKKy0tLS0tLUJF R0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NQzBDQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFVRUZq QVVBZ0VCQkE4QXJVamd2cC9nb3hSWWI0V3VRODA9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0t LQorLQorLVB1YmxpY0tleT1CT0JfY2Zfc2VjdDExM3IyX1BVQgorLS0tLS0tQkVHSU4gUFVCTElD IEtFWS0tLS0tCistTURRd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFVRElBQUVBVW9TM29mOHkyOG1l WXUvTm9JNUFWZGhKWkN1RGpNcUZIVHJpV1k0CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCist CistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX3NlY3QxMTNy MjpCT0JfY2Zfc2VjdDExM3IyX1BVQgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCist QXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3NlY3QxMTNyMgorLVBlZXJL ZXk9Qk9CX2NmX3NlY3QxMTNyMl9QVUIKKy1TaGFyZWRTZWNyZXQ9MDA1N2EyODdiYTFlYTA1Y2I0 NzM1ZTY3MzY0N2UxCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVp biA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3NlY3QxMTNyMgorLVBlZXJLZXk9QUxJQ0VfY2Zf c2VjdDExM3IyX1BVQgorLVNoYXJlZFNlY3JldD0wMDU3YTI4N2JhMWVhMDVjYjQ3MzVlNjczNjQ3 ZTEKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVm YXVsdAorLURlcml2ZT1BTElDRV9jZl9zZWN0MTEzcjIKKy1QZWVyS2V5PUJPQl9jZl9zZWN0MTEz cjJfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0wMGZlYzI0 NTRlNDY3MzJhY2E0MmIyMmI2ZDRmMTMKKy0KKy0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVl cgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjdDExM3IyCistUGVl cktleT1BTElDRV9jZl9zZWN0MTEzcjJfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQor LVNoYXJlZFNlY3JldD0wMGZlYzI0NTRlNDY3MzJhY2E0MmIyMmI2ZDRmMTMKKy0KKy1QdWJsaWNL ZXk9TUFMSUNFX2NmX3NlY3QxMTNyMl9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQor LU1EUXdFQVlIS29aSXpqMENBUVlGSzRFRUFBVURJQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBUjNk YlBIcmhGZWt6SjdBenNrcgorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLSMgRUNDIENE SCBCb2Igd2l0aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1C T0JfY2Zfc2VjdDExM3IyCistUGVlcktleT1NQUxJQ0VfY2Zfc2VjdDExM3IyX1BVQgorLUN0cmw9 ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50 IGF0IGluZmluaXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFp bGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDExM3IyCistUGVlcktleT1N QUxJQ0VfY2Zfc2VjdDExM3IyX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1 bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistVGl0bGU9c2Vj dDEzMXIxIGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9zZWN0MTMxcjEKKy0t LS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NQzhDQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVF QUJZRUdEQVdBZ0VCQkJFQTVDNnpITVFNN3BYUFo2Y0p6NzJOaXc9PQorLS0tLS0tRU5EIFBSSVZB VEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2Zfc2VjdDEzMXIxX1BVQgorLS0tLS0t QkVHSU4gUFVCTElDIEtFWS0tLS0tCistTURnd0VBWUhLb1pJemowQ0FRWUZLNEVFQUJZREpBQUVC WEN1WEQ2d09PaWY5MUdVbEpOS1hmOEZCTnc4Y3JncWk1YUVKRVpiQ2RCSgorLUFnPT0KKy0tLS0t LUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHVi S2V5UGFpcj1BTElDRV9jZl9zZWN0MTMxcjE6QUxJQ0VfY2Zfc2VjdDEzMXIxX1BVQgorLQorLVBy aXZhdGVLZXk9Qk9CX2NmX3NlY3QxMzFyMQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQor LU1DOENBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQllFR0RBV0FnRUJCQkVEWVptamlva0JKL1Nu VHY4c3NrQlIzQT09CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1C T0JfY2Zfc2VjdDEzMXIxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTURnd0VB WUhLb1pJemowQ0FRWUZLNEVFQUJZREpBQUVCOHZHeTNPUVh3V0tjSlVTU0piQ3RwTUJqRmdKZVp4 ekFhSTQyMCtCMUIrMQorLTVBPT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFp bGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2Zfc2VjdDEzMXIxOkJPQl9j Zl9zZWN0MTMxcjFfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFi bGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDEzMXIxCistUGVlcktleT1CT0Jf Y2Zfc2VjdDEzMXIxX1BVQgorLVNoYXJlZFNlY3JldD0wNTM0NjI0OGY3N2Y4MWZmZjUwY2M2NTZl MTE5OTc2ODcxCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9 IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3NlY3QxMzFyMQorLVBlZXJLZXk9QUxJQ0VfY2Zfc2Vj dDEzMXIxX1BVQgorLVNoYXJlZFNlY3JldD0wNTM0NjI0OGY3N2Y4MWZmZjUwY2M2NTZlMTE5OTc2 ODcxCistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRl ZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDEzMXIxCistUGVlcktleT1CT0JfY2Zfc2VjdDEz MXIxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDFmMTUx YWUyNmVmYTUwN2FjYzI1OTczNTZiYWY3ZThhYgorLQorLSMgRUNDIENESCBCb2Igd2l0aCBBbGlj ZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9zZWN0MTMxcjEK Ky1QZWVyS2V5PUFMSUNFX2NmX3NlY3QxMzFyMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9k ZToxCistU2hhcmVkU2VjcmV0PTAxZjE1MWFlMjZlZmE1MDdhY2MyNTk3MzU2YmFmN2U4YWIKKy0K Ky1QdWJsaWNLZXk9TUFMSUNFX2NmX3NlY3QxMzFyMV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBL RVktLS0tLQorLU1EZ3dFQVlIS29aSXpqMENBUVlGSzRFRUFCWURKQUFFQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFCZmlKRUZHMHZSekVHeGsyQnhqbUsKKy16dz09CistLS0tLS1FTkQgUFVCTElDIEtF WS0tLS0tCistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4g PSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9zZWN0MTMxcjEKKy1QZWVyS2V5PU1BTElDRV9jZl9z ZWN0MTMxcjFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVf RVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0 aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9z ZWN0MTMxcjEKKy1QZWVyS2V5PU1BTElDRV9jZl9zZWN0MTMxcjFfUFVCCistQ3RybD1lY2RoX2Nv ZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5m aW5pdHkKKy0KKy1UaXRsZT1zZWN0MTMxcjIgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFM SUNFX2NmX3NlY3QxMzFyMgorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1DOENBUUF3 RUFZSEtvWkl6ajBDQVFZRks0RUVBQmNFR0RBV0FnRUJCQkVCblpSVUtBUWV0azVreVV3aElhQXl4 Zz09CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1BTElDRV9jZl9z ZWN0MTMxcjJfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRGd3RUFZSEtvWkl6 ajBDQVFZRks0RUVBQmNESkFBRUE1K1kyMEw4cTk4OUk0am5La25aN2hjR2xRNlJVSUduaTlSYWhU ODhrQi9kCistZHc9PQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWlu ID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3NlY3QxMzFyMjpBTElDRV9jZl9z ZWN0MTMxcjJfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zfc2VjdDEzMXIyCistLS0tLS1CRUdJ TiBQUklWQVRFIEtFWS0tLS0tCistTUM4Q0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFCY0VHREFX QWdFQkJCRUJuYWZ4OXZjTWVvQ3FqLzFZTnVmbHp3PT0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0t LS0tCistCistUHVibGljS2V5PUJPQl9jZl9zZWN0MTMxcjJfUFVCCistLS0tLS1CRUdJTiBQVUJM SUMgS0VZLS0tLS0KKy1NRGd3RUFZSEtvWkl6ajBDQVFZRks0RUVBQmNESkFBRUIyRzJ1TmtoUU5q amwwL092NlVZcHhvRmFXTlhPK3F5N3BvVjZjZHJGTjd6CistcEE9PQorLS0tLS0tRU5EIFBVQkxJ QyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUJP Ql9jZl9zZWN0MTMxcjI6Qk9CX2NmX3NlY3QxMzFyMl9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0 aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9zZWN0 MTMxcjIKKy1QZWVyS2V5PUJPQl9jZl9zZWN0MTMxcjJfUFVCCistU2hhcmVkU2VjcmV0PTA1OGQ4 YThiZTMzMDY4ZWQ4YzFkYzlmNTUxZWYyYzNmM2MKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2Ug cGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjdDEzMXIyCist UGVlcktleT1BTElDRV9jZl9zZWN0MTMxcjJfUFVCCistU2hhcmVkU2VjcmV0PTA1OGQ4YThiZTMz MDY4ZWQ4YzFkYzlmNTUxZWYyYzNmM2MKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2IgcGVl cgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9zZWN0MTMxcjIKKy1Q ZWVyS2V5PUJPQl9jZl9zZWN0MTMxcjJfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQor LVNoYXJlZFNlY3JldD0wMzdiMTZkODVmMjdjMmM4NzhlZjk2Yzc5YTUzNmY4OWE1CistCistIyBF Q0MgQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJp dmU9Qk9CX2NmX3NlY3QxMzFyMgorLVBlZXJLZXk9QUxJQ0VfY2Zfc2VjdDEzMXIyX1BVQgorLUN0 cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDM3YjE2ZDg1ZjI3YzJjODc4 ZWY5NmM3OWE1MzZmODlhNQorLQorLVB1YmxpY0tleT1NQUxJQ0VfY2Zfc2VjdDEzMXIyX1BVQgor LS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTURnd0VBWUhLb1pJemowQ0FRWUZLNEVFQUJj REpBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUdHNWZpSWJneml3QlpIVnpUWXFDWQorLTF3PT0K Ky0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGggTWFsaWNl IHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3NlY3QxMzFyMgor LVBlZXJLZXk9TUFMSUNFX2NmX3NlY3QxMzFyMl9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9k ZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQor LSMgRUNDIENESCBBbGljZSB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0 CistRGVyaXZlPUFMSUNFX2NmX3NlY3QxMzFyMgorLVBlZXJLZXk9TUFMSUNFX2NmX3NlY3QxMzFy Ml9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgor LVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLVRpdGxlPXNlY3QxNjNyMSBjdXJ2ZSB0ZXN0 cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2Zfc2VjdDE2M3IxCistLS0tLS1CRUdJTiBQUklWQVRF IEtFWS0tLS0tCistTURNQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFBSUVIREFhQWdFQkJCVUFs Ym40eDFVR0puQWltc1h1ZkIvVXZVYXhVNVU9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQor LQorLVB1YmxpY0tleT1BTElDRV9jZl9zZWN0MTYzcjFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMg S0VZLS0tLS0KKy1NRUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQUlETEFBRUEwZjE5NUhDY0Q0RCs3 d1d5bDNRdVBrUm92Ry9BVHk1bDdmcE1sNEJOSWcvCistc2J0RVhsdUN6QU5GCistLS0tLS1FTkQg UFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBh aXI9QUxJQ0VfY2Zfc2VjdDE2M3IxOkFMSUNFX2NmX3NlY3QxNjNyMV9QVUIKKy0KKy1Qcml2YXRl S2V5PUJPQl9jZl9zZWN0MTYzcjEKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRE1D QVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFJRUhEQWFBZ0VCQkJVQW9TdHE2RmpiN25CMlBOTDZX cnpLS3FoQ0dkRT0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJP Ql9jZl9zZWN0MTYzcjFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRUF3RUFZ SEtvWkl6ajBDQVFZRks0RUVBQUlETEFBRUF1bC9vQktyOUI1TXNQSFdHRitxMDdqMEpDK1dBeGox SnpmY0lYUjk4bityCistOUZIV1U1TEM1cERNCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCist CistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX3NlY3QxNjNy MTpCT0JfY2Zfc2VjdDE2M3IxX1BVQgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCist QXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3NlY3QxNjNyMQorLVBlZXJL ZXk9Qk9CX2NmX3NlY3QxNjNyMV9QVUIKKy1TaGFyZWRTZWNyZXQ9MDYxMzVlZWY0ODlmZTYxM2Mw ZDhiZDUyMmEyYTY0MGZmN2FlNmZiNzNkCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIK Ky1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3NlY3QxNjNyMQorLVBlZXJL ZXk9QUxJQ0VfY2Zfc2VjdDE2M3IxX1BVQgorLVNoYXJlZFNlY3JldD0wNjEzNWVlZjQ4OWZlNjEz YzBkOGJkNTIyYTJhNjQwZmY3YWU2ZmI3M2QKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2Ig cGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9zZWN0MTYzcjEK Ky1QZWVyS2V5PUJPQl9jZl9zZWN0MTYzcjFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6 MQorLVNoYXJlZFNlY3JldD0wNTgwZjVlOGVmYjI0MmExOWFlMTAyM2FjYmNhYjg3MDJjNzk5NzUx ZTcKKy0KKy0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVm YXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjdDE2M3IxCistUGVlcktleT1BTElDRV9jZl9zZWN0MTYz cjFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0wNTgwZjVl OGVmYjI0MmExOWFlMTAyM2FjYmNhYjg3MDJjNzk5NzUxZTcKKy0KKy1QdWJsaWNLZXk9TUFMSUNF X2NmX3NlY3QxNjNyMV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FQXdFQVlI S29aSXpqMENBUVlGSzRFRUFBSURMQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFKa1hv bFZ1R0ZhOGZxbWsKKy1jczBCdjdpSnVWZzEKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0K Ky0jIEVDQyBDREggQm9iIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1EZXJpdmU9Qk9CX2NmX3NlY3QxNjNyMQorLVBlZXJLZXk9TUFMSUNFX2NmX3NlY3QxNjNyMV9Q VUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJl YXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLSMgRUNDIENESCBBbGljZSB3aXRoIE1hbGljZSBw ZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3NlY3QxNjNyMQor LVBlZXJLZXk9TUFMSUNFX2NmX3NlY3QxNjNyMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9k ZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQor LVRpdGxlPXNlY3QxOTNyMSBjdXJ2ZSB0ZXN0cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2Zfc2Vj dDE5M3IxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURjQ0FRQXdFQVlIS29aSXpq MENBUVlGSzRFRUFCZ0VJREFlQWdFQkJCa0FDbWN2aWRLV0x0UEZCMnhxZzc2RjhWaE0xTmp6cmtn bworLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2Zfc2Vj dDE5M3IxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUVnd0VBWUhLb1pJemow Q0FRWUZLNEVFQUJnRE5BQUVBZXFQMFZRb2JlbmR1d3RmNE1QbWxZUVZEalVteEtxNTBRRkhuYUJm endYWQorLTFUWVNoWlpnQnIwUjZhNWRVR0NiaUYwPQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0t LQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3Nl Y3QxOTNyMTpBTElDRV9jZl9zZWN0MTkzcjFfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zfc2Vj dDE5M3IxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURjQ0FRQXdFQVlIS29aSXpq MENBUVlGSzRFRUFCZ0VJREFlQWdFQkJCa0FLbFNrblE2NnZwdUxqQzFtYlF5ZkhPVGRKNUt3NWpN aAorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9CX2NmX3NlY3Qx OTNyMV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FZ3dFQVlIS29aSXpqMENB UVlGSzRFRUFCZ0ROQUFFQWFGWlZJZXFmVjl3YlB5ZGFCU0pLU1dKalZ5RlZTQi9RUUI1ckhvbllR bUsKKy1mNDB6b2s4UEpTNnJhdEljWndrL24yMD0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0K Ky0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2Zfc2VjdDE5 M3IxOkJPQl9jZl9zZWN0MTkzcjFfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIK Ky1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDE5M3IxCistUGVl cktleT1CT0JfY2Zfc2VjdDE5M3IxX1BVQgorLVNoYXJlZFNlY3JldD0wMTJiODg0OTk5MTgxNGY4 YzdlZDlkNDBjZjlkYzIwNGMzYTgzZTBiMTA2NzU1NDNhNQorLQorLSMgRUNESCBCb2Igd2l0aCBB bGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9zZWN0MTkz cjEKKy1QZWVyS2V5PUFMSUNFX2NmX3NlY3QxOTNyMV9QVUIKKy1TaGFyZWRTZWNyZXQ9MDEyYjg4 NDk5OTE4MTRmOGM3ZWQ5ZDQwY2Y5ZGMyMDRjM2E4M2UwYjEwNjc1NTQzYTUKKy0KKy0jIEVDQyBD REggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1B TElDRV9jZl9zZWN0MTkzcjEKKy1QZWVyS2V5PUJPQl9jZl9zZWN0MTkzcjFfUFVCCistQ3RybD1l Y2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0wMTEwMTgwYTE4ODQ0ODU5YzUyZjZm MDEyOTA5NTIyYTJkODdiNWFiMTQzYmM4MGE1NQorLQorLSMgRUNDIENESCBCb2Igd2l0aCBBbGlj ZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9zZWN0MTkzcjEK Ky1QZWVyS2V5PUFMSUNFX2NmX3NlY3QxOTNyMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9k ZToxCistU2hhcmVkU2VjcmV0PTAxMTAxODBhMTg4NDQ4NTljNTJmNmYwMTI5MDk1MjJhMmQ4N2I1 YWIxNDNiYzgwYTU1CistCistUHVibGljS2V5PU1BTElDRV9jZl9zZWN0MTkzcjFfUFVCCistLS0t LS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRWd3RUFZSEtvWkl6ajBDQVFZRks0RUVBQmdETkFB RUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFIZVg3UFgzZTVuCistelJPVWc2L1NU a0xwMUQrTDUxTDkrd1k9CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0MgQ0RI IEJvYiB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJP Ql9jZl9zZWN0MTkzcjEKKy1QZWVyS2V5PU1BTElDRV9jZl9zZWN0MTkzcjFfUFVCCistQ3RybD1l Y2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQg YXQgaW5maW5pdHkKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBNYWxpY2UgcGVlcgorLUF2YWls YWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9zZWN0MTkzcjEKKy1QZWVyS2V5PU1B TElDRV9jZl9zZWN0MTkzcjFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3Vs dD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy1UaXRsZT1zZWN0 MTkzcjIgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX2NmX3NlY3QxOTNyMgorLS0t LS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1EY0NBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVB QmtFSURBZUFnRUJCQmtBaGprdjhsWEsvblBwM1FjNEl3TC8yOUpVS1dpMlZCTXAKKy0tLS0tLUVO RCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3NlY3QxOTNyMl9QVUIK Ky0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FZ3dFQVlIS29aSXpqMENBUVlGSzRFRUFC a0ROQUFFQUluN29TdTNhZHU0Q2hOWG5pSEtrTUl2OWdUMjRycHp6d0FlQ1REUElrVVQKKy1rSitU aXQ2ZTRScGdrQi9kcGg0Vit1ST0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFp bGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9zZWN0MTkzcjI6QUxJ Q0VfY2Zfc2VjdDE5M3IyX1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3NlY3QxOTNyMgorLS0t LS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1EY0NBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVB QmtFSURBZUFnRUJCQmtBd0drUjNxU1FkZmg3UTZLYko0bEg1RlNoR3NYOG8vakQKKy0tLS0tLUVO RCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl9zZWN0MTkzcjJfUFVCCist LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRWd3RUFZSEtvWkl6ajBDQVFZRks0RUVBQmtE TkFBRUFGZFNMS0kwdGx3WkRwa25kdXRPTHNuSGlpMWFKTzhzbndFSjBtL0FaZ01wCisteGlEZXZP US94RTlTcE1YMjVXN1lxa1U9CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxh YmxlaW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX3NlY3QxOTNyMjpCT0JfY2Zf c2VjdDE5M3IyX1BVQgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3NlY3QxOTNyMgorLVBlZXJLZXk9Qk9CX2Nm X3NlY3QxOTNyMl9QVUIKKy1TaGFyZWRTZWNyZXQ9MDFlMmY2NmE2M2MyNGMxZGU4YTM5OWM0ODQy MjhhNWFkNWI2ZDkxMWM2ZTVlODNhZTMKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgor LUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjdDE5M3IyCistUGVlcktl eT1BTElDRV9jZl9zZWN0MTkzcjJfUFVCCistU2hhcmVkU2VjcmV0PTAxZTJmNjZhNjNjMjRjMWRl OGEzOTljNDg0MjI4YTVhZDViNmQ5MTFjNmU1ZTgzYWUzCistCistIyBFQ0MgQ0RIIEFsaWNlIHdp dGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2Vj dDE5M3IyCistUGVlcktleT1CT0JfY2Zfc2VjdDE5M3IyX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rv cl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDBiYzgyZDM5M2JkNzQ0MDY2ODNhZWEwMDM5NzdhODZh MTA5ZjQ0NGE4MzM2NTJlNDMKKy0KKy0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2 YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjdDE5M3IyCistUGVlcktleT1B TElDRV9jZl9zZWN0MTkzcjJfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJl ZFNlY3JldD0wMGJjODJkMzkzYmQ3NDQwNjY4M2FlYTAwMzk3N2E4NmExMDlmNDQ0YTgzMzY1MmU0 MworLQorLVB1YmxpY0tleT1NQUxJQ0VfY2Zfc2VjdDE5M3IyX1BVQgorLS0tLS0tQkVHSU4gUFVC TElDIEtFWS0tLS0tCistTUVnd0VBWUhLb1pJemowQ0FRWUZLNEVFQUJrRE5BQUVBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRmZkTEVrcnZzTworLVk3KzZRcEV2T2F5OUE0TUpDVVpm Wm1JPQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLSMgRUNDIENESCBCb2Igd2l0aCBN YWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjdDE5 M3IyCistUGVlcktleT1NQUxJQ0VfY2Zfc2VjdDE5M3IyX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rv cl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5 CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRl ZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDE5M3IyCistUGVlcktleT1NQUxJQ0VfY2Zfc2Vj dDE5M3IyX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VS Uk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistVGl0bGU9c2VjdDIzOWsxIGN1cnZl IHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl9zZWN0MjM5azEKKy0tLS0tLUJFR0lOIFBS SVZBVEUgS0VZLS0tLS0KKy1NRHdDQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFNRUpUQWpBZ0VC QkI0RzRuYlFEVXRUbmtyUE92REdJbGhIOVhkamlyVVNiVEk1CistNXo2bGY3bz0KKy0tLS0tLUVO RCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3NlY3QyMzlrMV9QVUIK Ky0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1GSXdFQVlIS29aSXpqMENBUVlGSzRFRUFB TURQZ0FFZjVwYU9NanpjbnBWQVBNUW5Ja2lrRTRLMmpuZTN1YlgyVEQxUDNhZWRrbkYKKy1sVXI2 dE9VNEJzaVVRSkFDRjkwclE5L0tkZVI1bVl2WUh6dkkKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0t LS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9z ZWN0MjM5azE6QUxJQ0VfY2Zfc2VjdDIzOWsxX1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3Nl Y3QyMzlrMQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1Ed0NBUUF3RUFZSEtvWkl6 ajBDQVFZRks0RUVBQU1FSlRBakFnRUJCQjRlMEYwTnBlcEFGK2lOckV0b1plbzRUclFGc3BrVU5M Y3gKKy1MeTRLbGZnPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9 Qk9CX2NmX3NlY3QyMzlrMV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1GSXdF QVlIS29aSXpqMENBUVlGSzRFRUFBTURQZ0FFS25qSjRSSGUrRWlFbFhNckY0b3U3Vkd5MXBuMFpp TzE3Rm91RjMxWmJ2amMKKy1UY2JoZkU2emlYTThzZWtRSkJ3Y3dSS1E5K0cvUXpxLzJBOXgKKy0t LS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2 UHViS2V5UGFpcj1CT0JfY2Zfc2VjdDIzOWsxOkJPQl9jZl9zZWN0MjM5azFfUFVCCistCistIyBF Q0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9 QUxJQ0VfY2Zfc2VjdDIzOWsxCistUGVlcktleT1CT0JfY2Zfc2VjdDIzOWsxX1BVQgorLVNoYXJl ZFNlY3JldD0wZWY1NGM3YjdkYmY1NWQ0Mjc4ZTdhNjkyNGRjNDgzM2M2M2VjNzA4ZTgyMGQ1MDFj YWNkZmI0OTM1ZDUKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWlu ID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjdDIzOWsxCistUGVlcktleT1BTElDRV9jZl9z ZWN0MjM5azFfUFVCCistU2hhcmVkU2VjcmV0PTBlZjU0YzdiN2RiZjU1ZDQyNzhlN2E2OTI0ZGM0 ODMzYzYzZWM3MDhlODIwZDUwMWNhY2RmYjQ5MzVkNQorLQorLSMgRUNDIENESCBBbGljZSB3aXRo IEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3NlY3Qy MzlrMQorLVBlZXJLZXk9Qk9CX2NmX3NlY3QyMzlrMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3Jf bW9kZToxCistU2hhcmVkU2VjcmV0PTU5MmU0YjMzYWM5OTYyNGZlN2YyZjg3OWNmNTJmMTJhNzBm MTg5YzVkOTA3ODVkYjI2YTEyZTBhNDZjMAorLQorLSMgRUNDIENESCBCb2Igd2l0aCBBbGljZSBw ZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9zZWN0MjM5azEKKy1Q ZWVyS2V5PUFMSUNFX2NmX3NlY3QyMzlrMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZTox CistU2hhcmVkU2VjcmV0PTU5MmU0YjMzYWM5OTYyNGZlN2YyZjg3OWNmNTJmMTJhNzBmMTg5YzVk OTA3ODVkYjI2YTEyZTBhNDZjMAorLQorLVB1YmxpY0tleT1NQUxJQ0VfY2Zfc2VjdDIzOWsxX1BV QgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZJd0VBWUhLb1pJemowQ0FRWUZLNEVF QUFNRFBnQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQQorLUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQgorLS0tLS0tRU5EIFBVQkxJQyBLRVkt LS0tLQorLQorLSMgRUNDIENESCBCb2Igd2l0aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfc2VjdDIzOWsxCistUGVlcktleT1NQUxJQ0VfY2Zfc2Vj dDIzOWsxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VS Uk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGgg TWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2Vj dDIzOWsxCistUGVlcktleT1NQUxJQ0VfY2Zfc2VjdDIzOWsxX1BVQgorLUN0cmw9ZWNkaF9jb2Zh Y3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmlu aXR5CistCistVGl0bGU9d2FwLXdzZy1pZG0tZWNpZC13dGxzMTAgY3VydmUgdGVzdHMKKy0KKy1Q cml2YXRlS2V5PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczEwCistLS0tLS1CRUdJTiBQ UklWQVRFIEtFWS0tLS0tCistTURzQ0FRQXdFQVlIS29aSXpqMENBUVlGWnlzQkJBb0VKREFpQWdF QkJCMXp2RE1IR2djeXRrYTVLdmx2UXZKelRBNGwydHMyTnpCcAorLVNKaUd5dz09CistLS0tLS1F TkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1BTElDRV9jZl93YXAtd3NnLWlkbS1l Y2lkLXd0bHMxMF9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1GSXdFQVlIS29a SXpqMENBUVlGWnlzQkJBb0RQZ0FFQVprcmhXQnovUTRHQjhEWTRJYTExNGV3Nkg3RWc3cmkydXh3 eGQzckFaczUKKy0vU2h2dW5OeW5kakN0M1FhcThzdWxCTTBuVXlFUlNEYWt5RCsKKy0tLS0tLUVO RCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5 UGFpcj1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMDpBTElDRV9jZl93YXAtd3NnLWlk bS1lY2lkLXd0bHMxMF9QVUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl93YXAtd3NnLWlkbS1lY2lk LXd0bHMxMAorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1Ec0NBUUF3RUFZSEtvWkl6 ajBDQVFZRlp5c0JCQW9FSkRBaUFnRUJCQjFTb3drSFU3OVBxb2tPZmdsbE41M3JOUzhhM2gxd0ZC WTAKKy1kS1BrUWc9PQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9 Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczEwX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtF WS0tLS0tCistTUZJd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFvRFBnQUVBR2F2dzRDaEhDb1dwbEF1 bU1FQndKZ0oyYVl0dyt1dHU0dmhXbnNjQVBJVAorLUlKNElpSUdqMThyQ0ZCYXAxc2dWYnBYamhF QkxZZzZJdHd2MgorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMDpC T0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMTBfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGgg Qm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfd2FwLXdz Zy1pZG0tZWNpZC13dGxzMTAKKy1QZWVyS2V5PUJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMx MF9QVUIKKy1TaGFyZWRTZWNyZXQ9MDE5NGVmNWQ4MGZkZmU5ZGYzNjZiMjI3M2I5ODNjM2RiZDQ0 MGZhZjc2OTY0ZmNmYzA2YzUwOWYyODlkCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIK Ky1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQt d3RsczEwCistUGVlcktleT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMF9QVUIKKy1T aGFyZWRTZWNyZXQ9MDE5NGVmNWQ4MGZkZmU5ZGYzNjZiMjI3M2I5ODNjM2RiZDQ0MGZhZjc2OTY0 ZmNmYzA2YzUwOWYyODlkCistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFp bGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxz MTAKKy1QZWVyS2V5PUJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMF9QVUIKKy1DdHJsPWVj ZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTAxYmVkYzVjZGY2M2ZiZjE4YzNlMmJj OTc2NWUxMmY3OTkwYzBjMGM2NGYwMjY3YWU3YzM3YjlmNDlmMAorLQorLSMgRUNDIENESCBCb2Ig d2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl93 YXAtd3NnLWlkbS1lY2lkLXd0bHMxMAorLVBlZXJLZXk9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNp ZC13dGxzMTBfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0w MWJlZGM1Y2RmNjNmYmYxOGMzZTJiYzk3NjVlMTJmNzk5MGMwYzBjNjRmMDI2N2FlN2MzN2I5ZjQ5 ZjAKKy0KKy1QdWJsaWNLZXk9TUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczEwX1BVQgor LS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZJd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFv RFBnQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQQorLUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQgorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0t LQorLQorLSMgRUNDIENESCBCb2Igd2l0aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVm YXVsdAorLURlcml2ZT1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMTAKKy1QZWVyS2V5PU1B TElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMF9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3Jf bW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQor LQorLSMgRUNDIENESCBBbGljZSB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZh dWx0CistRGVyaXZlPUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczEwCistUGVlcktleT1N QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMTBfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9y X21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkK Ky0KKy1UaXRsZT13YXAtd3NnLWlkbS1lY2lkLXd0bHMxMSBjdXJ2ZSB0ZXN0cworLQorLVByaXZh dGVLZXk9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMTEKKy0tLS0tLUJFR0lOIFBSSVZB VEUgS0VZLS0tLS0KKy1NRHdDQVFBd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFzRUpUQWpBZ0VCQkI0 QWt6UzN6b3FITkNMdWcvbndvWU1RVzNVaWdtWjl0NTZrCistNWpwK0ZpWT0KKy0tLS0tLUVORCBQ UklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQt d3RsczExX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZJd0VBWUhLb1pJemow Q0FRWUZaeXNCQkFzRFBnQUVBQnR0Z0tLWWVHWlJtY0gvNVVaUjU2bE9TZ2JVNFRIMkF1SWh2ajg4 QUw2SAorLXpUQ1g5ZWx6WHBjayt1MjJibm1rdXZMMkE4WEtCNStmYWJNUgorLS0tLS0tRU5EIFBV QkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWly PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczExOkFMSUNFX2NmX3dhcC13c2ctaWRtLWVj aWQtd3RsczExX1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3Rs czExCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUR3Q0FRQXdFQVlIS29aSXpqMENB UVlGWnlzQkJBc0VKVEFqQWdFQkJCNEFXVTA1bWJxUHhzQjc0OWxsTk9OMS8vbDB3OFJKSjN6NQor LWgva3pmTk09CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0Jf Y2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMTFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0t LS0KKy1NRkl3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQXNEUGdBRUFMNlhqL0tDbVhBUUFBbzg0N3Qw Ymwwd3FCcnRlV1JnOTNPdklKc1BBQU9FCistZWhkSWdKeXJ1YzNLc0gwUkZsaXB1NVFEOHBuR1NJ WHZpZjE5CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZh dWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczExOkJPQl9j Zl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMV9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2Ig cGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl93YXAtd3NnLWlk bS1lY2lkLXd0bHMxMQorLVBlZXJLZXk9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczExX1BV QgorLVNoYXJlZFNlY3JldD0wMWFjOGEyM2RkZWVhZmI0ZDNiYjI0M2ZlNDA5ZjJmOWM4YjFhM2Zj MTFkNDY5MGRhNTgzZjJlMjE2MzcKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2 YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxz MTEKKy1QZWVyS2V5PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczExX1BVQgorLVNoYXJl ZFNlY3JldD0wMWFjOGEyM2RkZWVhZmI0ZDNiYjI0M2ZlNDA5ZjJmOWM4YjFhM2ZjMTFkNDY5MGRh NTgzZjJlMjE2MzcKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJs ZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMQor LVBlZXJLZXk9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczExX1BVQgorLUN0cmw9ZWNkaF9j b2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDFiOTk5Mjk5MjU3MmQzYTU5ZDQyNGY4Yzlj YzE5NTU3NjQ2MWVkNmMxZGFkZjZmYjUyMzcxN2ZhYjE5CistCistIyBFQ0MgQ0RIIEJvYiB3aXRo IEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3dhcC13 c2ctaWRtLWVjaWQtd3RsczExCistUGVlcktleT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0 bHMxMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTAxYjk5 OTI5OTI1NzJkM2E1OWQ0MjRmOGM5Y2MxOTU1NzY0NjFlZDZjMWRhZGY2ZmI1MjM3MTdmYWIxOQor LQorLVB1YmxpY0tleT1NQUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMTFfUFVCCistLS0t LS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRkl3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQXNEUGdB RUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBWWY0CistVmllNWVIVG5S KzR4NEcxeHlxN3FVdklTVStYNVJ0QmgycEU0CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCist CistIyBFQ0MgQ0RIIEJvYiB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0 CistRGVyaXZlPUJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMQorLVBlZXJLZXk9TUFMSUNF X2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczExX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2Rl OjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCist IyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1EZXJpdmU9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMTEKKy1QZWVyS2V5PU1BTElD RV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9k ZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQor LVRpdGxlPXdhcC13c2ctaWRtLWVjaWQtd3RsczEyIGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtl eT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMgorLS0tLS0tQkVHSU4gUFJJVkFURSBL RVktLS0tLQorLU1Eb0NBUUF3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQXdFSXpBaEFnRUJCQnh3dmxs OUViOW1tMlhhZHExZXZJaTF6SUsrNnUwTnY4YlAKKy1MSTlhCistLS0tLS1FTkQgUFJJVkFURSBL RVktLS0tLQorLQorLVB1YmxpY0tleT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMl9Q VUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FNHdFQVlIS29aSXpqMENBUVlGWnlz QkJBd0RPZ0FFMHQwV3FHL3BGc2lDdDZhZ21lYnczRkNFV0F6ZjlCcE5MdXpvQ2tQRWUwTGkKKy1i cW41dWRyY2tMNnMzc3R3Q1RWRmFaVWZZMnFTOVFFPQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0t LQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3dh cC13c2ctaWRtLWVjaWQtd3RsczEyOkFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczEyX1BV QgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczEyCistLS0tLS1C RUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURvQ0FRQXdFQVlIS29aSXpqMENBUVlGWnlzQkJBd0VJ ekFoQWdFQkJCeis1UDZncHFYeGJlWHZ2YUQ1VzlGdDY5QlR4Y243emM2cQorLUszQXgKKy0tLS0t LUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl93YXAtd3NnLWlkbS1l Y2lkLXd0bHMxMl9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FNHdFQVlIS29a SXpqMENBUVlGWnlzQkJBd0RPZ0FFdnl4ZWRxYVdrb0FPTWphVjVXMy90SnBoZWlIQVIwelY2QmxJ ZVV1R1AybXgKKy0reHNPSzkvUUI3aHppcHE5Y1h4MUsvZFh1NThFb1NZPQorLS0tLS0tRU5EIFBV QkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWly PUJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMjpCT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13 dGxzMTJfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9 IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMTIKKy1QZWVy S2V5PUJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxMl9QVUIKKy1TaGFyZWRTZWNyZXQ9YTNi M2YyMGFmOGMzM2EwZjVjMjQ2YjRiOWQ5ZGRhMWNkNDBjMjk0ZDFmNTMzNjVkMThhOGI1NGIKKy0K Ky0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURl cml2ZT1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMTIKKy1QZWVyS2V5PUFMSUNFX2NmX3dh cC13c2ctaWRtLWVjaWQtd3RsczEyX1BVQgorLVNoYXJlZFNlY3JldD1hM2IzZjIwYWY4YzMzYTBm NWMyNDZiNGI5ZDlkZGExY2Q0MGMyOTRkMWY1MzM2NWQxOGE4YjU0YgorLQorLVRpdGxlPXdhcC13 c2ctaWRtLWVjaWQtd3RsczEgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX2NmX3dh cC13c2ctaWRtLWVjaWQtd3RsczEKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NQ3dD QVFBd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFFRUZUQVRBZ0VCQkE1Wk5BU1R0NC9nNlhQUXdSaVEw UT09CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1BTElDRV9jZl93 YXAtd3NnLWlkbS1lY2lkLXd0bHMxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCist TURRd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFFRElBQUVBQ0JOUEk0OHh4c1BWUUJ5MDdqUkFBY1d6 YklrTW84QlFvdHhwZkdKCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistUHJpdlB1YktleVBhaXI9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13 dGxzMTpBTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxX1BVQgorLQorLVByaXZhdGVLZXk9 Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczEKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0t LS0KKy1NQ3dDQVFBd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFFRUZUQVRBZ0VCQkE2KzB4OXFrME5J S0hTUnZsVGVtUT09CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1C T0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVkt LS0tLQorLU1EUXdFQVlIS29aSXpqMENBUVlGWnlzQkJBRURJQUFFQUVlSE1TQlR4L0V0T3UrYmpC aW5BTEhTa1F1SnlpUDNtZzF0dStJMgorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2 YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl93YXAtd3NnLWlkbS1l Y2lkLXd0bHMxOkJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxX1BVQgorLQorLSMgRUNESCBB bGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNF X2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczEKKy1QZWVyS2V5PUJPQl9jZl93YXAtd3NnLWlkbS1l Y2lkLXd0bHMxX1BVQgorLVNoYXJlZFNlY3JldD0wMDQwYmEyZmFkYzFkYTk3Yzk3M2U1ZTU5YWRl MzEKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVs dAorLURlcml2ZT1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMQorLVBlZXJLZXk9QUxJQ0Vf Y2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMV9QVUIKKy1TaGFyZWRTZWNyZXQ9MDA0MGJhMmZhZGMx ZGE5N2M5NzNlNWU1OWFkZTMxCistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1B dmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13 dGxzMQorLVBlZXJLZXk9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczFfUFVCCistQ3RybD1l Y2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0wMDg5MTk2OTYyMTVhODllMDNkNmM0 YzkyNjVkNmIKKy0KKy0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWlu ID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMQorLVBlZXJL ZXk9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0 b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTAwODkxOTY5NjIxNWE4OWUwM2Q2YzRjOTI2NWQ2Ygor LQorLVB1YmxpY0tleT1NQUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMV9QVUIKKy0tLS0t LUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1EUXdFQVlIS29aSXpqMENBUVlGWnlzQkJBRURJQUFF QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQgorLS0tLS0tRU5EIFBVQkxJ QyBLRVktLS0tLQorLQorLSMgRUNDIENESCBCb2Igd2l0aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJs ZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMQorLVBl ZXJLZXk9TUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczFfUFVCCistQ3RybD1lY2RoX2Nv ZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5m aW5pdHkKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJsZWlu ID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMxCistUGVl cktleT1NQUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMV9QVUIKKy1DdHJsPWVjZGhfY29m YWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZp bml0eQorLQorLVRpdGxlPXdhcC13c2ctaWRtLWVjaWQtd3RsczMgY3VydmUgdGVzdHMKKy0KKy1Q cml2YXRlS2V5PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczMKKy0tLS0tLUJFR0lOIFBS SVZBVEUgS0VZLS0tLS0KKy1NRE1DQVFBd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFNRUhEQWFBZ0VC QkJVRE8yY0hicVFCVXh1SkJsNlVUOVVyYXN1UlZyST0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0t LS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczNfUFVCCist LS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRUF3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQU1E TEFBRUJSSXp2SzlvN2VPMk5HbXRQRlYvem85LzFtbHZCd2pHNytlNmhiUEcxS2RJCistMDFmOG9H QnVYTVFICistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZh dWx0CistUHJpdlB1YktleVBhaXI9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMzpBTElD RV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMzX1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3dh cC13c2ctaWRtLWVjaWQtd3RsczMKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRE1D QVFBd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFNRUhEQWFBZ0VCQkJVQWhadjlXWjAwYkRuVTlNT2Fx RWVnUDc3MW5lcz0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJP Ql9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMzX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0t LS0tCistTUVBd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFNRExBQUVBWU9zcGpFYnp5Wnc2MWpDdFVy eEFScit3NjZuQkgrNzNRSXZsYVJWU0cvNAorLWhsQlVmNWttRzRZbgorLS0tLS0tRU5EIFBVQkxJ QyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUJP Ql9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMzOkJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMz X1BVQgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZh dWx0CistRGVyaXZlPUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczMKKy1QZWVyS2V5PUJP Ql9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHMzX1BVQgorLVNoYXJlZFNlY3JldD0wMzExOTI0NDI4 YTgzOWI3ZGNhZGE2NjI3MjI5NDVlNjJiZjExMzFmNGYKKy0KKy0jIEVDREggQm9iIHdpdGggQWxp Y2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfd2FwLXdzZy1p ZG0tZWNpZC13dGxzMworLVBlZXJLZXk9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzM19Q VUIKKy1TaGFyZWRTZWNyZXQ9MDMxMTkyNDQyOGE4MzliN2RjYWRhNjYyNzIyOTQ1ZTYyYmYxMTMx ZjRmCistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRl ZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMworLVBlZXJLZXk9 Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczNfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21v ZGU6MQorLVNoYXJlZFNlY3JldD0wNDdmMWFlZTZhMWExZDdjOWMxZjBlOGRjZTQzNDk0MjlmNzM3 YWE2NTgKKy0KKy0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzMworLVBlZXJLZXk9 QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzM19QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3Jf bW9kZToxCistU2hhcmVkU2VjcmV0PTA0N2YxYWVlNmExYTFkN2M5YzFmMGU4ZGNlNDM0OTQyOWY3 MzdhYTY1OAorLQorLVB1YmxpY0tleT1NQUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzM19Q VUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1FQXdFQVlIS29aSXpqMENBUVlGWnlz QkJBTURMQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEKKy1B QUFBQUFBQUFBQUIKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9i IHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2Nm X3dhcC13c2ctaWRtLWVjaWQtd3RsczMKKy1QZWVyS2V5PU1BTElDRV9jZl93YXAtd3NnLWlkbS1l Y2lkLXd0bHMzX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZF X0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdp dGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zf d2FwLXdzZy1pZG0tZWNpZC13dGxzMworLVBlZXJLZXk9TUFMSUNFX2NmX3dhcC13c2ctaWRtLWVj aWQtd3RsczNfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVf RVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy1UaXRsZT13YXAtd3NnLWlkbS1l Y2lkLXd0bHM0IGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV9jZl93YXAtd3NnLWlk bS1lY2lkLXd0bHM0CistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUMwQ0FRQXdFQVlI S29aSXpqMENBUVlGWnlzQkJBUUVGakFVQWdFQkJBOEFDRk9yQmJPaDVMak50SlFDdUVFPQorLS0t LS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2Zfd2FwLXdzZy1p ZG0tZWNpZC13dGxzNF9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1EUXdFQVlI S29aSXpqMENBUVlGWnlzQkJBUURJQUFFQVczSzRNdXM1K0tBSlZHTHpFWXJBWXVDSlNFWVhGVG8x N2FXMFR3TgorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVm YXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczQ6QUxJ Q0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzNF9QVUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl93 YXAtd3NnLWlkbS1lY2lkLXd0bHM0CistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUMw Q0FRQXdFQVlIS29aSXpqMENBUVlGWnlzQkJBUUVGakFVQWdFQkJBOEF1ejRYUmMzUmcwYk5jYnJy YXk4PQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9CX2NmX3dh cC13c2ctaWRtLWVjaWQtd3RsczRfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1N RFF3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQVFESUFBRUFJMEY3aXhHcU9obllwc3VSODBuQWRUZFNY TStZYmNVYkxlL1UveEcKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVp biA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxz NDpCT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzNF9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0 aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl93YXAt d3NnLWlkbS1lY2lkLXd0bHM0CistUGVlcktleT1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxz NF9QVUIKKy1TaGFyZWRTZWNyZXQ9MDA3NzM3OGRkZmRhZGZmNzA0YTBiNjY0Njk0OWU3CistCist IyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJp dmU9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczQKKy1QZWVyS2V5PUFMSUNFX2NmX3dhcC13 c2ctaWRtLWVjaWQtd3RsczRfUFVCCistU2hhcmVkU2VjcmV0PTAwNzczNzhkZGZkYWRmZjcwNGEw YjY2NDY5NDllNworLQorLSMgRUNDIENESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczQKKy1Q ZWVyS2V5PUJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM0X1BVQgorLUN0cmw9ZWNkaF9jb2Zh Y3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDA4ZjM3MTNmZTFmZjFmYTVkNTA0MTg5OTgxN2Qx CistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1 bHQKKy1EZXJpdmU9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczQKKy1QZWVyS2V5PUFMSUNF X2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczRfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6 MQorLVNoYXJlZFNlY3JldD0wMDhmMzcxM2ZlMWZmMWZhNWQ1MDQxODk5ODE3ZDEKKy0KKy1QdWJs aWNLZXk9TUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczRfUFVCCistLS0tLS1CRUdJTiBQ VUJMSUMgS0VZLS0tLS0KKy1NRFF3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQVFESUFBRUFBQUFBQUFB QUFBQUFBQUFBQUFBQWQrVHFpQlhuVGQvbHlBL09Gc1IKKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0t LS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRl ZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczQKKy1QZWVyS2V5PU1B TElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM0X1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9t b2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmluaXR5Cist CistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1 bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzNAorLVBlZXJLZXk9TUFM SUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczRfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21v ZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0K Ky1UaXRsZT13YXAtd3NnLWlkbS1lY2lkLXd0bHM1IGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtl eT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM1CistLS0tLS1CRUdJTiBQUklWQVRFIEtF WS0tLS0tCistTURNQ0FRQXdFQVlIS29aSXpqMENBUVlGWnlzQkJBVUVIREFhQWdFQkJCVUQ5Z1Zo M3piTFRBN0J1UlZWaTlUOFFLWjF1Y289CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQor LVB1YmxpY0tleT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM1X1BVQgorLS0tLS0tQkVH SU4gUFVCTElDIEtFWS0tLS0tCistTUVBd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFVRExBQUVBSDV4 eVVydmJ1Tit0V21SaHdxclFmRkhQSE5VQkt0QUd2SnV2U0ZWd1RLaworLXVGem45ZlB2SURlNgor LS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVBy aXZQdWJLZXlQYWlyPUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczU6QUxJQ0VfY2Zfd2Fw LXdzZy1pZG0tZWNpZC13dGxzNV9QVUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl93YXAtd3NnLWlk bS1lY2lkLXd0bHM1CistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURNQ0FRQXdFQVlI S29aSXpqMENBUVlGWnlzQkJBVUVIREFhQWdFQkJCVUFyOVpsbXVPN2JOZnFCNDJ4VWl2Slh5VkhL Tkk9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2Zfd2Fw LXdzZy1pZG0tZWNpZC13dGxzNV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1F QXdFQVlIS29aSXpqMENBUVlGWnlzQkJBVURMQUFFQmRYeEVrMEwyWEFWelJOTFBjbk14R1hYeURm WkFvQTFRdzJYcE9mVldJVlIKKy1qZG9NR1JnVXVKbU8KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0t LS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2Zfd2Fw LXdzZy1pZG0tZWNpZC13dGxzNTpCT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzNV9QVUIKKy0K Ky0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURl cml2ZT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM1CistUGVlcktleT1CT0JfY2Zfd2Fw LXdzZy1pZG0tZWNpZC13dGxzNV9QVUIKKy1TaGFyZWRTZWNyZXQ9MDE5MGM2OGQ4MGU5NGZiZTlm MTkzYWU3ZDlhMTU2YmYwYjhkMDk3YzIzCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIK Ky1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQt d3RsczUKKy1QZWVyS2V5PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczVfUFVCCistU2hh cmVkU2VjcmV0PTAxOTBjNjhkODBlOTRmYmU5ZjE5M2FlN2Q5YTE1NmJmMGI4ZDA5N2MyMworLQor LSMgRUNDIENESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0Cist RGVyaXZlPUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczUKKy1QZWVyS2V5PUJPQl9jZl93 YXAtd3NnLWlkbS1lY2lkLXd0bHM1X1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1T aGFyZWRTZWNyZXQ9MDBhYWJjOWI0NWMyMDBlNDEyOTRhYTkyMmFiMDZkYTY2NTU3MzFlMGVhCist CistIyBFQ0MgQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQK Ky1EZXJpdmU9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczUKKy1QZWVyS2V5PUFMSUNFX2Nm X3dhcC13c2ctaWRtLWVjaWQtd3RsczVfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQor LVNoYXJlZFNlY3JldD0wMGFhYmM5YjQ1YzIwMGU0MTI5NGFhOTIyYWIwNmRhNjY1NTczMWUwZWEK Ky0KKy1QdWJsaWNLZXk9TUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczVfUFVCCistLS0t LS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRUF3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQVVETEFB RUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQzhKeGVwUzA1bk4vcGlLCistZGhERDNkREtY VWloCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIE1h bGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl93YXAtd3Nn LWlkbS1lY2lkLXd0bHM1CistUGVlcktleT1NQUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxz NV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgor LVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLSMgRUNDIENESCBBbGljZSB3aXRoIE1hbGlj ZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3dhcC13c2ct aWRtLWVjaWQtd3RsczUKKy1QZWVyS2V5PU1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM1 X1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCist UmVhc29uPXBvaW50IGF0IGluZmluaXR5CistCistVGl0bGU9d2FwLXdzZy1pZG0tZWNpZC13dGxz NiBjdXJ2ZSB0ZXN0cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13 dGxzNgorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1Dd0NBUUF3RUFZSEtvWkl6ajBD QVFZRlp5c0JCQVlFRlRBVEFnRUJCQTRheU1ic3dQYnZZTXdwd284MGpBPT0KKy0tLS0tLUVORCBQ UklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQt d3RsczZfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NREl3RUFZSEtvWkl6ajBD QVFZRlp5c0JCQVlESGdBRVJQdy84SXAvUnJYcjBnTWdMR1JRZWlRNFFkNlcrTGkweWxHS3pnPT0K Ky0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Q cml2UHViS2V5UGFpcj1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM2OkFMSUNFX2NmX3dh cC13c2ctaWRtLWVjaWQtd3RsczZfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zfd2FwLXdzZy1p ZG0tZWNpZC13dGxzNgorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1Dd0NBUUF3RUFZ SEtvWkl6ajBDQVFZRlp5c0JCQVlFRlRBVEFnRUJCQTZrYkNwRnQzdFgyaFlCUUhNWGJnPT0KKy0t LS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl93YXAtd3NnLWlk bS1lY2lkLXd0bHM2X1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTURJd0VBWUhL b1pJemowQ0FRWUZaeXNCQkFZREhnQUVoSlhxcFlHeEUvbDFYL0xpQmV5UmJJY3l6cVB4VVA1VGt2 M1Uzdz09CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZh dWx0CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczY6Qk9CX2Nm X3dhcC13c2ctaWRtLWVjaWQtd3RsczZfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBl ZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0t ZWNpZC13dGxzNgorLVBlZXJLZXk9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczZfUFVCCist U2hhcmVkU2VjcmV0PWI0Y2FlMjU1MjY4ZjExYTFlNDZmZWNhZDA0YzIKKy0KKy0jIEVDREggQm9i IHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2Zf d2FwLXdzZy1pZG0tZWNpZC13dGxzNgorLVBlZXJLZXk9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNp ZC13dGxzNl9QVUIKKy1TaGFyZWRTZWNyZXQ9YjRjYWUyNTUyNjhmMTFhMWU0NmZlY2FkMDRjMgor LQorLVRpdGxlPXdhcC13c2ctaWRtLWVjaWQtd3RsczcgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRl S2V5PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczcKKy0tLS0tLUJFR0lOIFBSSVZBVEUg S0VZLS0tLS0KKy1NRE1DQVFBd0VBWUhLb1pJemowQ0FRWUZaeXNCQkFjRUhEQWFBZ0VCQkJVQUJj eXpoNG90OWNrL2o0LzNlaEswYVluZ1lvTT0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCist CistUHVibGljS2V5PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczdfUFVCCistLS0tLS1C RUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRDR3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQWNES2dBRXdR TG5aNzBuNDVSTHFSdEFHTnpFYTNSbC85bnd5anFZVXR3MmVlSGhuTkxUCistZmVHWTRDTkgwdz09 CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0Cist UHJpdlB1YktleVBhaXI9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzNzpBTElDRV9jZl93 YXAtd3NnLWlkbS1lY2lkLXd0bHM3X1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3dhcC13c2ct aWRtLWVjaWQtd3RsczcKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRE1DQVFBd0VB WUhLb1pJemowQ0FRWUZaeXNCQkFjRUhEQWFBZ0VCQkJVQVB5ckdSWTFTUjEzaEtRc3dTNnlYczh3 OFBVUT0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl93 YXAtd3NnLWlkbS1lY2lkLXd0bHM3X1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCist TUQ0d0VBWUhLb1pJemowQ0FRWUZaeXNCQkFjREtnQUVaR040NFliTjVyM3pjTnRPSHJ2YlFMdDgv bEU3QkhwNEQvOWVLTG13RkRuMQorLVFuZVJ1M3h3UEE9PQorLS0tLS0tRU5EIFBVQkxJQyBLRVkt LS0tLQorLQorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl93 YXAtd3NnLWlkbS1lY2lkLXd0bHM3OkJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM3X1BVQgor LQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0Cist RGVyaXZlPUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczcKKy1QZWVyS2V5PUJPQl9jZl93 YXAtd3NnLWlkbS1lY2lkLXd0bHM3X1BVQgorLVNoYXJlZFNlY3JldD1hZTlmNWJjYzY0NTdjMDQy Mjg2NmJmODU1OTIxZWFiYzQyYjcxMjFhCistCistIyBFQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIK Ky1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQt d3RsczcKKy1QZWVyS2V5PUFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczdfUFVCCistU2hh cmVkU2VjcmV0PWFlOWY1YmNjNjQ1N2MwNDIyODY2YmY4NTU5MjFlYWJjNDJiNzEyMWEKKy0KKy1U aXRsZT13YXAtd3NnLWlkbS1lY2lkLXd0bHM4IGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtleT1B TElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM4CistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0t LS0tCistTUMwQ0FRQXdFQVlIS29aSXpqMENBUVlGWnlzQkJBZ0VGakFVQWdFQkJBOEFua0MxOGIz cEgyTzVUSVlJcUFRPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9 QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzOF9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBL RVktLS0tLQorLU1ESXdFQVlIS29aSXpqMENBUVlGWnlzQkJBZ0RIZ0FFSkQwaDRIRWZjaHd4cWhw OWVNSGg5Z2N6UUtIWDRNdFdWb0F4S1E9PQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQor LUF2YWlsYWJsZWluID0gZGVmYXVsdAorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3dhcC13c2ct aWRtLWVjaWQtd3Rsczg6QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzOF9QVUIKKy0KKy1Q cml2YXRlS2V5PUJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM4CistLS0tLS1CRUdJTiBQUklW QVRFIEtFWS0tLS0tCistTUMwQ0FRQXdFQVlIS29aSXpqMENBUVlGWnlzQkJBZ0VGakFVQWdFQkJB OEFYeFBNbnFibDNyT3VJTTVuc3ZjPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1Q dWJsaWNLZXk9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczhfUFVCCistLS0tLS1CRUdJTiBQ VUJMSUMgS0VZLS0tLS0KKy1NREl3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQWdESGdBRVphd21SbXpy OVAramloSW1VaTZ5a096YVNINDg0SmhNS05kcmd3PT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0t LS0KKy0KKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1CT0JfY2Zfd2Fw LXdzZy1pZG0tZWNpZC13dGxzODpCT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzOF9QVUIKKy0K Ky0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURl cml2ZT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM4CistUGVlcktleT1CT0JfY2Zfd2Fw LXdzZy1pZG0tZWNpZC13dGxzOF9QVUIKKy1TaGFyZWRTZWNyZXQ9NDhiYWY0ZjFmNWU4YTBlYjVk YWUyOGVmNjI5MAorLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxlaW4g PSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM4CistUGVlcktl eT1BTElDRV9jZl93YXAtd3NnLWlkbS1lY2lkLXd0bHM4X1BVQgorLVNoYXJlZFNlY3JldD00OGJh ZjRmMWY1ZThhMGViNWRhZTI4ZWY2MjkwCistCistVGl0bGU9d2FwLXdzZy1pZG0tZWNpZC13dGxz OSBjdXJ2ZSB0ZXN0cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNpZC13 dGxzOQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1ETUNBUUF3RUFZSEtvWkl6ajBD QVFZRlp5c0JCQWtFSERBYUFnRUJCQlVBTHd2dUtzM1JMdGhNQXNDaGJxS2pYdzZ2VFlvPQorLS0t LS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2Zfd2FwLXdzZy1p ZG0tZWNpZC13dGxzOV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1ENHdFQVlI S29aSXpqMENBUVlGWnlzQkJBa0RLZ0FFVDBwcE92ZDlEVTR2K3RrS0RRNXdSQnJOMUZ3RDkrRjl0 NWwzSW0rbXozcncKKy1EQi9SWWRadVVnPT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0K Ky1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl93YXAtd3Nn LWlkbS1lY2lkLXd0bHM5OkFMSUNFX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczlfUFVCCistCist UHJpdmF0ZUtleT1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzOQorLS0tLS0tQkVHSU4gUFJJ VkFURSBLRVktLS0tLQorLU1ETUNBUUF3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQWtFSERBYUFnRUJC QlVBZ2ViL3ZxRU03WDVBQUF4eUJ1M00rQzhwV0xNPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0t LS0KKy0KKy1QdWJsaWNLZXk9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczlfUFVCCistLS0t LS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRDR3RUFZSEtvWkl6ajBDQVFZRlp5c0JCQWtES2dB RVdjMzdMR3Q2bHQ5MGlGNGxodERZTkZkakFxb2N6ZWJ1Tmd6R2ZmL1VxOG92CistYTNFVko5eUsx QT09CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0 CistUHJpdlB1YktleVBhaXI9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3Rsczk6Qk9CX2NmX3dh cC13c2ctaWRtLWVjaWQtd3RsczlfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIK Ky1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfd2FwLXdzZy1pZG0tZWNp ZC13dGxzOQorLVBlZXJLZXk9Qk9CX2NmX3dhcC13c2ctaWRtLWVjaWQtd3RsczlfUFVCCistU2hh cmVkU2VjcmV0PTk0OGQzMDMwZTk1Y2VhZDM5YTFiYjNkOGEwMWMyYmUxNzg1MTdiYTcKKy0KKy0j IEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2 ZT1CT0JfY2Zfd2FwLXdzZy1pZG0tZWNpZC13dGxzOQorLVBlZXJLZXk9QUxJQ0VfY2Zfd2FwLXdz Zy1pZG0tZWNpZC13dGxzOV9QVUIKKy1TaGFyZWRTZWNyZXQ9OTQ4ZDMwMzBlOTVjZWFkMzlhMWJi M2Q4YTAxYzJiZTE3ODUxN2JhNworLQorLSMgdGVzdHM6IDQ4NAorLQorLVRpdGxlPXplcm8geC1j b29yZCByZWdyZXNzaW9uIHRlc3RzCistCistUHJpdmF0ZUtleT1BTElDRV96ZXJvX3ByaW1lMTky djEKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRGtDQVFBd0V3WUhLb1pJemowQ0FR WUlLb1pJemowREFRRUVIekFkQWdFQkJCaGFQTms4akc1aFNHNnk4dFVxVW9PYU5Oc1ozQVBVCist cHBzPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9CX3plcm9f cHJpbWUxOTJ2MV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1Fa3dFd1lIS29a SXpqMENBUVlJS29aSXpqMERBUUVETWdBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB ZTJoV0JlNWcKKy1ETE5qMjE2cEV2SzdYam9LTGc1Z05nOFMKKy0tLS0tLUVORCBQVUJMSUMgS0VZ LS0tLS0KKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVm YXVsdAorLURlcml2ZT1BTElDRV96ZXJvX3ByaW1lMTkydjEKKy1QZWVyS2V5PUJPQl96ZXJvX3By aW1lMTkydjFfUFVCCistU2hhcmVkU2VjcmV0PWJhYWZmZDQ5YTgzOTlkMmFkNTJjYmJlMjRkNDdi NjdhZmI0YjNjZjQzNmYxY2Q2NQorLQorLVByaXZhdGVLZXk9QUxJQ0VfemVyb19wcmltZTE5MnYy CisgLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCisgTURrQ0FRQXdFd1lIS29aSXpqMENBUVlJ S29aSXpqMERBUUlFSHpBZEFnRUJCQmoxQUlRTUo3anFZSUtDdnhZQVMrcUtNbUttSDB0bworIDQx az0KK0BAIC0zNDIyLDcyICsxNjIsNiBAQCBEZXJpdmU9QUxJQ0VfemVyb19wcmltZTI1NnYxCisg UGVlcktleT1CT0JfemVyb19wcmltZTI1NnYxX1BVQgorIFNoYXJlZFNlY3JldD1jNGY1NjA3ZGVi ODUwMWYxYTRiYTIzZmNlNDEyMmE0MzQzYTE3YWRhMmM4NmE5YzhlMGQwM2Q5MmQ0YTRjODRjCisg CistUHJpdmF0ZUtleT1BTElDRV96ZXJvX3NlY3AxMTJyMgorLS0tLS0tQkVHSU4gUFJJVkFURSBL RVktLS0tLQorLU1Dd0NBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQWNFRlRBVEFnRUJCQTRoaDN0 UmtHM3RuQTA0OTZmZk13PT0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGlj S2V5PUJPQl96ZXJvX3NlY3AxMTJyMl9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQor LU1ESXdFQVlIS29aSXpqMENBUVlGSzRFRUFBY0RIZ0FFQUFBQUFBQUFBQUFBQUFBQUFBQVM1ZUVP V0RWL1drN3c0ZGp5RFE9PQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLSMgRUNESCBB bGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNF X3plcm9fc2VjcDExMnIyCistUGVlcktleT1CT0JfemVyb19zZWNwMTEycjJfUFVCCistU2hhcmVk U2VjcmV0PTk1OGNjMWNiNDI1NzEzNjc4ODMwYTRkN2Q5NWUKKy0KKy1Qcml2YXRlS2V5PUFMSUNF X3plcm9fc2VjcDEyOHIxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUM0Q0FRQXdF QVlIS29aSXpqMENBUVlGSzRFRUFCd0VGekFWQWdFQkJCQ3lrU3ppYy9oM1QySzZTa1NQMVNHdAor LS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9CX3plcm9fc2VjcDEy OHIxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTURZd0VBWUhLb1pJemowQ0FR WUZLNEVFQUJ3RElnQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQnlhOE01YWVPcE5HM3o3OTlJZEhj PQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBw ZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX3plcm9fc2VjcDEyOHIx CistUGVlcktleT1CT0JfemVyb19zZWNwMTI4cjFfUFVCCistU2hhcmVkU2VjcmV0PTUyMzVkNDUy MDY2ZjEyNmNkN2U5OWVlYTAwZmQzMDY4CistCistUHJpdmF0ZUtleT1BTElDRV96ZXJvX3NlY3Ax NjByMQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1ETUNBUUF3RUFZSEtvWkl6ajBD QVFZRks0RUVBQWdFSERBYUFnRUJCQlVBQ29SbmJpZzY5WExsaDVWY1JleHBiYm41endBPQorLS0t LS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9CX3plcm9fc2VjcDE2MHIx X1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUQ0d0VBWUhLb1pJemowQ0FRWUZL NEVFQUFnREtnQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFHL3cxcG8yOXdZbHhseWdYcwor LU1HZmJpR2c1bmc9PQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLSMgRUNESCBBbGlj ZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX3pl cm9fc2VjcDE2MHIxCistUGVlcktleT1CT0JfemVyb19zZWNwMTYwcjFfUFVCCistU2hhcmVkU2Vj cmV0PTljY2QwYWI4ZDA5M2I2YWNkYjNmZTE0YzM3MzZhMGRmZTYxYTQ2NjYKKy0KKy1Qcml2YXRl S2V5PUFMSUNFX3plcm9fc2VjcDE2MHIyCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCist TURNQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFCNEVIREFhQWdFQkJCVUFRRkd4SW5TdzFlQXZk NDVFOVRVZGJYdEpHbkE9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tl eT1CT0JfemVyb19zZWNwMTYwcjJfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1N RDR3RUFZSEtvWkl6ajBDQVFZRks0RUVBQjRES2dBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QVp0U0JTWnFmbVhwNDd2NXoyCistWlpabDJKRnhEZz09CistLS0tLS1FTkQgUFVCTElDIEtFWS0t LS0tCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1 bHQKKy1EZXJpdmU9QUxJQ0VfemVyb19zZWNwMTYwcjIKKy1QZWVyS2V5PUJPQl96ZXJvX3NlY3Ax NjByMl9QVUIKKy1TaGFyZWRTZWNyZXQ9MzAzZTBhMjgyYWM4NmY0NjNmZTgzNGNiNTFiMDA1N2Jl NDJlZDVhYgorLQorIFByaXZhdGVLZXk9QUxJQ0VfemVyb19zZWNwMzg0cjEKKyAtLS0tLUJFR0lO IFBSSVZBVEUgS0VZLS0tLS0KKyBNRTRDQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUNJRU56QTFB Z0VCQkRENmtnektiZzI4emJReVZUZEMwSWRIYm0wVUNRdDJSZGJpCitAQCAtMzUyNiw3NiArMjAw LDYgQEAgRGVyaXZlPUFMSUNFX3plcm9fc2VjcDUyMXIxCisgUGVlcktleT1CT0JfemVyb19zZWNw NTIxcjFfUFVCCisgU2hhcmVkU2VjcmV0PTAwM2ZjMzAyOGY2MWRiOTRiMjBjN2NkMTc3OTIzYjZl NzNmMTJmMGFiMDY3YzljZTg4NjY3NTVlM2M4MmFiYjM5Yzk4NjNjZGU3NGZhODBiMzI1MjBiZDdk ZDBlYjE1NmMzMGMwODkxMTUwM2I2N2IyNjYxZjEyNjRkMDliYjIzMTQyMworIAorLVByaXZhdGVL ZXk9QUxJQ0VfemVyb193YXAtd3NnLWlkbS1lY2lkLXd0bHM3CistLS0tLS1CRUdJTiBQUklWQVRF IEtFWS0tLS0tCistTURNQ0FRQXdFQVlIS29aSXpqMENBUVlGWnlzQkJBY0VIREFhQWdFQkJCVUFv R25nN1d6WXI0UDl2dGRjM0JTL1VpTldtYzA9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQor LQorLVB1YmxpY0tleT1CT0JfemVyb193YXAtd3NnLWlkbS1lY2lkLXd0bHM3X1BVQgorLS0tLS0t QkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUQ0d0VBWUhLb1pJemowQ0FRWUZaeXNCQkFjREtnQUVB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFadFNCU1pxZm1YcDQ3djV6MgorLVpaWmwySkZ4RGc9 PQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBw ZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX3plcm9fd2FwLXdzZy1p ZG0tZWNpZC13dGxzNworLVBlZXJLZXk9Qk9CX3plcm9fd2FwLXdzZy1pZG0tZWNpZC13dGxzN19Q VUIKKy1TaGFyZWRTZWNyZXQ9NjU4MmZjMDNiYmIzNDBmY2YyNGE1ZmU4ZmNkZjcyMjY1NWVmYThi OQorLQorLSMgdGVzdHM6IDE0CistCistVGl0bGU9cHJpbWUxOTJ2MSBjdXJ2ZSB0ZXN0cworLQor LVByaXZhdGVLZXk9QUxJQ0VfY2ZfcHJpbWUxOTJ2MQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVkt LS0tLQorLU1Ea0NBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFFRUh6QWRBZ0VCQkJoUUZZ TGFvYko0N0JWV1dadi9CeVk4VGk2OW0vVTkKKy1UZUk9CistLS0tLS1FTkQgUFJJVkFURSBLRVkt LS0tLQorLQorLVB1YmxpY0tleT1BTElDRV9jZl9wcmltZTE5MnYxX1BVQgorLS0tLS0tQkVHSU4g UFVCTElDIEtFWS0tLS0tCistTUVrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRRURNZ0FFSFli dDE0S3p1Y1NwbUtNcmxEeDFJR3ovYTI4bkRzMjFPaktneDNCSworLVBaNzhVcmxsSXI2OWtncllV S3NSZzRzZAorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUFM SUNFX2NmX3ByaW1lMTkydjE6QUxJQ0VfY2ZfcHJpbWUxOTJ2MV9QVUIKKy0KKy1Qcml2YXRlS2V5 PUJPQl9jZl9wcmltZTE5MnYxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURrQ0FR QXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUUVFSHpBZEFnRUJCQmhzYm1LSEF0eWdJcWlya21V WFNibmlESk94MC9mSQorLUNXTT0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVi bGljS2V5PUJPQl9jZl9wcmltZTE5MnYxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0t CistTUVrd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRRURNZ0FFSkErRlFjWHE1QXh6djhwTERz bHhxMVFWdDFoak4yaTBUZ29PNll4cAorLWJBZWtNb3Q2OVZvckU4aWJTemdKaXhYSgorLS0tLS0t RU5EIFBVQkxJQyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9wcmltZTE5MnYx OkJPQl9jZl9wcmltZTE5MnYxX1BVQgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCist QXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX2NmX3ByaW1lMTkydjEKKy1QZWVy S2V5PUJPQl9jZl9wcmltZTE5MnYxX1BVQgorLVNoYXJlZFNlY3JldD1lMzZjYWQzYjBmOGQwMGY2 MGYwOTA0NDBhNzZkZjQ3ODk2NzEzYWU2MTQyMWMzNTQKKy0KKy0jIEVDREggQm9iIHdpdGggQWxp Y2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1CT0JfY2ZfcHJpbWUxOTJ2 MQorLVBlZXJLZXk9QUxJQ0VfY2ZfcHJpbWUxOTJ2MV9QVUIKKy1TaGFyZWRTZWNyZXQ9ZTM2Y2Fk M2IwZjhkMDBmNjBmMDkwNDQwYTc2ZGY0Nzg5NjcxM2FlNjE0MjFjMzU0CistCistIyBFQ0RIIEJv YiB3aXRoIEFsaWNlIHBlZXIgOiBjdXJ2ZXMgd2l0aCBsZXNzIHRoYW4gMTEyIGJpdHMgb2Ygc3Ry ZW5ndGggY2Fubm90CistIyBiZSB1c2VkIGZvciBLZXkgYWdyZWVtZW50IGluIGZpcHMgbW9kZQor LUF2YWlsYWJsZWluID0gZmlwcworLURlcml2ZT1CT0JfY2ZfcHJpbWUxOTJ2MQorLVNlY3VyaXR5 Y2hlY2sgPSAxCistUGVlcktleT1BTElDRV9jZl9wcmltZTE5MnYxX1BVQgorLVNoYXJlZFNlY3Jl dD1lMzZjYWQzYjBmOGQwMGY2MGYwOTA0NDBhNzZkZjQ3ODk2NzEzYWU2MTQyMWMzNTQKKy1SZXN1 bHQgPSBERVJJVkVfU0VUX1BFRVJfRVJST1IKKy0KKyBUaXRsZT1wcmltZTI1NnYxIGN1cnZlIHRl c3RzCisgCisgUHJpdmF0ZUtleT1BTElDRV9jZl9wcmltZTI1NnYxCitAQCAtMzc1OSw3NDMgKzM2 MywzIEBAIFNoYXJlZFNlY3JldD0wMWRkNGFhOTAzN2JiNGFkMjk4YjQyMDk5OGQKKyBEZXJpdmU9 Qk9CX2NmX3NlY3A1MjFyMQorIFBlZXJLZXk9QUxJQ0VfY2Zfc2VjcDUyMXIxX1BVQgorIFNoYXJl ZFNlY3JldD0wMWRkNGFhOTAzN2JiNGFkMjk4YjQyMDk5OGRjZDMyYjNhOWFmMWNkYThiNzkxOWUz NzJhZWI0ZTU0Y2NmYjRkMjQwOWEzNDBlZDg5NmJmYmM1ZGQ0NjJmOGQ5NmI4Nzg0YmMxN2IyOWRi M2NhMDQ3MDBlNmVjNzUyZjliZWM3Nzc2OTUKKy0KKy1UaXRsZT1zZWN0MTYzazEgY3VydmUgdGVz dHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX2NmX3NlY3QxNjNrMQorLS0tLS0tQkVHSU4gUFJJVkFU RSBLRVktLS0tLQorLU1ETUNBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQUVFSERBYUFnRUJCQlVC OTA1UFlmbWVqOEx6YnpYNkJnNTFHSnpYUWpRPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K Ky0KKy1QdWJsaWNLZXk9QUxJQ0VfY2Zfc2VjdDE2M2sxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElD IEtFWS0tLS0tCistTUVBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFFRExBQUVCZnZzNUExaEQ4WXlT UDlPMnViOEdFVWZvdFZ1QnBmUng0R0lIZEFmeDh3VgorLTFVVmVUUm55QWxXVQorLS0tLS0tRU5E IFBVQkxJQyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3NlY3QxNjNrMTpB TElDRV9jZl9zZWN0MTYzazFfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zfc2VjdDE2M2sxCist LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURNQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRF RUFBRUVIREFhQWdFQkJCVUNIUHRDako0L0s4eWxRQmNMbGI1VkUwYmthVUU9CistLS0tLS1FTkQg UFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2Zfc2VjdDE2M2sxX1BVQgorLS0t LS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUVBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUFFRExB QUVCdmdmWDFtVFJsdDZaNFRFMUQxTU5XbzRsb0g0QW9lWWE2b293SzEwNExLaworLW5zZGc3aXNR OFhCRAorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUJPQl9j Zl9zZWN0MTYzazE6Qk9CX2NmX3NlY3QxNjNrMV9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBC b2IgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9zZWN0MTYz azEKKy1QZWVyS2V5PUJPQl9jZl9zZWN0MTYzazFfUFVCCistU2hhcmVkU2VjcmV0PTA0ZDBlNDA3 ODhjNWNlNTIyMDgxODA1NTI3N2NhZTUzZWFjNTVjMWU2YgorLQorLSMgRUNESCBCb2Igd2l0aCBB bGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9zZWN0MTYz azEKKy1QZWVyS2V5PUFMSUNFX2NmX3NlY3QxNjNrMV9QVUIKKy1TaGFyZWRTZWNyZXQ9MDRkMGU0 MDc4OGM1Y2U1MjIwODE4MDU1Mjc3Y2FlNTNlYWM1NWMxZTZiCistCistIyBFQ0MgQ0RIIEFsaWNl IHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zf c2VjdDE2M2sxCistUGVlcktleT1CT0JfY2Zfc2VjdDE2M2sxX1BVQgorLUN0cmw9ZWNkaF9jb2Zh Y3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDRjOTAyYTkxMTEwMjQ0ZDg5MTEwMDM0ZGQyYjA5 OWM0OWNiYWI2Yzc3CistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFi bGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9Qk9CX2NmX3NlY3QxNjNrMQorLVBlZXJLZXk9QUxJQ0Vf Y2Zfc2VjdDE2M2sxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNy ZXQ9MDRjOTAyYTkxMTEwMjQ0ZDg5MTEwMDM0ZGQyYjA5OWM0OWNiYWI2Yzc3CistCistUHVibGlj S2V5PU1BTElDRV9jZl9zZWN0MTYzazFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0K Ky1NRUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQUVETEFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBCistQUFBQUFBQUFBQUFCCistLS0tLS1FTkQgUFVCTElDIEtF WS0tLS0tCistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4g PSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9zZWN0MTYzazEKKy1QZWVyS2V5PU1BTElDRV9jZl9z ZWN0MTYzazFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVf RVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0 aCBNYWxpY2UgcGVlcgorLUF2YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9z ZWN0MTYzazEKKy1QZWVyS2V5PU1BTElDRV9jZl9zZWN0MTYzazFfUFVCCistQ3RybD1lY2RoX2Nv ZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5m aW5pdHkKKy0KKy1UaXRsZT1zZWN0MTYzcjIgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFM SUNFX2NmX3NlY3QxNjNyMgorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1ETUNBUUF3 RUFZSEtvWkl6ajBDQVFZRks0RUVBQThFSERBYUFnRUJCQlVCakNzL00zTjMxanNBdWVZck9xMjF2 ZEVUd0FJPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0Vf Y2Zfc2VjdDE2M3IyX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUVBd0VBWUhL b1pJemowQ0FRWUZLNEVFQUE4RExBQUVCZDhaMS9IcEErODloRjRJOThFU1Qzc3ZXbnMzQkFFYmhX bUwvZmd4azJ1dQorLVl3VnJtcWhncUgvQworLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQor LVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3NlY3QxNjNyMjpBTElDRV9jZl9zZWN0MTYzcjJfUFVC CistCistUHJpdmF0ZUtleT1CT0JfY2Zfc2VjdDE2M3IyCistLS0tLS1CRUdJTiBQUklWQVRFIEtF WS0tLS0tCistTURNQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFBOEVIREFhQWdFQkJCVUJzaW91 VDlEZittd0hXcnBQZzFKU3JZOW5xbEk9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQor LVB1YmxpY0tleT1CT0JfY2Zfc2VjdDE2M3IyX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0t LS0tCistTUVBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUE4RExBQUVCVUxxQlorbmhMaERFTVlZOE5F RXpaMTI2TWR4QWNGWFd2OHptUEVIOTUwNQorLTh2VDV6VTNhcTZIVgorLS0tLS0tRU5EIFBVQkxJ QyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9zZWN0MTYzcjI6Qk9CX2NmX3Nl Y3QxNjNyMl9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWlu ID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9zZWN0MTYzcjIKKy1QZWVyS2V5PUJPQl9jZl9z ZWN0MTYzcjJfUFVCCistU2hhcmVkU2VjcmV0PTAxOWY4MjlhNTNjNGU2NTQ0YmRlYzEzOTVhMjMw ODIxNjllZmFmMzY5ZAorLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCistQXZhaWxhYmxl aW4gPSBkZWZhdWx0CistRGVyaXZlPUJPQl9jZl9zZWN0MTYzcjIKKy1QZWVyS2V5PUFMSUNFX2Nm X3NlY3QxNjNyMl9QVUIKKy1TaGFyZWRTZWNyZXQ9MDE5ZjgyOWE1M2M0ZTY1NDRiZGVjMTM5NWEy MzA4MjE2OWVmYWYzNjlkCistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFp bGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDE2M3IyCistUGVlcktleT1C T0JfY2Zfc2VjdDE2M3IyX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRT ZWNyZXQ9MDQ4ODcwZDM5MjM1ZWNiYzE2YTAwMGVlNDc4ODMzNTA5YjkzMThhNTNmCistCistIyBF Q0MgQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJp dmU9Qk9CX2NmX3NlY3QxNjNyMgorLVBlZXJLZXk9QUxJQ0VfY2Zfc2VjdDE2M3IyX1BVQgorLUN0 cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDQ4ODcwZDM5MjM1ZWNiYzE2 YTAwMGVlNDc4ODMzNTA5YjkzMThhNTNmCistCistUHVibGljS2V5PU1BTElDRV9jZl9zZWN0MTYz cjJfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRUF3RUFZSEtvWkl6ajBDQVFZ Rks0RUVBQThETEFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBc0piaGJyZmlTZFpQU0hE CistWnRxSndEbHA4MDJsCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0MgQ0RI IEJvYiB3aXRoIE1hbGljZSBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUJP Ql9jZl9zZWN0MTYzcjIKKy1QZWVyS2V5PU1BTElDRV9jZl9zZWN0MTYzcjJfUFVCCistQ3RybD1l Y2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQg YXQgaW5maW5pdHkKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBNYWxpY2UgcGVlcgorLUF2YWls YWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV9jZl9zZWN0MTYzcjIKKy1QZWVyS2V5PU1B TElDRV9jZl9zZWN0MTYzcjJfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3Vs dD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy1UaXRsZT1zZWN0 MjMzazEgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX2NmX3NlY3QyMzNrMQorLS0t LS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1Ec0NBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVB Qm9FSkRBaUFnRUJCQjB6LzNoZU5GakpMKzJzQVQvMzh5UnNOM2t0MmlYejd1K3kKKy1HdWE4S3c9 PQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2Zfc2Vj dDIzM2sxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZJd0VBWUhLb1pJemow Q0FRWUZLNEVFQUJvRFBnQUVBTFF5bjB6Sm1PckhtNFMyRUlqeFJlODk5UGFkQm5mcFlqTEtXR3Zw QUl6ZgorLU1FRzg2MU52MUlZSmtta08xeGxmTkhlZVJ0cUZnc1FWRktaaAorLS0tLS0tRU5EIFBV QkxJQyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3NlY3QyMzNrMTpBTElD RV9jZl9zZWN0MjMzazFfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zfc2VjdDIzM2sxCistLS0t LS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURzQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFC b0VKREFpQWdFQkJCMUkwdWNyQzRkOWk2WiswY2JhcjVyN3VLcEY1aWlRa1NKQQorLURGTVRVQT09 CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2Zfc2VjdDIz M2sxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZJd0VBWUhLb1pJemowQ0FR WUZLNEVFQUJvRFBnQUVBYXRkcWF6eFNnaEo1NjhDQkZ5TVhoRXZWZUFpTGV3T1kvams5SDVEQU9C NAorLXVmTkdiZGQxMzFLTGFLUGl2QjM4YTZuNVkrMkJWU0phbmdvdworLS0tLS0tRU5EIFBVQkxJ QyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9zZWN0MjMzazE6Qk9CX2NmX3Nl Y3QyMzNrMV9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLURlcml2ZT1BTElD RV9jZl9zZWN0MjMzazEKKy1QZWVyS2V5PUJPQl9jZl9zZWN0MjMzazFfUFVCCistU2hhcmVkU2Vj cmV0PTAxMjE0NTAyNmU4ZGU2NTk3M2MxNTRlMDg1NDU2ZmM1NTM5YmE5ZTI1NjYzZTdmNTgxNmFi ZmNhYjMxMAorLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCistRGVyaXZlPUJPQl9jZl9z ZWN0MjMzazEKKy1QZWVyS2V5PUFMSUNFX2NmX3NlY3QyMzNrMV9QVUIKKy1TaGFyZWRTZWNyZXQ9 MDEyMTQ1MDI2ZThkZTY1OTczYzE1NGUwODU0NTZmYzU1MzliYTllMjU2NjNlN2Y1ODE2YWJmY2Fi MzEwCistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1EZXJpdmU9QUxJQ0VfY2Zf c2VjdDIzM2sxCistUGVlcktleT1CT0JfY2Zfc2VjdDIzM2sxX1BVQgorLUN0cmw9ZWNkaF9jb2Zh Y3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDBmZjdkNmM2YjgwZjM5ZDJhZTY4ZmJkMDBhZGJj ZDc1ZmE1OTllZDBiYzFhYWMwZTNmNDljMWMxNjRkCistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIEFs aWNlIHBlZXIKKy1EZXJpdmU9Qk9CX2NmX3NlY3QyMzNrMQorLVBlZXJLZXk9QUxJQ0VfY2Zfc2Vj dDIzM2sxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDBm ZjdkNmM2YjgwZjM5ZDJhZTY4ZmJkMDBhZGJjZDc1ZmE1OTllZDBiYzFhYWMwZTNmNDljMWMxNjRk CistCistUHVibGljS2V5PU1BTElDRV9jZl9zZWN0MjMzazFfUFVCCistLS0tLS1CRUdJTiBQVUJM SUMgS0VZLS0tLS0KKy1NRkl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQm9EUGdBRUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUJBQUFBCistQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0MgQ0RI IEJvYiB3aXRoIE1hbGljZSBwZWVyCistRGVyaXZlPUJPQl9jZl9zZWN0MjMzazEKKy1QZWVyS2V5 PU1BTElDRV9jZl9zZWN0MjMzazFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJl c3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy0jIEVDQyBD REggQWxpY2Ugd2l0aCBNYWxpY2UgcGVlcgorLURlcml2ZT1BTElDRV9jZl9zZWN0MjMzazEKKy1Q ZWVyS2V5PU1BTElDRV9jZl9zZWN0MjMzazFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6 MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy1U aXRsZT1zZWN0MjMzcjEgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX2NmX3NlY3Qy MzNyMQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1Ed0NBUUF3RUFZSEtvWkl6ajBD QVFZRks0RUVBQnNFSlRBakFnRUJCQjRBVGN5N3pWcElzSjlybDVFSURtelJ6NXd4anJESVF5RG0K Ky1IUDNQdDhZPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJ Q0VfY2Zfc2VjdDIzM3IxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZJd0VB WUhLb1pJemowQ0FRWUZLNEVFQUJzRFBnQUVBUU1RSGlKNDRMaUNuWmtFZzF6eXd3MWgraWRUYnN3 OEUwN1AzM1dVQVVmRAorLU5lUTRoV0VoVFhQbnl0SWJFaEZLcG5kM2ovRmJ5Wm5KcXhoOAorLS0t LS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3NlY3Qy MzNyMTpBTElDRV9jZl9zZWN0MjMzcjFfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zfc2VjdDIz M3IxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUR3Q0FRQXdFQVlIS29aSXpqMENB UVlGSzRFRUFCc0VKVEFqQWdFQkJCNEFMcE9sRm40T2ZpSUFrUkFaR09zbjdMNlczWG9RQlNWOAor LW1RVkMycHc9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0Jf Y2Zfc2VjdDIzM3IxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZJd0VBWUhL b1pJemowQ0FRWUZLNEVFQUJzRFBnQUVBSlF3K05XcUZKWFl3NGRWTW92enZ3NzZPWW5ZT1RhRGFF UE5XOEVDQVFibAorLVR6emJCU1RwNWlxTTEzbVAwL0JvNE9PNjZOUzNsQTllL0dUTworLS0tLS0t RU5EIFBVQkxJQyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9zZWN0MjMzcjE6 Qk9CX2NmX3NlY3QyMzNyMV9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLURl cml2ZT1BTElDRV9jZl9zZWN0MjMzcjEKKy1QZWVyS2V5PUJPQl9jZl9zZWN0MjMzcjFfUFVCCist U2hhcmVkU2VjcmV0PTAwMjA5ZDI5OTVhNjNmMWU4YjdhNWMzM2RlZTVhYmI2MDJlMzJlMTgzNWFl OGJiNTdlYjI2NGQ4ZDc5NQorLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCistRGVyaXZl PUJPQl9jZl9zZWN0MjMzcjEKKy1QZWVyS2V5PUFMSUNFX2NmX3NlY3QyMzNyMV9QVUIKKy1TaGFy ZWRTZWNyZXQ9MDAyMDlkMjk5NWE2M2YxZThiN2E1YzMzZGVlNWFiYjYwMmUzMmUxODM1YWU4YmI1 N2ViMjY0ZDhkNzk1CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1EZXJpdmU9 QUxJQ0VfY2Zfc2VjdDIzM3IxCistUGVlcktleT1CT0JfY2Zfc2VjdDIzM3IxX1BVQgorLUN0cmw9 ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDBjM2NkMWQzOGE2NWY1ZTQyMTM5 OTQwOWE3NmNlYzExMzZiYzg0MTQ5ZjA1NGE3ZjU1ZTc5ODBjNjEyCistCistIyBFQ0MgQ0RIIEJv YiB3aXRoIEFsaWNlIHBlZXIKKy1EZXJpdmU9Qk9CX2NmX3NlY3QyMzNyMQorLVBlZXJLZXk9QUxJ Q0VfY2Zfc2VjdDIzM3IxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRT ZWNyZXQ9MDBjM2NkMWQzOGE2NWY1ZTQyMTM5OTQwOWE3NmNlYzExMzZiYzg0MTQ5ZjA1NGE3ZjU1 ZTc5ODBjNjEyCistCistUHVibGljS2V5PU1BTElDRV9jZl9zZWN0MjMzcjFfUFVCCistLS0tLS1C RUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRkl3RUFZSEtvWkl6ajBDQVFZRks0RUVBQnNEUGdBRUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBWWY0CistVmllNWVIVG5SKzR4 NEcxeHlxN3FVdklTVStYNVJ0QmgycEU0CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCist IyBFQ0MgQ0RIIEJvYiB3aXRoIE1hbGljZSBwZWVyCistRGVyaXZlPUJPQl9jZl9zZWN0MjMzcjEK Ky1QZWVyS2V5PU1BTElDRV9jZl9zZWN0MjMzcjFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21v ZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0K Ky0jIEVDQyBDREggQWxpY2Ugd2l0aCBNYWxpY2UgcGVlcgorLURlcml2ZT1BTElDRV9jZl9zZWN0 MjMzcjEKKy1QZWVyS2V5PU1BTElDRV9jZl9zZWN0MjMzcjFfUFVCCistQ3RybD1lY2RoX2NvZmFj dG9yX21vZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5p dHkKKy0KKy1UaXRsZT1zZWN0MjgzazEgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNF X2NmX3NlY3QyODNrMQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1FSUNBUUF3RUFZ SEtvWkl6ajBDQVFZRks0RUVBQkFFS3pBcEFnRUJCQ1FBWTFNaTlyU1Q3UGlQMXQwM3FZUmN6Vi9r U1orVmpRdTgKKy01RUZDZ3h5dmthTE1hbnc9CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQor LQorLVB1YmxpY0tleT1BTElDRV9jZl9zZWN0MjgzazFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMg S0VZLS0tLS0KKy1NRjR3RUFZSEtvWkl6ajBDQVFZRks0RUVBQkFEU2dBRUJNakJPOFdveEhTL3Z6 OHBvNTJXWkd4UytSSzV5b2xyVWU2dGZiQU1BM1NkCistNS9KakJEVmpPejk1dk00Z1VucXpVV0hO NW5LQlF0ajZIaVU5US9SK3pxZzk4T2lRS1R5QQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQor LQorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3NlY3QyODNrMTpBTElDRV9jZl9zZWN0MjgzazFf UFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zfc2VjdDI4M2sxCistLS0tLS1CRUdJTiBQUklWQVRF IEtFWS0tLS0tCistTUVJQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFCQUVLekFwQWdFQkJDUUJD WkM4SXMrWVNqZ1hKQkJEaW9FbDZndTE0UXBHSGxsRAorLTFKNjk1N3ZCVFBTUWRIMD0KKy0tLS0t LUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl9zZWN0MjgzazFfUFVC CistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRjR3RUFZSEtvWkl6ajBDQVFZRks0RUVB QkFEU2dBRUFHRVFLWlZIWUFsdnRqSHJGeVpWbTEycVViNWorVDUvV05vQzk2Mitrd1VNCistUWtC WUE1QnB1RzhLbmx1Z3ExaUIzMXdoUEFnUkNaZmRMS0hwSFJQSlNmWHZLeVVJZGVVbQorLS0tLS0t RU5EIFBVQkxJQyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9zZWN0MjgzazE6 Qk9CX2NmX3NlY3QyODNrMV9QVUIKKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLURl cml2ZT1BTElDRV9jZl9zZWN0MjgzazEKKy1QZWVyS2V5PUJPQl9jZl9zZWN0MjgzazFfUFVCCist U2hhcmVkU2VjcmV0PTAzZjY3Yzg4YmRjMjMwYjQzNzczZDE3ZmRiNGQwYTk4MDU1NmQwNzRjZWNj ZWU3MjY5MzIxNjBlNGVkOTY1ZTNiZTcyODAzYworLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBw ZWVyCistRGVyaXZlPUJPQl9jZl9zZWN0MjgzazEKKy1QZWVyS2V5PUFMSUNFX2NmX3NlY3QyODNr MV9QVUIKKy1TaGFyZWRTZWNyZXQ9MDNmNjdjODhiZGMyMzBiNDM3NzNkMTdmZGI0ZDBhOTgwNTU2 ZDA3NGNlY2NlZTcyNjkzMjE2MGU0ZWQ5NjVlM2JlNzI4MDNjCistCistIyBFQ0MgQ0RIIEFsaWNl IHdpdGggQm9iIHBlZXIKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDI4M2sxCistUGVlcktleT1CT0Jf Y2Zfc2VjdDI4M2sxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNy ZXQ9MDY3N2JhMDFjODRkMTM5NjA5Y2ExNDVjYjViNjA3OWZjOWNhNjdmNTljOWM5MTNlNDdjYWQx MDczZjFkMWRmYWRkZGUwMTY5CistCistIyBFQ0MgQ0RIIEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1E ZXJpdmU9Qk9CX2NmX3NlY3QyODNrMQorLVBlZXJLZXk9QUxJQ0VfY2Zfc2VjdDI4M2sxX1BVQgor LUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFyZWRTZWNyZXQ9MDY3N2JhMDFjODRkMTM5 NjA5Y2ExNDVjYjViNjA3OWZjOWNhNjdmNTljOWM5MTNlNDdjYWQxMDczZjFkMWRmYWRkZGUwMTY5 CistCistUHVibGljS2V5PU1BTElDRV9jZl9zZWN0MjgzazFfUFVCCistLS0tLS1CRUdJTiBQVUJM SUMgS0VZLS0tLS0KKy1NRjR3RUFZSEtvWkl6ajBDQVFZRks0RUVBQkFEU2dBRUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBCistQUFBQkFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQgorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0t LQorLQorLSMgRUNDIENESCBCb2Igd2l0aCBNYWxpY2UgcGVlcgorLURlcml2ZT1CT0JfY2Zfc2Vj dDI4M2sxCistUGVlcktleT1NQUxJQ0VfY2Zfc2VjdDI4M2sxX1BVQgorLUN0cmw9ZWNkaF9jb2Zh Y3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0IGluZmlu aXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1EZXJpdmU9QUxJQ0Vf Y2Zfc2VjdDI4M2sxCistUGVlcktleT1NQUxJQ0VfY2Zfc2VjdDI4M2sxX1BVQgorLUN0cmw9ZWNk aF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBvaW50IGF0 IGluZmluaXR5CistCistVGl0bGU9c2VjdDI4M3IxIGN1cnZlIHRlc3RzCistCistUHJpdmF0ZUtl eT1BTElDRV9jZl9zZWN0MjgzcjEKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRUlD QVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUJFRUt6QXBBZ0VCQkNRQ1E1cHFLdlB4RHlzZDFwaTJC djhaMTFjRmhzUlpmdWFmCistNFBpMGhwR3I0dWJaY0hFPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZ LS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2Zfc2VjdDI4M3IxX1BVQgorLS0tLS0tQkVHSU4g UFVCTElDIEtFWS0tLS0tCistTUY0d0VBWUhLb1pJemowQ0FRWUZLNEVFQUJFRFNnQUVCY3NyR0Rn TzdwYkd5YlFYLzAwZ1JIdFFxMytYOVhyR2I3VXp2OU5hYndjLworLWtudG5CTUYwSTJLVSthYVRq UXgxR1Z0bU5mN0N2RndQTEVCbmZLakpBamVranNHeUlxb3EKKy0tLS0tLUVORCBQVUJMSUMgS0VZ LS0tLS0KKy0KKy1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9zZWN0MjgzcjE6QUxJQ0VfY2Zfc2Vj dDI4M3IxX1BVQgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3NlY3QyODNyMQorLS0tLS0tQkVHSU4g UFJJVkFURSBLRVktLS0tLQorLU1FSUNBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQkVFS3pBcEFn RUJCQ1FEeEl0blkzY0RDclgvakduVnVBS0RQYXlTWkNyM0U4M1EKKy1VZEZuUDZZSXlrdDcrUGc9 CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfY2Zfc2VjdDI4 M3IxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUY0d0VBWUhLb1pJemowQ0FR WUZLNEVFQUJFRFNnQUVCSjJDOUJDa1gwWVJmczJ1ZmdVS3ZyZVVYRldwMkFHSytpSGxaQjROM0xx TworLVBLcG1Ba3JBZUNNdHk2bXcybUVuT1I1SEExZDRFZSt6Ny9OSmdKSjgwUmE5YkZucmVPVzMK Ky0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy1Qcml2UHViS2V5UGFpcj1CT0JfY2Zfc2Vj dDI4M3IxOkJPQl9jZl9zZWN0MjgzcjFfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBl ZXIKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDI4M3IxCistUGVlcktleT1CT0JfY2Zfc2VjdDI4M3Ix X1BVQgorLVNoYXJlZFNlY3JldD0wNDI0MjU5Y2YwOTcyNzU3NGZiODYzY2FiN2MyN2Q4ZmUzODM1 ZTk2NDMzMTEwYTQ1YTk1MWY5NDM0N2ZjODE5MzllYzQ3NzMKKy0KKy0jIEVDREggQm9iIHdpdGgg QWxpY2UgcGVlcgorLURlcml2ZT1CT0JfY2Zfc2VjdDI4M3IxCistUGVlcktleT1BTElDRV9jZl9z ZWN0MjgzcjFfUFVCCistU2hhcmVkU2VjcmV0PTA0MjQyNTljZjA5NzI3NTc0ZmI4NjNjYWI3YzI3 ZDhmZTM4MzVlOTY0MzMxMTBhNDVhOTUxZjk0MzQ3ZmM4MTkzOWVjNDc3MworLQorLSMgRUNDIENE SCBBbGljZSB3aXRoIEJvYiBwZWVyCistRGVyaXZlPUFMSUNFX2NmX3NlY3QyODNyMQorLVBlZXJL ZXk9Qk9CX2NmX3NlY3QyODNyMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hh cmVkU2VjcmV0PTAxYzJhNTQyNjU0Y2U4NWIxNzQ1NmVkNzViNmJjYTZiNmViNzYxNTgwOTEzNjcw ZGViYzQyNmEzNTI1ZjIzNmRmMGU4NzVjOAorLQorLSMgRUNDIENESCBCb2Igd2l0aCBBbGljZSBw ZWVyCistRGVyaXZlPUJPQl9jZl9zZWN0MjgzcjEKKy1QZWVyS2V5PUFMSUNFX2NmX3NlY3QyODNy MV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTAxYzJhNTQy NjU0Y2U4NWIxNzQ1NmVkNzViNmJjYTZiNmViNzYxNTgwOTEzNjcwZGViYzQyNmEzNTI1ZjIzNmRm MGU4NzVjOAorLQorLVB1YmxpY0tleT1NQUxJQ0VfY2Zfc2VjdDI4M3IxX1BVQgorLS0tLS0tQkVH SU4gUFVCTElDIEtFWS0tLS0tCistTUY0d0VBWUhLb1pJemowQ0FRWUZLNEVFQUJFRFNnQUVBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQorLUFBQUFCeXZNbkZlU3Nl dm9HWU1JbjdiNE5hTDlJZ293UkNUS0Y4Q0NyaGRFS3UzcHViUDIKKy0tLS0tLUVORCBQVUJMSUMg S0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGggTWFsaWNlIHBlZXIKKy1EZXJpdmU9Qk9C X2NmX3NlY3QyODNyMQorLVBlZXJLZXk9TUFMSUNFX2NmX3NlY3QyODNyMV9QVUIKKy1DdHJsPWVj ZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBh dCBpbmZpbml0eQorLQorLSMgRUNDIENESCBBbGljZSB3aXRoIE1hbGljZSBwZWVyCistRGVyaXZl PUFMSUNFX2NmX3NlY3QyODNyMQorLVBlZXJLZXk9TUFMSUNFX2NmX3NlY3QyODNyMV9QVUIKKy1D dHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9FUlJPUgorLVJlYXNvbj1w b2ludCBhdCBpbmZpbml0eQorLQorLVRpdGxlPXNlY3Q0MDlrMSBjdXJ2ZSB0ZXN0cworLQorLVBy aXZhdGVLZXk9QUxJQ0VfY2Zfc2VjdDQwOWsxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0t CistTUZFQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFDUUVPakE0QWdFQkJETU90aGNMYWhrWEZn TTB3ak96bTc2N0QxQTcyc0ZSR2xoYgorLWJWSCtFQjd6MldwSWNQWDRPRCtNNFkxcGYvYTd3U2Fv U0FvPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2Zf c2VjdDQwOWsxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUg0d0VBWUhLb1pJ emowQ0FRWUZLNEVFQUNRRGFnQUVBYmlZWXBlRmdDTXNaRk16UWFpd01KRHJDK21DTVQ3S21oWXRE NUVNTWdMVworLTVPdmhhcVlkcFJmNDlBOExPdFZjUlQ3SjVnR2NNclhRZ21RZVMzRmVuQTVvd1du QjJOSWdyVE5mNWQ4QUFFdHJPdXBzSjRjM2tMNmUKKy1hQXpheVoxK1VDRWo4c2tiQzlVPQorLS0t LS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3NlY3Q0 MDlrMTpBTElDRV9jZl9zZWN0NDA5azFfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zfc2VjdDQw OWsxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUZFQ0FRQXdFQVlIS29aSXpqMENB UVlGSzRFRUFDUUVPakE0QWdFQkJETU80M2xkUWxsVGV3ZFp3ZmZINE9FWGR6QnJMd2FiS3NuNAor LTYvaGpnSUFhWWRhL3B0NHlDRVFMTXAxOFFndGZNZXk1RU5JPQorLS0tLS0tRU5EIFBSSVZBVEUg S0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9CX2NmX3NlY3Q0MDlrMV9QVUIKKy0tLS0tLUJFR0lO IFBVQkxJQyBLRVktLS0tLQorLU1INHdFQVlIS29aSXpqMENBUVlGSzRFRUFDUURhZ0FFQVZUUWo2 aFJpelZtT3g0WjZ2cm9OL3pNa21BWStRaGtRMENuRmVKMEF5ZFkKKy1GditmKy80MjB2TUMxTWhx c2M5VnpQTW1JQUg2WnJnR0tEc2Q0Q2U5SlV0WUUwclZoR2VpRzJSYU4xVTVSbGhWSzRhdmtXaEZs eVE1CistdnV1NGFBcFFpV0UzeVFkOXYvST0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0K Ky1Qcml2UHViS2V5UGFpcj1CT0JfY2Zfc2VjdDQwOWsxOkJPQl9jZl9zZWN0NDA5azFfUFVCCist CistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDQwOWsx CistUGVlcktleT1CT0JfY2Zfc2VjdDQwOWsxX1BVQgorLVNoYXJlZFNlY3JldD0wMWZiZTEzMTg4 NTg4YzlkMWFjM2E4YTI2ODBlYTlhMDA5YjI4ZTRiN2Q3ZmE0ZWZjYjFhMjI1NTM4NzZmYjc5NzM2 MTY4MTlmZDg3Yzc1ZTViOGNlNmUzNjI4NTk1ZTRjZTEyZWRiMAorLQorLSMgRUNESCBCb2Igd2l0 aCBBbGljZSBwZWVyCistRGVyaXZlPUJPQl9jZl9zZWN0NDA5azEKKy1QZWVyS2V5PUFMSUNFX2Nm X3NlY3Q0MDlrMV9QVUIKKy1TaGFyZWRTZWNyZXQ9MDFmYmUxMzE4ODU4OGM5ZDFhYzNhOGEyNjgw ZWE5YTAwOWIyOGU0YjdkN2ZhNGVmY2IxYTIyNTUzODc2ZmI3OTczNjE2ODE5ZmQ4N2M3NWU1Yjhj ZTZlMzYyODU5NWU0Y2UxMmVkYjAKKy0KKy0jIEVDQyBDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgor LURlcml2ZT1BTElDRV9jZl9zZWN0NDA5azEKKy1QZWVyS2V5PUJPQl9jZl9zZWN0NDA5azFfUFVC CistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0wMDdlOTQ4NWY3MjM0 YmIyMjU1YmI0MGU1MWY0YmU4NjdjYjBlZjMxZjhlNDg5YTY5N2IzMWI1MWM0ZDUzNDZkYWFlZTUx ZTk2YWU2Zjk2MzZlNmUzYWY1NjA5NWZlMjg3NTUzMjVlZQorLQorLSMgRUNDIENESCBCb2Igd2l0 aCBBbGljZSBwZWVyCistRGVyaXZlPUJPQl9jZl9zZWN0NDA5azEKKy1QZWVyS2V5PUFMSUNFX2Nm X3NlY3Q0MDlrMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0 PTAwN2U5NDg1ZjcyMzRiYjIyNTViYjQwZTUxZjRiZTg2N2NiMGVmMzFmOGU0ODlhNjk3YjMxYjUx YzRkNTM0NmRhYWVlNTFlOTZhZTZmOTYzNmU2ZTNhZjU2MDk1ZmUyODc1NTMyNWVlCistCistUHVi bGljS2V5PU1BTElDRV9jZl9zZWN0NDA5azFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0t LS0KKy1NSDR3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ1FEYWdBRUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBCistQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQVFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQorLUFBQUFBQUFB QUFBQUFBQUFBQUE9CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0MgQ0RIIEJv YiB3aXRoIE1hbGljZSBwZWVyCistRGVyaXZlPUJPQl9jZl9zZWN0NDA5azEKKy1QZWVyS2V5PU1B TElDRV9jZl9zZWN0NDA5azFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQorLVJlc3Vs dD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy0jIEVDQyBDREgg QWxpY2Ugd2l0aCBNYWxpY2UgcGVlcgorLURlcml2ZT1BTElDRV9jZl9zZWN0NDA5azEKKy1QZWVy S2V5PU1BTElDRV9jZl9zZWN0NDA5azFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQor LVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy1UaXRs ZT1zZWN0NDA5cjEgY3VydmUgdGVzdHMKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX2NmX3NlY3Q0MDly MQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1GSUNBUUF3RUFZSEtvWkl6ajBDQVFZ Rks0RUVBQ1VFT3pBNUFnRUJCRFFBeFNDOWxTVDVkdGZYUUkxVWc5Vk1Nb3VlM0dHbmk1T04KKy0r Z2lleVhLMktLYmQyOUtBUHM0L0FPZDhrWDJ3UURzWlBPN0UKKy0tLS0tLUVORCBQUklWQVRFIEtF WS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3NlY3Q0MDlyMV9QVUIKKy0tLS0tLUJFR0lO IFBVQkxJQyBLRVktLS0tLQorLU1INHdFQVlIS29aSXpqMENBUVlGSzRFRUFDVURhZ0FFQVNBdlhB TTE1REplckF1MUp0dHBCdU1KSzEvZkVmRm9odTJpRXB0M3I3VWkKKy1pUW9FUjZIVXNXaXcxaGhj SnlUdjdXenBKUUhGV3JPbEpNZS9Lam1RYS9DeWdTYzY1WUhEekcyN29VTCtLR2RRVUdjNzlaUlN3 bC9xCistZkdacWEzRCtiRFZNd3JobVp0bz0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0K Ky1Qcml2UHViS2V5UGFpcj1BTElDRV9jZl9zZWN0NDA5cjE6QUxJQ0VfY2Zfc2VjdDQwOXIxX1BV QgorLQorLVByaXZhdGVLZXk9Qk9CX2NmX3NlY3Q0MDlyMQorLS0tLS0tQkVHSU4gUFJJVkFURSBL RVktLS0tLQorLU1GSUNBUUF3RUFZSEtvWkl6ajBDQVFZRks0RUVBQ1VFT3pBNUFnRUJCRFFBUmVu KzFQM0pRekJnT3YwcFVZd3NaVFBSVkxwcXFEQVUKKy03bUtMMmxrOWVIN3pTR210Tm9NdlAybTFT MmRCblh4RlkvYlYKKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJP Ql9jZl9zZWN0NDA5cjFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NSDR3RUFZ SEtvWkl6ajBDQVFZRks0RUVBQ1VEYWdBRUFiRFV3MDY2VHRkZk9wRHZybEtvc0V5cVVORUc3clkr QUt2RHFLdytIT3pmCistc1VUWWVlNmNFZjcxb3FKMXNDS1BRaVl6bHdDdS9ITFFlV1B4SVNFNlVv KzUza2tlSm1sMnhwTUJ3b0UyNUdxL0RTUzYxZFI3U1JUWgorLStzVW11bWJJdUd6YnJqdE1SbXc9 CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistUHJpdlB1YktleVBhaXI9Qk9CX2NmX3Nl Y3Q0MDlyMTpCT0JfY2Zfc2VjdDQwOXIxX1BVQgorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBw ZWVyCistRGVyaXZlPUFMSUNFX2NmX3NlY3Q0MDlyMQorLVBlZXJLZXk9Qk9CX2NmX3NlY3Q0MDly MV9QVUIKKy1TaGFyZWRTZWNyZXQ9MDBhNzUxMjU5Y2RiM2I0NDVjZTcxYTQwYTAxYTIxODlkZmNl NzAyMjYxMTExOTA1MDVmYzZlYWJlNGU1YTA1YmZmN2FmNTVmMjAxNWUxZmZjYWI2YWVhN2VhOWE2 ZTc0OTA1ZGEyYTEKKy0KKy0jIEVDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLURlcml2ZT1CT0Jf Y2Zfc2VjdDQwOXIxCistUGVlcktleT1BTElDRV9jZl9zZWN0NDA5cjFfUFVCCistU2hhcmVkU2Vj cmV0PTAwYTc1MTI1OWNkYjNiNDQ1Y2U3MWE0MGEwMWEyMTg5ZGZjZTcwMjI2MTExMTkwNTA1ZmM2 ZWFiZTRlNWEwNWJmZjdhZjU1ZjIwMTVlMWZmY2FiNmFlYTdlYTlhNmU3NDkwNWRhMmExCistCist IyBFQ0MgQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDQwOXIx CistUGVlcktleT1CT0JfY2Zfc2VjdDQwOXIxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2Rl OjEKKy1TaGFyZWRTZWNyZXQ9MDExNWEzMWFlZDQxNmM1MDg5ZDc0YTI2M2VjMzAwYWZmMTNhNTMy OWM2YWQyN2RlOTUwYWUwYjA5MTdiNDBhMzQ2NGZjY2Y1NjkxYWM5NjMzYTUxZTUxNzdhODJiMTVj ZmM0MzRhYWQKKy0KKy0jIEVDQyBDREggQm9iIHdpdGggQWxpY2UgcGVlcgorLURlcml2ZT1CT0Jf Y2Zfc2VjdDQwOXIxCistUGVlcktleT1BTElDRV9jZl9zZWN0NDA5cjFfUFVCCistQ3RybD1lY2Ro X2NvZmFjdG9yX21vZGU6MQorLVNoYXJlZFNlY3JldD0wMTE1YTMxYWVkNDE2YzUwODlkNzRhMjYz ZWMzMDBhZmYxM2E1MzI5YzZhZDI3ZGU5NTBhZTBiMDkxN2I0MGEzNDY0ZmNjZjU2OTFhYzk2MzNh NTFlNTE3N2E4MmIxNWNmYzQzNGFhZAorLQorLVB1YmxpY0tleT1NQUxJQ0VfY2Zfc2VjdDQwOXIx X1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUg0d0VBWUhLb1pJemowQ0FRWUZL NEVFQUNVRGFnQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQor LUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ1pOZmZrZG83aTd5TDV0S0tmVTh0ZGs2c3UwSzE4 NVh3Ykprbjk2SldWRFBaWFozTXkKKy1iRktLU09KN2h5ck04THdsMWU4PQorLS0tLS0tRU5EIFBV QkxJQyBLRVktLS0tLQorLQorLSMgRUNDIENESCBCb2Igd2l0aCBNYWxpY2UgcGVlcgorLURlcml2 ZT1CT0JfY2Zfc2VjdDQwOXIxCistUGVlcktleT1NQUxJQ0VfY2Zfc2VjdDQwOXIxX1BVQgorLUN0 cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVhc29uPXBv aW50IGF0IGluZmluaXR5CistCistIyBFQ0MgQ0RIIEFsaWNlIHdpdGggTWFsaWNlIHBlZXIKKy1E ZXJpdmU9QUxJQ0VfY2Zfc2VjdDQwOXIxCistUGVlcktleT1NQUxJQ0VfY2Zfc2VjdDQwOXIxX1BV QgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1SZXN1bHQ9REVSSVZFX0VSUk9SCistUmVh c29uPXBvaW50IGF0IGluZmluaXR5CistCistVGl0bGU9c2VjdDU3MWsxIGN1cnZlIHRlc3RzCist CistUHJpdmF0ZUtleT1BTElDRV9jZl9zZWN0NTcxazEKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZ LS0tLS0KKy1NR1lDQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUNZRVR6Qk5BZ0VCQkVnQjRhZ3Zr N1FkZjliVmI5YU1WZHRYTDBNdVZ3NmRUbGVCCistenJwUE1ZdHkvcGlJNUdXa1FFR1ZwNE9KU2pG MUJHZ1dtdFlTWWxWMG9JOGpKN2hmV1RqVkdmVldpeDRpcGI4PQorLS0tLS0tRU5EIFBSSVZBVEUg S0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9QUxJQ0VfY2Zfc2VjdDU3MWsxX1BVQgorLS0tLS0tQkVH SU4gUFVCTElDIEtFWS0tLS0tCistTUlHbk1CQUdCeXFHU000OUFnRUdCU3VCQkFBbUE0R1NBQVFE VVpxMFpyZ1lwVFhOcE9wdGpFeGF1cjBLOUZBWUh2MWo5Y3ZBcHR3WAorLWRjbVFmM1ZxZWtNa0da Q2ZOZHFOZXFDYWpHM1FIUmtCSGU0RlpoV3IzRlhpOHdodnZyNDYzbFVEZit0NDZ1bjFrRTZGVFlm aElMR2EKKy1zQlptN09kZmthcllkOVRYQmJtbmtGQStYa3lQbGtNMSs2ZGFNMy9XbW5lZ0srVFln aEZEWExnd2l5RjhzMEVsbGxGN3ozOEdtYzQ9CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCist CistUHJpdlB1YktleVBhaXI9QUxJQ0VfY2Zfc2VjdDU3MWsxOkFMSUNFX2NmX3NlY3Q1NzFrMV9Q VUIKKy0KKy1Qcml2YXRlS2V5PUJPQl9jZl9zZWN0NTcxazEKKy0tLS0tLUJFR0lOIFBSSVZBVEUg S0VZLS0tLS0KKy1NR1lDQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUNZRVR6Qk5BZ0VCQkVnQTNw SU54R09JN0w5TStNaWwrYm0vdWRQd0k0eHU3dWJKCistcDNhb09lcFRYVzk0bGFmOHdqRkxjUW5S VXdIODdWYnE5VkxRRWZDQUZ2cjJ2Wm9CYys1YXNuTnVEaFJOTmVRPQorLS0tLS0tRU5EIFBSSVZB VEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9CX2NmX3NlY3Q1NzFrMV9QVUIKKy0tLS0tLUJF R0lOIFBVQkxJQyBLRVktLS0tLQorLU1JR25NQkFHQnlxR1NNNDlBZ0VHQlN1QkJBQW1BNEdTQUFR RFpScjVHQ1NxMnV6R3htV05CK2JFRDd6eWUxOFJyL0tlaHdYcmJuMXIKKy1yS3RSOGZlK2RnMlYx NUZpZUMzcVplL3dDcE10eXA3OVZtRWFiR2k2aUdMbEFOL3JVRTgxVVJzQS9LN0dWcG1rbHNsVjVn bXdyeVIwCistM0U3akdLUEZlc3VuOWlOdG1wZ00xOFA5eTNhSmQ0UXI0aE1sd1cyTnl3MTg3bDZR Qi9XMmUvaSs4dktYRlRMSGx6NVdMQXlBY3BBPQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQor LQorLVByaXZQdWJLZXlQYWlyPUJPQl9jZl9zZWN0NTcxazE6Qk9CX2NmX3NlY3Q1NzFrMV9QVUIK Ky0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLURlcml2ZT1BTElDRV9jZl9zZWN0NTcx azEKKy1QZWVyS2V5PUJPQl9jZl9zZWN0NTcxazFfUFVCCistU2hhcmVkU2VjcmV0PTAyYjc5Yzky Y2VlNTBkYzViOWZkZGRjZTM2ZDRmYTJlMjhkN2QxNzhjZDc0ZTU3NTk2MWYzOTQyOTQ5NjMwNWIz ODgxNWM4NDBjMmU2NjMyNzQzNWMwNDRlZDg4NWVjOTY0MDY4NTMxMjUxYTIxMTI3MTc2MDI1MzJl OGI2ZDU0MTFkYjJmZTA1YzFhYzE4YworLQorLSMgRUNESCBCb2Igd2l0aCBBbGljZSBwZWVyCist RGVyaXZlPUJPQl9jZl9zZWN0NTcxazEKKy1QZWVyS2V5PUFMSUNFX2NmX3NlY3Q1NzFrMV9QVUIK Ky1TaGFyZWRTZWNyZXQ9MDJiNzljOTJjZWU1MGRjNWI5ZmRkZGNlMzZkNGZhMmUyOGQ3ZDE3OGNk NzRlNTc1OTYxZjM5NDI5NDk2MzA1YjM4ODE1Yzg0MGMyZTY2MzI3NDM1YzA0NGVkODg1ZWM5NjQw Njg1MzEyNTFhMjExMjcxNzYwMjUzMmU4YjZkNTQxMWRiMmZlMDVjMWFjMThjCistCistIyBFQ0Mg Q0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1EZXJpdmU9QUxJQ0VfY2Zfc2VjdDU3MWsxCistUGVl cktleT1CT0JfY2Zfc2VjdDU3MWsxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1T aGFyZWRTZWNyZXQ9MDYzYWVhNzg5NDkyYzk3MjdhNWE2YjdmMjRlOGQzZDM3N2M3MGVlOGU4NmIx MzY2NGUxOTFhNTNiMTkwNWU5MGU3OGI4NTk2MGIxODgxZGI1MTYwYzdjNWNhY2NhMGQ2ODZkOWUx MDQxNDBkNTY1ZWVlZWMxNzQyNmY5M2QzYTdiYTYzOWVjZDcxNmI0M2QyCistCistIyBFQ0MgQ0RI IEJvYiB3aXRoIEFsaWNlIHBlZXIKKy1EZXJpdmU9Qk9CX2NmX3NlY3Q1NzFrMQorLVBlZXJLZXk9 QUxJQ0VfY2Zfc2VjdDU3MWsxX1BVQgorLUN0cmw9ZWNkaF9jb2ZhY3Rvcl9tb2RlOjEKKy1TaGFy ZWRTZWNyZXQ9MDYzYWVhNzg5NDkyYzk3MjdhNWE2YjdmMjRlOGQzZDM3N2M3MGVlOGU4NmIxMzY2 NGUxOTFhNTNiMTkwNWU5MGU3OGI4NTk2MGIxODgxZGI1MTYwYzdjNWNhY2NhMGQ2ODZkOWUxMDQx NDBkNTY1ZWVlZWMxNzQyNmY5M2QzYTdiYTYzOWVjZDcxNmI0M2QyCistCistUHVibGljS2V5PU1B TElDRV9jZl9zZWN0NTcxazFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NSUdu TUJBR0J5cUdTTTQ5QWdFR0JTdUJCQUFtQTRHU0FBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBCistQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQQorLUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB RT0KKy0tLS0tLUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDQyBDREggQm9iIHdpdGggTWFs aWNlIHBlZXIKKy1EZXJpdmU9Qk9CX2NmX3NlY3Q1NzFrMQorLVBlZXJLZXk9TUFMSUNFX2NmX3Nl Y3Q1NzFrMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURFUklWRV9F UlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLSMgRUNDIENESCBBbGljZSB3aXRo IE1hbGljZSBwZWVyCistRGVyaXZlPUFMSUNFX2NmX3NlY3Q1NzFrMQorLVBlZXJLZXk9TUFMSUNF X2NmX3NlY3Q1NzFrMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0b3JfbW9kZToxCistUmVzdWx0PURF UklWRV9FUlJPUgorLVJlYXNvbj1wb2ludCBhdCBpbmZpbml0eQorLQorLVRpdGxlPXNlY3Q1NzFy MSBjdXJ2ZSB0ZXN0cworLQorLVByaXZhdGVLZXk9QUxJQ0VfY2Zfc2VjdDU3MXIxCistLS0tLS1C RUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUdZQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFDY0VU ekJOQWdFQkJFZ0F4ZkwyL2dVc21Kb252RE1SOTVBenExeVNnWE1sS1NSaworLStQTCtXYVM5Mlp5 T280NUhhQzdScEg1c2RrZjRiOTQ4dTZ5MUJYT3hHWnVPUlh5NmxnYmdaMVp4MlVnTDNjST0KKy0t LS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUFMSUNFX2NmX3NlY3Q1NzFy MV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1JR25NQkFHQnlxR1NNNDlBZ0VH QlN1QkJBQW5BNEdTQUFRQks1TDljY0lXYWNVMkExc3JaMzVvcFB1NmtjYkVPc0JQbXZqL3JsTVMK Ky1mRnJkTU9jYWdPWWZjRDAvb3VZSFBodmtIYnI5azg3SWxRSmZuVjZaTlJBNFBtV1NwL0Zqa053 RVRtL2ZxVENVUUh0aS9xcW5LSDdSCistRWQ0ZllST0xGR3Z6K1BYNkUyMFNyeU90MXZybW9SeUM3 WjVGVm1nTVZPUVExQWFCTkFIaTMrSVB0S3g0MVlkWGRicUhKeHVJNWpFPQorLS0tLS0tRU5EIFBV QkxJQyBLRVktLS0tLQorLQorLVByaXZQdWJLZXlQYWlyPUFMSUNFX2NmX3NlY3Q1NzFyMTpBTElD RV9jZl9zZWN0NTcxcjFfUFVCCistCistUHJpdmF0ZUtleT1CT0JfY2Zfc2VjdDU3MXIxCistLS0t LS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUdZQ0FRQXdFQVlIS29aSXpqMENBUVlGSzRFRUFD Y0VUekJOQWdFQkJFZ0F6Y1J2QVNQcFdpMHlicE9HbGowTG96ejAxQzJhNW9EQQorLUc1YWxpYjFF bVpLY3BWVUx4SlhuNzVGUWxUS3BrVUV1V1VnQTR5azVYNURUaVNjVXVoNExEaGFGM0FGaHNFWT0K Ky0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl9jZl9zZWN0NTcx cjFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NSUduTUJBR0J5cUdTTTQ5QWdF R0JTdUJCQUFuQTRHU0FBUUgzZG5MMjJOYWp0cURXVFg2cUQxNHcxQk9scEhGQlVQVHIyNFZ5U2xo Cista2lpQmxPRjk1dTdoRnIvaFNiN2dtLzNmK0lWS3lFMThTaDJrUjRLYXhXY1BXS1k1eEtUaXFp SUNUN2hDaXN0dXpOUnQ4Z1Ira05PVAorLWMxckVUTVY2WnJ1Wmlud3pFV1dXandKZjY2MTJveTJI RzNDWDNCOFJtK2Ezc1MwcTZJem93RXdxbUR2NnY5Yk1URms4YnNDdjBGaz0KKy0tLS0tLUVORCBQ VUJMSUMgS0VZLS0tLS0KKy0KKy1Qcml2UHViS2V5UGFpcj1CT0JfY2Zfc2VjdDU3MXIxOkJPQl9j Zl9zZWN0NTcxcjFfUFVCCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1EZXJpdmU9 QUxJQ0VfY2Zfc2VjdDU3MXIxCistUGVlcktleT1CT0JfY2Zfc2VjdDU3MXIxX1BVQgorLVNoYXJl ZFNlY3JldD0wMDMxZjk4NzlmYTc1YjhjNjdiYTgxZWU4NjFiZTYzNGUyYjUzYWE3OWY4MzRlOWE4 Y2E0ZGY3ZjQ0NjFiY2IwMmYwODNkOWZhNWI0NzY3Zjg4MWE3MTBjYWE2NTI0YjU4ZWI2MjY2MjNi YTM5NDk2MWQ0NjUzNTIwNGMyNmQxNjUwODllN2Q0ZjdiZTE4MjcKKy0KKy0jIEVDREggQm9iIHdp dGggQWxpY2UgcGVlcgorLURlcml2ZT1CT0JfY2Zfc2VjdDU3MXIxCistUGVlcktleT1BTElDRV9j Zl9zZWN0NTcxcjFfUFVCCistU2hhcmVkU2VjcmV0PTAwMzFmOTg3OWZhNzViOGM2N2JhODFlZTg2 MWJlNjM0ZTJiNTNhYTc5ZjgzNGU5YThjYTRkZjdmNDQ2MWJjYjAyZjA4M2Q5ZmE1YjQ3NjdmODgx YTcxMGNhYTY1MjRiNThlYjYyNjYyM2JhMzk0OTYxZDQ2NTM1MjA0YzI2ZDE2NTA4OWU3ZDRmN2Jl MTgyNworLQorLSMgRUNDIENESCBBbGljZSB3aXRoIEJvYiBwZWVyCistRGVyaXZlPUFMSUNFX2Nm X3NlY3Q1NzFyMQorLVBlZXJLZXk9Qk9CX2NmX3NlY3Q1NzFyMV9QVUIKKy1DdHJsPWVjZGhfY29m YWN0b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTAxMmU4YzJjMTU1NDk4OGZlMjBjNWFlN2QxMWNk Y2ZlMTVjN2M2ZThkMmI2ZjQ2YTQzYTQ1ZDcyNGJmYzdiNDE1ZWE3NTk0ZDVjMTZmNzcwYTk1ZDZl NjViYmNiMWYzNDYxOWRiOTVlODlmNGZlY2JjYjBiYzZhM2Y5MmQ1MmRmNmE0OWIwZTc3NzNlMGFj MAorLQorLSMgRUNDIENESCBCb2Igd2l0aCBBbGljZSBwZWVyCistRGVyaXZlPUJPQl9jZl9zZWN0 NTcxcjEKKy1QZWVyS2V5PUFMSUNFX2NmX3NlY3Q1NzFyMV9QVUIKKy1DdHJsPWVjZGhfY29mYWN0 b3JfbW9kZToxCistU2hhcmVkU2VjcmV0PTAxMmU4YzJjMTU1NDk4OGZlMjBjNWFlN2QxMWNkY2Zl MTVjN2M2ZThkMmI2ZjQ2YTQzYTQ1ZDcyNGJmYzdiNDE1ZWE3NTk0ZDVjMTZmNzcwYTk1ZDZlNjVi YmNiMWYzNDYxOWRiOTVlODlmNGZlY2JjYjBiYzZhM2Y5MmQ1MmRmNmE0OWIwZTc3NzNlMGFjMAor LQorLVB1YmxpY0tleT1NQUxJQ0VfY2Zfc2VjdDU3MXIxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElD IEtFWS0tLS0tCistTUlHbk1CQUdCeXFHU000OUFnRUdCU3VCQkFBbkE0R1NBQVFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQorLUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFITXRWV1pBd2d0ZDF6bWdXTi85V0MKKy1h TlFjV1JOVUtlc0VIWHFoSlZrQzVqWXNTQUNvZEtzTFlGTnJXRVlNMGd3RzhEUU9OWlNuOTNHKzM4 RU00NXRrYVpzSVJEdDJIRU09CistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0Mg Q0RIIEJvYiB3aXRoIE1hbGljZSBwZWVyCistRGVyaXZlPUJPQl9jZl9zZWN0NTcxcjEKKy1QZWVy S2V5PU1BTElDRV9jZl9zZWN0NTcxcjFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21vZGU6MQor LVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKKy0KKy0jIEVD QyBDREggQWxpY2Ugd2l0aCBNYWxpY2UgcGVlcgorLURlcml2ZT1BTElDRV9jZl9zZWN0NTcxcjEK Ky1QZWVyS2V5PU1BTElDRV9jZl9zZWN0NTcxcjFfUFVCCistQ3RybD1lY2RoX2NvZmFjdG9yX21v ZGU6MQorLVJlc3VsdD1ERVJJVkVfRVJST1IKKy1SZWFzb249cG9pbnQgYXQgaW5maW5pdHkKK2Rp ZmYgLXVwIG9wZW5zc2wtMy4wLjAtYmV0YTEvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEv ZXZwcGtleV9lY2MudHh0LnJlbW92ZS1lYyBvcGVuc3NsLTMuMC4wLWJldGExL3Rlc3QvcmVjaXBl cy8zMC10ZXN0X2V2cF9kYXRhL2V2cHBrZXlfZWNjLnR4dAorLS0tIG9wZW5zc2wtMy4wLjAtYmV0 YTEvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwcGtleV9lY2MudHh0LnJlbW92ZS1l YwkyMDIxLTA2LTMwIDEwOjUxOjIzLjI1ODgxNjgwMiArMDIwMAorKysrIG9wZW5zc2wtMy4wLjAt YmV0YTEvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwcGtleV9lY2MudHh0CTIwMjEt MDYtMzAgMTE6MjU6MzMuNTA0NzIxNjcyICswMjAwCitAQCAtMSwzICsxLDQgQEAKKysKKyAjCisg IyBDb3B5cmlnaHQgMjAwMS0yMDIxIFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJp Z2h0cyBSZXNlcnZlZC4KKyAjCitAQCAtNTUsMTUxICs1Niw2IEBAIERlcml2ZT1CT0JfY2Zfc2Vj cDI1NmsxCisgUGVlcktleT1BTElDRV9jZl9zZWNwMjU2azFfUFVCCisgU2hhcmVkU2VjcmV0PWE0 NzQ1Y2M0ZDE5Y2FiYjllNWNiMGFiZGQ1YzYwNGNhYjI4NDZhNDYzOGFkODQ0ZWQ5MTc1ZjNjYWRk YTJkYTEKKyAKKy0tLS0tLUJFR0lOIFBSSVZBVEUgS0VZLS0tLS0KKy1NRGtDQVFBd0V3WUhLb1pJ emowQ0FRWUlLb1pJemowREFRSUVIekFkQWdFQkJCajFBSVFNSjdqcVlJS0N2eFlBUytxS01tS21I MHRvCistNDFrPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0KKy1QdWJsaWNLZXk9Qk9C X3plcm9fcHJpbWUxOTJ2Ml9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1Fa3dF d1lIS29aSXpqMENBUVlJS29aSXpqMERBUUlETWdBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQjRHajdRcXQKKy0yd3gvandGbEtndkU0cm5kNTBMc3BkTWsKKy0tLS0tLUVORCBQVUJM SUMgS0VZLS0tLS0KKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWlu ID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV96ZXJvX3ByaW1lMTkydjIKKy1QZWVyS2V5PUJPQl96 ZXJvX3ByaW1lMTkydjJfUFVCCistU2hhcmVkU2VjcmV0PWI4ZjIwMGE0Yjg3MDY0ZjJlODYwMDY4 NWNhM2U2OWI4ZTY2MWExMTdhYWJjNzcwYgorLQorLVByaXZhdGVLZXk9QUxJQ0VfemVyb19wcmlt ZTE5MnYzCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTURrQ0FRQXdFd1lIS29aSXpq MENBUVlJS29aSXpqMERBUU1FSHpBZEFnRUJCQmgvbWFMUU1TbGVhOUJmTHFHeTVOUHVLMFlBSC9j egorLUdxST0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5PUJPQl96 ZXJvX3ByaW1lMTkydjNfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NRWt3RXdZ SEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFNRE1nQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQVpFemI2M2UyCistM01LYXRSTFI5WTFNNUpFZEk5andNb2NJCistLS0tLS1FTkQgUFVCTElD IEtFWS0tLS0tCistCistIyBFQ0RIIEFsaWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9 IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0VfemVyb19wcmltZTE5MnYzCistUGVlcktleT1CT0JfemVy b19wcmltZTE5MnYzX1BVQgorLVNoYXJlZFNlY3JldD1iNWRlODU3ZDM1NWJjNWI5ZTI3MGE0YzI5 MGVhOTcyOGQ3NjRkOGIyNDNmZjVkOGQKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX3plcm9fcHJpbWUy Mzl2MQorLS0tLS0tQkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1EOENBUUF3RXdZSEtvWkl6ajBD QVFZSUtvWkl6ajBEQVFRRUpUQWpBZ0VCQkI1cFlXelJZSStjNk83TlhDdDBIMmt3OFhSTDNyaGUK Ky00TXJKVDhqKytDST0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5 PUJPQl96ZXJvX3ByaW1lMjM5djFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1N RlV3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBEQVFRRFBnQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBCistT3gwMnV3Tk5MRnV2RFJuNWlwOFR4dlcwVzIyUjdVekphOUF2 Ni9uaAorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLSMgRUNESCBBbGljZSB3aXRoIEJv YiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX3plcm9fcHJpbWUy Mzl2MQorLVBlZXJLZXk9Qk9CX3plcm9fcHJpbWUyMzl2MV9QVUIKKy1TaGFyZWRTZWNyZXQ9NmI2 MjA2NDA4YmQwNWQ0MmRhYTJjZDIyNGM0MDFhMTIzMGI0NGUxODRmMTdiODJmMzg1ZjIyZGFjMjE1 CistCistUHJpdmF0ZUtleT1BTElDRV96ZXJvX3ByaW1lMjM5djIKKy0tLS0tLUJFR0lOIFBSSVZB VEUgS0VZLS0tLS0KKy1NRDhDQVFBd0V3WUhLb1pJemowQ0FRWUlLb1pJemowREFRVUVKVEFqQWdF QkJCNWw4YkI3Q3Btcjd2eXg5RmlPVDJ3RUYzWU9GYkRHCistYm1ScjNWaS94cjQ9CistLS0tLS1F TkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfemVyb19wcmltZTIzOXYyX1BV QgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZVd0V3WUhLb1pJemowQ0FRWUlLb1pJ emowREFRVURQZ0FFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQQorLUlP ZzNWSkdRODlkMUdXZzRJZ3hjajV4cERtSmlQOHR2K2U0bXh0NVUKKy0tLS0tLUVORCBQVUJMSUMg S0VZLS0tLS0KKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2YWlsYWJsZWluID0g ZGVmYXVsdAorLURlcml2ZT1BTElDRV96ZXJvX3ByaW1lMjM5djIKKy1QZWVyS2V5PUJPQl96ZXJv X3ByaW1lMjM5djJfUFVCCistU2hhcmVkU2VjcmV0PTc3MmMyODE5Yzk2MGM3OGYyOGYyMWY2NTQy Yjc0MDkyOTRmYWQxZjg0NTY3YzQ0YzRiNzY3OGRjMGU0MgorLQorLVByaXZhdGVLZXk9QUxJQ0Vf emVyb19wcmltZTIzOXYzCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUQ4Q0FRQXdF d1lIS29aSXpqMENBUVlJS29aSXpqMERBUVlFSlRBakFnRUJCQjVIRjVGQUJ6VU9UWU1aZzlVZFpU eC9vUkVSbS9mVQorLU0vK290S3pwTGpBPQorLS0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KKy0K Ky1QdWJsaWNLZXk9Qk9CX3plcm9fcHJpbWUyMzl2M19QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBL RVktLS0tLQorLU1GVXdFd1lIS29aSXpqMENBUVlJS29aSXpqMERBUVlEUGdBRUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUEKKy1Bc1o0dTZyM3FRSTc4RVlCcGlTZ1dqcU5w b2VTaGpyNXBpZWNNQldqCistLS0tLS1FTkQgUFVCTElDIEtFWS0tLS0tCistCistIyBFQ0RIIEFs aWNlIHdpdGggQm9iIHBlZXIKKy1BdmFpbGFibGVpbiA9IGRlZmF1bHQKKy1EZXJpdmU9QUxJQ0Vf emVyb19wcmltZTIzOXYzCistUGVlcktleT1CT0JfemVyb19wcmltZTIzOXYzX1BVQgorLVNoYXJl ZFNlY3JldD01NmE3MWY1ZGQxNjExZTgwMzJjM2UyZDgyMjRkODZlNWU4YzJmYzY0ODBkNzRjMGUy ODIyODJkZWNkNDMKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX3plcm9fcHJpbWUyNTZ2MQorLS0tLS0t QkVHSU4gUFJJVkFURSBLRVktLS0tLQorLU1FRUNBUUF3RXdZSEtvWkl6ajBDQVFZSUtvWkl6ajBE QVFjRUp6QWxBZ0VCQkNEWGhNYjZhUjRKUjIrbDJ0bWdZcVAwcjhTNGp0eW0KKy15SCsrYXd2RjJu R2hoZz09CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfemVy b19wcmltZTI1NnYxX1BVQgorLS0tLS0tQkVHSU4gUFVCTElDIEtFWS0tLS0tCistTUZrd0V3WUhL b1pJemowQ0FRWUlLb1pJemowREFRY0RRZ0FFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQQorLUFBQm1TRng0RGkrRDF5UXp2VjJFb0d1MlZCd3E4eDJ1aHhjb3Y0VnFGMCtU OUE9PQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0tLQorLQorLSMgRUNESCBBbGljZSB3aXRoIEJv YiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0CistRGVyaXZlPUFMSUNFX3plcm9fcHJpbWUy NTZ2MQorLVBlZXJLZXk9Qk9CX3plcm9fcHJpbWUyNTZ2MV9QVUIKKy1TaGFyZWRTZWNyZXQ9YzRm NTYwN2RlYjg1MDFmMWE0YmEyM2ZjZTQxMjJhNDM0M2ExN2FkYTJjODZhOWM4ZTBkMDNkOTJkNGE0 Yzg0YworLQorLVByaXZhdGVLZXk9QUxJQ0VfemVyb19zZWNwMzg0cjEKKy0tLS0tLUJFR0lOIFBS SVZBVEUgS0VZLS0tLS0KKy1NRTRDQVFBd0VBWUhLb1pJemowQ0FRWUZLNEVFQUNJRU56QTFBZ0VC QkRENmtnektiZzI4emJReVZUZEMwSWRIYm0wVUNRdDJSZGJpCistVlZISmVZUlNuTnBGT2lGTGFP c0dPbXdvZVp6ajZqYz0KKy0tLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCistCistUHVibGljS2V5 PUJPQl96ZXJvX3NlY3AzODRyMV9QVUIKKy0tLS0tLUJFR0lOIFBVQkxJQyBLRVktLS0tLQorLU1I WXdFQVlIS29aSXpqMENBUVlGSzRFRUFDSURZZ0FFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBQUFBQUFBQUFBQUFBQUEKKy1BQUFBQUFBQUFBQUFBQUFBQUFBQVBQbWU4RTlScGVwakM2UDUr V0RkV1RvVXliNDUvU3ZTRmRPMHNJcXErR3Uva244c1J1VXFzRyszCistUXJpRkRsSWUKKy0tLS0t LUVORCBQVUJMSUMgS0VZLS0tLS0KKy0KKy0jIEVDREggQWxpY2Ugd2l0aCBCb2IgcGVlcgorLUF2 YWlsYWJsZWluID0gZGVmYXVsdAorLURlcml2ZT1BTElDRV96ZXJvX3NlY3AzODRyMQorLVBlZXJL ZXk9Qk9CX3plcm9fc2VjcDM4NHIxX1BVQgorLVNoYXJlZFNlY3JldD1iMWNmZWFlZWY1MWRmZDQ4 N2QzYThiMjg0OWYxNTkyZTA0ZDYzZjJkMmM4OGIzMTBhNjI5MGViZmU1Mzk5ZjVmZmU5NTRlYWJk MDYxOTIzMTM5M2U1NmMzNWIyNDI5ODYKKy0KKy1Qcml2YXRlS2V5PUFMSUNFX3plcm9fc2VjcDUy MXIxCistLS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCistTUdBQ0FRQXdFQVlIS29aSXpqMENB UVlGSzRFRUFDTUVTVEJIQWdFQkJFSUFiZGRETE1VV2JBc1k3bDN2Yk5EbW50WHVBVWNEWVBnNQor LXcvY2dVd1NDSXZyVjlNQmVTRzhBV3FUMTZyaUhtSGxzbitYSTVQQUpNNmVpajNKRGFobnU5TW89 CistLS0tLS1FTkQgUFJJVkFURSBLRVktLS0tLQorLQorLVB1YmxpY0tleT1CT0JfemVyb19zZWNw NTIxcjFfUFVCCistLS0tLS1CRUdJTiBQVUJMSUMgS0VZLS0tLS0KKy1NSUdiTUJBR0J5cUdTTTQ5 QWdFR0JTdUJCQUFqQTRHR0FBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB QUFBCistQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBMGc3 Si9xYTFkOEVOSnNvYnRFYjBDeW1lWklzYQorLTFRaXEwR2lKYis0L2ptRkx4akJVMVhjcjhCcGwx QkxndktxT2xsMHZYVE10ZnpuNFJ0UkFyZ0FmVDRjPQorLS0tLS0tRU5EIFBVQkxJQyBLRVktLS0t LQorLQorLSMgRUNESCBBbGljZSB3aXRoIEJvYiBwZWVyCistQXZhaWxhYmxlaW4gPSBkZWZhdWx0 CistRGVyaXZlPUFMSUNFX3plcm9fc2VjcDUyMXIxCistUGVlcktleT1CT0JfemVyb19zZWNwNTIx cjFfUFVCCistU2hhcmVkU2VjcmV0PTAwM2ZjMzAyOGY2MWRiOTRiMjBjN2NkMTc3OTIzYjZlNzNm MTJmMGFiMDY3YzljZTg4NjY3NTVlM2M4MmFiYjM5Yzk4NjNjZGU3NGZhODBiMzI1MjBiZDdkZDBl YjE1NmMzMGMwODkxMTUwM2I2N2IyNjYxZjEyNjRkMDliYjIzMTQyMworLQorIFRpdGxlPXByaW1l MjU2djEgY3VydmUgdGVzdHMKKyAKKyBQcml2YXRlS2V5PUFMSUNFX2NmX3ByaW1lMjU2djEKCmRp ZmYgLS1naXQgYS8wMDI0LWxvYWQtbGVnYWN5LXByb3YucGF0Y2ggYi8wMDI0LWxvYWQtbGVnYWN5 LXByb3YucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGMxODJlNwot LS0gL2Rldi9udWxsCisrKyBiLzAwMjQtbG9hZC1sZWdhY3ktcHJvdi5wYXRjaApAQCAtMCwwICsx LDc1IEBACitkaWZmIC11cCBvcGVuc3NsLTMuMC4wL2FwcHMvb3BlbnNzbC5jbmYubGVnYWN5LXBy b3Ygb3BlbnNzbC0zLjAuMC9hcHBzL29wZW5zc2wuY25mCistLS0gb3BlbnNzbC0zLjAuMC9hcHBz L29wZW5zc2wuY25mLmxlZ2FjeS1wcm92CTIwMjEtMDktMDkgMTI6MDY6NDAuODk1NzkzMjk3ICsw MjAwCisrKysgb3BlbnNzbC0zLjAuMC9hcHBzL29wZW5zc2wuY25mCTIwMjEtMDktMDkgMTI6MTI6 MzMuOTQ3NDgyNTAwICswMjAwCitAQCAtNDIsMzYgKzQyLDI5IEBAIHRzYV9wb2xpY3kxID0gMS4y LjMuNC4xCisgdHNhX3BvbGljeTIgPSAxLjIuMy40LjUuNgorIHRzYV9wb2xpY3kzID0gMS4yLjMu NC41LjcKKyAKKy0jIEZvciBGSVBTCistIyBPcHRpb25hbGx5IGluY2x1ZGUgYSBmaWxlIHRoYXQg aXMgZ2VuZXJhdGVkIGJ5IHRoZSBPcGVuU1NMIGZpcHNpbnN0YWxsCistIyBhcHBsaWNhdGlvbi4g VGhpcyBmaWxlIGNvbnRhaW5zIGNvbmZpZ3VyYXRpb24gZGF0YSByZXF1aXJlZCBieSB0aGUgT3Bl blNTTAorLSMgZmlwcyBwcm92aWRlci4gSXQgY29udGFpbnMgYSBuYW1lZCBzZWN0aW9uIGUuZy4g W2ZpcHNfc2VjdF0gd2hpY2ggaXMKKy0jIHJlZmVyZW5jZWQgZnJvbSB0aGUgW3Byb3ZpZGVyX3Nl Y3RdIGJlbG93LgorLSMgUmVmZXIgdG8gdGhlIE9wZW5TU0wgc2VjdXJpdHkgcG9saWN5IGZvciBt b3JlIGluZm9ybWF0aW9uLgorLSMgLmluY2x1ZGUgZmlwc21vZHVsZS5jbmYKKy0KKyBbb3BlbnNz bF9pbml0XQorIHByb3ZpZGVycyA9IHByb3ZpZGVyX3NlY3QKKyAjIExvYWQgZGVmYXVsdCBUTFMg cG9saWN5IGNvbmZpZ3VyYXRpb24KKyBzc2xfY29uZiA9IHNzbF9tb2R1bGUKKyAKKy0jIExpc3Qg b2YgcHJvdmlkZXJzIHRvIGxvYWQKKy1bcHJvdmlkZXJfc2VjdF0KKy1kZWZhdWx0ID0gZGVmYXVs dF9zZWN0CistIyBUaGUgZmlwcyBzZWN0aW9uIG5hbWUgc2hvdWxkIG1hdGNoIHRoZSBzZWN0aW9u IG5hbWUgaW5zaWRlIHRoZQorLSMgaW5jbHVkZWQgZmlwc21vZHVsZS5jbmYuCistIyBmaXBzID0g Zmlwc19zZWN0CisrIyBVbmNvbW1lbnQgdGhlIHNlY3Rpb25zIHRoYXQgc3RhcnQgd2l0aCAjIyBi ZWxvdyB0byBlbmFibGUgdGhlIGxlZ2FjeSBwcm92aWRlci4KKysjIExvYWRpbmcgdGhlIGxlZ2Fj eSBwcm92aWRlciBlbmFibGVzIHN1cHBvcnQgZm9yIHRoZSBmb2xsb3dpbmcgYWxnb3JpdGhtczoK KysjIEhhc2hpbmcgQWxnb3JpdGhtcyAvIE1lc3NhZ2UgRGlnZXN0czogTUQyLCBNRDQsIE1EQzIs IFdISVJMUE9PTCwgUklQRU1EMTYwCisrIyBTeW1tZXRyaWMgQ2lwaGVyczogQmxvd2Zpc2gsIENB U1QsIERFUywgSURFQSwgUkMyLCBSQzQsUkM1LCBTRUVECisrIyBLZXkgRGVyaXZhdGlvbiBGdW5j dGlvbiAoS0RGKTogUEJLREYxCisrIyBJbiBnZW5lcmFsIGl0IGlzIG5vdCByZWNvbW1lbmRlZCB0 byB1c2UgdGhlIGFib3ZlIG1lbnRpb25lZCBhbGdvcml0aG1zIGZvcgorKyMgc2VjdXJpdHkgY3Jp dGljYWwgb3BlcmF0aW9ucywgYXMgdGhleSBhcmUgY3J5cHRvZ3JhcGhpY2FsbHkgd2VhayBvciB2 dWxuZXJhYmxlCisrIyB0byBzaWRlLWNoYW5uZWwgYXR0YWNrcyBhbmQgYXMgc3VjaCBoYXZlIGJl ZW4gZGVwcmVjYXRlZC4KKyAKKy0jIElmIG5vIHByb3ZpZGVycyBhcmUgYWN0aXZhdGVkIGV4cGxp Y2l0bHksIHRoZSBkZWZhdWx0IG9uZSBpcyBhY3RpdmF0ZWQgaW1wbGljaXRseS4KKy0jIFNlZSBt YW4gNyBPU1NMX1BST1ZJREVSLWRlZmF1bHQgZm9yIG1vcmUgZGV0YWlscy4KKy0jCistIyBJZiB5 b3UgYWRkIGEgc2VjdGlvbiBleHBsaWNpdGx5IGFjdGl2YXRpbmcgYW55IG90aGVyIHByb3ZpZGVy KHMpLCB5b3UgbW9zdAorLSMgcHJvYmFibHkgbmVlZCB0byBleHBsaWNpdGx5IGFjdGl2YXRlIHRo ZSBkZWZhdWx0IHByb3ZpZGVyLCBvdGhlcndpc2UgaXQKKy0jIGJlY29tZXMgdW5hdmFpbGFibGUg aW4gb3BlbnNzbC4gIEFzIGEgY29uc2VxdWVuY2UgYXBwbGljYXRpb25zIGRlcGVuZGluZyBvbgor LSMgT3BlblNTTCBtYXkgbm90IHdvcmsgY29ycmVjdGx5IHdoaWNoIGNvdWxkIGxlYWQgdG8gc2ln bmlmaWNhbnQgc3lzdGVtCistIyBwcm9ibGVtcyBpbmNsdWRpbmcgaW5hYmlsaXR5IHRvIHJlbW90 ZWx5IGFjY2VzcyB0aGUgc3lzdGVtLgorLVtkZWZhdWx0X3NlY3RdCistIyBhY3RpdmF0ZSA9IDEK KytbcHJvdmlkZXJfc2VjdF0KKysjI2RlZmF1bHQgPSBkZWZhdWx0X3NlY3QKKysjI2xlZ2FjeSA9 IGxlZ2FjeV9zZWN0CisrIyMKKysjI1tkZWZhdWx0X3NlY3RdCisrIyNhY3RpdmF0ZSA9IDEKKysj IworKyMjW2xlZ2FjeV9zZWN0XQorKyMjYWN0aXZhdGUgPSAxCisgCisgWyBzc2xfbW9kdWxlIF0K KyAKK2RpZmYgLXVwIG9wZW5zc2wtMy4wLjAvZG9jL21hbjUvY29uZmlnLnBvZC5sZWdhY3ktcHJv diBvcGVuc3NsLTMuMC4wL2RvYy9tYW41L2NvbmZpZy5wb2QKKy0tLSBvcGVuc3NsLTMuMC4wL2Rv Yy9tYW41L2NvbmZpZy5wb2QubGVnYWN5LXByb3YJMjAyMS0wOS0wOSAxMjowOTozOC4wNzkwNDA4 NTMgKzAyMDAKKysrKyBvcGVuc3NsLTMuMC4wL2RvYy9tYW41L2NvbmZpZy5wb2QJMjAyMS0wOS0w OSAxMjoxMTo1Ni42NDYyMjQ4NzYgKzAyMDAKK0BAIC0yNzMsNiArMjczLDE0IEBAIHNpZ25pZmlj YW50LgorIEFsbCBwYXJhbWV0ZXJzIGluIHRoZSBzZWN0aW9uIGFzIHdlbGwgYXMgc3ViLXNlY3Rp b25zIGFyZSBtYWRlCisgYXZhaWxhYmxlIHRvIHRoZSBwcm92aWRlci4KKyAKKys9aGVhZDMgTG9h ZGluZyB0aGUgbGVnYWN5IHByb3ZpZGVyCisrCisrVW5jb21tZW50IHRoZSBzZWN0aW9ucyB0aGF0 IHN0YXJ0IHdpdGggIyMgaW4gb3BlbnNzbC5jbmYKKyt0byBlbmFibGUgdGhlIGxlZ2FjeSBwcm92 aWRlci4KKytOb3RlOiBJbiBnZW5lcmFsIGl0IGlzIG5vdCByZWNvbW1lbmRlZCB0byB1c2UgdGhl IGFib3ZlIG1lbnRpb25lZCBhbGdvcml0aG1zIGZvcgorK3NlY3VyaXR5IGNyaXRpY2FsIG9wZXJh dGlvbnMsIGFzIHRoZXkgYXJlIGNyeXB0b2dyYXBoaWNhbGx5IHdlYWsgb3IgdnVsbmVyYWJsZQor K3RvIHNpZGUtY2hhbm5lbCBhdHRhY2tzIGFuZCBhcyBzdWNoIGhhdmUgYmVlbiBkZXByZWNhdGVk LgorKworID1oZWFkMyBEZWZhdWx0IHByb3ZpZGVyIGFuZCBpdHMgYWN0aXZhdGlvbgorIAorIElm IG5vIHByb3ZpZGVycyBhcmUgYWN0aXZhdGVkIGV4cGxpY2l0bHksIHRoZSBkZWZhdWx0IG9uZSBp cyBhY3RpdmF0ZWQgaW1wbGljaXRseS4KCmRpZmYgLS1naXQgYS9jb25maWd1cmF0aW9uLXByZWZp eC5oIGIvY29uZmlndXJhdGlvbi1wcmVmaXguaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi4xM2I2ZTIzCi0tLSAvZGV2L251bGwKKysrIGIvY29uZmlndXJhdGlvbi1wcmVmaXgu aApAQCAtMCwwICsxLDcgQEAKKy8qIFByZXBlbmRlZCBhdCBvcGVuc3NsIHBhY2thZ2UgYnVpbGQt dGltZS4gIERvbid0IGluY2x1ZGUgdGhpcyBmaWxlIGRpcmVjdGx5LAorICogdXNlIDxvcGVuc3Ns L29wZW5zc2xjb25mLmg+IGluc3RlYWQuICovCisKKyNpZm5kZWYgb3BlbnNzbF9jb25mX211bHRp bGliX3JlZGlyZWN0aW9uX2gKKyNlcnJvciAiRG9uJ3QgaW5jbHVkZSB0aGlzIGZpbGUgZGlyZWN0 bHksIHVzZSA8b3BlbnNzbC9vcGVuc3NsY29uZi5oPiBpbnN0ZWFkISIKKyNlbmRpZgorCgpkaWZm IC0tZ2l0IGEvY29uZmlndXJhdGlvbi1zd2l0Y2guaCBiL2NvbmZpZ3VyYXRpb24tc3dpdGNoLmgK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWM0ZDIzOAotLS0gL2Rldi9udWxs CisrKyBiL2NvbmZpZ3VyYXRpb24tc3dpdGNoLmgKQEAgLTAsMCArMSw0NyBAQAorLyogVGhpcyBm aWxlIGlzIGhlcmUgdG8gcHJldmVudCBhIGZpbGUgY29uZmxpY3Qgb24gbXVsdGlhcmNoIHN5c3Rl bXMuICBBCisgKiBjb25mbGljdCB3aWxsIGZyZXF1ZW50bHkgb2NjdXIgYmVjYXVzZSBhcmNoLXNw ZWNpZmljIGJ1aWxkLXRpbWUKKyAqIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBhcmUgc3RvcmVkIChh bmQgdXNlZCwgc28gdGhleSBjYW4ndCBqdXN0IGJlIHN0cmlwcGVkCisgKiBvdXQpIGluIGNvbmZp Z3VyYXRpb24uaC4gIFRoZSBvcmlnaW5hbCBjb25maWd1cmF0aW9uLmggaGFzIGJlZW4gcmVuYW1l ZC4KKyAqIERPIE5PVCBJTkNMVURFIFRIRSBORVcgRklMRSBESVJFQ1RMWSAtLSBBTFdBWVMgSU5D TFVERSBUSElTIE9ORSBJTlNURUFELiAqLworCisjaWZkZWYgb3BlbnNzbF9jb25mX211bHRpbGli X3JlZGlyZWN0aW9uX2gKKyNlcnJvciAiRG8gbm90IGRlZmluZSBvcGVuc3NsX2NvbmZfbXVsdGls aWJfcmVkaXJlY3Rpb25faCEiCisjZW5kaWYKKyNkZWZpbmUgb3BlbnNzbF9jb25mX211bHRpbGli X3JlZGlyZWN0aW9uX2gKKworI2lmIGRlZmluZWQoX19pMzg2X18pCisjaW5jbHVkZSAiY29uZmln dXJhdGlvbi1pMzg2LmgiCisjZWxpZiBkZWZpbmVkKF9faWE2NF9fKQorI2luY2x1ZGUgImNvbmZp Z3VyYXRpb24taWE2NC5oIgorI2VsaWYgZGVmaW5lZChfX21pcHM2NCkgJiYgZGVmaW5lZChfX01J UFNFTF9fKQorI2luY2x1ZGUgImNvbmZpZ3VyYXRpb24tbWlwczY0ZWwuaCIKKyNlbGlmIGRlZmlu ZWQoX19taXBzNjQpCisjaW5jbHVkZSAiY29uZmlndXJhdGlvbi1taXBzNjQuaCIKKyNlbGlmIGRl ZmluZWQoX19taXBzKSAmJiBkZWZpbmVkKF9fTUlQU0VMX18pCisjaW5jbHVkZSAiY29uZmlndXJh dGlvbi1taXBzZWwuaCIKKyNlbGlmIGRlZmluZWQoX19taXBzKQorI2luY2x1ZGUgImNvbmZpZ3Vy YXRpb24tbWlwcy5oIgorI2VsaWYgZGVmaW5lZChfX3Bvd2VycGM2NF9fKQorI2luY2x1ZGUgPGVu ZGlhbi5oPgorI2lmIF9fQllURV9PUkRFUl9fID09IF9fT1JERVJfQklHX0VORElBTl9fCisjaW5j bHVkZSAiY29uZmlndXJhdGlvbi1wcGM2NC5oIgorI2Vsc2UKKyNpbmNsdWRlICJjb25maWd1cmF0 aW9uLXBwYzY0bGUuaCIKKyNlbmRpZgorI2VsaWYgZGVmaW5lZChfX3Bvd2VycGNfXykKKyNpbmNs dWRlICJjb25maWd1cmF0aW9uLXBwYy5oIgorI2VsaWYgZGVmaW5lZChfX3MzOTB4X18pCisjaW5j bHVkZSAiY29uZmlndXJhdGlvbi1zMzkweC5oIgorI2VsaWYgZGVmaW5lZChfX3MzOTBfXykKKyNp bmNsdWRlICJjb25maWd1cmF0aW9uLXMzOTAuaCIKKyNlbGlmIGRlZmluZWQoX19zcGFyY19fKSAm JiBkZWZpbmVkKF9fYXJjaDY0X18pCisjaW5jbHVkZSAiY29uZmlndXJhdGlvbi1zcGFyYzY0Lmgi CisjZWxpZiBkZWZpbmVkKF9fc3BhcmNfXykKKyNpbmNsdWRlICJjb25maWd1cmF0aW9uLXNwYXJj LmgiCisjZWxpZiBkZWZpbmVkKF9feDg2XzY0X18pCisjaW5jbHVkZSAiY29uZmlndXJhdGlvbi14 ODZfNjQuaCIKKyNlbHNlCisjZXJyb3IgIlRoZSBvcGVuc3NsLWRldmVsIHBhY2thZ2UgZG9lcyBu b3Qgd29yayB5b3VyIGFyY2hpdGVjdHVyZT8iCisjZW5kaWYKKworI3VuZGVmIG9wZW5zc2xfY29u Zl9tdWx0aWxpYl9yZWRpcmVjdGlvbl9oCgpkaWZmIC0tZ2l0IGEvZWNfY3VydmUuYyBiL2VjX2N1 cnZlLmMKaW5kZXggOTE3MWVkNC4uNjRhYzQwYiAxMDA2NDQKLS0tIGEvZWNfY3VydmUuYworKysg Yi9lY19jdXJ2ZS5jCkBAIC0xLDE3ICsxLDI0IEBACiAvKgotICogQ29weXJpZ2h0IDIwMDItMjAx OSBUaGUgT3BlblNTTCBQcm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBD b3B5cmlnaHQgMjAwMi0yMDIxIFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJpZ2h0 cyBSZXNlcnZlZC4KICAqIENvcHlyaWdodCAoYykgMjAwMiwgT3JhY2xlIGFuZC9vciBpdHMgYWZm aWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZAogICoKLSAqIExpY2Vuc2VkIHVuZGVyIHRoZSBP cGVuU1NMIGxpY2Vuc2UgKHRoZSAiTGljZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCisgKiBMaWNl bnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UgMi4wICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBt YXkgbm90IHVzZQogICogdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExp Y2Vuc2UuICBZb3UgY2FuIG9idGFpbiBhIGNvcHkKICAqIGluIHRoZSBmaWxlIExJQ0VOU0UgaW4g dGhlIHNvdXJjZSBkaXN0cmlidXRpb24gb3IgYXQKICAqIGh0dHBzOi8vd3d3Lm9wZW5zc2wub3Jn L3NvdXJjZS9saWNlbnNlLmh0bWwKICAqLwogCisvKgorICogRUNEU0EgbG93IGxldmVsIEFQSXMg YXJlIGRlcHJlY2F0ZWQgZm9yIHB1YmxpYyB1c2UsIGJ1dCBzdGlsbCBvayBmb3IKKyAqIGludGVy bmFsIHVzZS4KKyAqLworI2luY2x1ZGUgImludGVybmFsL2RlcHJlY2F0ZWQuaCIKKwogI2luY2x1 ZGUgPHN0cmluZy5oPgogI2luY2x1ZGUgImVjX2xvY2FsLmgiCiAjaW5jbHVkZSA8b3BlbnNzbC9l cnIuaD4KICNpbmNsdWRlIDxvcGVuc3NsL29ial9tYWMuaD4KKyNpbmNsdWRlIDxvcGVuc3NsL29i amVjdHMuaD4KICNpbmNsdWRlIDxvcGVuc3NsL29wZW5zc2xjb25mLmg+CiAjaW5jbHVkZSAiaW50 ZXJuYWwvbmVsZW0uaCIKIApAQCAtMjQyLDQzICsyNDksMTE1IEBAIHR5cGVkZWYgc3RydWN0IF9l Y19saXN0X2VsZW1lbnRfc3QgewogICAgIGNvbnN0IGNoYXIgKmNvbW1lbnQ7CiB9IGVjX2xpc3Rf ZWxlbWVudDsKIAorI2lmZGVmIEZJUFNfTU9EVUxFCiBzdGF0aWMgY29uc3QgZWNfbGlzdF9lbGVt ZW50IGN1cnZlX2xpc3RbXSA9IHsKICAgICAvKiBwcmltZSBmaWVsZCBjdXJ2ZXMgKi8KICAgICAv KiBzZWNnIGN1cnZlcyAqLwotI2lmbmRlZiBPUEVOU1NMX05PX0VDX05JU1RQXzY0X0dDQ18xMjgK LSAgICB7TklEX3NlY3AyMjRyMSwgJl9FQ19OSVNUX1BSSU1FXzIyNC5oLCBFQ19HRnBfbmlzdHAy MjRfbWV0aG9kLAorICAgIHtOSURfc2VjcDIyNHIxLCAmX0VDX05JU1RfUFJJTUVfMjI0LmgsCisj IGlmICFkZWZpbmVkKE9QRU5TU0xfTk9fRUNfTklTVFBfNjRfR0NDXzEyOCkKKyAgICAgRUNfR0Zw X25pc3RwMjI0X21ldGhvZCwKKyMgZWxzZQorICAgICAwLAorIyBlbmRpZgogICAgICAiTklTVC9T RUNHIGN1cnZlIG92ZXIgYSAyMjQgYml0IHByaW1lIGZpZWxkIn0sCisgICAgLyogU0VDRyBzZWNw MjU2cjEgaXMgdGhlIHNhbWUgYXMgWDkuNjIgcHJpbWUyNTZ2MSBhbmQgaGVuY2Ugb21pdHRlZCAq LworICAgIHtOSURfc2VjcDM4NHIxLCAmX0VDX05JU1RfUFJJTUVfMzg0LmgsCisjIGlmIGRlZmlu ZWQoUzM5MFhfRUNfQVNNKQorICAgICBFQ19HRnBfczM5MHhfbmlzdHAzODRfbWV0aG9kLAorIyBl bHNlCisgICAgIDAsCisjIGVuZGlmCisgICAgICJOSVNUL1NFQ0cgY3VydmUgb3ZlciBhIDM4NCBi aXQgcHJpbWUgZmllbGQifSwKKworICAgIHtOSURfc2VjcDUyMXIxLCAmX0VDX05JU1RfUFJJTUVf NTIxLmgsCisjIGlmIGRlZmluZWQoUzM5MFhfRUNfQVNNKQorICAgICBFQ19HRnBfczM5MHhfbmlz dHA1MjFfbWV0aG9kLAorIyBlbGlmICFkZWZpbmVkKE9QRU5TU0xfTk9fRUNfTklTVFBfNjRfR0ND XzEyOCkKKyAgICAgRUNfR0ZwX25pc3RwNTIxX21ldGhvZCwKKyMgZWxzZQorICAgICAwLAorIyBl bmRpZgorICAgICAiTklTVC9TRUNHIGN1cnZlIG92ZXIgYSA1MjEgYml0IHByaW1lIGZpZWxkIn0s CisKKyAgICAvKiBYOS42MiBjdXJ2ZXMgKi8KKyAgICB7TklEX1g5XzYyX3ByaW1lMjU2djEsICZf RUNfWDlfNjJfUFJJTUVfMjU2VjEuaCwKKyMgaWYgZGVmaW5lZChFQ1BfTklTVFoyNTZfQVNNKQor ICAgICBFQ19HRnBfbmlzdHoyNTZfbWV0aG9kLAorIyBlbGlmIGRlZmluZWQoUzM5MFhfRUNfQVNN KQorICAgICBFQ19HRnBfczM5MHhfbmlzdHAyNTZfbWV0aG9kLAorIyBlbGlmICFkZWZpbmVkKE9Q RU5TU0xfTk9fRUNfTklTVFBfNjRfR0NDXzEyOCkKKyAgICAgRUNfR0ZwX25pc3RwMjU2X21ldGhv ZCwKKyMgZWxzZQorICAgICAwLAorIyBlbmRpZgorICAgICAiWDkuNjIvU0VDRyBjdXJ2ZSBvdmVy IGEgMjU2IGJpdCBwcmltZSBmaWVsZCJ9LAorfTsKKwogI2Vsc2UKKworc3RhdGljIGNvbnN0IGVj X2xpc3RfZWxlbWVudCBjdXJ2ZV9saXN0W10gPSB7CisgICAgLyogcHJpbWUgZmllbGQgY3VydmVz ICovCisgICAgLyogc2VjZyBjdXJ2ZXMgKi8KKyMgaWZuZGVmIE9QRU5TU0xfTk9fRUNfTklTVFBf NjRfR0NDXzEyOAorICAgIHtOSURfc2VjcDIyNHIxLCAmX0VDX05JU1RfUFJJTUVfMjI0LmgsIEVD X0dGcF9uaXN0cDIyNF9tZXRob2QsCisgICAgICJOSVNUL1NFQ0cgY3VydmUgb3ZlciBhIDIyNCBi aXQgcHJpbWUgZmllbGQifSwKKyMgZWxzZQogICAgIHtOSURfc2VjcDIyNHIxLCAmX0VDX05JU1Rf UFJJTUVfMjI0LmgsIDAsCiAgICAgICJOSVNUL1NFQ0cgY3VydmUgb3ZlciBhIDIyNCBiaXQgcHJp bWUgZmllbGQifSwKLSNlbmRpZgorIyBlbmRpZgogICAgIHtOSURfc2VjcDI1NmsxLCAmX0VDX1NF Q0dfUFJJTUVfMjU2SzEuaCwgMCwKICAgICAgIlNFQ0cgY3VydmUgb3ZlciBhIDI1NiBiaXQgcHJp bWUgZmllbGQifSwKICAgICAvKiBTRUNHIHNlY3AyNTZyMSBpcyB0aGUgc2FtZSBhcyBYOS42MiBw cmltZTI1NnYxIGFuZCBoZW5jZSBvbWl0dGVkICovCi0gICAge05JRF9zZWNwMzg0cjEsICZfRUNf TklTVF9QUklNRV8zODQuaCwgMCwKKyAgICB7TklEX3NlY3AzODRyMSwgJl9FQ19OSVNUX1BSSU1F XzM4NC5oLAorIyBpZiBkZWZpbmVkKFMzOTBYX0VDX0FTTSkKKyAgICAgRUNfR0ZwX3MzOTB4X25p c3RwMzg0X21ldGhvZCwKKyMgZWxzZQorICAgICAwLAorIyBlbmRpZgogICAgICAiTklTVC9TRUNH IGN1cnZlIG92ZXIgYSAzODQgYml0IHByaW1lIGZpZWxkIn0sCi0jaWZuZGVmIE9QRU5TU0xfTk9f RUNfTklTVFBfNjRfR0NDXzEyOAotICAgIHtOSURfc2VjcDUyMXIxLCAmX0VDX05JU1RfUFJJTUVf NTIxLmgsIEVDX0dGcF9uaXN0cDUyMV9tZXRob2QsCi0gICAgICJOSVNUL1NFQ0cgY3VydmUgb3Zl ciBhIDUyMSBiaXQgcHJpbWUgZmllbGQifSwKLSNlbHNlCi0gICAge05JRF9zZWNwNTIxcjEsICZf RUNfTklTVF9QUklNRV81MjEuaCwgMCwKKyAgICB7TklEX3NlY3A1MjFyMSwgJl9FQ19OSVNUX1BS SU1FXzUyMS5oLAorIyBpZiBkZWZpbmVkKFMzOTBYX0VDX0FTTSkKKyAgICAgRUNfR0ZwX3MzOTB4 X25pc3RwNTIxX21ldGhvZCwKKyMgZWxpZiAhZGVmaW5lZChPUEVOU1NMX05PX0VDX05JU1RQXzY0 X0dDQ18xMjgpCisgICAgIEVDX0dGcF9uaXN0cDUyMV9tZXRob2QsCisjIGVsc2UKKyAgICAgMCwK KyMgZW5kaWYKICAgICAgIk5JU1QvU0VDRyBjdXJ2ZSBvdmVyIGEgNTIxIGJpdCBwcmltZSBmaWVs ZCJ9LAotI2VuZGlmCiAgICAgLyogWDkuNjIgY3VydmVzICovCiAgICAge05JRF9YOV82Ml9wcmlt ZTI1NnYxLCAmX0VDX1g5XzYyX1BSSU1FXzI1NlYxLmgsCi0jaWYgZGVmaW5lZChFQ1BfTklTVFoy NTZfQVNNKQorIyBpZiBkZWZpbmVkKEVDUF9OSVNUWjI1Nl9BU00pCiAgICAgIEVDX0dGcF9uaXN0 ejI1Nl9tZXRob2QsCi0jZWxpZiAhZGVmaW5lZChPUEVOU1NMX05PX0VDX05JU1RQXzY0X0dDQ18x MjgpCisjIGVsaWYgZGVmaW5lZChTMzkwWF9FQ19BU00pCisgICAgIEVDX0dGcF9zMzkweF9uaXN0 cDI1Nl9tZXRob2QsCisjIGVsaWYgIWRlZmluZWQoT1BFTlNTTF9OT19FQ19OSVNUUF82NF9HQ0Nf MTI4KQogICAgICBFQ19HRnBfbmlzdHAyNTZfbWV0aG9kLAotI2Vsc2UKKyMgZWxzZQogICAgICAw LAotI2VuZGlmCisjIGVuZGlmCiAgICAgICJYOS42Mi9TRUNHIGN1cnZlIG92ZXIgYSAyNTYgYml0 IHByaW1lIGZpZWxkIn0sCiB9OworI2VuZGlmIC8qIEZJUFNfTU9EVUxFICovCiAKICNkZWZpbmUg Y3VydmVfbGlzdF9sZW5ndGggT1NTTF9ORUxFTShjdXJ2ZV9saXN0KQogCi1zdGF0aWMgRUNfR1JP VVAgKmVjX2dyb3VwX25ld19mcm9tX2RhdGEoY29uc3QgZWNfbGlzdF9lbGVtZW50IGN1cnZlKQor c3RhdGljIGNvbnN0IGVjX2xpc3RfZWxlbWVudCAqZWNfY3VydmVfbmlkMmN1cnZlKGludCBuaWQp Cit7CisgICAgc2l6ZV90IGk7CisKKyAgICBpZiAobmlkIDw9IDApCisgICAgICAgIHJldHVybiBO VUxMOworCisgICAgZm9yIChpID0gMDsgaSA8IGN1cnZlX2xpc3RfbGVuZ3RoOyBpKyspIHsKKyAg ICAgICAgaWYgKGN1cnZlX2xpc3RbaV0ubmlkID09IG5pZCkKKyAgICAgICAgICAgIHJldHVybiAm Y3VydmVfbGlzdFtpXTsKKyAgICB9CisgICAgcmV0dXJuIE5VTEw7Cit9CisKK3N0YXRpYyBFQ19H Uk9VUCAqZWNfZ3JvdXBfbmV3X2Zyb21fZGF0YShPU1NMX0xJQl9DVFggKmxpYmN0eCwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpwcm9wcSwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBlY19saXN0X2VsZW1l bnQgY3VydmUpCiB7CiAgICAgRUNfR1JPVVAgKmdyb3VwID0gTlVMTDsKICAgICBFQ19QT0lOVCAq UCA9IE5VTEw7CkBAIC0yOTMsMTAgKzM3MiwxMSBAQCBzdGF0aWMgRUNfR1JPVVAgKmVjX2dyb3Vw X25ld19mcm9tX2RhdGEoY29uc3QgZWNfbGlzdF9lbGVtZW50IGN1cnZlKQogCiAgICAgLyogSWYg bm8gY3VydmUgZGF0YSBjdXJ2ZSBtZXRob2QgbXVzdCBoYW5kbGUgZXZlcnl0aGluZyAqLwogICAg IGlmIChjdXJ2ZS5kYXRhID09IE5VTEwpCi0gICAgICAgIHJldHVybiBFQ19HUk9VUF9uZXcoY3Vy dmUubWV0aCAhPSBOVUxMID8gY3VydmUubWV0aCgpIDogTlVMTCk7CisgICAgICAgIHJldHVybiBv c3NsX2VjX2dyb3VwX25ld19leChsaWJjdHgsIHByb3BxLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY3VydmUubWV0aCAhPSBOVUxMID8gY3VydmUubWV0aCgpIDogTlVMTCk7 CiAKLSAgICBpZiAoKGN0eCA9IEJOX0NUWF9uZXcoKSkgPT0gTlVMTCkgewotICAgICAgICBFQ2Vy cihFQ19GX0VDX0dST1VQX05FV19GUk9NX0RBVEEsIEVSUl9SX01BTExPQ19GQUlMVVJFKTsKKyAg ICBpZiAoKGN0eCA9IEJOX0NUWF9uZXdfZXgobGliY3R4KSkgPT0gTlVMTCkgeworICAgICAgICBF UlJfcmFpc2UoRVJSX0xJQl9FQywgRVJSX1JfTUFMTE9DX0ZBSUxVUkUpOwogICAgICAgICBnb3Rv IGVycjsKICAgICB9CiAKQEAgLTMwOSwyMCArMzg5LDIwIEBAIHN0YXRpYyBFQ19HUk9VUCAqZWNf Z3JvdXBfbmV3X2Zyb21fZGF0YShjb25zdCBlY19saXN0X2VsZW1lbnQgY3VydmUpCiAgICAgaWYg KChwID0gQk5fYmluMmJuKHBhcmFtcyArIDAgKiBwYXJhbV9sZW4sIHBhcmFtX2xlbiwgTlVMTCkp ID09IE5VTEwKICAgICAgICAgfHwgKGEgPSBCTl9iaW4yYm4ocGFyYW1zICsgMSAqIHBhcmFtX2xl biwgcGFyYW1fbGVuLCBOVUxMKSkgPT0gTlVMTAogICAgICAgICB8fCAoYiA9IEJOX2JpbjJibihw YXJhbXMgKyAyICogcGFyYW1fbGVuLCBwYXJhbV9sZW4sIE5VTEwpKSA9PSBOVUxMKSB7Ci0gICAg ICAgIEVDZXJyKEVDX0ZfRUNfR1JPVVBfTkVXX0ZST01fREFUQSwgRVJSX1JfQk5fTElCKTsKKyAg ICAgICAgRVJSX3JhaXNlKEVSUl9MSUJfRUMsIEVSUl9SX0JOX0xJQik7CiAgICAgICAgIGdvdG8g ZXJyOwogICAgIH0KIAogICAgIGlmIChjdXJ2ZS5tZXRoICE9IDApIHsKICAgICAgICAgbWV0aCA9 IGN1cnZlLm1ldGgoKTsKLSAgICAgICAgaWYgKCgoZ3JvdXAgPSBFQ19HUk9VUF9uZXcobWV0aCkp ID09IE5VTEwpIHx8CisgICAgICAgIGlmICgoKGdyb3VwID0gb3NzbF9lY19ncm91cF9uZXdfZXgo bGliY3R4LCBwcm9wcSwgbWV0aCkpID09IE5VTEwpIHx8CiAgICAgICAgICAgICAoIShncm91cC0+ bWV0aC0+Z3JvdXBfc2V0X2N1cnZlKGdyb3VwLCBwLCBhLCBiLCBjdHgpKSkpIHsKLSAgICAgICAg ICAgIEVDZXJyKEVDX0ZfRUNfR1JPVVBfTkVXX0ZST01fREFUQSwgRVJSX1JfRUNfTElCKTsKKyAg ICAgICAgICAgIEVSUl9yYWlzZShFUlJfTElCX0VDLCBFUlJfUl9FQ19MSUIpOwogICAgICAgICAg ICAgZ290byBlcnI7CiAgICAgICAgIH0KICAgICB9IGVsc2UgaWYgKGRhdGEtPmZpZWxkX3R5cGUg PT0gTklEX1g5XzYyX3ByaW1lX2ZpZWxkKSB7CiAgICAgICAgIGlmICgoZ3JvdXAgPSBFQ19HUk9V UF9uZXdfY3VydmVfR0ZwKHAsIGEsIGIsIGN0eCkpID09IE5VTEwpIHsKLSAgICAgICAgICAgIEVD ZXJyKEVDX0ZfRUNfR1JPVVBfTkVXX0ZST01fREFUQSwgRVJSX1JfRUNfTElCKTsKKyAgICAgICAg ICAgIEVSUl9yYWlzZShFUlJfTElCX0VDLCBFUlJfUl9FQ19MSUIpOwogICAgICAgICAgICAgZ290 byBlcnI7CiAgICAgICAgIH0KICAgICB9CkBAIC0zMzEsNyArNDExLDcgQEAgc3RhdGljIEVDX0dS T1VQICplY19ncm91cF9uZXdfZnJvbV9kYXRhKGNvbnN0IGVjX2xpc3RfZWxlbWVudCBjdXJ2ZSkK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICogTklEX1g5XzYyX2NoYXJhY3Rlcmlz dGljX3R3b19maWVsZCAqLwogCiAgICAgICAgIGlmICgoZ3JvdXAgPSBFQ19HUk9VUF9uZXdfY3Vy dmVfR0YybShwLCBhLCBiLCBjdHgpKSA9PSBOVUxMKSB7Ci0gICAgICAgICAgICBFQ2VycihFQ19G X0VDX0dST1VQX05FV19GUk9NX0RBVEEsIEVSUl9SX0VDX0xJQik7CisgICAgICAgICAgICBFUlJf cmFpc2UoRVJSX0xJQl9FQywgRVJSX1JfRUNfTElCKTsKICAgICAgICAgICAgIGdvdG8gZXJyOwog ICAgICAgICB9CiAgICAgfQpAQCAtMzQwLDMxICs0MjAsMzEgQEAgc3RhdGljIEVDX0dST1VQICpl Y19ncm91cF9uZXdfZnJvbV9kYXRhKGNvbnN0IGVjX2xpc3RfZWxlbWVudCBjdXJ2ZSkKICAgICBF Q19HUk9VUF9zZXRfY3VydmVfbmFtZShncm91cCwgY3VydmUubmlkKTsKIAogICAgIGlmICgoUCA9 IEVDX1BPSU5UX25ldyhncm91cCkpID09IE5VTEwpIHsKLSAgICAgICAgRUNlcnIoRUNfRl9FQ19H Uk9VUF9ORVdfRlJPTV9EQVRBLCBFUlJfUl9FQ19MSUIpOworICAgICAgICBFUlJfcmFpc2UoRVJS X0xJQl9FQywgRVJSX1JfRUNfTElCKTsKICAgICAgICAgZ290byBlcnI7CiAgICAgfQogCiAgICAg aWYgKCh4ID0gQk5fYmluMmJuKHBhcmFtcyArIDMgKiBwYXJhbV9sZW4sIHBhcmFtX2xlbiwgTlVM TCkpID09IE5VTEwKICAgICAgICAgfHwgKHkgPSBCTl9iaW4yYm4ocGFyYW1zICsgNCAqIHBhcmFt X2xlbiwgcGFyYW1fbGVuLCBOVUxMKSkgPT0gTlVMTCkgewotICAgICAgICBFQ2VycihFQ19GX0VD X0dST1VQX05FV19GUk9NX0RBVEEsIEVSUl9SX0JOX0xJQik7CisgICAgICAgIEVSUl9yYWlzZShF UlJfTElCX0VDLCBFUlJfUl9CTl9MSUIpOwogICAgICAgICBnb3RvIGVycjsKICAgICB9CiAgICAg aWYgKCFFQ19QT0lOVF9zZXRfYWZmaW5lX2Nvb3JkaW5hdGVzKGdyb3VwLCBQLCB4LCB5LCBjdHgp KSB7Ci0gICAgICAgIEVDZXJyKEVDX0ZfRUNfR1JPVVBfTkVXX0ZST01fREFUQSwgRVJSX1JfRUNf TElCKTsKKyAgICAgICAgRVJSX3JhaXNlKEVSUl9MSUJfRUMsIEVSUl9SX0VDX0xJQik7CiAgICAg ICAgIGdvdG8gZXJyOwogICAgIH0KICAgICBpZiAoKG9yZGVyID0gQk5fYmluMmJuKHBhcmFtcyAr IDUgKiBwYXJhbV9sZW4sIHBhcmFtX2xlbiwgTlVMTCkpID09IE5VTEwKICAgICAgICAgfHwgIUJO X3NldF93b3JkKHgsIChCTl9VTE9ORylkYXRhLT5jb2ZhY3RvcikpIHsKLSAgICAgICAgRUNlcnIo RUNfRl9FQ19HUk9VUF9ORVdfRlJPTV9EQVRBLCBFUlJfUl9CTl9MSUIpOworICAgICAgICBFUlJf cmFpc2UoRVJSX0xJQl9FQywgRVJSX1JfQk5fTElCKTsKICAgICAgICAgZ290byBlcnI7CiAgICAg fQogICAgIGlmICghRUNfR1JPVVBfc2V0X2dlbmVyYXRvcihncm91cCwgUCwgb3JkZXIsIHgpKSB7 Ci0gICAgICAgIEVDZXJyKEVDX0ZfRUNfR1JPVVBfTkVXX0ZST01fREFUQSwgRVJSX1JfRUNfTElC KTsKKyAgICAgICAgRVJSX3JhaXNlKEVSUl9MSUJfRUMsIEVSUl9SX0VDX0xJQik7CiAgICAgICAg IGdvdG8gZXJyOwogICAgIH0KICAgICBpZiAoc2VlZF9sZW4pIHsKICAgICAgICAgaWYgKCFFQ19H Uk9VUF9zZXRfc2VlZChncm91cCwgcGFyYW1zIC0gc2VlZF9sZW4sIHNlZWRfbGVuKSkgewotICAg ICAgICAgICAgRUNlcnIoRUNfRl9FQ19HUk9VUF9ORVdfRlJPTV9EQVRBLCBFUlJfUl9FQ19MSUIp OworICAgICAgICAgICAgRVJSX3JhaXNlKEVSUl9MSUJfRUMsIEVSUl9SX0VDX0xJQik7CiAgICAg ICAgICAgICBnb3RvIGVycjsKICAgICAgICAgfQogICAgIH0KQEAgLTM4NSwyOCArNDY1LDMzIEBA IHN0YXRpYyBFQ19HUk9VUCAqZWNfZ3JvdXBfbmV3X2Zyb21fZGF0YShjb25zdCBlY19saXN0X2Vs ZW1lbnQgY3VydmUpCiAgICAgcmV0dXJuIGdyb3VwOwogfQogCi1FQ19HUk9VUCAqRUNfR1JPVVBf bmV3X2J5X2N1cnZlX25hbWUoaW50IG5pZCkKK0VDX0dST1VQICpFQ19HUk9VUF9uZXdfYnlfY3Vy dmVfbmFtZV9leChPU1NMX0xJQl9DVFggKmxpYmN0eCwgY29uc3QgY2hhciAqcHJvcHEsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG5pZCkKIHsKLSAgICBzaXpl X3QgaTsKICAgICBFQ19HUk9VUCAqcmV0ID0gTlVMTDsKKyAgICBjb25zdCBlY19saXN0X2VsZW1l bnQgKmN1cnZlOwogCi0gICAgaWYgKG5pZCA8PSAwKQotICAgICAgICByZXR1cm4gTlVMTDsKLQot ICAgIGZvciAoaSA9IDA7IGkgPCBjdXJ2ZV9saXN0X2xlbmd0aDsgaSsrKQotICAgICAgICBpZiAo Y3VydmVfbGlzdFtpXS5uaWQgPT0gbmlkKSB7Ci0gICAgICAgICAgICByZXQgPSBlY19ncm91cF9u ZXdfZnJvbV9kYXRhKGN1cnZlX2xpc3RbaV0pOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAg IH0KLQotICAgIGlmIChyZXQgPT0gTlVMTCkgewotICAgICAgICBFQ2VycihFQ19GX0VDX0dST1VQ X05FV19CWV9DVVJWRV9OQU1FLCBFQ19SX1VOS05PV05fR1JPVVApOworICAgIGlmICgoY3VydmUg PSBlY19jdXJ2ZV9uaWQyY3VydmUobmlkKSkgPT0gTlVMTAorICAgICAgICB8fCAocmV0ID0gZWNf Z3JvdXBfbmV3X2Zyb21fZGF0YShsaWJjdHgsIHByb3BxLCAqY3VydmUpKSA9PSBOVUxMKSB7Cisj aWZuZGVmIEZJUFNfTU9EVUxFCisgICAgICAgIEVSUl9yYWlzZV9kYXRhKEVSUl9MSUJfRUMsIEVD X1JfVU5LTk9XTl9HUk9VUCwKKyAgICAgICAgICAgICAgICAgICAgICAgIm5hbWU9JXMiLCBPQkpf bmlkMnNuKG5pZCkpOworI2Vsc2UKKyAgICAgICAgRVJSX3JhaXNlKEVSUl9MSUJfRUMsIEVDX1Jf VU5LTk9XTl9HUk9VUCk7CisjZW5kaWYKICAgICAgICAgcmV0dXJuIE5VTEw7CiAgICAgfQogCiAg ICAgcmV0dXJuIHJldDsKIH0KIAorI2lmbmRlZiBGSVBTX01PRFVMRQorRUNfR1JPVVAgKkVDX0dS T1VQX25ld19ieV9jdXJ2ZV9uYW1lKGludCBuaWQpCit7CisgICAgcmV0dXJuIEVDX0dST1VQX25l d19ieV9jdXJ2ZV9uYW1lX2V4KE5VTEwsIE5VTEwsIG5pZCk7Cit9CisjZW5kaWYKKwogc2l6ZV90 IEVDX2dldF9idWlsdGluX2N1cnZlcyhFQ19idWlsdGluX2N1cnZlICpyLCBzaXplX3Qgbml0ZW1z KQogewogICAgIHNpemVfdCBpLCBtaW47CkBAIC00MjQsNDkgKzUwOSwxNCBAQCBzaXplX3QgRUNf Z2V0X2J1aWx0aW5fY3VydmVzKEVDX2J1aWx0aW5fY3VydmUgKnIsIHNpemVfdCBuaXRlbXMpCiAg ICAgcmV0dXJuIGN1cnZlX2xpc3RfbGVuZ3RoOwogfQogCi0vKiBGdW5jdGlvbnMgdG8gdHJhbnNs YXRlIGJldHdlZW4gY29tbW9uIE5JU1QgY3VydmUgbmFtZXMgYW5kIE5JRHMgKi8KLQotdHlwZWRl ZiBzdHJ1Y3QgewotICAgIGNvbnN0IGNoYXIgKm5hbWU7ICAgICAgICAgICAvKiBOSVNUIE5hbWUg b2YgY3VydmUgKi8KLSAgICBpbnQgbmlkOyAgICAgICAgICAgICAgICAgICAgLyogQ3VydmUgTklE ICovCi19IEVDX05JU1RfTkFNRTsKLQotc3RhdGljIEVDX05JU1RfTkFNRSBuaXN0X2N1cnZlc1td ID0gewotICAgIHsiQi0xNjMiLCBOSURfc2VjdDE2M3IyfSwKLSAgICB7IkItMjMzIiwgTklEX3Nl Y3QyMzNyMX0sCi0gICAgeyJCLTI4MyIsIE5JRF9zZWN0MjgzcjF9LAotICAgIHsiQi00MDkiLCBO SURfc2VjdDQwOXIxfSwKLSAgICB7IkItNTcxIiwgTklEX3NlY3Q1NzFyMX0sCi0gICAgeyJLLTE2 MyIsIE5JRF9zZWN0MTYzazF9LAotICAgIHsiSy0yMzMiLCBOSURfc2VjdDIzM2sxfSwKLSAgICB7 IkstMjgzIiwgTklEX3NlY3QyODNrMX0sCi0gICAgeyJLLTQwOSIsIE5JRF9zZWN0NDA5azF9LAot ICAgIHsiSy01NzEiLCBOSURfc2VjdDU3MWsxfSwKLSAgICB7IlAtMTkyIiwgTklEX1g5XzYyX3By aW1lMTkydjF9LAotICAgIHsiUC0yMjQiLCBOSURfc2VjcDIyNHIxfSwKLSAgICB7IlAtMjU2Iiwg TklEX1g5XzYyX3ByaW1lMjU2djF9LAotICAgIHsiUC0zODQiLCBOSURfc2VjcDM4NHIxfSwKLSAg ICB7IlAtNTIxIiwgTklEX3NlY3A1MjFyMX0KLX07Ci0KIGNvbnN0IGNoYXIgKkVDX2N1cnZlX25p ZDJuaXN0KGludCBuaWQpCiB7Ci0gICAgc2l6ZV90IGk7Ci0gICAgZm9yIChpID0gMDsgaSA8IE9T U0xfTkVMRU0obmlzdF9jdXJ2ZXMpOyBpKyspIHsKLSAgICAgICAgaWYgKG5pc3RfY3VydmVzW2ld Lm5pZCA9PSBuaWQpCi0gICAgICAgICAgICByZXR1cm4gbmlzdF9jdXJ2ZXNbaV0ubmFtZTsKLSAg ICB9Ci0gICAgcmV0dXJuIE5VTEw7CisgICAgcmV0dXJuIG9zc2xfZWNfY3VydmVfbmlkMm5pc3Rf aW50KG5pZCk7CiB9CiAKIGludCBFQ19jdXJ2ZV9uaXN0Mm5pZChjb25zdCBjaGFyICpuYW1lKQog ewotICAgIHNpemVfdCBpOwotICAgIGZvciAoaSA9IDA7IGkgPCBPU1NMX05FTEVNKG5pc3RfY3Vy dmVzKTsgaSsrKSB7Ci0gICAgICAgIGlmIChzdHJjbXAobmlzdF9jdXJ2ZXNbaV0ubmFtZSwgbmFt ZSkgPT0gMCkKLSAgICAgICAgICAgIHJldHVybiBuaXN0X2N1cnZlc1tpXS5uaWQ7Ci0gICAgfQot ICAgIHJldHVybiBOSURfdW5kZWY7CisgICAgcmV0dXJuIG9zc2xfZWNfY3VydmVfbmlzdDJuaWRf aW50KG5hbWUpOwogfQogCiAjZGVmaW5lIE5VTV9CTl9GSUVMRFMgNgpAQCAtNDc4LDcgKzUyOCw3 IEBAIGludCBFQ19jdXJ2ZV9uaXN0Mm5pZChjb25zdCBjaGFyICpuYW1lKQogICogUmV0dXJuczog VGhlIG5pZCBhc3NvY2lhdGVkIHdpdGggdGhlIGZvdW5kIG5hbWVkIGN1cnZlLCBvciBOSURfdW5k ZWYKICAqICAgICAgICAgIGlmIG5vdCBmb3VuZC4gSWYgdGhlcmUgd2FzIGFuIGVycm9yIGl0IHJl dHVybnMgLTEuCiAgKi8KLWludCBlY19jdXJ2ZV9uaWRfZnJvbV9wYXJhbXMoY29uc3QgRUNfR1JP VVAgKmdyb3VwLCBCTl9DVFggKmN0eCkKK2ludCBvc3NsX2VjX2N1cnZlX25pZF9mcm9tX3BhcmFt cyhjb25zdCBFQ19HUk9VUCAqZ3JvdXAsIEJOX0NUWCAqY3R4KQogewogICAgIGludCByZXQgPSAt MSwgbmlkLCBsZW4sIGZpZWxkX3R5cGUsIHBhcmFtX2xlbjsKICAgICBzaXplX3QgaSwgc2VlZF9s ZW47CkBAIC00ODYsMTcgKzUzNiwxMyBAQCBpbnQgZWNfY3VydmVfbmlkX2Zyb21fcGFyYW1zKGNv bnN0IEVDX0dST1VQICpncm91cCwgQk5fQ1RYICpjdHgpCiAgICAgdW5zaWduZWQgY2hhciAqcGFy YW1fYnl0ZXMgPSBOVUxMOwogICAgIGNvbnN0IEVDX0NVUlZFX0RBVEEgKmRhdGE7CiAgICAgY29u c3QgRUNfUE9JTlQgKmdlbmVyYXRvciA9IE5VTEw7Ci0gICAgY29uc3QgRUNfTUVUSE9EICptZXRo OwogICAgIGNvbnN0IEJJR05VTSAqY29mYWN0b3IgPSBOVUxMOwogICAgIC8qIEFuIGFycmF5IG9m IEJJR05VTXMgZm9yIChwLCBhLCBiLCB4LCB5LCBvcmRlcikgKi8KICAgICBCSUdOVU0gKmJuW05V TV9CTl9GSUVMRFNdID0ge05VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEx9OwogCi0g ICAgbWV0aCA9IEVDX0dST1VQX21ldGhvZF9vZihncm91cCk7Ci0gICAgaWYgKG1ldGggPT0gTlVM TCkKLSAgICAgICAgcmV0dXJuIC0xOwogICAgIC8qIFVzZSB0aGUgb3B0aW9uYWwgbmFtZWQgY3Vy dmUgbmlkIGFzIGEgc2VhcmNoIGZpZWxkICovCiAgICAgbmlkID0gRUNfR1JPVVBfZ2V0X2N1cnZl X25hbWUoZ3JvdXApOwotICAgIGZpZWxkX3R5cGUgPSBFQ19NRVRIT0RfZ2V0X2ZpZWxkX3R5cGUo bWV0aCk7CisgICAgZmllbGRfdHlwZSA9IEVDX0dST1VQX2dldF9maWVsZF90eXBlKGdyb3VwKTsK ICAgICBzZWVkX2xlbiA9IEVDX0dST1VQX2dldF9zZWVkX2xlbihncm91cCk7CiAgICAgc2VlZCA9 IEVDX0dST1VQX2dldDBfc2VlZChncm91cCk7CiAgICAgY29mYWN0b3IgPSBFQ19HUk9VUF9nZXQw X2NvZmFjdG9yKGdyb3VwKTsKCmRpZmYgLS1naXQgYS9lY3Rlc3QuYyBiL2VjdGVzdC5jCmluZGV4 IGU0ZmQ0NWIuLjYyNTMwNWMgMTAwNjQ0Ci0tLSBhL2VjdGVzdC5jCisrKyBiL2VjdGVzdC5jCkBA IC0xLDI3ICsxLDM2IEBACiAvKgotICogQ29weXJpZ2h0IDIwMDEtMjAyMCBUaGUgT3BlblNTTCBQ cm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgMjAwMS0y MDIxIFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KICAq IENvcHlyaWdodCAoYykgMjAwMiwgT3JhY2xlIGFuZC9vciBpdHMgYWZmaWxpYXRlcy4gQWxsIHJp Z2h0cyByZXNlcnZlZAogICoKLSAqIExpY2Vuc2VkIHVuZGVyIHRoZSBPcGVuU1NMIGxpY2Vuc2Ug KHRoZSAiTGljZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCisgKiBMaWNlbnNlZCB1bmRlciB0aGUg QXBhY2hlIExpY2Vuc2UgMi4wICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBtYXkgbm90IHVzZQogICog dGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuICBZb3UgY2Fu IG9idGFpbiBhIGNvcHkKICAqIGluIHRoZSBmaWxlIExJQ0VOU0UgaW4gdGhlIHNvdXJjZSBkaXN0 cmlidXRpb24gb3IgYXQKICAqIGh0dHBzOi8vd3d3Lm9wZW5zc2wub3JnL3NvdXJjZS9saWNlbnNl Lmh0bWwKICAqLwogCisvKgorICogRUNfS0VZIGxvdyBsZXZlbCBBUElzIGFyZSBkZXByZWNhdGVk IGZvciBwdWJsaWMgdXNlLCBidXQgc3RpbGwgb2sgZm9yCisgKiBpbnRlcm5hbCB1c2UuCisgKi8K KyNpbmNsdWRlICJpbnRlcm5hbC9kZXByZWNhdGVkLmgiCisKKyNpbmNsdWRlIDxzdHJpbmcuaD4K ICNpbmNsdWRlICJpbnRlcm5hbC9uZWxlbS5oIgogI2luY2x1ZGUgInRlc3R1dGlsLmgiCiAKLSNp Zm5kZWYgT1BFTlNTTF9OT19FQwotIyBpbmNsdWRlIDxvcGVuc3NsL2VjLmg+Ci0jIGlmbmRlZiBP UEVOU1NMX05PX0VOR0lORQotIyAgaW5jbHVkZSA8b3BlbnNzbC9lbmdpbmUuaD4KLSMgZW5kaWYK LSMgaW5jbHVkZSA8b3BlbnNzbC9lcnIuaD4KLSMgaW5jbHVkZSA8b3BlbnNzbC9vYmpfbWFjLmg+ Ci0jIGluY2x1ZGUgPG9wZW5zc2wvb2JqZWN0cy5oPgotIyBpbmNsdWRlIDxvcGVuc3NsL3JhbmQu aD4KLSMgaW5jbHVkZSA8b3BlbnNzbC9ibi5oPgotIyBpbmNsdWRlIDxvcGVuc3NsL29wZW5zc2xj b25mLmg+CisjaW5jbHVkZSA8b3BlbnNzbC9lYy5oPgorI2lmbmRlZiBPUEVOU1NMX05PX0VOR0lO RQorIyBpbmNsdWRlIDxvcGVuc3NsL2VuZ2luZS5oPgorI2VuZGlmCisjaW5jbHVkZSA8b3BlbnNz bC9lcnIuaD4KKyNpbmNsdWRlIDxvcGVuc3NsL29ial9tYWMuaD4KKyNpbmNsdWRlIDxvcGVuc3Ns L29iamVjdHMuaD4KKyNpbmNsdWRlIDxvcGVuc3NsL3JhbmQuaD4KKyNpbmNsdWRlIDxvcGVuc3Ns L2JuLmg+CisjaW5jbHVkZSA8b3BlbnNzbC9vcGVuc3NsY29uZi5oPgorI2luY2x1ZGUgPG9wZW5z c2wvY29yZV9uYW1lcy5oPgorI2luY2x1ZGUgPG9wZW5zc2wvcGFyYW1fYnVpbGQuaD4KKyNpbmNs dWRlIDxvcGVuc3NsL2V2cC5oPgogCiBzdGF0aWMgc2l6ZV90IGNydl9sZW4gPSAwOwogc3RhdGlj IEVDX2J1aWx0aW5fY3VydmUgKmN1cnZlcyA9IE5VTEw7CkBAIC00OSw3ICs1OCw5IEBAIHN0YXRp YyBpbnQgZ3JvdXBfb3JkZXJfdGVzdHMoRUNfR1JPVVAgKmdyb3VwKQogICAgIGlmICghVEVTVF90 cnVlKEVDX0dST1VQX2dldF9vcmRlcihncm91cCwgb3JkZXIsIGN0eCkpCiAgICAgICAgIHx8ICFU RVNUX3RydWUoRUNfUE9JTlRfbXVsKGdyb3VwLCBRLCBvcmRlciwgTlVMTCwgTlVMTCwgY3R4KSkK ICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19QT0lOVF9pc19hdF9pbmZpbml0eShncm91cCwgUSkp CisjaWZuZGVmIE9QRU5TU0xfTk9fREVQUkVDQVRFRF8zXzAKICAgICAgICAgfHwgIVRFU1RfdHJ1 ZShFQ19HUk9VUF9wcmVjb21wdXRlX211bHQoZ3JvdXAsIGN0eCkpCisjZW5kaWYKICAgICAgICAg fHwgIVRFU1RfdHJ1ZShFQ19QT0lOVF9tdWwoZ3JvdXAsIFEsIG9yZGVyLCBOVUxMLCBOVUxMLCBj dHgpKQogICAgICAgICB8fCAhVEVTVF90cnVlKEVDX1BPSU5UX2lzX2F0X2luZmluaXR5KGdyb3Vw LCBRKSkKICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19QT0lOVF9jb3B5KFAsIEcpKQpAQCAtNjMs OCArNzQsMTAgQEAgc3RhdGljIGludCBncm91cF9vcmRlcl90ZXN0cyhFQ19HUk9VUCAqZ3JvdXAp CiAgICAgICAgIGdvdG8gZXJyOwogCiAgICAgZm9yIChpID0gMTsgaSA8PSAyOyBpKyspIHsKKyNp Zm5kZWYgT1BFTlNTTF9OT19ERVBSRUNBVEVEXzNfMAogICAgICAgICBjb25zdCBCSUdOVU0gKnNj YWxhcnNbNl07CiAgICAgICAgIGNvbnN0IEVDX1BPSU5UICpwb2ludHNbNl07CisjZW5kaWYKIAog ICAgICAgICBpZiAoIVRFU1RfdHJ1ZShCTl9zZXRfd29yZChuMSwgaSkpCiAgICAgICAgICAgICAv KgpAQCAtOTYsMTEgKzEwOSwxMSBAQCBzdGF0aWMgaW50IGdyb3VwX29yZGVyX3Rlc3RzKEVDX0dS T1VQICpncm91cCkKICAgICAgICAgICAgIC8qIEFkZCBQIHRvIHZlcmlmeSB0aGUgcmVzdWx0LiAq LwogICAgICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19QT0lOVF9hZGQoZ3JvdXAsIFEsIFEsIFAs IGN0eCkpCiAgICAgICAgICAgICB8fCAhVEVTVF90cnVlKEVDX1BPSU5UX2lzX2F0X2luZmluaXR5 KGdyb3VwLCBRKSkKLQotICAgICAgICAgICAgLyogRXhlcmNpc2UgRUNfUE9JTlRzX211bCwgaW5j bHVkaW5nIGNvcm5lciBjYXNlcy4gKi8KICAgICAgICAgICAgIHx8ICFURVNUX2ZhbHNlKEVDX1BP SU5UX2lzX2F0X2luZmluaXR5KGdyb3VwLCBQKSkpCiAgICAgICAgICAgICBnb3RvIGVycjsKIAor I2lmbmRlZiBPUEVOU1NMX05PX0RFUFJFQ0FURURfM18wCisgICAgICAgIC8qIEV4ZXJjaXNlIEVD X1BPSU5Uc19tdWwsIGluY2x1ZGluZyBjb3JuZXIgY2FzZXMuICovCiAgICAgICAgIHNjYWxhcnNb MF0gPSBzY2FsYXJzWzFdID0gQk5fdmFsdWVfb25lKCk7CiAgICAgICAgIHBvaW50c1swXSAgPSBw b2ludHNbMV0gID0gUDsKIApAQCAtMTI0LDYgKzEzNyw3IEBAIHN0YXRpYyBpbnQgZ3JvdXBfb3Jk ZXJfdGVzdHMoRUNfR1JPVVAgKmdyb3VwKQogICAgICAgICBpZiAoIVRFU1RfdHJ1ZShFQ19QT0lO VHNfbXVsKGdyb3VwLCBQLCBOVUxMLCA2LCBwb2ludHMsIHNjYWxhcnMsIGN0eCkpCiAgICAgICAg ICAgICB8fCAhVEVTVF90cnVlKEVDX1BPSU5UX2lzX2F0X2luZmluaXR5KGdyb3VwLCBQKSkpCiAg ICAgICAgICAgICBnb3RvIGVycjsKKyNlbmRpZgogICAgIH0KIAogICAgIHIgPSAxOwpAQCAtMTQ2 LDEzICsxNjAsMTMgQEAgc3RhdGljIGludCBwcmltZV9maWVsZF90ZXN0cyh2b2lkKQogewogICAg IEJOX0NUWCAqY3R4ID0gTlVMTDsKICAgICBCSUdOVU0gKnAgPSBOVUxMLCAqYSA9IE5VTEwsICpi ID0gTlVMTCwgKnNjYWxhcjMgPSBOVUxMOwotICAgIEVDX0dST1VQICpncm91cCA9IE5VTEwsICp0 bXAgPSBOVUxMOwotICAgIEVDX0dST1VQICpQXzE2MCA9IE5VTEwsICpQXzE5MiA9IE5VTEwsICpQ XzIyNCA9IE5VTEwsCi0gICAgICAgICAgICAgKlBfMjU2ID0gTlVMTCwgKlBfMzg0ID0gTlVMTCwg KlBfNTIxID0gTlVMTDsKKyAgICBFQ19HUk9VUCAqZ3JvdXAgPSBOVUxMOwogICAgIEVDX1BPSU5U ICpQID0gTlVMTCwgKlEgPSBOVUxMLCAqUiA9IE5VTEw7CiAgICAgQklHTlVNICp4ID0gTlVMTCwg KnkgPSBOVUxMLCAqeiA9IE5VTEwsICp5cGx1c29uZSA9IE5VTEw7CisjaWZuZGVmIE9QRU5TU0xf Tk9fREVQUkVDQVRFRF8zXzAKICAgICBjb25zdCBFQ19QT0lOVCAqcG9pbnRzWzRdOwogICAgIGNv bnN0IEJJR05VTSAqc2NhbGFyc1s0XTsKKyNlbmRpZgogICAgIHVuc2lnbmVkIGNoYXIgYnVmWzEw MF07CiAgICAgc2l6ZV90IGxlbiwgciA9IDA7CiAgICAgaW50IGs7CkBAIC0xNjUsMTMgKzE3OSw4 IEBAIHN0YXRpYyBpbnQgcHJpbWVfZmllbGRfdGVzdHModm9pZCkKICAgICAgICAgICogYXBwbGlj YXRpb25zIHNob3VsZCB1c2UgRUNfR1JPVVBfbmV3X2N1cnZlX0dGcCBzbwogICAgICAgICAgKiB0 aGF0IHRoZSBsaWJyYXJ5IGdldHMgdG8gY2hvb3NlIHRoZSBFQ19NRVRIT0QKICAgICAgICAgICov Ci0gICAgICAgIHx8ICFURVNUX3B0cihncm91cCA9IEVDX0dST1VQX25ldyhFQ19HRnBfbW9udF9t ZXRob2QoKSkpCi0gICAgICAgIHx8ICFURVNUX3B0cih0bXAgPSBFQ19HUk9VUF9uZXcoRUNfR1JP VVBfbWV0aG9kX29mKGdyb3VwKSkpCi0gICAgICAgIHx8ICFURVNUX3RydWUoRUNfR1JPVVBfY29w eSh0bXAsIGdyb3VwKSkpCisgICAgICAgIHx8ICFURVNUX3B0cihncm91cCA9IEVDX0dST1VQX25l dyhFQ19HRnBfbW9udF9tZXRob2QoKSkpKQogICAgICAgICBnb3RvIGVycjsKLSAgICBFQ19HUk9V UF9mcmVlKGdyb3VwKTsKLSAgICBncm91cCA9IHRtcDsKLSAgICB0bXAgPSBOVUxMOwogCiAgICAg YnVmWzBdID0gMDsKICAgICBpZiAoIVRFU1RfcHRyKFAgPSBFQ19QT0lOVF9uZXcoZ3JvdXApKQpA QCAtMTg3LDcgKzE5Niw3IEBAIHN0YXRpYyBpbnQgcHJpbWVfZmllbGRfdGVzdHModm9pZCkKIAog ICAgIGlmICghVEVTVF90cnVlKEJOX2hleDJibigmcCwgICAgICAgICAiRkZGRkZGRkZGRkZGRkZG RkZGRkZGRkZGIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkZGRkZGRkZG MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxIikpCi0gICAgICAgIHx8ICFURVNUX2ludF9lcSgxLCBC Tl9pc19wcmltZV9leChwLCBCTl9wcmltZV9jaGVja3MsIGN0eCwgTlVMTCkpCisgICAgICAgIHx8 ICFURVNUX2ludF9lcSgxLCBCTl9jaGVja19wcmltZShwLCBjdHgsIE5VTEwpKQogICAgICAgICB8 fCAhVEVTVF90cnVlKEJOX2hleDJibigmYSwgICAgICAgICAiRkZGRkZGRkZGRkZGRkZGRkZGRkZG RkZGIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkZGRkZGRkZFRkZGRkZG RkZGRkZGRkZGRkZGRkZGRkZFIikpCiAgICAgICAgIHx8ICFURVNUX3RydWUoQk5faGV4MmJuKCZi LCAgICAgICAgICJCNDA1MEE4NTBDMDRCM0FCRjU0MTMyNTYiCkBAIC0yMTksMTQgKzIyOCwxMiBA QCBzdGF0aWMgaW50IHByaW1lX2ZpZWxkX3Rlc3RzKHZvaWQpCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3R4KSkKICAgICAgICAgfHwgIVRF U1RfaW50X2VxKEVDX0dST1VQX2dldF9kZWdyZWUoZ3JvdXApLCAyMjQpCiAgICAgICAgIHx8ICFn cm91cF9vcmRlcl90ZXN0cyhncm91cCkKLSAgICAgICAgfHwgIVRFU1RfcHRyKFBfMjI0ID0gRUNf R1JPVVBfbmV3KEVDX0dST1VQX21ldGhvZF9vZihncm91cCkpKQotICAgICAgICB8fCAhVEVTVF90 cnVlKEVDX0dST1VQX2NvcHkoUF8yMjQsIGdyb3VwKSkKIAogICAgIC8qIEN1cnZlIFAtMjU2IChG SVBTIFBVQiAxODYtMiwgQXBwLiA2KSAqLwogCiAgICAgICAgIHx8ICFURVNUX3RydWUoQk5faGV4 MmJuKCZwLCAiRkZGRkZGRkYwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDAiCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAiMDAwMDAwMDBGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYi KSkKLSAgICAgICAgfHwgIVRFU1RfaW50X2VxKDEsIEJOX2lzX3ByaW1lX2V4KHAsIEJOX3ByaW1l X2NoZWNrcywgY3R4LCBOVUxMKSkKKyAgICAgICAgfHwgIVRFU1RfaW50X2VxKDEsIEJOX2NoZWNr X3ByaW1lKHAsIGN0eCwgTlVMTCkpCiAgICAgICAgIHx8ICFURVNUX3RydWUoQk5faGV4MmJuKCZh LCAiRkZGRkZGRkYwMDAwMDAwMTAwMDAwMDAwMDAwMDAwMDAiCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiMDAwMDAwMDBGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkMiKSkKICAg ICAgICAgfHwgIVRFU1RfdHJ1ZShCTl9oZXgyYm4oJmIsICI1QUM2MzVEOEFBM0E5M0U3QjNFQkJE NTU3Njk4ODZCQyIKQEAgLTI1OSwxNSArMjY2LDEzIEBAIHN0YXRpYyBpbnQgcHJpbWVfZmllbGRf dGVzdHModm9pZCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjdHgpKQogICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRUNfR1JPVVBfZ2V0X2Rl Z3JlZShncm91cCksIDI1NikKICAgICAgICAgfHwgIWdyb3VwX29yZGVyX3Rlc3RzKGdyb3VwKQot ICAgICAgICB8fCAhVEVTVF9wdHIoUF8yNTYgPSBFQ19HUk9VUF9uZXcoRUNfR1JPVVBfbWV0aG9k X29mKGdyb3VwKSkpCi0gICAgICAgIHx8ICFURVNUX3RydWUoRUNfR1JPVVBfY29weShQXzI1Niwg Z3JvdXApKQogCiAgICAgLyogQ3VydmUgUC0zODQgKEZJUFMgUFVCIDE4Ni0yLCBBcHAuIDYpICov CiAKICAgICAgICAgfHwgIVRFU1RfdHJ1ZShCTl9oZXgyYm4oJnAsICJGRkZGRkZGRkZGRkZGRkZG RkZGRkZGRkZGRkZGRkZGRiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJG RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRSIKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJGRkZGRkZGRjAwMDAwMDAwMDAwMDAwMDBGRkZGRkZGRiIpKQotICAgICAg ICB8fCAhVEVTVF9pbnRfZXEoMSwgQk5faXNfcHJpbWVfZXgocCwgQk5fcHJpbWVfY2hlY2tzLCBj dHgsIE5VTEwpKQorICAgICAgICB8fCAhVEVTVF9pbnRfZXEoMSwgQk5fY2hlY2tfcHJpbWUocCwg Y3R4LCBOVUxMKSkKICAgICAgICAgfHwgIVRFU1RfdHJ1ZShCTl9oZXgyYm4oJmEsICJGRkZGRkZG RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRSIKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJGRkZGRkZGRjAwMDAwMDAwMDAwMDAwMDBGRkZGRkZGQyIp KQpAQCAtMzA1LDggKzMxMCw2IEBAIHN0YXRpYyBpbnQgcHJpbWVfZmllbGRfdGVzdHModm9pZCkK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj dHgpKQogICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRUNfR1JPVVBfZ2V0X2RlZ3JlZShncm91cCks IDM4NCkKICAgICAgICAgfHwgIWdyb3VwX29yZGVyX3Rlc3RzKGdyb3VwKQotICAgICAgICB8fCAh VEVTVF9wdHIoUF8zODQgPSBFQ19HUk9VUF9uZXcoRUNfR1JPVVBfbWV0aG9kX29mKGdyb3VwKSkp Ci0gICAgICAgIHx8ICFURVNUX3RydWUoRUNfR1JPVVBfY29weShQXzM4NCwgZ3JvdXApKQogCiAg ICAgLyogQ3VydmUgUC01MjEgKEZJUFMgUFVCIDE4Ni0yLCBBcHAuIDYpICovCiAgICAgICAgIHx8 ICFURVNUX3RydWUoQk5faGV4MmJuKCZwLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIx RkYiCkBAIC0zMTQsNyArMzE3LDcgQEAgc3RhdGljIGludCBwcmltZV9maWVsZF90ZXN0cyh2b2lk KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkZGRkZGRkZGRkZGRkZGRkZG RkZGRkZGRkZGRkZGRkZGIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkZG RkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGIgogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGIikpCi0gICAgICAg IHx8ICFURVNUX2ludF9lcSgxLCBCTl9pc19wcmltZV9leChwLCBCTl9wcmltZV9jaGVja3MsIGN0 eCwgTlVMTCkpCisgICAgICAgIHx8ICFURVNUX2ludF9lcSgxLCBCTl9jaGVja19wcmltZShwLCBj dHgsIE5VTEwpKQogICAgICAgICB8fCAhVEVTVF90cnVlKEJOX2hleDJibigmYSwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiMUZGIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGIgogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGIgpA QCAtMzYxLDggKzM2NCw2IEBAIHN0YXRpYyBpbnQgcHJpbWVfZmllbGRfdGVzdHModm9pZCkKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdHgp KQogICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRUNfR1JPVVBfZ2V0X2RlZ3JlZShncm91cCksIDUy MSkKICAgICAgICAgfHwgIWdyb3VwX29yZGVyX3Rlc3RzKGdyb3VwKQotICAgICAgICB8fCAhVEVT VF9wdHIoUF81MjEgPSBFQ19HUk9VUF9uZXcoRUNfR1JPVVBfbWV0aG9kX29mKGdyb3VwKSkpCi0g ICAgICAgIHx8ICFURVNUX3RydWUoRUNfR1JPVVBfY29weShQXzUyMSwgZ3JvdXApKQogCiAgICAg LyogbW9yZSB0ZXN0cyB1c2luZyB0aGUgbGFzdCBjdXJ2ZSAqLwogCkBAIC0zNzgsNiArMzc5LDkg QEAgc3RhdGljIGludCBwcmltZV9maWVsZF90ZXN0cyh2b2lkKQogICAgICAgICB8fCAhVEVTVF90 cnVlKEVDX1BPSU5UX2lzX2F0X2luZmluaXR5KGdyb3VwLCBSKSkgICAgLyogUiA9IFAgKyAyUSAq LwogICAgICAgICB8fCAhVEVTVF9mYWxzZShFQ19QT0lOVF9pc19hdF9pbmZpbml0eShncm91cCwg USkpKQogICAgICAgICBnb3RvIGVycjsKKworI2lmbmRlZiBPUEVOU1NMX05PX0RFUFJFQ0FURURf M18wCisgICAgVEVTVF9ub3RlKCJjb21iaW5lZCBtdWx0aXBsaWNhdGlvbiAuLi4iKTsKICAgICBw b2ludHNbMF0gPSBROwogICAgIHBvaW50c1sxXSA9IFE7CiAgICAgcG9pbnRzWzJdID0gUTsKQEAg LTM4OCwxMSArMzkyLDEwIEBAIHN0YXRpYyBpbnQgcHJpbWVfZmllbGRfdGVzdHModm9pZCkKICAg ICAgICAgfHwgIVRFU1RfQk5fZXZlbih5KQogICAgICAgICB8fCAhVEVTVF90cnVlKEJOX3JzaGlm dDEoeSwgeSkpKQogICAgICAgICBnb3RvIGVycjsKKwogICAgIHNjYWxhcnNbMF0gPSB5OyAgICAg ICAgIC8qIChncm91cCBvcmRlciArIDEpLzIsIHNvIHkqUSArIHkqUSA9IFEgKi8KICAgICBzY2Fs YXJzWzFdID0geTsKIAotICAgIFRFU1Rfbm90ZSgiY29tYmluZWQgbXVsdGlwbGljYXRpb24gLi4u Iik7Ci0KICAgICAvKiB6IGlzIHN0aWxsIHRoZSBncm91cCBvcmRlciAqLwogICAgIGlmICghVEVT VF90cnVlKEVDX1BPSU5Uc19tdWwoZ3JvdXAsIFAsIE5VTEwsIDIsIHBvaW50cywgc2NhbGFycywg Y3R4KSkKICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19QT0lOVHNfbXVsKGdyb3VwLCBSLCB6LCAy LCBwb2ludHMsIHNjYWxhcnMsIGN0eCkpCkBAIC00MjMsMTAgKzQyNiw4IEBAIHN0YXRpYyBpbnQg cHJpbWVfZmllbGRfdGVzdHModm9pZCkKICAgICBpZiAoIVRFU1RfdHJ1ZShFQ19QT0lOVHNfbXVs KGdyb3VwLCBQLCBOVUxMLCA0LCBwb2ludHMsIHNjYWxhcnMsIGN0eCkpCiAgICAgICAgIHx8ICFU RVNUX3RydWUoRUNfUE9JTlRfaXNfYXRfaW5maW5pdHkoZ3JvdXAsIFApKSkKICAgICAgICAgZ290 byBlcnI7Ci0KKyNlbmRpZgogICAgIFRFU1Rfbm90ZSgiIG9rXG4iKTsKLQotCiAgICAgciA9IDE7 CiBlcnI6CiAgICAgQk5fQ1RYX2ZyZWUoY3R4KTsKQEAgLTQzNCw3ICs0MzUsNiBAQCBlcnI6CiAg ICAgQk5fZnJlZShhKTsKICAgICBCTl9mcmVlKGIpOwogICAgIEVDX0dST1VQX2ZyZWUoZ3JvdXAp OwotICAgIEVDX0dST1VQX2ZyZWUodG1wKTsKICAgICBFQ19QT0lOVF9mcmVlKFApOwogICAgIEVD X1BPSU5UX2ZyZWUoUSk7CiAgICAgRUNfUE9JTlRfZnJlZShSKTsKQEAgLTQ0MywxMSArNDQzLDYg QEAgZXJyOgogICAgIEJOX2ZyZWUoeik7CiAgICAgQk5fZnJlZSh5cGx1c29uZSk7CiAgICAgQk5f ZnJlZShzY2FsYXIzKTsKLQotICAgIEVDX0dST1VQX2ZyZWUoUF8yMjQpOwotICAgIEVDX0dST1VQ X2ZyZWUoUF8yNTYpOwotICAgIEVDX0dST1VQX2ZyZWUoUF8zODQpOwotICAgIEVDX0dST1VQX2Zy ZWUoUF81MjEpOwogICAgIHJldHVybiByOwogfQogCkBAIC00ODQsMTMgKzQ3OSw0OCBAQCBzdGF0 aWMgaW50IGludGVybmFsX2N1cnZlX3Rlc3RfbWV0aG9kKGludCBuKQogICAgIHJldHVybiByOwog fQogCi0jIGlmbmRlZiBPUEVOU1NMX05PX0VDX05JU1RQXzY0X0dDQ18xMjgKK3N0YXRpYyBpbnQg Z3JvdXBfZmllbGRfdGVzdCh2b2lkKQoreworICAgIGludCByID0gMTsKKyAgICBCSUdOVU0gKnNl Y3A1MjFyMV9maWVsZCA9IE5VTEw7CisgICAgQklHTlVNICpzZWN0MTYzcjJfZmllbGQgPSBOVUxM OworICAgIEVDX0dST1VQICpzZWNwNTIxcjFfZ3JvdXAgPSBOVUxMOworICAgIEVDX0dST1VQICpz ZWN0MTYzcjJfZ3JvdXAgPSBOVUxMOworCisgICAgQk5faGV4MmJuKCZzZWNwNTIxcjFfZmllbGQs CisgICAgICAgICAgICAgICAgIjAxRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGIgorICAg ICAgICAgICAgICAgICJGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRiIKKyAgICAgICAg ICAgICAgICAiRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYiCisgICAgICAgICAgICAg ICAgIkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGIgorICAgICAgICAgICAgICAgICJG RkZGIik7CisKKworICAgIEJOX2hleDJibigmc2VjdDE2M3IyX2ZpZWxkLAorICAgICAgICAgICAg ICAgICIwODAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCIKKyAgICAgICAgICAgICAgICAi MDAwMDAwMDBDOSIpOworCisgICAgc2VjcDUyMXIxX2dyb3VwID0gRUNfR1JPVVBfbmV3X2J5X2N1 cnZlX25hbWUoTklEX3NlY3A1MjFyMSk7CisgICAgaWYgKEJOX2NtcChzZWNwNTIxcjFfZmllbGQs IEVDX0dST1VQX2dldDBfZmllbGQoc2VjcDUyMXIxX2dyb3VwKSkpCisgICAgICByID0gMDsKKwor ICAgICMgaWZuZGVmIE9QRU5TU0xfTk9fRUMyTQorICAgIHNlY3QxNjNyMl9ncm91cCA9IEVDX0dS T1VQX25ld19ieV9jdXJ2ZV9uYW1lKE5JRF9zZWN0MTYzcjIpOworICAgIGlmIChCTl9jbXAoc2Vj dDE2M3IyX2ZpZWxkLCBFQ19HUk9VUF9nZXQwX2ZpZWxkKHNlY3QxNjNyMl9ncm91cCkpKQorICAg ICAgciA9IDA7CisgICAgIyBlbmRpZgorCisgICAgRUNfR1JPVVBfZnJlZShzZWNwNTIxcjFfZ3Jv dXApOworICAgIEVDX0dST1VQX2ZyZWUoc2VjdDE2M3IyX2dyb3VwKTsKKyAgICBCTl9mcmVlKHNl Y3A1MjFyMV9maWVsZCk7CisgICAgQk5fZnJlZShzZWN0MTYzcjJfZmllbGQpOworICAgIHJldHVy biByOworfQogLyoKLSAqIG5pc3RwX3Rlc3RfcGFyYW1zIGNvbnRhaW5zIG1hZ2ljIG51bWJlcnMg Zm9yIHRlc3Rpbmcgb3VyIG9wdGltaXplZAotICogaW1wbGVtZW50YXRpb25zIG9mIHNldmVyYWwg TklTVCBjdXJ2ZXMgd2l0aCBjaGFyYWN0ZXJpc3RpYyA+IDMuCisgKiBuaXN0cF90ZXN0X3BhcmFt cyBjb250YWlucyBtYWdpYyBudW1iZXJzIGZvciB0ZXN0aW5nCisgKiBzZXZlcmFsIE5JU1QgY3Vy dmVzIHdpdGggY2hhcmFjdGVyaXN0aWMgPiAzLgogICovCiBzdHJ1Y3QgbmlzdHBfdGVzdF9wYXJh bXMgewotICAgIGNvbnN0IEVDX01FVEhPRCAqKCptZXRoKSAodm9pZCk7CisgICAgY29uc3QgaW50 IG5pZDsKICAgICBpbnQgZGVncmVlOwogICAgIC8qCiAgICAgICogUXgsIFF5IGFuZCBEIGFyZSB0 YWtlbiBmcm9tCkBAIC01MDMsNyArNTMzLDcgQEAgc3RydWN0IG5pc3RwX3Rlc3RfcGFyYW1zIHsK IHN0YXRpYyBjb25zdCBzdHJ1Y3QgbmlzdHBfdGVzdF9wYXJhbXMgbmlzdHBfdGVzdHNfcGFyYW1z W10gPSB7CiAgICAgewogICAgICAvKiBQLTIyNCAqLwotICAgICBFQ19HRnBfbmlzdHAyMjRfbWV0 aG9kLAorICAgICBOSURfc2VjcDIyNHIxLAogICAgICAyMjQsCiAgICAgIC8qIHAgKi8KICAgICAg IkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAx IiwKQEAgLTUyNiw3ICs1NTYsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG5pc3RwX3Rlc3RfcGFy YW1zIG5pc3RwX3Rlc3RzX3BhcmFtc1tdID0gewogICAgICB9LAogICAgIHsKICAgICAgLyogUC0y NTYgKi8KLSAgICAgRUNfR0ZwX25pc3RwMjU2X21ldGhvZCwKKyAgICAgTklEX1g5XzYyX3ByaW1l MjU2djEsCiAgICAgIDI1NiwKICAgICAgLyogcCAqLwogICAgICAiZmZmZmZmZmYwMDAwMDAwMTAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiIsCkBAIC01NDks NyArNTc5LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBuaXN0cF90ZXN0X3BhcmFtcyBuaXN0cF90 ZXN0c19wYXJhbXNbXSA9IHsKICAgICAgfSwKICAgICB7CiAgICAgIC8qIFAtNTIxICovCi0gICAg IEVDX0dGcF9uaXN0cDUyMV9tZXRob2QsCisgICAgIE5JRF9zZWNwNTIxcjEsCiAgICAgIDUyMSwK ICAgICAgLyogcCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIjFmZiIKQEAgLTYxMyw5ICs2NDMsOSBAQCBzdGF0aWMg aW50IG5pc3RwX3NpbmdsZV90ZXN0KGludCBpZHgpCiAgICAgICAgIHx8ICFURVNUX3B0cihvcmRl ciA9IEJOX25ldygpKQogICAgICAgICB8fCAhVEVTVF9wdHIoeXBsdXNvbmUgPSBCTl9uZXcoKSkK IAotICAgICAgICB8fCAhVEVTVF9wdHIoTklTVFAgPSBFQ19HUk9VUF9uZXcodGVzdC0+bWV0aCgp KSkKKyAgICAgICAgfHwgIVRFU1RfcHRyKE5JU1RQID0gRUNfR1JPVVBfbmV3X2J5X2N1cnZlX25h bWUodGVzdC0+bmlkKSkKICAgICAgICAgfHwgIVRFU1RfdHJ1ZShCTl9oZXgyYm4oJnAsIHRlc3Qt PnApKQotICAgICAgICB8fCAhVEVTVF9pbnRfZXEoMSwgQk5faXNfcHJpbWVfZXgocCwgQk5fcHJp bWVfY2hlY2tzLCBjdHgsIE5VTEwpKQorICAgICAgICB8fCAhVEVTVF9pbnRfZXEoMSwgQk5fY2hl Y2tfcHJpbWUocCwgY3R4LCBOVUxMKSkKICAgICAgICAgfHwgIVRFU1RfdHJ1ZShCTl9oZXgyYm4o JmEsIHRlc3QtPmEpKQogICAgICAgICB8fCAhVEVTVF90cnVlKEJOX2hleDJibigmYiwgdGVzdC0+ YikpCiAgICAgICAgIHx8ICFURVNUX3RydWUoRUNfR1JPVVBfc2V0X2N1cnZlKE5JU1RQLCBwLCBh LCBiLCBjdHgpKQpAQCAtNjY4LDE2ICs2OTgsMTMgQEAgc3RhdGljIGludCBuaXN0cF9zaW5nbGVf dGVzdChpbnQgaWR4KQogICAgIC8qIHJhbmRvbSBwb2ludCBtdWx0aXBsaWNhdGlvbiAqLwogICAg IEVDX1BPSU5UX211bChOSVNUUCwgUSwgTlVMTCwgUCwgbSwgY3R4KTsKICAgICBpZiAoIVRFU1Rf aW50X2VxKDAsIEVDX1BPSU5UX2NtcChOSVNUUCwgUSwgUV9DSEVDSywgY3R4KSkKLQotICAgIC8q Ci0gICAgICogV2UgaGF2ZSBub3QgcGVyZm9ybWVkIHByZWNvbXB1dGF0aW9uIHNvIGhhdmVfcHJl Y29tcHV0ZSBtdWx0IHNob3VsZCBiZQotICAgICAqIGZhbHNlCi0gICAgICovCisjaWZuZGVmIE9Q RU5TU0xfTk9fREVQUkVDQVRFRF8zXzAKKyAgICAgICAgLyogV2UgaGF2ZSBub3QgcGVyZm9ybWVk IHByZWNvbXAgc28gdGhpcyBzaG91bGQgYmUgZmFsc2UgKi8KICAgICAgICAgfHwgIVRFU1RfZmFs c2UoRUNfR1JPVVBfaGF2ZV9wcmVjb21wdXRlX211bHQoTklTVFApKQotCi0gICAgLyogbm93IHJl cGVhdCBhbGwgdGVzdHMgd2l0aCBwcmVjb21wdXRhdGlvbiAqLworICAgICAgICAvKiBub3cgcmVw ZWF0IGFsbCB0ZXN0cyB3aXRoIHByZWNvbXB1dGF0aW9uICovCiAgICAgICAgIHx8ICFURVNUX3Ry dWUoRUNfR1JPVVBfcHJlY29tcHV0ZV9tdWx0KE5JU1RQLCBjdHgpKQotICAgICAgICB8fCAhVEVT VF90cnVlKEVDX0dST1VQX2hhdmVfcHJlY29tcHV0ZV9tdWx0KE5JU1RQKSkpCisjZW5kaWYKKyAg ICAgICAgKQogICAgICAgICBnb3RvIGVycjsKIAogICAgIC8qIGZpeGVkIHBvaW50IG11bHRpcGxp Y2F0aW9uICovCkBAIC03MDksNyArNzM2LDcgQEAgc3RhdGljIGludCBuaXN0cF9zaW5nbGVfdGVz dChpbnQgaWR4KQogICAgICAgICB8fCAhVEVTVF9pbnRfZXEoMCwgRUNfUE9JTlRfY21wKE5JU1RQ LCBRLCBHLCBjdHgpKSkKICAgICAgIGdvdG8gZXJyOwogCi0gICAgciA9IGdyb3VwX29yZGVyX3Rl c3RzKE5JU1RQKTsKKyAgICByID0gMTsKIGVycjoKICAgICBFQ19HUk9VUF9mcmVlKE5JU1RQKTsK ICAgICBFQ19QT0lOVF9mcmVlKEcpOwpAQCAtNzI5LDc2ICs3NTYsNiBAQCBlcnI6CiAgICAgcmV0 dXJuIHI7CiB9CiAKLS8qCi0gKiBUZXN0cyBhIHBvaW50IGtub3duIHRvIGNhdXNlIGFuIGluY29y cmVjdCB1bmRlcmZsb3cgaW4gYW4gb2xkIHZlcnNpb24gb2YKLSAqIGVjcF9uaXN0NTIxLmMKLSAq Lwotc3RhdGljIGludCB1bmRlcmZsb3dfdGVzdCh2b2lkKQotewotICAgIEJOX0NUWCAqY3R4ID0g TlVMTDsKLSAgICBFQ19HUk9VUCAqZ3JwID0gTlVMTDsKLSAgICBFQ19QT0lOVCAqUCA9IE5VTEws ICpRID0gTlVMTCwgKlIgPSBOVUxMOwotICAgIEJJR05VTSAqeDEgPSBOVUxMLCAqeTEgPSBOVUxM LCAqejEgPSBOVUxMLCAqeDIgPSBOVUxMLCAqeTIgPSBOVUxMOwotICAgIEJJR05VTSAqayA9IE5V TEw7Ci0gICAgaW50IHRlc3RyZXN1bHQgPSAwOwotICAgIGNvbnN0IGNoYXIgKngxc3RyID0KLSAg ICAgICAgIjE1MzRmMDA3N2ZmZmZmZTg3ZTlhZGNmZTAwMDAwMDAwMDAwMDAwMDAwMDAwM2UwNWEy MWQyNDAwMDAyZTAzMWIxZjQiCi0gICAgICAgICJiODAwMDBjNmZhZmE0ZjNjMTI4ODc5OGQ2MjRh MjQ3YjVlMmZmZmZmZmZmZmZmZmZmZWZlMDk5MjQxOTAwMDA0IjsKLSAgICBjb25zdCBjaGFyICpw NTIxbTEgPQotICAgICAgICAiMWZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZiIKLSAgICAgICAgImZmZmZmZmZmZmZmZmZmZmZm ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmUiOwotCi0gICAg Y3R4ID0gQk5fQ1RYX25ldygpOwotICAgIGlmICghVEVTVF9wdHIoY3R4KSkKLSAgICAgICAgcmV0 dXJuIDA7Ci0KLSAgICBCTl9DVFhfc3RhcnQoY3R4KTsKLSAgICB4MSA9IEJOX0NUWF9nZXQoY3R4 KTsKLSAgICB5MSA9IEJOX0NUWF9nZXQoY3R4KTsKLSAgICB6MSA9IEJOX0NUWF9nZXQoY3R4KTsK LSAgICB4MiA9IEJOX0NUWF9nZXQoY3R4KTsKLSAgICB5MiA9IEJOX0NUWF9nZXQoY3R4KTsKLSAg ICBrID0gQk5fQ1RYX2dldChjdHgpOwotICAgIGlmICghVEVTVF9wdHIoaykpCi0gICAgICAgIGdv dG8gZXJyOwotCi0gICAgZ3JwID0gRUNfR1JPVVBfbmV3X2J5X2N1cnZlX25hbWUoTklEX3NlY3A1 MjFyMSk7Ci0gICAgUCA9IEVDX1BPSU5UX25ldyhncnApOwotICAgIFEgPSBFQ19QT0lOVF9uZXco Z3JwKTsKLSAgICBSID0gRUNfUE9JTlRfbmV3KGdycCk7Ci0gICAgaWYgKCFURVNUX3B0cihncnAp IHx8ICFURVNUX3B0cihQKSB8fCAhVEVTVF9wdHIoUSkgfHwgIVRFU1RfcHRyKFIpKQotICAgICAg ICBnb3RvIGVycjsKLQotICAgIGlmICghVEVTVF9pbnRfZ3QoQk5faGV4MmJuKCZ4MSwgeDFzdHIp LCAwKQotICAgICAgICAgICAgfHwgIVRFU1RfaW50X2d0KEJOX2hleDJibigmeTEsIHA1MjFtMSks IDApCi0gICAgICAgICAgICB8fCAhVEVTVF9pbnRfZ3QoQk5faGV4MmJuKCZ6MSwgcDUyMW0xKSwg MCkKLSAgICAgICAgICAgIHx8ICFURVNUX2ludF9ndChCTl9oZXgyYm4oJmssICIwMiIpLCAwKQot ICAgICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19QT0lOVF9zZXRfSnByb2plY3RpdmVfY29vcmRp bmF0ZXNfR0ZwKGdycCwgUCwgeDEsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeTEsIHoxLCBjdHgpKQotICAgICAgICAg ICAgfHwgIVRFU1RfdHJ1ZShFQ19QT0lOVF9tdWwoZ3JwLCBRLCBOVUxMLCBQLCBrLCBjdHgpKQot ICAgICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19QT0lOVF9nZXRfYWZmaW5lX2Nvb3JkaW5hdGVz KGdycCwgUSwgeDEsIHkxLCBjdHgpKQotICAgICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19QT0lO VF9kYmwoZ3JwLCBSLCBQLCBjdHgpKQotICAgICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19QT0lO VF9nZXRfYWZmaW5lX2Nvb3JkaW5hdGVzKGdycCwgUiwgeDIsIHkyLCBjdHgpKSkKLSAgICAgICAg Z290byBlcnI7Ci0KLSAgICBpZiAoIVRFU1RfaW50X2VxKEJOX2NtcCh4MSwgeDIpLCAwKQotICAg ICAgICAgICAgfHwgIVRFU1RfaW50X2VxKEJOX2NtcCh5MSwgeTIpLCAwKSkKLSAgICAgICAgZ290 byBlcnI7Ci0KLSAgICB0ZXN0cmVzdWx0ID0gMTsKLQotIGVycjoKLSAgICBCTl9DVFhfZW5kKGN0 eCk7Ci0gICAgRUNfUE9JTlRfZnJlZShQKTsKLSAgICBFQ19QT0lOVF9mcmVlKFEpOwotICAgIEVD X1BPSU5UX2ZyZWUoUik7Ci0gICAgRUNfR1JPVVBfZnJlZShncnApOwotICAgIEJOX0NUWF9mcmVl KGN0eCk7Ci0KLSAgICByZXR1cm4gdGVzdHJlc3VsdDsKLX0KLSMgZW5kaWYKLQogc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIgcDUyMV9uYW1lZFtdID0gewogICAgIDB4MDYsIDB4MDUsIDB4MmIs IDB4ODEsIDB4MDQsIDB4MDAsIDB4MjMsCiB9OwpAQCAtODQ1LDYgKzgwMiwyNjEgQEAgc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIgcDUyMV9leHBsaWNpdFtdID0gewogfTsKIAogLyoKKyAqIFRo aXMgdGVzdCB2YWxpZGF0ZXMgYSBuYW1lZCBjdXJ2ZSdzIGdyb3VwIHBhcmFtZXRlcnMgdXNpbmcK KyAqIEVDX0dST1VQX2NoZWNrX25hbWVkX2N1cnZlKCkuIEl0IGFsc28gY2hlY2tzIHRoYXQgbW9k aWZ5aW5nIGFueSBvZiB0aGUKKyAqIGdyb3VwIHBhcmFtZXRlcnMgcmVzdWx0cyBpbiB0aGUgY3Vy dmUgbm90IGJlaW5nIHZhbGlkLgorICovCitzdGF0aWMgaW50IGNoZWNrX25hbWVkX2N1cnZlX3Rl c3QoaW50IGlkKQoreworICAgIGludCByZXQgPSAwLCBuaWQsIGZpZWxkX25pZCwgaGFzX3NlZWQ7 CisgICAgRUNfR1JPVVAgKmdyb3VwID0gTlVMTCwgKmd0ZXN0ID0gTlVMTDsKKyAgICBjb25zdCBF Q19QT0lOVCAqZ3JvdXBfZ2VuID0gTlVMTDsKKyAgICBFQ19QT0lOVCAqb3RoZXJfZ2VuID0gTlVM TDsKKyAgICBCSUdOVU0gKmdyb3VwX3AgPSBOVUxMLCAqZ3JvdXBfYSA9IE5VTEwsICpncm91cF9i ID0gTlVMTDsKKyAgICBCSUdOVU0gKm90aGVyX3AgPSBOVUxMLCAqb3RoZXJfYSA9IE5VTEwsICpv dGhlcl9iID0gTlVMTDsKKyAgICBCSUdOVU0gKmdyb3VwX2NvZmFjdG9yID0gTlVMTCwgKm90aGVy X2NvZmFjdG9yID0gTlVMTDsKKyAgICBCSUdOVU0gKm90aGVyX29yZGVyID0gTlVMTDsKKyAgICBj b25zdCBCSUdOVU0gKmdyb3VwX29yZGVyID0gTlVMTDsKKyAgICBCTl9DVFggKmJuX2N0eCA9IE5V TEw7CisgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaW52YWxpZF9zZWVkW10gPSAiVEhJ UyBJUyBOT1QgQSBWQUxJRCBTRUVEIjsKKyAgICBzdGF0aWMgc2l6ZV90IGludmFsaWRfc2VlZF9s ZW4gPSBzaXplb2YoaW52YWxpZF9zZWVkKTsKKworICAgIC8qIERvIHNvbWUgc2V0dXAgKi8KKyAg ICBuaWQgPSBjdXJ2ZXNbaWRdLm5pZDsKKyAgICBpZiAoIVRFU1RfcHRyKGJuX2N0eCA9IEJOX0NU WF9uZXcoKSkKKyAgICAgICAgfHwgIVRFU1RfcHRyKGdyb3VwID0gRUNfR1JPVVBfbmV3X2J5X2N1 cnZlX25hbWUobmlkKSkKKyAgICAgICAgfHwgIVRFU1RfcHRyKGd0ZXN0ID0gRUNfR1JPVVBfZHVw KGdyb3VwKSkKKyAgICAgICAgfHwgIVRFU1RfcHRyKGdyb3VwX3AgPSBCTl9uZXcoKSkKKyAgICAg ICAgfHwgIVRFU1RfcHRyKGdyb3VwX2EgPSBCTl9uZXcoKSkKKyAgICAgICAgfHwgIVRFU1RfcHRy KGdyb3VwX2IgPSBCTl9uZXcoKSkKKyAgICAgICAgfHwgIVRFU1RfcHRyKGdyb3VwX2NvZmFjdG9y ID0gQk5fbmV3KCkpCisgICAgICAgIHx8ICFURVNUX3B0cihncm91cF9nZW4gPSBFQ19HUk9VUF9n ZXQwX2dlbmVyYXRvcihncm91cCkpCisgICAgICAgIHx8ICFURVNUX3B0cihncm91cF9vcmRlciA9 IEVDX0dST1VQX2dldDBfb3JkZXIoZ3JvdXApKQorICAgICAgICB8fCAhVEVTVF90cnVlKEVDX0dS T1VQX2dldF9jb2ZhY3Rvcihncm91cCwgZ3JvdXBfY29mYWN0b3IsIE5VTEwpKQorICAgICAgICB8 fCAhVEVTVF90cnVlKEVDX0dST1VQX2dldF9jdXJ2ZShncm91cCwgZ3JvdXBfcCwgZ3JvdXBfYSwg Z3JvdXBfYiwgTlVMTCkpCisgICAgICAgIHx8ICFURVNUX3B0cihvdGhlcl9nZW4gPSBFQ19QT0lO VF9kdXAoZ3JvdXBfZ2VuLCBncm91cCkpCisgICAgICAgIHx8ICFURVNUX3RydWUoRUNfUE9JTlRf YWRkKGdyb3VwLCBvdGhlcl9nZW4sIGdyb3VwX2dlbiwgZ3JvdXBfZ2VuLCBOVUxMKSkKKyAgICAg ICAgfHwgIVRFU1RfcHRyKG90aGVyX29yZGVyID0gQk5fZHVwKGdyb3VwX29yZGVyKSkKKyAgICAg ICAgfHwgIVRFU1RfdHJ1ZShCTl9hZGRfd29yZChvdGhlcl9vcmRlciwgMSkpCisgICAgICAgIHx8 ICFURVNUX3B0cihvdGhlcl9hID0gQk5fZHVwKGdyb3VwX2EpKQorICAgICAgICB8fCAhVEVTVF90 cnVlKEJOX2FkZF93b3JkKG90aGVyX2EsIDEpKQorICAgICAgICB8fCAhVEVTVF9wdHIob3RoZXJf YiA9IEJOX2R1cChncm91cF9iKSkKKyAgICAgICAgfHwgIVRFU1RfdHJ1ZShCTl9hZGRfd29yZChv dGhlcl9iLCAxKSkKKyAgICAgICAgfHwgIVRFU1RfcHRyKG90aGVyX2NvZmFjdG9yID0gQk5fZHVw KGdyb3VwX2NvZmFjdG9yKSkKKyAgICAgICAgfHwgIVRFU1RfdHJ1ZShCTl9hZGRfd29yZChvdGhl cl9jb2ZhY3RvciwgMSkpKQorICAgICAgICBnb3RvIGVycjsKKworICAgIC8qIERldGVybWluZSBp ZiB0aGUgYnVpbHQtaW4gY3VydmUgaGFzIGEgc2VlZCBmaWVsZCBzZXQgKi8KKyAgICBoYXNfc2Vl ZCA9IChFQ19HUk9VUF9nZXRfc2VlZF9sZW4oZ3JvdXApID4gMCk7CisgICAgZmllbGRfbmlkID0g RUNfR1JPVVBfZ2V0X2ZpZWxkX3R5cGUoZ3JvdXApOworICAgIGlmIChmaWVsZF9uaWQgPT0gTklE X1g5XzYyX2NoYXJhY3RlcmlzdGljX3R3b19maWVsZCkgeworICAgICAgICBpZiAoIVRFU1RfcHRy KG90aGVyX3AgPSBCTl9kdXAoZ3JvdXBfcCkpCisgICAgICAgICAgICB8fCAhVEVTVF90cnVlKEJO X2xzaGlmdDEob3RoZXJfcCwgb3RoZXJfcCkpKQorICAgICAgICAgICAgZ290byBlcnI7CisgICAg fSBlbHNlIHsKKyAgICAgICAgaWYgKCFURVNUX3B0cihvdGhlcl9wID0gQk5fZHVwKGdyb3VwX3Ap KSkKKyAgICAgICAgICAgIGdvdG8gZXJyOworICAgICAgICAvKgorICAgICAgICAgKiBKdXN0IGNo b29zaW5nIGFueSBhcmJpdHJhcnkgcHJpbWUgZG9lcyBub3Qgd29yay4uCisgICAgICAgICAqIFNl dHRpbmcgcCB2aWEgZWNfR0ZwX25pc3RfZ3JvdXBfc2V0X2N1cnZlKCkgbmVlZHMgdGhlIHByaW1l IHRvIGJlIGEKKyAgICAgICAgICogbmlzdCBwcmltZS4gU28gb25seSBzZWxlY3Qgb25lIG9mIHRo ZXNlIGFzIGFuIGFsdGVybmF0ZSBwcmltZS4KKyAgICAgICAgICovCisgICAgICAgIGlmICghVEVT VF9wdHIoQk5fY29weShvdGhlcl9wLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQk5f dWNtcChCTl9nZXQwX25pc3RfcHJpbWVfMTkyKCksIG90aGVyX3ApID09IDAgPworICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCTl9nZXQwX25pc3RfcHJpbWVfMjU2KCkgOgor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCTl9nZXQwX25pc3RfcHJpbWVf MTkyKCkpKSkKKyAgICAgICAgICAgIGdvdG8gZXJyOworICAgIH0KKworICAgIC8qIFBhc3NlcyBi ZWNhdXNlIHRoaXMgaXMgYSB2YWxpZCBjdXJ2ZSAqLworICAgIGlmICghVEVTVF9pbnRfZXEoRUNf R1JPVVBfY2hlY2tfbmFtZWRfY3VydmUoZ3JvdXAsIDAsIE5VTEwpLCBuaWQpCisgICAgICAgIC8q IE9ubHkgTklTVCBjdXJ2ZXMgcGFzcyAqLworICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRUNfR1JP VVBfY2hlY2tfbmFtZWRfY3VydmUoZ3JvdXAsIDEsIE5VTEwpLAorICAgICAgICAgICAgICAgICAg ICAgICAgRUNfY3VydmVfbmlkMm5pc3QobmlkKSAhPSBOVUxMID8gbmlkIDogTklEX3VuZGVmKSkK KyAgICAgICAgZ290byBlcnI7CisKKyAgICAvKiBGYWlsIGlmIHRoZSBjdXJ2ZSBuYW1lIGRvZXNu J3QgbWF0Y2ggdGhlIHBhcmFtZXRlcnMgKi8KKyAgICBFQ19HUk9VUF9zZXRfY3VydmVfbmFtZShn cm91cCwgbmlkICsgMSk7CisgICAgRVJSX3NldF9tYXJrKCk7CisgICAgaWYgKCFURVNUX2ludF9s ZShFQ19HUk9VUF9jaGVja19uYW1lZF9jdXJ2ZShncm91cCwgMCwgTlVMTCksIDApKQorICAgICAg ICBnb3RvIGVycjsKKyAgICBFUlJfcG9wX3RvX21hcmsoKTsKKworICAgIC8qIFJlc3RvcmUgY3Vy dmUgbmFtZSBhbmQgZW5zdXJlIGl0J3MgcGFzc2luZyAqLworICAgIEVDX0dST1VQX3NldF9jdXJ2 ZV9uYW1lKGdyb3VwLCBuaWQpOworICAgIGlmICghVEVTVF9pbnRfZXEoRUNfR1JPVVBfY2hlY2tf bmFtZWRfY3VydmUoZ3JvdXAsIDAsIE5VTEwpLCBuaWQpKQorICAgICAgICBnb3RvIGVycjsKKwor ICAgIGlmICghVEVTVF9pbnRfZXEoRUNfR1JPVVBfc2V0X3NlZWQoZ3JvdXAsIGludmFsaWRfc2Vl ZCwgaW52YWxpZF9zZWVkX2xlbiksCisgICAgICAgICAgICAgICAgICAgICBpbnZhbGlkX3NlZWRf bGVuKSkKKyAgICAgICAgZ290byBlcnI7CisKKyAgICBpZiAoaGFzX3NlZWQpIHsKKyAgICAgICAg LyoKKyAgICAgICAgICogSWYgdGhlIGJ1aWx0LWluIGN1cnZlIGhhcyBhIHNlZWQgYW5kIHdlIHNl dCB0aGUgc2VlZCB0byBhbm90aGVyIHZhbHVlCisgICAgICAgICAqIHRoZW4gaXQgd2lsbCBmYWls IHRoZSBjaGVjay4KKyAgICAgICAgICovCisgICAgICAgIGlmICghVEVTVF9pbnRfZXEoRUNfR1JP VVBfY2hlY2tfbmFtZWRfY3VydmUoZ3JvdXAsIDAsIE5VTEwpLCAwKSkKKyAgICAgICAgICAgIGdv dG8gZXJyOworICAgIH0gZWxzZSB7CisgICAgICAgIC8qCisgICAgICAgICAqIElmIHRoZSBidWls dC1pbiBjdXJ2ZSBkb2VzIG5vdCBoYXZlIGEgc2VlZCB0aGVuIHNldHRpbmcgdGhlIHNlZWQgd2ls bAorICAgICAgICAgKiBwYXNzIHRoZSBjaGVjayAoYXMgdGhlIHNlZWQgaXMgb3B0aW9uYWwpLgor ICAgICAgICAgKi8KKyAgICAgICAgaWYgKCFURVNUX2ludF9lcShFQ19HUk9VUF9jaGVja19uYW1l ZF9jdXJ2ZShncm91cCwgMCwgTlVMTCksIG5pZCkpCisgICAgICAgICAgICBnb3RvIGVycjsKKyAg ICB9CisgICAgLyogUGFzcyBpZiB0aGUgc2VlZCBpcyB1bmtub3duIChhcyBpdCBpcyBvcHRpb25h bCkgKi8KKyAgICBpZiAoIVRFU1RfaW50X2VxKEVDX0dST1VQX3NldF9zZWVkKGdyb3VwLCBOVUxM LCAwKSwgMSkKKyAgICAgICAgfHwgIVRFU1RfaW50X2VxKEVDX0dST1VQX2NoZWNrX25hbWVkX2N1 cnZlKGdyb3VwLCAwLCBOVUxMKSwgbmlkKSkKKyAgICAgICAgZ290byBlcnI7CisKKyAgICAvKiBD aGVjayB0aGF0IGEgZHVwZWQgZ3JvdXAgcGFzc2VzICovCisgICAgaWYgKCFURVNUX2ludF9lcShF Q19HUk9VUF9jaGVja19uYW1lZF9jdXJ2ZShndGVzdCwgMCwgTlVMTCksIG5pZCkpCisgICAgICAg IGdvdG8gZXJyOworCisgICAgLyogY2hlY2sgdGhhdCBjaGFuZ2luZyBhbnkgZ2VuZXJhdG9yIHBh cmFtZXRlciBmYWlscyAqLworICAgIGlmICghVEVTVF90cnVlKEVDX0dST1VQX3NldF9nZW5lcmF0 b3IoZ3Rlc3QsIG90aGVyX2dlbiwgZ3JvdXBfb3JkZXIsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBncm91cF9jb2ZhY3RvcikpCisgICAgICAgIHx8ICFURVNUX2lu dF9lcShFQ19HUk9VUF9jaGVja19uYW1lZF9jdXJ2ZShndGVzdCwgMCwgTlVMTCksIDApCisgICAg ICAgIHx8ICFURVNUX3RydWUoRUNfR1JPVVBfc2V0X2dlbmVyYXRvcihndGVzdCwgZ3JvdXBfZ2Vu LCBvdGhlcl9vcmRlciwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGdyb3VwX2NvZmFjdG9yKSkKKyAgICAgICAgfHwgIVRFU1RfaW50X2VxKEVDX0dST1VQX2No ZWNrX25hbWVkX2N1cnZlKGd0ZXN0LCAwLCBOVUxMKSwgMCkKKyAgICAgICAgLyogVGhlIG9yZGVy IGlzIG5vdCBhbiBvcHRpb25hbCBmaWVsZCwgc28gdGhpcyBzaG91bGQgZmFpbCAqLworICAgICAg ICB8fCAhVEVTVF9mYWxzZShFQ19HUk9VUF9zZXRfZ2VuZXJhdG9yKGd0ZXN0LCBncm91cF9nZW4s IE5VTEwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3Jv dXBfY29mYWN0b3IpKQorICAgICAgICB8fCAhVEVTVF90cnVlKEVDX0dST1VQX3NldF9nZW5lcmF0 b3IoZ3Rlc3QsIGdyb3VwX2dlbiwgZ3JvdXBfb3JkZXIsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBvdGhlcl9jb2ZhY3RvcikpCisgICAgICAgIHx8ICFURVNU X2ludF9lcShFQ19HUk9VUF9jaGVja19uYW1lZF9jdXJ2ZShndGVzdCwgMCwgTlVMTCksIDApCisg ICAgICAgIC8qIENoZWNrIHRoYXQgaWYgdGhlIGNvZmFjdG9yIGlzIG5vdCBzZXQgdGhlbiBpdCBz dGlsbCBwYXNzZXMgKi8KKyAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19HUk9VUF9zZXRfZ2VuZXJh dG9yKGd0ZXN0LCBncm91cF9nZW4sIGdyb3VwX29yZGVyLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCkpCisgICAgICAgIHx8ICFURVNUX2ludF9lcShF Q19HUk9VUF9jaGVja19uYW1lZF9jdXJ2ZShndGVzdCwgMCwgTlVMTCksIG5pZCkKKyAgICAgICAg LyogY2hlY2sgdGhhdCByZXN0b3JpbmcgdGhlIGdlbmVyYXRvciBwYXNzZXMgKi8KKyAgICAgICAg fHwgIVRFU1RfdHJ1ZShFQ19HUk9VUF9zZXRfZ2VuZXJhdG9yKGd0ZXN0LCBncm91cF9nZW4sIGdy b3VwX29yZGVyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Z3JvdXBfY29mYWN0b3IpKQorICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRUNfR1JPVVBfY2hlY2tf bmFtZWRfY3VydmUoZ3Rlc3QsIDAsIE5VTEwpLCBuaWQpKQorICAgICAgICBnb3RvIGVycjsKKwor ICAgIC8qCisgICAgICogY2hlY2sgdGhhdCBjaGFuZ2luZyBhbnkgY3VydmUgcGFyYW1ldGVyIGZh aWxzCisgICAgICoKKyAgICAgKiBTZXR0aW5nIGFyYml0cmFyeSBwLCBhIG9yIGIgbWlnaHQgZmFp bCBmb3Igc29tZSBFQ19HUk9VUHMKKyAgICAgKiBkZXBlbmRpbmcgb24gdGhlIGludGVybmFsIEVD X01FVEhPRCBpbXBsZW1lbnRhdGlvbiwgaGVuY2UgcnVuCisgICAgICogdGhlc2UgdGVzdHMgY29u ZGl0aW9uYWxseSB0byB0aGUgc3VjY2VzcyBvZiBFQ19HUk9VUF9zZXRfY3VydmUoKS4KKyAgICAg Ki8KKyAgICBFUlJfc2V0X21hcmsoKTsKKyAgICBpZiAoRUNfR1JPVVBfc2V0X2N1cnZlKGd0ZXN0 LCBvdGhlcl9wLCBncm91cF9hLCBncm91cF9iLCBOVUxMKSkgeworICAgICAgICBpZiAoIVRFU1Rf aW50X2xlKEVDX0dST1VQX2NoZWNrX25hbWVkX2N1cnZlKGd0ZXN0LCAwLCBOVUxMKSwgMCkpCisg ICAgICAgICAgICBnb3RvIGVycjsKKyAgICB9IGVsc2UgeworICAgICAgICAvKiBjbGVhciB0aGUg ZXJyb3Igc3RhY2sgaWYgRUNfR1JPVVBfc2V0X2N1cnZlKCkgZmFpbGVkICovCisgICAgICAgIEVS Ul9wb3BfdG9fbWFyaygpOworICAgICAgICBFUlJfc2V0X21hcmsoKTsKKyAgICB9CisgICAgaWYg KEVDX0dST1VQX3NldF9jdXJ2ZShndGVzdCwgZ3JvdXBfcCwgb3RoZXJfYSwgZ3JvdXBfYiwgTlVM TCkpIHsKKyAgICAgICAgaWYgKCFURVNUX2ludF9sZShFQ19HUk9VUF9jaGVja19uYW1lZF9jdXJ2 ZShndGVzdCwgMCwgTlVMTCksIDApKQorICAgICAgICAgICAgZ290byBlcnI7CisgICAgfSBlbHNl IHsKKyAgICAgICAgLyogY2xlYXIgdGhlIGVycm9yIHN0YWNrIGlmIEVDX0dST1VQX3NldF9jdXJ2 ZSgpIGZhaWxlZCAqLworICAgICAgICBFUlJfcG9wX3RvX21hcmsoKTsKKyAgICAgICAgRVJSX3Nl dF9tYXJrKCk7CisgICAgfQorICAgIGlmIChFQ19HUk9VUF9zZXRfY3VydmUoZ3Rlc3QsIGdyb3Vw X3AsIGdyb3VwX2EsIG90aGVyX2IsIE5VTEwpKSB7CisgICAgICAgIGlmICghVEVTVF9pbnRfbGUo RUNfR1JPVVBfY2hlY2tfbmFtZWRfY3VydmUoZ3Rlc3QsIDAsIE5VTEwpLCAwKSkKKyAgICAgICAg ICAgIGdvdG8gZXJyOworICAgIH0gZWxzZSB7CisgICAgICAgIC8qIGNsZWFyIHRoZSBlcnJvciBz dGFjayBpZiBFQ19HUk9VUF9zZXRfY3VydmUoKSBmYWlsZWQgKi8KKyAgICAgICAgRVJSX3BvcF90 b19tYXJrKCk7CisgICAgICAgIEVSUl9zZXRfbWFyaygpOworICAgIH0KKyAgICBFUlJfcG9wX3Rv X21hcmsoKTsKKworICAgIC8qIENoZWNrIHRoYXQgcmVzdG9yaW5nIHRoZSBjdXJ2ZSBwYXJhbWV0 ZXJzIHBhc3NlcyAqLworICAgIGlmICghVEVTVF90cnVlKEVDX0dST1VQX3NldF9jdXJ2ZShndGVz dCwgZ3JvdXBfcCwgZ3JvdXBfYSwgZ3JvdXBfYiwgTlVMTCkpCisgICAgICAgIHx8ICFURVNUX2lu dF9lcShFQ19HUk9VUF9jaGVja19uYW1lZF9jdXJ2ZShndGVzdCwgMCwgTlVMTCksIG5pZCkpCisg ICAgICAgIGdvdG8gZXJyOworCisgICAgcmV0ID0gMTsKK2VycjoKKyAgICBCTl9mcmVlKGdyb3Vw X3ApOworICAgIEJOX2ZyZWUob3RoZXJfcCk7CisgICAgQk5fZnJlZShncm91cF9hKTsKKyAgICBC Tl9mcmVlKG90aGVyX2EpOworICAgIEJOX2ZyZWUoZ3JvdXBfYik7CisgICAgQk5fZnJlZShvdGhl cl9iKTsKKyAgICBCTl9mcmVlKGdyb3VwX2NvZmFjdG9yKTsKKyAgICBCTl9mcmVlKG90aGVyX2Nv ZmFjdG9yKTsKKyAgICBCTl9mcmVlKG90aGVyX29yZGVyKTsKKyAgICBFQ19QT0lOVF9mcmVlKG90 aGVyX2dlbik7CisgICAgRUNfR1JPVVBfZnJlZShndGVzdCk7CisgICAgRUNfR1JPVVBfZnJlZShn cm91cCk7CisgICAgQk5fQ1RYX2ZyZWUoYm5fY3R4KTsKKyAgICByZXR1cm4gcmV0OworfQorCisv KgorICogVGhpcyBjaGVja3MgdGhlIGxvb2t1cCBjYXBhYmlsaXR5IG9mIEVDX0dST1VQX2NoZWNr X25hbWVkX2N1cnZlKCkKKyAqIHdoZW4gdGhlIGdpdmVuIGdyb3VwIHdhcyBjcmVhdGVkIHdpdGgg ZXhwbGljaXQgcGFyYW1ldGVycy4KKyAqCisgKiBJdCBpcyBwb3NzaWJsZSB0byByZXRyaWV2ZSBh biBhbHRlcm5hdGl2ZSBhbGlhcyB0aGF0IGRvZXMgbm90IG1hdGNoCisgKiB0aGUgb3JpZ2luYWwg bmlkIGluIHRoaXMgY2FzZS4KKyAqLworc3RhdGljIGludCBjaGVja19uYW1lZF9jdXJ2ZV9sb29r dXBfdGVzdChpbnQgaWQpCit7CisgICAgaW50IHJldCA9IDAsIG5pZCwgcnYgPSAwOworICAgIEVD X0dST1VQICpnID0gTlVMTCAsICpnYSA9IE5VTEw7CisgICAgRUNQQVJBTUVURVJTICpwID0gTlVM TCwgKnBhID0gTlVMTDsKKyAgICBCTl9DVFggKmN0eCA9IE5VTEw7CisKKyAgICAvKiBEbyBzb21l IHNldHVwICovCisgICAgbmlkID0gY3VydmVzW2lkXS5uaWQ7CisgICAgaWYgKCFURVNUX3B0cihj dHggPSBCTl9DVFhfbmV3KCkpCisgICAgICAgIHx8ICFURVNUX3B0cihnID0gRUNfR1JPVVBfbmV3 X2J5X2N1cnZlX25hbWUobmlkKSkKKyAgICAgICAgfHwgIVRFU1RfcHRyKHAgPSBFQ19HUk9VUF9n ZXRfZWNwYXJhbWV0ZXJzKGcsIE5VTEwpKSkKKyAgICAgICAgZ290byBlcnI7CisKKyAgICAvKiBy ZXBsYWNlIHdpdGggZ3JvdXAgZnJvbSBleHBsaWNpdCBwYXJhbWV0ZXJzICovCisgICAgRUNfR1JP VVBfZnJlZShnKTsKKyAgICBpZiAoIVRFU1RfcHRyKGcgPSBFQ19HUk9VUF9uZXdfZnJvbV9lY3Bh cmFtZXRlcnMocCkpKQorICAgICAgICBnb3RvIGVycjsKKworICAgIGlmICghVEVTVF9pbnRfZ3Qo cnYgPSBFQ19HUk9VUF9jaGVja19uYW1lZF9jdXJ2ZShnLCAwLCBOVUxMKSwgMCkpCisgICAgICAg IGdvdG8gZXJyOworICAgIGlmIChydiAhPSBuaWQpIHsKKyAgICAgICAgLyoKKyAgICAgICAgICog Rm91bmQgYW4gYWxpYXM6CisgICAgICAgICAqIGZhaWwgaWYgdGhlIHJldHVybmVkIG5pZCBpcyBu b3QgYW4gYWxpYXMgb2YgdGhlIG9yaWdpbmFsIGdyb3VwLgorICAgICAgICAgKgorICAgICAgICAg KiBUaGUgY29tcGFyaXNvbiBoZXJlIGlzIGRvbmUgYnkgY29tcGFyaW5nIHR3byBleHBsaWNpdAor ICAgICAgICAgKiBwYXJhbWV0ZXIgRUNfR1JPVVBzIHdpdGggRUNfR1JPVVBfY21wKCksIHRvIGVu c3VyZSB0aGUKKyAgICAgICAgICogY29tcGFyaXNvbiBoYXBwZW5zIHdpdGggdW5uYW1lZCBFQ19H Uk9VUHMgdXNpbmcgdGhlIHNhbWUKKyAgICAgICAgICogRUNfTUVUSE9Ecy4KKyAgICAgICAgICov CisgICAgICAgIGlmICghVEVTVF9wdHIoZ2EgPSBFQ19HUk9VUF9uZXdfYnlfY3VydmVfbmFtZShy dikpCisgICAgICAgICAgICAgICAgfHwgIVRFU1RfcHRyKHBhID0gRUNfR1JPVVBfZ2V0X2VjcGFy YW1ldGVycyhnYSwgTlVMTCkpKQorICAgICAgICAgICAgZ290byBlcnI7CisKKyAgICAgICAgLyog cmVwbGFjZSB3aXRoIGdyb3VwIGZyb20gZXhwbGljaXQgcGFyYW1ldGVycywgdGhlbiBjb21wYXJl ICovCisgICAgICAgIEVDX0dST1VQX2ZyZWUoZ2EpOworICAgICAgICBpZiAoIVRFU1RfcHRyKGdh ID0gRUNfR1JPVVBfbmV3X2Zyb21fZWNwYXJhbWV0ZXJzKHBhKSkKKyAgICAgICAgICAgICAgICB8 fCAhVEVTVF9pbnRfZXEoRUNfR1JPVVBfY21wKGcsIGdhLCBjdHgpLCAwKSkKKyAgICAgICAgICAg IGdvdG8gZXJyOworICAgIH0KKworICAgIHJldCA9IDE7CisKKyBlcnI6CisgICAgRUNfR1JPVVBf ZnJlZShnKTsKKyAgICBFQ19HUk9VUF9mcmVlKGdhKTsKKyAgICBFQ1BBUkFNRVRFUlNfZnJlZShw KTsKKyAgICBFQ1BBUkFNRVRFUlNfZnJlZShwYSk7CisgICAgQk5fQ1RYX2ZyZWUoY3R4KTsKKwor ICAgIHJldHVybiByZXQ7Cit9CisKKy8qCiAgKiBTb21ldGltZSB3ZSBjYW5ub3QgY29tcGFyZSBu aWRzIGZvciBlcXVhbGl0eSwgYXMgdGhlIGJ1aWx0LWluIGN1cnZlIHRhYmxlCiAgKiBpbmNsdWRl cyBhbGlhc2VzIHdpdGggZGlmZmVyZW50IG5hbWVzIGZvciB0aGUgc2FtZSBjdXJ2ZS4KICAqCkBA IC04NTYsNyArMTA2OCw3IEBAIGludCBhcmVfZWNfbmlkc19jb21wYXRpYmxlKGludCBuMWQsIGlu dCBuMmQpCiB7CiAgICAgaW50IHJldCA9IDA7CiAgICAgc3dpdGNoIChuMWQpIHsKLSMgaWZuZGVm IE9QRU5TU0xfTk9fRUMyTQorI2lmbmRlZiBPUEVOU1NMX05PX0VDMk0KICAgICAgICAgY2FzZSBO SURfc2VjdDExM3IxOgogICAgICAgICBjYXNlIE5JRF93YXBfd3NnX2lkbV9lY2lkX3d0bHM0Ogog ICAgICAgICAgICAgcmV0ID0gKG4yZCA9PSBOSURfc2VjdDExM3IxIHx8IG4yZCA9PSBOSURfd2Fw X3dzZ19pZG1fZWNpZF93dGxzNCk7CkBAIC04NzgsNyArMTA5MCw3IEBAIGludCBhcmVfZWNfbmlk c19jb21wYXRpYmxlKGludCBuMWQsIGludCBuMmQpCiAgICAgICAgICAgICByZXQgPSAobjJkID09 IE5JRF9YOV82Ml9jMnBuYjE2M3YxCiAgICAgICAgICAgICAgICAgICAgfHwgbjJkID09IE5JRF93 YXBfd3NnX2lkbV9lY2lkX3d0bHM1KTsKICAgICAgICAgICAgIGJyZWFrOwotIyBlbmRpZiAvKiBP UEVOU1NMX05PX0VDMk0gKi8KKyNlbmRpZiAvKiBPUEVOU1NMX05PX0VDMk0gKi8KICAgICAgICAg Y2FzZSBOSURfc2VjcDExMnIxOgogICAgICAgICBjYXNlIE5JRF93YXBfd3NnX2lkbV9lY2lkX3d0 bHM2OgogICAgICAgICAgICAgcmV0ID0gKG4yZCA9PSBOSURfc2VjcDExMnIxIHx8IG4yZCA9PSBO SURfd2FwX3dzZ19pZG1fZWNpZF93dGxzNik7CkBAIC04ODcsMTIgKzEwOTksMTIgQEAgaW50IGFy ZV9lY19uaWRzX2NvbXBhdGlibGUoaW50IG4xZCwgaW50IG4yZCkKICAgICAgICAgY2FzZSBOSURf d2FwX3dzZ19pZG1fZWNpZF93dGxzNzoKICAgICAgICAgICAgIHJldCA9IChuMmQgPT0gTklEX3Nl Y3AxNjByMiB8fCBuMmQgPT0gTklEX3dhcF93c2dfaWRtX2VjaWRfd3RsczcpOwogICAgICAgICAg ICAgYnJlYWs7Ci0jIGlmZGVmIE9QRU5TU0xfTk9fRUNfTklTVFBfNjRfR0NDXzEyOAorI2lmZGVm IE9QRU5TU0xfTk9fRUNfTklTVFBfNjRfR0NDXzEyOAogICAgICAgICBjYXNlIE5JRF9zZWNwMjI0 cjE6CiAgICAgICAgIGNhc2UgTklEX3dhcF93c2dfaWRtX2VjaWRfd3RsczEyOgogICAgICAgICAg ICAgcmV0ID0gKG4yZCA9PSBOSURfc2VjcDIyNHIxIHx8IG4yZCA9PSBOSURfd2FwX3dzZ19pZG1f ZWNpZF93dGxzMTIpOwogICAgICAgICAgICAgYnJlYWs7Ci0jIGVsc2UKKyNlbHNlCiAgICAgICAg IC8qCiAgICAgICAgICAqIEZvciBTRUMgUC0yMjQgd2Ugd2FudCB0byBlbnN1cmUgdGhhdCB0aGUg U0VDUCBuaWQgaXMgcmV0dXJuZWQsIGFzCiAgICAgICAgICAqIHRoYXQgaXMgYXNzb2NpYXRlZCB3 aXRoIGEgc3BlY2lhbGl6ZWQgbWV0aG9kLgpAQCAtOTAwLDcgKzExMTIsNyBAQCBpbnQgYXJlX2Vj X25pZHNfY29tcGF0aWJsZShpbnQgbjFkLCBpbnQgbjJkKQogICAgICAgICBjYXNlIE5JRF93YXBf d3NnX2lkbV9lY2lkX3d0bHMxMjoKICAgICAgICAgICAgIHJldCA9IChuMmQgPT0gTklEX3NlY3Ay MjRyMSk7CiAgICAgICAgICAgICBicmVhazsKLSMgZW5kaWYgLyogZGVmKE9QRU5TU0xfTk9fRUNf TklTVFBfNjRfR0NDXzEyOCkgKi8KKyNlbmRpZiAvKiBkZWYoT1BFTlNTTF9OT19FQ19OSVNUUF82 NF9HQ0NfMTI4KSAqLwogCiAgICAgICAgIGRlZmF1bHQ6CiAgICAgICAgICAgICByZXQgPSAobjFk ID09IG4yZCk7CkBAIC0xMTA5LDE1ICsxMzIxLDE0IEBAIGVycjoKICAgICByZXR1cm4gcmV0Owog fQogCisKIHN0YXRpYyBpbnQgcGFyYW1ldGVyX3Rlc3Qodm9pZCkKIHsKICAgICBFQ19HUk9VUCAq Z3JvdXAgPSBOVUxMLCAqZ3JvdXAyID0gTlVMTDsKICAgICBFQ1BBUkFNRVRFUlMgKmVjcGFyYW1l dGVycyA9IE5VTEw7CiAgICAgdW5zaWduZWQgY2hhciAqYnVmID0gTlVMTDsKICAgICBpbnQgciA9 IDAsIGxlbjsKLQotICAgIC8qIG11c3QgdXNlIGEgY3VydmUgd2l0aG91dCBhIHNwZWNpYWwgZ3Jv dXAgbWV0aG9kICovCi0gICAgaWYgKCFURVNUX3B0cihncm91cCA9IEVDX0dST1VQX25ld19ieV9j dXJ2ZV9uYW1lKE5JRF9zZWNwMjU2azEpKQorICAgIGlmICghVEVTVF9wdHIoZ3JvdXAgPSBFQ19H Uk9VUF9uZXdfYnlfY3VydmVfbmFtZShOSURfc2VjcDM4NHIxKSkKICAgICAgICAgfHwgIVRFU1Rf cHRyKGVjcGFyYW1ldGVycyA9IEVDX0dST1VQX2dldF9lY3BhcmFtZXRlcnMoZ3JvdXAsIE5VTEwp KQogICAgICAgICB8fCAhVEVTVF9wdHIoZ3JvdXAyID0gRUNfR1JPVVBfbmV3X2Zyb21fZWNwYXJh bWV0ZXJzKGVjcGFyYW1ldGVycykpCiAgICAgICAgIHx8ICFURVNUX2ludF9lcShFQ19HUk9VUF9j bXAoZ3JvdXAsIGdyb3VwMiwgTlVMTCksIDApKQpAQCAtMTI1MSw3ICsxNDYyLDcgQEAgc3RhdGlj IGludCBjb2ZhY3Rvcl9yYW5nZV90ZXN0KHZvaWQpCiAgKi8KIHN0YXRpYyBpbnQgY2FyZGluYWxp dHlfdGVzdChpbnQgbikKIHsKLSAgICBpbnQgcmV0ID0gMDsKKyAgICBpbnQgcmV0ID0gMCwgaXNf YmluYXJ5ID0gMDsKICAgICBpbnQgbmlkID0gY3VydmVzW25dLm5pZDsKICAgICBCTl9DVFggKmN0 eCA9IE5VTEw7CiAgICAgRUNfR1JPVVAgKmcxID0gTlVMTCwgKmcyID0gTlVMTDsKQEAgLTEyNjIs MTQgKzE0NzMsMTMgQEAgc3RhdGljIGludCBjYXJkaW5hbGl0eV90ZXN0KGludCBuKQogICAgIFRF U1RfaW5mbygiQ3VydmUgJXMgY2FyZGluYWxpdHkgdGVzdCIsIE9CSl9uaWQyc24obmlkKSk7CiAK ICAgICBpZiAoIVRFU1RfcHRyKGN0eCA9IEJOX0NUWF9uZXcoKSkKLSAgICAgICAgfHwgIVRFU1Rf cHRyKGcxID0gRUNfR1JPVVBfbmV3X2J5X2N1cnZlX25hbWUobmlkKSkKLSAgICAgICAgfHwgIVRF U1RfcHRyKGcyID0gRUNfR1JPVVBfbmV3KEVDX0dST1VQX21ldGhvZF9vZihnMSkpKSkgewotICAg ICAgICBFQ19HUk9VUF9mcmVlKGcxKTsKLSAgICAgICAgRUNfR1JPVVBfZnJlZShnMik7CisgICAg ICAgIHx8ICFURVNUX3B0cihnMSA9IEVDX0dST1VQX25ld19ieV9jdXJ2ZV9uYW1lKG5pZCkpKSB7 CiAgICAgICAgIEJOX0NUWF9mcmVlKGN0eCk7CiAgICAgICAgIHJldHVybiAwOwogICAgIH0KIAor ICAgIGlzX2JpbmFyeSA9IChFQ19HUk9VUF9nZXRfZmllbGRfdHlwZShnMSkgPT0gTklEX1g5XzYy X2NoYXJhY3RlcmlzdGljX3R3b19maWVsZCk7CisKICAgICBCTl9DVFhfc3RhcnQoY3R4KTsKICAg ICBnMV9wID0gQk5fQ1RYX2dldChjdHgpOwogICAgIGcxX2EgPSBCTl9DVFhfZ2V0KGN0eCk7CkBA IC0xMjg3LDcgKzE0OTcsMTQgQEAgc3RhdGljIGludCBjYXJkaW5hbGl0eV90ZXN0KGludCBuKQog ICAgICAgICB8fCAhVEVTVF90cnVlKEJOX2NvcHkoZzFfb3JkZXIsIEVDX0dST1VQX2dldDBfb3Jk ZXIoZzEpKSkKICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19HUk9VUF9nZXRfY29mYWN0b3IoZzEs IGcxX2NmLCBjdHgpKQogICAgICAgICAvKiBjb25zdHJ1Y3QgZzIgbWFudWFsbHkgd2l0aCBnMSBw YXJhbWV0ZXJzICovCi0gICAgICAgIHx8ICFURVNUX3RydWUoRUNfR1JPVVBfc2V0X2N1cnZlKGcy LCBnMV9wLCBnMV9hLCBnMV9iLCBjdHgpKQorI2lmbmRlZiBPUEVOU1NMX05PX0VDMk0KKyAgICAg ICAgfHwgIVRFU1RfcHRyKGcyID0gKGlzX2JpbmFyeSkgPworICAgICAgICAgICAgICAgICAgICAg ICAgICAgRUNfR1JPVVBfbmV3X2N1cnZlX0dGMm0oZzFfcCwgZzFfYSwgZzFfYiwgY3R4KSA6Cisg ICAgICAgICAgICAgICAgICAgICAgICAgICBFQ19HUk9VUF9uZXdfY3VydmVfR0ZwKGcxX3AsIGcx X2EsIGcxX2IsIGN0eCkpCisjZWxzZQorICAgICAgICB8fCAhVEVTVF9pbnRfZXEoMCwgaXNfYmlu YXJ5KQorICAgICAgICB8fCAhVEVTVF9wdHIoZzIgPSBFQ19HUk9VUF9uZXdfY3VydmVfR0ZwKGcx X3AsIGcxX2EsIGcxX2IsIGN0eCkpCisjZW5kaWYKICAgICAgICAgfHwgIVRFU1RfcHRyKGcyX2dl biA9IEVDX1BPSU5UX25ldyhnMikpCiAgICAgICAgIHx8ICFURVNUX3RydWUoRUNfUE9JTlRfc2V0 X2FmZmluZV9jb29yZGluYXRlcyhnMiwgZzJfZ2VuLCBnMV94LCBnMV95LCBjdHgpKQogICAgICAg ICAvKiBwYXNzIE5VTEwgY29mYWN0b3I6IGxpYiBzaG91bGQgY29tcHV0ZSBpdCAqLwpAQCAtMTMy Niw2ICsxNTQzLDU5IEBAIHN0YXRpYyBpbnQgY2FyZGluYWxpdHlfdGVzdChpbnQgbikKICAgICBy ZXR1cm4gcmV0OwogfQogCitzdGF0aWMgaW50IGNoZWNrX2VjX2tleV9maWVsZF9wdWJsaWNfcmFu Z2VfdGVzdChpbnQgaWQpCit7CisgICAgaW50IHJldCA9IDAsIHR5cGUgPSAwOworICAgIGNvbnN0 IEVDX1BPSU5UICpwdWIgPSBOVUxMOworICAgIGNvbnN0IEVDX0dST1VQICpncm91cCA9IE5VTEw7 CisgICAgY29uc3QgQklHTlVNICpmaWVsZCA9IE5VTEw7CisgICAgQklHTlVNICp4ID0gTlVMTCwg KnkgPSBOVUxMOworICAgIEVDX0tFWSAqa2V5ID0gTlVMTDsKKworICAgIGlmICghVEVTVF9wdHIo eCA9IEJOX25ldygpKQorICAgICAgICAgICAgfHwgIVRFU1RfcHRyKHkgPSBCTl9uZXcoKSkKKyAg ICAgICAgICAgIHx8ICFURVNUX3B0cihrZXkgPSBFQ19LRVlfbmV3X2J5X2N1cnZlX25hbWUoY3Vy dmVzW2lkXS5uaWQpKQorICAgICAgICAgICAgfHwgIVRFU1RfcHRyKGdyb3VwID0gRUNfS0VZX2dl dDBfZ3JvdXAoa2V5KSkKKyAgICAgICAgICAgIHx8ICFURVNUX3B0cihmaWVsZCA9IEVDX0dST1VQ X2dldDBfZmllbGQoZ3JvdXApKQorICAgICAgICAgICAgfHwgIVRFU1RfaW50X2d0KEVDX0tFWV9n ZW5lcmF0ZV9rZXkoa2V5KSwgMCkKKyAgICAgICAgICAgIHx8ICFURVNUX2ludF9ndChFQ19LRVlf Y2hlY2tfa2V5KGtleSksIDApCisgICAgICAgICAgICB8fCAhVEVTVF9wdHIocHViID0gRUNfS0VZ X2dldDBfcHVibGljX2tleShrZXkpKQorICAgICAgICAgICAgfHwgIVRFU1RfaW50X2d0KEVDX1BP SU5UX2dldF9hZmZpbmVfY29vcmRpbmF0ZXMoZ3JvdXAsIHB1YiwgeCwgeSwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpLCAw KSkKKyAgICAgICAgZ290byBlcnI7CisKKyAgICAvKgorICAgICAqIE1ha2UgdGhlIHB1YmxpYyBw b2ludCBvdXQgb2YgcmFuZ2UgYnkgYWRkaW5nIHRoZSBmaWVsZCAod2hpY2ggd2lsbCBzdGlsbAor ICAgICAqIGJlIHRoZSBzYW1lIHBvaW50IG9uIHRoZSBjdXJ2ZSkuIFRoZSBhZGQgaXMgZGlmZmVy ZW50IGZvciBjaGFyMiBmaWVsZHMuCisgICAgICovCisgICAgdHlwZSA9IEVDX0dST1VQX2dldF9m aWVsZF90eXBlKGdyb3VwKTsKKyNpZm5kZWYgT1BFTlNTTF9OT19FQzJNCisgICAgaWYgKHR5cGUg PT0gTklEX1g5XzYyX2NoYXJhY3RlcmlzdGljX3R3b19maWVsZCkgeworICAgICAgICAvKiB0ZXN0 IGZvciBiaW5hcnkgY3VydmVzICovCisgICAgICAgIGlmICghVEVTVF90cnVlKEJOX0dGMm1fYWRk KHgsIHgsIGZpZWxkKSkpCisgICAgICAgICAgICBnb3RvIGVycjsKKyAgICB9IGVsc2UKKyNlbmRp ZgorICAgIGlmICh0eXBlID09IE5JRF9YOV82Ml9wcmltZV9maWVsZCkgeworICAgICAgICAvKiB0 ZXN0IGZvciBwcmltZSBjdXJ2ZXMgKi8KKyAgICAgICAgaWYgKCFURVNUX3RydWUoQk5fYWRkKHgs IHgsIGZpZWxkKSkpCisgICAgICAgICAgICBnb3RvIGVycjsKKyAgICB9IGVsc2UgeworICAgICAg ICAvKiB0aGlzIHNob3VsZCBuZXZlciBoYXBwZW4gKi8KKyAgICAgICAgVEVTVF9lcnJvcigiVW5z dXBwb3J0ZWQgRUNfTUVUSE9EIGZpZWxkX3R5cGUiKTsKKyAgICAgICAgZ290byBlcnI7CisgICAg fQorICAgIGlmICghVEVTVF9pbnRfbGUoRUNfS0VZX3NldF9wdWJsaWNfa2V5X2FmZmluZV9jb29y ZGluYXRlcyhrZXksIHgsIHkpLCAwKSkKKyAgICAgICAgZ290byBlcnI7CisKKyAgICByZXQgPSAx OworZXJyOgorICAgIEJOX2ZyZWUoeCk7CisgICAgQk5fZnJlZSh5KTsKKyAgICBFQ19LRVlfZnJl ZShrZXkpOworICAgIHJldHVybiByZXQ7Cit9CisKIC8qCiAgKiBIZWxwZXIgZm9yIGVjX3BvaW50 X2hleDJwb2ludF90ZXN0CiAgKgpAQCAtMTQyNSw2ICsxNjk1LDIyNiBAQCBzdGF0aWMgaW50IGVj X3BvaW50X2hleDJwb2ludF90ZXN0KGludCBpZCkKICAgICByZXR1cm4gcmV0OwogfQogCitzdGF0 aWMgaW50IGRvX3Rlc3RfY3VzdG9tX2V4cGxpY2l0X2Zyb21kYXRhKEVDX0dST1VQICpncm91cCwg Qk5fQ1RYICpjdHgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHVuc2lnbmVkIGNoYXIgKmdlbiwgaW50IGdlbl9zaXplKQoreworICAgIGludCByZXQgPSAwLCBp X291dDsKKyAgICBFVlBfUEtFWV9DVFggKnBjdHggPSBOVUxMOworICAgIEVWUF9QS0VZICpwa2V5 cGFyYW0gPSBOVUxMOworICAgIE9TU0xfUEFSQU1fQkxEICpibGQgPSBOVUxMOworICAgIGNvbnN0 IGNoYXIgKmZpZWxkX25hbWU7CisgICAgT1NTTF9QQVJBTSAqcGFyYW1zID0gTlVMTDsKKyAgICBj b25zdCBPU1NMX1BBUkFNICpnZXR0YWJsZTsKKyAgICBCSUdOVU0gKnAsICphLCAqYjsKKyAgICBC SUdOVU0gKnBfb3V0ID0gTlVMTCwgKmFfb3V0ID0gTlVMTCwgKmJfb3V0ID0gTlVMTDsKKyAgICBC SUdOVU0gKm9yZGVyX291dCA9IE5VTEwsICpjb2ZhY3Rvcl9vdXQgPSBOVUxMOworICAgIGNoYXIg bmFtZVs4MF07CisgICAgdW5zaWduZWQgY2hhciBidWZbMTAyNF07CisgICAgc2l6ZV90IGJ1Zl9s ZW4sIG5hbWVfbGVuOworI2lmbmRlZiBPUEVOU1NMX05PX0VDMk0KKyAgICB1bnNpZ25lZCBpbnQg azEgPSAwLCBrMiA9IDAsIGszID0gMDsKKyAgICBjb25zdCBjaGFyICpiYXNpc19uYW1lID0gTlVM TDsKKyNlbmRpZgorCisgICAgcCA9IEJOX0NUWF9nZXQoY3R4KTsKKyAgICBhID0gQk5fQ1RYX2dl dChjdHgpOworICAgIGIgPSBCTl9DVFhfZ2V0KGN0eCk7CisKKyAgICBpZiAoIVRFU1RfcHRyKGIp CisgICAgICAgIHx8ICFURVNUX3B0cihibGQgPSBPU1NMX1BBUkFNX0JMRF9uZXcoKSkpCisgICAg ICAgIGdvdG8gZXJyOworCisgICAgaWYgKEVDX0dST1VQX2dldF9maWVsZF90eXBlKGdyb3VwKSA9 PSBOSURfWDlfNjJfcHJpbWVfZmllbGQpIHsKKyAgICAgICAgZmllbGRfbmFtZSA9IFNOX1g5XzYy X3ByaW1lX2ZpZWxkOworICAgIH0gZWxzZSB7CisgICAgICAgIGZpZWxkX25hbWUgPSBTTl9YOV82 Ml9jaGFyYWN0ZXJpc3RpY190d29fZmllbGQ7CisjaWZuZGVmIE9QRU5TU0xfTk9fRUMyTQorICAg ICAgICBpZiAoRUNfR1JPVVBfZ2V0X2Jhc2lzX3R5cGUoZ3JvdXApID09IE5JRF9YOV82Ml90cEJh c2lzKSB7CisgICAgICAgICAgICBiYXNpc19uYW1lID0gU05fWDlfNjJfdHBCYXNpczsKKyAgICAg ICAgICAgIGlmICghVEVTVF90cnVlKEVDX0dST1VQX2dldF90cmlub21pYWxfYmFzaXMoZ3JvdXAs ICZrMSkpKQorICAgICAgICAgICAgICAgIGdvdG8gZXJyOworICAgICAgICB9IGVsc2UgeworICAg ICAgICAgICAgYmFzaXNfbmFtZSA9IFNOX1g5XzYyX3BwQmFzaXM7CisgICAgICAgICAgICBpZiAo IVRFU1RfdHJ1ZShFQ19HUk9VUF9nZXRfcGVudGFub21pYWxfYmFzaXMoZ3JvdXAsICZrMSwgJmsy LCAmazMpKSkKKyAgICAgICAgICAgICAgICBnb3RvIGVycjsKKyAgICAgICAgfQorI2VuZGlmIC8q IE9QRU5TU0xfTk9fRUMyTSAqLworICAgIH0KKyAgICBpZiAoIVRFU1RfdHJ1ZShFQ19HUk9VUF9n ZXRfY3VydmUoZ3JvdXAsIHAsIGEsIGIsIGN0eCkpCisgICAgICAgIHx8ICFURVNUX3RydWUoT1NT TF9QQVJBTV9CTERfcHVzaF91dGY4X3N0cmluZyhibGQsCisgICAgICAgICAgICAgICAgICAgICAg ICAgIE9TU0xfUEtFWV9QQVJBTV9FQ19GSUVMRF9UWVBFLCBmaWVsZF9uYW1lLCAwKSkKKyAgICAg ICAgfHwgIVRFU1RfdHJ1ZShPU1NMX1BBUkFNX0JMRF9wdXNoX0JOKGJsZCwgT1NTTF9QS0VZX1BB UkFNX0VDX1AsIHApKQorICAgICAgICB8fCAhVEVTVF90cnVlKE9TU0xfUEFSQU1fQkxEX3B1c2hf Qk4oYmxkLCBPU1NMX1BLRVlfUEFSQU1fRUNfQSwgYSkpCisgICAgICAgIHx8ICFURVNUX3RydWUo T1NTTF9QQVJBTV9CTERfcHVzaF9CTihibGQsIE9TU0xfUEtFWV9QQVJBTV9FQ19CLCBiKSkpCisg ICAgICAgIGdvdG8gZXJyOworCisgICAgaWYgKEVDX0dST1VQX2dldDBfc2VlZChncm91cCkgIT0g TlVMTCkgeworICAgICAgICBpZiAoIVRFU1RfdHJ1ZShPU1NMX1BBUkFNX0JMRF9wdXNoX29jdGV0 X3N0cmluZyhibGQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBPU1NMX1BLRVlfUEFSQU1f RUNfU0VFRCwgRUNfR1JPVVBfZ2V0MF9zZWVkKGdyb3VwKSwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgIEVDX0dST1VQX2dldF9zZWVkX2xlbihncm91cCkpKSkKKyAgICAgICAgICAgIGdvdG8g ZXJyOworICAgIH0KKyAgICBpZiAoRUNfR1JPVVBfZ2V0MF9jb2ZhY3Rvcihncm91cCkgIT0gTlVM TCkgeworICAgICAgICBpZiAoIVRFU1RfdHJ1ZShPU1NMX1BBUkFNX0JMRF9wdXNoX0JOKGJsZCwg T1NTTF9QS0VZX1BBUkFNX0VDX0NPRkFDVE9SLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEVDX0dST1VQX2dldDBfY29mYWN0b3IoZ3JvdXApKSkpCisgICAg ICAgICAgICBnb3RvIGVycjsKKyAgICB9CisKKyAgICBpZiAoIVRFU1RfdHJ1ZShPU1NMX1BBUkFN X0JMRF9wdXNoX29jdGV0X3N0cmluZyhibGQsCisgICAgICAgICAgICAgICAgICAgICAgIE9TU0xf UEtFWV9QQVJBTV9FQ19HRU5FUkFUT1IsIGdlbiwgZ2VuX3NpemUpKQorICAgICAgICB8fCAhVEVT VF90cnVlKE9TU0xfUEFSQU1fQkxEX3B1c2hfQk4oYmxkLCBPU1NMX1BLRVlfUEFSQU1fRUNfT1JE RVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFQ19HUk9V UF9nZXQwX29yZGVyKGdyb3VwKSkpKQorICAgICAgICBnb3RvIGVycjsKKworICAgIGlmICghVEVT VF9wdHIocGFyYW1zID0gT1NTTF9QQVJBTV9CTERfdG9fcGFyYW0oYmxkKSkKKyAgICAgICAgfHwg IVRFU1RfcHRyKHBjdHggPSBFVlBfUEtFWV9DVFhfbmV3X2Zyb21fbmFtZShOVUxMLCAiRUMiLCBO VUxMKSkKKyAgICAgICAgfHwgIVRFU1RfaW50X2d0KEVWUF9QS0VZX2Zyb21kYXRhX2luaXQocGN0 eCksIDApCisgICAgICAgIHx8ICFURVNUX2ludF9ndChFVlBfUEtFWV9mcm9tZGF0YShwY3R4LCAm cGtleXBhcmFtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVZQ X1BLRVlfS0VZX1BBUkFNRVRFUlMsIHBhcmFtcyksIDApKQorICAgICAgICBnb3RvIGVycjsKKwor ICAgIC8qLSBDaGVjayB0aGF0IGFsbCB0aGUgc2V0IHZhbHVlcyBhcmUgcmV0cmlldmFibGUgLSov CisKKyAgICAvKiBUaGVyZSBzaG91bGQgYmUgbm8gbWF0Y2ggdG8gYSBncm91cCBuYW1lIHNpbmNl IHRoZSBnZW5lcmF0b3IgY2hhbmdlZCAqLworICAgIGlmICghVEVTVF9mYWxzZShFVlBfUEtFWV9n ZXRfdXRmOF9zdHJpbmdfcGFyYW0ocGtleXBhcmFtLAorICAgICAgICAgICAgICAgICAgICAgICAg T1NTTF9QS0VZX1BBUkFNX0dST1VQX05BTUUsIG5hbWUsIHNpemVvZihuYW1lKSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICZuYW1lX2xlbikpKQorICAgICAgICBnb3RvIGVycjsKKworICAgIC8q IFRoZSBlbmNvZGluZyBzaG91bGQgYmUgZXhwbGljaXQgYXMgaXQgaGFzIG5vIGdyb3VwICovCisg ICAgaWYgKCFURVNUX3RydWUoRVZQX1BLRVlfZ2V0X3V0Zjhfc3RyaW5nX3BhcmFtKHBrZXlwYXJh bSwKKyAgICAgICAgICAgICAgICAgICAgICAgT1NTTF9QS0VZX1BBUkFNX0VDX0VOQ09ESU5HLAor ICAgICAgICAgICAgICAgICAgICAgICBuYW1lLCBzaXplb2YobmFtZSksICZuYW1lX2xlbikpCisg ICAgICAgIHx8ICFURVNUX3N0cl9lcShuYW1lLCBPU1NMX1BLRVlfRUNfRU5DT0RJTkdfRVhQTElD SVQpKQorICAgICAgICBnb3RvIGVycjsKKworICAgIGlmICghVEVTVF90cnVlKEVWUF9QS0VZX2dl dF91dGY4X3N0cmluZ19wYXJhbShwa2V5cGFyYW0sCisgICAgICAgICAgICAgICAgICAgICAgIE9T U0xfUEtFWV9QQVJBTV9FQ19GSUVMRF9UWVBFLCBuYW1lLCBzaXplb2YobmFtZSksCisgICAgICAg ICAgICAgICAgICAgICAgICZuYW1lX2xlbikpCisgICAgICAgIHx8ICFURVNUX3N0cl9lcShuYW1l LCBmaWVsZF9uYW1lKSkKKyAgICAgICAgZ290byBlcnI7CisKKyAgICBpZiAoIVRFU1RfdHJ1ZShF VlBfUEtFWV9nZXRfb2N0ZXRfc3RyaW5nX3BhcmFtKHBrZXlwYXJhbSwKKyAgICAgICAgICAgICAg ICAgICAgICAgT1NTTF9QS0VZX1BBUkFNX0VDX0dFTkVSQVRPUiwgYnVmLCBzaXplb2YoYnVmKSwg JmJ1Zl9sZW4pKQorICAgICAgICB8fCAhVEVTVF9tZW1fZXEoYnVmLCAoaW50KWJ1Zl9sZW4sIGdl biwgZ2VuX3NpemUpKQorICAgICAgICBnb3RvIGVycjsKKworICAgIGlmICghVEVTVF90cnVlKEVW UF9QS0VZX2dldF9ibl9wYXJhbShwa2V5cGFyYW0sIE9TU0xfUEtFWV9QQVJBTV9FQ19QLCAmcF9v dXQpKQorICAgICAgICB8fCAhVEVTVF9CTl9lcShwX291dCwgcCkKKyAgICAgICAgfHwgIVRFU1Rf dHJ1ZShFVlBfUEtFWV9nZXRfYm5fcGFyYW0ocGtleXBhcmFtLCBPU1NMX1BLRVlfUEFSQU1fRUNf QSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmFfb3V0KSkK KyAgICAgICAgfHwgIVRFU1RfQk5fZXEoYV9vdXQsIGEpCisgICAgICAgIHx8ICFURVNUX3RydWUo RVZQX1BLRVlfZ2V0X2JuX3BhcmFtKHBrZXlwYXJhbSwgT1NTTF9QS0VZX1BBUkFNX0VDX0IsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZiX291dCkpCisgICAg ICAgIHx8ICFURVNUX0JOX2VxKGJfb3V0LCBiKQorICAgICAgICB8fCAhVEVTVF90cnVlKEVWUF9Q S0VZX2dldF9ibl9wYXJhbShwa2V5cGFyYW0sIE9TU0xfUEtFWV9QQVJBTV9FQ19PUkRFUiwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJm9yZGVyX291dCkpCisg ICAgICAgIHx8ICFURVNUX0JOX2VxKG9yZGVyX291dCwgRUNfR1JPVVBfZ2V0MF9vcmRlcihncm91 cCkpKQorICAgICAgICBnb3RvIGVycjsKKworICAgIGlmIChFQ19HUk9VUF9nZXQwX2NvZmFjdG9y KGdyb3VwKSAhPSBOVUxMKSB7CisgICAgICAgIGlmICghVEVTVF90cnVlKEVWUF9QS0VZX2dldF9i bl9wYXJhbShwa2V5cGFyYW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICBPU1NMX1BLRVlf UEFSQU1fRUNfQ09GQUNUT1IsICZjb2ZhY3Rvcl9vdXQpKQorICAgICAgICAgICAgfHwgIVRFU1Rf Qk5fZXEoY29mYWN0b3Jfb3V0LCBFQ19HUk9VUF9nZXQwX2NvZmFjdG9yKGdyb3VwKSkpCisgICAg ICAgICAgICBnb3RvIGVycjsKKyAgICB9CisgICAgaWYgKEVDX0dST1VQX2dldDBfc2VlZChncm91 cCkgIT0gTlVMTCkgeworICAgICAgICBpZiAoIVRFU1RfdHJ1ZShFVlBfUEtFWV9nZXRfb2N0ZXRf c3RyaW5nX3BhcmFtKHBrZXlwYXJhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIE9TU0xf UEtFWV9QQVJBTV9FQ19TRUVELCBidWYsIHNpemVvZihidWYpLCAmYnVmX2xlbikpCisgICAgICAg ICAgICB8fCAhVEVTVF9tZW1fZXEoYnVmLCBidWZfbGVuLCBFQ19HUk9VUF9nZXQwX3NlZWQoZ3Jv dXApLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVDX0dST1VQX2dldF9zZWVkX2xlbihn cm91cCkpKQorICAgICAgICAgICAgZ290byBlcnI7CisgICAgfQorCisgICAgaWYgKEVDX0dST1VQ X2dldF9maWVsZF90eXBlKGdyb3VwKSA9PSBOSURfWDlfNjJfcHJpbWVfZmllbGQpIHsKKyAgICAg ICAgLyogTm8gZXh0cmEgZmllbGRzIHNob3VsZCBiZSBzZXQgZm9yIGEgcHJpbWUgZmllbGQgKi8K KyAgICAgICAgaWYgKCFURVNUX2ZhbHNlKEVWUF9QS0VZX2dldF9pbnRfcGFyYW0ocGtleXBhcmFt LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9TU0xfUEtFWV9QQVJBTV9FQ19DSEFSMl9N LCAmaV9vdXQpKQorICAgICAgICAgICAgfHwgIVRFU1RfZmFsc2UoRVZQX1BLRVlfZ2V0X2ludF9w YXJhbShwa2V5cGFyYW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT1NTTF9QS0VZ X1BBUkFNX0VDX0NIQVIyX1RQX0JBU0lTLCAmaV9vdXQpKQorICAgICAgICAgICAgfHwgIVRFU1Rf ZmFsc2UoRVZQX1BLRVlfZ2V0X2ludF9wYXJhbShwa2V5cGFyYW0sCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgT1NTTF9QS0VZX1BBUkFNX0VDX0NIQVIyX1BQX0sxLCAmaV9vdXQpKQor ICAgICAgICAgICAgfHwgIVRFU1RfZmFsc2UoRVZQX1BLRVlfZ2V0X2ludF9wYXJhbShwa2V5cGFy YW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT1NTTF9QS0VZX1BBUkFNX0VDX0NI QVIyX1BQX0syLCAmaV9vdXQpKQorICAgICAgICAgICAgfHwgIVRFU1RfZmFsc2UoRVZQX1BLRVlf Z2V0X2ludF9wYXJhbShwa2V5cGFyYW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg T1NTTF9QS0VZX1BBUkFNX0VDX0NIQVIyX1BQX0szLCAmaV9vdXQpKQorICAgICAgICAgICAgfHwg IVRFU1RfZmFsc2UoRVZQX1BLRVlfZ2V0X3V0Zjhfc3RyaW5nX3BhcmFtKHBrZXlwYXJhbSwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPU1NMX1BLRVlfUEFSQU1fRUNfQ0hBUjJfVFlQ RSwgbmFtZSwgc2l6ZW9mKG5hbWUpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZu YW1lX2xlbikpKQorICAgICAgICAgICAgZ290byBlcnI7CisgICAgfSBlbHNlIHsKKyNpZm5kZWYg T1BFTlNTTF9OT19FQzJNCisgICAgICAgIGlmICghVEVTVF90cnVlKEVWUF9QS0VZX2dldF9pbnRf cGFyYW0ocGtleXBhcmFtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgT1NTTF9QS0VZX1BB UkFNX0VDX0NIQVIyX00sICZpX291dCkpCisgICAgICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRUNf R1JPVVBfZ2V0X2RlZ3JlZShncm91cCksIGlfb3V0KQorICAgICAgICAgICAgfHwgIVRFU1RfdHJ1 ZShFVlBfUEtFWV9nZXRfdXRmOF9zdHJpbmdfcGFyYW0ocGtleXBhcmFtLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgT1NTTF9QS0VZX1BBUkFNX0VDX0NIQVIyX1RZUEUsIG5hbWUsIHNp emVvZihuYW1lKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZuYW1lX2xlbikpCisg ICAgICAgICAgICB8fCAhVEVTVF9zdHJfZXEobmFtZSwgYmFzaXNfbmFtZSkpCisgICAgICAgICAg ICBnb3RvIGVycjsKKworICAgICAgICBpZiAoRUNfR1JPVVBfZ2V0X2Jhc2lzX3R5cGUoZ3JvdXAp ID09IE5JRF9YOV82Ml90cEJhc2lzKSB7CisgICAgICAgICAgICBpZiAoIVRFU1RfdHJ1ZShFVlBf UEtFWV9nZXRfaW50X3BhcmFtKHBrZXlwYXJhbSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBPU1NMX1BLRVlfUEFSQU1fRUNfQ0hBUjJfVFBfQkFTSVMsICZpX291dCkpCisgICAgICAg ICAgICAgICAgfHwgIVRFU1RfaW50X2VxKGsxLCBpX291dCkKKyAgICAgICAgICAgICAgICB8fCAh VEVTVF9mYWxzZShFVlBfUEtFWV9nZXRfaW50X3BhcmFtKHBrZXlwYXJhbSwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgT1NTTF9QS0VZX1BBUkFNX0VDX0NIQVIyX1BQX0sxLCAm aV9vdXQpKQorICAgICAgICAgICAgICAgIHx8ICFURVNUX2ZhbHNlKEVWUF9QS0VZX2dldF9pbnRf cGFyYW0ocGtleXBhcmFtLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPU1NM X1BLRVlfUEFSQU1fRUNfQ0hBUjJfUFBfSzIsICZpX291dCkpCisgICAgICAgICAgICAgICAgfHwg IVRFU1RfZmFsc2UoRVZQX1BLRVlfZ2V0X2ludF9wYXJhbShwa2V5cGFyYW0sCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIE9TU0xfUEtFWV9QQVJBTV9FQ19DSEFSMl9QUF9LMywg Jmlfb3V0KSkpCisgICAgICAgICAgICAgICAgZ290byBlcnI7CisgICAgICAgIH0gZWxzZSB7Cisg ICAgICAgICAgICBpZiAoIVRFU1RfZmFsc2UoRVZQX1BLRVlfZ2V0X2ludF9wYXJhbShwa2V5cGFy YW0sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9TU0xfUEtFWV9QQVJBTV9FQ19D SEFSMl9UUF9CQVNJUywgJmlfb3V0KSkKKyAgICAgICAgICAgICAgICB8fCAhVEVTVF90cnVlKEVW UF9QS0VZX2dldF9pbnRfcGFyYW0ocGtleXBhcmFtLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE9TU0xfUEtFWV9QQVJBTV9FQ19DSEFSMl9QUF9LMSwgJmlfb3V0KSkKKyAgICAg ICAgICAgICAgICB8fCAhVEVTVF9pbnRfZXEoazEsIGlfb3V0KQorICAgICAgICAgICAgICAgIHx8 ICFURVNUX3RydWUoRVZQX1BLRVlfZ2V0X2ludF9wYXJhbShwa2V5cGFyYW0sCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgT1NTTF9QS0VZX1BBUkFNX0VDX0NIQVIyX1BQX0syLCAm aV9vdXQpKQorICAgICAgICAgICAgICAgIHx8ICFURVNUX2ludF9lcShrMiwgaV9vdXQpCisgICAg ICAgICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFVlBfUEtFWV9nZXRfaW50X3BhcmFtKHBrZXlwYXJh bSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPU1NMX1BLRVlfUEFSQU1fRUNf Q0hBUjJfUFBfSzMsICZpX291dCkpCisgICAgICAgICAgICAgICAgfHwgIVRFU1RfaW50X2VxKGsz LCBpX291dCkpCisgICAgICAgICAgICAgICAgZ290byBlcnI7CisgICAgICAgIH0KKyNlbmRpZiAv KiBPUEVOU1NMX05PX0VDMk0gKi8KKyAgICB9CisgICAgaWYgKCFURVNUX3B0cihnZXR0YWJsZSA9 IEVWUF9QS0VZX2dldHRhYmxlX3BhcmFtcyhwa2V5cGFyYW0pKQorICAgICAgICB8fCAhVEVTVF9w dHIoT1NTTF9QQVJBTV9sb2NhdGVfY29uc3QoZ2V0dGFibGUsIE9TU0xfUEtFWV9QQVJBTV9HUk9V UF9OQU1FKSkKKyAgICAgICAgfHwgIVRFU1RfcHRyKE9TU0xfUEFSQU1fbG9jYXRlX2NvbnN0KGdl dHRhYmxlLCBPU1NMX1BLRVlfUEFSQU1fRUNfRU5DT0RJTkcpKQorICAgICAgICB8fCAhVEVTVF9w dHIoT1NTTF9QQVJBTV9sb2NhdGVfY29uc3QoZ2V0dGFibGUsIE9TU0xfUEtFWV9QQVJBTV9FQ19G SUVMRF9UWVBFKSkKKyAgICAgICAgfHwgIVRFU1RfcHRyKE9TU0xfUEFSQU1fbG9jYXRlX2NvbnN0 KGdldHRhYmxlLCBPU1NMX1BLRVlfUEFSQU1fRUNfUCkpCisgICAgICAgIHx8ICFURVNUX3B0cihP U1NMX1BBUkFNX2xvY2F0ZV9jb25zdChnZXR0YWJsZSwgT1NTTF9QS0VZX1BBUkFNX0VDX0EpKQor ICAgICAgICB8fCAhVEVTVF9wdHIoT1NTTF9QQVJBTV9sb2NhdGVfY29uc3QoZ2V0dGFibGUsIE9T U0xfUEtFWV9QQVJBTV9FQ19CKSkKKyAgICAgICAgfHwgIVRFU1RfcHRyKE9TU0xfUEFSQU1fbG9j YXRlX2NvbnN0KGdldHRhYmxlLCBPU1NMX1BLRVlfUEFSQU1fRUNfR0VORVJBVE9SKSkKKyAgICAg ICAgfHwgIVRFU1RfcHRyKE9TU0xfUEFSQU1fbG9jYXRlX2NvbnN0KGdldHRhYmxlLCBPU1NMX1BL RVlfUEFSQU1fRUNfT1JERVIpKQorICAgICAgICB8fCAhVEVTVF9wdHIoT1NTTF9QQVJBTV9sb2Nh dGVfY29uc3QoZ2V0dGFibGUsIE9TU0xfUEtFWV9QQVJBTV9FQ19DT0ZBQ1RPUikpCisgICAgICAg IHx8ICFURVNUX3B0cihPU1NMX1BBUkFNX2xvY2F0ZV9jb25zdChnZXR0YWJsZSwgT1NTTF9QS0VZ X1BBUkFNX0VDX1NFRUQpKQorI2lmbmRlZiBPUEVOU1NMX05PX0VDMk0KKyAgICAgICAgfHwgIVRF U1RfcHRyKE9TU0xfUEFSQU1fbG9jYXRlX2NvbnN0KGdldHRhYmxlLCBPU1NMX1BLRVlfUEFSQU1f RUNfQ0hBUjJfTSkpCisgICAgICAgIHx8ICFURVNUX3B0cihPU1NMX1BBUkFNX2xvY2F0ZV9jb25z dChnZXR0YWJsZSwgT1NTTF9QS0VZX1BBUkFNX0VDX0NIQVIyX1RZUEUpKQorICAgICAgICB8fCAh VEVTVF9wdHIoT1NTTF9QQVJBTV9sb2NhdGVfY29uc3QoZ2V0dGFibGUsIE9TU0xfUEtFWV9QQVJB TV9FQ19DSEFSMl9UUF9CQVNJUykpCisgICAgICAgIHx8ICFURVNUX3B0cihPU1NMX1BBUkFNX2xv Y2F0ZV9jb25zdChnZXR0YWJsZSwgT1NTTF9QS0VZX1BBUkFNX0VDX0NIQVIyX1BQX0sxKSkKKyAg ICAgICAgfHwgIVRFU1RfcHRyKE9TU0xfUEFSQU1fbG9jYXRlX2NvbnN0KGdldHRhYmxlLCBPU1NM X1BLRVlfUEFSQU1fRUNfQ0hBUjJfUFBfSzIpKQorICAgICAgICB8fCAhVEVTVF9wdHIoT1NTTF9Q QVJBTV9sb2NhdGVfY29uc3QoZ2V0dGFibGUsIE9TU0xfUEtFWV9QQVJBTV9FQ19DSEFSMl9QUF9L MykpCisjZW5kaWYKKyAgICAgICAgKQorICAgICAgICBnb3RvIGVycjsKKyAgICByZXQgPSAxOwor ZXJyOgorICAgIEJOX2ZyZWUob3JkZXJfb3V0KTsKKyAgICBCTl9mcmVlKGNvZmFjdG9yX291dCk7 CisgICAgQk5fZnJlZShhX291dCk7CisgICAgQk5fZnJlZShiX291dCk7CisgICAgQk5fZnJlZShw X291dCk7CisgICAgT1NTTF9QQVJBTV9mcmVlKHBhcmFtcyk7CisgICAgT1NTTF9QQVJBTV9CTERf ZnJlZShibGQpOworICAgIEVWUF9QS0VZX2ZyZWUocGtleXBhcmFtKTsKKyAgICBFVlBfUEtFWV9D VFhfZnJlZShwY3R4KTsKKyAgICByZXR1cm4gcmV0OworfQorCiAvKgogICogY2hlY2sgdGhlIEVD X01FVEhPRCByZXNwZWN0cyB0aGUgc3VwcGxpZWQgRUNfR1JPVVBfc2V0X2dlbmVyYXRvciBHCiAg Ki8KQEAgLTE0NTAsNyArMTk0MCw3IEBAIHN0YXRpYyBpbnQgY3VzdG9tX2dlbmVyYXRvcl90ZXN0 KGludCBpZCkKIAogICAgIC8qIGV4cGVjdGVkIGJ5dGUgbGVuZ3RoIG9mIGVuY29kZWQgcG9pbnRz ICovCiAgICAgYnNpemUgPSAoRUNfR1JPVVBfZ2V0X2RlZ3JlZShncm91cCkgKyA3KSAvIDg7Ci0g ICAgYnNpemUgPSAyICogYnNpemUgKyAxOworICAgIGJzaXplID0gMSArIDIgKiBic2l6ZTsgLyog VU5DT01QUkVTU0VEX1BPSU5UIGZvcm1hdCAqLwogCiAgICAgaWYgKCFURVNUX3B0cihrID0gQk5f Q1RYX2dldChjdHgpKQogICAgICAgICAvKiBmZXRjaCBhIHRlc3Rpbmcgc2NhbGFyIGsgIT0gMCwx ICovCkBAIC0xNDg4LDE3ICsxOTc4LDIwIEBAIHN0YXRpYyBpbnQgY3VzdG9tX2dlbmVyYXRvcl90 ZXN0KGludCBpZCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQ T0lOVF9DT05WRVJTSU9OX1VOQ09NUFJFU1NFRCwgYjIsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgYnNpemUsIGN0eCksIGJzaXplKQogICAgICAgICAvKiBRMSA9 IGtHID0gay8yIEcyID0gUTIgc2hvdWxkIGhvbGQgKi8KLSAgICAgICAgfHwgIVRFU1RfaW50X2Vx KENSWVBUT19tZW1jbXAoYjEsIGIyLCBic2l6ZSksIDApKQorICAgICAgICB8fCAhVEVTVF9tZW1f ZXEoYjEsIGJzaXplLCBiMiwgYnNpemUpKQorICAgICAgICBnb3RvIGVycjsKKworICAgIGlmICgh ZG9fdGVzdF9jdXN0b21fZXhwbGljaXRfZnJvbWRhdGEoZ3JvdXAsIGN0eCwgYjEsIGJzaXplKSkK ICAgICAgICAgZ290byBlcnI7CiAKICAgICByZXQgPSAxOwogCiAgZXJyOgotICAgIEJOX0NUWF9l bmQoY3R4KTsKICAgICBFQ19QT0lOVF9mcmVlKFExKTsKICAgICBFQ19QT0lOVF9mcmVlKFEyKTsK ICAgICBFQ19QT0lOVF9mcmVlKEcyKTsKICAgICBFQ19HUk9VUF9mcmVlKGdyb3VwKTsKKyAgICBC Tl9DVFhfZW5kKGN0eCk7CiAgICAgQk5fQ1RYX2ZyZWUoY3R4KTsKICAgICBPUEVOU1NMX2ZyZWUo YjEpOwogICAgIE9QRU5TU0xfZnJlZShiMik7CkBAIC0xNTA2LDExICsxOTk5LDI4NSBAQCBzdGF0 aWMgaW50IGN1c3RvbV9nZW5lcmF0b3JfdGVzdChpbnQgaWQpCiAgICAgcmV0dXJuIHJldDsKIH0K IAotI2VuZGlmIC8qIE9QRU5TU0xfTk9fRUMgKi8KKy8qCisgKiBjaGVjayBjcmVhdGlvbiBvZiBj dXJ2ZXMgZnJvbSBleHBsaWNpdCBwYXJhbXMgdGhyb3VnaCB0aGUgcHVibGljIEFQSQorICovCitz dGF0aWMgaW50IGN1c3RvbV9wYXJhbXNfdGVzdChpbnQgaWQpCit7CisgICAgaW50IHJldCA9IDAs IG5pZCwgYnNpemU7CisgICAgY29uc3QgY2hhciAqY3VydmVfbmFtZSA9IE5VTEw7CisgICAgRUNf R1JPVVAgKmdyb3VwID0gTlVMTCwgKmFsdGdyb3VwID0gTlVMTDsKKyAgICBFQ19QT0lOVCAqRzIg PSBOVUxMLCAqUTEgPSBOVUxMLCAqUTIgPSBOVUxMOworICAgIGNvbnN0IEVDX1BPSU5UICpRID0g TlVMTDsKKyAgICBCTl9DVFggKmN0eCA9IE5VTEw7CisgICAgQklHTlVNICprID0gTlVMTDsKKyAg ICB1bnNpZ25lZCBjaGFyICpidWYxID0gTlVMTCwgKmJ1ZjIgPSBOVUxMOworICAgIGNvbnN0IEJJ R05VTSAqeiA9IE5VTEwsICpjb2YgPSBOVUxMLCAqcHJpdjEgPSBOVUxMOworICAgIEJJR05VTSAq cCA9IE5VTEwsICphID0gTlVMTCwgKmIgPSBOVUxMOworICAgIGludCBpc19wcmltZSA9IDA7Cisg ICAgRUNfS0VZICplY2tleTEgPSBOVUxMLCAqZWNrZXkyID0gTlVMTDsKKyAgICBFVlBfUEtFWSAq cGtleTEgPSBOVUxMLCAqcGtleTIgPSBOVUxMOworICAgIEVWUF9QS0VZX0NUWCAqcGN0eDEgPSBO VUxMLCAqcGN0eDIgPSBOVUxMOworICAgIHNpemVfdCBzc2xlbiwgdDsKKyAgICB1bnNpZ25lZCBj aGFyICpwdWIxID0gTlVMTCAsICpwdWIyID0gTlVMTDsKKyAgICBPU1NMX1BBUkFNX0JMRCAqcGFy YW1fYmxkID0gTlVMTDsKKyAgICBPU1NMX1BBUkFNICpwYXJhbXMxID0gTlVMTCwgKnBhcmFtczIg PSBOVUxMOworCisgICAgLyogRG8gc29tZSBzZXR1cCAqLworICAgIG5pZCA9IGN1cnZlc1tpZF0u bmlkOworICAgIGN1cnZlX25hbWUgPSBPQkpfbmlkMnNuKG5pZCk7CisgICAgVEVTVF9ub3RlKCJD dXJ2ZSAlcyIsIGN1cnZlX25hbWUpOworCisgICAgaWYgKG5pZCA9PSBOSURfc20yKQorICAgICAg ICByZXR1cm4gVEVTVF9za2lwKCJjdXN0b20gcGFyYW1zIG5vdCBzdXBwb3J0ZWQgd2l0aCBTTTIi KTsKKworICAgIGlmICghVEVTVF9wdHIoY3R4ID0gQk5fQ1RYX25ldygpKSkKKyAgICAgICAgcmV0 dXJuIDA7CisKKyAgICBpZiAoIVRFU1RfcHRyKGdyb3VwID0gRUNfR1JPVVBfbmV3X2J5X2N1cnZl X25hbWUobmlkKSkpCisgICAgICAgIGdvdG8gZXJyOworCisgICAgaXNfcHJpbWUgPSBFQ19HUk9V UF9nZXRfZmllbGRfdHlwZShncm91cCkgPT0gTklEX1g5XzYyX3ByaW1lX2ZpZWxkOworI2lmZGVm IE9QRU5TU0xfTk9fRUMyTQorICAgIGlmICghaXNfcHJpbWUpIHsKKyAgICAgICAgcmV0ID0gVEVT VF9za2lwKCJiaW5hcnkgY3VydmVzIG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBidWlsZCIpOworICAg ICAgICBnb3RvIGVycjsKKyAgICB9CisjZW5kaWYKKworICAgIEJOX0NUWF9zdGFydChjdHgpOwor ICAgIGlmICghVEVTVF9wdHIocCA9IEJOX0NUWF9nZXQoY3R4KSkKKyAgICAgICAgICAgIHx8ICFU RVNUX3B0cihhID0gQk5fQ1RYX2dldChjdHgpKQorICAgICAgICAgICAgfHwgIVRFU1RfcHRyKGIg PSBCTl9DVFhfZ2V0KGN0eCkpCisgICAgICAgICAgICB8fCAhVEVTVF9wdHIoayA9IEJOX0NUWF9n ZXQoY3R4KSkpCisgICAgICAgIGdvdG8gZXJyOworCisgICAgLyogZXhwZWN0ZWQgYnl0ZSBsZW5n dGggb2YgZW5jb2RlZCBwb2ludHMgKi8KKyAgICBic2l6ZSA9IChFQ19HUk9VUF9nZXRfZGVncmVl KGdyb3VwKSArIDcpIC8gODsKKyAgICBic2l6ZSA9IDEgKyAyICogYnNpemU7IC8qIFVOQ09NUFJF U1NFRF9QT0lOVCBmb3JtYXQgKi8KKworICAgIC8qIGV4dHJhY3QgcGFyYW1ldGVycyBmcm9tIGJ1 aWx0LWluIGN1cnZlICovCisgICAgaWYgKCFURVNUX3RydWUoRUNfR1JPVVBfZ2V0X2N1cnZlKGdy b3VwLCBwLCBhLCBiLCBjdHgpKQorICAgICAgICAgICAgfHwgIVRFU1RfcHRyKEcyID0gRUNfUE9J TlRfbmV3KGdyb3VwKSkKKyAgICAgICAgICAgIC8qIG5ldyBnZW5lcmF0b3IgaXMgRzIgOj0gMkcg Ki8KKyAgICAgICAgICAgIHx8ICFURVNUX3RydWUoRUNfUE9JTlRfZGJsKGdyb3VwLCBHMiwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVDX0dST1VQX2dldDBfZ2VuZXJh dG9yKGdyb3VwKSwgY3R4KSkKKyAgICAgICAgICAgIC8qIHB1bGwgb3V0IHRoZSBieXRlcyBvZiB0 aGF0ICovCisgICAgICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRUNfUE9JTlRfcG9pbnQyb2N0KGdy b3VwLCBHMiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg UE9JTlRfQ09OVkVSU0lPTl9VTkNPTVBSRVNTRUQsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIDAsIGN0eCksIGJzaXplKQorICAgICAgICAgICAg fHwgIVRFU1RfcHRyKGJ1ZjEgPSBPUEVOU1NMX21hbGxvYyhic2l6ZSkpCisgICAgICAgICAgICB8 fCAhVEVTVF9pbnRfZXEoRUNfUE9JTlRfcG9pbnQyb2N0KGdyb3VwLCBHMiwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUE9JTlRfQ09OVkVSU0lPTl9VTkNP TVBSRVNTRUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGJ1ZjEsIGJzaXplLCBjdHgpLCBic2l6ZSkKKyAgICAgICAgICAgIHx8ICFURVNUX3B0cih6ID0g RUNfR1JPVVBfZ2V0MF9vcmRlcihncm91cCkpCisgICAgICAgICAgICB8fCAhVEVTVF9wdHIoY29m ID0gRUNfR1JPVVBfZ2V0MF9jb2ZhY3Rvcihncm91cCkpCisgICAgICAgICkKKyAgICAgICAgZ290 byBlcnI7CisKKyAgICAvKiBjcmVhdGUgYSBuZXcgZ3JvdXAgdXNpbmcgc2FtZSBwYXJhbXMgKGJ1 dCBkaWZmZXJlbnQgZ2VuZXJhdG9yKSAqLworICAgIGlmIChpc19wcmltZSkgeworICAgICAgICBp ZiAoIVRFU1RfcHRyKGFsdGdyb3VwID0gRUNfR1JPVVBfbmV3X2N1cnZlX0dGcChwLCBhLCBiLCBj dHgpKSkKKyAgICAgICAgICAgIGdvdG8gZXJyOworICAgIH0KKyNpZm5kZWYgT1BFTlNTTF9OT19F QzJNCisgICAgZWxzZSB7CisgICAgICAgIGlmICghVEVTVF9wdHIoYWx0Z3JvdXAgPSBFQ19HUk9V UF9uZXdfY3VydmVfR0YybShwLCBhLCBiLCBjdHgpKSkKKyAgICAgICAgICAgIGdvdG8gZXJyOwor ICAgIH0KKyNlbmRpZgorCisgICAgLyogc2V0IDIqRyBhcyB0aGUgZ2VuZXJhdG9yIG9mIGFsdGdy b3VwICovCisgICAgRUNfUE9JTlRfZnJlZShHMik7IC8qIGRpc2NhcmQgRzIgYXMgaXQgcmVmZXJz IHRvIHRoZSBvcmlnaW5hbCBncm91cCAqLworICAgIGlmICghVEVTVF9wdHIoRzIgPSBFQ19QT0lO VF9uZXcoYWx0Z3JvdXApKQorICAgICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19QT0lOVF9vY3Qy cG9pbnQoYWx0Z3JvdXAsIEcyLCBidWYxLCBic2l6ZSwgY3R4KSkKKyAgICAgICAgICAgIHx8ICFU RVNUX2ludF9lcShFQ19QT0lOVF9pc19vbl9jdXJ2ZShhbHRncm91cCwgRzIsIGN0eCksIDEpCisg ICAgICAgICAgICB8fCAhVEVTVF90cnVlKEVDX0dST1VQX3NldF9nZW5lcmF0b3IoYWx0Z3JvdXAs IEcyLCB6LCBjb2YpKQorICAgICAgICkKKyAgICAgICAgZ290byBlcnI7CisKKyAgICAvKiB2ZXJp ZnkgbWF0aCBjaGVja3Mgb3V0ICovCisgICAgaWYgKC8qIGFsbG9jYXRlIHRlbXBvcmFyeSBwb2lu dHMgb24gZ3JvdXAgYW5kIGFsdGdyb3VwICovCisgICAgICAgICAgICAhVEVTVF9wdHIoUTEgPSBF Q19QT0lOVF9uZXcoZ3JvdXApKQorICAgICAgICAgICAgfHwgIVRFU1RfcHRyKFEyID0gRUNfUE9J TlRfbmV3KGFsdGdyb3VwKSkKKyAgICAgICAgICAgIC8qIGZldGNoIGEgdGVzdGluZyBzY2FsYXIg ayAhPSAwLDEgKi8KKyAgICAgICAgICAgIHx8ICFURVNUX3RydWUoQk5fcmFuZChrLCBFQ19HUk9V UF9vcmRlcl9iaXRzKGdyb3VwKSAtIDEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgQk5fUkFORF9UT1BfT05FLCBCTl9SQU5EX0JPVFRPTV9BTlkpKQorICAgICAgICAgICAgLyog bWFrZSBrIGV2ZW4gKi8KKyAgICAgICAgICAgIHx8ICFURVNUX3RydWUoQk5fY2xlYXJfYml0KGss IDApKQorICAgICAgICAgICAgLyogUTEgOj0ga0cgb24gZ3JvdXAgKi8KKyAgICAgICAgICAgIHx8 ICFURVNUX3RydWUoRUNfUE9JTlRfbXVsKGdyb3VwLCBRMSwgaywgTlVMTCwgTlVMTCwgY3R4KSkK KyAgICAgICAgICAgIC8qIHB1bGwgb3V0IHRoZSBieXRlcyBvZiB0aGF0ICovCisgICAgICAgICAg ICB8fCAhVEVTVF9pbnRfZXEoRUNfUE9JTlRfcG9pbnQyb2N0KGdyb3VwLCBRMSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUE9JTlRfQ09OVkVSU0lPTl9V TkNPTVBSRVNTRUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsIDAsIGN0eCksIGJzaXplKQorICAgICAgICAgICAgfHwgIVRFU1RfaW50X2VxKEVD X1BPSU5UX3BvaW50Mm9jdChncm91cCwgUTEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFBPSU5UX0NPTlZFUlNJT05fVU5DT01QUkVTU0VELAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWYxLCBic2l6ZSwgY3R4 KSwgYnNpemUpCisgICAgICAgICAgICAvKiBrIDo9IGsvMiAqLworICAgICAgICAgICAgfHwgIVRF U1RfdHJ1ZShCTl9yc2hpZnQxKGssIGspKQorICAgICAgICAgICAgLyogUTIgOj0gay8yIEcyIG9u IGFsdGdyb3VwICovCisgICAgICAgICAgICB8fCAhVEVTVF90cnVlKEVDX1BPSU5UX211bChhbHRn cm91cCwgUTIsIGssIE5VTEwsIE5VTEwsIGN0eCkpCisgICAgICAgICAgICAvKiBwdWxsIG91dCB0 aGUgYnl0ZXMgb2YgdGhhdCAqLworICAgICAgICAgICAgfHwgIVRFU1RfaW50X2VxKEVDX1BPSU5U X3BvaW50Mm9jdChhbHRncm91cCwgUTIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFBPSU5UX0NPTlZFUlNJT05fVU5DT01QUkVTU0VELAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAwLCBjdHgpLCBic2l6 ZSkKKyAgICAgICAgICAgIHx8ICFURVNUX3B0cihidWYyID0gT1BFTlNTTF9tYWxsb2MoYnNpemUp KQorICAgICAgICAgICAgfHwgIVRFU1RfaW50X2VxKEVDX1BPSU5UX3BvaW50Mm9jdChhbHRncm91 cCwgUTIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBP SU5UX0NPTlZFUlNJT05fVU5DT01QUkVTU0VELAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBidWYyLCBic2l6ZSwgY3R4KSwgYnNpemUpCisgICAgICAgICAg ICAvKiBRMSA9IGtHID0gay8yIEcyID0gUTIgc2hvdWxkIGhvbGQgKi8KKyAgICAgICAgICAgIHx8 ICFURVNUX21lbV9lcShidWYxLCBic2l6ZSwgYnVmMiwgYnNpemUpKQorICAgICAgICBnb3RvIGVy cjsKKworICAgIC8qIGNyZWF0ZSB0d28gYEVDX0tFWWBzIG9uIGFsdGdyb3VwICovCisgICAgaWYg KCFURVNUX3B0cihlY2tleTEgPSBFQ19LRVlfbmV3KCkpCisgICAgICAgICAgICB8fCAhVEVTVF90 cnVlKEVDX0tFWV9zZXRfZ3JvdXAoZWNrZXkxLCBhbHRncm91cCkpCisgICAgICAgICAgICB8fCAh VEVTVF90cnVlKEVDX0tFWV9nZW5lcmF0ZV9rZXkoZWNrZXkxKSkKKyAgICAgICAgICAgIHx8ICFU RVNUX3B0cihlY2tleTIgPSBFQ19LRVlfbmV3KCkpCisgICAgICAgICAgICB8fCAhVEVTVF90cnVl KEVDX0tFWV9zZXRfZ3JvdXAoZWNrZXkyLCBhbHRncm91cCkpCisgICAgICAgICAgICB8fCAhVEVT VF90cnVlKEVDX0tFWV9nZW5lcmF0ZV9rZXkoZWNrZXkyKSkpCisgICAgICAgIGdvdG8gZXJyOwor CisgICAgLyogcmV0cmlldmUgcHJpdjEgZm9yIGxhdGVyICovCisgICAgaWYgKCFURVNUX3B0cihw cml2MSA9IEVDX0tFWV9nZXQwX3ByaXZhdGVfa2V5KGVja2V5MSkpKQorICAgICAgICBnb3RvIGVy cjsKKworICAgIC8qCisgICAgICogcmV0cmlldmUgYnl0ZXMgZm9yIHB1YjEgZm9yIGxhdGVyCisg ICAgICoKKyAgICAgKiBXZSBjb21wdXRlIHRoZSBwdWIga2V5IGluIHRoZSBvcmlnaW5hbCBncm91 cCBhcyB3ZSB3aWxsIGxhdGVyIHVzZSBpdCB0bworICAgICAqIGRlZmluZSBhIHByb3ZpZGVyIGtl eSBpbiB0aGUgYnVpbHQtaW4gZ3JvdXAuCisgICAgICovCisgICAgaWYgKCFURVNUX3RydWUoRUNf UE9JTlRfbXVsKGdyb3VwLCBRMSwgcHJpdjEsIE5VTEwsIE5VTEwsIGN0eCkpCisgICAgICAgICAg ICB8fCAhVEVTVF9pbnRfZXEoRUNfUE9JTlRfcG9pbnQyb2N0KGdyb3VwLCBRMSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUE9JTlRfQ09OVkVSU0lPTl9V TkNPTVBSRVNTRUQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsIDAsIGN0eCksIGJzaXplKQorICAgICAgICAgICAgfHwgIVRFU1RfcHRyKHB1YjEg PSBPUEVOU1NMX21hbGxvYyhic2l6ZSkpCisgICAgICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRUNf UE9JTlRfcG9pbnQyb2N0KGdyb3VwLCBRMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgUE9JTlRfQ09OVkVSU0lPTl9VTkNPTVBSRVNTRUQsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB1YjEsIGJzaXplLCBjdHgp LCBic2l6ZSkpCisgICAgICAgIGdvdG8gZXJyOworCisgICAgLyogcmV0cmlldmUgYnl0ZXMgZm9y IHB1YjIgZm9yIGxhdGVyICovCisgICAgaWYgKCFURVNUX3B0cihRID0gRUNfS0VZX2dldDBfcHVi bGljX2tleShlY2tleTIpKQorICAgICAgICAgICAgfHwgIVRFU1RfaW50X2VxKEVDX1BPSU5UX3Bv aW50Mm9jdChhbHRncm91cCwgUSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgUE9JTlRfQ09OVkVSU0lPTl9VTkNPTVBSRVNTRUQsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIDAsIGN0eCksIGJzaXplKQor ICAgICAgICAgICAgfHwgIVRFU1RfcHRyKHB1YjIgPSBPUEVOU1NMX21hbGxvYyhic2l6ZSkpCisg ICAgICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRUNfUE9JTlRfcG9pbnQyb2N0KGFsdGdyb3VwLCBR LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQT0lOVF9D T05WRVJTSU9OX1VOQ09NUFJFU1NFRCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcHViMiwgYnNpemUsIGN0eCksIGJzaXplKSkKKyAgICAgICAgZ290byBl cnI7CisKKyAgICAvKiBjcmVhdGUgdHdvIGBFVlBfUEtFWWBzIGZyb20gdGhlIGBFQ19LRVlgcyAq LworICAgIGlmKCFURVNUX3B0cihwa2V5MSA9IEVWUF9QS0VZX25ldygpKQorICAgICAgICAgICAg fHwgIVRFU1RfaW50X2VxKEVWUF9QS0VZX2Fzc2lnbl9FQ19LRVkocGtleTEsIGVja2V5MSksIDEp KQorICAgICAgICBnb3RvIGVycjsKKyAgICBlY2tleTEgPSBOVUxMOyAvKiBvd25lcnNoaXAgcGFz c2VkIHRvIHBrZXkxICovCisgICAgaWYoIVRFU1RfcHRyKHBrZXkyID0gRVZQX1BLRVlfbmV3KCkp CisgICAgICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRVZQX1BLRVlfYXNzaWduX0VDX0tFWShwa2V5 MiwgZWNrZXkyKSwgMSkpCisgICAgICAgIGdvdG8gZXJyOworICAgIGVja2V5MiA9IE5VTEw7IC8q IG93bmVyc2hpcCBwYXNzZWQgdG8gcGtleTIgKi8KKworICAgIC8qIENvbXB1dGUga2V5ZXhjaGFu Z2UgaW4gYm90aCBkaXJlY3Rpb25zICovCisgICAgaWYgKCFURVNUX3B0cihwY3R4MSA9IEVWUF9Q S0VZX0NUWF9uZXcocGtleTEsIE5VTEwpKQorICAgICAgICAgICAgfHwgIVRFU1RfaW50X2VxKEVW UF9QS0VZX2Rlcml2ZV9pbml0KHBjdHgxKSwgMSkKKyAgICAgICAgICAgIHx8ICFURVNUX2ludF9l cShFVlBfUEtFWV9kZXJpdmVfc2V0X3BlZXIocGN0eDEsIHBrZXkyKSwgMSkKKyAgICAgICAgICAg IHx8ICFURVNUX2ludF9lcShFVlBfUEtFWV9kZXJpdmUocGN0eDEsIE5VTEwsICZzc2xlbiksIDEp CisgICAgICAgICAgICB8fCAhVEVTVF9pbnRfZ3QoYnNpemUsIHNzbGVuKQorICAgICAgICAgICAg fHwgIVRFU1RfaW50X2VxKEVWUF9QS0VZX2Rlcml2ZShwY3R4MSwgYnVmMSwgJnNzbGVuKSwgMSkp CisgICAgICAgIGdvdG8gZXJyOworICAgIGlmICghVEVTVF9wdHIocGN0eDIgPSBFVlBfUEtFWV9D VFhfbmV3KHBrZXkyLCBOVUxMKSkKKyAgICAgICAgICAgIHx8ICFURVNUX2ludF9lcShFVlBfUEtF WV9kZXJpdmVfaW5pdChwY3R4MiksIDEpCisgICAgICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRVZQ X1BLRVlfZGVyaXZlX3NldF9wZWVyKHBjdHgyLCBwa2V5MSksIDEpCisgICAgICAgICAgICB8fCAh VEVTVF9pbnRfZXEoRVZQX1BLRVlfZGVyaXZlKHBjdHgyLCBOVUxMLCAmdCksIDEpCisgICAgICAg ICAgICB8fCAhVEVTVF9pbnRfZ3QoYnNpemUsIHQpCisgICAgICAgICAgICB8fCAhVEVTVF9pbnRf bGUoc3NsZW4sIHQpCisgICAgICAgICAgICB8fCAhVEVTVF9pbnRfZXEoRVZQX1BLRVlfZGVyaXZl KHBjdHgyLCBidWYyLCAmdCksIDEpKQorICAgICAgICBnb3RvIGVycjsKKworICAgIC8qIEJvdGgg c2lkZXMgc2hvdWxkIGV4cGVjdCB0aGUgc2FtZSBzaGFyZWQgc2VjcmV0ICovCisgICAgaWYgKCFU RVNUX21lbV9lcShidWYxLCBzc2xlbiwgYnVmMiwgdCkpCisgICAgICAgIGdvdG8gZXJyOworCisg ICAgLyogQnVpbGQgcGFyYW1ldGVycyBmb3IgcHJvdmlkZXItbmF0aXZlIGtleXMgKi8KKyAgICBp ZiAoIVRFU1RfcHRyKHBhcmFtX2JsZCA9IE9TU0xfUEFSQU1fQkxEX25ldygpKQorICAgICAgICAg ICAgfHwgIVRFU1RfdHJ1ZShPU1NMX1BBUkFNX0JMRF9wdXNoX3V0Zjhfc3RyaW5nKHBhcmFtX2Js ZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBPU1NMX1BLRVlfUEFSQU1fR1JPVVBfTkFNRSwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJ2ZV9uYW1lLCAwKSkKKyAgICAg ICAgICAgIHx8ICFURVNUX3RydWUoT1NTTF9QQVJBTV9CTERfcHVzaF9vY3RldF9zdHJpbmcocGFy YW1fYmxkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBPU1NMX1BLRVlfUEFSQU1fUFVCX0tFWSwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHViMSwgYnNpemUpKQorICAg ICAgICAgICAgfHwgIVRFU1RfdHJ1ZShPU1NMX1BBUkFNX0JMRF9wdXNoX0JOKHBhcmFtX2JsZCwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPU1NMX1BL RVlfUEFSQU1fUFJJVl9LRVksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgcHJpdjEpKQorICAgICAgICAgICAgfHwgIVRFU1RfcHRyKHBhcmFtczEgPSBP U1NMX1BBUkFNX0JMRF90b19wYXJhbShwYXJhbV9ibGQpKSkKKyAgICAgICAgZ290byBlcnI7CisK KyAgICBPU1NMX1BBUkFNX0JMRF9mcmVlKHBhcmFtX2JsZCk7CisgICAgaWYgKCFURVNUX3B0cihw YXJhbV9ibGQgPSBPU1NMX1BBUkFNX0JMRF9uZXcoKSkKKyAgICAgICAgICAgIHx8ICFURVNUX3Ry dWUoT1NTTF9QQVJBTV9CTERfcHVzaF91dGY4X3N0cmluZyhwYXJhbV9ibGQsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT1NTTF9QS0VZ X1BBUkFNX0dST1VQX05BTUUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgY3VydmVfbmFtZSwgMCkpCisgICAgICAgICAgICB8fCAhVEVT VF90cnVlKE9TU0xfUEFSQU1fQkxEX3B1c2hfb2N0ZXRfc3RyaW5nKHBhcmFtX2JsZCwKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT1NT TF9QS0VZX1BBUkFNX1BVQl9LRVksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHB1YjIsIGJzaXplKSkKKyAgICAgICAgICAgIHx8ICFU RVNUX3B0cihwYXJhbXMyID0gT1NTTF9QQVJBTV9CTERfdG9fcGFyYW0ocGFyYW1fYmxkKSkpCisg ICAgICAgIGdvdG8gZXJyOworCisgICAgLyogY3JlYXRlIHR3byBuZXcgcHJvdmlkZXItbmF0aXZl IGBFVlBfUEtFWWBzICovCisgICAgRVZQX1BLRVlfQ1RYX2ZyZWUocGN0eDIpOworICAgIGlmICgh VEVTVF9wdHIocGN0eDIgPSBFVlBfUEtFWV9DVFhfbmV3X2Zyb21fbmFtZShOVUxMLCAiRUMiLCBO VUxMKSkKKyAgICAgICAgICAgIHx8ICFURVNUX3RydWUoRVZQX1BLRVlfZnJvbWRhdGFfaW5pdChw Y3R4MikpCisgICAgICAgICAgICB8fCAhVEVTVF90cnVlKEVWUF9QS0VZX2Zyb21kYXRhKHBjdHgy LCAmcGtleTEsIEVWUF9QS0VZX0tFWVBBSVIsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHBhcmFtczEpKQorICAgICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFVlBf UEtFWV9mcm9tZGF0YShwY3R4MiwgJnBrZXkyLCBFVlBfUEtFWV9QVUJMSUNfS0VZLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXMyKSkpCisgICAgICAg IGdvdG8gZXJyOworCisgICAgLyogY29tcHV0ZSBrZXlleGNoYW5nZSBvbmNlIG1vcmUgdXNpbmcg dGhlIHByb3ZpZGVyIGtleXMgKi8KKyAgICBFVlBfUEtFWV9DVFhfZnJlZShwY3R4MSk7CisgICAg aWYgKCFURVNUX3B0cihwY3R4MSA9IEVWUF9QS0VZX0NUWF9uZXcocGtleTEsIE5VTEwpKQorICAg ICAgICAgICAgfHwgIVRFU1RfaW50X2VxKEVWUF9QS0VZX2Rlcml2ZV9pbml0KHBjdHgxKSwgMSkK KyAgICAgICAgICAgIHx8ICFURVNUX2ludF9lcShFVlBfUEtFWV9kZXJpdmVfc2V0X3BlZXIocGN0 eDEsIHBrZXkyKSwgMSkKKyAgICAgICAgICAgIHx8ICFURVNUX2ludF9lcShFVlBfUEtFWV9kZXJp dmUocGN0eDEsIE5VTEwsICZ0KSwgMSkKKyAgICAgICAgICAgIHx8ICFURVNUX2ludF9ndChic2l6 ZSwgdCkKKyAgICAgICAgICAgIHx8ICFURVNUX2ludF9sZShzc2xlbiwgdCkKKyAgICAgICAgICAg IHx8ICFURVNUX2ludF9lcShFVlBfUEtFWV9kZXJpdmUocGN0eDEsIGJ1ZjEsICZ0KSwgMSkKKyAg ICAgICAgICAgIC8qIGNvbXBhcmUgd2l0aCBwcmV2aW91cyByZXN1bHQgKi8KKyAgICAgICAgICAg IHx8ICFURVNUX21lbV9lcShidWYxLCB0LCBidWYyLCBzc2xlbikpCisgICAgICAgIGdvdG8gZXJy OworCisgICAgcmV0ID0gMTsKKworIGVycjoKKyAgICBCTl9DVFhfZW5kKGN0eCk7CisgICAgQk5f Q1RYX2ZyZWUoY3R4KTsKKyAgICBPU1NMX1BBUkFNX0JMRF9mcmVlKHBhcmFtX2JsZCk7CisgICAg T1NTTF9QQVJBTV9mcmVlKHBhcmFtczEpOworICAgIE9TU0xfUEFSQU1fZnJlZShwYXJhbXMyKTsK KyAgICBFQ19QT0lOVF9mcmVlKFExKTsKKyAgICBFQ19QT0lOVF9mcmVlKFEyKTsKKyAgICBFQ19Q T0lOVF9mcmVlKEcyKTsKKyAgICBFQ19HUk9VUF9mcmVlKGdyb3VwKTsKKyAgICBFQ19HUk9VUF9m cmVlKGFsdGdyb3VwKTsKKyAgICBPUEVOU1NMX2ZyZWUoYnVmMSk7CisgICAgT1BFTlNTTF9mcmVl KGJ1ZjIpOworICAgIE9QRU5TU0xfZnJlZShwdWIxKTsKKyAgICBPUEVOU1NMX2ZyZWUocHViMik7 CisgICAgRUNfS0VZX2ZyZWUoZWNrZXkxKTsKKyAgICBFQ19LRVlfZnJlZShlY2tleTIpOworICAg IEVWUF9QS0VZX2ZyZWUocGtleTEpOworICAgIEVWUF9QS0VZX2ZyZWUocGtleTIpOworICAgIEVW UF9QS0VZX0NUWF9mcmVlKHBjdHgxKTsKKyAgICBFVlBfUEtFWV9DVFhfZnJlZShwY3R4Mik7CisK KyAgICByZXR1cm4gcmV0OworfQogCiBpbnQgc2V0dXBfdGVzdHModm9pZCkKIHsKLSNpZm5kZWYg T1BFTlNTTF9OT19FQwogICAgIGNydl9sZW4gPSBFQ19nZXRfYnVpbHRpbl9jdXJ2ZXMoTlVMTCwg MCk7CiAgICAgaWYgKCFURVNUX3B0cihjdXJ2ZXMgPSBPUEVOU1NMX21hbGxvYyhzaXplb2YoKmN1 cnZlcykgKiBjcnZfbGVuKSkKICAgICAgICAgfHwgIVRFU1RfdHJ1ZShFQ19nZXRfYnVpbHRpbl9j dXJ2ZXMoY3VydmVzLCBjcnZfbGVuKSkpCkBAIC0xNTIwLDI3ICsyMjg3LDI1IEBAIGludCBzZXR1 cF90ZXN0cyh2b2lkKQogICAgIEFERF9URVNUKGNvZmFjdG9yX3JhbmdlX3Rlc3QpOwogICAgIEFE RF9BTExfVEVTVFMoY2FyZGluYWxpdHlfdGVzdCwgY3J2X2xlbik7CiAgICAgQUREX1RFU1QocHJp bWVfZmllbGRfdGVzdHMpOwotIyBpZm5kZWYgT1BFTlNTTF9OT19FQzJNCisjaWZuZGVmIE9QRU5T U0xfTk9fRUMyTQogICAgIEFERF9URVNUKGNoYXIyX2ZpZWxkX3Rlc3RzKTsKICAgICBBRERfQUxM X1RFU1RTKGNoYXIyX2N1cnZlX3Rlc3QsIE9TU0xfTkVMRU0oY2hhcjJfY3VydmVfdGVzdHMpKTsK LSMgZW5kaWYKLSMgaWZuZGVmIE9QRU5TU0xfTk9fRUNfTklTVFBfNjRfR0NDXzEyOAorI2VuZGlm CiAgICAgQUREX0FMTF9URVNUUyhuaXN0cF9zaW5nbGVfdGVzdCwgT1NTTF9ORUxFTShuaXN0cF90 ZXN0c19wYXJhbXMpKTsKLSAgICBBRERfVEVTVCh1bmRlcmZsb3dfdGVzdCk7Ci0jIGVuZGlmCiAg ICAgQUREX0FMTF9URVNUUyhpbnRlcm5hbF9jdXJ2ZV90ZXN0LCBjcnZfbGVuKTsKICAgICBBRERf QUxMX1RFU1RTKGludGVybmFsX2N1cnZlX3Rlc3RfbWV0aG9kLCBjcnZfbGVuKTsKLQorICAgIEFE RF9URVNUKGdyb3VwX2ZpZWxkX3Rlc3QpOworICAgIEFERF9BTExfVEVTVFMoY2hlY2tfbmFtZWRf Y3VydmVfdGVzdCwgY3J2X2xlbik7CisgICAgQUREX0FMTF9URVNUUyhjaGVja19uYW1lZF9jdXJ2 ZV9sb29rdXBfdGVzdCwgY3J2X2xlbik7CisgICAgQUREX0FMTF9URVNUUyhjaGVja19lY19rZXlf ZmllbGRfcHVibGljX3JhbmdlX3Rlc3QsIGNydl9sZW4pOwogICAgIEFERF9BTExfVEVTVFMoY2hl Y2tfbmFtZWRfY3VydmVfZnJvbV9lY3BhcmFtZXRlcnMsIGNydl9sZW4pOwogICAgIEFERF9BTExf VEVTVFMoZWNfcG9pbnRfaGV4MnBvaW50X3Rlc3QsIGNydl9sZW4pOwogICAgIEFERF9BTExfVEVT VFMoY3VzdG9tX2dlbmVyYXRvcl90ZXN0LCBjcnZfbGVuKTsKLSNlbmRpZiAvKiBPUEVOU1NMX05P X0VDICovCisgICAgQUREX0FMTF9URVNUUyhjdXN0b21fcGFyYW1zX3Rlc3QsIGNydl9sZW4pOwog ICAgIHJldHVybiAxOwogfQogCiB2b2lkIGNsZWFudXBfdGVzdHModm9pZCkKIHsKLSNpZm5kZWYg T1BFTlNTTF9OT19FQwogICAgIE9QRU5TU0xfZnJlZShjdXJ2ZXMpOwotI2VuZGlmCiB9CgpkaWZm IC0tZ2l0IGEvZ2VucGF0Y2hlcyBiL2dlbnBhdGNoZXMKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5k ZXggMDAwMDAwMC4uNjBjMzZhNAotLS0gL2Rldi9udWxsCisrKyBiL2dlbnBhdGNoZXMKQEAgLTAs MCArMSwyNiBAQAorIyEvYmluL2Jhc2gKKworaWYgWyAkIyAtbmUgMiBdIDsgdGhlbgorICAgIGVj aG8gIlVzYWdlOiIKKyAgICBlY2hvICIgICAkMCA8Z2l0LWRpcj4gPGJhc2UtdGFnPiIKKyAgICBl eGl0IDEKK2ZpCisKK2dpdF9kaXI9IiQxIgorYmFzZV90YWc9IiQyIgorCit0YXJnZXRfZGlyPSIk KHB3ZCkiCisKK3B1c2hkICIkZ2l0X2RpciIgPi9kZXYvbnVsbAorZ2l0IGZvcm1hdC1wYXRjaCAt ayAtbyAiJHRhcmdldF9kaXIiICIkYmFzZV90YWciID4vZGV2L251bGwKK3BvcGQgPi9kZXYvbnVs bAorCitlY2hvICIjIFBhdGNoZXMgZXhwb3J0ZWQgZnJvbSBzb3VyY2UgZ2l0IgorCitpPTEKK2Zv ciBwIGluICoucGF0Y2ggOyBkbworICAgIHByaW50ZiAiIyAiCisgICAgc2VkICcvXlN1YmplY3Q6 L3tzL15TdWJqZWN0OiAvLztwfTtkJyAiJHAiCisgICAgcHJpbnRmICJQYXRjaCVzOiAlc1xuIiAk aSAiJHAiCisgICAgaT0kKCgkaSArIDEpKQorZG9uZQoKZGlmZiAtLWdpdCBhL29wZW5zc2wtMS4x LjEtYWxwbi1jYi5wYXRjaCBiL29wZW5zc2wtMS4xLjEtYWxwbi1jYi5wYXRjaApkZWxldGVkIGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggNDY1ZjdiOC4uMDAwMDAwMAotLS0gYS9vcGVuc3NsLTEuMS4x LWFscG4tY2IucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyNyArMCwwIEBACi1jb21taXQgOWU4 ODVhNzA3ZDYwNGU5NTI4YjU0OTFiNzhmYjljMDBmNDExOTNmYwotQXV0aG9yOiBUb21hcyBNcmF6 IDx0bXJhekBmZWRvcmFwcm9qZWN0Lm9yZz4KLURhdGU6ICAgVGh1IE1hciAyNiAxNTo1OTowMCAy MDIwICswMTAwCi0KLSAgICBzX3NlcnZlcjogUHJvcGVybHkgaW5kaWNhdGUgQUxQTiBwcm90b2Nv bCBtaXNtYXRjaAotICAgIAotICAgIFJldHVybiBTU0xfVExTRVhUX0VSUl9BTEVSVF9GQVRBTCBm cm9tIGFscG5fc2VsZWN0X2NiIHNvIHRoYXQKLSAgICBhbiBhbGVydCBpcyBzZW50IHRvIHRoZSBj bGllbnQgb24gQUxQTiBwcm90b2NvbCBtaXNtYXRjaC4KLSAgICAKLSAgICBGaXhlczogIzI3MDgK LSAgICAKLSAgICBSZXZpZXdlZC1ieTogTWF0dCBDYXN3ZWxsIDxtYXR0QG9wZW5zc2wub3JnPgot ICAgIChNZXJnZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vb3BlbnNzbC9vcGVuc3NsL3B1bGwv MTE0MTUpCi0KLWRpZmYgLS1naXQgYS9hcHBzL3Nfc2VydmVyLmMgYi9hcHBzL3Nfc2VydmVyLmMK LWluZGV4IGJjYzgzZTU2MmMuLjU5MWM2YzE5YzUgMTAwNjQ0Ci0tLS0gYS9hcHBzL3Nfc2VydmVy LmMKLSsrKyBiL2FwcHMvc19zZXJ2ZXIuYwotQEAgLTcwNyw3ICs3MDcsNyBAQCBzdGF0aWMgaW50 IGFscG5fY2IoU1NMICpzLCBjb25zdCB1bnNpZ25lZCBjaGFyICoqb3V0LCB1bnNpZ25lZCBjaGFy ICpvdXRsZW4sCi0gICAgIGlmIChTU0xfc2VsZWN0X25leHRfcHJvdG8KLSAgICAgICAgICgodW5z aWduZWQgY2hhciAqKilvdXQsIG91dGxlbiwgYWxwbl9jdHgtPmRhdGEsIGFscG5fY3R4LT5sZW4s IGluLAotICAgICAgICAgIGlubGVuKSAhPSBPUEVOU1NMX05QTl9ORUdPVElBVEVEKSB7Ci0tICAg ICAgICByZXR1cm4gU1NMX1RMU0VYVF9FUlJfTk9BQ0s7Ci0rICAgICAgICByZXR1cm4gU1NMX1RM U0VYVF9FUlJfQUxFUlRfRkFUQUw7Ci0gICAgIH0KLSAKLSAgICAgaWYgKCFzX3F1aWV0KSB7Cgpk aWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1hcHBzLWRnc3QucGF0Y2ggYi9vcGVuc3NsLTEuMS4x LWFwcHMtZGdzdC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNjU1YjZlMi4u MDAwMDAwMAotLS0gYS9vcGVuc3NsLTEuMS4xLWFwcHMtZGdzdC5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDEyICswLDAgQEAKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFiL2FwcHMvY2EuYy5kZ3N0 IG9wZW5zc2wtMS4xLjFiL2FwcHMvY2EuYwotLS0tIG9wZW5zc2wtMS4xLjFiL2FwcHMvY2EuYy5k Z3N0CTIwMTktMDItMjYgMTU6MTU6MzAuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEu MWIvYXBwcy9jYS5jCTIwMTktMDMtMTUgMTU6NTM6NDYuNjIyMjY3Njg4ICswMTAwCi1AQCAtMTY5 LDcgKzE2OSw3IEBAIGNvbnN0IE9QVElPTlMgY2Ffb3B0aW9uc1tdID0gewotICAgICB7ImVuZGRh dGUiLCBPUFRfRU5EREFURSwgJ3MnLAotICAgICAgIllZTU1EREhITU1TU1ogY2VydCBub3RBZnRl ciAob3ZlcnJpZGVzIC1kYXlzKSJ9LAotICAgICB7ImRheXMiLCBPUFRfREFZUywgJ3AnLCAiTnVt YmVyIG9mIGRheXMgdG8gY2VydGlmeSB0aGUgY2VydCBmb3IifSwKLS0gICAgeyJtZCIsIE9QVF9N RCwgJ3MnLCAibWQgdG8gdXNlOyBvbmUgb2YgbWQyLCBtZDUsIHNoYSBvciBzaGExIn0sCi0rICAg IHsibWQiLCBPUFRfTUQsICdzJywgIm1kIHRvIHVzZTsgc2VlIG9wZW5zc2wgaGVscCBmb3IgbGlz dCJ9LAotICAgICB7InBvbGljeSIsIE9QVF9QT0xJQ1ksICdzJywgIlRoZSBDQSAncG9saWN5JyB0 byBzdXBwb3J0In0sCi0gICAgIHsia2V5ZmlsZSIsIE9QVF9LRVlGSUxFLCAncycsICJQcml2YXRl IGtleSJ9LAotICAgICB7ImtleWZvcm0iLCBPUFRfS0VZRk9STSwgJ2YnLCAiUHJpdmF0ZSBrZXkg ZmlsZSBmb3JtYXQgKFBFTSBvciBFTkdJTkUpIn0sCgpkaWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEu MS1hcm0tdXBkYXRlLnBhdGNoIGIvb3BlbnNzbC0xLjEuMS1hcm0tdXBkYXRlLnBhdGNoCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyYjhjNTQ5Li4wMDAwMDAwCi0tLSBhL29wZW5zc2wt MS4xLjEtYXJtLXVwZGF0ZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDM3MDYgKzAsMCBAQAot ZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWkvY3J5cHRvL2Flcy9hc20vYWVzdjgtYXJteC5wbC5hcm0t dXBkYXRlIG9wZW5zc2wtMS4xLjFpL2NyeXB0by9hZXMvYXNtL2Flc3Y4LWFybXgucGwKLS0tLSBv cGVuc3NsLTEuMS4xaS9jcnlwdG8vYWVzL2FzbS9hZXN2OC1hcm14LnBsLmFybS11cGRhdGUJMjAy MC0xMi0wOCAxNDoyMDo1OS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xaS9jcnlw dG8vYWVzL2FzbS9hZXN2OC1hcm14LnBsCTIwMjAtMTItMDkgMTA6Mzk6NTAuNjQ1NzA1Mzg1ICsw MTAwCi1AQCAtMjcsNDQgKzI3LDcyIEBACi0gIyBDQkMgZW5jcnlwdCBjYXNlLiBPbiBDb3J0ZXgt QTU3IHBhcmFsbGVsaXphYmxlIG1vZGUgcGVyZm9ybWFuY2UKLSAjIHNlZW1zIHRvIGJlIGxpbWl0 ZWQgYnkgc2hlZXIgYW1vdW50IG9mIE5FT04gaW5zdHJ1Y3Rpb25zLi4uCi0gIwotKyMgQXByaWwg MjAxOQotKyMKLSsjIEtleSB0byBwZXJmb3JtYW5jZSBvZiBwYXJhbGxlbGl6ZS1hYmxlIG1vZGVz IGlzIHJvdW5kIGluc3RydWN0aW9uCi0rIyBpbnRlcmxlYXZpbmcuIEJ1dCB3aGljaCBmYWN0b3Ig dG8gdXNlPyBUaGVyZSBpcyBvcHRpbWFsIG9uZSBmb3IKLSsjIGVhY2ggY29tYmluYXRpb24gb2Yg aW5zdHJ1Y3Rpb24gbGF0ZW5jeSBhbmQgaXNzdWUgcmF0ZSwgYmV5b25kCi0rIyB3aGljaCBpbmNy ZWFzaW5nIGludGVybGVhdmUgZmFjdG9yIGRvZXNuJ3QgcGF5IG9mZi4gV2hpbGUgb24gY29ucwot KyMgc2lkZSB3ZSBoYXZlIGNvZGUgc2l6ZSBpbmNyZWFzZSBhbmQgcmVzb3VyY2Ugd2FzdGUgb24g cGxhdGZvcm1zIGZvcgotKyMgd2hpY2ggaW50ZXJsZWF2ZSBmYWN0b3IgaXMgdG9vIGhpZ2guIElu IG90aGVyIHdvcmRzIHlvdSB3YW50IGl0IHRvCi0rIyBiZSBqdXN0IHJpZ2h0LiBTbyBmYXIgaW50 ZXJsZWF2ZSBmYWN0b3Igb2YgM3ggd2FzIHNlcnZpbmcgd2VsbCBhbGwKLSsjIHBsYXRmb3Jtcy4g QnV0IGZvciBUaHVuZGVyWDIgb3B0aW1hbCBpbnRlcmxlYXZlIGZhY3RvciB3YXMgbWVhc3VyZWQK LSsjIHRvIGJlIDV4Li4uCi0rIwotICMgUGVyZm9ybWFuY2UgaW4gY3ljbGVzIHBlciBieXRlIHBy b2Nlc3NlZCB3aXRoIDEyOC1iaXQga2V5OgotICMKLSAjCQlDQkMgZW5jCQlDQkMgZGVjCQlDVFIK LSAjIEFwcGxlIEE3CTIuMzkJCTEuMjAJCTEuMjAKLS0jIENvcnRleC1BNTMJMS4zMgkJMS4yOQkJ MS40NgotLSMgQ29ydGV4LUE1NygqKQkxLjk1CQkwLjg1CQkwLjkzCi0tIyBEZW52ZXIJMS45NgkJ MC44NgkJMC44MAotLSMgTW9uZ29vc2UJMS4zMwkJMS4yMAkJMS4yMAotLSMgS3J5bwkJMS4yNgkJ MC45NAkJMS4wMAotKyMgQ29ydGV4LUE1MwkxLjMyCQkxLjE3LzEuMjkoKiopCTEuMzYvMS40Ngot KyMgQ29ydGV4LUE1NygqKQkxLjk1CQkwLjgyLzAuODUJMC44OS8wLjkzCi0rIyBDb3J0ZXgtQTcy CTEuMzMJCTAuODUvMC44OAkwLjkyLzAuOTYKLSsjIERlbnZlcgkxLjk2CQkwLjY1LzAuODYJMC43 Ni8wLjgwCi0rIyBNb25nb29zZQkxLjMzCQkxLjIzLzEuMjAJMS4zMC8xLjIwCi0rIyBLcnlvCQkx LjI2CQkwLjg3LzAuOTQJMS4wMC8xLjAwCi0rIyBUaHVuZGVyWDIJNS45NQkJMS4yNQkJMS4zMAot ICMKLSAjICgqKQlvcmlnaW5hbCAzLjY0LzEuMzQvMS4zMiByZXN1bHRzIHdlcmUgZm9yIHIwcDAg cmV2aXNpb24KLSAjCWFuZCBhcmUgc3RpbGwgc2FtZSBldmVuIGZvciB1cGRhdGVkIG1vZHVsZTsK LSsjICgqKikJbnVtYmVycyBhZnRlciBzbGFzaCBhcmUgZm9yIDMyLWJpdCBjb2RlLCB3aGljaCBp cyAzeC0KLSsjCWludGVybGVhdmVkOwotIAotLSRmbGF2b3VyID0gc2hpZnQ7Ci0tJG91dHB1dCAg PSBzaGlmdDsKLSsjICRvdXRwdXQgaXMgdGhlIGxhc3QgYXJndW1lbnQgaWYgaXQgbG9va3MgbGlr ZSBhIGZpbGUgKGl0IGhhcyBhbiBleHRlbnNpb24pCi0rIyAkZmxhdm91ciBpcyB0aGUgZmlyc3Qg YXJndW1lbnQgaWYgaXQgZG9lc24ndCBsb29rIGxpa2UgYSBmaWxlCi0rJG91dHB1dCA9ICQjQVJH ViA+PSAwICYmICRBUkdWWyQjQVJHVl0gPX4gbXxcLlx3KyR8ID8gcG9wIDogdW5kZWY7Ci0rJGZs YXZvdXIgPSAkI0FSR1YgPj0gMCAmJiAkQVJHVlswXSAhfiBtfFwufCA/IHNoaWZ0IDogdW5kZWY7 Ci0gCi0gJDAgPX4gbS8oLipbXC9cXF0pW15cL1xcXSskLzsgJGRpcj0kMTsKLSAoICR4bGF0ZT0i JHtkaXJ9YXJtLXhsYXRlLnBsIiBhbmQgLWYgJHhsYXRlICkgb3IKLSAoICR4bGF0ZT0iJHtkaXJ9 Li4vLi4vcGVybGFzbS9hcm0teGxhdGUucGwiIGFuZCAtZiAkeGxhdGUpIG9yCi0gZGllICJjYW4n dCBsb2NhdGUgYXJtLXhsYXRlLnBsIjsKLSAKLS1vcGVuIE9VVCwifCBcIiReWFwiICR4bGF0ZSAk Zmxhdm91ciAkb3V0cHV0IjsKLStvcGVuIE9VVCwifCBcIiReWFwiICR4bGF0ZSAkZmxhdm91ciBc IiRvdXRwdXRcIiIKLSsgICAgb3IgZGllICJjYW4ndCBjYWxsICR4bGF0ZTogJCEiOwotICpTVERP VVQ9Kk9VVDsKLSAKLSAkcHJlZml4PSJhZXNfdjgiOwotIAotKyRfYnl0ZSA9ICgkZmxhdm91ciA9 fiAvd2luLyA/ICJEQ0IiIDogIi5ieXRlIik7Ci0rCi0gJGNvZGU9PDxfX187Ci0gI2luY2x1ZGUg ImFybV9hcmNoLmgiCi0gCi0gI2lmIF9fQVJNX01BWF9BUkNIX18+PTcKLS0udGV4dAotIF9fXwot LSRjb2RlLj0iLmFyY2gJYXJtdjgtYStjcnlwdG9cbiIJCQlpZiAoJGZsYXZvdXIgPX4gLzY0Lyk7 Ci0rJGNvZGUuPSIuYXJjaAlhcm12OC1hK2NyeXB0b1xuLnRleHRcbiIJCWlmICgkZmxhdm91ciA9 fiAvNjQvKTsKLSAkY29kZS49PDxfX18JCQkJCQlpZiAoJGZsYXZvdXIgIX4gLzY0Lyk7Ci0gLmFy Y2gJYXJtdjctYQkvLyBkb24ndCBjb25mdXNlIG5vdC1zby1sYXRlc3QgYmludXRpbHMgd2l0aCBh cmd2OCA6LSkKLSAuZnB1CW5lb24KLSsjaWZkZWYJX190aHVtYjJfXwotKy5zeW50YXgJdW5pZmll ZAotKy50aHVtYgotKyMgZGVmaW5lIElOU1QoYSxiLGMsZCkJJF9ieXRlCWMsZHwweGMsYSxiCi0r I2Vsc2UKLSAuY29kZQkzMgotLSN1bmRlZglfX3RodW1iMl9fCi0rIyBkZWZpbmUgSU5TVChhLGIs YyxkKQkkX2J5dGUJYSxiLGMsZAotKyNlbmRpZgotKwotKy50ZXh0Ci0gX19fCi0gCi0gIyBBc3Nl bWJsZXIgbW5lbW9uaWNzIGFyZSBhbiBlY2xlY3RpYyBtaXggb2YgMzItIGFuZCA2NC1iaXQgc3lu dGF4LAotQEAgLTM2MSw2ICszODksODM2IEBAIF9fXwotICZnZW5fYmxvY2soImVuIik7Ci0gJmdl bl9ibG9jaygiZGUiKTsKLSB9fX0KLSsKLSsjIFBlcmZvcm1hbmNlIGluIGN5Y2xlcyBwZXIgYnl0 ZS4KLSsjIFByb2Nlc3NlZCB3aXRoIEFFUy1FQ0IgZGlmZmVyZW50IGtleSBzaXplLgotKyMgSXQg c2hvd3MgdGhlIHZhbHVlIGJlZm9yZSBhbmQgYWZ0ZXIgb3B0aW1pemF0aW9uIGFzIGJlbG93Ogot KyMgKGJlZm9yZS9hZnRlcik6Ci0rIwotKyMJCUFFUy0xMjgtRUNCCQlBRVMtMTkyLUVDQgkJQUVT LTI1Ni1FQ0IKLSsjIENvcnRleC1BNTcJMS44NS8wLjgyCQkyLjE2LzAuOTYJCTIuNDcvMS4xMAot KyMgQ29ydGV4LUE3MgkxLjY0LzAuODUJCTEuODIvMC45OQkJMi4xMy8xLjE0Ci0rCi0rIyBPcHRp bWl6YXRpb24gaXMgaW1wbGVtZW50ZWQgYnkgbG9vcCB1bnJvbGxpbmcgYW5kIGludGVybGVhdmlu Zy4KLSsjIENvbW1vbmx5LCB3ZSBjaG9vc2UgdGhlIHVucm9sbGluZyBmYWN0b3IgYXMgNSwgaWYg dGhlIGlucHV0Ci0rIyBkYXRhIHNpemUgc21hbGxlciB0aGFuIDUgYmxvY2tzLCBidXQgbm90IHNt YWxsZXIgdGhhbiAzIGJsb2NrcywKLSsjIGNob29zZSAzIGFzIHRoZSB1bnJvbGxpbmcgZmFjdG9y LgotKyMgSWYgdGhlIGlucHV0IGRhdGEgc2l6ZSBkc2l6ZSA+PSA1KjE2IGJ5dGVzLCB0aGVuIHRh a2UgNSBibG9ja3MKLSsjIGFzIG9uZSBpdGVyYXRpb24sIGV2ZXJ5IGxvb3AgdGhlIGxlZnQgc2l6 ZSBsc2l6ZSAtPSA1KjE2LgotKyMgSWYgNSoxNiA+IGxzaXplID49IDMqMTYgYnl0ZXMsIHRha2Ug MyBibG9ja3MgYXMgb25lIGl0ZXJhdGlvbiwKLSsjIGV2ZXJ5IGxvb3AgbHNpemUgLT0zKjE2Lgot KyMgSWYgbHNpemUgPCAzKjE2IGJ5dGVzLCB0cmVhdCB0aGVtIGFzIHRoZSB0YWlsLCBpbnRlcmxl YXZlIHRoZQotKyMgdHdvIGJsb2NrcyBBRVMgaW5zdHJ1Y3Rpb25zLgotKyMgVGhlcmUgaXMgb25l IHNwZWNpYWwgY2FzZSwgaWYgdGhlIG9yaWdpbmFsIGlucHV0IGRhdGEgc2l6ZSBkc2l6ZQotKyMg PSAxNiBieXRlcywgd2Ugd2lsbCB0cmVhdCBpdCBzZXBlcmF0ZWx5IHRvIGltcHJvdmUgdGhlCi0r IyBwZXJmb3JtYW5jZTogb25lIGluZGVwZW5kZW50IGNvZGUgYmxvY2sgd2l0aG91dCBMUiwgRlAg bG9hZCBhbmQKLSsjIHN0b3JlLCBqdXN0IGxvb2tzIGxpa2Ugd2hhdCB0aGUgb3JpZ2luYWwgRUNC IGltcGxlbWVudGF0aW9uIGRvZXMuCi0rCi0re3t7Ci0rbXkgKCRpbnAsJG91dCwkbGVuLCRrZXkp PW1hcCgieCRfIiwoMC4uMykpOwotK215ICgkZW5jLCRyb3VuZHMsJGNudCwka2V5Xywkc3RlcCk9 KCJ3NCIsInc1IiwidzYiLCJ4NyIsIng4Iik7Ci0rbXkgKCRkYXQwLCRkYXQxLCRpbjAsJGluMSwk dG1wMCwkdG1wMSwkdG1wMiwkcm5kbGFzdCk9bWFwKCJxJF8iLCgwLi43KSk7Ci0rCi0rbXkgKCRk YXQsJHRtcCwkcm5kemVyb19uX2xhc3QpPSgkZGF0MCwkdG1wMCwkdG1wMSk7Ci0rCi0rIyMjIHE3 CWxhc3Qgcm91bmQga2V5Ci0rIyMjIHExMC1xMTUJcTcgTGFzdCA3IHJvdW5kIGtleXMKLSsjIyMg cTgtcTkJcHJlbG9hZGVkIHJvdW5kIGtleXMgZXhjZXB0IGxhc3QgNyBrZXlzIGZvciBiaWcgc2l6 ZQotKyMjIyBxNSwgcTYsIHE4LXE5CXByZWxvYWRlZCByb3VuZCBrZXlzIGV4Y2VwdCBsYXN0IDcg a2V5cyBmb3Igb25seSAxNiBieXRlCi0rCi0rewotK215ICgkZGF0MiwkaW4yLCR0bXAyKT1tYXAo InEkXyIsKDEwLDExLDkpKTsKLSsKLStteSAoJGRhdDMsJGluMywkdG1wMyk7CSMgdXNlZCBvbmx5 IGluIDY0LWJpdCBtb2RlCi0rbXkgKCRkYXQ0LCRpbjQsJHRtcDQpOwotK2lmICgkZmxhdm91ciA9 fiAvNjQvKSB7Ci0rICAgICgkZGF0MiwkZGF0MywkZGF0NCwkaW4yLCRpbjMsJGluNCwkdG1wMywk dG1wNCk9bWFwKCJxJF8iLCgxNi4uMjMpKTsKLSt9Ci0rCi0rJGNvZGUuPTw8X19fOwotKy5nbG9i bAkke3ByZWZpeH1fZWNiX2VuY3J5cHQKLSsudHlwZQkke3ByZWZpeH1fZWNiX2VuY3J5cHQsJWZ1 bmN0aW9uCi0rLmFsaWduCTUKLSske3ByZWZpeH1fZWNiX2VuY3J5cHQ6Ci0rX19fCi0rJGNvZGUu PTw8X19fCWlmICgkZmxhdm91ciA9fiAvNjQvKTsKLSsJc3VicwkkbGVuLCRsZW4sIzE2Ci0rCS8v IE9yaWdpbmFsIGlucHV0IGRhdGEgc2l6ZSBiaWdnZXIgdGhhbiAxNiwganVtcCB0byBiaWcgc2l6 ZSBwcm9jZXNzaW5nLgotKwliLm5lICAgIC5MZWNiX2JpZ19zaXplCi0rCXZsZDEuOAl7JGRhdDB9 LFskaW5wXQotKwljbXAJJGVuYywjMAkJCQkJLy8gZW4tIG9yIGRlY3J5cHRpbmc/Ci0rCWxkcgkk cm91bmRzLFska2V5LCMyNDBdCi0rCXZsZDEuMzIJe3E1LXE2fSxbJGtleV0sIzMyCQkJLy8gbG9h ZCBrZXkgc2NoZWR1bGUuLi4KLSsKLSsJYi5lcSAuTGVjYl9zbWFsbF9kZWMKLSsJYWVzZQkkZGF0 MCxxNQotKwlhZXNtYwkkZGF0MCwkZGF0MAotKwl2bGQxLjMyCXtxOC1xOX0sWyRrZXldLCMzMgkJ CS8vIGxvYWQga2V5IHNjaGVkdWxlLi4uCi0rCWFlc2UJJGRhdDAscTYKLSsJYWVzbWMJJGRhdDAs JGRhdDAKLSsJc3Vicwkkcm91bmRzLCRyb3VuZHMsIzEwCQkJLy8gaWYgcm91bmRzPT0xMCwganVt cCB0byBhZXMtMTI4LWVjYiBwcm9jZXNzaW5nCi0rCWIuZXEgICAgLkxlY2JfMTI4X2VuYwotKy5M ZWNiX3JvdW5kX2xvb3A6Ci0rCWFlc2UJJGRhdDAscTgKLSsJYWVzbWMJJGRhdDAsJGRhdDAKLSsJ dmxkMS4zMgl7cTh9LFska2V5XSwjMTYJCQkJLy8gbG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsJYWVz ZQkkZGF0MCxxOQotKwlhZXNtYwkkZGF0MCwkZGF0MAotKwl2bGQxLjMyCXtxOX0sWyRrZXldLCMx NgkJCQkvLyBsb2FkIGtleSBzY2hlZHVsZS4uLgotKwlzdWJzCSRyb3VuZHMsJHJvdW5kcywjMgkJ CS8vIGJpYXMKLSsJYi5ndCAgICAuTGVjYl9yb3VuZF9sb29wCi0rLkxlY2JfMTI4X2VuYzoKLSsJ dmxkMS4zMgl7cTEwLXExMX0sWyRrZXldLCMzMgkJLy8gbG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsJ YWVzZQkkZGF0MCxxOAotKwlhZXNtYwkkZGF0MCwkZGF0MAotKwlhZXNlCSRkYXQwLHE5Ci0rCWFl c21jCSRkYXQwLCRkYXQwCi0rCXZsZDEuMzIJe3ExMi1xMTN9LFska2V5XSwjMzIJCS8vIGxvYWQg a2V5IHNjaGVkdWxlLi4uCi0rCWFlc2UJJGRhdDAscTEwCi0rCWFlc21jCSRkYXQwLCRkYXQwCi0r CWFlc2UJJGRhdDAscTExCi0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCXZsZDEuMzIJe3ExNC1xMTV9 LFska2V5XSwjMzIJCS8vIGxvYWQga2V5IHNjaGVkdWxlLi4uCi0rCWFlc2UJJGRhdDAscTEyCi0r CWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDAscTEzCi0rCWFlc21jCSRkYXQwLCRkYXQw Ci0rCXZsZDEuMzIJeyRybmRsYXN0fSxbJGtleV0KLSsJYWVzZQkkZGF0MCxxMTQKLSsJYWVzbWMJ JGRhdDAsJGRhdDAKLSsJYWVzZQkkZGF0MCxxMTUKLSsJdmVvcgkkZGF0MCwkZGF0MCwkcm5kbGFz dAotKwl2c3QxLjgJeyRkYXQwfSxbJG91dF0KLSsJYgkuTGVjYl9GaW5hbF9hYm9ydAotKy5MZWNi X3NtYWxsX2RlYzoKLSsJYWVzZAkkZGF0MCxxNQotKwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJdmxk MS4zMgl7cTgtcTl9LFska2V5XSwjMzIJCQkvLyBsb2FkIGtleSBzY2hlZHVsZS4uLgotKwlhZXNk CSRkYXQwLHE2Ci0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwlzdWJzCSRyb3VuZHMsJHJvdW5kcywj MTAJCQkvLyBiaWFzCi0rCWIuZXEgICAgLkxlY2JfMTI4X2RlYwotKy5MZWNiX2RlY19yb3VuZF9s b29wOgotKwlhZXNkCSRkYXQwLHE4Ci0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwl2bGQxLjMyCXtx OH0sWyRrZXldLCMxNgkJCQkvLyBsb2FkIGtleSBzY2hlZHVsZS4uLgotKwlhZXNkCSRkYXQwLHE5 Ci0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwl2bGQxLjMyCXtxOX0sWyRrZXldLCMxNgkJCQkvLyBs b2FkIGtleSBzY2hlZHVsZS4uLgotKwlzdWJzCSRyb3VuZHMsJHJvdW5kcywjMgkJCS8vIGJpYXMK LSsJYi5ndCAgICAuTGVjYl9kZWNfcm91bmRfbG9vcAotKy5MZWNiXzEyOF9kZWM6Ci0rCXZsZDEu MzIJe3ExMC1xMTF9LFska2V5XSwjMzIJCS8vIGxvYWQga2V5IHNjaGVkdWxlLi4uCi0rCWFlc2QJ JGRhdDAscTgKLSsJYWVzaW1jCSRkYXQwLCRkYXQwCi0rCWFlc2QJJGRhdDAscTkKLSsJYWVzaW1j CSRkYXQwLCRkYXQwCi0rCXZsZDEuMzIJe3ExMi1xMTN9LFska2V5XSwjMzIJCS8vIGxvYWQga2V5 IHNjaGVkdWxlLi4uCi0rCWFlc2QJJGRhdDAscTEwCi0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwlh ZXNkCSRkYXQwLHExMQotKwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJdmxkMS4zMgl7cTE0LXExNX0s WyRrZXldLCMzMgkJLy8gbG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsJYWVzZAkkZGF0MCxxMTIKLSsJ YWVzaW1jCSRkYXQwLCRkYXQwCi0rCWFlc2QJJGRhdDAscTEzCi0rCWFlc2ltYwkkZGF0MCwkZGF0 MAotKwl2bGQxLjMyCXskcm5kbGFzdH0sWyRrZXldCi0rCWFlc2QJJGRhdDAscTE0Ci0rCWFlc2lt YwkkZGF0MCwkZGF0MAotKwlhZXNkCSRkYXQwLHExNQotKwl2ZW9yCSRkYXQwLCRkYXQwLCRybmRs YXN0Ci0rCXZzdDEuOAl7JGRhdDB9LFskb3V0XQotKwliCS5MZWNiX0ZpbmFsX2Fib3J0Ci0rLkxl Y2JfYmlnX3NpemU6Ci0rX19fCi0rJGNvZGUuPTw8X19fCWlmICgkZmxhdm91ciA9fiAvNjQvKTsK LSsJc3RwCXgyOSx4MzAsW3NwLCMtMTZdIQotKwlhZGQJeDI5LHNwLCMwCi0rX19fCi0rJGNvZGUu PTw8X19fCWlmICgkZmxhdm91ciAhfiAvNjQvKTsKLSsJbW92CWlwLHNwCi0rCXN0bWRiCXNwISx7 cjQtcjgsbHJ9Ci0rCXZzdG1kYglzcCEse2Q4LWQxNX0JCQlAIEFCSSBzcGVjaWZpY2F0aW9uIHNh eXMgc28KLSsJbGRtaWEJaXAse3I0LXI1fQkJCUAgbG9hZCByZW1haW5pbmcgYXJncwotKwlzdWJz CSRsZW4sJGxlbiwjMTYKLStfX18KLSskY29kZS49PDxfX187Ci0rCW1vdgkkc3RlcCwjMTYKLSsJ Yi5sbwkuTGVjYl9kb25lCi0rCWNjbHIJJHN0ZXAsZXEKLSsKLSsJY21wCSRlbmMsIzAJCQkJCS8v IGVuLSBvciBkZWNyeXB0aW5nPwotKwlsZHIJJHJvdW5kcyxbJGtleSwjMjQwXQotKwlhbmQJJGxl biwkbGVuLCMtMTYKLSsJdmxkMS44CXskZGF0fSxbJGlucF0sJHN0ZXAKLSsKLSsJdmxkMS4zMgl7 cTgtcTl9LFska2V5XQkJCQkvLyBsb2FkIGtleSBzY2hlZHVsZS4uLgotKwlzdWIJJHJvdW5kcywk cm91bmRzLCM2Ci0rCWFkZAkka2V5Xywka2V5LHg1LGxzbCM0CQkJCS8vIHBvaW50ZXIgdG8gbGFz dCA3IHJvdW5kIGtleXMKLSsJc3ViCSRyb3VuZHMsJHJvdW5kcywjMgotKwl2bGQxLjMyCXtxMTAt cTExfSxbJGtleV9dLCMzMgotKwl2bGQxLjMyCXtxMTItcTEzfSxbJGtleV9dLCMzMgotKwl2bGQx LjMyCXtxMTQtcTE1fSxbJGtleV9dLCMzMgotKwl2bGQxLjMyCXskcm5kbGFzdH0sWyRrZXlfXQot KwotKwlhZGQJJGtleV8sJGtleSwjMzIKLSsJbW92CSRjbnQsJHJvdW5kcwotKwliLmVxCS5MZWNi X2RlYwotKwotKwl2bGQxLjgJeyRkYXQxfSxbJGlucF0sIzE2Ci0rCXN1YnMJJGxlbiwkbGVuLCMz MgkJCQkvLyBiaWFzCi0rCWFkZAkkY250LCRyb3VuZHMsIzIKLSsJdm9ycgkkaW4xLCRkYXQxLCRk YXQxCi0rCXZvcnIJJGRhdDIsJGRhdDEsJGRhdDEKLSsJdm9ycgkkZGF0MSwkZGF0LCRkYXQKLSsJ Yi5sbwkuTGVjYl9lbmNfdGFpbAotKwotKwl2b3JyCSRkYXQxLCRpbjEsJGluMQotKwl2bGQxLjgJ eyRkYXQyfSxbJGlucF0sIzE2Ci0rX19fCi0rJGNvZGUuPTw8X19fCWlmICgkZmxhdm91ciA9fiAv NjQvKTsKLSsJY21wCSRsZW4sIzMyCi0rCWIubG8JLkxvb3AzeF9lY2JfZW5jCi0rCi0rCXZsZDEu OAl7JGRhdDN9LFskaW5wXSwjMTYKLSsJdmxkMS44CXskZGF0NH0sWyRpbnBdLCMxNgotKwlzdWIJ JGxlbiwkbGVuLCMzMgkJCQkvLyBiaWFzCi0rCW1vdgkkY250LCRyb3VuZHMKLSsKLSsuTG9vcDV4 X2VjYl9lbmM6Ci0rCWFlc2UJJGRhdDAscTgKLSsJYWVzbWMJJGRhdDAsJGRhdDAKLSsJYWVzZQkk ZGF0MSxxOAotKwlhZXNtYwkkZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQyLHE4Ci0rCWFlc21jCSRk YXQyLCRkYXQyCi0rCWFlc2UJJGRhdDMscTgKLSsJYWVzbWMJJGRhdDMsJGRhdDMKLSsJYWVzZQkk ZGF0NCxxOAotKwlhZXNtYwkkZGF0NCwkZGF0NAotKwl2bGQxLjMyCXtxOH0sWyRrZXlfXSwjMTYK LSsJc3VicwkkY250LCRjbnQsIzIKLSsJYWVzZQkkZGF0MCxxOQotKwlhZXNtYwkkZGF0MCwkZGF0 MAotKwlhZXNlCSRkYXQxLHE5Ci0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTkK LSsJYWVzbWMJJGRhdDIsJGRhdDIKLSsJYWVzZQkkZGF0MyxxOQotKwlhZXNtYwkkZGF0MywkZGF0 MwotKwlhZXNlCSRkYXQ0LHE5Ci0rCWFlc21jCSRkYXQ0LCRkYXQ0Ci0rCXZsZDEuMzIJe3E5fSxb JGtleV9dLCMxNgotKwliLmd0CS5Mb29wNXhfZWNiX2VuYwotKwotKwlhZXNlCSRkYXQwLHE4Ci0r CWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDEscTgKLSsJYWVzbWMJJGRhdDEsJGRhdDEK LSsJYWVzZQkkZGF0MixxOAotKwlhZXNtYwkkZGF0MiwkZGF0MgotKwlhZXNlCSRkYXQzLHE4Ci0r CWFlc21jCSRkYXQzLCRkYXQzCi0rCWFlc2UJJGRhdDQscTgKLSsJYWVzbWMJJGRhdDQsJGRhdDQK LSsJY21wCSRsZW4sIzB4NDAJCQkJCS8vIGJlY2F1c2UgLkxlY2JfZW5jX3RhaWw0eAotKwlzdWIJ JGxlbiwkbGVuLCMweDUwCi0rCi0rCWFlc2UJJGRhdDAscTkKLSsJYWVzbWMJJGRhdDAsJGRhdDAK LSsJYWVzZQkkZGF0MSxxOQotKwlhZXNtYwkkZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQyLHE5Ci0r CWFlc21jCSRkYXQyLCRkYXQyCi0rCWFlc2UJJGRhdDMscTkKLSsJYWVzbWMJJGRhdDMsJGRhdDMK LSsJYWVzZQkkZGF0NCxxOQotKwlhZXNtYwkkZGF0NCwkZGF0NAotKwljc2VsCXg2LHh6ciwkbGVu LGd0CQkJLy8gYm9ycm93IHg2LCAkY250LCAiZ3QiIGlzIG5vdCB0eXBvCi0rCW1vdgkka2V5Xywk a2V5Ci0rCi0rCWFlc2UJJGRhdDAscTEwCi0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRh dDEscTEwCi0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTEwCi0rCWFlc21jCSRk YXQyLCRkYXQyCi0rCWFlc2UJJGRhdDMscTEwCi0rCWFlc21jCSRkYXQzLCRkYXQzCi0rCWFlc2UJ JGRhdDQscTEwCi0rCWFlc21jCSRkYXQ0LCRkYXQ0Ci0rCWFkZAkkaW5wLCRpbnAseDYJCQkJLy8g JGlucCBpcyBhZGp1c3RlZCBpbiBzdWNoIHdheSB0aGF0Ci0rCQkJCQkJCS8vIGF0IGV4aXQgZnJv bSB0aGUgbG9vcCAkZGF0MS0kZGF0NAotKwkJCQkJCQkvLyBhcmUgbG9hZGVkIHdpdGggbGFzdCAi d29yZHMiCi0rCWFkZAl4NiwkbGVuLCMweDYwCQkgICAgLy8gYmVjYXVzZSAuTGVjYl9lbmNfdGFp bDR4Ci0rCi0rCWFlc2UJJGRhdDAscTExCi0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRh dDEscTExCi0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTExCi0rCWFlc21jCSRk YXQyLCRkYXQyCi0rCWFlc2UJJGRhdDMscTExCi0rCWFlc21jCSRkYXQzLCRkYXQzCi0rCWFlc2UJ JGRhdDQscTExCi0rCWFlc21jCSRkYXQ0LCRkYXQ0Ci0rCi0rCWFlc2UJJGRhdDAscTEyCi0rCWFl c21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDEscTEyCi0rCWFlc21jCSRkYXQxLCRkYXQxCi0r CWFlc2UJJGRhdDIscTEyCi0rCWFlc21jCSRkYXQyLCRkYXQyCi0rCWFlc2UJJGRhdDMscTEyCi0r CWFlc21jCSRkYXQzLCRkYXQzCi0rCWFlc2UJJGRhdDQscTEyCi0rCWFlc21jCSRkYXQ0LCRkYXQ0 Ci0rCi0rCWFlc2UJJGRhdDAscTEzCi0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDEs cTEzCi0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTEzCi0rCWFlc21jCSRkYXQy LCRkYXQyCi0rCWFlc2UJJGRhdDMscTEzCi0rCWFlc21jCSRkYXQzLCRkYXQzCi0rCWFlc2UJJGRh dDQscTEzCi0rCWFlc21jCSRkYXQ0LCRkYXQ0Ci0rCi0rCWFlc2UJJGRhdDAscTE0Ci0rCWFlc21j CSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDEscTE0Ci0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFl c2UJJGRhdDIscTE0Ci0rCWFlc21jCSRkYXQyLCRkYXQyCi0rCWFlc2UJJGRhdDMscTE0Ci0rCWFl c21jCSRkYXQzLCRkYXQzCi0rCWFlc2UJJGRhdDQscTE0Ci0rCWFlc21jCSRkYXQ0LCRkYXQ0Ci0r Ci0rCWFlc2UJJGRhdDAscTE1Ci0rCXZsZDEuOAl7JGluMH0sWyRpbnBdLCMxNgotKwlhZXNlCSRk YXQxLHExNQotKwl2bGQxLjgJeyRpbjF9LFskaW5wXSwjMTYKLSsJYWVzZQkkZGF0MixxMTUKLSsJ dmxkMS44CXskaW4yfSxbJGlucF0sIzE2Ci0rCWFlc2UJJGRhdDMscTE1Ci0rCXZsZDEuOAl7JGlu M30sWyRpbnBdLCMxNgotKwlhZXNlCSRkYXQ0LHExNQotKwl2bGQxLjgJeyRpbjR9LFskaW5wXSwj MTYKLSsJY2J6CXg2LC5MZWNiX2VuY190YWlsNHgKLSsJdmxkMS4zMiB7cTh9LFska2V5X10sIzE2 CQkJLy8gcmUtcHJlLWxvYWQgcm5ka2V5WzBdCi0rCXZlb3IJJHRtcDAsJHJuZGxhc3QsJGRhdDAK LSsJdm9ycgkkZGF0MCwkaW4wLCRpbjAKLSsJdmVvcgkkdG1wMSwkcm5kbGFzdCwkZGF0MQotKwl2 b3JyCSRkYXQxLCRpbjEsJGluMQotKwl2ZW9yCSR0bXAyLCRybmRsYXN0LCRkYXQyCi0rCXZvcnIJ JGRhdDIsJGluMiwkaW4yCi0rCXZlb3IJJHRtcDMsJHJuZGxhc3QsJGRhdDMKLSsJdm9ycgkkZGF0 MywkaW4zLCRpbjMKLSsJdmVvcgkkdG1wNCwkcm5kbGFzdCwkZGF0NAotKwl2c3QxLjgJeyR0bXAw fSxbJG91dF0sIzE2Ci0rCXZvcnIJJGRhdDQsJGluNCwkaW40Ci0rCXZzdDEuOAl7JHRtcDF9LFsk b3V0XSwjMTYKLSsJbW92CSRjbnQsJHJvdW5kcwotKwl2c3QxLjgJeyR0bXAyfSxbJG91dF0sIzE2 Ci0rCXZsZDEuMzIge3E5fSxbJGtleV9dLCMxNgkJCS8vIHJlLXByZS1sb2FkIHJuZGtleVsxXQot Kwl2c3QxLjgJeyR0bXAzfSxbJG91dF0sIzE2Ci0rCXZzdDEuOAl7JHRtcDR9LFskb3V0XSwjMTYK LSsJYi5ocwkuTG9vcDV4X2VjYl9lbmMKLSsKLSsJYWRkCSRsZW4sJGxlbiwjMHg1MAotKwljYnoJ JGxlbiwuTGVjYl9kb25lCi0rCi0rCWFkZAkkY250LCRyb3VuZHMsIzIKLSsJc3VicwkkbGVuLCRs ZW4sIzB4MzAKLSsJdm9ycgkkZGF0MCwkaW4yLCRpbjIKLSsJdm9ycgkkZGF0MSwkaW4zLCRpbjMK LSsJdm9ycgkkZGF0MiwkaW40LCRpbjQKLSsJYi5sbwkuTGVjYl9lbmNfdGFpbAotKwotKwliCS5M b29wM3hfZWNiX2VuYwotKwotKy5hbGlnbgk0Ci0rLkxlY2JfZW5jX3RhaWw0eDoKLSsJdmVvcgkk dG1wMSwkcm5kbGFzdCwkZGF0MQotKwl2ZW9yCSR0bXAyLCRybmRsYXN0LCRkYXQyCi0rCXZlb3IJ JHRtcDMsJHJuZGxhc3QsJGRhdDMKLSsJdmVvcgkkdG1wNCwkcm5kbGFzdCwkZGF0NAotKwl2c3Qx LjgJeyR0bXAxfSxbJG91dF0sIzE2Ci0rCXZzdDEuOAl7JHRtcDJ9LFskb3V0XSwjMTYKLSsJdnN0 MS44CXskdG1wM30sWyRvdXRdLCMxNgotKwl2c3QxLjgJeyR0bXA0fSxbJG91dF0sIzE2Ci0rCi0r CWIJLkxlY2JfZG9uZQotKy5hbGlnbgk0Ci0rX19fCi0rJGNvZGUuPTw8X19fOwotKy5Mb29wM3hf ZWNiX2VuYzoKLSsJYWVzZQkkZGF0MCxxOAotKwlhZXNtYwkkZGF0MCwkZGF0MAotKwlhZXNlCSRk YXQxLHE4Ci0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTgKLSsJYWVzbWMJJGRh dDIsJGRhdDIKLSsJdmxkMS4zMgl7cTh9LFska2V5X10sIzE2Ci0rCXN1YnMJJGNudCwkY250LCMy Ci0rCWFlc2UJJGRhdDAscTkKLSsJYWVzbWMJJGRhdDAsJGRhdDAKLSsJYWVzZQkkZGF0MSxxOQot KwlhZXNtYwkkZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQyLHE5Ci0rCWFlc21jCSRkYXQyLCRkYXQy Ci0rCXZsZDEuMzIJe3E5fSxbJGtleV9dLCMxNgotKwliLmd0CS5Mb29wM3hfZWNiX2VuYwotKwot KwlhZXNlCSRkYXQwLHE4Ci0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDEscTgKLSsJ YWVzbWMJJGRhdDEsJGRhdDEKLSsJYWVzZQkkZGF0MixxOAotKwlhZXNtYwkkZGF0MiwkZGF0Mgot KwlzdWJzCSRsZW4sJGxlbiwjMHgzMAotKwltb3YubG8JeDYsJGxlbgkJCQkvLyB4NiwgJGNudCwg aXMgemVybyBhdCB0aGlzIHBvaW50Ci0rCWFlc2UJJGRhdDAscTkKLSsJYWVzbWMJJGRhdDAsJGRh dDAKLSsJYWVzZQkkZGF0MSxxOQotKwlhZXNtYwkkZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQyLHE5 Ci0rCWFlc21jCSRkYXQyLCRkYXQyCi0rCWFkZAkkaW5wLCRpbnAseDYJCQkvLyAkaW5wIGlzIGFk anVzdGVkIGluIHN1Y2ggd2F5IHRoYXQKLSsJCQkJCQkvLyBhdCBleGl0IGZyb20gdGhlIGxvb3Ag JGRhdDEtJGRhdDIKLSsJCQkJCQkvLyBhcmUgbG9hZGVkIHdpdGggbGFzdCAid29yZHMiCi0rCW1v dgkka2V5Xywka2V5Ci0rCWFlc2UJJGRhdDAscTEyCi0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFl c2UJJGRhdDEscTEyCi0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTEyCi0rCWFl c21jCSRkYXQyLCRkYXQyCi0rCXZsZDEuOAl7JGluMH0sWyRpbnBdLCMxNgotKwlhZXNlCSRkYXQw LHExMwotKwlhZXNtYwkkZGF0MCwkZGF0MAotKwlhZXNlCSRkYXQxLHExMwotKwlhZXNtYwkkZGF0 MSwkZGF0MQotKwlhZXNlCSRkYXQyLHExMwotKwlhZXNtYwkkZGF0MiwkZGF0MgotKwl2bGQxLjgJ eyRpbjF9LFskaW5wXSwjMTYKLSsJYWVzZQkkZGF0MCxxMTQKLSsJYWVzbWMJJGRhdDAsJGRhdDAK LSsJYWVzZQkkZGF0MSxxMTQKLSsJYWVzbWMJJGRhdDEsJGRhdDEKLSsJYWVzZQkkZGF0MixxMTQK LSsJYWVzbWMJJGRhdDIsJGRhdDIKLSsJdmxkMS44CXskaW4yfSxbJGlucF0sIzE2Ci0rCWFlc2UJ JGRhdDAscTE1Ci0rCWFlc2UJJGRhdDEscTE1Ci0rCWFlc2UJJGRhdDIscTE1Ci0rCXZsZDEuMzIg e3E4fSxbJGtleV9dLCMxNgkJLy8gcmUtcHJlLWxvYWQgcm5ka2V5WzBdCi0rCWFkZAkkY250LCRy b3VuZHMsIzIKLSsJdmVvcgkkdG1wMCwkcm5kbGFzdCwkZGF0MAotKwl2ZW9yCSR0bXAxLCRybmRs YXN0LCRkYXQxCi0rCXZlb3IJJGRhdDIsJGRhdDIsJHJuZGxhc3QKLSsJdmxkMS4zMiB7cTl9LFsk a2V5X10sIzE2CQkvLyByZS1wcmUtbG9hZCBybmRrZXlbMV0KLSsJdnN0MS44CXskdG1wMH0sWyRv dXRdLCMxNgotKwl2b3JyCSRkYXQwLCRpbjAsJGluMAotKwl2c3QxLjgJeyR0bXAxfSxbJG91dF0s IzE2Ci0rCXZvcnIJJGRhdDEsJGluMSwkaW4xCi0rCXZzdDEuOAl7JGRhdDJ9LFskb3V0XSwjMTYK LSsJdm9ycgkkZGF0MiwkaW4yLCRpbjIKLSsJYi5ocwkuTG9vcDN4X2VjYl9lbmMKLSsKLSsJY21u CSRsZW4sIzB4MzAKLSsJYi5lcQkuTGVjYl9kb25lCi0rCW5vcAotKwotKy5MZWNiX2VuY190YWls OgotKwlhZXNlCSRkYXQxLHE4Ci0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTgK LSsJYWVzbWMJJGRhdDIsJGRhdDIKLSsJdmxkMS4zMgl7cTh9LFska2V5X10sIzE2Ci0rCXN1YnMJ JGNudCwkY250LCMyCi0rCWFlc2UJJGRhdDEscTkKLSsJYWVzbWMJJGRhdDEsJGRhdDEKLSsJYWVz ZQkkZGF0MixxOQotKwlhZXNtYwkkZGF0MiwkZGF0MgotKwl2bGQxLjMyCXtxOX0sWyRrZXlfXSwj MTYKLSsJYi5ndAkuTGVjYl9lbmNfdGFpbAotKwotKwlhZXNlCSRkYXQxLHE4Ci0rCWFlc21jCSRk YXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTgKLSsJYWVzbWMJJGRhdDIsJGRhdDIKLSsJYWVzZQkk ZGF0MSxxOQotKwlhZXNtYwkkZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQyLHE5Ci0rCWFlc21jCSRk YXQyLCRkYXQyCi0rCWFlc2UJJGRhdDEscTEyCi0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJ JGRhdDIscTEyCi0rCWFlc21jCSRkYXQyLCRkYXQyCi0rCWNtbgkkbGVuLCMweDIwCi0rCWFlc2UJ JGRhdDEscTEzCi0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTEzCi0rCWFlc21j CSRkYXQyLCRkYXQyCi0rCWFlc2UJJGRhdDEscTE0Ci0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFl c2UJJGRhdDIscTE0Ci0rCWFlc21jCSRkYXQyLCRkYXQyCi0rCWFlc2UJJGRhdDEscTE1Ci0rCWFl c2UJJGRhdDIscTE1Ci0rCWIuZXEJLkxlY2JfZW5jX29uZQotKwl2ZW9yCSR0bXAxLCRybmRsYXN0 LCRkYXQxCi0rCXZlb3IJJHRtcDIsJHJuZGxhc3QsJGRhdDIKLSsJdnN0MS44CXskdG1wMX0sWyRv dXRdLCMxNgotKwl2c3QxLjgJeyR0bXAyfSxbJG91dF0sIzE2Ci0rCWIJLkxlY2JfZG9uZQotKwot Ky5MZWNiX2VuY19vbmU6Ci0rCXZlb3IJJHRtcDEsJHJuZGxhc3QsJGRhdDIKLSsJdnN0MS44CXsk dG1wMX0sWyRvdXRdLCMxNgotKwliCS5MZWNiX2RvbmUKLStfX18KLSsKLSskY29kZS49PDxfX187 Ci0rLmFsaWduCTUKLSsuTGVjYl9kZWM6Ci0rCXZsZDEuOAl7JGRhdDF9LFskaW5wXSwjMTYKLSsJ c3VicwkkbGVuLCRsZW4sIzMyCQkJLy8gYmlhcwotKwlhZGQJJGNudCwkcm91bmRzLCMyCi0rCXZv cnIJJGluMSwkZGF0MSwkZGF0MQotKwl2b3JyCSRkYXQyLCRkYXQxLCRkYXQxCi0rCXZvcnIJJGRh dDEsJGRhdCwkZGF0Ci0rCWIubG8JLkxlY2JfZGVjX3RhaWwKLSsKLSsJdm9ycgkkZGF0MSwkaW4x LCRpbjEKLSsJdmxkMS44CXskZGF0Mn0sWyRpbnBdLCMxNgotK19fXwotKyRjb2RlLj08PF9fXwlp ZiAoJGZsYXZvdXIgPX4gLzY0Lyk7Ci0rCWNtcAkkbGVuLCMzMgotKwliLmxvCS5Mb29wM3hfZWNi X2RlYwotKwotKwl2bGQxLjgJeyRkYXQzfSxbJGlucF0sIzE2Ci0rCXZsZDEuOAl7JGRhdDR9LFsk aW5wXSwjMTYKLSsJc3ViCSRsZW4sJGxlbiwjMzIJCQkJLy8gYmlhcwotKwltb3YJJGNudCwkcm91 bmRzCi0rCi0rLkxvb3A1eF9lY2JfZGVjOgotKwlhZXNkCSRkYXQwLHE4Ci0rCWFlc2ltYwkkZGF0 MCwkZGF0MAotKwlhZXNkCSRkYXQxLHE4Ci0rCWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNkCSRk YXQyLHE4Ci0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQzLHE4Ci0rCWFlc2ltYwkk ZGF0MywkZGF0MwotKwlhZXNkCSRkYXQ0LHE4Ci0rCWFlc2ltYwkkZGF0NCwkZGF0NAotKwl2bGQx LjMyCXtxOH0sWyRrZXlfXSwjMTYKLSsJc3VicwkkY250LCRjbnQsIzIKLSsJYWVzZAkkZGF0MCxx OQotKwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxOQotKwlhZXNpbWMJJGRhdDEs JGRhdDEKLSsJYWVzZAkkZGF0MixxOQotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJYWVzZAkkZGF0 MyxxOQotKwlhZXNpbWMJJGRhdDMsJGRhdDMKLSsJYWVzZAkkZGF0NCxxOQotKwlhZXNpbWMJJGRh dDQsJGRhdDQKLSsJdmxkMS4zMgl7cTl9LFska2V5X10sIzE2Ci0rCWIuZ3QJLkxvb3A1eF9lY2Jf ZGVjCi0rCi0rCWFlc2QJJGRhdDAscTgKLSsJYWVzaW1jCSRkYXQwLCRkYXQwCi0rCWFlc2QJJGRh dDEscTgKLSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIscTgKLSsJYWVzaW1jCSRk YXQyLCRkYXQyCi0rCWFlc2QJJGRhdDMscTgKLSsJYWVzaW1jCSRkYXQzLCRkYXQzCi0rCWFlc2QJ JGRhdDQscTgKLSsJYWVzaW1jCSRkYXQ0LCRkYXQ0Ci0rCWNtcAkkbGVuLCMweDQwCQkJCS8vIGJl Y2F1c2UgLkxlY2JfdGFpbDR4Ci0rCXN1YgkkbGVuLCRsZW4sIzB4NTAKLSsKLSsJYWVzZAkkZGF0 MCxxOQotKwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxOQotKwlhZXNpbWMJJGRh dDEsJGRhdDEKLSsJYWVzZAkkZGF0MixxOQotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJYWVzZAkk ZGF0MyxxOQotKwlhZXNpbWMJJGRhdDMsJGRhdDMKLSsJYWVzZAkkZGF0NCxxOQotKwlhZXNpbWMJ JGRhdDQsJGRhdDQKLSsJY3NlbAl4Nix4enIsJGxlbixndAkJLy8gYm9ycm93IHg2LCAkY250LCAi Z3QiIGlzIG5vdCB0eXBvCi0rCW1vdgkka2V5Xywka2V5Ci0rCi0rCWFlc2QJJGRhdDAscTEwCi0r CWFlc2ltYwkkZGF0MCwkZGF0MAotKwlhZXNkCSRkYXQxLHExMAotKwlhZXNpbWMJJGRhdDEsJGRh dDEKLSsJYWVzZAkkZGF0MixxMTAKLSsJYWVzaW1jCSRkYXQyLCRkYXQyCi0rCWFlc2QJJGRhdDMs cTEwCi0rCWFlc2ltYwkkZGF0MywkZGF0MwotKwlhZXNkCSRkYXQ0LHExMAotKwlhZXNpbWMJJGRh dDQsJGRhdDQKLSsJYWRkCSRpbnAsJGlucCx4NgkJCQkvLyAkaW5wIGlzIGFkanVzdGVkIGluIHN1 Y2ggd2F5IHRoYXQKLSsJCQkJCQkJLy8gYXQgZXhpdCBmcm9tIHRoZSBsb29wICRkYXQxLSRkYXQ0 Ci0rCQkJCQkJCS8vIGFyZSBsb2FkZWQgd2l0aCBsYXN0ICJ3b3JkcyIKLSsJYWRkCXg2LCRsZW4s IzB4NjAJCQkvLyBiZWNhdXNlIC5MZWNiX3RhaWw0eAotKwotKwlhZXNkCSRkYXQwLHExMQotKwlh ZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxMTEKLSsJYWVzaW1jCSRkYXQxLCRkYXQx Ci0rCWFlc2QJJGRhdDIscTExCi0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQzLHEx MQotKwlhZXNpbWMJJGRhdDMsJGRhdDMKLSsJYWVzZAkkZGF0NCxxMTEKLSsJYWVzaW1jCSRkYXQ0 LCRkYXQ0Ci0rCi0rCWFlc2QJJGRhdDAscTEyCi0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwlhZXNk CSRkYXQxLHExMgotKwlhZXNpbWMJJGRhdDEsJGRhdDEKLSsJYWVzZAkkZGF0MixxMTIKLSsJYWVz aW1jCSRkYXQyLCRkYXQyCi0rCWFlc2QJJGRhdDMscTEyCi0rCWFlc2ltYwkkZGF0MywkZGF0Mwot KwlhZXNkCSRkYXQ0LHExMgotKwlhZXNpbWMJJGRhdDQsJGRhdDQKLSsKLSsJYWVzZAkkZGF0MCxx MTMKLSsJYWVzaW1jCSRkYXQwLCRkYXQwCi0rCWFlc2QJJGRhdDEscTEzCi0rCWFlc2ltYwkkZGF0 MSwkZGF0MQotKwlhZXNkCSRkYXQyLHExMwotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJYWVzZAkk ZGF0MyxxMTMKLSsJYWVzaW1jCSRkYXQzLCRkYXQzCi0rCWFlc2QJJGRhdDQscTEzCi0rCWFlc2lt YwkkZGF0NCwkZGF0NAotKwotKwlhZXNkCSRkYXQwLHExNAotKwlhZXNpbWMJJGRhdDAsJGRhdDAK LSsJYWVzZAkkZGF0MSxxMTQKLSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIscTE0 Ci0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQzLHExNAotKwlhZXNpbWMJJGRhdDMs JGRhdDMKLSsJYWVzZAkkZGF0NCxxMTQKLSsJYWVzaW1jCSRkYXQ0LCRkYXQ0Ci0rCi0rCWFlc2QJ JGRhdDAscTE1Ci0rCXZsZDEuOAl7JGluMH0sWyRpbnBdLCMxNgotKwlhZXNkCSRkYXQxLHExNQot Kwl2bGQxLjgJeyRpbjF9LFskaW5wXSwjMTYKLSsJYWVzZAkkZGF0MixxMTUKLSsJdmxkMS44CXsk aW4yfSxbJGlucF0sIzE2Ci0rCWFlc2QJJGRhdDMscTE1Ci0rCXZsZDEuOAl7JGluM30sWyRpbnBd LCMxNgotKwlhZXNkCSRkYXQ0LHExNQotKwl2bGQxLjgJeyRpbjR9LFskaW5wXSwjMTYKLSsJY2J6 CXg2LC5MZWNiX3RhaWw0eAotKwl2bGQxLjMyIHtxOH0sWyRrZXlfXSwjMTYJCQkvLyByZS1wcmUt bG9hZCBybmRrZXlbMF0KLSsJdmVvcgkkdG1wMCwkcm5kbGFzdCwkZGF0MAotKwl2b3JyCSRkYXQw LCRpbjAsJGluMAotKwl2ZW9yCSR0bXAxLCRybmRsYXN0LCRkYXQxCi0rCXZvcnIJJGRhdDEsJGlu MSwkaW4xCi0rCXZlb3IJJHRtcDIsJHJuZGxhc3QsJGRhdDIKLSsJdm9ycgkkZGF0MiwkaW4yLCRp bjIKLSsJdmVvcgkkdG1wMywkcm5kbGFzdCwkZGF0MwotKwl2b3JyCSRkYXQzLCRpbjMsJGluMwot Kwl2ZW9yCSR0bXA0LCRybmRsYXN0LCRkYXQ0Ci0rCXZzdDEuOAl7JHRtcDB9LFskb3V0XSwjMTYK LSsJdm9ycgkkZGF0NCwkaW40LCRpbjQKLSsJdnN0MS44CXskdG1wMX0sWyRvdXRdLCMxNgotKwlt b3YJJGNudCwkcm91bmRzCi0rCXZzdDEuOAl7JHRtcDJ9LFskb3V0XSwjMTYKLSsJdmxkMS4zMiB7 cTl9LFska2V5X10sIzE2CQkJLy8gcmUtcHJlLWxvYWQgcm5ka2V5WzFdCi0rCXZzdDEuOAl7JHRt cDN9LFskb3V0XSwjMTYKLSsJdnN0MS44CXskdG1wNH0sWyRvdXRdLCMxNgotKwliLmhzCS5Mb29w NXhfZWNiX2RlYwotKwotKwlhZGQJJGxlbiwkbGVuLCMweDUwCi0rCWNiegkkbGVuLC5MZWNiX2Rv bmUKLSsKLSsJYWRkCSRjbnQsJHJvdW5kcywjMgotKwlzdWJzCSRsZW4sJGxlbiwjMHgzMAotKwl2 b3JyCSRkYXQwLCRpbjIsJGluMgotKwl2b3JyCSRkYXQxLCRpbjMsJGluMwotKwl2b3JyCSRkYXQy LCRpbjQsJGluNAotKwliLmxvCS5MZWNiX2RlY190YWlsCi0rCi0rCWIJLkxvb3AzeF9lY2JfZGVj Ci0rCi0rLmFsaWduCTQKLSsuTGVjYl90YWlsNHg6Ci0rCXZlb3IJJHRtcDEsJHJuZGxhc3QsJGRh dDEKLSsJdmVvcgkkdG1wMiwkcm5kbGFzdCwkZGF0MgotKwl2ZW9yCSR0bXAzLCRybmRsYXN0LCRk YXQzCi0rCXZlb3IJJHRtcDQsJHJuZGxhc3QsJGRhdDQKLSsJdnN0MS44CXskdG1wMX0sWyRvdXRd LCMxNgotKwl2c3QxLjgJeyR0bXAyfSxbJG91dF0sIzE2Ci0rCXZzdDEuOAl7JHRtcDN9LFskb3V0 XSwjMTYKLSsJdnN0MS44CXskdG1wNH0sWyRvdXRdLCMxNgotKwotKwliCS5MZWNiX2RvbmUKLSsu YWxpZ24JNAotK19fXwotKyRjb2RlLj08PF9fXzsKLSsuTG9vcDN4X2VjYl9kZWM6Ci0rCWFlc2QJ JGRhdDAscTgKLSsJYWVzaW1jCSRkYXQwLCRkYXQwCi0rCWFlc2QJJGRhdDEscTgKLSsJYWVzaW1j CSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIscTgKLSsJYWVzaW1jCSRkYXQyLCRkYXQyCi0rCXZs ZDEuMzIJe3E4fSxbJGtleV9dLCMxNgotKwlzdWJzCSRjbnQsJGNudCwjMgotKwlhZXNkCSRkYXQw LHE5Ci0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwlhZXNkCSRkYXQxLHE5Ci0rCWFlc2ltYwkkZGF0 MSwkZGF0MQotKwlhZXNkCSRkYXQyLHE5Ci0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwl2bGQxLjMy CXtxOX0sWyRrZXlfXSwjMTYKLSsJYi5ndAkuTG9vcDN4X2VjYl9kZWMKLSsKLSsJYWVzZAkkZGF0 MCxxOAotKwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxOAotKwlhZXNpbWMJJGRh dDEsJGRhdDEKLSsJYWVzZAkkZGF0MixxOAotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJc3Vicwkk bGVuLCRsZW4sIzB4MzAKLSsJbW92LmxvCXg2LCRsZW4JCQkJLy8geDYsICRjbnQsIGlzIHplcm8g YXQgdGhpcyBwb2ludAotKwlhZXNkCSRkYXQwLHE5Ci0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwlh ZXNkCSRkYXQxLHE5Ci0rCWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNkCSRkYXQyLHE5Ci0rCWFl c2ltYwkkZGF0MiwkZGF0MgotKwlhZGQJJGlucCwkaW5wLHg2IAkJCS8vICRpbnAgaXMgYWRqdXN0 ZWQgaW4gc3VjaCB3YXkgdGhhdAotKwkJCQkJCS8vIGF0IGV4aXQgZnJvbSB0aGUgbG9vcCAkZGF0 MS0kZGF0MgotKwkJCQkJCS8vIGFyZSBsb2FkZWQgd2l0aCBsYXN0ICJ3b3JkcyIKLSsJbW92CSRr ZXlfLCRrZXkKLSsJYWVzZAkkZGF0MCxxMTIKLSsJYWVzaW1jCSRkYXQwLCRkYXQwCi0rCWFlc2QJ JGRhdDEscTEyCi0rCWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNkCSRkYXQyLHExMgotKwlhZXNp bWMJJGRhdDIsJGRhdDIKLSsJdmxkMS44CXskaW4wfSxbJGlucF0sIzE2Ci0rCWFlc2QJJGRhdDAs cTEzCi0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwlhZXNkCSRkYXQxLHExMwotKwlhZXNpbWMJJGRh dDEsJGRhdDEKLSsJYWVzZAkkZGF0MixxMTMKLSsJYWVzaW1jCSRkYXQyLCRkYXQyCi0rCXZsZDEu OAl7JGluMX0sWyRpbnBdLCMxNgotKwlhZXNkCSRkYXQwLHExNAotKwlhZXNpbWMJJGRhdDAsJGRh dDAKLSsJYWVzZAkkZGF0MSxxMTQKLSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIs cTE0Ci0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwl2bGQxLjgJeyRpbjJ9LFskaW5wXSwjMTYKLSsJ YWVzZAkkZGF0MCxxMTUKLSsJYWVzZAkkZGF0MSxxMTUKLSsJYWVzZAkkZGF0MixxMTUKLSsJdmxk MS4zMiB7cTh9LFska2V5X10sIzE2CQkJLy8gcmUtcHJlLWxvYWQgcm5ka2V5WzBdCi0rCWFkZAkk Y250LCRyb3VuZHMsIzIKLSsJdmVvcgkkdG1wMCwkcm5kbGFzdCwkZGF0MAotKwl2ZW9yCSR0bXAx LCRybmRsYXN0LCRkYXQxCi0rCXZlb3IJJGRhdDIsJGRhdDIsJHJuZGxhc3QKLSsJdmxkMS4zMiB7 cTl9LFska2V5X10sIzE2CQkJLy8gcmUtcHJlLWxvYWQgcm5ka2V5WzFdCi0rCXZzdDEuOAl7JHRt cDB9LFskb3V0XSwjMTYKLSsJdm9ycgkkZGF0MCwkaW4wLCRpbjAKLSsJdnN0MS44CXskdG1wMX0s WyRvdXRdLCMxNgotKwl2b3JyCSRkYXQxLCRpbjEsJGluMQotKwl2c3QxLjgJeyRkYXQyfSxbJG91 dF0sIzE2Ci0rCXZvcnIJJGRhdDIsJGluMiwkaW4yCi0rCWIuaHMJLkxvb3AzeF9lY2JfZGVjCi0r Ci0rCWNtbgkkbGVuLCMweDMwCi0rCWIuZXEJLkxlY2JfZG9uZQotKwlub3AKLSsKLSsuTGVjYl9k ZWNfdGFpbDoKLSsJYWVzZAkkZGF0MSxxOAotKwlhZXNpbWMJJGRhdDEsJGRhdDEKLSsJYWVzZAkk ZGF0MixxOAotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJdmxkMS4zMgl7cTh9LFska2V5X10sIzE2 Ci0rCXN1YnMJJGNudCwkY250LCMyCi0rCWFlc2QJJGRhdDEscTkKLSsJYWVzaW1jCSRkYXQxLCRk YXQxCi0rCWFlc2QJJGRhdDIscTkKLSsJYWVzaW1jCSRkYXQyLCRkYXQyCi0rCXZsZDEuMzIJe3E5 fSxbJGtleV9dLCMxNgotKwliLmd0CS5MZWNiX2RlY190YWlsCi0rCi0rCWFlc2QJJGRhdDEscTgK LSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIscTgKLSsJYWVzaW1jCSRkYXQyLCRk YXQyCi0rCWFlc2QJJGRhdDEscTkKLSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIs cTkKLSsJYWVzaW1jCSRkYXQyLCRkYXQyCi0rCWFlc2QJJGRhdDEscTEyCi0rCWFlc2ltYwkkZGF0 MSwkZGF0MQotKwlhZXNkCSRkYXQyLHExMgotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJY21uCSRs ZW4sIzB4MjAKLSsJYWVzZAkkZGF0MSxxMTMKLSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJ JGRhdDIscTEzCi0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQxLHExNAotKwlhZXNp bWMJJGRhdDEsJGRhdDEKLSsJYWVzZAkkZGF0MixxMTQKLSsJYWVzaW1jCSRkYXQyLCRkYXQyCi0r CWFlc2QJJGRhdDEscTE1Ci0rCWFlc2QJJGRhdDIscTE1Ci0rCWIuZXEJLkxlY2JfZGVjX29uZQot Kwl2ZW9yCSR0bXAxLCRybmRsYXN0LCRkYXQxCi0rCXZlb3IJJHRtcDIsJHJuZGxhc3QsJGRhdDIK LSsJdnN0MS44CXskdG1wMX0sWyRvdXRdLCMxNgotKwl2c3QxLjgJeyR0bXAyfSxbJG91dF0sIzE2 Ci0rCWIJLkxlY2JfZG9uZQotKwotKy5MZWNiX2RlY19vbmU6Ci0rCXZlb3IJJHRtcDEsJHJuZGxh c3QsJGRhdDIKLSsJdnN0MS44CXskdG1wMX0sWyRvdXRdLCMxNgotKwotKy5MZWNiX2RvbmU6Ci0r X19fCi0rfQotKyRjb2RlLj08PF9fXwlpZiAoJGZsYXZvdXIgIX4gLzY0Lyk7Ci0rCXZsZG1pYQlz cCEse2Q4LWQxNX0KLSsJbGRtaWEJc3AhLHtyNC1yOCxwY30KLStfX18KLSskY29kZS49PDxfX18J aWYgKCRmbGF2b3VyID1+IC82NC8pOwotKwlsZHIJeDI5LFtzcF0sIzE2Ci0rX19fCi0rJGNvZGUu PTw8X19fCWlmICgkZmxhdm91ciA9fiAvNjQvKTsKLSsuTGVjYl9GaW5hbF9hYm9ydDoKLSsJcmV0 Ci0rX19fCi0rJGNvZGUuPTw8X19fOwotKy5zaXplCSR7cHJlZml4fV9lY2JfZW5jcnlwdCwuLSR7 cHJlZml4fV9lY2JfZW5jcnlwdAotK19fXwotK319fQotIHt7ewotIG15ICgkaW5wLCRvdXQsJGxl biwka2V5LCRpdnApPW1hcCgieCRfIiwoMC4uNCkpOyBteSAkZW5jPSJ3NSI7Ci0gbXkgKCRyb3Vu ZHMsJGNudCwka2V5Xywkc3RlcCwkc3RlcDEpPSgkZW5jLCJ3NiIsIng3IiwieDgiLCJ4MTIiKTsK LUBAIC01MTksNiArMTM3NywxMyBAQCAkY29kZS49PDxfX187Ci0gX19fCi0gewotIG15ICgkZGF0 MiwkaW4yLCR0bXAyKT1tYXAoInEkXyIsKDEwLDExLDkpKTsKLSsKLStteSAoJGRhdDMsJGluMywk dG1wMyk7CSMgdXNlZCBvbmx5IGluIDY0LWJpdCBtb2RlCi0rbXkgKCRkYXQ0LCRpbjQsJHRtcDQp OwotK2lmICgkZmxhdm91ciA9fiAvNjQvKSB7Ci0rICAgICgkZGF0MiwkZGF0MywkZGF0NCwkaW4y LCRpbjMsJGluNCwkdG1wMywkdG1wNCk9bWFwKCJxJF8iLCgxNi4uMjMpKTsKLSt9Ci0rCi0gJGNv ZGUuPTw8X19fOwotIC5hbGlnbgk1Ci0gLkxjYmNfZGVjOgotQEAgLTUzNSw3ICsxNDAwLDE5NiBA QCAkY29kZS49PDxfX187Ci0gCXZvcnIJJGluMCwkZGF0LCRkYXQKLSAJdm9ycgkkaW4xLCRkYXQx LCRkYXQxCi0gCXZvcnIJJGluMiwkZGF0MiwkZGF0MgotK19fXwotKyRjb2RlLj08PF9fXwlpZiAo JGZsYXZvdXIgPX4gLzY0Lyk7Ci0rCWNtcAkkbGVuLCMzMgotKwliLmxvCS5Mb29wM3hfY2JjX2Rl YwotKwotKwl2bGQxLjgJeyRkYXQzfSxbJGlucF0sIzE2Ci0rCXZsZDEuOAl7JGRhdDR9LFskaW5w XSwjMTYKLSsJc3ViCSRsZW4sJGxlbiwjMzIJCS8vIGJpYXMKLSsJbW92CSRjbnQsJHJvdW5kcwot Kwl2b3JyCSRpbjMsJGRhdDMsJGRhdDMKLSsJdm9ycgkkaW40LCRkYXQ0LCRkYXQ0Ci0rCi0rLkxv b3A1eF9jYmNfZGVjOgotKwlhZXNkCSRkYXQwLHE4Ci0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwlh ZXNkCSRkYXQxLHE4Ci0rCWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNkCSRkYXQyLHE4Ci0rCWFl c2ltYwkkZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQzLHE4Ci0rCWFlc2ltYwkkZGF0MywkZGF0Mwot KwlhZXNkCSRkYXQ0LHE4Ci0rCWFlc2ltYwkkZGF0NCwkZGF0NAotKwl2bGQxLjMyCXtxOH0sWyRr ZXlfXSwjMTYKLSsJc3VicwkkY250LCRjbnQsIzIKLSsJYWVzZAkkZGF0MCxxOQotKwlhZXNpbWMJ JGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxOQotKwlhZXNpbWMJJGRhdDEsJGRhdDEKLSsJYWVz ZAkkZGF0MixxOQotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJYWVzZAkkZGF0MyxxOQotKwlhZXNp bWMJJGRhdDMsJGRhdDMKLSsJYWVzZAkkZGF0NCxxOQotKwlhZXNpbWMJJGRhdDQsJGRhdDQKLSsJ dmxkMS4zMgl7cTl9LFska2V5X10sIzE2Ci0rCWIuZ3QJLkxvb3A1eF9jYmNfZGVjCi0rCi0rCWFl c2QJJGRhdDAscTgKLSsJYWVzaW1jCSRkYXQwLCRkYXQwCi0rCWFlc2QJJGRhdDEscTgKLSsJYWVz aW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIscTgKLSsJYWVzaW1jCSRkYXQyLCRkYXQyCi0r CWFlc2QJJGRhdDMscTgKLSsJYWVzaW1jCSRkYXQzLCRkYXQzCi0rCWFlc2QJJGRhdDQscTgKLSsJ YWVzaW1jCSRkYXQ0LCRkYXQ0Ci0rCSBjbXAJJGxlbiwjMHg0MAkJLy8gYmVjYXVzZSAuTGNiY190 YWlsNHgKLSsJIHN1YgkkbGVuLCRsZW4sIzB4NTAKLSsKLSsJYWVzZAkkZGF0MCxxOQotKwlhZXNp bWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxOQotKwlhZXNpbWMJJGRhdDEsJGRhdDEKLSsJ YWVzZAkkZGF0MixxOQotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJYWVzZAkkZGF0MyxxOQotKwlh ZXNpbWMJJGRhdDMsJGRhdDMKLSsJYWVzZAkkZGF0NCxxOQotKwlhZXNpbWMJJGRhdDQsJGRhdDQK LSsJIGNzZWwJeDYseHpyLCRsZW4sZ3QJCS8vIGJvcnJvdyB4NiwgJGNudCwgImd0IiBpcyBub3Qg dHlwbwotKwkgbW92CSRrZXlfLCRrZXkKLSsKLSsJYWVzZAkkZGF0MCxxMTAKLSsJYWVzaW1jCSRk YXQwLCRkYXQwCi0rCWFlc2QJJGRhdDEscTEwCi0rCWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNk CSRkYXQyLHExMAotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJYWVzZAkkZGF0MyxxMTAKLSsJYWVz aW1jCSRkYXQzLCRkYXQzCi0rCWFlc2QJJGRhdDQscTEwCi0rCWFlc2ltYwkkZGF0NCwkZGF0NAot KwkgYWRkCSRpbnAsJGlucCx4NgkJLy8gJGlucCBpcyBhZGp1c3RlZCBpbiBzdWNoIHdheSB0aGF0 Ci0rCQkJCQkvLyBhdCBleGl0IGZyb20gdGhlIGxvb3AgJGRhdDEtJGRhdDQKLSsJCQkJCS8vIGFy ZSBsb2FkZWQgd2l0aCBsYXN0ICJ3b3JkcyIKLSsJIGFkZAl4NiwkbGVuLCMweDYwCQkvLyBiZWNh dXNlIC5MY2JjX3RhaWw0eAotKwotKwlhZXNkCSRkYXQwLHExMQotKwlhZXNpbWMJJGRhdDAsJGRh dDAKLSsJYWVzZAkkZGF0MSxxMTEKLSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIs cTExCi0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQzLHExMQotKwlhZXNpbWMJJGRh dDMsJGRhdDMKLSsJYWVzZAkkZGF0NCxxMTEKLSsJYWVzaW1jCSRkYXQ0LCRkYXQ0Ci0rCi0rCWFl c2QJJGRhdDAscTEyCi0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwlhZXNkCSRkYXQxLHExMgotKwlh ZXNpbWMJJGRhdDEsJGRhdDEKLSsJYWVzZAkkZGF0MixxMTIKLSsJYWVzaW1jCSRkYXQyLCRkYXQy Ci0rCWFlc2QJJGRhdDMscTEyCi0rCWFlc2ltYwkkZGF0MywkZGF0MwotKwlhZXNkCSRkYXQ0LHEx MgotKwlhZXNpbWMJJGRhdDQsJGRhdDQKLSsKLSsJYWVzZAkkZGF0MCxxMTMKLSsJYWVzaW1jCSRk YXQwLCRkYXQwCi0rCWFlc2QJJGRhdDEscTEzCi0rCWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNk CSRkYXQyLHExMwotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJYWVzZAkkZGF0MyxxMTMKLSsJYWVz aW1jCSRkYXQzLCRkYXQzCi0rCWFlc2QJJGRhdDQscTEzCi0rCWFlc2ltYwkkZGF0NCwkZGF0NAot KwotKwlhZXNkCSRkYXQwLHExNAotKwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxx MTQKLSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIscTE0Ci0rCWFlc2ltYwkkZGF0 MiwkZGF0MgotKwlhZXNkCSRkYXQzLHExNAotKwlhZXNpbWMJJGRhdDMsJGRhdDMKLSsJYWVzZAkk ZGF0NCxxMTQKLSsJYWVzaW1jCSRkYXQ0LCRkYXQ0Ci0gCi0rCSB2ZW9yCSR0bXAwLCRpdmVjLCRy bmRsYXN0Ci0rCWFlc2QJJGRhdDAscTE1Ci0rCSB2ZW9yCSR0bXAxLCRpbjAsJHJuZGxhc3QKLSsJ IHZsZDEuOAl7JGluMH0sWyRpbnBdLCMxNgotKwlhZXNkCSRkYXQxLHExNQotKwkgdmVvcgkkdG1w MiwkaW4xLCRybmRsYXN0Ci0rCSB2bGQxLjgJeyRpbjF9LFskaW5wXSwjMTYKLSsJYWVzZAkkZGF0 MixxMTUKLSsJIHZlb3IJJHRtcDMsJGluMiwkcm5kbGFzdAotKwkgdmxkMS44CXskaW4yfSxbJGlu cF0sIzE2Ci0rCWFlc2QJJGRhdDMscTE1Ci0rCSB2ZW9yCSR0bXA0LCRpbjMsJHJuZGxhc3QKLSsJ IHZsZDEuOAl7JGluM30sWyRpbnBdLCMxNgotKwlhZXNkCSRkYXQ0LHExNQotKwkgdm9ycgkkaXZl YywkaW40LCRpbjQKLSsJIHZsZDEuOAl7JGluNH0sWyRpbnBdLCMxNgotKwljYnoJeDYsLkxjYmNf dGFpbDR4Ci0rCSB2bGQxLjMyIHtxOH0sWyRrZXlfXSwjMTYJLy8gcmUtcHJlLWxvYWQgcm5ka2V5 WzBdCi0rCXZlb3IJJHRtcDAsJHRtcDAsJGRhdDAKLSsJIHZvcnIJJGRhdDAsJGluMCwkaW4wCi0r CXZlb3IJJHRtcDEsJHRtcDEsJGRhdDEKLSsJIHZvcnIJJGRhdDEsJGluMSwkaW4xCi0rCXZlb3IJ JHRtcDIsJHRtcDIsJGRhdDIKLSsJIHZvcnIJJGRhdDIsJGluMiwkaW4yCi0rCXZlb3IJJHRtcDMs JHRtcDMsJGRhdDMKLSsJIHZvcnIJJGRhdDMsJGluMywkaW4zCi0rCXZlb3IJJHRtcDQsJHRtcDQs JGRhdDQKLSsJdnN0MS44CXskdG1wMH0sWyRvdXRdLCMxNgotKwkgdm9ycgkkZGF0NCwkaW40LCRp bjQKLSsJdnN0MS44CXskdG1wMX0sWyRvdXRdLCMxNgotKwkgbW92CSRjbnQsJHJvdW5kcwotKwl2 c3QxLjgJeyR0bXAyfSxbJG91dF0sIzE2Ci0rCSB2bGQxLjMyIHtxOX0sWyRrZXlfXSwjMTYJLy8g cmUtcHJlLWxvYWQgcm5ka2V5WzFdCi0rCXZzdDEuOAl7JHRtcDN9LFskb3V0XSwjMTYKLSsJdnN0 MS44CXskdG1wNH0sWyRvdXRdLCMxNgotKwliLmhzCS5Mb29wNXhfY2JjX2RlYwotKwotKwlhZGQJ JGxlbiwkbGVuLCMweDUwCi0rCWNiegkkbGVuLC5MY2JjX2RvbmUKLSsKLSsJYWRkCSRjbnQsJHJv dW5kcywjMgotKwlzdWJzCSRsZW4sJGxlbiwjMHgzMAotKwl2b3JyCSRkYXQwLCRpbjIsJGluMgot Kwl2b3JyCSRpbjAsJGluMiwkaW4yCi0rCXZvcnIJJGRhdDEsJGluMywkaW4zCi0rCXZvcnIJJGlu MSwkaW4zLCRpbjMKLSsJdm9ycgkkZGF0MiwkaW40LCRpbjQKLSsJdm9ycgkkaW4yLCRpbjQsJGlu NAotKwliLmxvCS5MY2JjX2RlY190YWlsCi0rCi0rCWIJLkxvb3AzeF9jYmNfZGVjCi0rCi0rLmFs aWduCTQKLSsuTGNiY190YWlsNHg6Ci0rCXZlb3IJJHRtcDEsJHRtcDAsJGRhdDEKLSsJdmVvcgkk dG1wMiwkdG1wMiwkZGF0MgotKwl2ZW9yCSR0bXAzLCR0bXAzLCRkYXQzCi0rCXZlb3IJJHRtcDQs JHRtcDQsJGRhdDQKLSsJdnN0MS44CXskdG1wMX0sWyRvdXRdLCMxNgotKwl2c3QxLjgJeyR0bXAy fSxbJG91dF0sIzE2Ci0rCXZzdDEuOAl7JHRtcDN9LFskb3V0XSwjMTYKLSsJdnN0MS44CXskdG1w NH0sWyRvdXRdLCMxNgotKwotKwliCS5MY2JjX2RvbmUKLSsuYWxpZ24JNAotK19fXwotKyRjb2Rl Lj08PF9fXzsKLSAuTG9vcDN4X2NiY19kZWM6Ci0gCWFlc2QJJGRhdDAscTgKLSAJYWVzaW1jCSRk YXQwLCRkYXQwCi1AQCAtNjk2LDYgKzE3NTAsOSBAQCBteSAkc3RlcD0ieDEyIjsJCSMgYWxpYXNl cyB3aXRoICR0Y3RyMgotIG15ICgkZGF0MCwkZGF0MSwkaW4wLCRpbjEsJHRtcDAsJHRtcDEsJGl2 ZWMsJHJuZGxhc3QpPW1hcCgicSRfIiwoMC4uNykpOwotIG15ICgkZGF0MiwkaW4yLCR0bXAyKT1t YXAoInEkXyIsKDEwLDExLDkpKTsKLSAKLSsjIHVzZWQgb25seSBpbiA2NC1iaXQgbW9kZS4uLgot K215ICgkZGF0MywkZGF0NCwkaW4zLCRpbjQpPW1hcCgicSRfIiwoMTYuLjIzKSk7Ci0rCi0gbXkg KCRkYXQsJHRtcCk9KCRkYXQwLCR0bXAwKTsKLSAKLSAjIyMgcTgtcTE1CXByZWxvYWRlZCBrZXkg c2NoZWR1bGUKLUBAIC03NTEsNiArMTgwOCwxNzUgQEAgJGNvZGUuPTw8X19fOwotIAl2bW92LjMy CQkke2l2ZWN9WzNdLCR0Y3RyMgotIAlzdWIJCSRsZW4sJGxlbiwjMwkJLy8gYmlhcwotIAl2b3Jy CQkkZGF0MiwkaXZlYywkaXZlYwotK19fXwotKyRjb2RlLj08PF9fXwlpZiAoJGZsYXZvdXIgPX4g LzY0Lyk7Ci0rCWNtcAkJJGxlbiwjMgotKwliLmxvCQkuTG9vcDN4X2N0cjMyCi0rCi0rCWFkZAkJ dzEzLCRjdHIsIzEKLSsJYWRkCQl3MTQsJGN0ciwjMgotKwl2b3JyCQkkZGF0MywkZGF0MCwkZGF0 MAotKwlyZXYJCXcxMyx3MTMKLSsJdm9ycgkJJGRhdDQsJGRhdDAsJGRhdDAKLSsJcmV2CQl3MTQs dzE0Ci0rCXZtb3YuMzIJCSR7ZGF0M31bM10sdzEzCi0rCXN1YgkJJGxlbiwkbGVuLCMyCQkvLyBi aWFzCi0rCXZtb3YuMzIJCSR7ZGF0NH1bM10sdzE0Ci0rCWFkZAkJJGN0ciwkY3RyLCMyCi0rCWIJ CS5Mb29wNXhfY3RyMzIKLSsKLSsuYWxpZ24JNAotKy5Mb29wNXhfY3RyMzI6Ci0rCWFlc2UJCSRk YXQwLHE4Ci0rCWFlc21jCQkkZGF0MCwkZGF0MAotKwlhZXNlCQkkZGF0MSxxOAotKwlhZXNtYwkJ JGRhdDEsJGRhdDEKLSsJYWVzZQkJJGRhdDIscTgKLSsJYWVzbWMJCSRkYXQyLCRkYXQyCi0rCWFl c2UJCSRkYXQzLHE4Ci0rCWFlc21jCQkkZGF0MywkZGF0MwotKwlhZXNlCQkkZGF0NCxxOAotKwlh ZXNtYwkJJGRhdDQsJGRhdDQKLSsJdmxkMS4zMgkJe3E4fSxbJGtleV9dLCMxNgotKwlzdWJzCQkk Y250LCRjbnQsIzIKLSsJYWVzZQkJJGRhdDAscTkKLSsJYWVzbWMJCSRkYXQwLCRkYXQwCi0rCWFl c2UJCSRkYXQxLHE5Ci0rCWFlc21jCQkkZGF0MSwkZGF0MQotKwlhZXNlCQkkZGF0MixxOQotKwlh ZXNtYwkJJGRhdDIsJGRhdDIKLSsJYWVzZQkJJGRhdDMscTkKLSsJYWVzbWMJCSRkYXQzLCRkYXQz Ci0rCWFlc2UJCSRkYXQ0LHE5Ci0rCWFlc21jCQkkZGF0NCwkZGF0NAotKwl2bGQxLjMyCQl7cTl9 LFska2V5X10sIzE2Ci0rCWIuZ3QJCS5Mb29wNXhfY3RyMzIKLSsKLSsJbW92CQkka2V5Xywka2V5 Ci0rCWFlc2UJCSRkYXQwLHE4Ci0rCWFlc21jCQkkZGF0MCwkZGF0MAotKwlhZXNlCQkkZGF0MSxx OAotKwlhZXNtYwkJJGRhdDEsJGRhdDEKLSsJYWVzZQkJJGRhdDIscTgKLSsJYWVzbWMJCSRkYXQy LCRkYXQyCi0rCWFlc2UJCSRkYXQzLHE4Ci0rCWFlc21jCQkkZGF0MywkZGF0MwotKwlhZXNlCQkk ZGF0NCxxOAotKwlhZXNtYwkJJGRhdDQsJGRhdDQKLSsJdmxkMS4zMgkgCXtxOH0sWyRrZXlfXSwj MTYJLy8gcmUtcHJlLWxvYWQgcm5ka2V5WzBdCi0rCi0rCWFlc2UJCSRkYXQwLHE5Ci0rCWFlc21j CQkkZGF0MCwkZGF0MAotKwlhZXNlCQkkZGF0MSxxOQotKwlhZXNtYwkJJGRhdDEsJGRhdDEKLSsJ YWVzZQkJJGRhdDIscTkKLSsJYWVzbWMJCSRkYXQyLCRkYXQyCi0rCWFlc2UJCSRkYXQzLHE5Ci0r CWFlc21jCQkkZGF0MywkZGF0MwotKwlhZXNlCQkkZGF0NCxxOQotKwlhZXNtYwkJJGRhdDQsJGRh dDQKLSsJdmxkMS4zMgkgCXtxOX0sWyRrZXlfXSwjMTYJLy8gcmUtcHJlLWxvYWQgcm5ka2V5WzFd Ci0rCi0rCWFlc2UJCSRkYXQwLHExMgotKwlhZXNtYwkJJGRhdDAsJGRhdDAKLSsJIGFkZAkJJHRj dHIwLCRjdHIsIzEKLSsJIGFkZAkJJHRjdHIxLCRjdHIsIzIKLSsJYWVzZQkJJGRhdDEscTEyCi0r CWFlc21jCQkkZGF0MSwkZGF0MQotKwkgYWRkCQkkdGN0cjIsJGN0ciwjMwotKwkgYWRkCQl3MTMs JGN0ciwjNAotKwlhZXNlCQkkZGF0MixxMTIKLSsJYWVzbWMJCSRkYXQyLCRkYXQyCi0rCSBhZGQJ CXcxNCwkY3RyLCM1Ci0rCSByZXYJCSR0Y3RyMCwkdGN0cjAKLSsJYWVzZQkJJGRhdDMscTEyCi0r CWFlc21jCQkkZGF0MywkZGF0MwotKwkgcmV2CQkkdGN0cjEsJHRjdHIxCi0rCSByZXYJCSR0Y3Ry MiwkdGN0cjIKLSsJYWVzZQkJJGRhdDQscTEyCi0rCWFlc21jCQkkZGF0NCwkZGF0NAotKwkgcmV2 CQl3MTMsdzEzCi0rCSByZXYJCXcxNCx3MTQKLSsKLSsJYWVzZQkJJGRhdDAscTEzCi0rCWFlc21j CQkkZGF0MCwkZGF0MAotKwlhZXNlCQkkZGF0MSxxMTMKLSsJYWVzbWMJCSRkYXQxLCRkYXQxCi0r CWFlc2UJCSRkYXQyLHExMwotKwlhZXNtYwkJJGRhdDIsJGRhdDIKLSsJYWVzZQkJJGRhdDMscTEz Ci0rCWFlc21jCQkkZGF0MywkZGF0MwotKwlhZXNlCQkkZGF0NCxxMTMKLSsJYWVzbWMJCSRkYXQ0 LCRkYXQ0Ci0rCi0rCWFlc2UJCSRkYXQwLHExNAotKwlhZXNtYwkJJGRhdDAsJGRhdDAKLSsJIHZs ZDEuOAkJeyRpbjB9LFskaW5wXSwjMTYKLSsJYWVzZQkJJGRhdDEscTE0Ci0rCWFlc21jCQkkZGF0 MSwkZGF0MQotKwkgdmxkMS44CQl7JGluMX0sWyRpbnBdLCMxNgotKwlhZXNlCQkkZGF0MixxMTQK LSsJYWVzbWMJCSRkYXQyLCRkYXQyCi0rCSB2bGQxLjgJCXskaW4yfSxbJGlucF0sIzE2Ci0rCWFl c2UJCSRkYXQzLHExNAotKwlhZXNtYwkJJGRhdDMsJGRhdDMKLSsJIHZsZDEuOAkJeyRpbjN9LFsk aW5wXSwjMTYKLSsJYWVzZQkJJGRhdDQscTE0Ci0rCWFlc21jCQkkZGF0NCwkZGF0NAotKwkgdmxk MS44CQl7JGluNH0sWyRpbnBdLCMxNgotKwotKwlhZXNlCQkkZGF0MCxxMTUKLSsJIHZlb3IJCSRp bjAsJGluMCwkcm5kbGFzdAotKwlhZXNlCQkkZGF0MSxxMTUKLSsJIHZlb3IJCSRpbjEsJGluMSwk cm5kbGFzdAotKwlhZXNlCQkkZGF0MixxMTUKLSsJIHZlb3IJCSRpbjIsJGluMiwkcm5kbGFzdAot KwlhZXNlCQkkZGF0MyxxMTUKLSsJIHZlb3IJCSRpbjMsJGluMywkcm5kbGFzdAotKwlhZXNlCQkk ZGF0NCxxMTUKLSsJIHZlb3IJCSRpbjQsJGluNCwkcm5kbGFzdAotKwotKwl2ZW9yCQkkaW4wLCRp bjAsJGRhdDAKLSsJIHZvcnIJCSRkYXQwLCRpdmVjLCRpdmVjCi0rCXZlb3IJCSRpbjEsJGluMSwk ZGF0MQotKwkgdm9ycgkJJGRhdDEsJGl2ZWMsJGl2ZWMKLSsJdmVvcgkJJGluMiwkaW4yLCRkYXQy Ci0rCSB2b3JyCQkkZGF0MiwkaXZlYywkaXZlYwotKwl2ZW9yCQkkaW4zLCRpbjMsJGRhdDMKLSsJ IHZvcnIJCSRkYXQzLCRpdmVjLCRpdmVjCi0rCXZlb3IJCSRpbjQsJGluNCwkZGF0NAotKwkgdm9y cgkJJGRhdDQsJGl2ZWMsJGl2ZWMKLSsKLSsJdnN0MS44CQl7JGluMH0sWyRvdXRdLCMxNgotKwkg dm1vdi4zMgkke2RhdDB9WzNdLCR0Y3RyMAotKwl2c3QxLjgJCXskaW4xfSxbJG91dF0sIzE2Ci0r CSB2bW92LjMyCSR7ZGF0MX1bM10sJHRjdHIxCi0rCXZzdDEuOAkJeyRpbjJ9LFskb3V0XSwjMTYK LSsJIHZtb3YuMzIJJHtkYXQyfVszXSwkdGN0cjIKLSsJdnN0MS44CQl7JGluM30sWyRvdXRdLCMx NgotKwkgdm1vdi4zMgkke2RhdDN9WzNdLHcxMwotKwl2c3QxLjgJCXskaW40fSxbJG91dF0sIzE2 Ci0rCSB2bW92LjMyCSR7ZGF0NH1bM10sdzE0Ci0rCi0rCW1vdgkJJGNudCwkcm91bmRzCi0rCWNi egkJJGxlbiwuTGN0cjMyX2RvbmUKLSsKLSsJYWRkCQkkY3RyLCRjdHIsIzUKLSsJc3VicwkJJGxl biwkbGVuLCM1Ci0rCWIuaHMJCS5Mb29wNXhfY3RyMzIKLSsKLSsJYWRkCQkkbGVuLCRsZW4sIzUK LSsJc3ViCQkkY3RyLCRjdHIsIzUKLSsKLSsJY21wCQkkbGVuLCMyCi0rCW1vdgkJJHN0ZXAsIzE2 Ci0rCWNjbHIJCSRzdGVwLGxvCi0rCWIubHMJCS5MY3RyMzJfdGFpbAotKwotKwlzdWIJCSRsZW4s JGxlbiwjMwkJLy8gYmlhcwotKwlhZGQJCSRjdHIsJGN0ciwjMwotK19fXwotKyRjb2RlLj08PF9f XzsKLSAJYgkJLkxvb3AzeF9jdHIzMgotIAotIC5hbGlnbgk0Ci1AQCAtOTA1LDYgKzIxMzEsMTQz MiBAQCAkY29kZS49PDxfX187Ci0gLnNpemUJJHtwcmVmaXh9X2N0cjMyX2VuY3J5cHRfYmxvY2tz LC4tJHtwcmVmaXh9X2N0cjMyX2VuY3J5cHRfYmxvY2tzCi0gX19fCi0gfX19Ci0rIyBQZXJmb3Jt YW5jZSBpbiBjeWNsZXMgcGVyIGJ5dGUuCi0rIyBQcm9jZXNzZWQgd2l0aCBBRVMtWFRTIGRpZmZl cmVudCBrZXkgc2l6ZS4KLSsjIEl0IHNob3dzIHRoZSB2YWx1ZSBiZWZvcmUgYW5kIGFmdGVyIG9w dGltaXphdGlvbiBhcyBiZWxvdzoKLSsjIChiZWZvcmUvYWZ0ZXIpOgotKyMKLSsjCQlBRVMtMTI4 LVhUUwkJQUVTLTI1Ni1YVFMKLSsjIENvcnRleC1BNTcJMy4zNi8xLjA5CQk0LjAyLzEuMzcKLSsj IENvcnRleC1BNzIJMy4wMy8xLjAyCQkzLjI4LzEuMzMKLSsKLSsjIE9wdGltaXphdGlvbiBpcyBp bXBsZW1lbnRlZCBieSBsb29wIHVucm9sbGluZyBhbmQgaW50ZXJsZWF2aW5nLgotKyMgQ29tbW9u bHksIHdlIGNob29zZSB0aGUgdW5yb2xsaW5nIGZhY3RvciBhcyA1LCBpZiB0aGUgaW5wdXQKLSsj IGRhdGEgc2l6ZSBzbWFsbGVyIHRoYW4gNSBibG9ja3MsIGJ1dCBub3Qgc21hbGxlciB0aGFuIDMg YmxvY2tzLAotKyMgY2hvb3NlIDMgYXMgdGhlIHVucm9sbGluZyBmYWN0b3IuCi0rIyBJZiB0aGUg aW5wdXQgZGF0YSBzaXplIGRzaXplID49IDUqMTYgYnl0ZXMsIHRoZW4gdGFrZSA1IGJsb2Nrcwot KyMgYXMgb25lIGl0ZXJhdGlvbiwgZXZlcnkgbG9vcCB0aGUgbGVmdCBzaXplIGxzaXplIC09IDUq MTYuCi0rIyBJZiBsc2l6ZSA8IDUqMTYgYnl0ZXMsIHRyZWF0IHRoZW0gYXMgdGhlIHRhaWwuIE5v dGU6IGxlZnQgNCoxNiBieXRlcwotKyMgd2lsbCBiZSBwcm9jZXNzZWQgc3BlY2lhbGx5LCB3aGlj aCBiZSBpbnRlZ3JhdGVkIGludG8gdGhlIDUqMTYgYnl0ZXMKLSsjIGxvb3AgdG8gaW1wcm92ZSB0 aGUgZWZmaWNpZW5jeS4KLSsjIFRoZXJlIGlzIG9uZSBzcGVjaWFsIGNhc2UsIGlmIHRoZSBvcmln aW5hbCBpbnB1dCBkYXRhIHNpemUgZHNpemUKLSsjID0gMTYgYnl0ZXMsIHdlIHdpbGwgdHJlYXQg aXQgc2VwZXJhdGVseSB0byBpbXByb3ZlIHRoZQotKyMgcGVyZm9ybWFuY2U6IG9uZSBpbmRlcGVu ZGVudCBjb2RlIGJsb2NrIHdpdGhvdXQgTFIsIEZQIGxvYWQgYW5kCi0rIyBzdG9yZS4KLSsjIEVu Y3J5cHRpb24gd2lsbCBwcm9jZXNzIHRoZSAobGVuZ3RoIC10YWlsY250KSBieXRlcyBhcyBtZW50 aW9uZWQKLSsjIHByZXZpb3VzbHksIHRoZW4gZW5jcnlwdCB0aGUgY29tcG9zaXRlIGJsb2NrIGFz IGxhc3Qgc2Vjb25kCi0rIyBjaXBoZXIgYmxvY2suCi0rIyBEZWNyeXB0aW9uIHdpbGwgcHJvY2Vz cyB0aGUgKGxlbmd0aCAtdGFpbGNudCAtMSkgYnl0ZXMgYXMgbWVudGlvbmVkCi0rIyBwcmV2aW91 c2x5LCB0aGVuIGRlY3J5cHQgdGhlIGxhc3Qgc2Vjb25kIGNpcGhlciBibG9jayB0byBnZXQgdGhl Ci0rIyBsYXN0IHBsYWluIGJsb2NrKHRhaWwpLCBkZWNyeXB0IHRoZSBjb21wb3NpdGUgYmxvY2sg YXMgbGFzdCBzZWNvbmQKLSsjIHBsYWluIHRleHQgYmxvY2suCi0rCi0re3t7Ci0rbXkgKCRpbnAs JG91dCwkbGVuLCRrZXkxLCRrZXkyLCRpdnApPW1hcCgieCRfIiwoMC4uNSkpOwotK215ICgkcm91 bmRzMCwkcm91bmRzLCRrZXlfLCRzdGVwLCRpdmwsJGl2aCk9KCJ3NSIsInc2IiwieDciLCJ4OCIs Ing5IiwieDEwIik7Ci0rbXkgKCR0bXBvdXRwLCRsb3V0cCwkbDJvdXRwLCR0bXBpbnApPSgieDEz IiwidzE0IiwidzE1IiwieDIwIik7Ci0rbXkgKCR0YWlsY250LCRtaWRudW0sJG1pZG51bXgsJGNv bnN0bnVtLCRjb25zdG51bXgpPSgieDIxIiwidzIyIiwieDIyIiwidzE5IiwieDE5Iik7Ci0rbXkg KCR4b2Zmc2V0LCR0bXBteCwkdG1wbXcpPSgieDYiLCJ4MTEiLCJ3MTEiKTsKLStteSAoJGRhdDAs JGRhdDEsJGluMCwkaW4xLCR0bXAwLCR0bXAxLCR0bXAyLCRybmRsYXN0KT1tYXAoInEkXyIsKDAu LjcpKTsKLStteSAoJGl2MCwkaXYxLCRpdjIsJGl2MywkaXY0KT0oInY2LjE2YiIsInY4LjE2YiIs InY5LjE2YiIsInYxMC4xNmIiLCJ2MTEuMTZiIik7Ci0rbXkgKCRpdmQwMCwkaXZkMDEsJGl2ZDIw LCRpdmQyMSk9KCJkNiIsInY2LmRbMV0iLCJkOSIsInY5LmRbMV0iKTsKLStteSAoJGl2ZDEwLCRp dmQxMSwkaXZkMzAsJGl2ZDMxLCRpdmQ0MCwkaXZkNDEpPSgiZDgiLCJ2OC5kWzFdIiwiZDEwIiwi djEwLmRbMV0iLCJkMTEiLCJ2MTEuZFsxXSIpOwotKwotK215ICgkdG1waW4pPSgidjI2LjE2YiIp OwotK215ICgkZGF0LCR0bXAsJHJuZHplcm9fbl9sYXN0KT0oJGRhdDAsJHRtcDAsJHRtcDEpOwot KwotKyMgcTcJbGFzdCByb3VuZCBrZXkKLSsjIHExMC1xMTUsIHE3CUxhc3QgNyByb3VuZCBrZXlz Ci0rIyBxOC1xOQlwcmVsb2FkZWQgcm91bmQga2V5cyBleGNlcHQgbGFzdCA3IGtleXMgZm9yIGJp ZyBzaXplCi0rIyBxMjAsIHEyMSwgcTgtcTkJcHJlbG9hZGVkIHJvdW5kIGtleXMgZXhjZXB0IGxh c3QgNyBrZXlzIGZvciBvbmx5IDE2IGJ5dGUKLSsKLSsKLStteSAoJGRhdDIsJGluMiwkdG1wMik9 bWFwKCJxJF8iLCgxMCwxMSw5KSk7Ci0rCi0rbXkgKCRkYXQzLCRpbjMsJHRtcDMpOwkjIHVzZWQg b25seSBpbiA2NC1iaXQgbW9kZQotK215ICgkZGF0NCwkaW40LCR0bXA0KTsKLStpZiAoJGZsYXZv dXIgPX4gLzY0LykgewotKyAgICAoJGRhdDIsJGRhdDMsJGRhdDQsJGluMiwkaW4zLCRpbjQsJHRt cDMsJHRtcDQpPW1hcCgicSRfIiwoMTYuLjIzKSk7Ci0rfQotKwotKyRjb2RlLj08PF9fXwlpZiAo JGZsYXZvdXIgPX4gLzY0Lyk7Ci0rLmdsb2JsCSR7cHJlZml4fV94dHNfZW5jcnlwdAotKy50eXBl CSR7cHJlZml4fV94dHNfZW5jcnlwdCwlZnVuY3Rpb24KLSsuYWxpZ24JNQotKyR7cHJlZml4fV94 dHNfZW5jcnlwdDoKLStfX18KLSskY29kZS49PDxfX18JaWYgKCRmbGF2b3VyID1+IC82NC8pOwot KwljbXAJJGxlbiwjMTYKLSsJLy8gT3JpZ2luYWwgaW5wdXQgZGF0YSBzaXplIGJpZ2dlciB0aGFu IDE2LCBqdW1wIHRvIGJpZyBzaXplIHByb2Nlc3NpbmcuCi0rCWIubmUJLkx4dHNfZW5jX2JpZ19z aXplCi0rCS8vIEVuY3J5cHQgdGhlIGl2IHdpdGgga2V5MiwgYXMgdGhlIGZpcnN0IFhFWCBpdi4K LSsJbGRyCSRyb3VuZHMsWyRrZXkyLCMyNDBdCi0rCXZsZDEuOAl7JGRhdH0sWyRrZXkyXSwjMTYK LSsJdmxkMS44CXskaXYwfSxbJGl2cF0KLSsJc3ViCSRyb3VuZHMsJHJvdW5kcywjMgotKwl2bGQx LjgJeyRkYXQxfSxbJGtleTJdLCMxNgotKwotKy5Mb29wX2VuY19pdl9lbmM6Ci0rCWFlc2UJJGl2 MCwkZGF0Ci0rCWFlc21jCSRpdjAsJGl2MAotKwl2bGQxLjMyCXskZGF0fSxbJGtleTJdLCMxNgot KwlzdWJzCSRyb3VuZHMsJHJvdW5kcywjMgotKwlhZXNlCSRpdjAsJGRhdDEKLSsJYWVzbWMJJGl2 MCwkaXYwCi0rCXZsZDEuMzIJeyRkYXQxfSxbJGtleTJdLCMxNgotKwliLmd0CS5Mb29wX2VuY19p dl9lbmMKLSsKLSsJYWVzZQkkaXYwLCRkYXQKLSsJYWVzbWMJJGl2MCwkaXYwCi0rCXZsZDEuMzIJ eyRkYXR9LFska2V5Ml0KLSsJYWVzZQkkaXYwLCRkYXQxCi0rCXZlb3IJJGl2MCwkaXYwLCRkYXQK LSsKLSsJdmxkMS44CXskZGF0MH0sWyRpbnBdCi0rCXZlb3IJJGRhdDAsJGl2MCwkZGF0MAotKwot KwlsZHIJJHJvdW5kcyxbJGtleTEsIzI0MF0KLSsJdmxkMS4zMgl7cTIwLXEyMX0sWyRrZXkxXSwj MzIJCS8vIGxvYWQga2V5IHNjaGVkdWxlLi4uCi0rCi0rCWFlc2UJJGRhdDAscTIwCi0rCWFlc21j CSRkYXQwLCRkYXQwCi0rCXZsZDEuMzIJe3E4LXE5fSxbJGtleTFdLCMzMgkJLy8gbG9hZCBrZXkg c2NoZWR1bGUuLi4KLSsJYWVzZQkkZGF0MCxxMjEKLSsJYWVzbWMJJGRhdDAsJGRhdDAKLSsJc3Vi cwkkcm91bmRzLCRyb3VuZHMsIzEwCQkvLyBpZiByb3VuZHM9PTEwLCBqdW1wIHRvIGFlcy0xMjgt eHRzIHByb2Nlc3NpbmcKLSsJYi5lcQkuTHh0c18xMjhfZW5jCi0rLkx4dHNfZW5jX3JvdW5kX2xv b3A6Ci0rCWFlc2UJJGRhdDAscTgKLSsJYWVzbWMJJGRhdDAsJGRhdDAKLSsJdmxkMS4zMgl7cTh9 LFska2V5MV0sIzE2CQkvLyBsb2FkIGtleSBzY2hlZHVsZS4uLgotKwlhZXNlCSRkYXQwLHE5Ci0r CWFlc21jCSRkYXQwLCRkYXQwCi0rCXZsZDEuMzIJe3E5fSxbJGtleTFdLCMxNgkJLy8gbG9hZCBr ZXkgc2NoZWR1bGUuLi4KLSsJc3Vicwkkcm91bmRzLCRyb3VuZHMsIzIJCS8vIGJpYXMKLSsJYi5n dAkuTHh0c19lbmNfcm91bmRfbG9vcAotKy5MeHRzXzEyOF9lbmM6Ci0rCXZsZDEuMzIJe3ExMC1x MTF9LFska2V5MV0sIzMyCQkvLyBsb2FkIGtleSBzY2hlZHVsZS4uLgotKwlhZXNlCSRkYXQwLHE4 Ci0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDAscTkKLSsJYWVzbWMJJGRhdDAsJGRh dDAKLSsJdmxkMS4zMgl7cTEyLXExM30sWyRrZXkxXSwjMzIJCS8vIGxvYWQga2V5IHNjaGVkdWxl Li4uCi0rCWFlc2UJJGRhdDAscTEwCi0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDAs cTExCi0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCXZsZDEuMzIJe3ExNC1xMTV9LFska2V5MV0sIzMy CQkvLyBsb2FkIGtleSBzY2hlZHVsZS4uLgotKwlhZXNlCSRkYXQwLHExMgotKwlhZXNtYwkkZGF0 MCwkZGF0MAotKwlhZXNlCSRkYXQwLHExMwotKwlhZXNtYwkkZGF0MCwkZGF0MAotKwl2bGQxLjMy CXskcm5kbGFzdH0sWyRrZXkxXQotKwlhZXNlCSRkYXQwLHExNAotKwlhZXNtYwkkZGF0MCwkZGF0 MAotKwlhZXNlCSRkYXQwLHExNQotKwl2ZW9yCSRkYXQwLCRkYXQwLCRybmRsYXN0Ci0rCXZlb3IJ JGRhdDAsJGRhdDAsJGl2MAotKwl2c3QxLjgJeyRkYXQwfSxbJG91dF0KLSsJYgkuTHh0c19lbmNf ZmluYWxfYWJvcnQKLSsKLSsuYWxpZ24JNAotKy5MeHRzX2VuY19iaWdfc2l6ZToKLStfX18KLSsk Y29kZS49PDxfX18JaWYgKCRmbGF2b3VyID1+IC82NC8pOwotKwlzdHAJJGNvbnN0bnVteCwkdG1w aW5wLFtzcCwjLTY0XSEKLSsJc3RwCSR0YWlsY250LCRtaWRudW14LFtzcCwjNDhdCi0rCXN0cAkk aXZkMTAsJGl2ZDIwLFtzcCwjMzJdCi0rCXN0cAkkaXZkMzAsJGl2ZDQwLFtzcCwjMTZdCi0rCi0r CS8vIHRhaWxjbnQgc3RvcmUgdGhlIHRhaWwgdmFsdWUgb2YgbGVuZ3RoJTE2LgotKwlhbmQJJHRh aWxjbnQsJGxlbiwjMHhmCi0rCWFuZAkkbGVuLCRsZW4sIy0xNgotKwlzdWJzCSRsZW4sJGxlbiwj MTYKLSsJbW92CSRzdGVwLCMxNgotKwliLmxvCS5MeHRzX2Fib3J0Ci0rCWNzZWwJJHN0ZXAseHpy LCRzdGVwLGVxCi0rCi0rCS8vIEZpcnN0bHksIGVuY3J5cHQgdGhlIGl2IHdpdGgga2V5MiwgYXMg dGhlIGZpcnN0IGl2IG9mIFhFWC4KLSsJbGRyCSRyb3VuZHMsWyRrZXkyLCMyNDBdCi0rCXZsZDEu MzIJeyRkYXR9LFska2V5Ml0sIzE2Ci0rCXZsZDEuOAl7JGl2MH0sWyRpdnBdCi0rCXN1Ygkkcm91 bmRzLCRyb3VuZHMsIzIKLSsJdmxkMS4zMgl7JGRhdDF9LFska2V5Ml0sIzE2Ci0rCi0rLkxvb3Bf aXZfZW5jOgotKwlhZXNlCSRpdjAsJGRhdAotKwlhZXNtYwkkaXYwLCRpdjAKLSsJdmxkMS4zMgl7 JGRhdH0sWyRrZXkyXSwjMTYKLSsJc3Vicwkkcm91bmRzLCRyb3VuZHMsIzIKLSsJYWVzZQkkaXYw LCRkYXQxCi0rCWFlc21jCSRpdjAsJGl2MAotKwl2bGQxLjMyCXskZGF0MX0sWyRrZXkyXSwjMTYK LSsJYi5ndAkuTG9vcF9pdl9lbmMKLSsKLSsJYWVzZQkkaXYwLCRkYXQKLSsJYWVzbWMJJGl2MCwk aXYwCi0rCXZsZDEuMzIJeyRkYXR9LFska2V5Ml0KLSsJYWVzZQkkaXYwLCRkYXQxCi0rCXZlb3IJ JGl2MCwkaXYwLCRkYXQKLSsKLSsJLy8gVGhlIGl2IGZvciBzZWNvbmQgYmxvY2sKLSsJLy8gJGl2 bC0gaXYobG93KSwgJGl2aCAtIGl2KGhpZ2gpCi0rCS8vIHRoZSBmaXZlIGl2cyBzdG9yZWQgaW50 bywgJGl2MCwkaXYxLCRpdjIsJGl2MywkaXY0Ci0rCWZtb3YJJGl2bCwkaXZkMDAKLSsJZm1vdgkk aXZoLCRpdmQwMQotKwltb3YJJGNvbnN0bnVtLCMweDg3Ci0rCWV4dHIJJG1pZG51bXgsJGl2aCwk aXZoLCMzMgotKwlleHRyCSRpdmgsJGl2aCwkaXZsLCM2MwotKwlhbmQJJHRtcG13LCRjb25zdG51 bSwkbWlkbnVtLGFzciMzMQotKwllb3IJJGl2bCwkdG1wbXgsJGl2bCxsc2wjMQotKwlmbW92CSRp dmQxMCwkaXZsCi0rCWZtb3YJJGl2ZDExLCRpdmgKLSsKLSsJbGRyCSRyb3VuZHMwLFska2V5MSwj MjQwXQkJLy8gbmV4dCBzdGFydGluZyBwb2ludAotKwl2bGQxLjgJeyRkYXR9LFskaW5wXSwkc3Rl cAotKwotKwl2bGQxLjMyCXtxOC1xOX0sWyRrZXkxXQkJCS8vIGxvYWQga2V5IHNjaGVkdWxlLi4u Ci0rCXN1Ygkkcm91bmRzMCwkcm91bmRzMCwjNgotKwlhZGQJJGtleV8sJGtleTEsJGl2cCxsc2wj NAkJLy8gcG9pbnRlciB0byBsYXN0IDcgcm91bmQga2V5cwotKwlzdWIJJHJvdW5kczAsJHJvdW5k czAsIzIKLSsJdmxkMS4zMgl7cTEwLXExMX0sWyRrZXlfXSwjMzIKLSsJdmxkMS4zMgl7cTEyLXEx M30sWyRrZXlfXSwjMzIKLSsJdmxkMS4zMgl7cTE0LXExNX0sWyRrZXlfXSwjMzIKLSsJdmxkMS4z Mgl7JHJuZGxhc3R9LFska2V5X10KLSsKLSsJYWRkCSRrZXlfLCRrZXkxLCMzMgotKwltb3YJJHJv dW5kcywkcm91bmRzMAotKwotKwkvLyBFbmNyeXB0aW9uCi0rLkx4dHNfZW5jOgotKwl2bGQxLjgJ eyRkYXQyfSxbJGlucF0sIzE2Ci0rCXN1YnMJJGxlbiwkbGVuLCMzMgkJCS8vIGJpYXMKLSsJYWRk CSRyb3VuZHMsJHJvdW5kczAsIzIKLSsJdm9ycgkkaW4xLCRkYXQsJGRhdAotKwl2b3JyCSRkYXQx LCRkYXQsJGRhdAotKwl2b3JyCSRpbjMsJGRhdCwkZGF0Ci0rCXZvcnIJJGluMiwkZGF0MiwkZGF0 MgotKwl2b3JyCSRpbjQsJGRhdDIsJGRhdDIKLSsJYi5sbwkuTHh0c19pbm5lcl9lbmNfdGFpbAot Kwl2ZW9yCSRkYXQsJGRhdCwkaXYwCQkJLy8gYmVmb3JlIGVuY3J5cHRpb24sIHhvciB3aXRoIGl2 Ci0rCXZlb3IJJGRhdDIsJGRhdDIsJGl2MQotKwotKwkvLyBUaGUgaXYgZm9yIHRoaXJkIGJsb2Nr Ci0rCWV4dHIJJG1pZG51bXgsJGl2aCwkaXZoLCMzMgotKwlleHRyCSRpdmgsJGl2aCwkaXZsLCM2 MwotKwlhbmQJJHRtcG13LCRjb25zdG51bSwkbWlkbnVtLGFzciMzMQotKwllb3IJJGl2bCwkdG1w bXgsJGl2bCxsc2wjMQotKwlmbW92CSRpdmQyMCwkaXZsCi0rCWZtb3YJJGl2ZDIxLCRpdmgKLSsK LSsKLSsJdm9ycgkkZGF0MSwkZGF0MiwkZGF0MgotKwl2bGQxLjgJeyRkYXQyfSxbJGlucF0sIzE2 Ci0rCXZvcnIJJGluMCwkZGF0LCRkYXQKLSsJdm9ycgkkaW4xLCRkYXQxLCRkYXQxCi0rCXZlb3IJ JGluMiwkZGF0MiwkaXYyIAkJLy8gdGhlIHRoaXJkIGJsb2NrCi0rCXZlb3IJJGRhdDIsJGRhdDIs JGl2MgotKwljbXAJJGxlbiwjMzIKLSsJYi5sbwkuTHh0c19vdXRlcl9lbmNfdGFpbAotKwotKwkv LyBUaGUgaXYgZm9yIGZvdXJ0aCBibG9jawotKwlleHRyCSRtaWRudW14LCRpdmgsJGl2aCwjMzIK LSsJZXh0cgkkaXZoLCRpdmgsJGl2bCwjNjMKLSsJYW5kCSR0bXBtdywkY29uc3RudW0sJG1pZG51 bSxhc3IjMzEKLSsJZW9yCSRpdmwsJHRtcG14LCRpdmwsbHNsIzEKLSsJZm1vdgkkaXZkMzAsJGl2 bAotKwlmbW92CSRpdmQzMSwkaXZoCi0rCi0rCXZsZDEuOAl7JGRhdDN9LFskaW5wXSwjMTYKLSsJ Ly8gVGhlIGl2IGZvciBmaWZ0aCBibG9jawotKwlleHRyCSRtaWRudW14LCRpdmgsJGl2aCwjMzIK LSsJZXh0cgkkaXZoLCRpdmgsJGl2bCwjNjMKLSsJYW5kCSR0bXBtdywkY29uc3RudW0sJG1pZG51 bSxhc3IjMzEKLSsJZW9yCSRpdmwsJHRtcG14LCRpdmwsbHNsIzEKLSsJZm1vdgkkaXZkNDAsJGl2 bAotKwlmbW92CSRpdmQ0MSwkaXZoCi0rCi0rCXZsZDEuOAl7JGRhdDR9LFskaW5wXSwjMTYKLSsJ dmVvcgkkZGF0MywkZGF0MywkaXYzCQkvLyB0aGUgZm91cnRoIGJsb2NrCi0rCXZlb3IJJGRhdDQs JGRhdDQsJGl2NAotKwlzdWIJJGxlbiwkbGVuLCMzMgkJCS8vIGJpYXMKLSsJbW92CSRyb3VuZHMs JHJvdW5kczAKLSsJYgkuTG9vcDV4X3h0c19lbmMKLSsKLSsuYWxpZ24JNAotKy5Mb29wNXhfeHRz X2VuYzoKLSsJYWVzZQkkZGF0MCxxOAotKwlhZXNtYwkkZGF0MCwkZGF0MAotKwlhZXNlCSRkYXQx LHE4Ci0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTgKLSsJYWVzbWMJJGRhdDIs JGRhdDIKLSsJYWVzZQkkZGF0MyxxOAotKwlhZXNtYwkkZGF0MywkZGF0MwotKwlhZXNlCSRkYXQ0 LHE4Ci0rCWFlc21jCSRkYXQ0LCRkYXQ0Ci0rCXZsZDEuMzIJe3E4fSxbJGtleV9dLCMxNgotKwlz dWJzCSRyb3VuZHMsJHJvdW5kcywjMgotKwlhZXNlCSRkYXQwLHE5Ci0rCWFlc21jCSRkYXQwLCRk YXQwCi0rCWFlc2UJJGRhdDEscTkKLSsJYWVzbWMJJGRhdDEsJGRhdDEKLSsJYWVzZQkkZGF0Mixx OQotKwlhZXNtYwkkZGF0MiwkZGF0MgotKwlhZXNlCSRkYXQzLHE5Ci0rCWFlc21jCSRkYXQzLCRk YXQzCi0rCWFlc2UJJGRhdDQscTkKLSsJYWVzbWMJJGRhdDQsJGRhdDQKLSsJdmxkMS4zMgl7cTl9 LFska2V5X10sIzE2Ci0rCWIuZ3QJLkxvb3A1eF94dHNfZW5jCi0rCi0rCWFlc2UJJGRhdDAscTgK LSsJYWVzbWMJJGRhdDAsJGRhdDAKLSsJYWVzZQkkZGF0MSxxOAotKwlhZXNtYwkkZGF0MSwkZGF0 MQotKwlhZXNlCSRkYXQyLHE4Ci0rCWFlc21jCSRkYXQyLCRkYXQyCi0rCWFlc2UJJGRhdDMscTgK LSsJYWVzbWMJJGRhdDMsJGRhdDMKLSsJYWVzZQkkZGF0NCxxOAotKwlhZXNtYwkkZGF0NCwkZGF0 NAotKwlzdWJzCSRsZW4sJGxlbiwjMHg1MAkJCS8vIGJlY2F1c2UgLkx4dHNfZW5jX3RhaWw0eAot KwotKwlhZXNlCSRkYXQwLHE5Ci0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDEscTkK LSsJYWVzbWMJJGRhdDEsJGRhdDEKLSsJYWVzZQkkZGF0MixxOQotKwlhZXNtYwkkZGF0MiwkZGF0 MgotKwlhZXNlCSRkYXQzLHE5Ci0rCWFlc21jCSRkYXQzLCRkYXQzCi0rCWFlc2UJJGRhdDQscTkK LSsJYWVzbWMJJGRhdDQsJGRhdDQKLSsJY3NlbAkkeG9mZnNldCx4enIsJGxlbixndAkJLy8gYm9y cm93IHg2LCB3NiwgImd0IiBpcyBub3QgdHlwbwotKwltb3YJJGtleV8sJGtleTEKLSsKLSsJYWVz ZQkkZGF0MCxxMTAKLSsJYWVzbWMJJGRhdDAsJGRhdDAKLSsJYWVzZQkkZGF0MSxxMTAKLSsJYWVz bWMJJGRhdDEsJGRhdDEKLSsJYWVzZQkkZGF0MixxMTAKLSsJYWVzbWMJJGRhdDIsJGRhdDIKLSsJ YWVzZQkkZGF0MyxxMTAKLSsJYWVzbWMJJGRhdDMsJGRhdDMKLSsJYWVzZQkkZGF0NCxxMTAKLSsJ YWVzbWMJJGRhdDQsJGRhdDQKLSsJYWRkCSRpbnAsJGlucCwkeG9mZnNldAkJLy8geDAgaXMgYWRq dXN0ZWQgaW4gc3VjaCB3YXkgdGhhdAotKwkJCQkJCS8vIGF0IGV4aXQgZnJvbSB0aGUgbG9vcCB2 MS4xNmItdjI2LjE2YgotKwkJCQkJCS8vIGFyZSBsb2FkZWQgd2l0aCBsYXN0ICJ3b3JkcyIKLSsJ YWRkCSR4b2Zmc2V0LCRsZW4sIzB4NjAJCS8vIGJlY2F1c2UgLkx4dHNfZW5jX3RhaWw0eAotKwot KwlhZXNlCSRkYXQwLHExMQotKwlhZXNtYwkkZGF0MCwkZGF0MAotKwlhZXNlCSRkYXQxLHExMQot KwlhZXNtYwkkZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQyLHExMQotKwlhZXNtYwkkZGF0MiwkZGF0 MgotKwlhZXNlCSRkYXQzLHExMQotKwlhZXNtYwkkZGF0MywkZGF0MwotKwlhZXNlCSRkYXQ0LHEx MQotKwlhZXNtYwkkZGF0NCwkZGF0NAotKwotKwlhZXNlCSRkYXQwLHExMgotKwlhZXNtYwkkZGF0 MCwkZGF0MAotKwlhZXNlCSRkYXQxLHExMgotKwlhZXNtYwkkZGF0MSwkZGF0MQotKwlhZXNlCSRk YXQyLHExMgotKwlhZXNtYwkkZGF0MiwkZGF0MgotKwlhZXNlCSRkYXQzLHExMgotKwlhZXNtYwkk ZGF0MywkZGF0MwotKwlhZXNlCSRkYXQ0LHExMgotKwlhZXNtYwkkZGF0NCwkZGF0NAotKwotKwlh ZXNlCSRkYXQwLHExMwotKwlhZXNtYwkkZGF0MCwkZGF0MAotKwlhZXNlCSRkYXQxLHExMwotKwlh ZXNtYwkkZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQyLHExMwotKwlhZXNtYwkkZGF0MiwkZGF0Mgot KwlhZXNlCSRkYXQzLHExMwotKwlhZXNtYwkkZGF0MywkZGF0MwotKwlhZXNlCSRkYXQ0LHExMwot KwlhZXNtYwkkZGF0NCwkZGF0NAotKwotKwlhZXNlCSRkYXQwLHExNAotKwlhZXNtYwkkZGF0MCwk ZGF0MAotKwlhZXNlCSRkYXQxLHExNAotKwlhZXNtYwkkZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQy LHExNAotKwlhZXNtYwkkZGF0MiwkZGF0MgotKwlhZXNlCSRkYXQzLHExNAotKwlhZXNtYwkkZGF0 MywkZGF0MwotKwlhZXNlCSRkYXQ0LHExNAotKwlhZXNtYwkkZGF0NCwkZGF0NAotKwotKwl2ZW9y CSR0bXAwLCRybmRsYXN0LCRpdjAKLSsJYWVzZQkkZGF0MCxxMTUKLSsJLy8gVGhlIGl2IGZvciBm aXJzdCBibG9jayBvZiBvbmUgaXRlcmF0aW9uCi0rCWV4dHIJJG1pZG51bXgsJGl2aCwkaXZoLCMz MgotKwlleHRyCSRpdmgsJGl2aCwkaXZsLCM2MwotKwlhbmQJJHRtcG13LCRjb25zdG51bSwkbWlk bnVtLGFzciMzMQotKwllb3IJJGl2bCwkdG1wbXgsJGl2bCxsc2wjMQotKwlmbW92CSRpdmQwMCwk aXZsCi0rCWZtb3YJJGl2ZDAxLCRpdmgKLSsJdmVvcgkkdG1wMSwkcm5kbGFzdCwkaXYxCi0rCXZs ZDEuOAl7JGluMH0sWyRpbnBdLCMxNgotKwlhZXNlCSRkYXQxLHExNQotKwkvLyBUaGUgaXYgZm9y IHNlY29uZCBibG9jawotKwlleHRyCSRtaWRudW14LCRpdmgsJGl2aCwjMzIKLSsJZXh0cgkkaXZo LCRpdmgsJGl2bCwjNjMKLSsJYW5kCSR0bXBtdywkY29uc3RudW0sJG1pZG51bSxhc3IjMzEKLSsJ ZW9yCSRpdmwsJHRtcG14LCRpdmwsbHNsIzEKLSsJZm1vdgkkaXZkMTAsJGl2bAotKwlmbW92CSRp dmQxMSwkaXZoCi0rCXZlb3IJJHRtcDIsJHJuZGxhc3QsJGl2MgotKwl2bGQxLjgJeyRpbjF9LFsk aW5wXSwjMTYKLSsJYWVzZQkkZGF0MixxMTUKLSsJLy8gVGhlIGl2IGZvciB0aGlyZCBibG9jawot KwlleHRyCSRtaWRudW14LCRpdmgsJGl2aCwjMzIKLSsJZXh0cgkkaXZoLCRpdmgsJGl2bCwjNjMK LSsJYW5kCSR0bXBtdywkY29uc3RudW0sJG1pZG51bSxhc3IjMzEKLSsJZW9yCSRpdmwsJHRtcG14 LCRpdmwsbHNsIzEKLSsJZm1vdgkkaXZkMjAsJGl2bAotKwlmbW92CSRpdmQyMSwkaXZoCi0rCXZl b3IJJHRtcDMsJHJuZGxhc3QsJGl2MwotKwl2bGQxLjgJeyRpbjJ9LFskaW5wXSwjMTYKLSsJYWVz ZQkkZGF0MyxxMTUKLSsJLy8gVGhlIGl2IGZvciBmb3VydGggYmxvY2sKLSsJZXh0cgkkbWlkbnVt eCwkaXZoLCRpdmgsIzMyCi0rCWV4dHIJJGl2aCwkaXZoLCRpdmwsIzYzCi0rCWFuZAkkdG1wbXcs JGNvbnN0bnVtLCRtaWRudW0sYXNyIzMxCi0rCWVvcgkkaXZsLCR0bXBteCwkaXZsLGxzbCMxCi0r CWZtb3YJJGl2ZDMwLCRpdmwKLSsJZm1vdgkkaXZkMzEsJGl2aAotKwl2ZW9yCSR0bXA0LCRybmRs YXN0LCRpdjQKLSsJdmxkMS44CXskaW4zfSxbJGlucF0sIzE2Ci0rCWFlc2UJJGRhdDQscTE1Ci0r Ci0rCS8vIFRoZSBpdiBmb3IgZmlmdGggYmxvY2sKLSsJZXh0cgkkbWlkbnVteCwkaXZoLCRpdmgs IzMyCi0rCWV4dHIJJGl2aCwkaXZoLCRpdmwsIzYzCi0rCWFuZAkkdG1wbXcsJGNvbnN0bnVtLCRt aWRudW0sYXNyICMzMQotKwllb3IJJGl2bCwkdG1wbXgsJGl2bCxsc2wgIzEKLSsJZm1vdgkkaXZk NDAsJGl2bAotKwlmbW92CSRpdmQ0MSwkaXZoCi0rCi0rCXZsZDEuOAl7JGluNH0sWyRpbnBdLCMx NgotKwljYnoJJHhvZmZzZXQsLkx4dHNfZW5jX3RhaWw0eAotKwl2bGQxLjMyIHtxOH0sWyRrZXlf XSwjMTYJCS8vIHJlLXByZS1sb2FkIHJuZGtleVswXQotKwl2ZW9yCSR0bXAwLCR0bXAwLCRkYXQw Ci0rCXZlb3IJJGRhdDAsJGluMCwkaXYwCi0rCXZlb3IJJHRtcDEsJHRtcDEsJGRhdDEKLSsJdmVv cgkkZGF0MSwkaW4xLCRpdjEKLSsJdmVvcgkkdG1wMiwkdG1wMiwkZGF0MgotKwl2ZW9yCSRkYXQy LCRpbjIsJGl2MgotKwl2ZW9yCSR0bXAzLCR0bXAzLCRkYXQzCi0rCXZlb3IJJGRhdDMsJGluMywk aXYzCi0rCXZlb3IJJHRtcDQsJHRtcDQsJGRhdDQKLSsJdnN0MS44CXskdG1wMH0sWyRvdXRdLCMx NgotKwl2ZW9yCSRkYXQ0LCRpbjQsJGl2NAotKwl2c3QxLjgJeyR0bXAxfSxbJG91dF0sIzE2Ci0r CW1vdgkkcm91bmRzLCRyb3VuZHMwCi0rCXZzdDEuOAl7JHRtcDJ9LFskb3V0XSwjMTYKLSsJdmxk MS4zMgl7cTl9LFska2V5X10sIzE2CQkvLyByZS1wcmUtbG9hZCBybmRrZXlbMV0KLSsJdnN0MS44 CXskdG1wM30sWyRvdXRdLCMxNgotKwl2c3QxLjgJeyR0bXA0fSxbJG91dF0sIzE2Ci0rCWIuaHMJ Lkxvb3A1eF94dHNfZW5jCi0rCi0rCi0rCS8vIElmIGxlZnQgNCBibG9ja3MsIGJvcnJvdyB0aGUg Zml2ZSBibG9jaydzIHByb2Nlc3NpbmcuCi0rCWNtbgkkbGVuLCMweDEwCi0rCWIubmUJLkxvb3A1 eF9lbmNfYWZ0ZXIKLSsJdm9ycgkkaXY0LCRpdjMsJGl2MwotKwl2b3JyCSRpdjMsJGl2MiwkaXYy Ci0rCXZvcnIJJGl2MiwkaXYxLCRpdjEKLSsJdm9ycgkkaXYxLCRpdjAsJGl2MAotKwlmbW92CSRp dmwsJGl2ZDQwCi0rCWZtb3YJJGl2aCwkaXZkNDEKLSsJdmVvcgkkZGF0MCwkaXYwLCRpbjAKLSsJ dmVvcgkkZGF0MSwkaXYxLCRpbjEKLSsJdmVvcgkkZGF0MiwkaW4yLCRpdjIKLSsJdmVvcgkkZGF0 MywkaW4zLCRpdjMKLSsJdmVvcgkkZGF0NCwkaW40LCRpdjQKLSsJYi5lcQkuTG9vcDV4X3h0c19l bmMKLSsKLSsuTG9vcDV4X2VuY19hZnRlcjoKLSsJYWRkCSRsZW4sJGxlbiwjMHg1MAotKwljYnoJ JGxlbiwuTHh0c19lbmNfZG9uZQotKwotKwlhZGQJJHJvdW5kcywkcm91bmRzMCwjMgotKwlzdWJz CSRsZW4sJGxlbiwjMHgzMAotKwliLmxvCS5MeHRzX2lubmVyX2VuY190YWlsCi0rCi0rCXZlb3IJ JGRhdDAsJGl2MCwkaW4yCi0rCXZlb3IJJGRhdDEsJGl2MSwkaW4zCi0rCXZlb3IJJGRhdDIsJGlu NCwkaXYyCi0rCWIJLkx4dHNfb3V0ZXJfZW5jX3RhaWwKLSsKLSsuYWxpZ24JNAotKy5MeHRzX2Vu Y190YWlsNHg6Ci0rCWFkZAkkaW5wLCRpbnAsIzE2Ci0rCXZlb3IJJHRtcDEsJGRhdDEsJHRtcDEK LSsJdnN0MS44CXskdG1wMX0sWyRvdXRdLCMxNgotKwl2ZW9yCSR0bXAyLCRkYXQyLCR0bXAyCi0r CXZzdDEuOAl7JHRtcDJ9LFskb3V0XSwjMTYKLSsJdmVvcgkkdG1wMywkZGF0MywkdG1wMwotKwl2 ZW9yCSR0bXA0LCRkYXQ0LCR0bXA0Ci0rCXZzdDEuOAl7JHRtcDMtJHRtcDR9LFskb3V0XSwjMzIK LSsKLSsJYgkuTHh0c19lbmNfZG9uZQotKy5hbGlnbgk0Ci0rLkx4dHNfb3V0ZXJfZW5jX3RhaWw6 Ci0rCWFlc2UJJGRhdDAscTgKLSsJYWVzbWMJJGRhdDAsJGRhdDAKLSsJYWVzZQkkZGF0MSxxOAot KwlhZXNtYwkkZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQyLHE4Ci0rCWFlc21jCSRkYXQyLCRkYXQy Ci0rCXZsZDEuMzIJe3E4fSxbJGtleV9dLCMxNgotKwlzdWJzCSRyb3VuZHMsJHJvdW5kcywjMgot KwlhZXNlCSRkYXQwLHE5Ci0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDEscTkKLSsJ YWVzbWMJJGRhdDEsJGRhdDEKLSsJYWVzZQkkZGF0MixxOQotKwlhZXNtYwkkZGF0MiwkZGF0Mgot Kwl2bGQxLjMyCXtxOX0sWyRrZXlfXSwjMTYKLSsJYi5ndAkuTHh0c19vdXRlcl9lbmNfdGFpbAot KwotKwlhZXNlCSRkYXQwLHE4Ci0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFlc2UJJGRhdDEscTgK LSsJYWVzbWMJJGRhdDEsJGRhdDEKLSsJYWVzZQkkZGF0MixxOAotKwlhZXNtYwkkZGF0MiwkZGF0 MgotKwl2ZW9yCSR0bXAwLCRpdjAsJHJuZGxhc3QKLSsJc3VicwkkbGVuLCRsZW4sIzB4MzAKLSsJ Ly8gVGhlIGl2IGZvciBmaXJzdCBibG9jawotKwlmbW92CSRpdmwsJGl2ZDIwCi0rCWZtb3YJJGl2 aCwkaXZkMjEKLSsJLy9tb3YJJGNvbnN0bnVtLCMweDg3Ci0rCWV4dHIJJG1pZG51bXgsJGl2aCwk aXZoLCMzMgotKwlleHRyCSRpdmgsJGl2aCwkaXZsLCM2MwotKwlhbmQJJHRtcG13LCRjb25zdG51 bSwkbWlkbnVtLGFzciMzMQotKwllb3IJJGl2bCwkdG1wbXgsJGl2bCxsc2wjMQotKwlmbW92CSRp dmQwMCwkaXZsCi0rCWZtb3YJJGl2ZDAxLCRpdmgKLSsJdmVvcgkkdG1wMSwkaXYxLCRybmRsYXN0 Ci0rCWNzZWwJJHhvZmZzZXQsJGxlbiwkeG9mZnNldCxsbyAgICAgICAvLyB4NiwgdzYsIGlzIHpl cm8gYXQgdGhpcyBwb2ludAotKwlhZXNlCSRkYXQwLHE5Ci0rCWFlc21jCSRkYXQwLCRkYXQwCi0r CWFlc2UJJGRhdDEscTkKLSsJYWVzbWMJJGRhdDEsJGRhdDEKLSsJYWVzZQkkZGF0MixxOQotKwlh ZXNtYwkkZGF0MiwkZGF0MgotKwl2ZW9yCSR0bXAyLCRpdjIsJHJuZGxhc3QKLSsKLSsJYWRkCSR4 b2Zmc2V0LCR4b2Zmc2V0LCMweDIwCi0rCWFkZAkkaW5wLCRpbnAsJHhvZmZzZXQKLSsJbW92CSRr ZXlfLCRrZXkxCi0rCi0rCWFlc2UJJGRhdDAscTEyCi0rCWFlc21jCSRkYXQwLCRkYXQwCi0rCWFl c2UJJGRhdDEscTEyCi0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTEyCi0rCWFl c21jCSRkYXQyLCRkYXQyCi0rCWFlc2UJJGRhdDAscTEzCi0rCWFlc21jCSRkYXQwLCRkYXQwCi0r CWFlc2UJJGRhdDEscTEzCi0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTEzCi0r CWFlc21jCSRkYXQyLCRkYXQyCi0rCWFlc2UJJGRhdDAscTE0Ci0rCWFlc21jCSRkYXQwLCRkYXQw Ci0rCWFlc2UJJGRhdDEscTE0Ci0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTE0 Ci0rCWFlc21jCSRkYXQyLCRkYXQyCi0rCWFlc2UJJGRhdDAscTE1Ci0rCWFlc2UJJGRhdDEscTE1 Ci0rCWFlc2UJJGRhdDIscTE1Ci0rCXZsZDEuOAl7JGluMn0sWyRpbnBdLCMxNgotKwlhZGQJJHJv dW5kcywkcm91bmRzMCwjMgotKwl2bGQxLjMyCXtxOH0sWyRrZXlfXSwjMTYgICAgICAgICAgICAg ICAgLy8gcmUtcHJlLWxvYWQgcm5ka2V5WzBdCi0rCXZlb3IJJHRtcDAsJHRtcDAsJGRhdDAKLSsJ dmVvcgkkdG1wMSwkdG1wMSwkZGF0MQotKwl2ZW9yCSRkYXQyLCRkYXQyLCR0bXAyCi0rCXZsZDEu MzIJe3E5fSxbJGtleV9dLCMxNiAgICAgICAgICAgICAgICAvLyByZS1wcmUtbG9hZCBybmRrZXlb MV0KLSsJdnN0MS44CXskdG1wMH0sWyRvdXRdLCMxNgotKwl2c3QxLjgJeyR0bXAxfSxbJG91dF0s IzE2Ci0rCXZzdDEuOAl7JGRhdDJ9LFskb3V0XSwjMTYKLSsJY21uCSRsZW4sIzB4MzAKLSsJYi5l cQkuTHh0c19lbmNfZG9uZQotKy5MeHRzX2VuY3hvcl9vbmU6Ci0rCXZvcnIJJGluMywkaW4xLCRp bjEKLSsJdm9ycgkkaW40LCRpbjIsJGluMgotKwlub3AKLSsKLSsuTHh0c19pbm5lcl9lbmNfdGFp bDoKLSsJY21uCSRsZW4sIzB4MTAKLSsJdmVvcgkkZGF0MSwkaW4zLCRpdjAKLSsJdmVvcgkkZGF0 MiwkaW40LCRpdjEKLSsJYi5lcQkuTHh0c19lbmNfdGFpbF9sb29wCi0rCXZlb3IJJGRhdDIsJGlu NCwkaXYwCi0rLkx4dHNfZW5jX3RhaWxfbG9vcDoKLSsJYWVzZQkkZGF0MSxxOAotKwlhZXNtYwkk ZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQyLHE4Ci0rCWFlc21jCSRkYXQyLCRkYXQyCi0rCXZsZDEu MzIJe3E4fSxbJGtleV9dLCMxNgotKwlzdWJzCSRyb3VuZHMsJHJvdW5kcywjMgotKwlhZXNlCSRk YXQxLHE5Ci0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTkKLSsJYWVzbWMJJGRh dDIsJGRhdDIKLSsJdmxkMS4zMgl7cTl9LFska2V5X10sIzE2Ci0rCWIuZ3QJLkx4dHNfZW5jX3Rh aWxfbG9vcAotKwotKwlhZXNlCSRkYXQxLHE4Ci0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJ JGRhdDIscTgKLSsJYWVzbWMJJGRhdDIsJGRhdDIKLSsJYWVzZQkkZGF0MSxxOQotKwlhZXNtYwkk ZGF0MSwkZGF0MQotKwlhZXNlCSRkYXQyLHE5Ci0rCWFlc21jCSRkYXQyLCRkYXQyCi0rCWFlc2UJ JGRhdDEscTEyCi0rCWFlc21jCSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTEyCi0rCWFlc21j CSRkYXQyLCRkYXQyCi0rCWNtbgkkbGVuLCMweDIwCi0rCWFlc2UJJGRhdDEscTEzCi0rCWFlc21j CSRkYXQxLCRkYXQxCi0rCWFlc2UJJGRhdDIscTEzCi0rCWFlc21jCSRkYXQyLCRkYXQyCi0rCXZl b3IJJHRtcDEsJGl2MCwkcm5kbGFzdAotKwlhZXNlCSRkYXQxLHExNAotKwlhZXNtYwkkZGF0MSwk ZGF0MQotKwlhZXNlCSRkYXQyLHExNAotKwlhZXNtYwkkZGF0MiwkZGF0MgotKwl2ZW9yCSR0bXAy LCRpdjEsJHJuZGxhc3QKLSsJYWVzZQkkZGF0MSxxMTUKLSsJYWVzZQkkZGF0MixxMTUKLSsJYi5l cQkuTHh0c19lbmNfb25lCi0rCXZlb3IJJHRtcDEsJHRtcDEsJGRhdDEKLSsJdnN0MS44CXskdG1w MX0sWyRvdXRdLCMxNgotKwl2ZW9yCSR0bXAyLCR0bXAyLCRkYXQyCi0rCXZvcnIJJGl2MCwkaXYx LCRpdjEKLSsJdnN0MS44CXskdG1wMn0sWyRvdXRdLCMxNgotKwlmbW92CSRpdmwsJGl2ZDEwCi0r CWZtb3YJJGl2aCwkaXZkMTEKLSsJbW92CSRjb25zdG51bSwjMHg4NwotKwlleHRyCSRtaWRudW14 LCRpdmgsJGl2aCwjMzIKLSsJZXh0cgkkaXZoLCRpdmgsJGl2bCwjNjMKLSsJYW5kCSR0bXBtdywk Y29uc3RudW0sJG1pZG51bSxhc3IgIzMxCi0rCWVvcgkkaXZsLCR0bXBteCwkaXZsLGxzbCAjMQot KwlmbW92CSRpdmQwMCwkaXZsCi0rCWZtb3YJJGl2ZDAxLCRpdmgKLSsJYgkuTHh0c19lbmNfZG9u ZQotKwotKy5MeHRzX2VuY19vbmU6Ci0rCXZlb3IJJHRtcDEsJHRtcDEsJGRhdDIKLSsJdm9ycgkk aXYwLCRpdjAsJGl2MAotKwl2c3QxLjgJeyR0bXAxfSxbJG91dF0sIzE2Ci0rCWZtb3YJJGl2bCwk aXZkMDAKLSsJZm1vdgkkaXZoLCRpdmQwMQotKwltb3YJJGNvbnN0bnVtLCMweDg3Ci0rCWV4dHIJ JG1pZG51bXgsJGl2aCwkaXZoLCMzMgotKwlleHRyCSRpdmgsJGl2aCwkaXZsLCM2MwotKwlhbmQJ JHRtcG13LCRjb25zdG51bSwkbWlkbnVtLGFzciAjMzEKLSsJZW9yCSRpdmwsJHRtcG14LCRpdmws bHNsICMxCi0rCWZtb3YJJGl2ZDAwLCRpdmwKLSsJZm1vdgkkaXZkMDEsJGl2aAotKwliCS5MeHRz X2VuY19kb25lCi0rLmFsaWduCTUKLSsuTHh0c19lbmNfZG9uZToKLSsJLy8gUHJvY2VzcyB0aGUg dGFpbCBibG9jayB3aXRoIGNpcGhlciBzdGVhbGluZy4KLSsJdHN0CSR0YWlsY250LCMweGYKLSsJ Yi5lcQkuTHh0c19hYm9ydAotKwotKwltb3YJJHRtcGlucCwkaW5wCi0rCW1vdgkkdG1wb3V0cCwk b3V0Ci0rCXN1Ygkkb3V0LCRvdXQsIzE2Ci0rLmNvbXBvc2l0ZV9lbmNfbG9vcDoKLSsJc3Vicwkk dGFpbGNudCwkdGFpbGNudCwjMQotKwlsZHJiCSRsMm91dHAsWyRvdXQsJHRhaWxjbnRdCi0rCWxk cmIJJGxvdXRwLFskdG1waW5wLCR0YWlsY250XQotKwlzdHJiCSRsMm91dHAsWyR0bXBvdXRwLCR0 YWlsY250XQotKwlzdHJiCSRsb3V0cCxbJG91dCwkdGFpbGNudF0KLSsJYi5ndAkuY29tcG9zaXRl X2VuY19sb29wCi0rLkx4dHNfZW5jX2xvYWRfZG9uZToKLSsJdmxkMS44CXskdG1waW59LFskb3V0 XQotKwl2ZW9yCSR0bXBpbiwkdG1waW4sJGl2MAotKwotKwkvLyBFbmNyeXB0IHRoZSBjb21wb3Np dGUgYmxvY2sgdG8gZ2V0IHRoZSBsYXN0IHNlY29uZCBlbmNyeXB0ZWQgdGV4dCBibG9jawotKwls ZHIJJHJvdW5kcyxbJGtleTEsIzI0MF0JCS8vIGxvYWQga2V5IHNjaGVkdWxlLi4uCi0rCXZsZDEu OAl7JGRhdH0sWyRrZXkxXSwjMTYKLSsJc3ViCSRyb3VuZHMsJHJvdW5kcywjMgotKwl2bGQxLjgJ eyRkYXQxfSxbJGtleTFdLCMxNgkJLy8gbG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsuTG9vcF9maW5h bF9lbmM6Ci0rCWFlc2UJJHRtcGluLCRkYXQwCi0rCWFlc21jCSR0bXBpbiwkdG1waW4KLSsJdmxk MS4zMgl7JGRhdDB9LFska2V5MV0sIzE2Ci0rCXN1YnMJJHJvdW5kcywkcm91bmRzLCMyCi0rCWFl c2UJJHRtcGluLCRkYXQxCi0rCWFlc21jCSR0bXBpbiwkdG1waW4KLSsJdmxkMS4zMgl7JGRhdDF9 LFska2V5MV0sIzE2Ci0rCWIuZ3QJLkxvb3BfZmluYWxfZW5jCi0rCi0rCWFlc2UJJHRtcGluLCRk YXQwCi0rCWFlc21jCSR0bXBpbiwkdG1waW4KLSsJdmxkMS4zMgl7JGRhdDB9LFska2V5MV0KLSsJ YWVzZQkkdG1waW4sJGRhdDEKLSsJdmVvcgkkdG1waW4sJHRtcGluLCRkYXQwCi0rCXZlb3IJJHRt cGluLCR0bXBpbiwkaXYwCi0rCXZzdDEuOAl7JHRtcGlufSxbJG91dF0KLSsKLSsuTHh0c19hYm9y dDoKLSsJbGRwCSR0YWlsY250LCRtaWRudW14LFtzcCwjNDhdCi0rCWxkcAkkaXZkMTAsJGl2ZDIw LFtzcCwjMzJdCi0rCWxkcAkkaXZkMzAsJGl2ZDQwLFtzcCwjMTZdCi0rCWxkcAkkY29uc3RudW14 LCR0bXBpbnAsW3NwXSwjNjQKLSsuTHh0c19lbmNfZmluYWxfYWJvcnQ6Ci0rCXJldAotKy5zaXpl CSR7cHJlZml4fV94dHNfZW5jcnlwdCwuLSR7cHJlZml4fV94dHNfZW5jcnlwdAotK19fXwotKwot K319fQotK3t7ewotK215ICgkaW5wLCRvdXQsJGxlbiwka2V5MSwka2V5MiwkaXZwKT1tYXAoIngk XyIsKDAuLjUpKTsKLStteSAoJHJvdW5kczAsJHJvdW5kcywka2V5Xywkc3RlcCwkaXZsLCRpdmgp PSgidzUiLCJ3NiIsIng3IiwieDgiLCJ4OSIsIngxMCIpOwotK215ICgkdG1wb3V0cCwkbG91dHAs JGwyb3V0cCwkdG1waW5wKT0oIngxMyIsIncxNCIsIncxNSIsIngyMCIpOwotK215ICgkdGFpbGNu dCwkbWlkbnVtLCRtaWRudW14LCRjb25zdG51bSwkY29uc3RudW14KT0oIngyMSIsIncyMiIsIngy MiIsIncxOSIsIngxOSIpOwotK215ICgkeG9mZnNldCwkdG1wbXgsJHRtcG13KT0oIng2IiwieDEx IiwidzExIik7Ci0rbXkgKCRkYXQwLCRkYXQxLCRpbjAsJGluMSwkdG1wMCwkdG1wMSwkdG1wMiwk cm5kbGFzdCk9bWFwKCJxJF8iLCgwLi43KSk7Ci0rbXkgKCRpdjAsJGl2MSwkaXYyLCRpdjMsJGl2 NCwkdG1waW4pPSgidjYuMTZiIiwidjguMTZiIiwidjkuMTZiIiwidjEwLjE2YiIsInYxMS4xNmIi LCJ2MjYuMTZiIik7Ci0rbXkgKCRpdmQwMCwkaXZkMDEsJGl2ZDIwLCRpdmQyMSk9KCJkNiIsInY2 LmRbMV0iLCJkOSIsInY5LmRbMV0iKTsKLStteSAoJGl2ZDEwLCRpdmQxMSwkaXZkMzAsJGl2ZDMx LCRpdmQ0MCwkaXZkNDEpPSgiZDgiLCJ2OC5kWzFdIiwiZDEwIiwidjEwLmRbMV0iLCJkMTEiLCJ2 MTEuZFsxXSIpOwotKwotK215ICgkZGF0LCR0bXAsJHJuZHplcm9fbl9sYXN0KT0oJGRhdDAsJHRt cDAsJHRtcDEpOwotKwotKyMgcTcJbGFzdCByb3VuZCBrZXkKLSsjIHExMC1xMTUsIHE3CUxhc3Qg NyByb3VuZCBrZXlzCi0rIyBxOC1xOQlwcmVsb2FkZWQgcm91bmQga2V5cyBleGNlcHQgbGFzdCA3 IGtleXMgZm9yIGJpZyBzaXplCi0rIyBxMjAsIHEyMSwgcTgtcTkJcHJlbG9hZGVkIHJvdW5kIGtl eXMgZXhjZXB0IGxhc3QgNyBrZXlzIGZvciBvbmx5IDE2IGJ5dGUKLSsKLSt7Ci0rbXkgKCRkYXQy LCRpbjIsJHRtcDIpPW1hcCgicSRfIiwoMTAsMTEsOSkpOwotKwotK215ICgkZGF0MywkaW4zLCR0 bXAzKTsJIyB1c2VkIG9ubHkgaW4gNjQtYml0IG1vZGUKLStteSAoJGRhdDQsJGluNCwkdG1wNCk7 Ci0raWYgKCRmbGF2b3VyID1+IC82NC8pIHsKLSsgICAgKCRkYXQyLCRkYXQzLCRkYXQ0LCRpbjIs JGluMywkaW40LCR0bXAzLCR0bXA0KT1tYXAoInEkXyIsKDE2Li4yMykpOwotK30KLSsKLSskY29k ZS49PDxfX18JaWYgKCRmbGF2b3VyID1+IC82NC8pOwotKy5nbG9ibAkke3ByZWZpeH1feHRzX2Rl Y3J5cHQKLSsudHlwZQkke3ByZWZpeH1feHRzX2RlY3J5cHQsJWZ1bmN0aW9uCi0rLmFsaWduCTUK LSske3ByZWZpeH1feHRzX2RlY3J5cHQ6Ci0rX19fCi0rJGNvZGUuPTw8X19fCWlmICgkZmxhdm91 ciA9fiAvNjQvKTsKLSsJY21wCSRsZW4sIzE2Ci0rCS8vIE9yaWdpbmFsIGlucHV0IGRhdGEgc2l6 ZSBiaWdnZXIgdGhhbiAxNiwganVtcCB0byBiaWcgc2l6ZSBwcm9jZXNzaW5nLgotKwliLm5lCS5M eHRzX2RlY19iaWdfc2l6ZQotKwkvLyBFbmNyeXB0IHRoZSBpdiB3aXRoIGtleTIsIGFzIHRoZSBm aXJzdCBYRVggaXYuCi0rCWxkcgkkcm91bmRzLFska2V5MiwjMjQwXQotKwl2bGQxLjgJeyRkYXR9 LFska2V5Ml0sIzE2Ci0rCXZsZDEuOAl7JGl2MH0sWyRpdnBdCi0rCXN1Ygkkcm91bmRzLCRyb3Vu ZHMsIzIKLSsJdmxkMS44CXskZGF0MX0sWyRrZXkyXSwjMTYKLSsKLSsuTG9vcF9kZWNfc21hbGxf aXZfZW5jOgotKwlhZXNlCSRpdjAsJGRhdAotKwlhZXNtYwkkaXYwLCRpdjAKLSsJdmxkMS4zMgl7 JGRhdH0sWyRrZXkyXSwjMTYKLSsJc3Vicwkkcm91bmRzLCRyb3VuZHMsIzIKLSsJYWVzZQkkaXYw LCRkYXQxCi0rCWFlc21jCSRpdjAsJGl2MAotKwl2bGQxLjMyCXskZGF0MX0sWyRrZXkyXSwjMTYK LSsJYi5ndAkuTG9vcF9kZWNfc21hbGxfaXZfZW5jCi0rCi0rCWFlc2UJJGl2MCwkZGF0Ci0rCWFl c21jCSRpdjAsJGl2MAotKwl2bGQxLjMyCXskZGF0fSxbJGtleTJdCi0rCWFlc2UJJGl2MCwkZGF0 MQotKwl2ZW9yCSRpdjAsJGl2MCwkZGF0Ci0rCi0rCXZsZDEuOAl7JGRhdDB9LFskaW5wXQotKwl2 ZW9yCSRkYXQwLCRpdjAsJGRhdDAKLSsKLSsJbGRyCSRyb3VuZHMsWyRrZXkxLCMyNDBdCi0rCXZs ZDEuMzIJe3EyMC1xMjF9LFska2V5MV0sIzMyCQkJLy8gbG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsK LSsJYWVzZAkkZGF0MCxxMjAKLSsJYWVzaW1jCSRkYXQwLCRkYXQwCi0rCXZsZDEuMzIJe3E4LXE5 fSxbJGtleTFdLCMzMgkJCS8vIGxvYWQga2V5IHNjaGVkdWxlLi4uCi0rCWFlc2QJJGRhdDAscTIx Ci0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwlzdWJzCSRyb3VuZHMsJHJvdW5kcywjMTAJCQkvLyBi aWFzCi0rCWIuZXEJLkx4dHNfMTI4X2RlYwotKy5MeHRzX2RlY19yb3VuZF9sb29wOgotKwlhZXNk CSRkYXQwLHE4Ci0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwl2bGQxLjMyCXtxOH0sWyRrZXkxXSwj MTYJCQkvLyBsb2FkIGtleSBzY2hlZHVsZS4uLgotKwlhZXNkCSRkYXQwLHE5Ci0rCWFlc2ltYwkk ZGF0MCwkZGF0MAotKwl2bGQxLjMyCXtxOX0sWyRrZXkxXSwjMTYJCQkvLyBsb2FkIGtleSBzY2hl ZHVsZS4uLgotKwlzdWJzCSRyb3VuZHMsJHJvdW5kcywjMgkJCS8vIGJpYXMKLSsJYi5ndAkuTHh0 c19kZWNfcm91bmRfbG9vcAotKy5MeHRzXzEyOF9kZWM6Ci0rCXZsZDEuMzIJe3ExMC1xMTF9LFsk a2V5MV0sIzMyCQkJLy8gbG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsJYWVzZAkkZGF0MCxxOAotKwlh ZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MCxxOQotKwlhZXNpbWMJJGRhdDAsJGRhdDAK LSsJdmxkMS4zMgl7cTEyLXExM30sWyRrZXkxXSwjMzIJCQkvLyBsb2FkIGtleSBzY2hlZHVsZS4u LgotKwlhZXNkCSRkYXQwLHExMAotKwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MCxx MTEKLSsJYWVzaW1jCSRkYXQwLCRkYXQwCi0rCXZsZDEuMzIJe3ExNC1xMTV9LFska2V5MV0sIzMy CQkJLy8gbG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsJYWVzZAkkZGF0MCxxMTIKLSsJYWVzaW1jCSRk YXQwLCRkYXQwCi0rCWFlc2QJJGRhdDAscTEzCi0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwl2bGQx LjMyCXskcm5kbGFzdH0sWyRrZXkxXQotKwlhZXNkCSRkYXQwLHExNAotKwlhZXNpbWMJJGRhdDAs JGRhdDAKLSsJYWVzZAkkZGF0MCxxMTUKLSsJdmVvcgkkZGF0MCwkZGF0MCwkcm5kbGFzdAotKwl2 ZW9yCSRkYXQwLCRpdjAsJGRhdDAKLSsJdnN0MS44CXskZGF0MH0sWyRvdXRdCi0rCWIJLkx4dHNf ZGVjX2ZpbmFsX2Fib3J0Ci0rLkx4dHNfZGVjX2JpZ19zaXplOgotK19fXwotKyRjb2RlLj08PF9f XwlpZiAoJGZsYXZvdXIgPX4gLzY0Lyk7Ci0rCXN0cAkkY29uc3RudW14LCR0bXBpbnAsW3NwLCMt NjRdIQotKwlzdHAJJHRhaWxjbnQsJG1pZG51bXgsW3NwLCM0OF0KLSsJc3RwCSRpdmQxMCwkaXZk MjAsW3NwLCMzMl0KLSsJc3RwCSRpdmQzMCwkaXZkNDAsW3NwLCMxNl0KLSsKLSsJYW5kCSR0YWls Y250LCRsZW4sIzB4ZgotKwlhbmQJJGxlbiwkbGVuLCMtMTYKLSsJc3VicwkkbGVuLCRsZW4sIzE2 Ci0rCW1vdgkkc3RlcCwjMTYKLSsJYi5sbwkuTHh0c19kZWNfYWJvcnQKLSsKLSsJLy8gRW5jcnlw dCB0aGUgaXYgd2l0aCBrZXkyLCBhcyB0aGUgZmlyc3QgWEVYIGl2Ci0rCWxkcgkkcm91bmRzLFsk a2V5MiwjMjQwXQotKwl2bGQxLjgJeyRkYXR9LFska2V5Ml0sIzE2Ci0rCXZsZDEuOAl7JGl2MH0s WyRpdnBdCi0rCXN1Ygkkcm91bmRzLCRyb3VuZHMsIzIKLSsJdmxkMS44CXskZGF0MX0sWyRrZXky XSwjMTYKLSsKLSsuTG9vcF9kZWNfaXZfZW5jOgotKwlhZXNlCSRpdjAsJGRhdAotKwlhZXNtYwkk aXYwLCRpdjAKLSsJdmxkMS4zMgl7JGRhdH0sWyRrZXkyXSwjMTYKLSsJc3Vicwkkcm91bmRzLCRy b3VuZHMsIzIKLSsJYWVzZQkkaXYwLCRkYXQxCi0rCWFlc21jCSRpdjAsJGl2MAotKwl2bGQxLjMy CXskZGF0MX0sWyRrZXkyXSwjMTYKLSsJYi5ndAkuTG9vcF9kZWNfaXZfZW5jCi0rCi0rCWFlc2UJ JGl2MCwkZGF0Ci0rCWFlc21jCSRpdjAsJGl2MAotKwl2bGQxLjMyCXskZGF0fSxbJGtleTJdCi0r CWFlc2UJJGl2MCwkZGF0MQotKwl2ZW9yCSRpdjAsJGl2MCwkZGF0Ci0rCi0rCS8vIFRoZSBpdiBm b3Igc2Vjb25kIGJsb2NrCi0rCS8vICRpdmwtIGl2KGxvdyksICRpdmggLSBpdihoaWdoKQotKwkv LyB0aGUgZml2ZSBpdnMgc3RvcmVkIGludG8sICRpdjAsJGl2MSwkaXYyLCRpdjMsJGl2NAotKwlm bW92CSRpdmwsJGl2ZDAwCi0rCWZtb3YJJGl2aCwkaXZkMDEKLSsJbW92CSRjb25zdG51bSwjMHg4 NwotKwlleHRyCSRtaWRudW14LCRpdmgsJGl2aCwjMzIKLSsJZXh0cgkkaXZoLCRpdmgsJGl2bCwj NjMKLSsJYW5kCSR0bXBtdywkY29uc3RudW0sJG1pZG51bSxhc3IgIzMxCi0rCWVvcgkkaXZsLCR0 bXBteCwkaXZsLGxzbCAjMQotKwlmbW92CSRpdmQxMCwkaXZsCi0rCWZtb3YJJGl2ZDExLCRpdmgK LSsKLSsJbGRyCSRyb3VuZHMwLFska2V5MSwjMjQwXQkJLy8gbG9hZCByb3VuZHMgbnVtYmVyCi0r Ci0rCS8vIFRoZSBpdiBmb3IgdGhpcmQgYmxvY2sKLSsJZXh0cgkkbWlkbnVteCwkaXZoLCRpdmgs IzMyCi0rCWV4dHIJJGl2aCwkaXZoLCRpdmwsIzYzCi0rCWFuZAkkdG1wbXcsJGNvbnN0bnVtLCRt aWRudW0sYXNyICMzMQotKwllb3IJJGl2bCwkdG1wbXgsJGl2bCxsc2wgIzEKLSsJZm1vdgkkaXZk MjAsJGl2bAotKwlmbW92CSRpdmQyMSwkaXZoCi0rCi0rCXZsZDEuMzIJe3E4LXE5fSxbJGtleTFd CQkJLy8gbG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsJc3ViCSRyb3VuZHMwLCRyb3VuZHMwLCM2Ci0r CWFkZAkka2V5Xywka2V5MSwkaXZwLGxzbCM0CQkvLyBwb2ludGVyIHRvIGxhc3QgNyByb3VuZCBr ZXlzCi0rCXN1Ygkkcm91bmRzMCwkcm91bmRzMCwjMgotKwl2bGQxLjMyCXtxMTAtcTExfSxbJGtl eV9dLCMzMgkJLy8gbG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsJdmxkMS4zMgl7cTEyLXExM30sWyRr ZXlfXSwjMzIKLSsJdmxkMS4zMgl7cTE0LXExNX0sWyRrZXlfXSwjMzIKLSsJdmxkMS4zMgl7JHJu ZGxhc3R9LFska2V5X10KLSsKLSsJLy8gVGhlIGl2IGZvciBmb3VydGggYmxvY2sKLSsJZXh0cgkk bWlkbnVteCwkaXZoLCRpdmgsIzMyCi0rCWV4dHIJJGl2aCwkaXZoLCRpdmwsIzYzCi0rCWFuZAkk dG1wbXcsJGNvbnN0bnVtLCRtaWRudW0sYXNyICMzMQotKwllb3IJJGl2bCwkdG1wbXgsJGl2bCxs c2wgIzEKLSsJZm1vdgkkaXZkMzAsJGl2bAotKwlmbW92CSRpdmQzMSwkaXZoCi0rCi0rCWFkZAkk a2V5Xywka2V5MSwjMzIKLSsJbW92CSRyb3VuZHMsJHJvdW5kczAKLSsJYgkuTHh0c19kZWMKLSsK LSsJLy8gRGVjcnlwdGlvbgotKy5hbGlnbgk1Ci0rLkx4dHNfZGVjOgotKwl0c3QJJHRhaWxjbnQs IzB4ZgotKwliLmVxCS5MeHRzX2RlY19iZWdpbgotKwlzdWJzCSRsZW4sJGxlbiwjMTYKLSsJY3Nl bAkkc3RlcCx4enIsJHN0ZXAsZXEKLSsJdmxkMS44CXskZGF0fSxbJGlucF0sIzE2Ci0rCWIubG8J Lkx4dHNfZG9uZQotKwlzdWIJJGlucCwkaW5wLCMxNgotKy5MeHRzX2RlY19iZWdpbjoKLSsJdmxk MS44CXskZGF0fSxbJGlucF0sJHN0ZXAKLSsJc3VicwkkbGVuLCRsZW4sIzMyCQkJLy8gYmlhcwot KwlhZGQJJHJvdW5kcywkcm91bmRzMCwjMgotKwl2b3JyCSRpbjEsJGRhdCwkZGF0Ci0rCXZvcnIJ JGRhdDEsJGRhdCwkZGF0Ci0rCXZvcnIJJGluMywkZGF0LCRkYXQKLSsJdmxkMS44CXskZGF0Mn0s WyRpbnBdLCMxNgotKwl2b3JyCSRpbjIsJGRhdDIsJGRhdDIKLSsJdm9ycgkkaW40LCRkYXQyLCRk YXQyCi0rCWIubG8JLkx4dHNfaW5uZXJfZGVjX3RhaWwKLSsJdmVvcgkkZGF0LCRkYXQsJGl2MAkJ CS8vIGJlZm9yZSBkZWNyeXQsIHhvciB3aXRoIGl2Ci0rCXZlb3IJJGRhdDIsJGRhdDIsJGl2MQot KwotKwl2b3JyCSRkYXQxLCRkYXQyLCRkYXQyCi0rCXZsZDEuOAl7JGRhdDJ9LFskaW5wXSwjMTYK LSsJdm9ycgkkaW4wLCRkYXQsJGRhdAotKwl2b3JyCSRpbjEsJGRhdDEsJGRhdDEKLSsJdmVvcgkk aW4yLCRkYXQyLCRpdjIJCQkvLyB0aGlyZCBibG9jayB4b3ggd2l0aCB0aGlyZCBpdgotKwl2ZW9y CSRkYXQyLCRkYXQyLCRpdjIKLSsJY21wCSRsZW4sIzMyCi0rCWIubG8JLkx4dHNfb3V0ZXJfZGVj X3RhaWwKLSsKLSsJdmxkMS44CXskZGF0M30sWyRpbnBdLCMxNgotKwotKwkvLyBUaGUgaXYgZm9y IGZpZnRoIGJsb2NrCi0rCWV4dHIJJG1pZG51bXgsJGl2aCwkaXZoLCMzMgotKwlleHRyCSRpdmgs JGl2aCwkaXZsLCM2MwotKwlhbmQJJHRtcG13LCRjb25zdG51bSwkbWlkbnVtLGFzciAjMzEKLSsJ ZW9yCSRpdmwsJHRtcG14LCRpdmwsbHNsICMxCi0rCWZtb3YJJGl2ZDQwLCRpdmwKLSsJZm1vdgkk aXZkNDEsJGl2aAotKwotKwl2bGQxLjgJeyRkYXQ0fSxbJGlucF0sIzE2Ci0rCXZlb3IJJGRhdDMs JGRhdDMsJGl2MwkJLy8gdGhlIGZvdXJ0aCBibG9jawotKwl2ZW9yCSRkYXQ0LCRkYXQ0LCRpdjQK LSsJc3ViICRsZW4sJGxlbiwjMzIJCQkvLyBiaWFzCi0rCW1vdgkkcm91bmRzLCRyb3VuZHMwCi0r CWIJLkxvb3A1eF94dHNfZGVjCi0rCi0rLmFsaWduCTQKLSsuTG9vcDV4X3h0c19kZWM6Ci0rCWFl c2QJJGRhdDAscTgKLSsJYWVzaW1jCSRkYXQwLCRkYXQwCi0rCWFlc2QJJGRhdDEscTgKLSsJYWVz aW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIscTgKLSsJYWVzaW1jCSRkYXQyLCRkYXQyCi0r CWFlc2QJJGRhdDMscTgKLSsJYWVzaW1jCSRkYXQzLCRkYXQzCi0rCWFlc2QJJGRhdDQscTgKLSsJ YWVzaW1jCSRkYXQ0LCRkYXQ0Ci0rCXZsZDEuMzIJe3E4fSxbJGtleV9dLCMxNgkJLy8gbG9hZCBr ZXkgc2NoZWR1bGUuLi4KLSsJc3Vicwkkcm91bmRzLCRyb3VuZHMsIzIKLSsJYWVzZAkkZGF0MCxx OQotKwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxOQotKwlhZXNpbWMJJGRhdDEs JGRhdDEKLSsJYWVzZAkkZGF0MixxOQotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJYWVzZAkkZGF0 MyxxOQotKwlhZXNpbWMJJGRhdDMsJGRhdDMKLSsJYWVzZAkkZGF0NCxxOQotKwlhZXNpbWMJJGRh dDQsJGRhdDQKLSsJdmxkMS4zMgl7cTl9LFska2V5X10sIzE2CQkvLyBsb2FkIGtleSBzY2hlZHVs ZS4uLgotKwliLmd0CS5Mb29wNXhfeHRzX2RlYwotKwotKwlhZXNkCSRkYXQwLHE4Ci0rCWFlc2lt YwkkZGF0MCwkZGF0MAotKwlhZXNkCSRkYXQxLHE4Ci0rCWFlc2ltYwkkZGF0MSwkZGF0MQotKwlh ZXNkCSRkYXQyLHE4Ci0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQzLHE4Ci0rCWFl c2ltYwkkZGF0MywkZGF0MwotKwlhZXNkCSRkYXQ0LHE4Ci0rCWFlc2ltYwkkZGF0NCwkZGF0NAot KwlzdWJzCSRsZW4sJGxlbiwjMHg1MAkJCS8vIGJlY2F1c2UgLkx4dHNfZGVjX3RhaWw0eAotKwot KwlhZXNkCSRkYXQwLHE5Ci0rCWFlc2ltYwkkZGF0MCwkZGF0Ci0rCWFlc2QJJGRhdDEscTkKLSsJ YWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIscTkKLSsJYWVzaW1jCSRkYXQyLCRkYXQy Ci0rCWFlc2QJJGRhdDMscTkKLSsJYWVzaW1jCSRkYXQzLCRkYXQzCi0rCWFlc2QJJGRhdDQscTkK LSsJYWVzaW1jCSRkYXQ0LCRkYXQ0Ci0rCWNzZWwJJHhvZmZzZXQseHpyLCRsZW4sZ3QJCS8vIGJv cnJvdyB4NiwgdzYsICJndCIgaXMgbm90IHR5cG8KLSsJbW92CSRrZXlfLCRrZXkxCi0rCi0rCWFl c2QJJGRhdDAscTEwCi0rCWFlc2ltYwkkZGF0MCwkZGF0MAotKwlhZXNkCSRkYXQxLHExMAotKwlh ZXNpbWMJJGRhdDEsJGRhdDEKLSsJYWVzZAkkZGF0MixxMTAKLSsJYWVzaW1jCSRkYXQyLCRkYXQy Ci0rCWFlc2QJJGRhdDMscTEwCi0rCWFlc2ltYwkkZGF0MywkZGF0MwotKwlhZXNkCSRkYXQ0LHEx MAotKwlhZXNpbWMJJGRhdDQsJGRhdDQKLSsJYWRkCSRpbnAsJGlucCwkeG9mZnNldAkJLy8geDAg aXMgYWRqdXN0ZWQgaW4gc3VjaCB3YXkgdGhhdAotKwkJCQkJCS8vIGF0IGV4aXQgZnJvbSB0aGUg bG9vcCB2MS4xNmItdjI2LjE2YgotKwkJCQkJCS8vIGFyZSBsb2FkZWQgd2l0aCBsYXN0ICJ3b3Jk cyIKLSsJYWRkCSR4b2Zmc2V0LCRsZW4sIzB4NjAJCS8vIGJlY2F1c2UgLkx4dHNfZGVjX3RhaWw0 eAotKwotKwlhZXNkCSRkYXQwLHExMQotKwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0 MSxxMTEKLSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIscTExCi0rCWFlc2ltYwkk ZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQzLHExMQotKwlhZXNpbWMJJGRhdDMsJGRhdDMKLSsJYWVz ZAkkZGF0NCxxMTEKLSsJYWVzaW1jCSRkYXQ0LCRkYXQ0Ci0rCi0rCWFlc2QJJGRhdDAscTEyCi0r CWFlc2ltYwkkZGF0MCwkZGF0MAotKwlhZXNkCSRkYXQxLHExMgotKwlhZXNpbWMJJGRhdDEsJGRh dDEKLSsJYWVzZAkkZGF0MixxMTIKLSsJYWVzaW1jCSRkYXQyLCRkYXQyCi0rCWFlc2QJJGRhdDMs cTEyCi0rCWFlc2ltYwkkZGF0MywkZGF0MwotKwlhZXNkCSRkYXQ0LHExMgotKwlhZXNpbWMJJGRh dDQsJGRhdDQKLSsKLSsJYWVzZAkkZGF0MCxxMTMKLSsJYWVzaW1jCSRkYXQwLCRkYXQwCi0rCWFl c2QJJGRhdDEscTEzCi0rCWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNkCSRkYXQyLHExMwotKwlh ZXNpbWMJJGRhdDIsJGRhdDIKLSsJYWVzZAkkZGF0MyxxMTMKLSsJYWVzaW1jCSRkYXQzLCRkYXQz Ci0rCWFlc2QJJGRhdDQscTEzCi0rCWFlc2ltYwkkZGF0NCwkZGF0NAotKwotKwlhZXNkCSRkYXQw LHExNAotKwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxMTQKLSsJYWVzaW1jCSRk YXQxLCRkYXQxCi0rCWFlc2QJJGRhdDIscTE0Ci0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwlhZXNk CSRkYXQzLHExNAotKwlhZXNpbWMJJGRhdDMsJGRhdDMKLSsJYWVzZAkkZGF0NCxxMTQKLSsJYWVz aW1jCSRkYXQ0LCRkYXQ0Ci0rCi0rCXZlb3IJJHRtcDAsJHJuZGxhc3QsJGl2MAotKwlhZXNkCSRk YXQwLHExNQotKwkvLyBUaGUgaXYgZm9yIGZpcnN0IGJsb2NrIG9mIG5leHQgaXRlcmF0aW9uLgot KwlleHRyCSRtaWRudW14LCRpdmgsJGl2aCwjMzIKLSsJZXh0cgkkaXZoLCRpdmgsJGl2bCwjNjMK LSsJYW5kCSR0bXBtdywkY29uc3RudW0sJG1pZG51bSxhc3IgIzMxCi0rCWVvcgkkaXZsLCR0bXBt eCwkaXZsLGxzbCAjMQotKwlmbW92CSRpdmQwMCwkaXZsCi0rCWZtb3YJJGl2ZDAxLCRpdmgKLSsJ dmVvcgkkdG1wMSwkcm5kbGFzdCwkaXYxCi0rCXZsZDEuOAl7JGluMH0sWyRpbnBdLCMxNgotKwlh ZXNkCSRkYXQxLHExNQotKwkvLyBUaGUgaXYgZm9yIHNlY29uZCBibG9jawotKwlleHRyCSRtaWRu dW14LCRpdmgsJGl2aCwjMzIKLSsJZXh0cgkkaXZoLCRpdmgsJGl2bCwjNjMKLSsJYW5kCSR0bXBt dywkY29uc3RudW0sJG1pZG51bSxhc3IgIzMxCi0rCWVvcgkkaXZsLCR0bXBteCwkaXZsLGxzbCAj MQotKwlmbW92CSRpdmQxMCwkaXZsCi0rCWZtb3YJJGl2ZDExLCRpdmgKLSsJdmVvcgkkdG1wMiwk cm5kbGFzdCwkaXYyCi0rCXZsZDEuOAl7JGluMX0sWyRpbnBdLCMxNgotKwlhZXNkCSRkYXQyLHEx NQotKwkvLyBUaGUgaXYgZm9yIHRoaXJkIGJsb2NrCi0rCWV4dHIJJG1pZG51bXgsJGl2aCwkaXZo LCMzMgotKwlleHRyCSRpdmgsJGl2aCwkaXZsLCM2MwotKwlhbmQJJHRtcG13LCRjb25zdG51bSwk bWlkbnVtLGFzciAjMzEKLSsJZW9yCSRpdmwsJHRtcG14LCRpdmwsbHNsICMxCi0rCWZtb3YJJGl2 ZDIwLCRpdmwKLSsJZm1vdgkkaXZkMjEsJGl2aAotKwl2ZW9yCSR0bXAzLCRybmRsYXN0LCRpdjMK LSsJdmxkMS44CXskaW4yfSxbJGlucF0sIzE2Ci0rCWFlc2QJJGRhdDMscTE1Ci0rCS8vIFRoZSBp diBmb3IgZm91cnRoIGJsb2NrCi0rCWV4dHIJJG1pZG51bXgsJGl2aCwkaXZoLCMzMgotKwlleHRy CSRpdmgsJGl2aCwkaXZsLCM2MwotKwlhbmQJJHRtcG13LCRjb25zdG51bSwkbWlkbnVtLGFzciAj MzEKLSsJZW9yCSRpdmwsJHRtcG14LCRpdmwsbHNsICMxCi0rCWZtb3YJJGl2ZDMwLCRpdmwKLSsJ Zm1vdgkkaXZkMzEsJGl2aAotKwl2ZW9yCSR0bXA0LCRybmRsYXN0LCRpdjQKLSsJdmxkMS44CXsk aW4zfSxbJGlucF0sIzE2Ci0rCWFlc2QJJGRhdDQscTE1Ci0rCi0rCS8vIFRoZSBpdiBmb3IgZmlm dGggYmxvY2sKLSsJZXh0cgkkbWlkbnVteCwkaXZoLCRpdmgsIzMyCi0rCWV4dHIJJGl2aCwkaXZo LCRpdmwsIzYzCi0rCWFuZAkkdG1wbXcsJGNvbnN0bnVtLCRtaWRudW0sYXNyICMzMQotKwllb3IJ JGl2bCwkdG1wbXgsJGl2bCxsc2wgIzEKLSsJZm1vdgkkaXZkNDAsJGl2bAotKwlmbW92CSRpdmQ0 MSwkaXZoCi0rCi0rCXZsZDEuOAl7JGluNH0sWyRpbnBdLCMxNgotKwljYnoJJHhvZmZzZXQsLkx4 dHNfZGVjX3RhaWw0eAotKwl2bGQxLjMyCXtxOH0sWyRrZXlfXSwjMTYJCS8vIHJlLXByZS1sb2Fk IHJuZGtleVswXQotKwl2ZW9yCSR0bXAwLCR0bXAwLCRkYXQwCi0rCXZlb3IJJGRhdDAsJGluMCwk aXYwCi0rCXZlb3IJJHRtcDEsJHRtcDEsJGRhdDEKLSsJdmVvcgkkZGF0MSwkaW4xLCRpdjEKLSsJ dmVvcgkkdG1wMiwkdG1wMiwkZGF0MgotKwl2ZW9yCSRkYXQyLCRpbjIsJGl2MgotKwl2ZW9yCSR0 bXAzLCR0bXAzLCRkYXQzCi0rCXZlb3IJJGRhdDMsJGluMywkaXYzCi0rCXZlb3IJJHRtcDQsJHRt cDQsJGRhdDQKLSsJdnN0MS44CXskdG1wMH0sWyRvdXRdLCMxNgotKwl2ZW9yCSRkYXQ0LCRpbjQs JGl2NAotKwl2c3QxLjgJeyR0bXAxfSxbJG91dF0sIzE2Ci0rCW1vdgkkcm91bmRzLCRyb3VuZHMw Ci0rCXZzdDEuOAl7JHRtcDJ9LFskb3V0XSwjMTYKLSsJdmxkMS4zMgl7cTl9LFska2V5X10sIzE2 CQkvLyByZS1wcmUtbG9hZCBybmRrZXlbMV0KLSsJdnN0MS44CXskdG1wM30sWyRvdXRdLCMxNgot Kwl2c3QxLjgJeyR0bXA0fSxbJG91dF0sIzE2Ci0rCWIuaHMJLkxvb3A1eF94dHNfZGVjCi0rCi0r CWNtbgkkbGVuLCMweDEwCi0rCWIubmUJLkxvb3A1eF9kZWNfYWZ0ZXIKLSsJLy8gSWYgeDIoJGxl bikgZXF1YWwgdG8gLTB4MTAsIHRoZSBsZWZ0IGJsb2NrcyBpcyA0LgotKwkvLyBBZnRlciBzcGVj aWFsbHkgcHJvY2Vzc2luZywgdXRpbGl6ZSB0aGUgZml2ZSBibG9ja3MgcHJvY2Vzc2luZyBhZ2Fp bi4KLSsJLy8gSXQgd2lsbCB1c2UgdGhlIGZvbGxvd2luZyBJVnM6ICRpdjAsJGl2MCwkaXYxLCRp djIsJGl2My4KLSsJdm9ycgkkaXY0LCRpdjMsJGl2MwotKwl2b3JyCSRpdjMsJGl2MiwkaXYyCi0r CXZvcnIJJGl2MiwkaXYxLCRpdjEKLSsJdm9ycgkkaXYxLCRpdjAsJGl2MAotKwlmbW92CSRpdmws JGl2ZDQwCi0rCWZtb3YJJGl2aCwkaXZkNDEKLSsJdmVvcgkkZGF0MCwkaXYwLCRpbjAKLSsJdmVv cgkkZGF0MSwkaXYxLCRpbjEKLSsJdmVvcgkkZGF0MiwkaW4yLCRpdjIKLSsJdmVvcgkkZGF0Mywk aW4zLCRpdjMKLSsJdmVvcgkkZGF0NCwkaW40LCRpdjQKLSsJYi5lcQkuTG9vcDV4X3h0c19kZWMK LSsKLSsuTG9vcDV4X2RlY19hZnRlcjoKLSsJYWRkCSRsZW4sJGxlbiwjMHg1MAotKwljYnoJJGxl biwuTHh0c19kb25lCi0rCi0rCWFkZAkkcm91bmRzLCRyb3VuZHMwLCMyCi0rCXN1YnMJJGxlbiwk bGVuLCMweDMwCi0rCWIubG8JLkx4dHNfaW5uZXJfZGVjX3RhaWwKLSsKLSsJdmVvcgkkZGF0MCwk aXYwLCRpbjIKLSsJdmVvcgkkZGF0MSwkaXYxLCRpbjMKLSsJdmVvcgkkZGF0MiwkaW40LCRpdjIK LSsJYgkuTHh0c19vdXRlcl9kZWNfdGFpbAotKwotKy5hbGlnbgk0Ci0rLkx4dHNfZGVjX3RhaWw0 eDoKLSsJYWRkCSRpbnAsJGlucCwjMTYKLSsJdmxkMS4zMgl7JGRhdDB9LFskaW5wXSwjMTYKLSsJ dmVvcgkkdG1wMSwkZGF0MSwkdG1wMAotKwl2c3QxLjgJeyR0bXAxfSxbJG91dF0sIzE2Ci0rCXZl b3IJJHRtcDIsJGRhdDIsJHRtcDIKLSsJdnN0MS44CXskdG1wMn0sWyRvdXRdLCMxNgotKwl2ZW9y CSR0bXAzLCRkYXQzLCR0bXAzCi0rCXZlb3IJJHRtcDQsJGRhdDQsJHRtcDQKLSsJdnN0MS44CXsk dG1wMy0kdG1wNH0sWyRvdXRdLCMzMgotKwotKwliCS5MeHRzX2RvbmUKLSsuYWxpZ24JNAotKy5M eHRzX291dGVyX2RlY190YWlsOgotKwlhZXNkCSRkYXQwLHE4Ci0rCWFlc2ltYwkkZGF0MCwkZGF0 MAotKwlhZXNkCSRkYXQxLHE4Ci0rCWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNkCSRkYXQyLHE4 Ci0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwl2bGQxLjMyCXtxOH0sWyRrZXlfXSwjMTYKLSsJc3Vi cwkkcm91bmRzLCRyb3VuZHMsIzIKLSsJYWVzZAkkZGF0MCxxOQotKwlhZXNpbWMJJGRhdDAsJGRh dDAKLSsJYWVzZAkkZGF0MSxxOQotKwlhZXNpbWMJJGRhdDEsJGRhdDEKLSsJYWVzZAkkZGF0Mixx OQotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJdmxkMS4zMgl7cTl9LFska2V5X10sIzE2Ci0rCWIu Z3QJLkx4dHNfb3V0ZXJfZGVjX3RhaWwKLSsKLSsJYWVzZAkkZGF0MCxxOAotKwlhZXNpbWMJJGRh dDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxOAotKwlhZXNpbWMJJGRhdDEsJGRhdDEKLSsJYWVzZAkk ZGF0MixxOAotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJdmVvcgkkdG1wMCwkaXYwLCRybmRsYXN0 Ci0rCXN1YnMJJGxlbiwkbGVuLCMweDMwCi0rCS8vIFRoZSBpdiBmb3IgZmlyc3QgYmxvY2sKLSsJ Zm1vdgkkaXZsLCRpdmQyMAotKwlmbW92CSRpdmgsJGl2ZDIxCi0rCW1vdgkkY29uc3RudW0sIzB4 ODcKLSsJZXh0cgkkbWlkbnVteCwkaXZoLCRpdmgsIzMyCi0rCWV4dHIJJGl2aCwkaXZoLCRpdmws IzYzCi0rCWFuZAkkdG1wbXcsJGNvbnN0bnVtLCRtaWRudW0sYXNyICMzMQotKwllb3IJJGl2bCwk dG1wbXgsJGl2bCxsc2wgIzEKLSsJZm1vdgkkaXZkMDAsJGl2bAotKwlmbW92CSRpdmQwMSwkaXZo Ci0rCXZlb3IJJHRtcDEsJGl2MSwkcm5kbGFzdAotKwljc2VsCSR4b2Zmc2V0LCRsZW4sJHhvZmZz ZXQsbG8JLy8geDYsIHc2LCBpcyB6ZXJvIGF0IHRoaXMgcG9pbnQKLSsJYWVzZAkkZGF0MCxxOQot KwlhZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxOQotKwlhZXNpbWMJJGRhdDEsJGRh dDEKLSsJYWVzZAkkZGF0MixxOQotKwlhZXNpbWMJJGRhdDIsJGRhdDIKLSsJdmVvcgkkdG1wMiwk aXYyLCRybmRsYXN0Ci0rCS8vIFRoZSBpdiBmb3Igc2Vjb25kIGJsb2NrCi0rCWV4dHIJJG1pZG51 bXgsJGl2aCwkaXZoLCMzMgotKwlleHRyCSRpdmgsJGl2aCwkaXZsLCM2MwotKwlhbmQJJHRtcG13 LCRjb25zdG51bSwkbWlkbnVtLGFzciAjMzEKLSsJZW9yCSRpdmwsJHRtcG14LCRpdmwsbHNsICMx Ci0rCWZtb3YJJGl2ZDEwLCRpdmwKLSsJZm1vdgkkaXZkMTEsJGl2aAotKwotKwlhZGQJJHhvZmZz ZXQsJHhvZmZzZXQsIzB4MjAKLSsJYWRkCSRpbnAsJGlucCwkeG9mZnNldAkJLy8gJGlucCBpcyBh ZGp1c3RlZCB0byB0aGUgbGFzdCBkYXRhCi0rCi0rCW1vdgkka2V5Xywka2V5MQotKwotKwkvLyBU aGUgaXYgZm9yIHRoaXJkIGJsb2NrCi0rCWV4dHIJJG1pZG51bXgsJGl2aCwkaXZoLCMzMgotKwll eHRyCSRpdmgsJGl2aCwkaXZsLCM2MwotKwlhbmQJJHRtcG13LCRjb25zdG51bSwkbWlkbnVtLGFz ciAjMzEKLSsJZW9yCSRpdmwsJHRtcG14LCRpdmwsbHNsICMxCi0rCWZtb3YJJGl2ZDIwLCRpdmwK LSsJZm1vdgkkaXZkMjEsJGl2aAotKwotKwlhZXNkCSRkYXQwLHExMgotKwlhZXNpbWMJJGRhdDAs JGRhdDAKLSsJYWVzZAkkZGF0MSxxMTIKLSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFlc2QJJGRh dDIscTEyCi0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQwLHExMwotKwlhZXNpbWMJ JGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxMTMKLSsJYWVzaW1jCSRkYXQxLCRkYXQxCi0rCWFl c2QJJGRhdDIscTEzCi0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQwLHExNAotKwlh ZXNpbWMJJGRhdDAsJGRhdDAKLSsJYWVzZAkkZGF0MSxxMTQKLSsJYWVzaW1jCSRkYXQxLCRkYXQx Ci0rCWFlc2QJJGRhdDIscTE0Ci0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwl2bGQxLjgJeyRpbjJ9 LFskaW5wXSwjMTYKLSsJYWVzZAkkZGF0MCxxMTUKLSsJYWVzZAkkZGF0MSxxMTUKLSsJYWVzZAkk ZGF0MixxMTUKLSsJdmxkMS4zMgl7cTh9LFska2V5X10sIzE2CQkvLyByZS1wcmUtbG9hZCBybmRr ZXlbMF0KLSsJYWRkCSRyb3VuZHMsJHJvdW5kczAsIzIKLSsJdmVvcgkkdG1wMCwkdG1wMCwkZGF0 MAotKwl2ZW9yCSR0bXAxLCR0bXAxLCRkYXQxCi0rCXZlb3IJJGRhdDIsJGRhdDIsJHRtcDIKLSsJ dmxkMS4zMgl7cTl9LFska2V5X10sIzE2CQkvLyByZS1wcmUtbG9hZCBybmRrZXlbMV0KLSsJdnN0 MS44CXskdG1wMH0sWyRvdXRdLCMxNgotKwl2c3QxLjgJeyR0bXAxfSxbJG91dF0sIzE2Ci0rCXZz dDEuOAl7JGRhdDJ9LFskb3V0XSwjMTYKLSsKLSsJY21uCSRsZW4sIzB4MzAKLSsJYWRkCSRsZW4s JGxlbiwjMHgzMAotKwliLmVxCS5MeHRzX2RvbmUKLSsJc3ViCSRsZW4sJGxlbiwjMHgzMAotKwl2 b3JyCSRpbjMsJGluMSwkaW4xCi0rCXZvcnIJJGluNCwkaW4yLCRpbjIKLSsJbm9wCi0rCi0rLkx4 dHNfaW5uZXJfZGVjX3RhaWw6Ci0rCS8vICRsZW4gPT0gLTB4MTAgbWVhbnMgdHdvIGJsb2NrcyBs ZWZ0LgotKwljbW4JJGxlbiwjMHgxMAotKwl2ZW9yCSRkYXQxLCRpbjMsJGl2MAotKwl2ZW9yCSRk YXQyLCRpbjQsJGl2MQotKwliLmVxCS5MeHRzX2RlY190YWlsX2xvb3AKLSsJdmVvcgkkZGF0Miwk aW40LCRpdjAKLSsuTHh0c19kZWNfdGFpbF9sb29wOgotKwlhZXNkCSRkYXQxLHE4Ci0rCWFlc2lt YwkkZGF0MSwkZGF0MQotKwlhZXNkCSRkYXQyLHE4Ci0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwl2 bGQxLjMyCXtxOH0sWyRrZXlfXSwjMTYKLSsJc3Vicwkkcm91bmRzLCRyb3VuZHMsIzIKLSsJYWVz ZAkkZGF0MSxxOQotKwlhZXNpbWMJJGRhdDEsJGRhdDEKLSsJYWVzZAkkZGF0MixxOQotKwlhZXNp bWMJJGRhdDIsJGRhdDIKLSsJdmxkMS4zMgl7cTl9LFska2V5X10sIzE2Ci0rCWIuZ3QJLkx4dHNf ZGVjX3RhaWxfbG9vcAotKwotKwlhZXNkCSRkYXQxLHE4Ci0rCWFlc2ltYwkkZGF0MSwkZGF0MQot KwlhZXNkCSRkYXQyLHE4Ci0rCWFlc2ltYwkkZGF0MiwkZGF0MgotKwlhZXNkCSRkYXQxLHE5Ci0r CWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNkCSRkYXQyLHE5Ci0rCWFlc2ltYwkkZGF0MiwkZGF0 MgotKwlhZXNkCSRkYXQxLHExMgotKwlhZXNpbWMJJGRhdDEsJGRhdDEKLSsJYWVzZAkkZGF0Mixx MTIKLSsJYWVzaW1jCSRkYXQyLCRkYXQyCi0rCWNtbgkkbGVuLCMweDIwCi0rCWFlc2QJJGRhdDEs cTEzCi0rCWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNkCSRkYXQyLHExMwotKwlhZXNpbWMJJGRh dDIsJGRhdDIKLSsJdmVvcgkkdG1wMSwkaXYwLCRybmRsYXN0Ci0rCWFlc2QJJGRhdDEscTE0Ci0r CWFlc2ltYwkkZGF0MSwkZGF0MQotKwlhZXNkCSRkYXQyLHExNAotKwlhZXNpbWMJJGRhdDIsJGRh dDIKLSsJdmVvcgkkdG1wMiwkaXYxLCRybmRsYXN0Ci0rCWFlc2QJJGRhdDEscTE1Ci0rCWFlc2QJ JGRhdDIscTE1Ci0rCWIuZXEJLkx4dHNfZGVjX29uZQotKwl2ZW9yCSR0bXAxLCR0bXAxLCRkYXQx Ci0rCXZlb3IJJHRtcDIsJHRtcDIsJGRhdDIKLSsJdm9ycgkkaXYwLCRpdjIsJGl2MgotKwl2b3Jy CSRpdjEsJGl2MywkaXYzCi0rCXZzdDEuOAl7JHRtcDF9LFskb3V0XSwjMTYKLSsJdnN0MS44CXsk dG1wMn0sWyRvdXRdLCMxNgotKwlhZGQJJGxlbiwkbGVuLCMxNgotKwliCS5MeHRzX2RvbmUKLSsK LSsuTHh0c19kZWNfb25lOgotKwl2ZW9yCSR0bXAxLCR0bXAxLCRkYXQyCi0rCXZvcnIJJGl2MCwk aXYxLCRpdjEKLSsJdm9ycgkkaXYxLCRpdjIsJGl2MgotKwl2c3QxLjgJeyR0bXAxfSxbJG91dF0s IzE2Ci0rCWFkZAkkbGVuLCRsZW4sIzMyCi0rCi0rLkx4dHNfZG9uZToKLSsJdHN0CSR0YWlsY250 LCMweGYKLSsJYi5lcQkuTHh0c19kZWNfYWJvcnQKLSsJLy8gUHJvY2Vzc2luZyB0aGUgbGFzdCB0 d28gYmxvY2tzIHdpdGggY2lwaGVyIHN0ZWFsaW5nLgotKwltb3YJeDcseDMKLSsJY2Juegl4Miwu THh0c19kZWNfMXN0X2RvbmUKLSsJdmxkMS4zMgl7JGRhdDB9LFskaW5wXSwjMTYKLSsKLSsJLy8g RGVjcnlwdCB0aGUgbGFzdCBzZWNvZCBibG9jayB0byBnZXQgdGhlIGxhc3QgcGxhaW4gdGV4dCBi bG9jawotKy5MeHRzX2RlY18xc3RfZG9uZToKLSsJZW9yCSR0bXBpbiwkZGF0MCwkaXYxCi0rCWxk cgkkcm91bmRzLFska2V5MSwjMjQwXQotKwl2bGQxLjMyCXskZGF0MH0sWyRrZXkxXSwjMTYKLSsJ c3ViCSRyb3VuZHMsJHJvdW5kcywjMgotKwl2bGQxLjMyCXskZGF0MX0sWyRrZXkxXSwjMTYKLSsu TG9vcF9maW5hbF8ybmRfZGVjOgotKwlhZXNkCSR0bXBpbiwkZGF0MAotKwlhZXNpbWMJJHRtcGlu LCR0bXBpbgotKwl2bGQxLjMyCXskZGF0MH0sWyRrZXkxXSwjMTYJCS8vIGxvYWQga2V5IHNjaGVk dWxlLi4uCi0rCXN1YnMJJHJvdW5kcywkcm91bmRzLCMyCi0rCWFlc2QJJHRtcGluLCRkYXQxCi0r CWFlc2ltYwkkdG1waW4sJHRtcGluCi0rCXZsZDEuMzIJeyRkYXQxfSxbJGtleTFdLCMxNgkJLy8g bG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsJYi5ndAkuTG9vcF9maW5hbF8ybmRfZGVjCi0rCi0rCWFl c2QJJHRtcGluLCRkYXQwCi0rCWFlc2ltYwkkdG1waW4sJHRtcGluCi0rCXZsZDEuMzIJeyRkYXQw fSxbJGtleTFdCi0rCWFlc2QJJHRtcGluLCRkYXQxCi0rCXZlb3IJJHRtcGluLCR0bXBpbiwkZGF0 MAotKwl2ZW9yCSR0bXBpbiwkdG1waW4sJGl2MQotKwl2c3QxLjgJeyR0bXBpbn0sWyRvdXRdCi0r Ci0rCW1vdgkkdG1waW5wLCRpbnAKLSsJYWRkCSR0bXBvdXRwLCRvdXQsIzE2Ci0rCi0rCS8vIENv bXBvc2l0ZSB0aGUgdGFpbGNudCAiMTYgYnl0ZSBub3QgYWxpZ25lZCBibG9jayIgaW50byB0aGUg bGFzdCBzZWNvbmQgcGxhaW4gYmxvY2tzCi0rCS8vIHRvIGdldCB0aGUgbGFzdCBlbmNyeXB0ZWQg YmxvY2suCi0rLmNvbXBvc2l0ZV9kZWNfbG9vcDoKLSsJc3VicwkkdGFpbGNudCwkdGFpbGNudCwj MQotKwlsZHJiCSRsMm91dHAsWyRvdXQsJHRhaWxjbnRdCi0rCWxkcmIJJGxvdXRwLFskdG1waW5w LCR0YWlsY250XQotKwlzdHJiCSRsMm91dHAsWyR0bXBvdXRwLCR0YWlsY250XQotKwlzdHJiCSRs b3V0cCxbJG91dCwkdGFpbGNudF0KLSsJYi5ndAkuY29tcG9zaXRlX2RlY19sb29wCi0rLkx4dHNf ZGVjX2xvYWRfZG9uZToKLSsJdmxkMS44CXskdG1waW59LFskb3V0XQotKwl2ZW9yCSR0bXBpbiwk dG1waW4sJGl2MAotKwotKwkvLyBEZWNyeXB0IHRoZSBjb21wb3NpdGUgYmxvY2sgdG8gZ2V0IHRo ZSBsYXN0IHNlY29uZCBwbGFpbiB0ZXh0IGJsb2NrCi0rCWxkcgkkcm91bmRzLFska2V5XywjMjQw XQotKwl2bGQxLjgJeyRkYXR9LFska2V5X10sIzE2Ci0rCXN1Ygkkcm91bmRzLCRyb3VuZHMsIzIK LSsJdmxkMS44CXskZGF0MX0sWyRrZXlfXSwjMTYKLSsuTG9vcF9maW5hbF9kZWM6Ci0rCWFlc2QJ JHRtcGluLCRkYXQwCi0rCWFlc2ltYwkkdG1waW4sJHRtcGluCi0rCXZsZDEuMzIJeyRkYXQwfSxb JGtleV9dLCMxNgkJLy8gbG9hZCBrZXkgc2NoZWR1bGUuLi4KLSsJc3Vicwkkcm91bmRzLCRyb3Vu ZHMsIzIKLSsJYWVzZAkkdG1waW4sJGRhdDEKLSsJYWVzaW1jCSR0bXBpbiwkdG1waW4KLSsJdmxk MS4zMgl7JGRhdDF9LFska2V5X10sIzE2CQkvLyBsb2FkIGtleSBzY2hlZHVsZS4uLgotKwliLmd0 CS5Mb29wX2ZpbmFsX2RlYwotKwotKwlhZXNkCSR0bXBpbiwkZGF0MAotKwlhZXNpbWMJJHRtcGlu LCR0bXBpbgotKwl2bGQxLjMyCXskZGF0MH0sWyRrZXlfXQotKwlhZXNkCSR0bXBpbiwkZGF0MQot Kwl2ZW9yCSR0bXBpbiwkdG1waW4sJGRhdDAKLSsJdmVvcgkkdG1waW4sJHRtcGluLCRpdjAKLSsJ dnN0MS44CXskdG1waW59LFskb3V0XQotKwotKy5MeHRzX2RlY19hYm9ydDoKLSsJbGRwCSR0YWls Y250LCRtaWRudW14LFtzcCwjNDhdCi0rCWxkcAkkaXZkMTAsJGl2ZDIwLFtzcCwjMzJdCi0rCWxk cAkkaXZkMzAsJGl2ZDQwLFtzcCwjMTZdCi0rCWxkcAkkY29uc3RudW14LCR0bXBpbnAsW3NwXSwj NjQKLSsKLSsuTHh0c19kZWNfZmluYWxfYWJvcnQ6Ci0rCXJldAotKy5zaXplCSR7cHJlZml4fV94 dHNfZGVjcnlwdCwuLSR7cHJlZml4fV94dHNfZGVjcnlwdAotK19fXwotK30KLSt9fX0KLSAkY29k ZS49PDxfX187Ci0gI2VuZGlmCi0gX19fCi1AQCAtOTYzLDcgKzM2MTUsNyBAQCBpZiAoJGZsYXZv dXIgPX4gLzY0LykgewkJCSMjIyMjIyMjIDY0LWJpCi0gCSAgICAjIHNpbmNlIEFSTXY3IGluc3Ry dWN0aW9ucyBhcmUgYWx3YXlzIGVuY29kZWQgbGl0dGxlLWVuZGlhbi4KLSAJICAgICMgY29ycmVj dCBzb2x1dGlvbiBpcyB0byB1c2UgLmluc3QgZGlyZWN0aXZlLCBidXQgb2xkZXIKLSAJICAgICMg YXNzZW1ibGVycyBkb24ndCBpbXBsZW1lbnQgaXQ6LSgKLS0JICAgIHNwcmludGYgIi5ieXRlXHQw eCUwMngsMHglMDJ4LDB4JTAyeCwweCUwMnhcdEAgJXMgJXMiLAotKwkgICAgc3ByaW50ZiAiSU5T VCgweCUwMngsMHglMDJ4LDB4JTAyeCwweCUwMngpXHRAICVzICVzIiwKLSAJCQkkd29yZCYweGZm LCgkd29yZD4+OCkmMHhmZiwKLSAJCQkoJHdvcmQ+PjE2KSYweGZmLCgkd29yZD4+MjQpJjB4ZmYs Ci0gCQkJJG1uZW1vbmljLCRhcmc7Ci1AQCAtMTAwNCwxNCArMzY1NiwxNyBAQCBpZiAoJGZsYXZv dXIgPX4gLzY0LykgewkJCSMjIyMjIyMjIDY0LWJpCi0gCXMvXF0sI1swLTldKy9dIS9vOwotIAot IAlzL1t2XT8oYWVzXHcrKVxzKyhbcXZdLiopL3VuYWVzKCQxLCQyKS9nZW8Jb3IKLS0Jcy9jY2xy XHMrKFteLF0rKSxccyooW2Etel0rKS9tb3YkMgkkMSwjMC9vCW9yCi0rCXMvY2NsclxzKyhbXixd KyksXHMqKFthLXpdKykvbW92LiQyCSQxLCMwL28Jb3IKLSAJcy92dGJsXC44XHMrKC4qKS91bnZ0 YmwoJDEpL2dlbwkJCW9yCi0gCXMvdmR1cFwuMzJccysoLiopL3VudmR1cDMyKCQxKS9nZW8JCW9y Ci0gCXMvdm1vdlwuMzJccysoLiopL3Vudm1vdjMyKCQxKS9nZW8JCW9yCi0gCXMvXihccyspYlwu LyQxYi9vCQkJCW9yCi0tCXMvXihccyspbW92XC4vJDFtb3YvbwkJCQlvcgotIAlzL14oXHMrKXJl dC8kMWJ4XHRsci9vOwotIAotKwlpZiAocy9eKFxzKyltb3ZcLihbYS16XSspLyQxbW92JDIvKSB7 Ci0rCSAgICBwcmludCAiCWl0CSQyXG4iOwotKwl9Ci0rCi0gCXByaW50ICRfLCJcbiI7Ci0gICAg IH0KLSB9Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xaS9jcnlwdG8vYWVzL2FzbS92cGFlcy1hcm12 OC5wbC5hcm0tdXBkYXRlIG9wZW5zc2wtMS4xLjFpL2NyeXB0by9hZXMvYXNtL3ZwYWVzLWFybXY4 LnBsCi0tLS0gb3BlbnNzbC0xLjEuMWkvY3J5cHRvL2Flcy9hc20vdnBhZXMtYXJtdjgucGwuYXJt LXVwZGF0ZQkyMDIwLTEyLTA4IDE0OjIwOjU5LjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wt MS4xLjFpL2NyeXB0by9hZXMvYXNtL3ZwYWVzLWFybXY4LnBsCTIwMjAtMTItMDkgMTA6Mzc6Mzgu NDA1NTU4OTI5ICswMTAwCi1AQCAtMzAsNiArMzAsNyBAQAotICMgRGVudmVyKCoqKikgICAgICAg MTYuNigqKikgICAgMTUuMS8xNy44KCoqKSAgICBbOC44MC85LjkzICAgICAgICAgXQotICMgQXBw bGUgQTcoKioqKSAgICAgMjIuNygqKikgICAgMTAuOS8xNC4zICAgICAgICBbOC40NS8xMC4wICAg ICAgICAgXQotICMgTW9uZ29vc2UoKioqKSAgICAgMjYuMygqKikgICAgMjEuMC8yNS4wKCoqKSAg ICBbMTMuMy8xNi44ICAgICAgICAgXQotKyMgVGh1bmRlclgyKCoqKikgICAgMzkuNCgqKikgICAg MzMuOC80OC42KCoqKQotICMKLSAjICgqKQlFQ0IgZGVub3RlcyBhcHByb3hpbWF0ZSByZXN1bHQg Zm9yIHBhcmFsbGVsaXphYmxlIG1vZGVzCi0gIwlzdWNoIGFzIENCQyBkZWNyeXB0LCBDVFIsIGV0 Yy47Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xaS9jcnlwdG8vY2hhY2hhL2FzbS9jaGFjaGEtYXJt djgucGwuYXJtLXVwZGF0ZSBvcGVuc3NsLTEuMS4xaS9jcnlwdG8vY2hhY2hhL2FzbS9jaGFjaGEt YXJtdjgucGwKLS0tLSBvcGVuc3NsLTEuMS4xaS9jcnlwdG8vY2hhY2hhL2FzbS9jaGFjaGEtYXJt djgucGwuYXJtLXVwZGF0ZQkyMDIwLTEyLTA4IDE0OjIwOjU5LjAwMDAwMDAwMCArMDEwMAotKysr IG9wZW5zc2wtMS4xLjFpL2NyeXB0by9jaGFjaGEvYXNtL2NoYWNoYS1hcm12OC5wbAkyMDIwLTEy LTA5IDEwOjQwOjU3LjkyMjI4ODYyNyArMDEwMAotQEAgLTE4LDMyICsxOCw0NCBAQAotICMKLSAj IENoYUNoYTIwIGZvciBBUk12OC4KLSAjCi0rIyBBcHJpbCAyMDE5Ci0rIwotKyMgUmVwbGFjZSAz eE5FT04rMXhJQUxVIGNvZGUgcGF0aCB3aXRoIDQrMS4gNCsxIGlzIGFjdHVhbGx5IGZhc3Rlc3QK LSsjIG9wdGlvbiBvbiBtb3N0KCopLCBidXQgbm90IGFsbCwgcHJvY2Vzc29ycywgeWV0IDYrMiBp cyByZXRhaW5lZC4KLSsjIFRoaXMgaXMgYmVjYXVzZSBwZW5hbHRpZXMgYXJlIGNvbnNpZGVyZWQg dG9sZXJhYmxlIGluIGNvbXBhcmlzb24gdG8KLSsjIGltcHJvdmVtZW50IG9uIHByb2Nlc3NvcnMg d2hlcmUgNisyIGhlbHBzLiBNb3N0IG5vdGFibHkgKzM3JSBvbgotKyMgVGh1bmRlclgyLiBJdCdz IHNlcnZlci1vcmllbnRlZCBwcm9jZXNzb3Igd2hpY2ggd2lsbCBoYXZlIHRvIHNlcnZlCi0rIyBh cyBtYW55IHJlcXVlc3RzIGFzIHBvc3NpYmxlLiBXaGlsZSBvdGhlcnMgYXJlIG1vc3RseSBjbGll bnRzLCB3aGVuCi0rIyBwZXJmb3JtYW5jZSBkb2Vzbid0IGhhdmUgdG8gYmUgYWJzb2x1dGUgdG9w LW5vdGNoLCBqdXN0IGZhc3QgZW5vdWdoLAotKyMgYXMgbWFqb3JpdHkgb2YgdGltZSBpcyBzcGVu dCAiZW50ZXJ0YWluaW5nIiByZWxhdGl2ZWx5IHNsb3cgaHVtYW4uCi0rIwotICMgUGVyZm9ybWFu Y2UgaW4gY3ljbGVzIHBlciBieXRlIG91dCBvZiBsYXJnZSBidWZmZXIuCi0gIwotLSMJCQlJQUxV L2djYy00LjkgICAgM3hORU9OKzF4SUFMVQk2eE5FT04rMnhJQUxVCi0rIwkJCUlBTFUvZ2NjLTQu OQk0eE5FT04rMXhJQUxVCTZ4TkVPTisyeElBTFUKLSAjCi0tIyBBcHBsZSBBNwkJNS41MC8rNDkl ICAgICAgIDMuMzMgICAgICAgICAgICAxLjcwCi0tIyBDb3J0ZXgtQTUzCQk4LjQwLys4MCUgICAg ICAgNC43MgkJNC43MigqKQotLSMgQ29ydGV4LUE1NwkJOC4wNi8rNDMlICAgICAgIDQuOTAgICAg ICAgICAgICA0LjQzKCoqKQotLSMgRGVudmVyCQk0LjUwLys4MiUgICAgICAgMi42MwkJMi42Nygq KQotLSMgWC1HZW5lCQk5LjUwLys0NiUgICAgICAgOC44MgkJOC44OSgqKQotLSMgTW9uZ29vc2UJ CTguMDAvKzQ0JQkzLjY0CQkzLjI1Ci0tIyBLcnlvCQkJOC4xNy8rNTAlCTQuODMJCTQuNjUKLSsj IEFwcGxlIEE3CQk1LjUwLys0OSUJMi43MgkJMS42MAotKyMgQ29ydGV4LUE1MwkJOC40MC8rODAl CTQuMDYJCTQuNDUoKikKLSsjIENvcnRleC1BNTcJCTguMDYvKzQzJQk0LjE1CQk0LjQwKCopCi0r IyBEZW52ZXIJCTQuNTAvKzgyJQkyLjMwCQkyLjcwKCopCi0rIyBYLUdlbmUJCTkuNTAvKzQ2JQk4 LjIwCQk4LjkwKCopCi0rIyBNb25nb29zZQkJOC4wMC8rNDQlCTIuNzQJCTMuMTIoKikKLSsjIEty eW8JCQk4LjE3Lys1MCUJNC40NwkJNC42NSgqKQotKyMgVGh1bmRlclgyCQk3LjIyLys0OCUJNS42 NAkJNC4xMAotICMKLS0jICgqKQlpdCdzIGV4cGVjdGVkIHRoYXQgZG91YmxpbmcgaW50ZXJsZWF2 ZSBmYWN0b3IgZG9lc24ndCBoZWxwCi0tIwlhbGwgcHJvY2Vzc29ycywgb25seSB0aG9zZSB3aXRo IGhpZ2hlciBORU9OIGxhdGVuY3kgYW5kCi0tIwloaWdoZXIgaW5zdHJ1Y3Rpb24gaXNzdWUgcmF0 ZTsKLS0jICgqKikJZXhwZWN0ZWQgaW1wcm92ZW1lbnQgd2FzIGFjdHVhbGx5IGhpZ2hlcjsKLSsj ICgqKQlzbG93ZXIgdGhhbiA0KzE6LSgKLSAKLS0kZmxhdm91cj1zaGlmdDsKLS0kb3V0cHV0PXNo aWZ0OwotKyMgJG91dHB1dCBpcyB0aGUgbGFzdCBhcmd1bWVudCBpZiBpdCBsb29rcyBsaWtlIGEg ZmlsZSAoaXQgaGFzIGFuIGV4dGVuc2lvbikKLSsjICRmbGF2b3VyIGlzIHRoZSBmaXJzdCBhcmd1 bWVudCBpZiBpdCBkb2Vzbid0IGxvb2sgbGlrZSBhIGZpbGUKLSskb3V0cHV0ID0gJCNBUkdWID49 IDAgJiYgJEFSR1ZbJCNBUkdWXSA9fiBtfFwuXHcrJHwgPyBwb3AgOiB1bmRlZjsKLSskZmxhdm91 ciA9ICQjQVJHViA+PSAwICYmICRBUkdWWzBdICF+IG18XC58ID8gc2hpZnQgOiB1bmRlZjsKLSAK LSAkMCA9fiBtLyguKltcL1xcXSlbXlwvXFxdKyQvOyAkZGlyPSQxOwotICggJHhsYXRlPSIke2Rp cn1hcm0teGxhdGUucGwiIGFuZCAtZiAkeGxhdGUgKSBvcgotICggJHhsYXRlPSIke2Rpcn0uLi8u Li9wZXJsYXNtL2FybS14bGF0ZS5wbCIgYW5kIC1mICR4bGF0ZSkgb3IKLSBkaWUgImNhbid0IGxv Y2F0ZSBhcm0teGxhdGUucGwiOwotIAotLW9wZW4gT1VULCJ8IFwiJF5YXCIgJHhsYXRlICRmbGF2 b3VyICRvdXRwdXQiOwotK29wZW4gT1VULCJ8IFwiJF5YXCIgJHhsYXRlICRmbGF2b3VyIFwiJG91 dHB1dFwiIgotKyAgICBvciBkaWUgImNhbid0IGNhbGwgJHhsYXRlOiAkISI7Ci0gKlNURE9VVD0q T1VUOwotIAotIHN1YiBBVVRPTE9BRCgpCQkjIHRodW5rIFtzaW1wbGlmaWVkXSB4ODYtc3R5bGUg cGVybGFzbQotQEAgLTEyMCw0MiArMTMyLDM3IEBAIG15ICgkYTMsJGIzLCRjMywkZDMpPW1hcCgo JF8mfjMpKygoJF8rMSkKLSB9Ci0gCi0gJGNvZGUuPTw8X19fOwotLSNpbmNsdWRlICJhcm1fYXJj aC5oIgotLQotLS50ZXh0Ci0tCi0rI2lmbmRlZglfX0tFUk5FTF9fCi0rIyBpbmNsdWRlICJhcm1f YXJjaC5oIgotIC5leHRlcm4JT1BFTlNTTF9hcm1jYXBfUAotIC5oaWRkZW4JT1BFTlNTTF9hcm1j YXBfUAotKyNlbmRpZgotKwotKy50ZXh0Ci0gCi0gLmFsaWduCTUKLSAuTHNpZ21hOgotIC5xdWFk CTB4MzMyMDY0NmU2MTcwNzg2NSwweDZiMjA2NTc0Nzk2MjJkMzIJCS8vIGVuZGlhbi1uZXV0cmFs Ci0gLkxvbmU6Ci0tLmxvbmcJMSwwLDAsMAotLS5MT1BFTlNTTF9hcm1jYXBfUDoKLS0jaWZkZWYJ X19JTFAzMl9fCi0tLmxvbmcJT1BFTlNTTF9hcm1jYXBfUC0uCi0tI2Vsc2UKLS0ucXVhZAlPUEVO U1NMX2FybWNhcF9QLS4KLS0jZW5kaWYKLS0uYXNjaXoJIkNoYUNoYTIwIGZvciBBUk12OCwgQ1JZ UFRPR0FNUyBieSA8YXBwcm9cQG9wZW5zc2wub3JnPiIKLSsubG9uZwkxLDIsMyw0Ci0rLkxyb3Qy NDoKLSsubG9uZwkweDAyMDEwMDAzLDB4MDYwNTA0MDcsMHgwYTA5MDgwYiwweDBlMGQwYzBmCi0r LmFzY2l6CSJDaGFDaGEyMCBmb3IgQVJNdjgsIENSWVBUT0dBTVMgYnkgXEBkb3QtYXNtIgotIAot IC5nbG9ibAlDaGFDaGEyMF9jdHIzMgotIC50eXBlCUNoYUNoYTIwX2N0cjMyLCVmdW5jdGlvbgot IC5hbGlnbgk1Ci0gQ2hhQ2hhMjBfY3RyMzI6Ci0gCWNiegkkbGVuLC5MYWJvcnQKLS0JYWRyCUB4 WzBdLC5MT1BFTlNTTF9hcm1jYXBfUAotIAljbXAJJGxlbiwjMTkyCi0gCWIubG8JLkxzaG9ydAot LSNpZmRlZglfX0lMUDMyX18KLS0JbGRyc3cJQHhbMV0sW0B4WzBdXQotLSNlbHNlCi0tCWxkcglA eFsxXSxbQHhbMF1dCi0tI2VuZGlmCi0tCWxkcgl3MTcsW0B4WzFdLEB4WzBdXQotKwotKyNpZm5k ZWYJX19LRVJORUxfXwotKwlhZHJwCXgxNyxPUEVOU1NMX2FybWNhcF9QCi0rCWxkcgl3MTcsW3gx NywjOmxvMTI6T1BFTlNTTF9hcm1jYXBfUF0KLSAJdHN0CXcxNywjQVJNVjdfTkVPTgotLQliLm5l CUNoYUNoYTIwX25lb24KLSsJYi5uZQkuTENoYUNoYTIwX25lb24KLSsjZW5kaWYKLSAKLSAuTHNo b3J0OgotIAkuaW5zdAkweGQ1MDMyMzNmCQkJLy8gcGFjaWFzcAotQEAgLTE3NCw3ICsxODEsNyBA QCBDaGFDaGEyMF9jdHIzMjoKLSAJbGRwCUBkWzJdLEBkWzNdLFska2V5XQkJLy8gbG9hZCBrZXkK LSAJbGRwCUBkWzRdLEBkWzVdLFska2V5LCMxNl0KLSAJbGRwCUBkWzZdLEBkWzddLFskY3RyXQkJ Ly8gbG9hZCBjb3VudGVyCi0tI2lmZGVmCV9fQVJNRUJfXwotKyNpZmRlZglfX0FBUkNINjRFQl9f Ci0gCXJvcglAZFsyXSxAZFsyXSwjMzIKLSAJcm9yCUBkWzNdLEBkWzNdLCMzMgotIAlyb3IJQGRb NF0sQGRbNF0sIzMyCi1AQCAtMjQzLDcgKzI1MCw3IEBAICRjb2RlLj08PF9fXzsKLSAJYWRkCUB4 WzE0XSxAeFsxNF0sQHhbMTVdLGxzbCMzMgotIAlsZHAJQHhbMTNdLEB4WzE1XSxbJGlucCwjNDhd Ci0gCWFkZAkkaW5wLCRpbnAsIzY0Ci0tI2lmZGVmCV9fQVJNRUJfXwotKyNpZmRlZglfX0FBUkNI NjRFQl9fCi0gCXJldglAeFswXSxAeFswXQotIAlyZXYJQHhbMl0sQHhbMl0KLSAJcmV2CUB4WzRd LEB4WzRdCi1AQCAtMzAwLDcgKzMwNyw3IEBAICRjb2RlLj08PF9fXzsKLSAJYWRkCUB4WzEwXSxA eFsxMF0sQHhbMTFdLGxzbCMzMgotIAlhZGQJQHhbMTJdLEB4WzEyXSxAeFsxM10sbHNsIzMyCi0g CWFkZAlAeFsxNF0sQHhbMTRdLEB4WzE1XSxsc2wjMzIKLS0jaWZkZWYJX19BUk1FQl9fCi0rI2lm ZGVmCV9fQUFSQ0g2NEVCX18KLSAJcmV2CUB4WzBdLEB4WzBdCi0gCXJldglAeFsyXSxAeFsyXQot IAlyZXYJQHhbNF0sQHhbNF0KLUBAIC0zNDEsNDYgKzM0OCw5MSBAQCAkY29kZS49PDxfX187Ci0g X19fCi0gCi0ge3t7Ci0tbXkgKCRBMCwkQjAsJEMwLCREMCwkQTEsJEIxLCRDMSwkRDEsJEEyLCRC MiwkQzIsJEQyLCRUMCwkVDEsJFQyLCRUMykgPQotLSAgICBtYXAoInYkXy40cyIsKDAuLjcsMTYu LjIzKSk7Ci0tbXkgKEBLKT1tYXAoInYkXy40cyIsKDI0Li4zMCkpOwotLW15ICRPTkU9InYzMS40 cyI7Ci0rbXkgQEsgPSBtYXAoInYkXy40cyIsKDAuLjMpKTsKLStteSAoJHh0MCwkeHQxLCR4dDIs JHh0MywgJENUUiwkUk9UMjQpID0gbWFwKCJ2JF8uNHMiLCg0Li45KSk7Ci0rbXkgQFggPSBtYXAo InYkXy40cyIsKDE2LDIwLDI0LDI4LCAxNywyMSwyNSwyOSwgMTgsMjIsMjYsMzAsIDE5LDIzLDI3 LDMxKSk7Ci0rbXkgKCR4YTAsJHhhMSwkeGEyLCR4YTMsICR4YjAsJHhiMSwkeGIyLCR4YjMsCi0r ICAgICR4YzAsJHhjMSwkeGMyLCR4YzMsICR4ZDAsJHhkMSwkeGQyLCR4ZDMpID0gQFg7Ci0gCi0t c3ViIE5FT05ST1VORCB7Ci0tbXkgJG9kZCA9IHBvcDsKLS1teSAoJGEsJGIsJGMsJGQsJHQpPUBf OwotK3N1YiBORU9OX2xhbmVfUk9VTkQgewotK215ICgkYTAsJGIwLCRjMCwkZDApPUBfOwotK215 ICgkYTEsJGIxLCRjMSwkZDEpPW1hcCgoJF8mfjMpKygoJF8rMSkmMyksKCRhMCwkYjAsJGMwLCRk MCkpOwotK215ICgkYTIsJGIyLCRjMiwkZDIpPW1hcCgoJF8mfjMpKygoJF8rMSkmMyksKCRhMSwk YjEsJGMxLCRkMSkpOwotK215ICgkYTMsJGIzLCRjMywkZDMpPW1hcCgoJF8mfjMpKygoJF8rMSkm MyksKCRhMiwkYjIsJGMyLCRkMikpOwotK215IEB4PW1hcCgiJyRfJyIsQFgpOwotIAotIAkoCi0t CSImYWRkCQkoJyRhJywnJGEnLCckYicpIiwKLS0JIiZlb3IJCSgnJGQnLCckZCcsJyRhJykiLAot LQkiJnJldjMyXzE2CSgnJGQnLCckZCcpIiwJCSMgdnJvdCAoJGQsMTYpCi0tCi0tCSImYWRkCQko JyRjJywnJGMnLCckZCcpIiwKLS0JIiZlb3IJCSgnJHQnLCckYicsJyRjJykiLAotLQkiJnVzaHIJ CSgnJGInLCckdCcsMjApIiwKLS0JIiZzbGkJCSgnJGInLCckdCcsMTIpIiwKLS0KLS0JIiZhZGQJ CSgnJGEnLCckYScsJyRiJykiLAotLQkiJmVvcgkJKCckdCcsJyRkJywnJGEnKSIsCi0tCSImdXNo cgkJKCckZCcsJyR0JywyNCkiLAotLQkiJnNsaQkJKCckZCcsJyR0Jyw4KSIsCi0tCi0tCSImYWRk CQkoJyRjJywnJGMnLCckZCcpIiwKLS0JIiZlb3IJCSgnJHQnLCckYicsJyRjJykiLAotLQkiJnVz aHIJCSgnJGInLCckdCcsMjUpIiwKLS0JIiZzbGkJCSgnJGInLCckdCcsNykiLAotLQotLQkiJmV4 dAkJKCckYycsJyRjJywnJGMnLDgpIiwKLS0JIiZleHQJCSgnJGQnLCckZCcsJyRkJywkb2RkPzQ6 MTIpIiwKLS0JIiZleHQJCSgnJGInLCckYicsJyRiJywkb2RkPzEyOjQpIgotKwkiJmFkZAkJKEB4 WyRhMF0sQHhbJGEwXSxAeFskYjBdKSIsCSMgUTEKLSsJICImYWRkCQkoQHhbJGExXSxAeFskYTFd LEB4WyRiMV0pIiwJIyBRMgotKwkgICImYWRkCQkoQHhbJGEyXSxAeFskYTJdLEB4WyRiMl0pIiwJ IyBRMwotKwkgICAiJmFkZAkoQHhbJGEzXSxAeFskYTNdLEB4WyRiM10pIiwJIyBRNAotKwkiJmVv cgkJKEB4WyRkMF0sQHhbJGQwXSxAeFskYTBdKSIsCi0rCSAiJmVvcgkJKEB4WyRkMV0sQHhbJGQx XSxAeFskYTFdKSIsCi0rCSAgIiZlb3IJCShAeFskZDJdLEB4WyRkMl0sQHhbJGEyXSkiLAotKwkg ICAiJmVvcgkoQHhbJGQzXSxAeFskZDNdLEB4WyRhM10pIiwKLSsJIiZyZXYzMl8xNgkoQHhbJGQw XSxAeFskZDBdKSIsCi0rCSAiJnJldjMyXzE2CShAeFskZDFdLEB4WyRkMV0pIiwKLSsJICAiJnJl djMyXzE2CShAeFskZDJdLEB4WyRkMl0pIiwKLSsJICAgIiZyZXYzMl8xNgkoQHhbJGQzXSxAeFsk ZDNdKSIsCi0rCi0rCSImYWRkCQkoQHhbJGMwXSxAeFskYzBdLEB4WyRkMF0pIiwKLSsJICImYWRk CQkoQHhbJGMxXSxAeFskYzFdLEB4WyRkMV0pIiwKLSsJICAiJmFkZAkJKEB4WyRjMl0sQHhbJGMy XSxAeFskZDJdKSIsCi0rCSAgICImYWRkCShAeFskYzNdLEB4WyRjM10sQHhbJGQzXSkiLAotKwki JmVvcgkJKCckeHQwJyxAeFskYjBdLEB4WyRjMF0pIiwKLSsJICImZW9yCQkoJyR4dDEnLEB4WyRi MV0sQHhbJGMxXSkiLAotKwkgICImZW9yCQkoJyR4dDInLEB4WyRiMl0sQHhbJGMyXSkiLAotKwkg ICAiJmVvcgkoJyR4dDMnLEB4WyRiM10sQHhbJGMzXSkiLAotKwkiJnVzaHIJCShAeFskYjBdLCck eHQwJywyMCkiLAotKwkgIiZ1c2hyCQkoQHhbJGIxXSwnJHh0MScsMjApIiwKLSsJICAiJnVzaHIJ KEB4WyRiMl0sJyR4dDInLDIwKSIsCi0rCSAgICImdXNocgkoQHhbJGIzXSwnJHh0MycsMjApIiwK LSsJIiZzbGkJCShAeFskYjBdLCckeHQwJywxMikiLAotKwkgIiZzbGkJCShAeFskYjFdLCckeHQx JywxMikiLAotKwkgICImc2xpCQkoQHhbJGIyXSwnJHh0MicsMTIpIiwKLSsJICAgIiZzbGkJKEB4 WyRiM10sJyR4dDMnLDEyKSIsCi0rCi0rCSImYWRkCQkoQHhbJGEwXSxAeFskYTBdLEB4WyRiMF0p IiwKLSsJICImYWRkCQkoQHhbJGExXSxAeFskYTFdLEB4WyRiMV0pIiwKLSsJICAiJmFkZAkJKEB4 WyRhMl0sQHhbJGEyXSxAeFskYjJdKSIsCi0rCSAgICImYWRkCShAeFskYTNdLEB4WyRhM10sQHhb JGIzXSkiLAotKwkiJmVvcgkJKCckeHQwJyxAeFskZDBdLEB4WyRhMF0pIiwKLSsJICImZW9yCQko JyR4dDEnLEB4WyRkMV0sQHhbJGExXSkiLAotKwkgICImZW9yCQkoJyR4dDInLEB4WyRkMl0sQHhb JGEyXSkiLAotKwkgICAiJmVvcgkoJyR4dDMnLEB4WyRkM10sQHhbJGEzXSkiLAotKwkiJnRibAkJ KEB4WyRkMF0sJ3skeHQwfScsJyRST1QyNCcpIiwKLSsJICImdGJsCQkoQHhbJGQxXSwneyR4dDF9 JywnJFJPVDI0JykiLAotKwkgICImdGJsCQkoQHhbJGQyXSwneyR4dDJ9JywnJFJPVDI0JykiLAot KwkgICAiJnRibAkoQHhbJGQzXSwneyR4dDN9JywnJFJPVDI0JykiLAotKwotKwkiJmFkZAkJKEB4 WyRjMF0sQHhbJGMwXSxAeFskZDBdKSIsCi0rCSAiJmFkZAkJKEB4WyRjMV0sQHhbJGMxXSxAeFsk ZDFdKSIsCi0rCSAgIiZhZGQJCShAeFskYzJdLEB4WyRjMl0sQHhbJGQyXSkiLAotKwkgICAiJmFk ZAkoQHhbJGMzXSxAeFskYzNdLEB4WyRkM10pIiwKLSsJIiZlb3IJCSgnJHh0MCcsQHhbJGIwXSxA eFskYzBdKSIsCi0rCSAiJmVvcgkJKCckeHQxJyxAeFskYjFdLEB4WyRjMV0pIiwKLSsJICAiJmVv cgkJKCckeHQyJyxAeFskYjJdLEB4WyRjMl0pIiwKLSsJICAgIiZlb3IJKCckeHQzJyxAeFskYjNd LEB4WyRjM10pIiwKLSsJIiZ1c2hyCQkoQHhbJGIwXSwnJHh0MCcsMjUpIiwKLSsJICImdXNocgkJ KEB4WyRiMV0sJyR4dDEnLDI1KSIsCi0rCSAgIiZ1c2hyCShAeFskYjJdLCckeHQyJywyNSkiLAot KwkgICAiJnVzaHIJKEB4WyRiM10sJyR4dDMnLDI1KSIsCi0rCSImc2xpCQkoQHhbJGIwXSwnJHh0 MCcsNykiLAotKwkgIiZzbGkJCShAeFskYjFdLCckeHQxJyw3KSIsCi0rCSAgIiZzbGkJCShAeFsk YjJdLCckeHQyJyw3KSIsCi0rCSAgICImc2xpCShAeFskYjNdLCckeHQzJyw3KSIKLSAJKTsKLSB9 Ci0gCi0gJGNvZGUuPTw8X19fOwotIAotKyNpZmRlZglfX0tFUk5FTF9fCi0rLmdsb2JsCUNoYUNo YTIwX25lb24KLSsjZW5kaWYKLSAudHlwZQlDaGFDaGEyMF9uZW9uLCVmdW5jdGlvbgotIC5hbGln bgk1Ci0gQ2hhQ2hhMjBfbmVvbjoKLSsuTENoYUNoYTIwX25lb246Ci0gCS5pbnN0CTB4ZDUwMzIz M2YJCQkvLyBwYWNpYXNwCi0gCXN0cAl4MjkseDMwLFtzcCwjLTk2XSEKLSAJYWRkCXgyOSxzcCwj MAotQEAgLTQwMyw4ICs0NTUsOSBAQCBDaGFDaGEyMF9uZW9uOgotIAlsZDEJe0BLWzFdLEBLWzJd fSxbJGtleV0KLSAJbGRwCUBkWzZdLEBkWzddLFskY3RyXQkJLy8gbG9hZCBjb3VudGVyCi0gCWxk MQl7QEtbM119LFskY3RyXQotLQlsZDEJeyRPTkV9LFtAeFswXV0KLS0jaWZkZWYJX19BUk1FQl9f Ci0rCXN0cAlkOCxkOSxbc3BdCQkJLy8gbWVldCBBQkkgcmVxdWlyZW1lbnRzCi0rCWxkMQl7JENU UiwkUk9UMjR9LFtAeFswXV0KLSsjaWZkZWYJX19BQVJDSDY0RUJfXwotIAlyZXY2NAlAS1swXSxA S1swXQotIAlyb3IJQGRbMl0sQGRbMl0sIzMyCi0gCXJvcglAZFszXSxAZFszXSwjMzIKLUBAIC00 MTMsMTE1ICs0NjYsMTI5IEBAIENoYUNoYTIwX25lb246Ci0gCXJvcglAZFs2XSxAZFs2XSwjMzIK LSAJcm9yCUBkWzddLEBkWzddLCMzMgotICNlbmRpZgotLQlhZGQJQEtbM10sQEtbM10sJE9ORQkJ Ly8gKz0gMQotLQlhZGQJQEtbNF0sQEtbM10sJE9ORQotLQlhZGQJQEtbNV0sQEtbNF0sJE9ORQot LQlzaGwJJE9ORSwkT05FLCMyCQkJLy8gMSAtPiA0Ci0gCi0gLkxvb3Bfb3V0ZXJfbmVvbjoKLS0J bW92LjMyCUB4WzBdLEBkWzBdCQkJLy8gdW5wYWNrIGtleSBibG9jawotLQlsc3IJQHhbMV0sQGRb MF0sIzMyCi0tCSBtb3YJJEEwLEBLWzBdCi0tCW1vdi4zMglAeFsyXSxAZFsxXQotLQlsc3IJQHhb M10sQGRbMV0sIzMyCi0tCSBtb3YJJEExLEBLWzBdCi0tCW1vdi4zMglAeFs0XSxAZFsyXQotLQls c3IJQHhbNV0sQGRbMl0sIzMyCi0tCSBtb3YJJEEyLEBLWzBdCi0tCW1vdi4zMglAeFs2XSxAZFsz XQotLQkgbW92CSRCMCxAS1sxXQotLQlsc3IJQHhbN10sQGRbM10sIzMyCi0tCSBtb3YJJEIxLEBL WzFdCi0tCW1vdi4zMglAeFs4XSxAZFs0XQotLQkgbW92CSRCMixAS1sxXQotLQlsc3IJQHhbOV0s QGRbNF0sIzMyCi0tCSBtb3YJJEQwLEBLWzNdCi0tCW1vdi4zMglAeFsxMF0sQGRbNV0KLS0JIG1v dgkkRDEsQEtbNF0KLS0JbHNyCUB4WzExXSxAZFs1XSwjMzIKLS0JIG1vdgkkRDIsQEtbNV0KLS0J bW92LjMyCUB4WzEyXSxAZFs2XQotLQkgbW92CSRDMCxAS1syXQotLQlsc3IJQHhbMTNdLEBkWzZd LCMzMgotLQkgbW92CSRDMSxAS1syXQotLQltb3YuMzIJQHhbMTRdLEBkWzddCi0tCSBtb3YJJEMy LEBLWzJdCi0tCWxzcglAeFsxNV0sQGRbN10sIzMyCi0rCWR1cAkkeGEwLEB7S1swXX1bMF0JCQkv LyB1bnBhY2sga2V5IGJsb2NrCi0rCSBtb3YuMzIJQHhbMF0sQGRbMF0KLSsJZHVwCSR4YTEsQHtL WzBdfVsxXQotKwkgbHNyCUB4WzFdLEBkWzBdLCMzMgotKwlkdXAJJHhhMixAe0tbMF19WzJdCi0r CSBtb3YuMzIJQHhbMl0sQGRbMV0KLSsJZHVwCSR4YTMsQHtLWzBdfVszXQotKwkgbHNyCUB4WzNd LEBkWzFdLCMzMgotKwlkdXAJJHhiMCxAe0tbMV19WzBdCi0rCSBtb3YuMzIJQHhbNF0sQGRbMl0K LSsJZHVwCSR4YjEsQHtLWzFdfVsxXQotKwkgbHNyCUB4WzVdLEBkWzJdLCMzMgotKwlkdXAJJHhi MixAe0tbMV19WzJdCi0rCSBtb3YuMzIJQHhbNl0sQGRbM10KLSsJZHVwCSR4YjMsQHtLWzFdfVsz XQotKwkgbHNyCUB4WzddLEBkWzNdLCMzMgotKwlkdXAJJHhkMCxAe0tbM119WzBdCi0rCSBtb3Yu MzIJQHhbOF0sQGRbNF0KLSsJZHVwCSR4ZDEsQHtLWzNdfVsxXQotKwkgbHNyCUB4WzldLEBkWzRd LCMzMgotKwlkdXAJJHhkMixAe0tbM119WzJdCi0rCSBtb3YuMzIJQHhbMTBdLEBkWzVdCi0rCWR1 cAkkeGQzLEB7S1szXX1bM10KLSsJIGxzcglAeFsxMV0sQGRbNV0sIzMyCi0rCWFkZAkkeGQwLCR4 ZDAsJENUUgotKwkgbW92LjMyCUB4WzEyXSxAZFs2XQotKwlkdXAJJHhjMCxAe0tbMl19WzBdCi0r CSBsc3IJQHhbMTNdLEBkWzZdLCMzMgotKwlkdXAJJHhjMSxAe0tbMl19WzFdCi0rCSBtb3YuMzIJ QHhbMTRdLEBkWzddCi0rCWR1cAkkeGMyLEB7S1syXX1bMl0KLSsJIGxzcglAeFsxNV0sQGRbN10s IzMyCi0rCWR1cAkkeGMzLEB7S1syXX1bM10KLSAKLSAJbW92CSRjdHIsIzEwCi0tCXN1YnMJJGxl biwkbGVuLCMyNTYKLSsJc3VicwkkbGVuLCRsZW4sIzMyMAotIC5Mb29wX25lb246Ci0gCXN1Ygkk Y3RyLCRjdHIsIzEKLSBfX18KLS0JbXkgQHRocmVhZDA9Jk5FT05ST1VORCgkQTAsJEIwLCRDMCwk RDAsJFQwLDApOwotLQlteSBAdGhyZWFkMT0mTkVPTlJPVU5EKCRBMSwkQjEsJEMxLCREMSwkVDEs MCk7Ci0tCW15IEB0aHJlYWQyPSZORU9OUk9VTkQoJEEyLCRCMiwkQzIsJEQyLCRUMiwwKTsKLS0J bXkgQHRocmVhZDM9JlJPVU5EKDAsNCw4LDEyKTsKLS0KLS0JZm9yZWFjaCAoQHRocmVhZDApIHsK LS0JCWV2YWw7CQkJZXZhbChzaGlmdChAdGhyZWFkMykpOwotLQkJZXZhbChzaGlmdChAdGhyZWFk MSkpOwlldmFsKHNoaWZ0KEB0aHJlYWQzKSk7Ci0tCQlldmFsKHNoaWZ0KEB0aHJlYWQyKSk7CWV2 YWwoc2hpZnQoQHRocmVhZDMpKTsKLS0JfQotLQotLQlAdGhyZWFkMD0mTkVPTlJPVU5EKCRBMCwk QjAsJEMwLCREMCwkVDAsMSk7Ci0tCUB0aHJlYWQxPSZORU9OUk9VTkQoJEExLCRCMSwkQzEsJEQx LCRUMSwxKTsKLS0JQHRocmVhZDI9Jk5FT05ST1VORCgkQTIsJEIyLCRDMiwkRDIsJFQyLDEpOwot LQlAdGhyZWFkMz0mUk9VTkQoMCw1LDEwLDE1KTsKLSsJbXkgQHBsdXNfb25lPSZST1VORCgwLDQs OCwxMik7Ci0rCWZvcmVhY2ggKCZORU9OX2xhbmVfUk9VTkQoMCw0LDgsMTIpKSAgeyBldmFsOyBl dmFsKHNoaWZ0KEBwbHVzX29uZSkpOyB9Ci0gCi0tCWZvcmVhY2ggKEB0aHJlYWQwKSB7Ci0tCQll dmFsOwkJCWV2YWwoc2hpZnQoQHRocmVhZDMpKTsKLS0JCWV2YWwoc2hpZnQoQHRocmVhZDEpKTsJ ZXZhbChzaGlmdChAdGhyZWFkMykpOwotLQkJZXZhbChzaGlmdChAdGhyZWFkMikpOwlldmFsKHNo aWZ0KEB0aHJlYWQzKSk7Ci0tCX0KLSsJQHBsdXNfb25lPSZST1VORCgwLDUsMTAsMTUpOwotKwlm b3JlYWNoICgmTkVPTl9sYW5lX1JPVU5EKDAsNSwxMCwxNSkpIHsgZXZhbDsgZXZhbChzaGlmdChA cGx1c19vbmUpKTsgfQotICRjb2RlLj08PF9fXzsKLSAJY2JuegkkY3RyLC5Mb29wX25lb24KLSAK LS0JYWRkLjMyCUB4WzBdLEB4WzBdLEBkWzBdCQkvLyBhY2N1bXVsYXRlIGtleSBibG9jawotLQkg YWRkCSRBMCwkQTAsQEtbMF0KLS0JYWRkCUB4WzFdLEB4WzFdLEBkWzBdLGxzciMzMgotLQkgYWRk CSRBMSwkQTEsQEtbMF0KLS0JYWRkLjMyCUB4WzJdLEB4WzJdLEBkWzFdCi0tCSBhZGQJJEEyLCRB MixAS1swXQotLQlhZGQJQHhbM10sQHhbM10sQGRbMV0sbHNyIzMyCi0tCSBhZGQJJEMwLCRDMCxA S1syXQotLQlhZGQuMzIJQHhbNF0sQHhbNF0sQGRbMl0KLS0JIGFkZAkkQzEsJEMxLEBLWzJdCi0t CWFkZAlAeFs1XSxAeFs1XSxAZFsyXSxsc3IjMzIKLS0JIGFkZAkkQzIsJEMyLEBLWzJdCi0tCWFk ZC4zMglAeFs2XSxAeFs2XSxAZFszXQotLQkgYWRkCSREMCwkRDAsQEtbM10KLS0JYWRkCUB4Wzdd LEB4WzddLEBkWzNdLGxzciMzMgotLQlhZGQuMzIJQHhbOF0sQHhbOF0sQGRbNF0KLS0JIGFkZAkk RDEsJEQxLEBLWzRdCi0tCWFkZAlAeFs5XSxAeFs5XSxAZFs0XSxsc3IjMzIKLS0JYWRkLjMyCUB4 WzEwXSxAeFsxMF0sQGRbNV0KLS0JIGFkZAkkRDIsJEQyLEBLWzVdCi0tCWFkZAlAeFsxMV0sQHhb MTFdLEBkWzVdLGxzciMzMgotLQlhZGQuMzIJQHhbMTJdLEB4WzEyXSxAZFs2XQotLQkgYWRkCSRC MCwkQjAsQEtbMV0KLS0JYWRkCUB4WzEzXSxAeFsxM10sQGRbNl0sbHNyIzMyCi0tCWFkZC4zMglA eFsxNF0sQHhbMTRdLEBkWzddCi0tCSBhZGQJJEIxLCRCMSxAS1sxXQotLQlhZGQJQHhbMTVdLEB4 WzE1XSxAZFs3XSxsc3IjMzIKLS0JIGFkZAkkQjIsJEIyLEBLWzFdCi0rCWFkZAkkeGQwLCR4ZDAs JENUUgotKwotKwl6aXAxCSR4dDAsJHhhMCwkeGExCQkJLy8gdHJhbnNwb3NlIGRhdGEKLSsJemlw MQkkeHQxLCR4YTIsJHhhMwotKwl6aXAyCSR4dDIsJHhhMCwkeGExCi0rCXppcDIJJHh0MywkeGEy LCR4YTMKLSsJemlwMS42NAkkeGEwLCR4dDAsJHh0MQotKwl6aXAyLjY0CSR4YTEsJHh0MCwkeHQx Ci0rCXppcDEuNjQJJHhhMiwkeHQyLCR4dDMKLSsJemlwMi42NAkkeGEzLCR4dDIsJHh0MwotKwot Kwl6aXAxCSR4dDAsJHhiMCwkeGIxCi0rCXppcDEJJHh0MSwkeGIyLCR4YjMKLSsJemlwMgkkeHQy LCR4YjAsJHhiMQotKwl6aXAyCSR4dDMsJHhiMiwkeGIzCi0rCXppcDEuNjQJJHhiMCwkeHQwLCR4 dDEKLSsJemlwMi42NAkkeGIxLCR4dDAsJHh0MQotKwl6aXAxLjY0CSR4YjIsJHh0MiwkeHQzCi0r CXppcDIuNjQJJHhiMywkeHQyLCR4dDMKLSsKLSsJemlwMQkkeHQwLCR4YzAsJHhjMQotKwkgYWRk LjMyCUB4WzBdLEB4WzBdLEBkWzBdCQkvLyBhY2N1bXVsYXRlIGtleSBibG9jawotKwl6aXAxCSR4 dDEsJHhjMiwkeGMzCi0rCSBhZGQJQHhbMV0sQHhbMV0sQGRbMF0sbHNyIzMyCi0rCXppcDIJJHh0 MiwkeGMwLCR4YzEKLSsJIGFkZC4zMglAeFsyXSxAeFsyXSxAZFsxXQotKwl6aXAyCSR4dDMsJHhj MiwkeGMzCi0rCSBhZGQJQHhbM10sQHhbM10sQGRbMV0sbHNyIzMyCi0rCXppcDEuNjQJJHhjMCwk eHQwLCR4dDEKLSsJIGFkZC4zMglAeFs0XSxAeFs0XSxAZFsyXQotKwl6aXAyLjY0CSR4YzEsJHh0 MCwkeHQxCi0rCSBhZGQJQHhbNV0sQHhbNV0sQGRbMl0sbHNyIzMyCi0rCXppcDEuNjQJJHhjMiwk eHQyLCR4dDMKLSsJIGFkZC4zMglAeFs2XSxAeFs2XSxAZFszXQotKwl6aXAyLjY0CSR4YzMsJHh0 MiwkeHQzCi0rCSBhZGQJQHhbN10sQHhbN10sQGRbM10sbHNyIzMyCi0rCi0rCXppcDEJJHh0MCwk eGQwLCR4ZDEKLSsJIGFkZC4zMglAeFs4XSxAeFs4XSxAZFs0XQotKwl6aXAxCSR4dDEsJHhkMiwk eGQzCi0rCSBhZGQJQHhbOV0sQHhbOV0sQGRbNF0sbHNyIzMyCi0rCXppcDIJJHh0MiwkeGQwLCR4 ZDEKLSsJIGFkZC4zMglAeFsxMF0sQHhbMTBdLEBkWzVdCi0rCXppcDIJJHh0MywkeGQyLCR4ZDMK LSsJIGFkZAlAeFsxMV0sQHhbMTFdLEBkWzVdLGxzciMzMgotKwl6aXAxLjY0CSR4ZDAsJHh0MCwk eHQxCi0rCSBhZGQuMzIJQHhbMTJdLEB4WzEyXSxAZFs2XQotKwl6aXAyLjY0CSR4ZDEsJHh0MCwk eHQxCi0rCSBhZGQJQHhbMTNdLEB4WzEzXSxAZFs2XSxsc3IjMzIKLSsJemlwMS42NAkkeGQyLCR4 dDIsJHh0MwotKwkgYWRkLjMyCUB4WzE0XSxAeFsxNF0sQGRbN10KLSsJemlwMi42NAkkeGQzLCR4 dDIsJHh0MwotKwkgYWRkCUB4WzE1XSxAeFsxNV0sQGRbN10sbHNyIzMyCi0gCi0gCWIubG8JLkx0 YWlsX25lb24KLSAKLSAJYWRkCUB4WzBdLEB4WzBdLEB4WzFdLGxzbCMzMgkvLyBwYWNrCi0gCWFk ZAlAeFsyXSxAeFsyXSxAeFszXSxsc2wjMzIKLSAJbGRwCUB4WzFdLEB4WzNdLFskaW5wLCMwXQkJ Ly8gbG9hZCBpbnB1dAotKwkgYWRkCSR4YTAsJHhhMCxAS1swXQkJCS8vIGFjY3VtdWxhdGUga2V5 IGJsb2NrCi0gCWFkZAlAeFs0XSxAeFs0XSxAeFs1XSxsc2wjMzIKLSAJYWRkCUB4WzZdLEB4WzZd LEB4WzddLGxzbCMzMgotIAlsZHAJQHhbNV0sQHhbN10sWyRpbnAsIzE2XQotKwkgYWRkCSR4YjAs JHhiMCxAS1sxXQotIAlhZGQJQHhbOF0sQHhbOF0sQHhbOV0sbHNsIzMyCi0gCWFkZAlAeFsxMF0s QHhbMTBdLEB4WzExXSxsc2wjMzIKLSAJbGRwCUB4WzldLEB4WzExXSxbJGlucCwjMzJdCi0rCSBh ZGQJJHhjMCwkeGMwLEBLWzJdCi0gCWFkZAlAeFsxMl0sQHhbMTJdLEB4WzEzXSxsc2wjMzIKLSAJ YWRkCUB4WzE0XSxAeFsxNF0sQHhbMTVdLGxzbCMzMgotIAlsZHAJQHhbMTNdLEB4WzE1XSxbJGlu cCwjNDhdCi0rCSBhZGQJJHhkMCwkeGQwLEBLWzNdCi0gCWFkZAkkaW5wLCRpbnAsIzY0Ci0tI2lm ZGVmCV9fQVJNRUJfXwotKyNpZmRlZglfX0FBUkNINjRFQl9fCi0gCXJldglAeFswXSxAeFswXQot IAlyZXYJQHhbMl0sQHhbMl0KLSAJcmV2CUB4WzRdLEB4WzRdCi1AQCAtNTMxLDQ4ICs1OTgsNjgg QEAgJGNvZGUuPTw8X19fOwotIAlyZXYJQHhbMTJdLEB4WzEyXQotIAlyZXYJQHhbMTRdLEB4WzE0 XQotICNlbmRpZgotLQlsZDEuOAl7JFQwLSRUM30sWyRpbnBdLCM2NAotKwlsZDEuOAl7JHh0MC0k eHQzfSxbJGlucF0sIzY0Ci0gCWVvcglAeFswXSxAeFswXSxAeFsxXQotKwkgYWRkCSR4YTEsJHhh MSxAS1swXQotIAllb3IJQHhbMl0sQHhbMl0sQHhbM10KLSsJIGFkZAkkeGIxLCR4YjEsQEtbMV0K LSAJZW9yCUB4WzRdLEB4WzRdLEB4WzVdCi0rCSBhZGQJJHhjMSwkeGMxLEBLWzJdCi0gCWVvcglA eFs2XSxAeFs2XSxAeFs3XQotKwkgYWRkCSR4ZDEsJHhkMSxAS1szXQotIAllb3IJQHhbOF0sQHhb OF0sQHhbOV0KLS0JIGVvcgkkQTAsJEEwLCRUMAotKwkgZW9yCSR4YTAsJHhhMCwkeHQwCi0rCSBt b3ZpCSR4dDAsIzUKLSAJZW9yCUB4WzEwXSxAeFsxMF0sQHhbMTFdCi0tCSBlb3IJJEIwLCRCMCwk VDEKLSsJIGVvcgkkeGIwLCR4YjAsJHh0MQotIAllb3IJQHhbMTJdLEB4WzEyXSxAeFsxM10KLS0J IGVvcgkkQzAsJEMwLCRUMgotKwkgZW9yCSR4YzAsJHhjMCwkeHQyCi0gCWVvcglAeFsxNF0sQHhb MTRdLEB4WzE1XQotLQkgZW9yCSREMCwkRDAsJFQzCi0tCSBsZDEuOAl7JFQwLSRUM30sWyRpbnBd LCM2NAotKwkgZW9yCSR4ZDAsJHhkMCwkeHQzCi0rCSBhZGQJJENUUiwkQ1RSLCR4dDAJCQkvLyAr PSA1Ci0rCSBsZDEuOAl7JHh0MC0keHQzfSxbJGlucF0sIzY0Ci0gCi0gCXN0cAlAeFswXSxAeFsy XSxbJG91dCwjMF0JCS8vIHN0b3JlIG91dHB1dAotLQkgYWRkCUBkWzZdLEBkWzZdLCM0CQkJLy8g aW5jcmVtZW50IGNvdW50ZXIKLSsJIGFkZAlAZFs2XSxAZFs2XSwjNQkJCS8vIGluY3JlbWVudCBj b3VudGVyCi0gCXN0cAlAeFs0XSxAeFs2XSxbJG91dCwjMTZdCi0tCSBhZGQJQEtbM10sQEtbM10s JE9ORQkJLy8gKz0gNAotIAlzdHAJQHhbOF0sQHhbMTBdLFskb3V0LCMzMl0KLS0JIGFkZAlAS1s0 XSxAS1s0XSwkT05FCi0gCXN0cAlAeFsxMl0sQHhbMTRdLFskb3V0LCM0OF0KLS0JIGFkZAlAS1s1 XSxAS1s1XSwkT05FCi0gCWFkZAkkb3V0LCRvdXQsIzY0Ci0gCi0tCXN0MS44CXskQTAtJEQwfSxb JG91dF0sIzY0Ci0tCWxkMS44CXskQTAtJEQwfSxbJGlucF0sIzY0Ci0tCi0tCWVvcgkkQTEsJEEx LCRUMAotLQllb3IJJEIxLCRCMSwkVDEKLS0JZW9yCSRDMSwkQzEsJFQyCi0tCWVvcgkkRDEsJEQx LCRUMwotLQlzdDEuOAl7JEExLSREMX0sWyRvdXRdLCM2NAotLQotLQllb3IJJEEyLCRBMiwkQTAK LS0JZW9yCSRCMiwkQjIsJEIwCi0tCWVvcgkkQzIsJEMyLCRDMAotLQllb3IJJEQyLCREMiwkRDAK LS0Jc3QxLjgJeyRBMi0kRDJ9LFskb3V0XSwjNjQKLSsJc3QxLjgJeyR4YTAtJHhkMH0sWyRvdXRd LCM2NAotKwkgYWRkCSR4YTIsJHhhMixAS1swXQotKwkgYWRkCSR4YjIsJHhiMixAS1sxXQotKwkg YWRkCSR4YzIsJHhjMixAS1syXQotKwkgYWRkCSR4ZDIsJHhkMixAS1szXQotKwlsZDEuOAl7JHhh MC0keGQwfSxbJGlucF0sIzY0Ci0rCi0rCWVvcgkkeGExLCR4YTEsJHh0MAotKwllb3IJJHhiMSwk eGIxLCR4dDEKLSsJZW9yCSR4YzEsJHhjMSwkeHQyCi0rCWVvcgkkeGQxLCR4ZDEsJHh0MwotKwlz dDEuOAl7JHhhMS0keGQxfSxbJG91dF0sIzY0Ci0rCSBhZGQJJHhhMywkeGEzLEBLWzBdCi0rCSBh ZGQJJHhiMywkeGIzLEBLWzFdCi0rCSBhZGQJJHhjMywkeGMzLEBLWzJdCi0rCSBhZGQJJHhkMywk eGQzLEBLWzNdCi0rCWxkMS44CXskeGExLSR4ZDF9LFskaW5wXSwjNjQKLSsKLSsJZW9yCSR4YTIs JHhhMiwkeGEwCi0rCWVvcgkkeGIyLCR4YjIsJHhiMAotKwllb3IJJHhjMiwkeGMyLCR4YzAKLSsJ ZW9yCSR4ZDIsJHhkMiwkeGQwCi0rCXN0MS44CXskeGEyLSR4ZDJ9LFskb3V0XSwjNjQKLSsKLSsJ ZW9yCSR4YTMsJHhhMywkeGExCi0rCWVvcgkkeGIzLCR4YjMsJHhiMQotKwllb3IJJHhjMywkeGMz LCR4YzEKLSsJZW9yCSR4ZDMsJHhkMywkeGQxCi0rCXN0MS44CXskeGEzLSR4ZDN9LFskb3V0XSwj NjQKLSAKLSAJYi5oaQkuTG9vcF9vdXRlcl9uZW9uCi0gCi0rCWxkcAlkOCxkOSxbc3BdCQkJLy8g bWVldCBBQkkgcmVxdWlyZW1lbnRzCi0rCi0gCWxkcAl4MTkseDIwLFt4MjksIzE2XQotIAlhZGQJ c3Asc3AsIzY0Ci0gCWxkcAl4MjEseDIyLFt4MjksIzMyXQotQEAgLTU4Myw4ICs2NzAsMTAgQEAg JGNvZGUuPTw8X19fOwotIAkuaW5zdAkweGQ1MDMyM2JmCQkJLy8gYXV0aWFzcAotIAlyZXQKLSAK LSsuYWxpZ24JNAotIC5MdGFpbF9uZW9uOgotLQlhZGQJJGxlbiwkbGVuLCMyNTYKLSsJYWRkCSRs ZW4sJGxlbiwjMzIwCi0rCWxkcAlkOCxkOSxbc3BdCQkJLy8gbWVldCBBQkkgcmVxdWlyZW1lbnRz Ci0gCWNtcAkkbGVuLCM2NAotIAliLmxvCS5MZXNzX3RoYW5fNjQKLSAKLUBAIC02MDEsNyArNjkw LDcgQEAgJGNvZGUuPTw8X19fOwotIAlhZGQJQHhbMTRdLEB4WzE0XSxAeFsxNV0sbHNsIzMyCi0g CWxkcAlAeFsxM10sQHhbMTVdLFskaW5wLCM0OF0KLSAJYWRkCSRpbnAsJGlucCwjNjQKLS0jaWZk ZWYJX19BUk1FQl9fCi0rI2lmZGVmCV9fQUFSQ0g2NEVCX18KLSAJcmV2CUB4WzBdLEB4WzBdCi0g CXJldglAeFsyXSxAeFsyXQotIAlyZXYJQHhbNF0sQHhbNF0KLUBAIC02MjEsNDggKzcxMCw2OCBA QCAkY29kZS49PDxfX187Ci0gCWVvcglAeFsxNF0sQHhbMTRdLEB4WzE1XQotIAotIAlzdHAJQHhb MF0sQHhbMl0sWyRvdXQsIzBdCQkvLyBzdG9yZSBvdXRwdXQKLS0JIGFkZAlAZFs2XSxAZFs2XSwj NAkJCS8vIGluY3JlbWVudCBjb3VudGVyCi0rCSBhZGQJJHhhMCwkeGEwLEBLWzBdCQkJLy8gYWNj dW11bGF0ZSBrZXkgYmxvY2sKLSAJc3RwCUB4WzRdLEB4WzZdLFskb3V0LCMxNl0KLSsJIGFkZAkk eGIwLCR4YjAsQEtbMV0KLSAJc3RwCUB4WzhdLEB4WzEwXSxbJG91dCwjMzJdCi0rCSBhZGQJJHhj MCwkeGMwLEBLWzJdCi0gCXN0cAlAeFsxMl0sQHhbMTRdLFskb3V0LCM0OF0KLSsJIGFkZAkkeGQw LCR4ZDAsQEtbM10KLSAJYWRkCSRvdXQsJG91dCwjNjQKLSAJYi5lcQkuTGRvbmVfbmVvbgotIAlz dWIJJGxlbiwkbGVuLCM2NAotIAljbXAJJGxlbiwjNjQKLS0JYi5sbwkuTGVzc190aGFuXzEyOAot KwliLmxvCS5MYXN0X25lb24KLSAKLS0JbGQxLjgJeyRUMC0kVDN9LFskaW5wXSwjNjQKLS0JZW9y CSRBMCwkQTAsJFQwCi0tCWVvcgkkQjAsJEIwLCRUMQotLQllb3IJJEMwLCRDMCwkVDIKLS0JZW9y CSREMCwkRDAsJFQzCi0tCXN0MS44CXskQTAtJEQwfSxbJG91dF0sIzY0Ci0rCWxkMS44CXskeHQw LSR4dDN9LFskaW5wXSwjNjQKLSsJZW9yCSR4YTAsJHhhMCwkeHQwCi0rCWVvcgkkeGIwLCR4YjAs JHh0MQotKwllb3IJJHhjMCwkeGMwLCR4dDIKLSsJZW9yCSR4ZDAsJHhkMCwkeHQzCi0rCXN0MS44 CXskeGEwLSR4ZDB9LFskb3V0XSwjNjQKLSAJYi5lcQkuTGRvbmVfbmVvbgotKwotKwlhZGQJJHhh MCwkeGExLEBLWzBdCi0rCWFkZAkkeGIwLCR4YjEsQEtbMV0KLSAJc3ViCSRsZW4sJGxlbiwjNjQK LSsJYWRkCSR4YzAsJHhjMSxAS1syXQotIAljbXAJJGxlbiwjNjQKLS0JYi5sbwkuTGVzc190aGFu XzE5MgotKwlhZGQJJHhkMCwkeGQxLEBLWzNdCi0rCWIubG8JLkxhc3RfbmVvbgotIAotLQlsZDEu OAl7JFQwLSRUM30sWyRpbnBdLCM2NAotLQllb3IJJEExLCRBMSwkVDAKLS0JZW9yCSRCMSwkQjEs JFQxCi0tCWVvcgkkQzEsJEMxLCRUMgotLQllb3IJJEQxLCREMSwkVDMKLS0Jc3QxLjgJeyRBMS0k RDF9LFskb3V0XSwjNjQKLSsJbGQxLjgJeyR4dDAtJHh0M30sWyRpbnBdLCM2NAotKwllb3IJJHhh MSwkeGEwLCR4dDAKLSsJZW9yCSR4YjEsJHhiMCwkeHQxCi0rCWVvcgkkeGMxLCR4YzAsJHh0Mgot Kwllb3IJJHhkMSwkeGQwLCR4dDMKLSsJc3QxLjgJeyR4YTEtJHhkMX0sWyRvdXRdLCM2NAotIAli LmVxCS5MZG9uZV9uZW9uCi0rCi0rCWFkZAkkeGEwLCR4YTIsQEtbMF0KLSsJYWRkCSR4YjAsJHhi MixAS1sxXQotIAlzdWIJJGxlbiwkbGVuLCM2NAotKwlhZGQJJHhjMCwkeGMyLEBLWzJdCi0rCWNt cAkkbGVuLCM2NAotKwlhZGQJJHhkMCwkeGQyLEBLWzNdCi0rCWIubG8JLkxhc3RfbmVvbgotIAot LQlzdDEuOAl7JEEyLSREMn0sW3NwXQotLQliCS5MYXN0X25lb24KLSsJbGQxLjgJeyR4dDAtJHh0 M30sWyRpbnBdLCM2NAotKwllb3IJJHhhMiwkeGEwLCR4dDAKLSsJZW9yCSR4YjIsJHhiMCwkeHQx Ci0rCWVvcgkkeGMyLCR4YzAsJHh0MgotKwllb3IJJHhkMiwkeGQwLCR4dDMKLSsJc3QxLjgJeyR4 YTItJHhkMn0sWyRvdXRdLCM2NAotKwliLmVxCS5MZG9uZV9uZW9uCi0gCi0tLkxlc3NfdGhhbl8x Mjg6Ci0tCXN0MS44CXskQTAtJEQwfSxbc3BdCi0tCWIJLkxhc3RfbmVvbgotLS5MZXNzX3RoYW5f MTkyOgotLQlzdDEuOAl7JEExLSREMX0sW3NwXQotLQliCS5MYXN0X25lb24KLSsJYWRkCSR4YTAs JHhhMyxAS1swXQotKwlhZGQJJHhiMCwkeGIzLEBLWzFdCi0rCWFkZAkkeGMwLCR4YzMsQEtbMl0K LSsJYWRkCSR4ZDAsJHhkMyxAS1szXQotKwlzdWIJJGxlbiwkbGVuLCM2NAotIAotLS5hbGlnbgk0 Ci0gLkxhc3RfbmVvbjoKLSsJc3QxLjgJeyR4YTAtJHhkMH0sW3NwXQotKwotIAlzdWIJJG91dCwk b3V0LCMxCi0gCWFkZAkkaW5wLCRpbnAsJGxlbgotIAlhZGQJJG91dCwkb3V0LCRsZW4KLUBAIC02 OTUsOSArODA0LDQxIEBAICRjb2RlLj08PF9fXzsKLSAuc2l6ZQlDaGFDaGEyMF9uZW9uLC4tQ2hh Q2hhMjBfbmVvbgotIF9fXwotIHsKLStteSBASyA9IG1hcCgidiRfLjRzIiwoMC4uNikpOwotIG15 ICgkVDAsJFQxLCRUMiwkVDMsJFQ0LCRUNSk9QEs7Ci0gbXkgKCRBMCwkQjAsJEMwLCREMCwkQTEs JEIxLCRDMSwkRDEsJEEyLCRCMiwkQzIsJEQyLAotLSAgICAkQTMsJEIzLCRDMywkRDMsJEE0LCRC NCwkQzQsJEQ0LCRBNSwkQjUsJEM1LCRENSkgPSBtYXAoInYkXy40cyIsKDAuLjIzKSk7Ci0rICAg ICRBMywkQjMsJEMzLCREMywkQTQsJEI0LCRDNCwkRDQsJEE1LCRCNSwkQzUsJEQ1KSA9IG1hcCgi diRfLjRzIiwoOC4uMzEpKTsKLStteSAkcm90MjQgPSBAS1s2XTsKLStteSAkT05FID0gInY3LjRz IjsKLSsKLStzdWIgTkVPTlJPVU5EIHsKLStteSAkb2RkID0gcG9wOwotK215ICgkYSwkYiwkYywk ZCwkdCk9QF87Ci0rCi0rCSgKLSsJIiZhZGQJCSgnJGEnLCckYScsJyRiJykiLAotKwkiJmVvcgkJ KCckZCcsJyRkJywnJGEnKSIsCi0rCSImcmV2MzJfMTYJKCckZCcsJyRkJykiLAkJIyB2cm90ICgk ZCwxNikKLSsKLSsJIiZhZGQJCSgnJGMnLCckYycsJyRkJykiLAotKwkiJmVvcgkJKCckdCcsJyRi JywnJGMnKSIsCi0rCSImdXNocgkJKCckYicsJyR0JywyMCkiLAotKwkiJnNsaQkJKCckYicsJyR0 JywxMikiLAotKwotKwkiJmFkZAkJKCckYScsJyRhJywnJGInKSIsCi0rCSImZW9yCQkoJyRkJywn JGQnLCckYScpIiwKLSsJIiZ0YmwJCSgnJGQnLCd7JGR9JywnJHJvdDI0JykiLAotKwotKwkiJmFk ZAkJKCckYycsJyRjJywnJGQnKSIsCi0rCSImZW9yCQkoJyR0JywnJGInLCckYycpIiwKLSsJIiZ1 c2hyCQkoJyRiJywnJHQnLDI1KSIsCi0rCSImc2xpCQkoJyRiJywnJHQnLDcpIiwKLSsKLSsJIiZl eHQJCSgnJGMnLCckYycsJyRjJyw4KSIsCi0rCSImZXh0CQkoJyRkJywnJGQnLCckZCcsJG9kZD80 OjEyKSIsCi0rCSImZXh0CQkoJyRiJywnJGInLCckYicsJG9kZD8xMjo0KSIKLSsJKTsKLSt9Ci0g Ci0gJGNvZGUuPTw8X19fOwotIC50eXBlCUNoYUNoYTIwXzUxMl9uZW9uLCVmdW5jdGlvbgotQEAg LTcxNyw2ICs4NTgsNyBAQCBDaGFDaGEyMF81MTJfbmVvbjoKLSAuTDUxMl9vcl9tb3JlX25lb246 Ci0gCXN1YglzcCxzcCwjMTI4KzY0Ci0gCi0rCWVvcgkkT05FLCRPTkUsJE9ORQotIAlsZHAJQGRb MF0sQGRbMV0sW0B4WzBdXQkJLy8gbG9hZCBzaWdtYQotIAlsZDEJe0BLWzBdfSxbQHhbMF1dLCMx NgotIAlsZHAJQGRbMl0sQGRbM10sWyRrZXldCQkvLyBsb2FkIGtleQotQEAgLTcyNCw4ICs4NjYs OSBAQCBDaGFDaGEyMF81MTJfbmVvbjoKLSAJbGQxCXtAS1sxXSxAS1syXX0sWyRrZXldCi0gCWxk cAlAZFs2XSxAZFs3XSxbJGN0cl0JCS8vIGxvYWQgY291bnRlcgotIAlsZDEJe0BLWzNdfSxbJGN0 cl0KLS0JbGQxCXskT05FfSxbQHhbMF1dCi0tI2lmZGVmCV9fQVJNRUJfXwotKwlsZDEJeyRPTkV9 WzBdLFtAeFswXV0KLSsJYWRkCSRrZXksQHhbMF0sIzE2CQkJLy8gLkxyb3QyNAotKyNpZmRlZglf X0FBUkNINjRFQl9fCi0gCXJldjY0CUBLWzBdLEBLWzBdCi0gCXJvcglAZFsyXSxAZFsyXSwjMzIK LSAJcm9yCUBkWzNdLEBkWzNdLCMzMgotQEAgLTc5Miw5ICs5MzUsMTAgQEAgQ2hhQ2hhMjBfNTEy X25lb246Ci0gCSBtb3YJJEM0LEBLWzJdCi0gCSBzdHAJQEtbM10sQEtbNF0sW3NwLCM0OF0JCS8v IG9mZi1sb2FkIGtleSBibG9jaywgdmFyaWFibGUgcGFydAotIAkgbW92CSRDNSxAS1syXQotLQkg c3RyCUBLWzVdLFtzcCwjODBdCi0rCSBzdHAJQEtbNV0sQEtbNl0sW3NwLCM4MF0KLSAKLSAJbW92 CSRjdHIsIzUKLSsJbGQxCXskcm90MjR9LFska2V5XQotIAlzdWJzCSRsZW4sJGxlbiwjNTEyCi0g Lkxvb3BfdXBwZXJfbmVvbjoKLSAJc3ViCSRjdHIsJGN0ciwjMQotQEAgLTg2Nyw3ICsxMDExLDcg QEAgJGNvZGUuPTw8X19fOwotIAlhZGQJQHhbMTRdLEB4WzE0XSxAeFsxNV0sbHNsIzMyCi0gCWxk cAlAeFsxM10sQHhbMTVdLFskaW5wLCM0OF0KLSAJYWRkCSRpbnAsJGlucCwjNjQKLS0jaWZkZWYJ X19BUk1FQl9fCi0rI2lmZGVmCV9fQUFSQ0g2NEVCX18KLSAJcmV2CUB4WzBdLEB4WzBdCi0gCXJl dglAeFsyXSxAeFsyXQotIAlyZXYJQHhbNF0sQHhbNF0KLUBAIC05NTYsNiArMTEwMCw3IEBAICRj b2RlLj08PF9fXzsKLSAJYWRkLjMyCUB4WzJdLEB4WzJdLEBkWzFdCi0gCSBsZHAJQEtbNF0sQEtb NV0sW3NwLCM2NF0KLSAJYWRkCUB4WzNdLEB4WzNdLEBkWzFdLGxzciMzMgotKwkgbGRyCUBLWzZd LFtzcCwjOTZdCi0gCSBhZGQJJEEwLCRBMCxAS1swXQotIAlhZGQuMzIJQHhbNF0sQHhbNF0sQGRb Ml0KLSAJIGFkZAkkQTEsJEExLEBLWzBdCi1AQCAtMTAwOCw3ICsxMTUzLDcgQEAgJGNvZGUuPTw8 X19fOwotIAlhZGQJJGlucCwkaW5wLCM2NAotIAkgYWRkCSRCNSwkQjUsQEtbMV0KLSAKLS0jaWZk ZWYJX19BUk1FQl9fCi0rI2lmZGVmCV9fQUFSQ0g2NEVCX18KLSAJcmV2CUB4WzBdLEB4WzBdCi0g CXJldglAeFsyXSxAeFsyXQotIAlyZXYJQHhbNF0sQHhbNF0KLUBAIC0xMDg2LDI2ICsxMjMxLDI2 IEBAICRjb2RlLj08PF9fXzsKLSAJYi5ocwkuTG9vcF9vdXRlcl81MTJfbmVvbgotIAotIAlhZGRz CSRsZW4sJGxlbiwjNTEyCi0tCXVzaHIJJEEwLCRPTkUsIzIJCQkvLyA0IC0+IDEKLSsJdXNocgkk T05FLCRPTkUsIzEJCQkvLyA0IC0+IDIKLSAKLS0JbGRwCWQ4LGQ5LFtzcCwjMTI4KzBdCQkvLyBt ZWV0IEFCSSByZXF1aXJlbWVudHMKLSAJbGRwCWQxMCxkMTEsW3NwLCMxMjgrMTZdCi0gCWxkcAlk MTIsZDEzLFtzcCwjMTI4KzMyXQotIAlsZHAJZDE0LGQxNSxbc3AsIzEyOCs0OF0KLSAKLS0Jc3Rw CUBLWzBdLCRPTkUsW3NwLCMwXQkJLy8gd2lwZSBvZmYtbG9hZCBhcmVhCi0tCXN0cAlAS1swXSwk T05FLFtzcCwjMzJdCi0tCXN0cAlAS1swXSwkT05FLFtzcCwjNjRdCi0rCXN0cAlAS1swXSxAS1sw XSxbc3AsIzBdCQkvLyB3aXBlIG9mZi1sb2FkIGFyZWEKLSsJc3RwCUBLWzBdLEBLWzBdLFtzcCwj MzJdCi0rCXN0cAlAS1swXSxAS1swXSxbc3AsIzY0XQotIAotIAliLmVxCS5MZG9uZV81MTJfbmVv bgotIAotKwlzdWIJJGtleSwka2V5LCMxNgkJCS8vIC5Mb25lCi0gCWNtcAkkbGVuLCMxOTIKLS0J c3ViCUBLWzNdLEBLWzNdLCRBMAkJCS8vIC09IDEKLS0Jc3ViCUBLWzRdLEBLWzRdLCRBMAotLQlz dWIJQEtbNV0sQEtbNV0sJEEwCi0gCWFkZAlzcCxzcCwjMTI4Ci0rCXN1YglAS1szXSxAS1szXSwk T05FCQkvLyAtPSAyCi0rCWxkMQl7JENUUiwkUk9UMjR9LFska2V5XQotIAliLmhzCS5Mb29wX291 dGVyX25lb24KLSAKLSsJbGRwCWQ4LGQ5LFtzcCwjMF0JCQkvLyBtZWV0IEFCSSByZXF1aXJlbWVu dHMKLSAJZW9yCUBLWzFdLEBLWzFdLEBLWzFdCi0gCWVvcglAS1syXSxAS1syXSxAS1syXQotIAll b3IJQEtbM10sQEtbM10sQEtbM10KLUBAIC0xMTE1LDYgKzEyNjAsNyBAQCAkY29kZS49PDxfX187 Ci0gCWIJLkxvb3Bfb3V0ZXIKLSAKLSAuTGRvbmVfNTEyX25lb246Ci0rCWxkcAlkOCxkOSxbc3As IzEyOCswXQkJLy8gbWVldCBBQkkgcmVxdWlyZW1lbnRzCi0gCWxkcAl4MTkseDIwLFt4MjksIzE2 XQotIAlhZGQJc3Asc3AsIzEyOCs2NAotIAlsZHAJeDIxLHgyMixbeDI5LCMzMl0KLUBAIC0xMTMz LDkgKzEyNzksMTEgQEAgZm9yZWFjaCAoc3BsaXQoIlxuIiwkY29kZSkpIHsKLSAJcy9cYChbXlxg XSopXGAvZXZhbCAkMS9nZW87Ci0gCi0gCShzL1xiKFthLXpdKylcLjMyXGIvJDEvIGFuZCAocy94 KFswLTldKykvdyQxL2cgb3IgMSkpCW9yCi0tCShtL1xiKGVvcnxleHR8bW92KVxiLyBhbmQgKHMv XC40cy9cLjE2Yi9nIG9yIDEpKQlvcgotKwkobS9cYihlb3J8ZXh0fG1vdnx0YmwpXGIvIGFuZCAo cy9cLjRzL1wuMTZiL2cgb3IgMSkpCW9yCi0gCShzL1xiKCg/OmxkfHN0KTEpXC44XGIvJDEvIGFu ZCAocy9cLjRzL1wuMTZiL2cgb3IgMSkpCW9yCi0gCShtL1xiKGxkfHN0KVtycF1cYi8gYW5kIChz L3YoWzAtOV0rKVwuNHMvcSQxL2cgb3IgMSkpCW9yCi0rCShtL1xiKGR1cHxsZDEpXGIvIGFuZCAo cy9cLjQoc30/XFtbMC0zXVxdKS8uJDEvZyBvciAxKSkJb3IKLSsJKHMvXGIoemlwWzEyXSlcLjY0 XGIvJDEvIGFuZCAocy9cLjRzL1wuMmQvZyBvciAxKSkJb3IKLSAJKHMvXGJyZXYzMlwuMTZcYi9y ZXYzMi8gYW5kIChzL1wuNHMvXC44aC9nIG9yIDEpKTsKLSAKLSAJI3MvXGJxKFswLTldKykjKGxv fGhpKS9zcHJpbnRmICJkJWQiLDIqJDErKCQyIGVxICJoaSIpL2dlbzsKLWRpZmYgLXVwIG9wZW5z c2wtMS4xLjFpL2NyeXB0by9tb2Rlcy9hc20vZ2hhc2h2OC1hcm14LnBsLmFybS11cGRhdGUgb3Bl bnNzbC0xLjEuMWkvY3J5cHRvL21vZGVzL2FzbS9naGFzaHY4LWFybXgucGwKLS0tLSBvcGVuc3Ns LTEuMS4xaS9jcnlwdG8vbW9kZXMvYXNtL2doYXNodjgtYXJteC5wbC5hcm0tdXBkYXRlCTIwMjAt MTItMDggMTQ6MjA6NTkuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWkvY3J5cHRv L21vZGVzL2FzbS9naGFzaHY4LWFybXgucGwJMjAyMC0xMi0wOSAxMDozNzozOC40MDg1NTg5NTQg KzAxMDAKLUBAIC00Miw2ICs0Miw3IEBACi0gIyBEZW52ZXIJMC41MQkJMC42NQkJNi4wMgotICMg TW9uZ29vc2UJMC42NQkJMS4xMAkJOC4wNgotICMgS3J5bwkJMC43NgkJMS4xNgkJOC4wMAotKyMg VGh1bmRlclgyCTEuMDUKLSAjCi0gIyAoKikJcHJlc2VudGVkIGZvciByZWZlcmVuY2UvY29tcGFy aXNvbiBwdXJwb3NlczsKLSAKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFpL2NyeXB0by9wb2x5MTMw NS9hc20vcG9seTEzMDUtYXJtdjgucGwuYXJtLXVwZGF0ZSBvcGVuc3NsLTEuMS4xaS9jcnlwdG8v cG9seTEzMDUvYXNtL3BvbHkxMzA1LWFybXY4LnBsCi0tLS0gb3BlbnNzbC0xLjEuMWkvY3J5cHRv L3BvbHkxMzA1L2FzbS9wb2x5MTMwNS1hcm12OC5wbC5hcm0tdXBkYXRlCTIwMjAtMTItMDggMTQ6 MjA6NTkuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWkvY3J5cHRvL3BvbHkxMzA1 L2FzbS9wb2x5MTMwNS1hcm12OC5wbAkyMDIwLTEyLTA5IDEwOjM3OjM4LjQwODU1ODk1NCArMDEw MAotQEAgLTI5LDYgKzI5LDcgQEAKLSAjIFgtR2VuZQkyLjEzLys2OCUJMi4yNwotICMgTW9uZ29v c2UJMS43Ny8rNzUlCTEuMTIKLSAjIEtyeW8JCTIuNzAvKzU1JQkxLjEzCi0rIyBUaHVuZGVyWDIJ MS4xNy8rOTUlCTEuMzYKLSAjCi0gIyAoKikJZXN0aW1hdGUgYmFzZWQgb24gcmVzb3VyY2VzIGF2 YWlsYWJpbGl0eSBpcyBsZXNzIHRoYW4gMS4wLAotICMJaS5lLiBtZWFzdXJlZCByZXN1bHQgaXMg d29yc2UgdGhhbiBleHBlY3RlZCwgcHJlc3VtYWJseSBiaW5hcnkKLWRpZmYgLXVwIG9wZW5zc2wt MS4xLjFpL2NyeXB0by9zaGEvYXNtL2tlY2NhazE2MDAtYXJtdjgucGwuYXJtLXVwZGF0ZSBvcGVu c3NsLTEuMS4xaS9jcnlwdG8vc2hhL2FzbS9rZWNjYWsxNjAwLWFybXY4LnBsCi0tLS0gb3BlbnNz bC0xLjEuMWkvY3J5cHRvL3NoYS9hc20va2VjY2FrMTYwMC1hcm12OC5wbC5hcm0tdXBkYXRlCTIw MjAtMTItMDggMTQ6MjA6NTkuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWkvY3J5 cHRvL3NoYS9hc20va2VjY2FrMTYwMC1hcm12OC5wbAkyMDIwLTEyLTA5IDEwOjM3OjM4LjQwODU1 ODk1NCArMDEwMAotQEAgLTUxLDYgKzUxLDcgQEAKLSAjIEtyeW8JCTEyCi0gIyBEZW52ZXIJNy44 Ci0gIyBBcHBsZSBBNwk3LjIKLSsjIFRodW5kZXJYMgk5LjcKLSAjCi0gIyAoKikJQ29ycmVzcG9u ZHMgdG8gU0hBMy0yNTYuIE5vIGltcHJvdmVtZW50IGNvZWZmaWNpZW50cyBhcmUgbGlzdGVkCi0g IwliZWNhdXNlIHRoZXkgdmFyeSB0b28gbXVjaCBmcm9tIGNvbXBpbGVyIHRvIGNvbXBpbGVyLiBO ZXdlcgotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWkvY3J5cHRvL3NoYS9hc20vc2hhMS1hcm12OC5w bC5hcm0tdXBkYXRlIG9wZW5zc2wtMS4xLjFpL2NyeXB0by9zaGEvYXNtL3NoYTEtYXJtdjgucGwK LS0tLSBvcGVuc3NsLTEuMS4xaS9jcnlwdG8vc2hhL2FzbS9zaGExLWFybXY4LnBsLmFybS11cGRh dGUJMjAyMC0xMi0wOCAxNDoyMDo1OS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4x aS9jcnlwdG8vc2hhL2FzbS9zaGExLWFybXY4LnBsCTIwMjAtMTItMDkgMTA6Mzc6MzguNDA4NTU4 OTU0ICswMTAwCi1AQCAtMjcsNiArMjcsNyBAQAotICMgWC1HZW5lCQkJCTguODAgKCsyMDAlKQot ICMgTW9uZ29vc2UJMi4wNQkJCTYuNTAgKCsxNjAlKQotICMgS3J5bwkJMS44OAkJCTguMDAgKCs5 MCUpCi0rIyBUaHVuZGVyWDIJMi42NAkJCTYuMzYgKCsxNTAlKQotICMKLSAjICgqKQlTb2Z0d2Fy ZSByZXN1bHRzIGFyZSBwcmVzZW50ZWQgbW9zdGx5IGZvciByZWZlcmVuY2UgcHVycG9zZXMuCi0g IyAoKiopCUtlZXAgaW4gbWluZCB0aGF0IERlbnZlciByZWxpZXMgb24gYmluYXJ5IHRyYW5zbGF0 aW9uLCB3aGljaAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWkvY3J5cHRvL3NoYS9hc20vc2hhNTEy LWFybXY4LnBsLmFybS11cGRhdGUgb3BlbnNzbC0xLjEuMWkvY3J5cHRvL3NoYS9hc20vc2hhNTEy LWFybXY4LnBsCi0tLS0gb3BlbnNzbC0xLjEuMWkvY3J5cHRvL3NoYS9hc20vc2hhNTEyLWFybXY4 LnBsLmFybS11cGRhdGUJMjAyMC0xMi0wOCAxNDoyMDo1OS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBv cGVuc3NsLTEuMS4xaS9jcnlwdG8vc2hhL2FzbS9zaGE1MTItYXJtdjgucGwJMjAyMC0xMi0wOSAx MDozNzozOC40MDg1NTg5NTQgKzAxMDAKLUBAIC0yOCw2ICsyOCw3IEBACi0gIyBYLUdlbmUJCQky MC4wICgrMTAwJSkJMTIuOCAoKzMwMCUoKioqKSkKLSAjIE1vbmdvb3NlCTIuMzYJCTEzLjAgKCs1 MCUpCTguMzYgKCszMyUpCi0gIyBLcnlvCQkxLjkyCQkxNy40ICgrMzAlKQkxMS4yICgrOCUpCi0r IyBUaHVuZGVyWDIJMi41NAkJMTMuMiAoKzQwJSkJOC40MCAoKzE4JSkKLSAjCi0gIyAoKikJU29m dHdhcmUgU0hBMjU2IHJlc3VsdHMgYXJlIG9mIGxlc3NlciByZWxldmFuY2UsIHByZXNlbnRlZAot ICMJbW9zdGx5IGZvciBpbmZvcm1hdGlvbmFsIHB1cnBvc2VzLgoKZGlmZiAtLWdpdCBhL29wZW5z c2wtMS4xLjEtYnVpbGQucGF0Y2ggYi9vcGVuc3NsLTEuMS4xLWJ1aWxkLnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjMGVmNjJiLi4wMDAwMDAwCi0tLSBhL29wZW5zc2wtMS4x LjEtYnVpbGQucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0MCArMCwwIEBACi1kaWZmIC11cCBv cGVuc3NsLTEuMS4xZi9Db25maWd1cmF0aW9ucy8xMC1tYWluLmNvbmYuYnVpbGQgb3BlbnNzbC0x LjEuMWYvQ29uZmlndXJhdGlvbnMvMTAtbWFpbi5jb25mCi0tLS0gb3BlbnNzbC0xLjEuMWYvQ29u ZmlndXJhdGlvbnMvMTAtbWFpbi5jb25mLmJ1aWxkCTIwMjAtMDMtMzEgMTQ6MTc6NDUuMDAwMDAw MDAwICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWYvQ29uZmlndXJhdGlvbnMvMTAtbWFpbi5jb25m CTIwMjAtMDQtMDcgMTY6NDI6MTAuOTIwNTQ2Mzg3ICswMjAwCi1AQCAtNjc4LDYgKzY3OCw3IEBA IG15ICV0YXJnZXRzID0gKAotICAgICAgICAgY3h4ZmxhZ3MgICAgICAgICA9PiBhZGQoIi1tNjQi KSwKLSAgICAgICAgIGxpYl9jcHBmbGFncyAgICAgPT4gYWRkKCItRExfRU5ESUFOIiksCi0gICAg ICAgICBwZXJsYXNtX3NjaGVtZSAgID0+ICJsaW51eDY0bGUiLAotKyAgICAgICAgbXVsdGlsaWIg ICAgICAgICA9PiAiNjQiLAotICAgICB9LAotIAotICAgICAibGludXgtYXJtdjQiID0+IHsKLUBA IC03MTgsNiArNzE5LDcgQEAgbXkgJXRhcmdldHMgPSAoCi0gICAgICJsaW51eC1hYXJjaDY0IiA9 PiB7Ci0gICAgICAgICBpbmhlcml0X2Zyb20gICAgID0+IFsgImxpbnV4LWdlbmVyaWM2NCIsIGFz bSgiYWFyY2g2NF9hc20iKSBdLAotICAgICAgICAgcGVybGFzbV9zY2hlbWUgICA9PiAibGludXg2 NCIsCi0rICAgICAgICBtdWx0aWxpYiAgICAgICAgID0+ICI2NCIsCi0gICAgIH0sCi0gICAgICJs aW51eC1hcm02NGlscDMyIiA9PiB7ICAjIGh0dHBzOi8vd2lraS5saW5hcm8ub3JnL1BsYXRmb3Jt L2FybTY0LWlscDMyCi0gICAgICAgICBpbmhlcml0X2Zyb20gICAgID0+IFsgImxpbnV4LWdlbmVy aWMzMiIsIGFzbSgiYWFyY2g2NF9hc20iKSBdLAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWYvQ29u ZmlndXJhdGlvbnMvdW5peC1NYWtlZmlsZS50bXBsLmJ1aWxkIG9wZW5zc2wtMS4xLjFmL0NvbmZp Z3VyYXRpb25zL3VuaXgtTWFrZWZpbGUudG1wbAotLS0tIG9wZW5zc2wtMS4xLjFmL0NvbmZpZ3Vy YXRpb25zL3VuaXgtTWFrZWZpbGUudG1wbC5idWlsZAkyMDIwLTA0LTA3IDE2OjQyOjEwLjkyMDU0 NjM4NyArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFmL0NvbmZpZ3VyYXRpb25zL3VuaXgtTWFrZWZp bGUudG1wbAkyMDIwLTA0LTA3IDE2OjQ0OjIzLjUzOTE0MjEwOCArMDIwMAotQEAgLTgyMyw3ICs4 MjMsNyBAQCB1bmluc3RhbGxfcnVudGltZV9saWJzOgotIGluc3RhbGxfbWFuX2RvY3M6Ci0gCUBb IC1uICIkKElOU1RBTExUT1ApIiBdIHx8IChlY2hvIElOU1RBTExUT1Agc2hvdWxkIG5vdCBiZSBl bXB0eTsgZXhpdCAxKQotIAlAJChFQ0hPKSAiKioqIEluc3RhbGxpbmcgbWFucGFnZXMiCi0tCSQo UEVSTCkgJChTUkNESVIpL3V0aWwvcHJvY2Vzc19kb2NzLnBsIFwKLSsJVFo9VVRDICQoUEVSTCkg JChTUkNESVIpL3V0aWwvcHJvY2Vzc19kb2NzLnBsIFwKLSAJCSItLWRlc3RkaXI9JChERVNURElS KSQoTUFORElSKSIgLS10eXBlPW1hbiAtLXN1ZmZpeD0kKE1BTlNVRkZJWCkKLSAKLSB1bmluc3Rh bGxfbWFuX2RvY3M6Ci1AQCAtODM1LDcgKzgzNSw3IEBAIHVuaW5zdGFsbF9tYW5fZG9jczoKLSBp bnN0YWxsX2h0bWxfZG9jczoKLSAJQFsgLW4gIiQoSU5TVEFMTFRPUCkiIF0gfHwgKGVjaG8gSU5T VEFMTFRPUCBzaG91bGQgbm90IGJlIGVtcHR5OyBleGl0IDEpCi0gCUAkKEVDSE8pICIqKiogSW5z dGFsbGluZyBIVE1MIG1hbnBhZ2VzIgotLQkkKFBFUkwpICQoU1JDRElSKS91dGlsL3Byb2Nlc3Nf ZG9jcy5wbCBcCi0rCVRaPVVUQyAkKFBFUkwpICQoU1JDRElSKS91dGlsL3Byb2Nlc3NfZG9jcy5w bCBcCi0gCQkiLS1kZXN0ZGlyPSQoREVTVERJUikkKEhUTUxESVIpIiAtLXR5cGU9aHRtbAotIAot IHVuaW5zdGFsbF9odG1sX2RvY3M6CgpkaWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1jb25mLXBh dGhzLnBhdGNoIGIvb3BlbnNzbC0xLjEuMS1jb25mLXBhdGhzLnBhdGNoCmRlbGV0ZWQgZmlsZSBt b2RlIDEwMDY0NAppbmRleCA4MTkwMDdiLi4wMDAwMDAwCi0tLSBhL29wZW5zc2wtMS4xLjEtY29u Zi1wYXRocy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDU2ICswLDAgQEAKLWRpZmYgLXVwIG9w ZW5zc2wtMS4xLjEtcHJlOC9hcHBzL0NBLnBsLmluLmNvbmYtcGF0aHMgb3BlbnNzbC0xLjEuMS1w cmU4L2FwcHMvQ0EucGwuaW4KLS0tLSBvcGVuc3NsLTEuMS4xLXByZTgvYXBwcy9DQS5wbC5pbi5j b25mLXBhdGhzCTIwMTgtMDYtMjAgMTY6NDg6MDkuMDAwMDAwMDAwICswMjAwCi0rKysgb3BlbnNz bC0xLjEuMS1wcmU4L2FwcHMvQ0EucGwuaW4JMjAxOC0wNy0yNSAxNzoyNjo1OC4zODg2MjQyOTYg KzAyMDAKLUBAIC0zMyw3ICszMyw3IEBAIG15ICRYNTA5ID0gIiRvcGVuc3NsIHg1MDkiOwotIG15 ICRQS0NTMTIgPSAiJG9wZW5zc2wgcGtjczEyIjsKLSAKLSAjIGRlZmF1bHQgb3BlbnNzbC5jbmYg ZmlsZSBoYXMgc2V0dXAgYXMgcGVyIHRoZSBmb2xsb3dpbmcKLS1teSAkQ0FUT1AgPSAiLi9kZW1v Q0EiOwotK215ICRDQVRPUCA9ICIvZXRjL3BraS9DQSI7Ci0gbXkgJENBS0VZID0gImNha2V5LnBl bSI7Ci0gbXkgJENBUkVRID0gImNhcmVxLnBlbSI7Ci0gbXkgJENBQ0VSVCA9ICJjYWNlcnQucGVt IjsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjEtcHJlOC9hcHBzL29wZW5zc2wuY25mLmNvbmYtcGF0 aHMgb3BlbnNzbC0xLjEuMS1wcmU4L2FwcHMvb3BlbnNzbC5jbmYKLS0tLSBvcGVuc3NsLTEuMS4x LXByZTgvYXBwcy9vcGVuc3NsLmNuZi5jb25mLXBhdGhzCTIwMTgtMDctMjUgMTc6MjY6NTguMzc4 NjI0MDU3ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMS1wcmU4L2FwcHMvb3BlbnNzbC5jbmYJMjAx OC0wNy0yNyAxMzoyMDowOC4xOTg1MTM0NzEgKzAyMDAKLUBAIC0yMyw2ICsyMywyMiBAQCBvaWRf c2VjdGlvbgkJPSBuZXdfb2lkcwotICMgKEFsdGVybmF0aXZlbHksIHVzZSBhIGNvbmZpZ3VyYXRp b24gZmlsZSB0aGF0IGhhcyBvbmx5Ci0gIyBYLjUwOXYzIGV4dGVuc2lvbnMgaW4gaXRzIG1haW4g Wz0gZGVmYXVsdF0gc2VjdGlvbi4pCi0gCi0rIyBMb2FkIGRlZmF1bHQgVExTIHBvbGljeSBjb25m aWd1cmF0aW9uCi0rCi0rb3BlbnNzbF9jb25mID0gZGVmYXVsdF9tb2R1bGVzCi0rCi0rWyBkZWZh dWx0X21vZHVsZXMgXQotKwotK3NzbF9jb25mID0gc3NsX21vZHVsZQotKwotK1sgc3NsX21vZHVs ZSBdCi0rCi0rc3lzdGVtX2RlZmF1bHQgPSBjcnlwdG9fcG9saWN5Ci0rCi0rWyBjcnlwdG9fcG9s aWN5IF0KLSsKLSsuaW5jbHVkZSA9IC9ldGMvY3J5cHRvLXBvbGljaWVzL2JhY2stZW5kcy9vcGVu c3NsY25mLmNvbmZpZwotKwotIFsgbmV3X29pZHMgXQotIAotICMgV2UgY2FuIGFkZCBuZXcgT0lE cyBpbiBoZXJlIGZvciB1c2UgYnkgJ2NhJywgJ3JlcScgYW5kICd0cycuCi1AQCAtNDMsNyArNTks NyBAQCBkZWZhdWx0X2NhCT0gQ0FfZGVmYXVsdAkJIyBUaGUgZGVmYXVsdCBjCi0gIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMKLSBbIENBX2RlZmF1bHQgXQotIAotLWRpcgkJPSAuL2RlbW9DQQkJIyBXaGVyZSBldmVyeXRo aW5nIGlzIGtlcHQKLStkaXIJCT0gL2V0Yy9wa2kvQ0EJCSMgV2hlcmUgZXZlcnl0aGluZyBpcyBr ZXB0Ci0gY2VydHMJCT0gJGRpci9jZXJ0cwkJIyBXaGVyZSB0aGUgaXNzdWVkIGNlcnRzIGFyZSBr ZXB0Ci0gY3JsX2RpcgkJPSAkZGlyL2NybAkJIyBXaGVyZSB0aGUgaXNzdWVkIGNybCBhcmUga2Vw dAotIGRhdGFiYXNlCT0gJGRpci9pbmRleC50eHQJIyBkYXRhYmFzZSBpbmRleCBmaWxlLgotQEAg LTMyOSw3ICszNDUsNyBAQCBkZWZhdWx0X3RzYSA9IHRzYV9jb25maWcxCSMgdGhlIGRlZmF1bHQK LSBbIHRzYV9jb25maWcxIF0KLSAKLSAjIFRoZXNlIGFyZSB1c2VkIGJ5IHRoZSBUU0EgcmVwbHkg Z2VuZXJhdGlvbiBvbmx5LgotLWRpcgkJPSAuL2RlbW9DQQkJIyBUU0Egcm9vdCBkaXJlY3RvcnkK LStkaXIJCT0gL2V0Yy9wa2kvQ0EJCSMgVFNBIHJvb3QgZGlyZWN0b3J5Ci0gc2VyaWFsCQk9ICRk aXIvdHNhc2VyaWFsCSMgVGhlIGN1cnJlbnQgc2VyaWFsIG51bWJlciAobWFuZGF0b3J5KQotIGNy eXB0b19kZXZpY2UJPSBidWlsdGluCQkjIE9wZW5TU0wgZW5naW5lIHRvIHVzZSBmb3Igc2lnbmlu ZwotIHNpZ25lcl9jZXJ0CT0gJGRpci90c2FjZXJ0LnBlbSAJIyBUaGUgVFNBIHNpZ25pbmcgY2Vy dGlmaWNhdGUKCmRpZmYgLS1naXQgYS9vcGVuc3NsLTEuMS4xLWRlZmF1bHRzLnBhdGNoIGIvb3Bl bnNzbC0xLjEuMS1kZWZhdWx0cy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MjkxZWQ4OC4uMDAwMDAwMAotLS0gYS9vcGVuc3NsLTEuMS4xLWRlZmF1bHRzLnBhdGNoCisrKyAv ZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWEvYXBwcy9v cGVuc3NsLmNuZi5kZWZhdWx0cyBvcGVuc3NsLTEuMS4xYS9hcHBzL29wZW5zc2wuY25mCi0tLS0g b3BlbnNzbC0xLjEuMWEvYXBwcy9vcGVuc3NsLmNuZi5kZWZhdWx0cwkyMDE4LTExLTIwIDE0OjM1 OjM3LjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFhL2FwcHMvb3BlbnNzbC5jbmYJ MjAxOS0wMS0xNSAxMzo1Njo1MC44NDE3MTk3NzYgKzAxMDAKLUBAIC03NCw3ICs3NCw3IEBAIGNl cnRfb3B0IAk9IGNhX2RlZmF1bHQJCSMgQ2VydGlmaWNhdGUgZmkKLSAKLSBkZWZhdWx0X2RheXMJ PSAzNjUJCQkjIGhvdyBsb25nIHRvIGNlcnRpZnkgZm9yCi0gZGVmYXVsdF9jcmxfZGF5cz0gMzAJ CQkjIGhvdyBsb25nIGJlZm9yZSBuZXh0IENSTAotLWRlZmF1bHRfbWQJPSBkZWZhdWx0CQkjIHVz ZSBwdWJsaWMga2V5IGRlZmF1bHQgTUQKLStkZWZhdWx0X21kCT0gc2hhMjU2CQkjIHVzZSBTSEEt MjU2IGJ5IGRlZmF1bHQKLSBwcmVzZXJ2ZQk9IG5vCQkJIyBrZWVwIHBhc3NlZCBETiBvcmRlcmlu ZwotIAotICMgQSBmZXcgZGlmZmVyZW5jZSB3YXkgb2Ygc3BlY2lmeWluZyBob3cgc2ltaWxhciB0 aGUgcmVxdWVzdCBzaG91bGQgbG9vawotQEAgLTEwNiw2ICsxMDYsNyBAQCBlbWFpbEFkZHJlc3MJ CT0gb3B0aW9uYWwKLSAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotIFsgcmVxIF0KLSBkZWZhdWx0X2JpdHMJCT0gMjA0 OAotK2RlZmF1bHRfbWQJCT0gc2hhMjU2Ci0gZGVmYXVsdF9rZXlmaWxlIAk9IHByaXZrZXkucGVt Ci0gZGlzdGluZ3Vpc2hlZF9uYW1lCT0gcmVxX2Rpc3Rpbmd1aXNoZWRfbmFtZQotIGF0dHJpYnV0 ZXMJCT0gcmVxX2F0dHJpYnV0ZXMKLUBAIC0xMjgsMTcgKzEyOSwxOCBAQCBzdHJpbmdfbWFzayA9 IHV0Zjhvbmx5Ci0gCi0gWyByZXFfZGlzdGluZ3Vpc2hlZF9uYW1lIF0KLSBjb3VudHJ5TmFtZQkJ CT0gQ291bnRyeSBOYW1lICgyIGxldHRlciBjb2RlKQotLWNvdW50cnlOYW1lX2RlZmF1bHQJCT0g QVUKLStjb3VudHJ5TmFtZV9kZWZhdWx0CQk9IFhYCi0gY291bnRyeU5hbWVfbWluCQkJPSAyCi0g Y291bnRyeU5hbWVfbWF4CQkJPSAyCi0gCi0gc3RhdGVPclByb3ZpbmNlTmFtZQkJPSBTdGF0ZSBv ciBQcm92aW5jZSBOYW1lIChmdWxsIG5hbWUpCi0tc3RhdGVPclByb3ZpbmNlTmFtZV9kZWZhdWx0 CT0gU29tZS1TdGF0ZQotKyNzdGF0ZU9yUHJvdmluY2VOYW1lX2RlZmF1bHQJPSBEZWZhdWx0IFBy b3ZpbmNlCi0gCi0gbG9jYWxpdHlOYW1lCQkJPSBMb2NhbGl0eSBOYW1lIChlZywgY2l0eSkKLSts b2NhbGl0eU5hbWVfZGVmYXVsdAkJPSBEZWZhdWx0IENpdHkKLSAKLSAwLm9yZ2FuaXphdGlvbk5h bWUJCT0gT3JnYW5pemF0aW9uIE5hbWUgKGVnLCBjb21wYW55KQotLTAub3JnYW5pemF0aW9uTmFt ZV9kZWZhdWx0CT0gSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkCi0rMC5vcmdhbml6YXRpb25OYW1l X2RlZmF1bHQJPSBEZWZhdWx0IENvbXBhbnkgTHRkCi0gCi0gIyB3ZSBjYW4gZG8gdGhpcyBidXQg aXQgaXMgbm90IG5lZWRlZCBub3JtYWxseSA6LSkKLSAjMS5vcmdhbml6YXRpb25OYW1lCQk9IFNl Y29uZCBPcmdhbml6YXRpb24gTmFtZSAoZWcsIGNvbXBhbnkpCi1AQCAtMTQ3LDcgKzE0OSw3IEBA IGxvY2FsaXR5TmFtZQkJCT0gTG9jYWxpdHkgTmFtZSAoZWcsIGNpdHkKLSBvcmdhbml6YXRpb25h bFVuaXROYW1lCQk9IE9yZ2FuaXphdGlvbmFsIFVuaXQgTmFtZSAoZWcsIHNlY3Rpb24pCi0gI29y Z2FuaXphdGlvbmFsVW5pdE5hbWVfZGVmYXVsdAk9Ci0gCi0tY29tbW9uTmFtZQkJCT0gQ29tbW9u IE5hbWUgKGUuZy4gc2VydmVyIEZRRE4gb3IgWU9VUiBuYW1lKQotK2NvbW1vbk5hbWUJCQk9IENv bW1vbiBOYW1lIChlZywgeW91ciBuYW1lIG9yIHlvdXIgc2VydmVyXCdzIGhvc3RuYW1lKQotIGNv bW1vbk5hbWVfbWF4CQkJPSA2NAotIAotIGVtYWlsQWRkcmVzcwkJCT0gRW1haWwgQWRkcmVzcwoK ZGlmZiAtLWdpdCBhL29wZW5zc2wtMS4xLjEtZGlzYWJsZS1zc2wzLnBhdGNoIGIvb3BlbnNzbC0x LjEuMS1kaXNhYmxlLXNzbDMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZk ZWMwYTguLjAwMDAwMDAKLS0tIGEvb3BlbnNzbC0xLjEuMS1kaXNhYmxlLXNzbDMucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSw5MSArMCwwIEBACi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xLXByZTgv YXBwcy9zX2NsaWVudC5jLmRpc2FibGUtc3NsMyBvcGVuc3NsLTEuMS4xLXByZTgvYXBwcy9zX2Ns aWVudC5jCi0tLS0gb3BlbnNzbC0xLjEuMS1wcmU4L2FwcHMvc19jbGllbnQuYy5kaXNhYmxlLXNz bDMJMjAxOC0wNy0xNiAxODowODoyMC4wMDA0ODc2MjggKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4x LXByZTgvYXBwcy9zX2NsaWVudC5jCTIwMTgtMDctMTYgMTg6MTY6NDAuMDcwMTg2MzIzICswMjAw Ci1AQCAtMTY4MSw2ICsxNjgxLDkgQEAgaW50IHNfY2xpZW50X21haW4oaW50IGFyZ2MsIGNoYXIg Kiphcmd2KQotICAgICBpZiAoc2RlYnVnKQotICAgICAgICAgc3NsX2N0eF9zZWN1cml0eV9kZWJ1 ZyhjdHgsIHNkZWJ1Zyk7Ci0gCi0rICAgIGlmIChtaW5fdmVyc2lvbiA9PSBTU0wzX1ZFUlNJT04g JiYgbWF4X3ZlcnNpb24gPT0gU1NMM19WRVJTSU9OKQotKyAgICAgICAgU1NMX0NUWF9jbGVhcl9v cHRpb25zKGN0eCwgU1NMX09QX05PX1NTTHYzKTsKLSsKLSAgICAgaWYgKCFjb25maWdfY3R4KGNj dHgsIHNzbF9hcmdzLCBjdHgpKQotICAgICAgICAgZ290byBlbmQ7Ci0gCi1kaWZmIC11cCBvcGVu c3NsLTEuMS4xLXByZTgvYXBwcy9zX3NlcnZlci5jLmRpc2FibGUtc3NsMyBvcGVuc3NsLTEuMS4x LXByZTgvYXBwcy9zX3NlcnZlci5jCi0tLS0gb3BlbnNzbC0xLjEuMS1wcmU4L2FwcHMvc19zZXJ2 ZXIuYy5kaXNhYmxlLXNzbDMJMjAxOC0wNy0xNiAxODowODoyMC4wMDA0ODc2MjggKzAyMDAKLSsr KyBvcGVuc3NsLTEuMS4xLXByZTgvYXBwcy9zX3NlcnZlci5jCTIwMTgtMDctMTYgMTg6MTc6MTcu MzAwMDU1NTUxICswMjAwCi1AQCAtMTc2MCw2ICsxNzYwLDkgQEAgaW50IHNfc2VydmVyX21haW4o aW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXQotICAgICBpZiAoc2RlYnVnKQotICAgICAgICAgc3NsX2N0 eF9zZWN1cml0eV9kZWJ1ZyhjdHgsIHNkZWJ1Zyk7Ci0gCi0rICAgIGlmIChtaW5fdmVyc2lvbiA9 PSBTU0wzX1ZFUlNJT04gJiYgbWF4X3ZlcnNpb24gPT0gU1NMM19WRVJTSU9OKQotKyAgICAgICAg U1NMX0NUWF9jbGVhcl9vcHRpb25zKGN0eCwgU1NMX09QX05PX1NTTHYzKTsKLSsKLSAgICAgaWYg KCFjb25maWdfY3R4KGNjdHgsIHNzbF9hcmdzLCBjdHgpKQotICAgICAgICAgZ290byBlbmQ7Ci0g Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xLXByZTgvc3NsL3NzbF9saWIuYy5kaXNhYmxlLXNzbDMg b3BlbnNzbC0xLjEuMS1wcmU4L3NzbC9zc2xfbGliLmMKLS0tLSBvcGVuc3NsLTEuMS4xLXByZTgv c3NsL3NzbF9saWIuYy5kaXNhYmxlLXNzbDMJMjAxOC0wNi0yMCAxNjo0ODoxMy4wMDAwMDAwMDAg KzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xLXByZTgvc3NsL3NzbF9saWIuYwkyMDE4LTA3LTE2IDE4 OjA4OjIwLjAwMTQ4NzY1MiArMDIwMAotQEAgLTMwMTYsNiArMzAxNiwxNiBAQCBTU0xfQ1RYICpT U0xfQ1RYX25ldyhjb25zdCBTU0xfTUVUSE9EICptCi0gICAgICAqLwotICAgICByZXQtPm9wdGlv bnMgfD0gU1NMX09QX05PX0NPTVBSRVNTSU9OIHwgU1NMX09QX0VOQUJMRV9NSURETEVCT1hfQ09N UEFUOwotIAotKyAgICBpZiAobWV0aC0+dmVyc2lvbiAhPSBTU0wzX1ZFUlNJT04pIHsKLSsgICAg ICAgIC8qCi0rICAgICAgICAgKiBEaXNhYmxlIFNTTHYzIGJ5IGRlZmF1bHQuICBBcHBsaWNhdGlv bnMgY2FuCi0rICAgICAgICAgKiByZS1lbmFibGUgaXQgYnkgY29uZmlndXJpbmcKLSsgICAgICAg ICAqIFNTTF9DVFhfY2xlYXJfb3B0aW9ucyhjdHgsIFNTTF9PUF9OT19TU0x2Myk7Ci0rICAgICAg ICAgKiBvciBieSB1c2luZyB0aGUgU1NMX0NPTkYgQVBJLgotKyAgICAgICAgICovCi0rICAgICAg ICByZXQtPm9wdGlvbnMgfD0gU1NMX09QX05PX1NTTHYzOwotKyAgICB9Ci0rCi0gICAgIHJldC0+ ZXh0LnN0YXR1c190eXBlID0gVExTRVhUX1NUQVRVU1RZUEVfbm90aGluZzsKLSAKLSAgICAgLyoK LWRpZmYgLXVwIG9wZW5zc2wtMS4xLjEtcHJlOC90ZXN0L3NzbF90ZXN0LmMuZGlzYWJsZS1zc2wz IG9wZW5zc2wtMS4xLjEtcHJlOC90ZXN0L3NzbF90ZXN0LmMKLS0tLSBvcGVuc3NsLTEuMS4xLXBy ZTgvdGVzdC9zc2xfdGVzdC5jLmRpc2FibGUtc3NsMwkyMDE4LTA2LTIwIDE2OjQ4OjE1LjAwMDAw MDAwMCArMDIwMAotKysrIG9wZW5zc2wtMS4xLjEtcHJlOC90ZXN0L3NzbF90ZXN0LmMJMjAxOC0w Ny0xNiAxODoxODozNC44MDY4NjUxMjEgKzAyMDAKLUBAIC00NDMsNiArNDQzLDcgQEAgc3RhdGlj IGludCB0ZXN0X2hhbmRzaGFrZShpbnQgaWR4KQotICAgICAgICAgICAgIFNTTF9URVNUX1NFUlZF Uk5BTUVfQ0JfTk9ORSkgewotICAgICAgICAgICAgIGlmICghVEVTVF9wdHIoc2VydmVyMl9jdHgg PSBTU0xfQ1RYX25ldyhUTFNfc2VydmVyX21ldGhvZCgpKSkpCi0gICAgICAgICAgICAgICAgIGdv dG8gZXJyOwotKyAgICAgICAgICAgIFNTTF9DVFhfY2xlYXJfb3B0aW9ucyhzZXJ2ZXIyX2N0eCwg U1NMX09QX05PX1NTTHYzKTsKLSAgICAgICAgICAgICBpZiAoIVRFU1RfdHJ1ZShTU0xfQ1RYX3Nl dF9tYXhfcHJvdG9fdmVyc2lvbihzZXJ2ZXIyX2N0eCwKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUTFNfTUFYX1ZFUlNJT04pKSkKLSAg ICAgICAgICAgICAgICAgZ290byBlcnI7Ci1AQCAtNDY0LDYgKzQ2NSw4IEBAIHN0YXRpYyBpbnQg dGVzdF9oYW5kc2hha2UoaW50IGlkeCkKLSAgICAgICAgICAgICBpZiAoIVRFU1RfcHRyKHJlc3Vt ZV9zZXJ2ZXJfY3R4KQotICAgICAgICAgICAgICAgICAgICAgfHwgIVRFU1RfcHRyKHJlc3VtZV9j bGllbnRfY3R4KSkKLSAgICAgICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICAgICAgU1NM X0NUWF9jbGVhcl9vcHRpb25zKHJlc3VtZV9zZXJ2ZXJfY3R4LCBTU0xfT1BfTk9fU1NMdjMpOwot KyAgICAgICAgICAgIFNTTF9DVFhfY2xlYXJfb3B0aW9ucyhyZXN1bWVfY2xpZW50X2N0eCwgU1NM X09QX05PX1NTTHYzKTsKLSAgICAgICAgIH0KLSAgICAgfQotIAotQEAgLTQ3Nyw2ICs0ODAsOSBA QCBzdGF0aWMgaW50IHRlc3RfaGFuZHNoYWtlKGludCBpZHgpCi0gICAgICAgICAgICAgfHwgIVRF U1RfaW50X2d0KENPTkZfbW9kdWxlc19sb2FkKGNvbmYsIHRlc3RfYXBwLCAwKSwgIDApKQotICAg ICAgICAgZ290byBlcnI7Ci0gCi0rICAgIFNTTF9DVFhfY2xlYXJfb3B0aW9ucyhzZXJ2ZXJfY3R4 LCBTU0xfT1BfTk9fU1NMdjMpOwotKyAgICBTU0xfQ1RYX2NsZWFyX29wdGlvbnMoY2xpZW50X2N0 eCwgU1NMX09QX05PX1NTTHYzKTsKLSsKLSAgICAgaWYgKCFTU0xfQ1RYX2NvbmZpZyhzZXJ2ZXJf Y3R4LCAic2VydmVyIikKLSAgICAgICAgIHx8ICFTU0xfQ1RYX2NvbmZpZyhjbGllbnRfY3R4LCAi Y2xpZW50IikpIHsKLSAgICAgICAgIGdvdG8gZXJyOwotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMS1w cmU4L3Rlc3Qvc3NsdGVzdF9vbGQuYy5kaXNhYmxlLXNzbDMgb3BlbnNzbC0xLjEuMS1wcmU4L3Rl c3Qvc3NsdGVzdF9vbGQuYwotLS0tIG9wZW5zc2wtMS4xLjEtcHJlOC90ZXN0L3NzbHRlc3Rfb2xk LmMuZGlzYWJsZS1zc2wzCTIwMTgtMDYtMjAgMTY6NDg6MTUuMDAwMDAwMDAwICswMjAwCi0rKysg b3BlbnNzbC0xLjEuMS1wcmU4L3Rlc3Qvc3NsdGVzdF9vbGQuYwkyMDE4LTA3LTE2IDE4OjA4OjIw LjAwMjQ4NzY3NiArMDIwMAotQEAgLTEzNTgsNiArMTM1OCwxMSBAQCBpbnQgbWFpbihpbnQgYXJn YywgY2hhciAqYXJndltdKQotICAgICAgICAgRVJSX3ByaW50X2Vycm9ycyhiaW9fZXJyKTsKLSAg ICAgICAgIGdvdG8gZW5kOwotICAgICB9Ci0rCi0rICAgIFNTTF9DVFhfY2xlYXJfb3B0aW9ucyhj X2N0eCwgU1NMX09QX05PX1NTTHYzKTsKLSsgICAgU1NMX0NUWF9jbGVhcl9vcHRpb25zKHNfY3R4 LCBTU0xfT1BfTk9fU1NMdjMpOwotKyAgICBTU0xfQ1RYX2NsZWFyX29wdGlvbnMoc19jdHgyLCBT U0xfT1BfTk9fU1NMdjMpOwotKwotICAgICAvKgotICAgICAgKiBTaW5jZSB3ZSB3aWxsIHVzZSBs b3cgc2VjdXJpdHkgY2lwaGVyc3VpdGVzIGFuZCBrZXlzIGZvciB0ZXN0aW5nIHNldAotICAgICAg KiBzZWN1cml0eSBsZXZlbCB0byB6ZXJvIGJ5IGRlZmF1bHQuIFRlc3RzIGNhbiBvdmVycmlkZSB0 aGlzIGJ5IGFkZGluZwoKZGlmZiAtLWdpdCBhL29wZW5zc2wtMS4xLjEtZWMtY3VydmVzLnBhdGNo IGIvb3BlbnNzbC0xLjEuMS1lYy1jdXJ2ZXMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDI3ZjIzY2EuLjAwMDAwMDAKLS0tIGEvb3BlbnNzbC0xLjEuMS1lYy1jdXJ2ZXMucGF0 Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyNjYgKzAsMCBAQAotZGlmZiAtdXAgb3BlbnNzbC0xLjEu MWgvYXBwcy9zcGVlZC5jLmN1cnZlcyBvcGVuc3NsLTEuMS4xaC9hcHBzL3NwZWVkLmMKLS0tLSBv cGVuc3NsLTEuMS4xaC9hcHBzL3NwZWVkLmMuY3VydmVzCTIwMjAtMDktMjIgMTQ6NTU6MDcuMDAw MDAwMDAwICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWgvYXBwcy9zcGVlZC5jCTIwMjAtMTEtMDYg MTM6Mjc6MTUuNjU5Mjg4NDMxICswMTAwCi1AQCAtNDkwLDkwICs0OTAsMzAgQEAgc3RhdGljIGRv dWJsZSByc2FfcmVzdWx0c1tSU0FfTlVNXVsyXTsKLSAjZW5kaWYgLyogT1BFTlNTTF9OT19SU0Eg Ki8KLSAKLSBlbnVtIHsKLS0gICAgUl9FQ19QMTYwLAotLSAgICBSX0VDX1AxOTIsCi0gICAgIFJf RUNfUDIyNCwKLSAgICAgUl9FQ19QMjU2LAotICAgICBSX0VDX1AzODQsCi0gICAgIFJfRUNfUDUy MSwKLS0jaWZuZGVmIE9QRU5TU0xfTk9fRUMyTQotLSAgICBSX0VDX0sxNjMsCi0tICAgIFJfRUNf SzIzMywKLS0gICAgUl9FQ19LMjgzLAotLSAgICBSX0VDX0s0MDksCi0tICAgIFJfRUNfSzU3MSwK LS0gICAgUl9FQ19CMTYzLAotLSAgICBSX0VDX0IyMzMsCi0tICAgIFJfRUNfQjI4MywKLS0gICAg Ul9FQ19CNDA5LAotLSAgICBSX0VDX0I1NzEsCi0tI2VuZGlmCi0tICAgIFJfRUNfQlJQMjU2UjEs Ci0tICAgIFJfRUNfQlJQMjU2VDEsCi0tICAgIFJfRUNfQlJQMzg0UjEsCi0tICAgIFJfRUNfQlJQ Mzg0VDEsCi0tICAgIFJfRUNfQlJQNTEyUjEsCi0tICAgIFJfRUNfQlJQNTEyVDEsCi0gICAgIFJf RUNfWDI1NTE5LAotICAgICBSX0VDX1g0NDgKLSB9OwotIAotICNpZm5kZWYgT1BFTlNTTF9OT19F QwotIHN0YXRpYyBPUFRfUEFJUiBlY2RzYV9jaG9pY2VzW10gPSB7Ci0tICAgIHsiZWNkc2FwMTYw IiwgUl9FQ19QMTYwfSwKLS0gICAgeyJlY2RzYXAxOTIiLCBSX0VDX1AxOTJ9LAotICAgICB7ImVj ZHNhcDIyNCIsIFJfRUNfUDIyNH0sCi0gICAgIHsiZWNkc2FwMjU2IiwgUl9FQ19QMjU2fSwKLSAg ICAgeyJlY2RzYXAzODQiLCBSX0VDX1AzODR9LAotICAgICB7ImVjZHNhcDUyMSIsIFJfRUNfUDUy MX0sCi0tIyBpZm5kZWYgT1BFTlNTTF9OT19FQzJNCi0tICAgIHsiZWNkc2FrMTYzIiwgUl9FQ19L MTYzfSwKLS0gICAgeyJlY2RzYWsyMzMiLCBSX0VDX0syMzN9LAotLSAgICB7ImVjZHNhazI4MyIs IFJfRUNfSzI4M30sCi0tICAgIHsiZWNkc2FrNDA5IiwgUl9FQ19LNDA5fSwKLS0gICAgeyJlY2Rz YWs1NzEiLCBSX0VDX0s1NzF9LAotLSAgICB7ImVjZHNhYjE2MyIsIFJfRUNfQjE2M30sCi0tICAg IHsiZWNkc2FiMjMzIiwgUl9FQ19CMjMzfSwKLS0gICAgeyJlY2RzYWIyODMiLCBSX0VDX0IyODN9 LAotLSAgICB7ImVjZHNhYjQwOSIsIFJfRUNfQjQwOX0sCi0tICAgIHsiZWNkc2FiNTcxIiwgUl9F Q19CNTcxfSwKLS0jIGVuZGlmCi0tICAgIHsiZWNkc2FicnAyNTZyMSIsIFJfRUNfQlJQMjU2UjF9 LAotLSAgICB7ImVjZHNhYnJwMjU2dDEiLCBSX0VDX0JSUDI1NlQxfSwKLS0gICAgeyJlY2RzYWJy cDM4NHIxIiwgUl9FQ19CUlAzODRSMX0sCi0tICAgIHsiZWNkc2FicnAzODR0MSIsIFJfRUNfQlJQ Mzg0VDF9LAotLSAgICB7ImVjZHNhYnJwNTEycjEiLCBSX0VDX0JSUDUxMlIxfSwKLS0gICAgeyJl Y2RzYWJycDUxMnQxIiwgUl9FQ19CUlA1MTJUMX0KLSB9OwotICMgZGVmaW5lIEVDRFNBX05VTSAg ICAgICBPU1NMX05FTEVNKGVjZHNhX2Nob2ljZXMpCi0gCi0gc3RhdGljIGRvdWJsZSBlY2RzYV9y ZXN1bHRzW0VDRFNBX05VTV1bMl07ICAgIC8qIDIgb3BzOiBzaWduIHRoZW4gdmVyaWZ5ICovCi0g Ci0gc3RhdGljIGNvbnN0IE9QVF9QQUlSIGVjZGhfY2hvaWNlc1tdID0gewotLSAgICB7ImVjZGhw MTYwIiwgUl9FQ19QMTYwfSwKLS0gICAgeyJlY2RocDE5MiIsIFJfRUNfUDE5Mn0sCi0gICAgIHsi ZWNkaHAyMjQiLCBSX0VDX1AyMjR9LAotICAgICB7ImVjZGhwMjU2IiwgUl9FQ19QMjU2fSwKLSAg ICAgeyJlY2RocDM4NCIsIFJfRUNfUDM4NH0sCi0gICAgIHsiZWNkaHA1MjEiLCBSX0VDX1A1MjF9 LAotLSMgaWZuZGVmIE9QRU5TU0xfTk9fRUMyTQotLSAgICB7ImVjZGhrMTYzIiwgUl9FQ19LMTYz fSwKLS0gICAgeyJlY2RoazIzMyIsIFJfRUNfSzIzM30sCi0tICAgIHsiZWNkaGsyODMiLCBSX0VD X0syODN9LAotLSAgICB7ImVjZGhrNDA5IiwgUl9FQ19LNDA5fSwKLS0gICAgeyJlY2RoazU3MSIs IFJfRUNfSzU3MX0sCi0tICAgIHsiZWNkaGIxNjMiLCBSX0VDX0IxNjN9LAotLSAgICB7ImVjZGhi MjMzIiwgUl9FQ19CMjMzfSwKLS0gICAgeyJlY2RoYjI4MyIsIFJfRUNfQjI4M30sCi0tICAgIHsi ZWNkaGI0MDkiLCBSX0VDX0I0MDl9LAotLSAgICB7ImVjZGhiNTcxIiwgUl9FQ19CNTcxfSwKLS0j IGVuZGlmCi0tICAgIHsiZWNkaGJycDI1NnIxIiwgUl9FQ19CUlAyNTZSMX0sCi0tICAgIHsiZWNk aGJycDI1NnQxIiwgUl9FQ19CUlAyNTZUMX0sCi0tICAgIHsiZWNkaGJycDM4NHIxIiwgUl9FQ19C UlAzODRSMX0sCi0tICAgIHsiZWNkaGJycDM4NHQxIiwgUl9FQ19CUlAzODRUMX0sCi0tICAgIHsi ZWNkaGJycDUxMnIxIiwgUl9FQ19CUlA1MTJSMX0sCi0tICAgIHsiZWNkaGJycDUxMnQxIiwgUl9F Q19CUlA1MTJUMX0sCi0gICAgIHsiZWNkaHgyNTUxOSIsIFJfRUNfWDI1NTE5fSwKLSAgICAgeyJl Y2RoeDQ0OCIsIFJfRUNfWDQ0OH0KLSB9OwotQEAgLTE1MDIsMzEgKzE0NDIsMTAgQEAgaW50IHNw ZWVkX21haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQotICAgICAgICAgdW5zaWduZWQgaW50IGJp dHM7Ci0gICAgIH0gdGVzdF9jdXJ2ZXNbXSA9IHsKLSAgICAgICAgIC8qIFByaW1lIEN1cnZlcyAq LwotLSAgICAgICAgeyJzZWNwMTYwcjEiLCBOSURfc2VjcDE2MHIxLCAxNjB9LAotLSAgICAgICAg eyJuaXN0cDE5MiIsIE5JRF9YOV82Ml9wcmltZTE5MnYxLCAxOTJ9LAotICAgICAgICAgeyJuaXN0 cDIyNCIsIE5JRF9zZWNwMjI0cjEsIDIyNH0sCi0gICAgICAgICB7Im5pc3RwMjU2IiwgTklEX1g5 XzYyX3ByaW1lMjU2djEsIDI1Nn0sCi0gICAgICAgICB7Im5pc3RwMzg0IiwgTklEX3NlY3AzODRy MSwgMzg0fSwKLSAgICAgICAgIHsibmlzdHA1MjEiLCBOSURfc2VjcDUyMXIxLCA1MjF9LAotLSMg aWZuZGVmIE9QRU5TU0xfTk9fRUMyTQotLSAgICAgICAgLyogQmluYXJ5IEN1cnZlcyAqLwotLSAg ICAgICAgeyJuaXN0azE2MyIsIE5JRF9zZWN0MTYzazEsIDE2M30sCi0tICAgICAgICB7Im5pc3Rr MjMzIiwgTklEX3NlY3QyMzNrMSwgMjMzfSwKLS0gICAgICAgIHsibmlzdGsyODMiLCBOSURfc2Vj dDI4M2sxLCAyODN9LAotLSAgICAgICAgeyJuaXN0azQwOSIsIE5JRF9zZWN0NDA5azEsIDQwOX0s Ci0tICAgICAgICB7Im5pc3RrNTcxIiwgTklEX3NlY3Q1NzFrMSwgNTcxfSwKLS0gICAgICAgIHsi bmlzdGIxNjMiLCBOSURfc2VjdDE2M3IyLCAxNjN9LAotLSAgICAgICAgeyJuaXN0YjIzMyIsIE5J RF9zZWN0MjMzcjEsIDIzM30sCi0tICAgICAgICB7Im5pc3RiMjgzIiwgTklEX3NlY3QyODNyMSwg MjgzfSwKLS0gICAgICAgIHsibmlzdGI0MDkiLCBOSURfc2VjdDQwOXIxLCA0MDl9LAotLSAgICAg ICAgeyJuaXN0YjU3MSIsIE5JRF9zZWN0NTcxcjEsIDU3MX0sCi0tIyBlbmRpZgotLSAgICAgICAg eyJicmFpbnBvb2xQMjU2cjEiLCBOSURfYnJhaW5wb29sUDI1NnIxLCAyNTZ9LAotLSAgICAgICAg eyJicmFpbnBvb2xQMjU2dDEiLCBOSURfYnJhaW5wb29sUDI1NnQxLCAyNTZ9LAotLSAgICAgICAg eyJicmFpbnBvb2xQMzg0cjEiLCBOSURfYnJhaW5wb29sUDM4NHIxLCAzODR9LAotLSAgICAgICAg eyJicmFpbnBvb2xQMzg0dDEiLCBOSURfYnJhaW5wb29sUDM4NHQxLCAzODR9LAotLSAgICAgICAg eyJicmFpbnBvb2xQNTEycjEiLCBOSURfYnJhaW5wb29sUDUxMnIxLCA1MTJ9LAotLSAgICAgICAg eyJicmFpbnBvb2xQNTEydDEiLCBOSURfYnJhaW5wb29sUDUxMnQxLCA1MTJ9LAotICAgICAgICAg LyogT3RoZXIgYW5kIEVDREggb25seSBvbmVzICovCi0gICAgICAgICB7IlgyNTUxOSIsIE5JRF9Y MjU1MTksIDI1M30sCi0gICAgICAgICB7Ilg0NDgiLCBOSURfWDQ0OCwgNDQ4fQotQEAgLTIwMjYs OSArMTk0NSw5IEBAIGludCBzcGVlZF9tYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKLSAjICBl bmRpZgotIAotICMgIGlmbmRlZiBPUEVOU1NMX05PX0VDCi0tICAgIGVjZHNhX2NbUl9FQ19QMTYw XVswXSA9IGNvdW50IC8gMTAwMDsKLS0gICAgZWNkc2FfY1tSX0VDX1AxNjBdWzFdID0gY291bnQg LyAxMDAwIC8gMjsKLS0gICAgZm9yIChpID0gUl9FQ19QMTkyOyBpIDw9IFJfRUNfUDUyMTsgaSsr KSB7Ci0rICAgIGVjZHNhX2NbUl9FQ19QMjI0XVswXSA9IGNvdW50IC8gMTAwMDsKLSsgICAgZWNk c2FfY1tSX0VDX1AyMjRdWzFdID0gY291bnQgLyAxMDAwIC8gMjsKLSsgICAgZm9yIChpID0gUl9F Q19QMjU2OyBpIDw9IFJfRUNfUDUyMTsgaSsrKSB7Ci0gICAgICAgICBlY2RzYV9jW2ldWzBdID0g ZWNkc2FfY1tpIC0gMV1bMF0gLyAyOwotICAgICAgICAgZWNkc2FfY1tpXVsxXSA9IGVjZHNhX2Nb aSAtIDFdWzFdIC8gMjsKLSAgICAgICAgIGlmIChlY2RzYV9kb2l0W2ldIDw9IDEgJiYgZWNkc2Ff Y1tpXVswXSA9PSAwKQotQEAgLTIwNDAsNyArMTk1OSw3IEBAIGludCBzcGVlZF9tYWluKGludCBh cmdjLCBjaGFyICoqYXJndikKLSAgICAgICAgICAgICB9Ci0gICAgICAgICB9Ci0gICAgIH0KLS0j ICAgaWZuZGVmIE9QRU5TU0xfTk9fRUMyTQotKyMgICBpZiAwCi0gICAgIGVjZHNhX2NbUl9FQ19L MTYzXVswXSA9IGNvdW50IC8gMTAwMDsKLSAgICAgZWNkc2FfY1tSX0VDX0sxNjNdWzFdID0gY291 bnQgLyAxMDAwIC8gMjsKLSAgICAgZm9yIChpID0gUl9FQ19LMjMzOyBpIDw9IFJfRUNfSzU3MTsg aSsrKSB7Ci1AQCAtMjA3MSw4ICsxOTkwLDggQEAgaW50IHNwZWVkX21haW4oaW50IGFyZ2MsIGNo YXIgKiphcmd2KQotICAgICB9Ci0gIyAgIGVuZGlmCi0gCi0tICAgIGVjZGhfY1tSX0VDX1AxNjBd WzBdID0gY291bnQgLyAxMDAwOwotLSAgICBmb3IgKGkgPSBSX0VDX1AxOTI7IGkgPD0gUl9FQ19Q NTIxOyBpKyspIHsKLSsgICAgZWNkaF9jW1JfRUNfUDIyNF1bMF0gPSBjb3VudCAvIDEwMDA7Ci0r ICAgIGZvciAoaSA9IFJfRUNfUDI1NjsgaSA8PSBSX0VDX1A1MjE7IGkrKykgewotICAgICAgICAg ZWNkaF9jW2ldWzBdID0gZWNkaF9jW2kgLSAxXVswXSAvIDI7Ci0gICAgICAgICBpZiAoZWNkaF9k b2l0W2ldIDw9IDEgJiYgZWNkaF9jW2ldWzBdID09IDApCi0gICAgICAgICAgICAgZWNkaF9kb2l0 W2ldID0gMDsKLUBAIC0yMDgyLDcgKzIwMDEsNyBAQCBpbnQgc3BlZWRfbWFpbihpbnQgYXJnYywg Y2hhciAqKmFyZ3YpCi0gICAgICAgICAgICAgfQotICAgICAgICAgfQotICAgICB9Ci0tIyAgIGlm bmRlZiBPUEVOU1NMX05PX0VDMk0KLSsjICAgaWYgMAotICAgICBlY2RoX2NbUl9FQ19LMTYzXVsw XSA9IGNvdW50IC8gMTAwMDsKLSAgICAgZm9yIChpID0gUl9FQ19LMjMzOyBpIDw9IFJfRUNfSzU3 MTsgaSsrKSB7Ci0gICAgICAgICBlY2RoX2NbaV1bMF0gPSBlY2RoX2NbaSAtIDFdWzBdIC8gMjsK LWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFoL2NyeXB0by9lYy9lY3Bfc21wbC5jLmN1cnZlcyBvcGVu c3NsLTEuMS4xaC9jcnlwdG8vZWMvZWNwX3NtcGwuYwotLS0tIG9wZW5zc2wtMS4xLjFoL2NyeXB0 by9lYy9lY3Bfc21wbC5jLmN1cnZlcwkyMDIwLTA5LTIyIDE0OjU1OjA3LjAwMDAwMDAwMCArMDIw MAotKysrIG9wZW5zc2wtMS4xLjFoL2NyeXB0by9lYy9lY3Bfc21wbC5jCTIwMjAtMTEtMDYgMTM6 Mjc6MTUuNjU5Mjg4NDMxICswMTAwCi1AQCAtMTQ1LDYgKzE0NSwxMSBAQCBpbnQgZWNfR0ZwX3Np bXBsZV9ncm91cF9zZXRfY3VydmUoRUNfR1JPCi0gICAgICAgICByZXR1cm4gMDsKLSAgICAgfQot IAotKyAgICBpZiAoQk5fbnVtX2JpdHMocCkgPCAyMjQpIHsKLSsgICAgICAgIEVDZXJyKEVDX0Zf RUNfR0ZQX1NJTVBMRV9HUk9VUF9TRVRfQ1VSVkUsIEVDX1JfVU5TVVBQT1JURURfRklFTEQpOwot KyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsKLSAgICAgaWYgKGN0eCA9PSBOVUxMKSB7Ci0g ICAgICAgICBjdHggPSBuZXdfY3R4ID0gQk5fQ1RYX25ldygpOwotICAgICAgICAgaWYgKGN0eCA9 PSBOVUxMKQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWgvdGVzdC9lY2RzYXRlc3QuaC5jdXJ2ZXMg b3BlbnNzbC0xLjEuMWgvdGVzdC9lY2RzYXRlc3QuaAotLS0tIG9wZW5zc2wtMS4xLjFoL3Rlc3Qv ZWNkc2F0ZXN0LmguY3VydmVzCTIwMjAtMTEtMDYgMTM6Mjc6MTUuNjI3Mjg4MTE0ICswMTAwCi0r Kysgb3BlbnNzbC0xLjEuMWgvdGVzdC9lY2RzYXRlc3QuaAkyMDIwLTExLTA2IDEzOjI3OjE1LjY2 MDI4ODQ0MSArMDEwMAotQEAgLTMyLDIzICszMiw2IEBAIHR5cGVkZWYgc3RydWN0IHsKLSB9IGVj ZHNhX2NhdnNfa2F0X3Q7Ci0gCi0gc3RhdGljIGNvbnN0IGVjZHNhX2NhdnNfa2F0X3QgZWNkc2Ff Y2F2c19rYXRzW10gPSB7Ci0tICAgIC8qIHByaW1lIEtBVHMgZnJvbSBYOS42MiAqLwotLSAgICB7 TklEX1g5XzYyX3ByaW1lMTkydjEsIE5JRF9zaGExLAotLSAgICAgIjYxNjI2MyIsICAgICAgICAg ICAgICAgICAgLyogImFiYyIgKi8KLS0gICAgICIxYThkNTk4ZmMxNWJmMGZkODkwMzBiNWNiMTEx MWFlYjkyYWU4YmFmNWVhNDc1ZmIiLAotLSAgICAgIjA0NjJiMTJkNjA2OTBjZGNmMzMwYmFiYWI2 ZTY5NzYzYjQ3MWY5OTRkZDcwMmQxNmE1NjNiZjVlYzA4MDY5NzA1ZmZmZjY1ZSIKLS0gICAgICI1 Y2E1YzBkNjk3MTZkZmNiMzQ3NDM3MzkwMiIsCi0tICAgICAiZmE2ZGUyOTc0NmJiZWI3ZjhiYjFl NzYxZjg1ZjdkZmIyOTgzMTY5ZDgyZmEyZjRlIiwKLS0gICAgICI4ODUwNTIzODBmZjE0N2I3MzRj MzMwYzQzZDM5YjJjNGE4OWYyOWIwZjc0OWZlYWQiLAotLSAgICAgImU5ZWNjNzgxMDZkZWY4MmJm MTA3MGNmMWQ0ZDgwNGMzY2IzOTAwNDY5NTFkZjY4NiJ9LAotLSAgICB7TklEX1g5XzYyX3ByaW1l MjM5djEsIE5JRF9zaGExLAotLSAgICAgIjYxNjI2MyIsICAgICAgICAgICAgICAgICAgLyogImFi YyIgKi8KLS0gICAgICI3ZWY3YzZmYWJlZmZmZGVhODY0MjA2ZTgwYjBiMDhhOTMzMWVkOTNlNjk4 NTYxYjY0Y2EwZjc3NzdmM2QiLAotLSAgICAgIjA0NWI2ZGM1M2JjNjFhMjU0OGZmYjBmNjcxNDcy ZGU2Yzk1MjFhOWQyZDI1MzRlNjVhYmZjYmQ1ZmUwYzcwN2ZkOWYxZWQyZSIKLS0gICAgICI2NWYw OWY2Y2UwODkzYmFmNWU4ZTMxZTZhZTgyZWE4YzM1OTIzMzViZTkwNmQzOGRlZSIsCi0tICAgICAi NjU2YzcxOTZiZjg3ZGNjNWQxZjEwMjA5MDZkZjI3ODIzNjBkMzZiMmRlN2ExN2VjZTM3ZDUwMzc4 NGFmIiwKLS0gICAgICIyY2I3ZjM2ODAzZWJiOWM0MjdjNThkODI2NWYxMWZjNTA4NDc0NzEzMzA3 OGZjMjc5ZGU4NzRmYmVjYjAiLAotLSAgICAgIjJlZWFlOTg4MTA0ZTljMjIzNGEzYzJiZWIxZjUz YmZhNWRjMTFmZjM2YTg3NWQxZTNjY2IxZjdlNDVjZiJ9LAotICAgICAvKiBwcmltZSBLQVRzIGZy b20gTklTVCBDQVZQICovCi0gICAgIHtOSURfc2VjcDIyNHIxLCBOSURfc2hhMjI0LAotICAgICAg IjY5OTMyNWQ2ZmM4ZmJiYjQ5ODFhNmRlZDNjM2E1NGFkMmU0ZTNkYjhhNTY2OTIwMTkxMjA2NGM2 NGU3MDBjMTM5MjQ4Y2RjMSIKLS0tLSBvcGVuc3NsLTEuMS4xaC90ZXN0L3JlY2lwZXMvMTUtdGVz dF9nZW5lYy50LmVjLWN1cnZlcwkyMDIwLTExLTA2IDEzOjU4OjM2LjQwMjg5NTU0MCArMDEwMAot KysrIG9wZW5zc2wtMS4xLjFoL3Rlc3QvcmVjaXBlcy8xNS10ZXN0X2dlbmVjLnQJMjAyMC0xMS0w NiAxMzo1OTozOC41MDg0ODQ0OTggKzAxMDAKLUBAIC0yMCw0NSArMjAsMTEgQEAgcGxhbiBza2lw X2FsbCA9PiAiVGhpcyB0ZXN0IGlzIHVuc3VwcG9ydAotICAgICBpZiBkaXNhYmxlZCgiZWMiKTsK LSAKLSBteSBAcHJpbWVfY3VydmVzID0gcXcoCi0tICAgIHNlY3AxMTJyMQotLSAgICBzZWNwMTEy cjIKLS0gICAgc2VjcDEyOHIxCi0tICAgIHNlY3AxMjhyMgotLSAgICBzZWNwMTYwazEKLS0gICAg c2VjcDE2MHIxCi0tICAgIHNlY3AxNjByMgotLSAgICBzZWNwMTkyazEKLS0gICAgc2VjcDIyNGsx Ci0gICAgIHNlY3AyMjRyMQotICAgICBzZWNwMjU2azEKLSAgICAgc2VjcDM4NHIxCi0gICAgIHNl Y3A1MjFyMQotLSAgICBwcmltZTE5MnYxCi0tICAgIHByaW1lMTkydjIKLS0gICAgcHJpbWUxOTJ2 MwotLSAgICBwcmltZTIzOXYxCi0tICAgIHByaW1lMjM5djIKLS0gICAgcHJpbWUyMzl2MwotICAg ICBwcmltZTI1NnYxCi0tICAgIHdhcC13c2ctaWRtLWVjaWQtd3RsczYKLS0gICAgd2FwLXdzZy1p ZG0tZWNpZC13dGxzNwotLSAgICB3YXAtd3NnLWlkbS1lY2lkLXd0bHM4Ci0tICAgIHdhcC13c2ct aWRtLWVjaWQtd3RsczkKLS0gICAgd2FwLXdzZy1pZG0tZWNpZC13dGxzMTIKLS0gICAgYnJhaW5w b29sUDE2MHIxCi0tICAgIGJyYWlucG9vbFAxNjB0MQotLSAgICBicmFpbnBvb2xQMTkycjEKLS0g ICAgYnJhaW5wb29sUDE5MnQxCi0tICAgIGJyYWlucG9vbFAyMjRyMQotLSAgICBicmFpbnBvb2xQ MjI0dDEKLS0gICAgYnJhaW5wb29sUDI1NnIxCi0tICAgIGJyYWlucG9vbFAyNTZ0MQotLSAgICBi cmFpbnBvb2xQMzIwcjEKLS0gICAgYnJhaW5wb29sUDMyMHQxCi0tICAgIGJyYWlucG9vbFAzODRy MQotLSAgICBicmFpbnBvb2xQMzg0dDEKLS0gICAgYnJhaW5wb29sUDUxMnIxCi0tICAgIGJyYWlu cG9vbFA1MTJ0MQotICk7Ci0gCi0gbXkgQGJpbmFyeV9jdXJ2ZXMgPSBxdygKLUBAIC0xMTUsNyAr ODEsNiBAQCBwdXNoKEBvdGhlcl9jdXJ2ZXMsICdTTTInKQotICAgICBpZiAhZGlzYWJsZWQoInNt MiIpOwotIAotIG15IEBjdXJ2ZV9hbGlhc2VzID0gcXcoCi0tICAgIFAtMTkyCi0gICAgIFAtMjI0 Ci0gICAgIFAtMjU2Ci0gICAgIFAtMzg0CgpkaWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1lZGsy LWJ1aWxkLnBhdGNoIGIvb3BlbnNzbC0xLjEuMS1lZGsyLWJ1aWxkLnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCBiMTM3MDhlLi4wMDAwMDAwCi0tLSBhL29wZW5zc2wtMS4xLjEt ZWRrMi1idWlsZC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDU3ICswLDAgQEAKLWRpZmYgLXVw IG9wZW5zc2wtMS4xLjFnL2NyeXB0by9ldnAvcGtleV9rZGYuYy5lZGsyLWJ1aWxkIG9wZW5zc2wt MS4xLjFnL2NyeXB0by9ldnAvcGtleV9rZGYuYwotLS0tIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9l dnAvcGtleV9rZGYuYy5lZGsyLWJ1aWxkCTIwMjAtMDUtMTggMTI6NTU6NTMuMjk5NTQ4NDMyICsw MjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2V2cC9wa2V5X2tkZi5jCTIwMjAtMDUtMTgg MTI6NTU6NTMuMzQwNTQ4Nzg4ICswMjAwCi1AQCAtMTIsNiArMTIsNyBAQAotICNpbmNsdWRlIDxv cGVuc3NsL2V2cC5oPgotICNpbmNsdWRlIDxvcGVuc3NsL2Vyci5oPgotICNpbmNsdWRlIDxvcGVu c3NsL2tkZi5oPgotKyNpbmNsdWRlICJpbnRlcm5hbC9udW1iZXJzLmgiCi0gI2luY2x1ZGUgImNy eXB0by9ldnAuaCIKLSAKLSBzdGF0aWMgaW50IHBrZXlfa2RmX2luaXQoRVZQX1BLRVlfQ1RYICpj dHgpCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8va2RmL2hrZGYuYy5lZGsyLWJ1aWxk IG9wZW5zc2wtMS4xLjFnL2NyeXB0by9rZGYvaGtkZi5jCi0tLS0gb3BlbnNzbC0xLjEuMWcvY3J5 cHRvL2tkZi9oa2RmLmMuZWRrMi1idWlsZAkyMDIwLTA1LTE4IDEyOjU1OjUzLjM0MDU0ODc4OCAr MDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9rZGYvaGtkZi5jCTIwMjAtMDUtMTggMTI6 NTc6MTguNjQ4Mjg4OTA0ICswMjAwCi1AQCAtMTMsNiArMTMsNyBAQAotICNpbmNsdWRlIDxvcGVu c3NsL2htYWMuaD4KLSAjaW5jbHVkZSA8b3BlbnNzbC9rZGYuaD4KLSAjaW5jbHVkZSA8b3BlbnNz bC9ldnAuaD4KLSsjaW5jbHVkZSAiaW50ZXJuYWwvbnVtYmVycy5oIgotICNpbmNsdWRlICJpbnRl cm5hbC9jcnlwdGxpYi5oIgotICNpbmNsdWRlICJjcnlwdG8vZXZwLmgiCi0gI2luY2x1ZGUgImtk Zl9sb2NhbC5oIgotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3JhbmQvcmFuZF91bml4 LmMuZWRrMi1idWlsZCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vcmFuZC9yYW5kX3VuaXguYwotLS0t IG9wZW5zc2wtMS4xLjFnL2NyeXB0by9yYW5kL3JhbmRfdW5peC5jLmVkazItYnVpbGQJMjAyMC0w NS0xOCAxMjo1NjowNS42NDY2NTU1NTQgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8v cmFuZC9yYW5kX3VuaXguYwkyMDIwLTA1LTE4IDEyOjU4OjUxLjA4ODA5MDg5NiArMDIwMAotQEAg LTIwLDcgKzIwLDcgQEAKLSAjaW5jbHVkZSAiY3J5cHRvL2ZpcHMuaCIKLSAjaW5jbHVkZSA8c3Rk aW8uaD4KLSAjaW5jbHVkZSAiaW50ZXJuYWwvZHNvLmgiCi0tI2lmZGVmIF9fbGludXgKLSsjaWYg ZGVmaW5lZChfX2xpbnV4KSAmJiAhZGVmaW5lZChPUEVOU1NMX1NZU19VRUZJKQotICMgaW5jbHVk ZSA8c3lzL3N5c2NhbGwuaD4KLSAjIGluY2x1ZGUgPHN5cy9yYW5kb20uaD4KLSAjIGlmZGVmIERF VlJBTkRPTV9XQUlUCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9pbmNsdWRlL2NyeXB0by9maXBz LmguZWRrMi1idWlsZCBvcGVuc3NsLTEuMS4xZy9pbmNsdWRlL2NyeXB0by9maXBzLmgKLS0tLSBv cGVuc3NsLTEuMS4xZy9pbmNsdWRlL2NyeXB0by9maXBzLmguZWRrMi1idWlsZAkyMDIwLTA1LTE4 IDEyOjU1OjUzLjI5NjU0ODQwNiArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2luY2x1ZGUvY3J5 cHRvL2ZpcHMuaAkyMDIwLTA1LTE4IDEyOjU1OjUzLjM0MDU0ODc4OCArMDIwMAotQEAgLTUwLDEw ICs1MCw2IEBACi0gI2luY2x1ZGUgPG9wZW5zc2wvb3BlbnNzbGNvbmYuaD4KLSAjaW5jbHVkZSA8 b3BlbnNzbC9ldnAuaD4KLSAKLS0jaWZuZGVmIE9QRU5TU0xfRklQUwotLSMgZXJyb3IgRklQUyBp cyBkaXNhYmxlZC4KLS0jZW5kaWYKLS0KLSAjaWZkZWYgT1BFTlNTTF9GSVBTCi0gCi0gaW50IEZJ UFNfbW9kdWxlX21vZGVfc2V0KGludCBvbm9mZik7Ci1AQCAtOTcsNCArOTMsOCBAQCB2b2lkIGZp cHNfc2V0X3NlbGZ0ZXN0X2ZhaWwodm9pZCk7Ci0gCi0gdm9pZCBGSVBTX2dldF90aW1ldmVjKHVu c2lnbmVkIGNoYXIgKmJ1ZiwgdW5zaWduZWQgbG9uZyAqcGN0cik7Ci0gCi0rI2Vsc2UKLSsKLSsj IGRlZmluZSBmaXBzX2luX3Bvc3QoKSAwCi0rCi0gI2VuZGlmCgpkaWZmIC0tZ2l0IGEvb3BlbnNz bC0xLjEuMS1ldnAta2RmLnBhdGNoIGIvb3BlbnNzbC0xLjEuMS1ldnAta2RmLnBhdGNoCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2MTQ1NzUzLi4wMDAwMDAwCi0tLSBhL29wZW5zc2wt MS4xLjEtZXZwLWtkZi5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDUyMzggKzAsMCBAQAotZGlm ZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2Vyci9vcGVuc3NsLnR4dC5ldnAta2RmIG9wZW5z c2wtMS4xLjFqL2NyeXB0by9lcnIvb3BlbnNzbC50eHQKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlw dG8vZXJyL29wZW5zc2wudHh0LmV2cC1rZGYJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAg KzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXJyL29wZW5zc2wudHh0CTIwMjEtMDMt MDMgMTQ6MTA6MTMuNzI5NDY2OTM1ICswMTAwCi1AQCAtNzQ4LDYgKzc0OCw5IEBAIEVWUF9GX0VW UF9ESUdFU1RJTklUX0VYOjEyODpFVlBfRGlnZXN0SW4KLSBFVlBfRl9FVlBfRU5DUllQVERFQ1JZ UFRVUERBVEU6MjE5OmV2cF9FbmNyeXB0RGVjcnlwdFVwZGF0ZQotIEVWUF9GX0VWUF9FTkNSWVBU RklOQUxfRVg6MTI3OkVWUF9FbmNyeXB0RmluYWxfZXgKLSBFVlBfRl9FVlBfRU5DUllQVFVQREFU RToxNjc6RVZQX0VuY3J5cHRVcGRhdGUKLStFVlBfRl9FVlBfS0RGX0NUUkw6MjI0OkVWUF9LREZf Y3RybAotK0VWUF9GX0VWUF9LREZfQ1RSTF9TVFI6MjI1OkVWUF9LREZfY3RybF9zdHIKLStFVlBf Rl9FVlBfS0RGX0NUWF9ORVdfSUQ6MjI2OkVWUF9LREZfQ1RYX25ld19pZAotIEVWUF9GX0VWUF9N RF9DVFhfQ09QWV9FWDoxMTA6RVZQX01EX0NUWF9jb3B5X2V4Ci0gRVZQX0ZfRVZQX01EX1NJWkU6 MTYyOkVWUF9NRF9zaXplCi0gRVZQX0ZfRVZQX09QRU5JTklUOjEwMjpFVlBfT3BlbkluaXQKLUBA IC04MTAsMTIgKzgxMywzMSBAQCBFVlBfRl9QS0NTNV9QQkVfS0VZSVZHRU46MTE3OlBLQ1M1X1BC RV9rCi0gRVZQX0ZfUEtDUzVfVjJfUEJFX0tFWUlWR0VOOjExODpQS0NTNV92Ml9QQkVfa2V5aXZn ZW4KLSBFVlBfRl9QS0NTNV9WMl9QQktERjJfS0VZSVZHRU46MTY0OlBLQ1M1X3YyX1BCS0RGMl9r ZXlpdmdlbgotIEVWUF9GX1BLQ1M1X1YyX1NDUllQVF9LRVlJVkdFTjoxODA6UEtDUzVfdjJfc2Ny eXB0X2tleWl2Z2VuCi0rRVZQX0ZfUEtFWV9LREZfQ1RSTDoyMjc6cGtleV9rZGZfY3RybAotIEVW UF9GX1BLRVlfU0VUX1RZUEU6MTU4OnBrZXlfc2V0X3R5cGUKLSBFVlBfRl9SQzJfTUFHSUNfVE9f TUVUSDoxMDk6cmMyX21hZ2ljX3RvX21ldGgKLSBFVlBfRl9SQzVfQ1RSTDoxMjU6cmM1X2N0cmwK LSBFVlBfRl9SXzMyXzEyXzE2X0lOSVRfS0VZOjI0MjpyXzMyXzEyXzE2X2luaXRfa2V5Ci0gRVZQ X0ZfUzM5MFhfQUVTX0dDTV9DVFJMOjIwMTpzMzkweF9hZXNfZ2NtX2N0cmwKLStFVlBfRl9TQ1JZ UFRfQUxHOjIyODpzY3J5cHRfYWxnCi0gRVZQX0ZfVVBEQVRFOjE3Mzp1cGRhdGUKLStLREZfRl9I S0RGX0VYVFJBQ1Q6MTEyOkhLREZfRXh0cmFjdAotK0tERl9GX0tERl9IS0RGX0RFUklWRToxMTM6 a2RmX2hrZGZfZGVyaXZlCi0rS0RGX0ZfS0RGX0hLREZfTkVXOjExNDprZGZfaGtkZl9uZXcKLStL REZfRl9LREZfSEtERl9TSVpFOjExNTprZGZfaGtkZl9zaXplCi0rS0RGX0ZfS0RGX01EMkNUUkw6 MTE2OmtkZl9tZDJjdHJsCi0rS0RGX0ZfS0RGX1BCS0RGMl9DVFJMX1NUUjoxMTc6a2RmX3Bia2Rm Ml9jdHJsX3N0cgotK0tERl9GX0tERl9QQktERjJfREVSSVZFOjExODprZGZfcGJrZGYyX2Rlcml2 ZQotK0tERl9GX0tERl9QQktERjJfTkVXOjExOTprZGZfcGJrZGYyX25ldwotK0tERl9GX0tERl9T Q1JZUFRfQ1RSTF9TVFI6MTIwOmtkZl9zY3J5cHRfY3RybF9zdHIKLStLREZfRl9LREZfU0NSWVBU X0NUUkxfVUlOVDMyOjEyMTprZGZfc2NyeXB0X2N0cmxfdWludDMyCi0rS0RGX0ZfS0RGX1NDUllQ VF9DVFJMX1VJTlQ2NDoxMjI6a2RmX3NjcnlwdF9jdHJsX3VpbnQ2NAotK0tERl9GX0tERl9TQ1JZ UFRfREVSSVZFOjEyMzprZGZfc2NyeXB0X2Rlcml2ZQotK0tERl9GX0tERl9TQ1JZUFRfTkVXOjEy NDprZGZfc2NyeXB0X25ldwotK0tERl9GX0tERl9UTFMxX1BSRl9DVFJMX1NUUjoxMjU6a2RmX3Rs czFfcHJmX2N0cmxfc3RyCi0rS0RGX0ZfS0RGX1RMUzFfUFJGX0RFUklWRToxMjY6a2RmX3RsczFf cHJmX2Rlcml2ZQotK0tERl9GX0tERl9UTFMxX1BSRl9ORVc6MTI3OmtkZl90bHMxX3ByZl9uZXcK LStLREZfRl9QQktERjJfU0VUX01FTUJVRjoxMjg6cGJrZGYyX3NldF9tZW1idWYKLSBLREZfRl9Q S0VZX0hLREZfQ1RSTF9TVFI6MTAzOnBrZXlfaGtkZl9jdHJsX3N0cgotIEtERl9GX1BLRVlfSEtE Rl9ERVJJVkU6MTAyOnBrZXlfaGtkZl9kZXJpdmUKLSBLREZfRl9QS0VZX0hLREZfSU5JVDoxMDg6 cGtleV9oa2RmX2luaXQKLUBAIC04MjcsNiArODQ5LDcgQEAgS0RGX0ZfUEtFWV9TQ1JZUFRfU0VU X01FTUJVRjoxMDc6cGtleV9zYwotIEtERl9GX1BLRVlfVExTMV9QUkZfQ1RSTF9TVFI6MTAwOnBr ZXlfdGxzMV9wcmZfY3RybF9zdHIKLSBLREZfRl9QS0VZX1RMUzFfUFJGX0RFUklWRToxMDE6cGtl eV90bHMxX3ByZl9kZXJpdmUKLSBLREZfRl9QS0VZX1RMUzFfUFJGX0lOSVQ6MTEwOnBrZXlfdGxz MV9wcmZfaW5pdAotK0tERl9GX1NDUllQVF9TRVRfTUVNQlVGOjEyOTpzY3J5cHRfc2V0X21lbWJ1 ZgotIEtERl9GX1RMUzFfUFJGX0FMRzoxMTE6dGxzMV9wcmZfYWxnCi0gT0JKX0ZfT0JKX0FERF9P QkpFQ1Q6MTA1Ok9CSl9hZGRfb2JqZWN0Ci0gT0JKX0ZfT0JKX0FERF9TSUdJRDoxMDc6T0JKX2Fk ZF9zaWdpZAotQEAgLTIyODQsNiArMjMwNyw3IEBAIEVWUF9SX09QRVJBVElPTl9OT1RfU1VQUE9S VEVEX0ZPUl9USElTX0sKLSAJb3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQgZm9yIHRoaXMga2V5dHlw ZQotIEVWUF9SX09QRVJBVE9OX05PVF9JTklUSUFMSVpFRDoxNTE6b3BlcmF0b24gbm90IGluaXRp YWxpemVkCi0gRVZQX1JfT1VUUFVUX1dPVUxEX09WRVJGTE9XOjE4NDpvdXRwdXQgd291bGQgb3Zl cmZsb3cKLStFVlBfUl9QQVJBTUVURVJfVE9PX0xBUkdFOjE4NzpwYXJhbWV0ZXIgdG9vIGxhcmdl Ci0gRVZQX1JfUEFSVElBTExZX09WRVJMQVBQSU5HOjE2MjpwYXJ0aWFsbHkgb3ZlcmxhcHBpbmcg YnVmZmVycwotIEVWUF9SX1BCS0RGMl9FUlJPUjoxODE6cGJrZGYyIGVycm9yCi0gRVZQX1JfUEtF WV9BUFBMSUNBVElPTl9BU04xX01FVEhPRF9BTFJFQURZX1JFR0lTVEVSRUQ6MTc5OlwKLUBAIC0y MzIwLDYgKzIzNDQsNyBAQCBLREZfUl9NSVNTSU5HX1NFRUQ6MTA2Om1pc3Npbmcgc2VlZAotIEtE Rl9SX1VOS05PV05fUEFSQU1FVEVSX1RZUEU6MTAzOnVua25vd24gcGFyYW1ldGVyIHR5cGUKLSBL REZfUl9WQUxVRV9FUlJPUjoxMDg6dmFsdWUgZXJyb3IKLSBLREZfUl9WQUxVRV9NSVNTSU5HOjEw Mjp2YWx1ZSBtaXNzaW5nCi0rS0RGX1JfV1JPTkdfT1VUUFVUX0JVRkZFUl9TSVpFOjExMjp3cm9u ZyBvdXRwdXQgYnVmZmVyIHNpemUKLSBPQkpfUl9PSURfRVhJU1RTOjEwMjpvaWQgZXhpc3RzCi0g T0JKX1JfVU5LTk9XTl9OSUQ6MTAxOnVua25vd24gbmlkCi0gT0NTUF9SX0NFUlRJRklDQVRFX1ZF UklGWV9FUlJPUjoxMDE6Y2VydGlmaWNhdGUgdmVyaWZ5IGVycm9yCi1kaWZmIC11cCBvcGVuc3Ns LTEuMS4xai9jcnlwdG8vZXZwL2J1aWxkLmluZm8uZXZwLWtkZiBvcGVuc3NsLTEuMS4xai9jcnlw dG8vZXZwL2J1aWxkLmluZm8KLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL2J1aWxkLmlu Zm8uZXZwLWtkZgkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5z c2wtMS4xLjFqL2NyeXB0by9ldnAvYnVpbGQuaW5mbwkyMDIxLTAzLTAzIDE0OjA4OjAyLjQ5MDI5 NDgzOSArMDEwMAotQEAgLTksNyArOSw4IEBAIFNPVVJDRVsuLi8uLi9saWJjcnlwdG9dPVwKLSAg ICAgICAgIHBfb3Blbi5jIHBfc2VhbC5jIHBfc2lnbi5jIHBfdmVyaWZ5LmMgcF9saWIuYyBwX2Vu Yy5jIHBfZGVjLmMgXAotICAgICAgICAgYmlvX21kLmMgYmlvX2I2NC5jIGJpb19lbmMuYyBldnBf ZXJyLmMgZV9udWxsLmMgXAotICAgICAgICAgY19hbGxjLmMgY19hbGxkLmMgZXZwX2xpYi5jIGJp b19vay5jIFwKLS0gICAgICAgIGV2cF9wa2V5LmMgZXZwX3BiZS5jIHA1X2NycHQuYyBwNV9jcnB0 Mi5jIHBiZV9zY3J5cHQuYyBcCi0rICAgICAgICBldnBfcGtleS5jIGtkZl9saWIuYyBldnBfcGJl LmMgcDVfY3JwdC5jIHA1X2NycHQyLmMgcGJlX3NjcnlwdC5jIFwKLSsgICAgICAgIHBrZXlfa2Rm LmMgXAotICAgICAgICAgZV9vbGQuYyBwbWV0aF9saWIuYyBwbWV0aF9mbi5jIHBtZXRoX2duLmMg bV9zaWd2ZXIuYyBcCi0gICAgICAgICBlX2Flc19jYmNfaG1hY19zaGExLmMgZV9hZXNfY2JjX2ht YWNfc2hhMjU2LmMgZV9yYzRfaG1hY19tZDUuYyBcCi0gICAgICAgICBlX2NoYWNoYTIwX3BvbHkx MzA1LmMgY21ldGhfbGliLmMKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZV9j aGFjaGEyMF9wb2x5MTMwNS5jLmV2cC1rZGYgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9lX2No YWNoYTIwX3BvbHkxMzA1LmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL2VfY2hhY2hh MjBfcG9seTEzMDUuYy5ldnAta2RmCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAw Ci0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9lX2NoYWNoYTIwX3BvbHkxMzA1LmMJMjAy MS0wMy0wMyAxNDowODowMi40OTAyOTQ4MzkgKzAxMDAKLUBAIC0xNCw5ICsxNCw5IEBACi0gCi0g IyBpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgotICMgaW5jbHVkZSA8b3BlbnNzbC9vYmplY3RzLmg+ Ci0tIyBpbmNsdWRlICJldnBfbG9jYWwuaCIKLSAjIGluY2x1ZGUgImNyeXB0by9ldnAuaCIKLSAj IGluY2x1ZGUgImNyeXB0by9jaGFjaGEuaCIKLSsjIGluY2x1ZGUgImV2cF9sb2NhbC5oIgotIAot IHR5cGVkZWYgc3RydWN0IHsKLSAgICAgdW5pb24gewotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWov Y3J5cHRvL2V2cC9lbmNvZGUuYy5ldnAta2RmIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZW5j b2RlLmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL2VuY29kZS5jLmV2cC1rZGYJMjAy MS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlw dG8vZXZwL2VuY29kZS5jCTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDkxMjk0ODQ3ICswMTAwCi1AQCAt MTEsOCArMTEsOCBAQAotICNpbmNsdWRlIDxsaW1pdHMuaD4KLSAjaW5jbHVkZSAiaW50ZXJuYWwv Y3J5cHRsaWIuaCIKLSAjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLS0jaW5jbHVkZSAiZXZwX2xv Y2FsLmgiCi0gI2luY2x1ZGUgImNyeXB0by9ldnAuaCIKLSsjaW5jbHVkZSAiZXZwX2xvY2FsLmgi Ci0gCi0gc3RhdGljIHVuc2lnbmVkIGNoYXIgY29udl9hc2NpaTJiaW4odW5zaWduZWQgY2hhciBh LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNo YXIgKnRhYmxlKTsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZXZwX2Vyci5j LmV2cC1rZGYgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9ldnBfZXJyLmMKLS0tLSBvcGVuc3Ns LTEuMS4xai9jcnlwdG8vZXZwL2V2cF9lcnIuYy5ldnAta2RmCTIwMjEtMDMtMDMgMTQ6MDg6MDIu NDY5Mjk0NjUxICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9ldnBfZXJyLmMJ MjAyMS0wMy0wMyAxNDoxMjowOC4yNzIzNTE2MDAgKzAxMDAKLUBAIC02MCw2ICs2MCw5IEBAIHN0 YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEgRVZQX3N0cl9mdW4KLSAgICAge0VSUl9QQUNLKEVS Ul9MSUJfRVZQLCBFVlBfRl9FVlBfRU5DUllQVEZJTkFMX0VYLCAwKSwKLSAgICAgICJFVlBfRW5j cnlwdEZpbmFsX2V4In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0VWUCwgRVZQX0ZfRVZQX0VO Q1JZUFRVUERBVEUsIDApLCAiRVZQX0VuY3J5cHRVcGRhdGUifSwKLSsgICAge0VSUl9QQUNLKEVS Ul9MSUJfRVZQLCBFVlBfRl9FVlBfS0RGX0NUUkwsIDApLCAiRVZQX0tERl9jdHJsIn0sCi0rICAg IHtFUlJfUEFDSyhFUlJfTElCX0VWUCwgRVZQX0ZfRVZQX0tERl9DVFJMX1NUUiwgMCksICJFVlBf S0RGX2N0cmxfc3RyIn0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0VWUCwgRVZQX0ZfRVZQX0tE Rl9DVFhfTkVXX0lELCAwKSwgIkVWUF9LREZfQ1RYX25ld19pZCJ9LAotICAgICB7RVJSX1BBQ0so RVJSX0xJQl9FVlAsIEVWUF9GX0VWUF9NRF9DVFhfQ09QWV9FWCwgMCksICJFVlBfTURfQ1RYX2Nv cHlfZXgifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCBFVlBfRl9FVlBfTURfU0laRSwg MCksICJFVlBfTURfc2l6ZSJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9FVlAsIEVWUF9GX0VW UF9PUEVOSU5JVCwgMCksICJFVlBfT3BlbkluaXQifSwKLUBAIC0xNTEsMTIgKzE1NCwxNCBAQCBz dGF0aWMgY29uc3QgRVJSX1NUUklOR19EQVRBIEVWUF9zdHJfZnVuCi0gICAgICAiUEtDUzVfdjJf UEJLREYyX2tleWl2Z2VuIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0VWUCwgRVZQX0ZfUEtD UzVfVjJfU0NSWVBUX0tFWUlWR0VOLCAwKSwKLSAgICAgICJQS0NTNV92Ml9zY3J5cHRfa2V5aXZn ZW4ifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCBFVlBfRl9QS0VZX0tERl9DVFJMLCAw KSwgInBrZXlfa2RmX2N0cmwifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCBFVlBfRl9Q S0VZX1NFVF9UWVBFLCAwKSwgInBrZXlfc2V0X3R5cGUifSwKLSAgICAge0VSUl9QQUNLKEVSUl9M SUJfRVZQLCBFVlBfRl9SQzJfTUFHSUNfVE9fTUVUSCwgMCksICJyYzJfbWFnaWNfdG9fbWV0aCJ9 LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9FVlAsIEVWUF9GX1JDNV9DVFJMLCAwKSwgInJjNV9j dHJsIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0VWUCwgRVZQX0ZfUl8zMl8xMl8xNl9JTklU X0tFWSwgMCksCi0gICAgICAicl8zMl8xMl8xNl9pbml0X2tleSJ9LAotICAgICB7RVJSX1BBQ0so RVJSX0xJQl9FVlAsIEVWUF9GX1MzOTBYX0FFU19HQ01fQ1RSTCwgMCksICJzMzkweF9hZXNfZ2Nt X2N0cmwifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCBFVlBfRl9TQ1JZUFRfQUxHLCAw KSwgInNjcnlwdF9hbGcifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCBFVlBfRl9VUERB VEUsIDApLCAidXBkYXRlIn0sCi0gICAgIHswLCBOVUxMfQotIH07Ci1AQCAtMjQzLDYgKzI0OCw4 IEBAIHN0YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEgRVZQX3N0cl9yZWEKLSAgICAgIm9wZXJh dG9uIG5vdCBpbml0aWFsaXplZCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9FVlAsIDAsIEVW UF9SX09VVFBVVF9XT1VMRF9PVkVSRkxPVyksCi0gICAgICJvdXRwdXQgd291bGQgb3ZlcmZsb3ci fSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCAwLCBFVlBfUl9QQVJBTUVURVJfVE9PX0xB UkdFKSwKLSsgICAgInBhcmFtZXRlciB0b28gbGFyZ2UifSwKLSAgICAge0VSUl9QQUNLKEVSUl9M SUJfRVZQLCAwLCBFVlBfUl9QQVJUSUFMTFlfT1ZFUkxBUFBJTkcpLAotICAgICAicGFydGlhbGx5 IG92ZXJsYXBwaW5nIGJ1ZmZlcnMifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCAwLCBF VlBfUl9QQktERjJfRVJST1IpLCAicGJrZGYyIGVycm9yIn0sCi1kaWZmIC11cCBvcGVuc3NsLTEu MS4xai9jcnlwdG8vZXZwL2V2cF9sb2NhbC5oLmV2cC1rZGYgb3BlbnNzbC0xLjEuMWovY3J5cHRv L2V2cC9ldnBfbG9jYWwuaAotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZXZwX2xvY2Fs LmguZXZwLWtkZgkyMDIxLTAzLTAzIDE0OjA4OjAyLjM2MjI5MzY5NSArMDEwMAotKysrIG9wZW5z c2wtMS4xLjFqL2NyeXB0by9ldnAvZXZwX2xvY2FsLmgJMjAyMS0wMy0wMyAxNDowODowMi40OTEy OTQ4NDcgKzAxMDAKLUBAIC00MSw2ICs0MSwxMSBAQCBzdHJ1Y3QgZXZwX2NpcGhlcl9jdHhfc3Qg ewotICAgICB1bnNpZ25lZCBjaGFyIGZpbmFsW0VWUF9NQVhfQkxPQ0tfTEVOR1RIXTsgLyogcG9z c2libGUgZmluYWwgYmxvY2sgKi8KLSB9IC8qIEVWUF9DSVBIRVJfQ1RYICovIDsKLSAKLStzdHJ1 Y3QgZXZwX2tkZl9jdHhfc3QgewotKyAgICBjb25zdCBFVlBfS0RGX01FVEhPRCAqa21ldGg7Ci0r ICAgIEVWUF9LREZfSU1QTCAqaW1wbDsgICAgICAgICAgLyogQWxnb3JpdGhtLXNwZWNpZmljIGRh dGEgKi8KLSt9IC8qIEVWUF9LREZfQ1RYICovIDsKLSsKLSBpbnQgUEtDUzVfdjJfUEJLREYyX2tl eWl2Z2VuKEVWUF9DSVBIRVJfQ1RYICpjdHgsIGNvbnN0IGNoYXIgKnBhc3MsCi0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpbnQgcGFzc2xlbiwgQVNOMV9UWVBFICpwYXJhbSwKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVWUF9DSVBIRVIgKmMsIGNvbnN0IEVWUF9N RCAqbWQsCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL2V2cF9wYmUuYy5ldnAt a2RmIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZXZwX3BiZS5jCi0tLS0gb3BlbnNzbC0xLjEu MWovY3J5cHRvL2V2cC9ldnBfcGJlLmMuZXZwLWtkZgkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAw MDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZXZwX3BiZS5jCTIwMjEt MDMtMDMgMTQ6MDg6MDIuNDkxMjk0ODQ3ICswMTAwCi1AQCAtMTIsNiArMTIsNyBAQAotICNpbmNs dWRlIDxvcGVuc3NsL2V2cC5oPgotICNpbmNsdWRlIDxvcGVuc3NsL3BrY3MxMi5oPgotICNpbmNs dWRlIDxvcGVuc3NsL3g1MDkuaD4KLSsjaW5jbHVkZSAiY3J5cHRvL2V2cC5oIgotICNpbmNsdWRl ICJldnBfbG9jYWwuaCIKLSAKLSAvKiBQYXNzd29yZCBiYXNlZCBlbmNyeXB0aW9uIChQQkUpIGZ1 bmN0aW9ucyAqLwotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9rZGZfbGliLmMu ZXZwLWtkZiBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL2tkZl9saWIuYwotLS0tIG9wZW5zc2wt MS4xLjFqL2NyeXB0by9ldnAva2RmX2xpYi5jLmV2cC1rZGYJMjAyMS0wMy0wMyAxNDowODowMi40 OTEyOTQ4NDcgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL2tkZl9saWIuYwky MDIxLTAzLTAzIDE0OjA4OjAyLjQ5MTI5NDg0NyArMDEwMAotQEAgLTAsMCArMSwxNjUgQEAKLSsv KgotKyAqIENvcHlyaWdodCAyMDE4IFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJp Z2h0cyBSZXNlcnZlZC4KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE9yYWNsZSBhbmQvb3IgaXRz IGFmZmlsaWF0ZXMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotKyAqCi0rICogTGljZW5zZWQgdW5k ZXIgdGhlIEFwYWNoZSBMaWNlbnNlIDIuMCAodGhlICJMaWNlbnNlIikuICBZb3UgbWF5IG5vdCB1 c2UKLSsgKiB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4g IFlvdSBjYW4gb2J0YWluIGEgY29weQotKyAqIGluIHRoZSBmaWxlIExJQ0VOU0UgaW4gdGhlIHNv dXJjZSBkaXN0cmlidXRpb24gb3IgYXQKLSsgKiBodHRwczovL3d3dy5vcGVuc3NsLm9yZy9zb3Vy Y2UvbGljZW5zZS5odG1sCi0rICovCi0rCi0rI2luY2x1ZGUgPHN0ZGlvLmg+Ci0rI2luY2x1ZGUg PHN0ZGxpYi5oPgotKyNpbmNsdWRlICJpbnRlcm5hbC9jcnlwdGxpYi5oIgotKyNpbmNsdWRlIDxv cGVuc3NsL2VuZ2luZS5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgotKyNpbmNsdWRlIDxv cGVuc3NsL3g1MDl2My5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2tkZi5oPgotKyNpbmNsdWRlICJj cnlwdG8vYXNuMS5oIgotKyNpbmNsdWRlICJjcnlwdG8vZXZwLmgiCi0rI2luY2x1ZGUgImludGVy bmFsL251bWJlcnMuaCIKLSsjaW5jbHVkZSAiZXZwX2xvY2FsLmgiCi0rCi0rdHlwZWRlZiBpbnQg c2tfY21wX2ZuX3R5cGUoY29uc3QgY2hhciAqY29uc3QgKmEsIGNvbnN0IGNoYXIgKmNvbnN0ICpi KTsKLSsKLSsvKiBUaGlzIGFycmF5IG5lZWRzIHRvIGJlIGluIG9yZGVyIG9mIE5JRHMgKi8KLStz dGF0aWMgY29uc3QgRVZQX0tERl9NRVRIT0QgKnN0YW5kYXJkX21ldGhvZHNbXSA9IHsKLSsgICAg JnBia2RmMl9rZGZfbWV0aCwKLSsjaWZuZGVmIE9QRU5TU0xfTk9fU0NSWVBUCi0rICAgICZzY3J5 cHRfa2RmX21ldGgsCi0rI2VuZGlmCi0rICAgICZ0bHMxX3ByZl9rZGZfbWV0aCwKLSsgICAgJmhr ZGZfa2RmX21ldGgKLSt9OwotKwotK0RFQ0xBUkVfT0JKX0JTRUFSQ0hfQ01QX0ZOKGNvbnN0IEVW UF9LREZfTUVUSE9EICosIGNvbnN0IEVWUF9LREZfTUVUSE9EICosCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICAga21ldGgpOwotKwotK3N0YXRpYyBpbnQga21ldGhfY21wKGNvbnN0IEVWUF9L REZfTUVUSE9EICpjb25zdCAqYSwKLSsgICAgICAgICAgICAgICAgICAgICBjb25zdCBFVlBfS0RG X01FVEhPRCAqY29uc3QgKmIpCi0rewotKyAgICByZXR1cm4gKCgqYSktPnR5cGUgLSAoKmIpLT50 eXBlKTsKLSt9Ci0rCi0rSU1QTEVNRU5UX09CSl9CU0VBUkNIX0NNUF9GTihjb25zdCBFVlBfS0RG X01FVEhPRCAqLCBjb25zdCBFVlBfS0RGX01FVEhPRCAqLAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAga21ldGgpOwotKwotK3N0YXRpYyBjb25zdCBFVlBfS0RGX01FVEhPRCAqa2RmX21l dGhfZmluZChpbnQgdHlwZSkKLSt7Ci0rICAgIEVWUF9LREZfTUVUSE9EIHRtcDsKLSsgICAgY29u c3QgRVZQX0tERl9NRVRIT0QgKnQgPSAmdG1wLCAqKnJldDsKLSsKLSsgICAgdG1wLnR5cGUgPSB0 eXBlOwotKyAgICByZXQgPSBPQkpfYnNlYXJjaF9rbWV0aCgmdCwgc3RhbmRhcmRfbWV0aG9kcywK LSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgT1NTTF9ORUxFTShzdGFuZGFyZF9tZXRob2Rz KSk7Ci0rICAgIGlmIChyZXQgPT0gTlVMTCB8fCAqcmV0ID09IE5VTEwpCi0rICAgICAgICByZXR1 cm4gTlVMTDsKLSsKLSsgICAgcmV0dXJuICpyZXQ7Ci0rfQotKwotK0VWUF9LREZfQ1RYICpFVlBf S0RGX0NUWF9uZXdfaWQoaW50IGlkKQotK3sKLSsgICAgRVZQX0tERl9DVFggKnJldDsKLSsgICAg Y29uc3QgRVZQX0tERl9NRVRIT0QgKmttZXRoOwotKwotKyAgICBrbWV0aCA9IGtkZl9tZXRoX2Zp bmQoaWQpOwotKyAgICBpZiAoa21ldGggPT0gTlVMTCkgewotKyAgICAgICAgRVZQZXJyKEVWUF9G X0VWUF9LREZfQ1RYX05FV19JRCwgRVZQX1JfVU5TVVBQT1JURURfQUxHT1JJVEhNKTsKLSsgICAg ICAgIHJldHVybiBOVUxMOwotKyAgICB9Ci0rCi0rICAgIHJldCA9IE9QRU5TU0xfemFsbG9jKHNp emVvZigqcmV0KSk7Ci0rICAgIGlmIChyZXQgPT0gTlVMTCkgewotKyAgICAgICAgRVZQZXJyKEVW UF9GX0VWUF9LREZfQ1RYX05FV19JRCwgRVJSX1JfTUFMTE9DX0ZBSUxVUkUpOwotKyAgICAgICAg cmV0dXJuIE5VTEw7Ci0rICAgIH0KLSsKLSsgICAgaWYgKGttZXRoLT5uZXcgIT0gTlVMTCAmJiAo cmV0LT5pbXBsID0ga21ldGgtPm5ldygpKSA9PSBOVUxMKSB7Ci0rICAgICAgICBFVlBfS0RGX0NU WF9mcmVlKHJldCk7Ci0rICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAgfQotKwotKyAgICByZXQt PmttZXRoID0ga21ldGg7Ci0rICAgIHJldHVybiByZXQ7Ci0rfQotKwotK3ZvaWQgRVZQX0tERl9D VFhfZnJlZShFVlBfS0RGX0NUWCAqY3R4KQotK3sKLSsgICAgaWYgKGN0eCA9PSBOVUxMKQotKyAg ICAgICAgcmV0dXJuOwotKwotKyAgICBjdHgtPmttZXRoLT5mcmVlKGN0eC0+aW1wbCk7Ci0rICAg IE9QRU5TU0xfZnJlZShjdHgpOwotK30KLSsKLSt2b2lkIEVWUF9LREZfcmVzZXQoRVZQX0tERl9D VFggKmN0eCkKLSt7Ci0rICAgIGlmIChjdHggPT0gTlVMTCkKLSsgICAgICAgIHJldHVybjsKLSsK LSsgICAgaWYgKGN0eC0+a21ldGgtPnJlc2V0ICE9IE5VTEwpCi0rICAgICAgICBjdHgtPmttZXRo LT5yZXNldChjdHgtPmltcGwpOwotK30KLSsKLStpbnQgRVZQX0tERl9jdHJsKEVWUF9LREZfQ1RY ICpjdHgsIGludCBjbWQsIC4uLikKLSt7Ci0rICAgIGludCByZXQ7Ci0rICAgIHZhX2xpc3QgYXJn czsKLSsKLSsgICAgdmFfc3RhcnQoYXJncywgY21kKTsKLSsgICAgcmV0ID0gRVZQX0tERl92Y3Ry bChjdHgsIGNtZCwgYXJncyk7Ci0rICAgIHZhX2VuZChhcmdzKTsKLSsKLSsgICAgaWYgKHJldCA9 PSAtMikKLSsgICAgICAgIEVWUGVycihFVlBfRl9FVlBfS0RGX0NUUkwsIEVWUF9SX0NPTU1BTkRf Tk9UX1NVUFBPUlRFRCk7Ci0rCi0rICAgIHJldHVybiByZXQ7Ci0rfQotKwotK2ludCBFVlBfS0RG X3ZjdHJsKEVWUF9LREZfQ1RYICpjdHgsIGludCBjbWQsIHZhX2xpc3QgYXJncykKLSt7Ci0rICAg IGlmIChjdHggPT0gTlVMTCkKLSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICByZXR1cm4gY3R4 LT5rbWV0aC0+Y3RybChjdHgtPmltcGwsIGNtZCwgYXJncyk7Ci0rfQotKwotK2ludCBFVlBfS0RG X2N0cmxfc3RyKEVWUF9LREZfQ1RYICpjdHgsIGNvbnN0IGNoYXIgKnR5cGUsIGNvbnN0IGNoYXIg KnZhbHVlKQotK3sKLSsgICAgaW50IHJldDsKLSsKLSsgICAgaWYgKGN0eCA9PSBOVUxMKQotKyAg ICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIGlmIChjdHgtPmttZXRoLT5jdHJsX3N0ciA9PSBOVUxM KSB7Ci0rICAgICAgICBFVlBlcnIoRVZQX0ZfRVZQX0tERl9DVFJMX1NUUiwgRVZQX1JfQ09NTUFO RF9OT1RfU1VQUE9SVEVEKTsKLSsgICAgICAgIHJldHVybiAtMjsKLSsgICAgfQotKwotKyAgICBy ZXQgPSBjdHgtPmttZXRoLT5jdHJsX3N0cihjdHgtPmltcGwsIHR5cGUsIHZhbHVlKTsKLSsgICAg aWYgKHJldCA9PSAtMikKLSsgICAgICAgIEVWUGVycihFVlBfRl9FVlBfS0RGX0NUUkxfU1RSLCBF VlBfUl9DT01NQU5EX05PVF9TVVBQT1JURUQpOwotKwotKyAgICByZXR1cm4gcmV0OwotK30KLSsK LStzaXplX3QgRVZQX0tERl9zaXplKEVWUF9LREZfQ1RYICpjdHgpCi0rewotKyAgICBpZiAoY3R4 ID09IE5VTEwpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgaWYgKGN0eC0+a21ldGgtPnNp emUgPT0gTlVMTCkKLSsgICAgICAgIHJldHVybiBTSVpFX01BWDsKLSsKLSsgICAgcmV0dXJuIGN0 eC0+a21ldGgtPnNpemUoY3R4LT5pbXBsKTsKLSt9Ci0rCi0raW50IEVWUF9LREZfZGVyaXZlKEVW UF9LREZfQ1RYICpjdHgsIHVuc2lnbmVkIGNoYXIgKmtleSwgc2l6ZV90IGtleWxlbikKLSt7Ci0r ICAgIGlmIChjdHggPT0gTlVMTCkKLSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICByZXR1cm4g Y3R4LT5rbWV0aC0+ZGVyaXZlKGN0eC0+aW1wbCwga2V5LCBrZXlsZW4pOwotK30KLSsKLWRpZmYg LXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvcDVfY3JwdDIuYy5ldnAta2RmIG9wZW5zc2wt MS4xLjFqL2NyeXB0by9ldnAvcDVfY3JwdDIuYwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9l dnAvcDVfY3JwdDIuYy5ldnAta2RmCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAw Ci0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9wNV9jcnB0Mi5jCTIwMjEtMDMtMDMgMTQ6 MDg6MDIuNDkxMjk0ODQ3ICswMTAwCi1AQCAtMSw1ICsxLDUgQEAKLSAvKgotLSAqIENvcHlyaWdo dCAxOTk5LTIwMTYgVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJlc2Vy dmVkLgotKyAqIENvcHlyaWdodCAxOTk5LTIwMTggVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3Jz LiBBbGwgUmlnaHRzIFJlc2VydmVkLgotICAqCi0gICogTGljZW5zZWQgdW5kZXIgdGhlIE9wZW5T U0wgbGljZW5zZSAodGhlICJMaWNlbnNlIikuICBZb3UgbWF5IG5vdCB1c2UKLSAgKiB0aGlzIGZp bGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gIFlvdSBjYW4gb2J0YWlu IGEgY29weQotQEAgLTEwLDEwNSArMTAsNTEgQEAKLSAjaW5jbHVkZSA8c3RkaW8uaD4KLSAjaW5j bHVkZSA8c3RkbGliLmg+Ci0gI2luY2x1ZGUgImludGVybmFsL2NyeXB0bGliLmgiCi0tIyBpbmNs dWRlIDxvcGVuc3NsL3g1MDkuaD4KLS0jIGluY2x1ZGUgPG9wZW5zc2wvZXZwLmg+Ci0tIyBpbmNs dWRlIDxvcGVuc3NsL2htYWMuaD4KLS0jIGluY2x1ZGUgImV2cF9sb2NhbC5oIgotKyNpbmNsdWRl IDxvcGVuc3NsL3g1MDkuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLSsjaW5jbHVkZSA8 b3BlbnNzbC9rZGYuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9obWFjLmg+Ci0rI2luY2x1ZGUgImNy eXB0by9ldnAuaCIKLSsjaW5jbHVkZSAiZXZwX2xvY2FsLmgiCi0gCi0gLyogc2V0IHRoaXMgdG8g cHJpbnQgb3V0IGluZm8gYWJvdXQgdGhlIGtleWdlbiBhbGdvcml0aG0gKi8KLSAvKiAjZGVmaW5l IE9QRU5TU0xfREVCVUdfUEtDUzVWMiAqLwotIAotLSMgaWZkZWYgT1BFTlNTTF9ERUJVR19QS0NT NVYyCi0rI2lmZGVmIE9QRU5TU0xfREVCVUdfUEtDUzVWMgotIHN0YXRpYyB2b2lkIGhfX2R1bXAo Y29uc3QgdW5zaWduZWQgY2hhciAqcCwgaW50IGxlbik7Ci0tIyBlbmRpZgotLQotLS8qCi0tICog VGhpcyBpcyBhbiBpbXBsZW1lbnRhdGlvbiBvZiBQS0NTIzUgdjIuMCBwYXNzd29yZCBiYXNlZCBl bmNyeXB0aW9uIGtleQotLSAqIGRlcml2YXRpb24gZnVuY3Rpb24gUEJLREYyLiBTSEExIHZlcnNp b24gdmVyaWZpZWQgYWdhaW5zdCB0ZXN0IHZlY3RvcnMKLS0gKiBwb3N0ZWQgYnkgUGV0ZXIgR3V0 bWFubiB0byB0aGUgUEtDUy1UTkcgbWFpbGluZyBsaXN0LgotLSAqLwotKyNlbmRpZgotIAotIGlu dCBQS0NTNV9QQktERjJfSE1BQyhjb25zdCBjaGFyICpwYXNzLCBpbnQgcGFzc2xlbiwKLSAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqc2FsdCwgaW50IHNhbHRsZW4s IGludCBpdGVyLAotICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBFVlBfTUQgKmRpZ2VzdCwg aW50IGtleWxlbiwgdW5zaWduZWQgY2hhciAqb3V0KQotIHsKLSAgICAgY29uc3QgY2hhciAqZW1w dHkgPSAiIjsKLS0gICAgdW5zaWduZWQgY2hhciBkaWd0bXBbRVZQX01BWF9NRF9TSVpFXSwgKnAs IGl0bXBbNF07Ci0tICAgIGludCBjcGxlbiwgaiwgaywgdGtleWxlbiwgbWRsZW47Ci0tICAgIHVu c2lnbmVkIGxvbmcgaSA9IDE7Ci0tICAgIEhNQUNfQ1RYICpoY3R4X3RwbCA9IE5VTEwsICpoY3R4 ID0gTlVMTDsKLS0KLS0gICAgbWRsZW4gPSBFVlBfTURfc2l6ZShkaWdlc3QpOwotLSAgICBpZiAo bWRsZW4gPCAwKQotLSAgICAgICAgcmV0dXJuIDA7Ci0rICAgIGludCBydiA9IDE7Ci0rICAgIEVW UF9LREZfQ1RYICprY3R4OwotIAotLSAgICBoY3R4X3RwbCA9IEhNQUNfQ1RYX25ldygpOwotLSAg ICBpZiAoaGN0eF90cGwgPT0gTlVMTCkKLS0gICAgICAgIHJldHVybiAwOwotLSAgICBwID0gb3V0 OwotLSAgICB0a2V5bGVuID0ga2V5bGVuOwotKyAgICAvKiBLZWVwIGRvY3VtZW50ZWQgYmVoYXZp b3VyLiAqLwotICAgICBpZiAocGFzcyA9PSBOVUxMKSB7Ci0gICAgICAgICBwYXNzID0gZW1wdHk7 Ci0gICAgICAgICBwYXNzbGVuID0gMDsKLSAgICAgfSBlbHNlIGlmIChwYXNzbGVuID09IC0xKSB7 Ci0gICAgICAgICBwYXNzbGVuID0gc3RybGVuKHBhc3MpOwotICAgICB9Ci0tICAgIGlmICghSE1B Q19Jbml0X2V4KGhjdHhfdHBsLCBwYXNzLCBwYXNzbGVuLCBkaWdlc3QsIE5VTEwpKSB7Ci0tICAg ICAgICBITUFDX0NUWF9mcmVlKGhjdHhfdHBsKTsKLS0gICAgICAgIHJldHVybiAwOwotLSAgICB9 Ci0tICAgIGhjdHggPSBITUFDX0NUWF9uZXcoKTsKLS0gICAgaWYgKGhjdHggPT0gTlVMTCkgewot LSAgICAgICAgSE1BQ19DVFhfZnJlZShoY3R4X3RwbCk7Ci0rICAgIGlmIChzYWx0ID09IE5VTEwg JiYgc2FsdGxlbiA9PSAwKQotKyAgICAgICAgc2FsdCA9ICh1bnNpZ25lZCBjaGFyICopZW1wdHk7 Ci0rCi0rICAgIGtjdHggPSBFVlBfS0RGX0NUWF9uZXdfaWQoRVZQX0tERl9QQktERjIpOwotKyAg ICBpZiAoa2N0eCA9PSBOVUxMKQotICAgICAgICAgcmV0dXJuIDA7Ci0tICAgIH0KLS0gICAgd2hp bGUgKHRrZXlsZW4pIHsKLS0gICAgICAgIGlmICh0a2V5bGVuID4gbWRsZW4pCi0tICAgICAgICAg ICAgY3BsZW4gPSBtZGxlbjsKLS0gICAgICAgIGVsc2UKLS0gICAgICAgICAgICBjcGxlbiA9IHRr ZXlsZW47Ci0tICAgICAgICAvKgotLSAgICAgICAgICogV2UgYXJlIHVubGlrZWx5IHRvIGV2ZXIg dXNlIG1vcmUgdGhhbiAyNTYgYmxvY2tzICg1MTIwIGJpdHMhKSBidXQKLS0gICAgICAgICAqIGp1 c3QgaW4gY2FzZS4uLgotLSAgICAgICAgICovCi0tICAgICAgICBpdG1wWzBdID0gKHVuc2lnbmVk IGNoYXIpKChpID4+IDI0KSAmIDB4ZmYpOwotLSAgICAgICAgaXRtcFsxXSA9ICh1bnNpZ25lZCBj aGFyKSgoaSA+PiAxNikgJiAweGZmKTsKLS0gICAgICAgIGl0bXBbMl0gPSAodW5zaWduZWQgY2hh cikoKGkgPj4gOCkgJiAweGZmKTsKLS0gICAgICAgIGl0bXBbM10gPSAodW5zaWduZWQgY2hhciko aSAmIDB4ZmYpOwotLSAgICAgICAgaWYgKCFITUFDX0NUWF9jb3B5KGhjdHgsIGhjdHhfdHBsKSkg ewotLSAgICAgICAgICAgIEhNQUNfQ1RYX2ZyZWUoaGN0eCk7Ci0tICAgICAgICAgICAgSE1BQ19D VFhfZnJlZShoY3R4X3RwbCk7Ci0tICAgICAgICAgICAgcmV0dXJuIDA7Ci0tICAgICAgICB9Ci0t ICAgICAgICBpZiAoIUhNQUNfVXBkYXRlKGhjdHgsIHNhbHQsIHNhbHRsZW4pCi0tICAgICAgICAg ICAgfHwgIUhNQUNfVXBkYXRlKGhjdHgsIGl0bXAsIDQpCi0tICAgICAgICAgICAgfHwgIUhNQUNf RmluYWwoaGN0eCwgZGlndG1wLCBOVUxMKSkgewotLSAgICAgICAgICAgIEhNQUNfQ1RYX2ZyZWUo aGN0eCk7Ci0tICAgICAgICAgICAgSE1BQ19DVFhfZnJlZShoY3R4X3RwbCk7Ci0tICAgICAgICAg ICAgcmV0dXJuIDA7Ci0tICAgICAgICB9Ci0tICAgICAgICBtZW1jcHkocCwgZGlndG1wLCBjcGxl bik7Ci0tICAgICAgICBmb3IgKGogPSAxOyBqIDwgaXRlcjsgaisrKSB7Ci0tICAgICAgICAgICAg aWYgKCFITUFDX0NUWF9jb3B5KGhjdHgsIGhjdHhfdHBsKSkgewotLSAgICAgICAgICAgICAgICBI TUFDX0NUWF9mcmVlKGhjdHgpOwotLSAgICAgICAgICAgICAgICBITUFDX0NUWF9mcmVlKGhjdHhf dHBsKTsKLS0gICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0tICAgICAgICAgICAgfQotLSAgICAg ICAgICAgIGlmICghSE1BQ19VcGRhdGUoaGN0eCwgZGlndG1wLCBtZGxlbikKLS0gICAgICAgICAg ICAgICAgfHwgIUhNQUNfRmluYWwoaGN0eCwgZGlndG1wLCBOVUxMKSkgewotLSAgICAgICAgICAg ICAgICBITUFDX0NUWF9mcmVlKGhjdHgpOwotLSAgICAgICAgICAgICAgICBITUFDX0NUWF9mcmVl KGhjdHhfdHBsKTsKLS0gICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0tICAgICAgICAgICAgfQot LSAgICAgICAgICAgIGZvciAoayA9IDA7IGsgPCBjcGxlbjsgaysrKQotLSAgICAgICAgICAgICAg ICBwW2tdIF49IGRpZ3RtcFtrXTsKLS0gICAgICAgIH0KLS0gICAgICAgIHRrZXlsZW4gLT0gY3Bs ZW47Ci0tICAgICAgICBpKys7Ci0tICAgICAgICBwICs9IGNwbGVuOwotLSAgICB9Ci0tICAgIEhN QUNfQ1RYX2ZyZWUoaGN0eCk7Ci0tICAgIEhNQUNfQ1RYX2ZyZWUoaGN0eF90cGwpOwotKyAgICBp ZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfUEFTUywgcGFzcywgKHNpemVf dClwYXNzbGVuKSAhPSAxCi0rICAgICAgICAgICAgfHwgRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9L REZfQ1RSTF9TRVRfU0FMVCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FsdCwgKHNp emVfdClzYWx0bGVuKSAhPSAxCi0rICAgICAgICAgICAgfHwgRVZQX0tERl9jdHJsKGtjdHgsIEVW UF9LREZfQ1RSTF9TRVRfSVRFUiwgaXRlcikgIT0gMQotKyAgICAgICAgICAgIHx8IEVWUF9LREZf Y3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX01ELCBkaWdlc3QpICE9IDEKLSsgICAgICAgICAg ICB8fCBFVlBfS0RGX2Rlcml2ZShrY3R4LCBvdXQsIGtleWxlbikgIT0gMSkKLSsgICAgICAgIHJ2 ID0gMDsKLSsKLSsgICAgRVZQX0tERl9DVFhfZnJlZShrY3R4KTsKLSsKLSAjIGlmZGVmIE9QRU5T U0xfREVCVUdfUEtDUzVWMgotICAgICBmcHJpbnRmKHN0ZGVyciwgIlBhc3N3b3JkOlxuIik7Ci0g ICAgIGhfX2R1bXAocGFzcywgcGFzc2xlbik7Ci1AQCAtMTE4LDcgKzY0LDcgQEAgaW50IFBLQ1M1 X1BCS0RGMl9ITUFDKGNvbnN0IGNoYXIgKnBhc3MsCi0gICAgIGZwcmludGYoc3RkZXJyLCAiS2V5 OlxuIik7Ci0gICAgIGhfX2R1bXAob3V0LCBrZXlsZW4pOwotICMgZW5kaWYKLS0gICAgcmV0dXJu IDE7Ci0rICAgIHJldHVybiBydjsKLSB9Ci0gCi0gaW50IFBLQ1M1X1BCS0RGMl9ITUFDX1NIQTEo Y29uc3QgY2hhciAqcGFzcywgaW50IHBhc3NsZW4sCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9j cnlwdG8vZXZwL3BiZV9zY3J5cHQuYy5ldnAta2RmIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAv cGJlX3NjcnlwdC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9wYmVfc2NyeXB0LmMu ZXZwLWtkZgkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wt MS4xLjFqL2NyeXB0by9ldnAvcGJlX3NjcnlwdC5jCTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDkxMjk0 ODQ3ICswMTAwCi1AQCAtNywxMzUgKzcsMTIgQEAKLSAgKiBodHRwczovL3d3dy5vcGVuc3NsLm9y Zy9zb3VyY2UvbGljZW5zZS5odG1sCi0gICovCi0gCi0tI2luY2x1ZGUgPHN0ZGRlZi5oPgotLSNp bmNsdWRlIDxzdGRpby5oPgotLSNpbmNsdWRlIDxzdHJpbmcuaD4KLSAjaW5jbHVkZSA8b3BlbnNz bC9ldnAuaD4KLSAjaW5jbHVkZSA8b3BlbnNzbC9lcnIuaD4KLS0jaW5jbHVkZSAiaW50ZXJuYWwv bnVtYmVycy5oIgotKyNpbmNsdWRlIDxvcGVuc3NsL2tkZi5oPgotIAotICNpZm5kZWYgT1BFTlNT TF9OT19TQ1JZUFQKLSAKLS0jZGVmaW5lIFIoYSxiKSAoKChhKSA8PCAoYikpIHwgKChhKSA+PiAo MzIgLSAoYikpKSkKLS1zdGF0aWMgdm9pZCBzYWxzYTIwOF93b3JkX3NwZWNpZmljYXRpb24odWlu dDMyX3QgaW5vdXRbMTZdKQotLXsKLS0gICAgaW50IGk7Ci0tICAgIHVpbnQzMl90IHhbMTZdOwot LSAgICBtZW1jcHkoeCwgaW5vdXQsIHNpemVvZih4KSk7Ci0tICAgIGZvciAoaSA9IDg7IGkgPiAw OyBpIC09IDIpIHsKLS0gICAgICAgIHhbNF0gXj0gUih4WzBdICsgeFsxMl0sIDcpOwotLSAgICAg ICAgeFs4XSBePSBSKHhbNF0gKyB4WzBdLCA5KTsKLS0gICAgICAgIHhbMTJdIF49IFIoeFs4XSAr IHhbNF0sIDEzKTsKLS0gICAgICAgIHhbMF0gXj0gUih4WzEyXSArIHhbOF0sIDE4KTsKLS0gICAg ICAgIHhbOV0gXj0gUih4WzVdICsgeFsxXSwgNyk7Ci0tICAgICAgICB4WzEzXSBePSBSKHhbOV0g KyB4WzVdLCA5KTsKLS0gICAgICAgIHhbMV0gXj0gUih4WzEzXSArIHhbOV0sIDEzKTsKLS0gICAg ICAgIHhbNV0gXj0gUih4WzFdICsgeFsxM10sIDE4KTsKLS0gICAgICAgIHhbMTRdIF49IFIoeFsx MF0gKyB4WzZdLCA3KTsKLS0gICAgICAgIHhbMl0gXj0gUih4WzE0XSArIHhbMTBdLCA5KTsKLS0g ICAgICAgIHhbNl0gXj0gUih4WzJdICsgeFsxNF0sIDEzKTsKLS0gICAgICAgIHhbMTBdIF49IFIo eFs2XSArIHhbMl0sIDE4KTsKLS0gICAgICAgIHhbM10gXj0gUih4WzE1XSArIHhbMTFdLCA3KTsK LS0gICAgICAgIHhbN10gXj0gUih4WzNdICsgeFsxNV0sIDkpOwotLSAgICAgICAgeFsxMV0gXj0g Uih4WzddICsgeFszXSwgMTMpOwotLSAgICAgICAgeFsxNV0gXj0gUih4WzExXSArIHhbN10sIDE4 KTsKLS0gICAgICAgIHhbMV0gXj0gUih4WzBdICsgeFszXSwgNyk7Ci0tICAgICAgICB4WzJdIF49 IFIoeFsxXSArIHhbMF0sIDkpOwotLSAgICAgICAgeFszXSBePSBSKHhbMl0gKyB4WzFdLCAxMyk7 Ci0tICAgICAgICB4WzBdIF49IFIoeFszXSArIHhbMl0sIDE4KTsKLS0gICAgICAgIHhbNl0gXj0g Uih4WzVdICsgeFs0XSwgNyk7Ci0tICAgICAgICB4WzddIF49IFIoeFs2XSArIHhbNV0sIDkpOwot LSAgICAgICAgeFs0XSBePSBSKHhbN10gKyB4WzZdLCAxMyk7Ci0tICAgICAgICB4WzVdIF49IFIo eFs0XSArIHhbN10sIDE4KTsKLS0gICAgICAgIHhbMTFdIF49IFIoeFsxMF0gKyB4WzldLCA3KTsK LS0gICAgICAgIHhbOF0gXj0gUih4WzExXSArIHhbMTBdLCA5KTsKLS0gICAgICAgIHhbOV0gXj0g Uih4WzhdICsgeFsxMV0sIDEzKTsKLS0gICAgICAgIHhbMTBdIF49IFIoeFs5XSArIHhbOF0sIDE4 KTsKLS0gICAgICAgIHhbMTJdIF49IFIoeFsxNV0gKyB4WzE0XSwgNyk7Ci0tICAgICAgICB4WzEz XSBePSBSKHhbMTJdICsgeFsxNV0sIDkpOwotLSAgICAgICAgeFsxNF0gXj0gUih4WzEzXSArIHhb MTJdLCAxMyk7Ci0tICAgICAgICB4WzE1XSBePSBSKHhbMTRdICsgeFsxM10sIDE4KTsKLS0gICAg fQotLSAgICBmb3IgKGkgPSAwOyBpIDwgMTY7ICsraSkKLS0gICAgICAgIGlub3V0W2ldICs9IHhb aV07Ci0tICAgIE9QRU5TU0xfY2xlYW5zZSh4LCBzaXplb2YoeCkpOwotLX0KLS0KLS1zdGF0aWMg dm9pZCBzY3J5cHRCbG9ja01peCh1aW50MzJfdCAqQl8sIHVpbnQzMl90ICpCLCB1aW50NjRfdCBy KQotLXsKLS0gICAgdWludDY0X3QgaSwgajsKLS0gICAgdWludDMyX3QgWFsxNl0sICpwQjsKLS0K LS0gICAgbWVtY3B5KFgsIEIgKyAociAqIDIgLSAxKSAqIDE2LCBzaXplb2YoWCkpOwotLSAgICBw QiA9IEI7Ci0tICAgIGZvciAoaSA9IDA7IGkgPCByICogMjsgaSsrKSB7Ci0tICAgICAgICBmb3Ig KGogPSAwOyBqIDwgMTY7IGorKykKLS0gICAgICAgICAgICBYW2pdIF49ICpwQisrOwotLSAgICAg ICAgc2Fsc2EyMDhfd29yZF9zcGVjaWZpY2F0aW9uKFgpOwotLSAgICAgICAgbWVtY3B5KEJfICsg KGkgLyAyICsgKGkgJiAxKSAqIHIpICogMTYsIFgsIHNpemVvZihYKSk7Ci0tICAgIH0KLS0gICAg T1BFTlNTTF9jbGVhbnNlKFgsIHNpemVvZihYKSk7Ci0tfQotLQotLXN0YXRpYyB2b2lkIHNjcnlw dFJPTWl4KHVuc2lnbmVkIGNoYXIgKkIsIHVpbnQ2NF90IHIsIHVpbnQ2NF90IE4sCi0tICAgICAg ICAgICAgICAgICAgICAgICAgdWludDMyX3QgKlgsIHVpbnQzMl90ICpULCB1aW50MzJfdCAqVikK LS17Ci0tICAgIHVuc2lnbmVkIGNoYXIgKnBCOwotLSAgICB1aW50MzJfdCAqcFY7Ci0tICAgIHVp bnQ2NF90IGksIGs7Ci0tCi0tICAgIC8qIENvbnZlcnQgZnJvbSBsaXR0bGUgZW5kaWFuIGlucHV0 ICovCi0tICAgIGZvciAocFYgPSBWLCBpID0gMCwgcEIgPSBCOyBpIDwgMzIgKiByOyBpKyssIHBW KyspIHsKLS0gICAgICAgICpwViA9ICpwQisrOwotLSAgICAgICAgKnBWIHw9ICpwQisrIDw8IDg7 Ci0tICAgICAgICAqcFYgfD0gKnBCKysgPDwgMTY7Ci0tICAgICAgICAqcFYgfD0gKHVpbnQzMl90 KSpwQisrIDw8IDI0OwotLSAgICB9Ci0tCi0tICAgIGZvciAoaSA9IDE7IGkgPCBOOyBpKyssIHBW ICs9IDMyICogcikKLS0gICAgICAgIHNjcnlwdEJsb2NrTWl4KHBWLCBwViAtIDMyICogciwgcik7 Ci0tCi0tICAgIHNjcnlwdEJsb2NrTWl4KFgsIFYgKyAoTiAtIDEpICogMzIgKiByLCByKTsKLS0K LS0gICAgZm9yIChpID0gMDsgaSA8IE47IGkrKykgewotLSAgICAgICAgdWludDMyX3QgajsKLS0g ICAgICAgIGogPSBYWzE2ICogKDIgKiByIC0gMSldICUgTjsKLS0gICAgICAgIHBWID0gViArIDMy ICogciAqIGo7Ci0tICAgICAgICBmb3IgKGsgPSAwOyBrIDwgMzIgKiByOyBrKyspCi0tICAgICAg ICAgICAgVFtrXSA9IFhba10gXiAqcFYrKzsKLS0gICAgICAgIHNjcnlwdEJsb2NrTWl4KFgsIFQs IHIpOwotLSAgICB9Ci0tICAgIC8qIENvbnZlcnQgb3V0cHV0IHRvIGxpdHRsZSBlbmRpYW4gKi8K LS0gICAgZm9yIChpID0gMCwgcEIgPSBCOyBpIDwgMzIgKiByOyBpKyspIHsKLS0gICAgICAgIHVp bnQzMl90IHh0bXAgPSBYW2ldOwotLSAgICAgICAgKnBCKysgPSB4dG1wICYgMHhmZjsKLS0gICAg ICAgICpwQisrID0gKHh0bXAgPj4gOCkgJiAweGZmOwotLSAgICAgICAgKnBCKysgPSAoeHRtcCA+ PiAxNikgJiAweGZmOwotLSAgICAgICAgKnBCKysgPSAoeHRtcCA+PiAyNCkgJiAweGZmOwotLSAg ICB9Ci0tfQotLQotLSNpZm5kZWYgU0laRV9NQVgKLS0jIGRlZmluZSBTSVpFX01BWCAgICAoKHNp emVfdCktMSkKLS0jZW5kaWYKLS0KLS0vKgotLSAqIE1heGltdW0gcG93ZXIgb2YgdHdvIHRoYXQg d2lsbCBmaXQgaW4gdWludDY0X3Q6IHRoaXMgc2hvdWxkIHdvcmsgb24KLS0gKiBtb3N0IChhbGw/ KSBwbGF0Zm9ybXMuCi0tICovCi0tCi0tI2RlZmluZSBMT0cyX1VJTlQ2NF9NQVggICAgICAgICAo c2l6ZW9mKHVpbnQ2NF90KSAqIDggLSAxKQotLQotLS8qCi0tICogTWF4aW11bSB2YWx1ZSBvZiBw ICogcjoKLS0gKiBwIDw9ICgoMl4zMi0xKSAqIGhMZW4pIC8gTUZMZW4gPT4KLS0gKiBwIDw9ICgo Ml4zMi0xKSAqIDMyKSAvICgxMjggKiByKSA9PgotLSAqIHAgKiByIDw9ICgyXjMwLTEpCi0tICoK LS0gKi8KLS0KLS0jZGVmaW5lIFNDUllQVF9QUl9NQVggICAoKDEgPDwgMzApIC0gMSkKLS0KLSAv KgotICAqIE1heGltdW0gcGVybWl0dGVkIG1lbW9yeSBhbGxvdyB0aGlzIHRvIGJlIG92ZXJyaWRk ZW4gd2l0aCBDb25maWd1cmF0aW9uCi0gICogb3B0aW9uOiBlLmcuIC1EU0NSWVBUX01BWF9NRU09 MCBmb3IgbWF4aW11bSBwb3NzaWJsZS4KLUBAIC0xNjAsMTA3ICszNyw0MyBAQCBpbnQgRVZQX1BC RV9zY3J5cHQoY29uc3QgY2hhciAqcGFzcywgc2l6Ci0gICAgICAgICAgICAgICAgICAgIHVpbnQ2 NF90IE4sIHVpbnQ2NF90IHIsIHVpbnQ2NF90IHAsIHVpbnQ2NF90IG1heG1lbSwKLSAgICAgICAg ICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqa2V5LCBzaXplX3Qga2V5bGVuKQotIHsKLS0gICAg aW50IHJ2ID0gMDsKLS0gICAgdW5zaWduZWQgY2hhciAqQjsKLS0gICAgdWludDMyX3QgKlgsICpW LCAqVDsKLS0gICAgdWludDY0X3QgaSwgQmxlbiwgVmxlbjsKLS0KLS0gICAgLyogU2FuaXR5IGNo ZWNrIHBhcmFtZXRlcnMgKi8KLS0gICAgLyogaW5pdGlhbCBjaGVjaywgcixwIG11c3QgYmUgbm9u IHplcm8sIE4gPj0gMiBhbmQgYSBwb3dlciBvZiAyICovCi0tICAgIGlmIChyID09IDAgfHwgcCA9 PSAwIHx8IE4gPCAyIHx8IChOICYgKE4gLSAxKSkpCi0tICAgICAgICByZXR1cm4gMDsKLS0gICAg LyogQ2hlY2sgcCAqIHIgPCBTQ1JZUFRfUFJfTUFYIGF2b2lkaW5nIG92ZXJmbG93ICovCi0tICAg IGlmIChwID4gU0NSWVBUX1BSX01BWCAvIHIpIHsKLS0gICAgICAgIEVWUGVycihFVlBfRl9FVlBf UEJFX1NDUllQVCwgRVZQX1JfTUVNT1JZX0xJTUlUX0VYQ0VFREVEKTsKLS0gICAgICAgIHJldHVy biAwOwotLSAgICB9Ci0tCi0tICAgIC8qCi0tICAgICAqIE5lZWQgdG8gY2hlY2sgTjogaWYgMl4o MTI4ICogciAvIDgpIG92ZXJmbG93cyBsaW1pdCB0aGlzIGlzCi0tICAgICAqIGF1dG9tYXRpY2Fs bHkgc2F0aXNmaWVkIHNpbmNlIE4gPD0gVUlOVDY0X01BWC4KLS0gICAgICovCi0tCi0tICAgIGlm ICgxNiAqIHIgPD0gTE9HMl9VSU5UNjRfTUFYKSB7Ci0tICAgICAgICBpZiAoTiA+PSAoKCh1aW50 NjRfdCkxKSA8PCAoMTYgKiByKSkpIHsKLS0gICAgICAgICAgICBFVlBlcnIoRVZQX0ZfRVZQX1BC RV9TQ1JZUFQsIEVWUF9SX01FTU9SWV9MSU1JVF9FWENFRURFRCk7Ci0tICAgICAgICAgICAgcmV0 dXJuIDA7Ci0tICAgICAgICB9Ci0tICAgIH0KLSsgICAgY29uc3QgY2hhciAqZW1wdHkgPSAiIjsK LSsgICAgaW50IHJ2ID0gMTsKLSsgICAgRVZQX0tERl9DVFggKmtjdHg7Ci0gCi0tICAgIC8qIE1l bW9yeSBjaGVja3M6IGNoZWNrIHRvdGFsIGFsbG9jYXRlZCBidWZmZXIgc2l6ZSBmaXRzIGluIHVp bnQ2NF90ICovCi0tCi0tICAgIC8qCi0tICAgICAqIEIgc2l6ZSBpbiBzZWN0aW9uIDUgc3RlcCAx LlMKLS0gICAgICogTm90ZTogd2Uga25vdyBwICogMTI4ICogciA8IFVJTlQ2NF9NQVggYmVjYXVz ZSB3ZSBhbHJlYWR5IGNoZWNrZWQKLS0gICAgICogcCAqIHIgPCBTQ1JZUFRfUFJfTUFYCi0tICAg ICAqLwotLSAgICBCbGVuID0gcCAqIDEyOCAqIHI7Ci0tICAgIC8qCi0tICAgICAqIFlldCB3ZSBw YXNzIGl0IGFzIGludGVnZXIgdG8gUEtDUzVfUEJLREYyX0hNQUMuLi4gW1RoaXMgd291bGQKLS0g ICAgICogaGF2ZSB0byBiZSByZXZpc2VkIHdoZW4vaWYgUEtDUzVfUEJLREYyX0hNQUMgYWNjZXB0 cyBzaXplX3QuXQotLSAgICAgKi8KLS0gICAgaWYgKEJsZW4gPiBJTlRfTUFYKSB7Ci0tICAgICAg ICBFVlBlcnIoRVZQX0ZfRVZQX1BCRV9TQ1JZUFQsIEVWUF9SX01FTU9SWV9MSU1JVF9FWENFRURF RCk7Ci0rICAgIGlmIChyID4gVUlOVDMyX01BWCB8fCBwID4gVUlOVDMyX01BWCkgewotKyAgICAg ICAgRVZQZXJyKEVWUF9GX0VWUF9QQkVfU0NSWVBULCBFVlBfUl9QQVJBTUVURVJfVE9PX0xBUkdF KTsKLSAgICAgICAgIHJldHVybiAwOwotICAgICB9Ci0gCi0tICAgIC8qCi0tICAgICAqIENoZWNr IDMyICogciAqIChOICsgMikgKiBzaXplb2YodWludDMyX3QpIGZpdHMgaW4gdWludDY0X3QKLS0g ICAgICogVGhpcyBpcyBjb21iaW5lZCBzaXplIFYsIFggYW5kIFQgKHNlY3Rpb24gNCkKLS0gICAg ICovCi0tICAgIGkgPSBVSU5UNjRfTUFYIC8gKDMyICogc2l6ZW9mKHVpbnQzMl90KSk7Ci0tICAg IGlmIChOICsgMiA+IGkgLyByKSB7Ci0tICAgICAgICBFVlBlcnIoRVZQX0ZfRVZQX1BCRV9TQ1JZ UFQsIEVWUF9SX01FTU9SWV9MSU1JVF9FWENFRURFRCk7Ci0tICAgICAgICByZXR1cm4gMDsKLSsg ICAgLyogTWFpbnRhaW4gZXhpc3RpbmcgYmVoYXZpb3VyLiAqLwotKyAgICBpZiAocGFzcyA9PSBO VUxMKSB7Ci0rICAgICAgICBwYXNzID0gZW1wdHk7Ci0rICAgICAgICBwYXNzbGVuID0gMDsKLSAg ICAgfQotLSAgICBWbGVuID0gMzIgKiByICogKE4gKyAyKSAqIHNpemVvZih1aW50MzJfdCk7Ci0t Ci0tICAgIC8qIGNoZWNrIHRvdGFsIGFsbG9jYXRlZCBzaXplIGZpdHMgaW4gdWludDY0X3QgKi8K LS0gICAgaWYgKEJsZW4gPiBVSU5UNjRfTUFYIC0gVmxlbikgewotLSAgICAgICAgRVZQZXJyKEVW UF9GX0VWUF9QQkVfU0NSWVBULCBFVlBfUl9NRU1PUllfTElNSVRfRVhDRUVERUQpOwotLSAgICAg ICAgcmV0dXJuIDA7Ci0rICAgIGlmIChzYWx0ID09IE5VTEwpIHsKLSsgICAgICAgIHNhbHQgPSAo Y29uc3QgdW5zaWduZWQgY2hhciAqKWVtcHR5OwotKyAgICAgICAgc2FsdGxlbiA9IDA7Ci0gICAg IH0KLS0KLSAgICAgaWYgKG1heG1lbSA9PSAwKQotICAgICAgICAgbWF4bWVtID0gU0NSWVBUX01B WF9NRU07Ci0gCi0tICAgIC8qIENoZWNrIHRoYXQgdGhlIG1heGltdW0gbWVtb3J5IGRvZXNuJ3Qg ZXhjZWVkIGEgc2l6ZV90IGxpbWl0cyAqLwotLSAgICBpZiAobWF4bWVtID4gU0laRV9NQVgpCi0t ICAgICAgICBtYXhtZW0gPSBTSVpFX01BWDsKLS0KLS0gICAgaWYgKEJsZW4gKyBWbGVuID4gbWF4 bWVtKSB7Ci0tICAgICAgICBFVlBlcnIoRVZQX0ZfRVZQX1BCRV9TQ1JZUFQsIEVWUF9SX01FTU9S WV9MSU1JVF9FWENFRURFRCk7Ci0rICAgIGtjdHggPSBFVlBfS0RGX0NUWF9uZXdfaWQoRVZQX0tE Rl9TQ1JZUFQpOwotKyAgICBpZiAoa2N0eCA9PSBOVUxMKQotICAgICAgICAgcmV0dXJuIDA7Ci0t ICAgIH0KLSAKLS0gICAgLyogSWYgbm8ga2V5IHJldHVybiB0byBpbmRpY2F0ZSBwYXJhbWV0ZXJz IGFyZSBPSyAqLwotLSAgICBpZiAoa2V5ID09IE5VTEwpCi0tICAgICAgICByZXR1cm4gMTsKLS0K LS0gICAgQiA9IE9QRU5TU0xfbWFsbG9jKChzaXplX3QpKEJsZW4gKyBWbGVuKSk7Ci0tICAgIGlm IChCID09IE5VTEwpIHsKLS0gICAgICAgIEVWUGVycihFVlBfRl9FVlBfUEJFX1NDUllQVCwgRVJS X1JfTUFMTE9DX0ZBSUxVUkUpOwotLSAgICAgICAgcmV0dXJuIDA7Ci0tICAgIH0KLS0gICAgWCA9 ICh1aW50MzJfdCAqKShCICsgQmxlbik7Ci0tICAgIFQgPSBYICsgMzIgKiByOwotLSAgICBWID0g VCArIDMyICogcjsKLS0gICAgaWYgKFBLQ1M1X1BCS0RGMl9ITUFDKHBhc3MsIHBhc3NsZW4sIHNh bHQsIHNhbHRsZW4sIDEsIEVWUF9zaGEyNTYoKSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAg IChpbnQpQmxlbiwgQikgPT0gMCkKLS0gICAgICAgIGdvdG8gZXJyOwotLQotLSAgICBmb3IgKGkg PSAwOyBpIDwgcDsgaSsrKQotLSAgICAgICAgc2NyeXB0Uk9NaXgoQiArIDEyOCAqIHIgKiBpLCBy LCBOLCBYLCBULCBWKTsKLS0KLS0gICAgaWYgKFBLQ1M1X1BCS0RGMl9ITUFDKHBhc3MsIHBhc3Ns ZW4sIEIsIChpbnQpQmxlbiwgMSwgRVZQX3NoYTI1NigpLAotLSAgICAgICAgICAgICAgICAgICAg ICAgICAga2V5bGVuLCBrZXkpID09IDApCi0tICAgICAgICBnb3RvIGVycjsKLS0gICAgcnYgPSAx OwotLSBlcnI6Ci0tICAgIGlmIChydiA9PSAwKQotLSAgICAgICAgRVZQZXJyKEVWUF9GX0VWUF9Q QkVfU0NSWVBULCBFVlBfUl9QQktERjJfRVJST1IpOwotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtj dHgsIEVWUF9LREZfQ1RSTF9TRVRfUEFTUywgcGFzcywgKHNpemVfdClwYXNzbGVuKSAhPSAxCi0r ICAgICAgICAgICAgfHwgRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfU0FMVCwK LSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FsdCwgKHNpemVfdClzYWx0bGVuKSAhPSAx Ci0rICAgICAgICAgICAgfHwgRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfU0NS WVBUX04sIE4pICE9IDEKLSsgICAgICAgICAgICB8fCBFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tE Rl9DVFJMX1NFVF9TQ1JZUFRfUiwgKHVpbnQzMl90KXIpICE9IDEKLSsgICAgICAgICAgICB8fCBF VlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfUCwgKHVpbnQzMl90KXAp ICE9IDEKLSsgICAgICAgICAgICB8fCBFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NF VF9NQVhNRU1fQllURVMsIG1heG1lbSkgIT0gMQotKyAgICAgICAgICAgIHx8IEVWUF9LREZfZGVy aXZlKGtjdHgsIGtleSwga2V5bGVuKSAhPSAxKQotKyAgICAgICAgcnYgPSAwOwotIAotLSAgICBP UEVOU1NMX2NsZWFyX2ZyZWUoQiwgKHNpemVfdCkoQmxlbiArIFZsZW4pKTsKLSsgICAgRVZQX0tE Rl9DVFhfZnJlZShrY3R4KTsKLSAgICAgcmV0dXJuIHJ2OwotIH0KLSsKLSAjZW5kaWYKLWRpZmYg LXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvcGtleV9rZGYuYy5ldnAta2RmIG9wZW5zc2wt MS4xLjFqL2NyeXB0by9ldnAvcGtleV9rZGYuYwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9l dnAvcGtleV9rZGYuYy5ldnAta2RmCTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDkxMjk0ODQ3ICswMTAw Ci0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9wa2V5X2tkZi5jCTIwMjEtMDMtMDMgMTQ6 MDg6MDIuNDkxMjk0ODQ3ICswMTAwCi1AQCAtMCwwICsxLDI1NSBAQAotKy8qCi0rICogQ29weXJp Z2h0IDIwMTggVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVk LgotKyAqIENvcHlyaWdodCAoYykgMjAxOCwgT3JhY2xlIGFuZC9vciBpdHMgYWZmaWxpYXRlcy4g IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0rICoKLSsgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hl IExpY2Vuc2UgMi4wICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBtYXkgbm90IHVzZQotKyAqIHRoaXMg ZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiAgWW91IGNhbiBvYnRh aW4gYSBjb3B5Ci0rICogaW4gdGhlIGZpbGUgTElDRU5TRSBpbiB0aGUgc291cmNlIGRpc3RyaWJ1 dGlvbiBvciBhdAotKyAqIGh0dHBzOi8vd3d3Lm9wZW5zc2wub3JnL3NvdXJjZS9saWNlbnNlLmh0 bWwKLSsgKi8KLSsKLSsjaW5jbHVkZSA8c3RyaW5nLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZXZw Lmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZXJyLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wva2RmLmg+ Ci0rI2luY2x1ZGUgImNyeXB0by9ldnAuaCIKLSsKLStzdGF0aWMgaW50IHBrZXlfa2RmX2luaXQo RVZQX1BLRVlfQ1RYICpjdHgpCi0rewotKyAgICBFVlBfS0RGX0NUWCAqa2N0eDsKLSsKLSsgICAg a2N0eCA9IEVWUF9LREZfQ1RYX25ld19pZChjdHgtPnBtZXRoLT5wa2V5X2lkKTsKLSsgICAgaWYg KGtjdHggPT0gTlVMTCkKLSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICBjdHgtPmRhdGEgPSBr Y3R4OwotKyAgICByZXR1cm4gMTsKLSt9Ci0rCi0rc3RhdGljIHZvaWQgcGtleV9rZGZfY2xlYW51 cChFVlBfUEtFWV9DVFggKmN0eCkKLSt7Ci0rICAgIEVWUF9LREZfQ1RYICprY3R4ID0gY3R4LT5k YXRhOwotKwotKyAgICBFVlBfS0RGX0NUWF9mcmVlKGtjdHgpOwotK30KLSsKLStzdGF0aWMgaW50 IHBrZXlfa2RmX2N0cmwoRVZQX1BLRVlfQ1RYICpjdHgsIGludCB0eXBlLCBpbnQgcDEsIHZvaWQg KnAyKQotK3sKLSsgICAgRVZQX0tERl9DVFggKmtjdHggPSBjdHgtPmRhdGE7Ci0rICAgIHVpbnQ2 NF90IHU2NF92YWx1ZTsKLSsgICAgaW50IGNtZDsKLSsgICAgaW50IHJldDsKLSsKLSsgICAgc3dp dGNoICh0eXBlKSB7Ci0rICAgIGNhc2UgRVZQX1BLRVlfQ1RSTF9QQVNTOgotKyAgICAgICAgY21k ID0gRVZQX0tERl9DVFJMX1NFVF9QQVNTOwotKyAgICAgICAgYnJlYWs7Ci0rICAgIGNhc2UgRVZQ X1BLRVlfQ1RSTF9IS0RGX1NBTFQ6Ci0rICAgIGNhc2UgRVZQX1BLRVlfQ1RSTF9TQ1JZUFRfU0FM VDoKLSsgICAgICAgIGNtZCA9IEVWUF9LREZfQ1RSTF9TRVRfU0FMVDsKLSsgICAgICAgIGJyZWFr OwotKyAgICBjYXNlIEVWUF9QS0VZX0NUUkxfVExTX01EOgotKyAgICBjYXNlIEVWUF9QS0VZX0NU UkxfSEtERl9NRDoKLSsgICAgICAgIGNtZCA9IEVWUF9LREZfQ1RSTF9TRVRfTUQ7Ci0rICAgICAg ICBicmVhazsKLSsgICAgY2FzZSBFVlBfUEtFWV9DVFJMX1RMU19TRUNSRVQ6Ci0rICAgICAgICBj bWQgPSBFVlBfS0RGX0NUUkxfU0VUX1RMU19TRUNSRVQ7Ci0rICAgICAgICByZXQgPSBFVlBfS0RG X2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1JFU0VUX1RMU19TRUVEKTsKLSsgICAgICAgIGlmIChy ZXQgPCAxKQotKyAgICAgICAgICAgIHJldHVybiByZXQ7Ci0rICAgICAgICBicmVhazsKLSsgICAg Y2FzZSBFVlBfUEtFWV9DVFJMX1RMU19TRUVEOgotKyAgICAgICAgY21kID0gRVZQX0tERl9DVFJM X0FERF9UTFNfU0VFRDsKLSsgICAgICAgIGJyZWFrOwotKyAgICBjYXNlIEVWUF9QS0VZX0NUUkxf SEtERl9LRVk6Ci0rICAgICAgICBjbWQgPSBFVlBfS0RGX0NUUkxfU0VUX0tFWTsKLSsgICAgICAg IGJyZWFrOwotKyAgICBjYXNlIEVWUF9QS0VZX0NUUkxfSEtERl9JTkZPOgotKyAgICAgICAgY21k ID0gRVZQX0tERl9DVFJMX0FERF9IS0RGX0lORk87Ci0rICAgICAgICBicmVhazsKLSsgICAgY2Fz ZSBFVlBfUEtFWV9DVFJMX0hLREZfTU9ERToKLSsgICAgICAgIGNtZCA9IEVWUF9LREZfQ1RSTF9T RVRfSEtERl9NT0RFOwotKyAgICAgICAgYnJlYWs7Ci0rICAgIGNhc2UgRVZQX1BLRVlfQ1RSTF9T Q1JZUFRfTjoKLSsgICAgICAgIGNtZCA9IEVWUF9LREZfQ1RSTF9TRVRfU0NSWVBUX047Ci0rICAg ICAgICBicmVhazsKLSsgICAgY2FzZSBFVlBfUEtFWV9DVFJMX1NDUllQVF9SOgotKyAgICAgICAg Y21kID0gRVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfUjsKLSsgICAgICAgIGJyZWFrOwotKyAgICBj YXNlIEVWUF9QS0VZX0NUUkxfU0NSWVBUX1A6Ci0rICAgICAgICBjbWQgPSBFVlBfS0RGX0NUUkxf U0VUX1NDUllQVF9QOwotKyAgICAgICAgYnJlYWs7Ci0rICAgIGNhc2UgRVZQX1BLRVlfQ1RSTF9T Q1JZUFRfTUFYTUVNX0JZVEVTOgotKyAgICAgICAgY21kID0gRVZQX0tERl9DVFJMX1NFVF9NQVhN RU1fQllURVM7Ci0rICAgICAgICBicmVhazsKLSsgICAgZGVmYXVsdDoKLSsgICAgICAgIHJldHVy biAtMjsKLSsgICAgfQotKwotKyAgICBzd2l0Y2ggKGNtZCkgewotKyAgICBjYXNlIEVWUF9LREZf Q1RSTF9TRVRfUEFTUzoKLSsgICAgY2FzZSBFVlBfS0RGX0NUUkxfU0VUX1NBTFQ6Ci0rICAgIGNh c2UgRVZQX0tERl9DVFJMX1NFVF9LRVk6Ci0rICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9UTFNf U0VDUkVUOgotKyAgICBjYXNlIEVWUF9LREZfQ1RSTF9BRERfVExTX1NFRUQ6Ci0rICAgIGNhc2Ug RVZQX0tERl9DVFJMX0FERF9IS0RGX0lORk86Ci0rICAgICAgICByZXR1cm4gRVZQX0tERl9jdHJs KGtjdHgsIGNtZCwgKGNvbnN0IHVuc2lnbmVkIGNoYXIgKilwMiwgKHNpemVfdClwMSk7Ci0rCi0r ICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9NRDoKLSsgICAgICAgIHJldHVybiBFVlBfS0RGX2N0 cmwoa2N0eCwgY21kLCAoY29uc3QgRVZQX01EICopcDIpOwotKwotKyAgICBjYXNlIEVWUF9LREZf Q1RSTF9TRVRfSEtERl9NT0RFOgotKyAgICAgICAgcmV0dXJuIEVWUF9LREZfY3RybChrY3R4LCBj bWQsIChpbnQpcDEpOwotKwotKyAgICBjYXNlIEVWUF9LREZfQ1RSTF9TRVRfU0NSWVBUX1I6Ci0r ICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfUDoKLSsgICAgICAgIHU2NF92YWx1ZSA9 ICoodWludDY0X3QgKilwMjsKLSsgICAgICAgIGlmICh1NjRfdmFsdWUgPiBVSU5UMzJfTUFYKSB7 Ci0rICAgICAgICAgICAgRVZQZXJyKEVWUF9GX1BLRVlfS0RGX0NUUkwsIEVWUF9SX1BBUkFNRVRF Ul9UT09fTEFSR0UpOwotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgfQotKwotKyAg ICAgICAgcmV0dXJuIEVWUF9LREZfY3RybChrY3R4LCBjbWQsICh1aW50MzJfdCl1NjRfdmFsdWUp OwotKwotKyAgICBjYXNlIEVWUF9LREZfQ1RSTF9TRVRfU0NSWVBUX046Ci0rICAgIGNhc2UgRVZQ X0tERl9DVFJMX1NFVF9NQVhNRU1fQllURVM6Ci0rICAgICAgICByZXR1cm4gRVZQX0tERl9jdHJs KGtjdHgsIGNtZCwgKih1aW50NjRfdCAqKXAyKTsKLSsKLSsgICAgZGVmYXVsdDoKLSsgICAgICAg IHJldHVybiAwOwotKyAgICB9Ci0rfQotKwotK3N0YXRpYyBpbnQgcGtleV9rZGZfY3RybF9zdHIo RVZQX1BLRVlfQ1RYICpjdHgsIGNvbnN0IGNoYXIgKnR5cGUsCi0rICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSkKLSt7Ci0rICAgIEVWUF9LREZfQ1RYICprY3R4 ID0gY3R4LT5kYXRhOwotKwotKyAgICBpZiAoc3RyY21wKHR5cGUsICJtZCIpID09IDApCi0rICAg ICAgICByZXR1cm4gRVZQX0tERl9jdHJsX3N0cihrY3R4LCAiZGlnZXN0IiwgdmFsdWUpOwotKyAg ICByZXR1cm4gRVZQX0tERl9jdHJsX3N0cihrY3R4LCB0eXBlLCB2YWx1ZSk7Ci0rfQotKwotK3N0 YXRpYyBpbnQgcGtleV9rZGZfZGVyaXZlX2luaXQoRVZQX1BLRVlfQ1RYICpjdHgpCi0rewotKyAg ICBFVlBfS0RGX0NUWCAqa2N0eCA9IGN0eC0+ZGF0YTsKLSsKLSsgICAgRVZQX0tERl9yZXNldChr Y3R4KTsKLSsgICAgcmV0dXJuIDE7Ci0rfQotKwotKy8qCi0rICogRm9yIGZpeGVkLW91dHB1dCBh bGdvcml0aG1zIHRoZSBrZXlsZW4gcGFyYW1ldGVyIGlzIGFuICJvdXQiIHBhcmFtZXRlcgotKyAq IG90aGVyd2lzZSBpdCBpcyBhbiAiaW4iIHBhcmFtZXRlci4KLSsgKi8KLStzdGF0aWMgaW50IHBr ZXlfa2RmX2Rlcml2ZShFVlBfUEtFWV9DVFggKmN0eCwgdW5zaWduZWQgY2hhciAqa2V5LAotKyAg ICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCAqa2V5bGVuKQotK3sKLSsgICAgRVZQX0tE Rl9DVFggKmtjdHggPSBjdHgtPmRhdGE7Ci0rICAgIHNpemVfdCBvdXRsZW4gPSBFVlBfS0RGX3Np emUoa2N0eCk7Ci0rCi0rICAgIGlmIChvdXRsZW4gPT0gMCB8fCBvdXRsZW4gPT0gU0laRV9NQVgp IHsKLSsgICAgICAgIC8qIFZhcmlhYmxlLW91dHB1dCBhbGdvcml0aG0gKi8KLSsgICAgICAgIGlm IChrZXkgPT0gTlVMTCkKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsgICAgfSBlbHNlIHsKLSsg ICAgICAgIC8qIEZpeGVkLW91dHB1dCBhbGdvcml0aG0gKi8KLSsgICAgICAgICprZXlsZW4gPSBv dXRsZW47Ci0rICAgICAgICBpZiAoa2V5ID09IE5VTEwpCi0rICAgICAgICAgICAgcmV0dXJuIDE7 Ci0rICAgIH0KLSsgICAgcmV0dXJuIEVWUF9LREZfZGVyaXZlKGtjdHgsIGtleSwgKmtleWxlbik7 Ci0rfQotKwotKyNpZm5kZWYgT1BFTlNTTF9OT19TQ1JZUFQKLStjb25zdCBFVlBfUEtFWV9NRVRI T0Qgc2NyeXB0X3BrZXlfbWV0aCA9IHsKLSsgICAgRVZQX1BLRVlfU0NSWVBULAotKyAgICAwLAot KyAgICBwa2V5X2tkZl9pbml0LAotKyAgICAwLAotKyAgICBwa2V5X2tkZl9jbGVhbnVwLAotKwot KyAgICAwLCAwLAotKyAgICAwLCAwLAotKwotKyAgICAwLAotKyAgICAwLAotKwotKyAgICAwLAot KyAgICAwLAotKwotKyAgICAwLCAwLAotKwotKyAgICAwLCAwLCAwLCAwLAotKwotKyAgICAwLCAw LAotKwotKyAgICAwLCAwLAotKwotKyAgICBwa2V5X2tkZl9kZXJpdmVfaW5pdCwKLSsgICAgcGtl eV9rZGZfZGVyaXZlLAotKyAgICBwa2V5X2tkZl9jdHJsLAotKyAgICBwa2V5X2tkZl9jdHJsX3N0 cgotK307Ci0rI2VuZGlmCi0rCi0rY29uc3QgRVZQX1BLRVlfTUVUSE9EIHRsczFfcHJmX3BrZXlf bWV0aCA9IHsKLSsgICAgRVZQX1BLRVlfVExTMV9QUkYsCi0rICAgIEVWUF9QS0VZX0ZMQUdfRklQ UywKLSsgICAgcGtleV9rZGZfaW5pdCwKLSsgICAgMCwKLSsgICAgcGtleV9rZGZfY2xlYW51cCwK LSsKLSsgICAgMCwgMCwKLSsgICAgMCwgMCwKLSsKLSsgICAgMCwKLSsgICAgMCwKLSsKLSsgICAg MCwKLSsgICAgMCwKLSsKLSsgICAgMCwgMCwKLSsKLSsgICAgMCwgMCwgMCwgMCwKLSsKLSsgICAg MCwgMCwKLSsKLSsgICAgMCwgMCwKLSsKLSsgICAgcGtleV9rZGZfZGVyaXZlX2luaXQsCi0rICAg IHBrZXlfa2RmX2Rlcml2ZSwKLSsgICAgcGtleV9rZGZfY3RybCwKLSsgICAgcGtleV9rZGZfY3Ry bF9zdHIKLSt9OwotKwotK2NvbnN0IEVWUF9QS0VZX01FVEhPRCBoa2RmX3BrZXlfbWV0aCA9IHsK LSsgICAgRVZQX1BLRVlfSEtERiwKLSsgICAgRVZQX1BLRVlfRkxBR19GSVBTLAotKyAgICBwa2V5 X2tkZl9pbml0LAotKyAgICAwLAotKyAgICBwa2V5X2tkZl9jbGVhbnVwLAotKwotKyAgICAwLCAw LAotKyAgICAwLCAwLAotKwotKyAgICAwLAotKyAgICAwLAotKwotKyAgICAwLAotKyAgICAwLAot KwotKyAgICAwLCAwLAotKwotKyAgICAwLCAwLCAwLCAwLAotKwotKyAgICAwLCAwLAotKwotKyAg ICAwLCAwLAotKwotKyAgICBwa2V5X2tkZl9kZXJpdmVfaW5pdCwKLSsgICAgcGtleV9rZGZfZGVy aXZlLAotKyAgICBwa2V5X2tkZl9jdHJsLAotKyAgICBwa2V5X2tkZl9jdHJsX3N0cgotK307Ci0r Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8va2RmL2J1aWxkLmluZm8uZXZwLWtkZiBv cGVuc3NsLTEuMS4xai9jcnlwdG8va2RmL2J1aWxkLmluZm8KLS0tLSBvcGVuc3NsLTEuMS4xai9j cnlwdG8va2RmL2J1aWxkLmluZm8uZXZwLWtkZgkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAw MCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9rZGYvYnVpbGQuaW5mbwkyMDIxLTAz LTAzIDE0OjA4OjAyLjQ5MTI5NDg0NyArMDEwMAotQEAgLTEsMyArMSwzIEBACi0gTElCUz0uLi8u Li9saWJjcnlwdG8KLSBTT1VSQ0VbLi4vLi4vbGliY3J5cHRvXT1cCi0tICAgICAgICB0bHMxX3By Zi5jIGtkZl9lcnIuYyBoa2RmLmMgc2NyeXB0LmMKLSsgICAgICAgIHRsczFfcHJmLmMga2RmX2Vy ci5jIGtkZl91dGlsLmMgaGtkZi5jIHNjcnlwdC5jIHBia2RmMi5jCi1kaWZmIC11cCBvcGVuc3Ns LTEuMS4xai9jcnlwdG8va2RmL2hrZGYuYy5ldnAta2RmIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9r ZGYvaGtkZi5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2tkZi9oa2RmLmMuZXZwLWtkZgky MDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2Ny eXB0by9rZGYvaGtkZi5jCTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDkyMjk0ODU2ICswMTAwCi1AQCAt OCwzMiArOCwzMyBAQAotICAqLwotIAotICNpbmNsdWRlIDxzdGRsaWIuaD4KLSsjaW5jbHVkZSA8 c3RkYXJnLmg+Ci0gI2luY2x1ZGUgPHN0cmluZy5oPgotICNpbmNsdWRlIDxvcGVuc3NsL2htYWMu aD4KLSAjaW5jbHVkZSA8b3BlbnNzbC9rZGYuaD4KLSAjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4K LSAjaW5jbHVkZSAiaW50ZXJuYWwvY3J5cHRsaWIuaCIKLSAjaW5jbHVkZSAiY3J5cHRvL2V2cC5o IgotKyNpbmNsdWRlICJrZGZfbG9jYWwuaCIKLSAKLSAjZGVmaW5lIEhLREZfTUFYQlVGIDEwMjQK LSAKLS1zdGF0aWMgdW5zaWduZWQgY2hhciAqSEtERihjb25zdCBFVlBfTUQgKmV2cF9tZCwKLS0g ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpzYWx0LCBzaXpl X3Qgc2FsdF9sZW4sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQg Y2hhciAqa2V5LCBzaXplX3Qga2V5X2xlbiwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCB1bnNpZ25lZCBjaGFyICppbmZvLCBzaXplX3QgaW5mb19sZW4sCi0tICAgICAgICAgICAg ICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqb2ttLCBzaXplX3Qgb2ttX2xlbik7Ci0tCi0t c3RhdGljIHVuc2lnbmVkIGNoYXIgKkhLREZfRXh0cmFjdChjb25zdCBFVlBfTUQgKmV2cF9tZCwK LS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIg KnNhbHQsIHNpemVfdCBzYWx0X2xlbiwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmtleSwgc2l6ZV90IGtleV9sZW4sCi0tICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpwcmssIHNpemVfdCAqcHJr X2xlbik7Ci0tCi0tc3RhdGljIHVuc2lnbmVkIGNoYXIgKkhLREZfRXhwYW5kKGNvbnN0IEVWUF9N RCAqZXZwX21kLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNp Z25lZCBjaGFyICpwcmssIHNpemVfdCBwcmtfbGVuLAotLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICppbmZvLCBzaXplX3QgaW5mb19sZW4sCi0t ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKm9rbSwgc2l6 ZV90IG9rbV9sZW4pOwotK3N0YXRpYyB2b2lkIGtkZl9oa2RmX3Jlc2V0KEVWUF9LREZfSU1QTCAq aW1wbCk7Ci0rc3RhdGljIGludCBIS0RGKGNvbnN0IEVWUF9NRCAqZXZwX21kLAotKyAgICAgICAg ICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpzYWx0LCBzaXplX3Qgc2FsdF9sZW4sCi0rICAg ICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmtleSwgc2l6ZV90IGtleV9sZW4sCi0r ICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmluZm8sIHNpemVfdCBpbmZvX2xl biwKLSsgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqb2ttLCBzaXplX3Qgb2ttX2xlbik7 Ci0rc3RhdGljIGludCBIS0RGX0V4dHJhY3QoY29uc3QgRVZQX01EICpldnBfbWQsCi0rICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqc2FsdCwgc2l6ZV90IHNhbHRf bGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmtleSwg c2l6ZV90IGtleV9sZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAq cHJrLCBzaXplX3QgcHJrX2xlbik7Ci0rc3RhdGljIGludCBIS0RGX0V4cGFuZChjb25zdCBFVlBf TUQgKmV2cF9tZCwKLSsgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIg KnByaywgc2l6ZV90IHBya19sZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNp Z25lZCBjaGFyICppbmZvLCBzaXplX3QgaW5mb19sZW4sCi0rICAgICAgICAgICAgICAgICAgICAg ICB1bnNpZ25lZCBjaGFyICpva20sIHNpemVfdCBva21fbGVuKTsKLSAKLS10eXBlZGVmIHN0cnVj dCB7Ci0rc3RydWN0IGV2cF9rZGZfaW1wbF9zdCB7Ci0gICAgIGludCBtb2RlOwotICAgICBjb25z dCBFVlBfTUQgKm1kOwotICAgICB1bnNpZ25lZCBjaGFyICpzYWx0OwotQEAgLTQyLDIzMCArNDMs MjA4IEBAIHR5cGVkZWYgc3RydWN0IHsKLSAgICAgc2l6ZV90IGtleV9sZW47Ci0gICAgIHVuc2ln bmVkIGNoYXIgaW5mb1tIS0RGX01BWEJVRl07Ci0gICAgIHNpemVfdCBpbmZvX2xlbjsKLS19IEhL REZfUEtFWV9DVFg7Ci0rfTsKLSAKLS1zdGF0aWMgaW50IHBrZXlfaGtkZl9pbml0KEVWUF9QS0VZ X0NUWCAqY3R4KQotK3N0YXRpYyBFVlBfS0RGX0lNUEwgKmtkZl9oa2RmX25ldyh2b2lkKQotIHsK LS0gICAgSEtERl9QS0VZX0NUWCAqa2N0eDsKLS0KLS0gICAgaWYgKChrY3R4ID0gT1BFTlNTTF96 YWxsb2Moc2l6ZW9mKCprY3R4KSkpID09IE5VTEwpIHsKLS0gICAgICAgIEtERmVycihLREZfRl9Q S0VZX0hLREZfSU5JVCwgRVJSX1JfTUFMTE9DX0ZBSUxVUkUpOwotLSAgICAgICAgcmV0dXJuIDA7 Ci0tICAgIH0KLSsgICAgRVZQX0tERl9JTVBMICppbXBsOwotIAotLSAgICBjdHgtPmRhdGEgPSBr Y3R4OwotKyAgICBpZiAoKGltcGwgPSBPUEVOU1NMX3phbGxvYyhzaXplb2YoKmltcGwpKSkgPT0g TlVMTCkKLSsgICAgICAgIEtERmVycihLREZfRl9LREZfSEtERl9ORVcsIEVSUl9SX01BTExPQ19G QUlMVVJFKTsKLSsgICAgcmV0dXJuIGltcGw7Ci0rfQotIAotLSAgICByZXR1cm4gMTsKLStzdGF0 aWMgdm9pZCBrZGZfaGtkZl9mcmVlKEVWUF9LREZfSU1QTCAqaW1wbCkKLSt7Ci0rICAgIGtkZl9o a2RmX3Jlc2V0KGltcGwpOwotKyAgICBPUEVOU1NMX2ZyZWUoaW1wbCk7Ci0gfQotIAotLXN0YXRp YyB2b2lkIHBrZXlfaGtkZl9jbGVhbnVwKEVWUF9QS0VZX0NUWCAqY3R4KQotK3N0YXRpYyB2b2lk IGtkZl9oa2RmX3Jlc2V0KEVWUF9LREZfSU1QTCAqaW1wbCkKLSB7Ci0tICAgIEhLREZfUEtFWV9D VFggKmtjdHggPSBjdHgtPmRhdGE7Ci0tICAgIE9QRU5TU0xfY2xlYXJfZnJlZShrY3R4LT5zYWx0 LCBrY3R4LT5zYWx0X2xlbik7Ci0tICAgIE9QRU5TU0xfY2xlYXJfZnJlZShrY3R4LT5rZXksIGtj dHgtPmtleV9sZW4pOwotLSAgICBPUEVOU1NMX2NsZWFuc2Uoa2N0eC0+aW5mbywga2N0eC0+aW5m b19sZW4pOwotLSAgICBPUEVOU1NMX2ZyZWUoa2N0eCk7Ci0rICAgIE9QRU5TU0xfZnJlZShpbXBs LT5zYWx0KTsKLSsgICAgT1BFTlNTTF9jbGVhcl9mcmVlKGltcGwtPmtleSwgaW1wbC0+a2V5X2xl bik7Ci0rICAgIE9QRU5TU0xfY2xlYW5zZShpbXBsLT5pbmZvLCBpbXBsLT5pbmZvX2xlbik7Ci0r ICAgIG1lbXNldChpbXBsLCAwLCBzaXplb2YoKmltcGwpKTsKLSB9Ci0gCi0tc3RhdGljIGludCBw a2V5X2hrZGZfY3RybChFVlBfUEtFWV9DVFggKmN0eCwgaW50IHR5cGUsIGludCBwMSwgdm9pZCAq cDIpCi0rc3RhdGljIGludCBrZGZfaGtkZl9jdHJsKEVWUF9LREZfSU1QTCAqaW1wbCwgaW50IGNt ZCwgdmFfbGlzdCBhcmdzKQotIHsKLS0gICAgSEtERl9QS0VZX0NUWCAqa2N0eCA9IGN0eC0+ZGF0 YTsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcDsKLSsgICAgc2l6ZV90IGxlbjsKLSsgICAg Y29uc3QgRVZQX01EICptZDsKLSAKLS0gICAgc3dpdGNoICh0eXBlKSB7Ci0tICAgIGNhc2UgRVZQ X1BLRVlfQ1RSTF9IS0RGX01EOgotLSAgICAgICAgaWYgKHAyID09IE5VTEwpCi0rICAgIHN3aXRj aCAoY21kKSB7Ci0rICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9NRDoKLSsgICAgICAgIG1kID0g dmFfYXJnKGFyZ3MsIGNvbnN0IEVWUF9NRCAqKTsKLSsgICAgICAgIGlmIChtZCA9PSBOVUxMKQot ICAgICAgICAgICAgIHJldHVybiAwOwotIAotLSAgICAgICAga2N0eC0+bWQgPSBwMjsKLSsgICAg ICAgIGltcGwtPm1kID0gbWQ7Ci0gICAgICAgICByZXR1cm4gMTsKLSAKLS0gICAgY2FzZSBFVlBf UEtFWV9DVFJMX0hLREZfTU9ERToKLS0gICAgICAgIGtjdHgtPm1vZGUgPSBwMTsKLSsgICAgY2Fz ZSBFVlBfS0RGX0NUUkxfU0VUX0hLREZfTU9ERToKLSsgICAgICAgIGltcGwtPm1vZGUgPSB2YV9h cmcoYXJncywgaW50KTsKLSAgICAgICAgIHJldHVybiAxOwotIAotLSAgICBjYXNlIEVWUF9QS0VZ X0NUUkxfSEtERl9TQUxUOgotLSAgICAgICAgaWYgKHAxID09IDAgfHwgcDIgPT0gTlVMTCkKLSsg ICAgY2FzZSBFVlBfS0RGX0NUUkxfU0VUX1NBTFQ6Ci0rICAgICAgICBwID0gdmFfYXJnKGFyZ3Ms IGNvbnN0IHVuc2lnbmVkIGNoYXIgKik7Ci0rICAgICAgICBsZW4gPSB2YV9hcmcoYXJncywgc2l6 ZV90KTsKLSsgICAgICAgIGlmIChsZW4gPT0gMCB8fCBwID09IE5VTEwpCi0gICAgICAgICAgICAg cmV0dXJuIDE7Ci0gCi0tICAgICAgICBpZiAocDEgPCAwKQotKyAgICAgICAgT1BFTlNTTF9mcmVl KGltcGwtPnNhbHQpOwotKyAgICAgICAgaW1wbC0+c2FsdCA9IE9QRU5TU0xfbWVtZHVwKHAsIGxl bik7Ci0rICAgICAgICBpZiAoaW1wbC0+c2FsdCA9PSBOVUxMKQotICAgICAgICAgICAgIHJldHVy biAwOwotIAotLSAgICAgICAgaWYgKGtjdHgtPnNhbHQgIT0gTlVMTCkKLS0gICAgICAgICAgICBP UEVOU1NMX2NsZWFyX2ZyZWUoa2N0eC0+c2FsdCwga2N0eC0+c2FsdF9sZW4pOwotLQotLSAgICAg ICAga2N0eC0+c2FsdCA9IE9QRU5TU0xfbWVtZHVwKHAyLCBwMSk7Ci0tICAgICAgICBpZiAoa2N0 eC0+c2FsdCA9PSBOVUxMKQotLSAgICAgICAgICAgIHJldHVybiAwOwotLQotLSAgICAgICAga2N0 eC0+c2FsdF9sZW4gPSBwMTsKLSsgICAgICAgIGltcGwtPnNhbHRfbGVuID0gbGVuOwotICAgICAg ICAgcmV0dXJuIDE7Ci0gCi0tICAgIGNhc2UgRVZQX1BLRVlfQ1RSTF9IS0RGX0tFWToKLS0gICAg ICAgIGlmIChwMSA8IDApCi0rICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9LRVk6Ci0rICAgICAg ICBwID0gdmFfYXJnKGFyZ3MsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKik7Ci0rICAgICAgICBsZW4g PSB2YV9hcmcoYXJncywgc2l6ZV90KTsKLSsgICAgICAgIE9QRU5TU0xfY2xlYXJfZnJlZShpbXBs LT5rZXksIGltcGwtPmtleV9sZW4pOwotKyAgICAgICAgaW1wbC0+a2V5ID0gT1BFTlNTTF9tZW1k dXAocCwgbGVuKTsKLSsgICAgICAgIGlmIChpbXBsLT5rZXkgPT0gTlVMTCkKLSAgICAgICAgICAg ICByZXR1cm4gMDsKLSAKLS0gICAgICAgIGlmIChrY3R4LT5rZXkgIT0gTlVMTCkKLS0gICAgICAg ICAgICBPUEVOU1NMX2NsZWFyX2ZyZWUoa2N0eC0+a2V5LCBrY3R4LT5rZXlfbGVuKTsKLS0KLS0g ICAgICAgIGtjdHgtPmtleSA9IE9QRU5TU0xfbWVtZHVwKHAyLCBwMSk7Ci0tICAgICAgICBpZiAo a2N0eC0+a2V5ID09IE5VTEwpCi0tICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICBpbXBs LT5rZXlfbGVuICA9IGxlbjsKLSsgICAgICAgIHJldHVybiAxOwotIAotLSAgICAgICAga2N0eC0+ a2V5X2xlbiAgPSBwMTsKLSsgICAgY2FzZSBFVlBfS0RGX0NUUkxfUkVTRVRfSEtERl9JTkZPOgot KyAgICAgICAgT1BFTlNTTF9jbGVhbnNlKGltcGwtPmluZm8sIGltcGwtPmluZm9fbGVuKTsKLSsg ICAgICAgIGltcGwtPmluZm9fbGVuID0gMDsKLSAgICAgICAgIHJldHVybiAxOwotIAotLSAgICBj YXNlIEVWUF9QS0VZX0NUUkxfSEtERl9JTkZPOgotLSAgICAgICAgaWYgKHAxID09IDAgfHwgcDIg PT0gTlVMTCkKLSsgICAgY2FzZSBFVlBfS0RGX0NUUkxfQUREX0hLREZfSU5GTzoKLSsgICAgICAg IHAgPSB2YV9hcmcoYXJncywgY29uc3QgdW5zaWduZWQgY2hhciAqKTsKLSsgICAgICAgIGxlbiA9 IHZhX2FyZyhhcmdzLCBzaXplX3QpOwotKyAgICAgICAgaWYgKGxlbiA9PSAwIHx8IHAgPT0gTlVM TCkKLSAgICAgICAgICAgICByZXR1cm4gMTsKLSAKLS0gICAgICAgIGlmIChwMSA8IDAgfHwgcDEg PiAoaW50KShIS0RGX01BWEJVRiAtIGtjdHgtPmluZm9fbGVuKSkKLSsgICAgICAgIGlmIChsZW4g PiAoSEtERl9NQVhCVUYgLSBpbXBsLT5pbmZvX2xlbikpCi0gICAgICAgICAgICAgcmV0dXJuIDA7 Ci0gCi0tICAgICAgICBtZW1jcHkoa2N0eC0+aW5mbyArIGtjdHgtPmluZm9fbGVuLCBwMiwgcDEp OwotLSAgICAgICAga2N0eC0+aW5mb19sZW4gKz0gcDE7Ci0rICAgICAgICBtZW1jcHkoaW1wbC0+ aW5mbyArIGltcGwtPmluZm9fbGVuLCBwLCBsZW4pOwotKyAgICAgICAgaW1wbC0+aW5mb19sZW4g Kz0gbGVuOwotICAgICAgICAgcmV0dXJuIDE7Ci0gCi0gICAgIGRlZmF1bHQ6Ci0gICAgICAgICBy ZXR1cm4gLTI7Ci0tCi0gICAgIH0KLSB9Ci0gCi0tc3RhdGljIGludCBwa2V5X2hrZGZfY3RybF9z dHIoRVZQX1BLRVlfQ1RYICpjdHgsIGNvbnN0IGNoYXIgKnR5cGUsCi0tICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3QgY2hhciAqdmFsdWUpCi0rc3RhdGljIGludCBrZGZfaGtkZl9j dHJsX3N0cihFVlBfS0RGX0lNUEwgKmltcGwsIGNvbnN0IGNoYXIgKnR5cGUsCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSkKLSB7Ci0gICAgIGlmIChzdHJj bXAodHlwZSwgIm1vZGUiKSA9PSAwKSB7Ci0gICAgICAgICBpbnQgbW9kZTsKLSAKLSAgICAgICAg IGlmIChzdHJjbXAodmFsdWUsICJFWFRSQUNUX0FORF9FWFBBTkQiKSA9PSAwKQotLSAgICAgICAg ICAgIG1vZGUgPSBFVlBfUEtFWV9IS0RFRl9NT0RFX0VYVFJBQ1RfQU5EX0VYUEFORDsKLSsgICAg ICAgICAgICBtb2RlID0gRVZQX0tERl9IS0RGX01PREVfRVhUUkFDVF9BTkRfRVhQQU5EOwotICAg ICAgICAgZWxzZSBpZiAoc3RyY21wKHZhbHVlLCAiRVhUUkFDVF9PTkxZIikgPT0gMCkKLS0gICAg ICAgICAgICBtb2RlID0gRVZQX1BLRVlfSEtERUZfTU9ERV9FWFRSQUNUX09OTFk7Ci0rICAgICAg ICAgICAgbW9kZSA9IEVWUF9LREZfSEtERl9NT0RFX0VYVFJBQ1RfT05MWTsKLSAgICAgICAgIGVs c2UgaWYgKHN0cmNtcCh2YWx1ZSwgIkVYUEFORF9PTkxZIikgPT0gMCkKLS0gICAgICAgICAgICBt b2RlID0gRVZQX1BLRVlfSEtERUZfTU9ERV9FWFBBTkRfT05MWTsKLSsgICAgICAgICAgICBtb2Rl ID0gRVZQX0tERl9IS0RGX01PREVfRVhQQU5EX09OTFk7Ci0gICAgICAgICBlbHNlCi0gICAgICAg ICAgICAgcmV0dXJuIDA7Ci0gCi0tICAgICAgICByZXR1cm4gRVZQX1BLRVlfQ1RYX2hrZGZfbW9k ZShjdHgsIG1vZGUpOwotKyAgICAgICAgcmV0dXJuIGNhbGxfY3RybChrZGZfaGtkZl9jdHJsLCBp bXBsLCBFVlBfS0RGX0NUUkxfU0VUX0hLREZfTU9ERSwgbW9kZSk7Ci0gICAgIH0KLSAKLS0gICAg aWYgKHN0cmNtcCh0eXBlLCAibWQiKSA9PSAwKQotLSAgICAgICAgcmV0dXJuIEVWUF9QS0VZX0NU WF9tZChjdHgsIEVWUF9QS0VZX09QX0RFUklWRSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgRVZQX1BLRVlfQ1RSTF9IS0RGX01ELCB2YWx1ZSk7Ci0rICAgIGlmIChzdHJjbXAodHlw ZSwgImRpZ2VzdCIpID09IDApCi0rICAgICAgICByZXR1cm4ga2RmX21kMmN0cmwoaW1wbCwga2Rm X2hrZGZfY3RybCwgRVZQX0tERl9DVFJMX1NFVF9NRCwgdmFsdWUpOwotIAotICAgICBpZiAoc3Ry Y21wKHR5cGUsICJzYWx0IikgPT0gMCkKLS0gICAgICAgIHJldHVybiBFVlBfUEtFWV9DVFhfc3Ry MmN0cmwoY3R4LCBFVlBfUEtFWV9DVFJMX0hLREZfU0FMVCwgdmFsdWUpOwotKyAgICAgICAgcmV0 dXJuIGtkZl9zdHIyY3RybChpbXBsLCBrZGZfaGtkZl9jdHJsLCBFVlBfS0RGX0NUUkxfU0VUX1NB TFQsIHZhbHVlKTsKLSAKLSAgICAgaWYgKHN0cmNtcCh0eXBlLCAiaGV4c2FsdCIpID09IDApCi0t ICAgICAgICByZXR1cm4gRVZQX1BLRVlfQ1RYX2hleDJjdHJsKGN0eCwgRVZQX1BLRVlfQ1RSTF9I S0RGX1NBTFQsIHZhbHVlKTsKLSsgICAgICAgIHJldHVybiBrZGZfaGV4MmN0cmwoaW1wbCwga2Rm X2hrZGZfY3RybCwgRVZQX0tERl9DVFJMX1NFVF9TQUxULCB2YWx1ZSk7Ci0gCi0gICAgIGlmIChz dHJjbXAodHlwZSwgImtleSIpID09IDApCi0tICAgICAgICByZXR1cm4gRVZQX1BLRVlfQ1RYX3N0 cjJjdHJsKGN0eCwgRVZQX1BLRVlfQ1RSTF9IS0RGX0tFWSwgdmFsdWUpOwotKyAgICAgICAgcmV0 dXJuIGtkZl9zdHIyY3RybChpbXBsLCBrZGZfaGtkZl9jdHJsLCBFVlBfS0RGX0NUUkxfU0VUX0tF WSwgdmFsdWUpOwotIAotICAgICBpZiAoc3RyY21wKHR5cGUsICJoZXhrZXkiKSA9PSAwKQotLSAg ICAgICAgcmV0dXJuIEVWUF9QS0VZX0NUWF9oZXgyY3RybChjdHgsIEVWUF9QS0VZX0NUUkxfSEtE Rl9LRVksIHZhbHVlKTsKLSsgICAgICAgIHJldHVybiBrZGZfaGV4MmN0cmwoaW1wbCwga2RmX2hr ZGZfY3RybCwgRVZQX0tERl9DVFJMX1NFVF9LRVksIHZhbHVlKTsKLSAKLSAgICAgaWYgKHN0cmNt cCh0eXBlLCAiaW5mbyIpID09IDApCi0tICAgICAgICByZXR1cm4gRVZQX1BLRVlfQ1RYX3N0cjJj dHJsKGN0eCwgRVZQX1BLRVlfQ1RSTF9IS0RGX0lORk8sIHZhbHVlKTsKLSsgICAgICAgIHJldHVy biBrZGZfc3RyMmN0cmwoaW1wbCwga2RmX2hrZGZfY3RybCwgRVZQX0tERl9DVFJMX0FERF9IS0RG X0lORk8sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlKTsKLSAKLSAgICAgaWYg KHN0cmNtcCh0eXBlLCAiaGV4aW5mbyIpID09IDApCi0tICAgICAgICByZXR1cm4gRVZQX1BLRVlf Q1RYX2hleDJjdHJsKGN0eCwgRVZQX1BLRVlfQ1RSTF9IS0RGX0lORk8sIHZhbHVlKTsKLSsgICAg ICAgIHJldHVybiBrZGZfaGV4MmN0cmwoaW1wbCwga2RmX2hrZGZfY3RybCwgRVZQX0tERl9DVFJM X0FERF9IS0RGX0lORk8sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlKTsKLSAK LS0gICAgS0RGZXJyKEtERl9GX1BLRVlfSEtERl9DVFJMX1NUUiwgS0RGX1JfVU5LTk9XTl9QQVJB TUVURVJfVFlQRSk7Ci0gICAgIHJldHVybiAtMjsKLSB9Ci0gCi0tc3RhdGljIGludCBwa2V5X2hr ZGZfZGVyaXZlX2luaXQoRVZQX1BLRVlfQ1RYICpjdHgpCi0rc3RhdGljIHNpemVfdCBrZGZfaGtk Zl9zaXplKEVWUF9LREZfSU1QTCAqaW1wbCkKLSB7Ci0tICAgIEhLREZfUEtFWV9DVFggKmtjdHgg PSBjdHgtPmRhdGE7Ci0rICAgIGlmIChpbXBsLT5tb2RlICE9IEVWUF9LREZfSEtERl9NT0RFX0VY VFJBQ1RfT05MWSkKLSsgICAgICAgIHJldHVybiBTSVpFX01BWDsKLSAKLS0gICAgT1BFTlNTTF9j bGVhcl9mcmVlKGtjdHgtPmtleSwga2N0eC0+a2V5X2xlbik7Ci0tICAgIE9QRU5TU0xfY2xlYXJf ZnJlZShrY3R4LT5zYWx0LCBrY3R4LT5zYWx0X2xlbik7Ci0tICAgIE9QRU5TU0xfY2xlYW5zZShr Y3R4LT5pbmZvLCBrY3R4LT5pbmZvX2xlbik7Ci0tICAgIG1lbXNldChrY3R4LCAwLCBzaXplb2Yo KmtjdHgpKTsKLS0KLS0gICAgcmV0dXJuIDE7Ci0rICAgIGlmIChpbXBsLT5tZCA9PSBOVUxMKSB7 Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfS0RGX0hLREZfU0laRSwgS0RGX1JfTUlTU0lOR19NRVNT QUdFX0RJR0VTVCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKyAgICByZXR1cm4gRVZQ X01EX3NpemUoaW1wbC0+bWQpOwotIH0KLSAKLS1zdGF0aWMgaW50IHBrZXlfaGtkZl9kZXJpdmUo RVZQX1BLRVlfQ1RYICpjdHgsIHVuc2lnbmVkIGNoYXIgKmtleSwKLS0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2l6ZV90ICprZXlsZW4pCi0rc3RhdGljIGludCBrZGZfaGtkZl9kZXJpdmUo RVZQX0tERl9JTVBMICppbXBsLCB1bnNpZ25lZCBjaGFyICprZXksCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2l6ZV90IGtleWxlbikKLSB7Ci0tICAgIEhLREZfUEtFWV9DVFggKmtjdHgg PSBjdHgtPmRhdGE7Ci0tCi0tICAgIGlmIChrY3R4LT5tZCA9PSBOVUxMKSB7Ci0tICAgICAgICBL REZlcnIoS0RGX0ZfUEtFWV9IS0RGX0RFUklWRSwgS0RGX1JfTUlTU0lOR19NRVNTQUdFX0RJR0VT VCk7Ci0rICAgIGlmIChpbXBsLT5tZCA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0Zf S0RGX0hLREZfREVSSVZFLCBLREZfUl9NSVNTSU5HX01FU1NBR0VfRElHRVNUKTsKLSAgICAgICAg IHJldHVybiAwOwotICAgICB9Ci0tICAgIGlmIChrY3R4LT5rZXkgPT0gTlVMTCkgewotLSAgICAg ICAgS0RGZXJyKEtERl9GX1BLRVlfSEtERl9ERVJJVkUsIEtERl9SX01JU1NJTkdfS0VZKTsKLSsg ICAgaWYgKGltcGwtPmtleSA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfS0RGX0hL REZfREVSSVZFLCBLREZfUl9NSVNTSU5HX0tFWSk7Ci0gICAgICAgICByZXR1cm4gMDsKLSAgICAg fQotIAotLSAgICBzd2l0Y2ggKGtjdHgtPm1vZGUpIHsKLS0gICAgY2FzZSBFVlBfUEtFWV9IS0RF Rl9NT0RFX0VYVFJBQ1RfQU5EX0VYUEFORDoKLS0gICAgICAgIHJldHVybiBIS0RGKGtjdHgtPm1k LCBrY3R4LT5zYWx0LCBrY3R4LT5zYWx0X2xlbiwga2N0eC0+a2V5LAotLSAgICAgICAgICAgICAg ICAgICAga2N0eC0+a2V5X2xlbiwga2N0eC0+aW5mbywga2N0eC0+aW5mb19sZW4sIGtleSwKLS0g ICAgICAgICAgICAgICAgICAgICprZXlsZW4pICE9IE5VTEw7Ci0tCi0tICAgIGNhc2UgRVZQX1BL RVlfSEtERUZfTU9ERV9FWFRSQUNUX09OTFk6Ci0tICAgICAgICBpZiAoa2V5ID09IE5VTEwpIHsK LS0gICAgICAgICAgICAqa2V5bGVuID0gRVZQX01EX3NpemUoa2N0eC0+bWQpOwotLSAgICAgICAg ICAgIHJldHVybiAxOwotLSAgICAgICAgfQotLSAgICAgICAgcmV0dXJuIEhLREZfRXh0cmFjdChr Y3R4LT5tZCwga2N0eC0+c2FsdCwga2N0eC0+c2FsdF9sZW4sIGtjdHgtPmtleSwKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgICAga2N0eC0+a2V5X2xlbiwga2V5LCBrZXlsZW4pICE9IE5VTEw7 Ci0tCi0tICAgIGNhc2UgRVZQX1BLRVlfSEtERUZfTU9ERV9FWFBBTkRfT05MWToKLS0gICAgICAg IHJldHVybiBIS0RGX0V4cGFuZChrY3R4LT5tZCwga2N0eC0+a2V5LCBrY3R4LT5rZXlfbGVuLCBr Y3R4LT5pbmZvLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGtjdHgtPmluZm9fbGVuLCBr ZXksICprZXlsZW4pICE9IE5VTEw7Ci0rICAgIHN3aXRjaCAoaW1wbC0+bW9kZSkgewotKyAgICBj YXNlIEVWUF9LREZfSEtERl9NT0RFX0VYVFJBQ1RfQU5EX0VYUEFORDoKLSsgICAgICAgIHJldHVy biBIS0RGKGltcGwtPm1kLCBpbXBsLT5zYWx0LCBpbXBsLT5zYWx0X2xlbiwgaW1wbC0+a2V5LAot KyAgICAgICAgICAgICAgICAgICAgaW1wbC0+a2V5X2xlbiwgaW1wbC0+aW5mbywgaW1wbC0+aW5m b19sZW4sIGtleSwKLSsgICAgICAgICAgICAgICAgICAgIGtleWxlbik7Ci0rCi0rICAgIGNhc2Ug RVZQX0tERl9IS0RGX01PREVfRVhUUkFDVF9PTkxZOgotKyAgICAgICAgcmV0dXJuIEhLREZfRXh0 cmFjdChpbXBsLT5tZCwgaW1wbC0+c2FsdCwgaW1wbC0+c2FsdF9sZW4sIGltcGwtPmtleSwKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1wbC0+a2V5X2xlbiwga2V5LCBrZXlsZW4pOwot KwotKyAgICBjYXNlIEVWUF9LREZfSEtERl9NT0RFX0VYUEFORF9PTkxZOgotKyAgICAgICAgcmV0 dXJuIEhLREZfRXhwYW5kKGltcGwtPm1kLCBpbXBsLT5rZXksIGltcGwtPmtleV9sZW4sIGltcGwt PmluZm8sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1wbC0+aW5mb19sZW4sIGtleSwg a2V5bGVuKTsKLSAKLSAgICAgZGVmYXVsdDoKLSAgICAgICAgIHJldHVybiAwOwotICAgICB9Ci0g fQotIAotLWNvbnN0IEVWUF9QS0VZX01FVEhPRCBoa2RmX3BrZXlfbWV0aCA9IHsKLS0gICAgRVZQ X1BLRVlfSEtERiwKLS0gICAgMCwKLS0gICAgcGtleV9oa2RmX2luaXQsCi0tICAgIDAsCi0tICAg IHBrZXlfaGtkZl9jbGVhbnVwLAotLQotLSAgICAwLCAwLAotLSAgICAwLCAwLAotLQotLSAgICAw LAotLSAgICAwLAotLQotLSAgICAwLAotLSAgICAwLAotLQotLSAgICAwLCAwLAotLQotLSAgICAw LCAwLCAwLCAwLAotLQotLSAgICAwLCAwLAotLQotLSAgICAwLCAwLAotLQotLSAgICBwa2V5X2hr ZGZfZGVyaXZlX2luaXQsCi0tICAgIHBrZXlfaGtkZl9kZXJpdmUsCi0tICAgIHBrZXlfaGtkZl9j dHJsLAotLSAgICBwa2V5X2hrZGZfY3RybF9zdHIKLStjb25zdCBFVlBfS0RGX01FVEhPRCBoa2Rm X2tkZl9tZXRoID0gewotKyAgICBFVlBfS0RGX0hLREYsCi0rICAgIGtkZl9oa2RmX25ldywKLSsg ICAga2RmX2hrZGZfZnJlZSwKLSsgICAga2RmX2hrZGZfcmVzZXQsCi0rICAgIGtkZl9oa2RmX2N0 cmwsCi0rICAgIGtkZl9oa2RmX2N0cmxfc3RyLAotKyAgICBrZGZfaGtkZl9zaXplLAotKyAgICBr ZGZfaGtkZl9kZXJpdmUKLSB9OwotIAotLXN0YXRpYyB1bnNpZ25lZCBjaGFyICpIS0RGKGNvbnN0 IEVWUF9NRCAqZXZwX21kLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2ln bmVkIGNoYXIgKnNhbHQsIHNpemVfdCBzYWx0X2xlbiwKLS0gICAgICAgICAgICAgICAgICAgICAg ICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICprZXksIHNpemVfdCBrZXlfbGVuLAotLSAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmluZm8sIHNpemVfdCBpbmZv X2xlbiwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpva20sIHNp emVfdCBva21fbGVuKQotK3N0YXRpYyBpbnQgSEtERihjb25zdCBFVlBfTUQgKmV2cF9tZCwKLSsg ICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqc2FsdCwgc2l6ZV90IHNhbHRfbGVu LAotKyAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICprZXksIHNpemVfdCBrZXlf bGVuLAotKyAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICppbmZvLCBzaXplX3Qg aW5mb19sZW4sCi0rICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKm9rbSwgc2l6ZV90IG9r bV9sZW4pCi0gewotICAgICB1bnNpZ25lZCBjaGFyIHBya1tFVlBfTUFYX01EX1NJWkVdOwotLSAg ICB1bnNpZ25lZCBjaGFyICpyZXQ7Ci0tICAgIHNpemVfdCBwcmtfbGVuOwotKyAgICBpbnQgcmV0 OwotKyAgICBzaXplX3QgcHJrX2xlbiA9IEVWUF9NRF9zaXplKGV2cF9tZCk7Ci0gCi0tICAgIGlm ICghSEtERl9FeHRyYWN0KGV2cF9tZCwgc2FsdCwgc2FsdF9sZW4sIGtleSwga2V5X2xlbiwgcHJr LCAmcHJrX2xlbikpCi0tICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAgaWYgKCFIS0RGX0V4dHJh Y3QoZXZwX21kLCBzYWx0LCBzYWx0X2xlbiwga2V5LCBrZXlfbGVuLCBwcmssIHBya19sZW4pKQot KyAgICAgICAgcmV0dXJuIDA7Ci0gCi0gICAgIHJldCA9IEhLREZfRXhwYW5kKGV2cF9tZCwgcHJr LCBwcmtfbGVuLCBpbmZvLCBpbmZvX2xlbiwgb2ttLCBva21fbGVuKTsKLSAgICAgT1BFTlNTTF9j bGVhbnNlKHByaywgc2l6ZW9mKHByaykpOwotQEAgLTI3Myw0MyArMjUyLDM4IEBAIHN0YXRpYyB1 bnNpZ25lZCBjaGFyICpIS0RGKGNvbnN0IEVWUF9NRAotICAgICByZXR1cm4gcmV0OwotIH0KLSAK LS1zdGF0aWMgdW5zaWduZWQgY2hhciAqSEtERl9FeHRyYWN0KGNvbnN0IEVWUF9NRCAqZXZwX21k LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hh ciAqc2FsdCwgc2l6ZV90IHNhbHRfbGVuLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqa2V5LCBzaXplX3Qga2V5X2xlbiwKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKnByaywgc2l6ZV90ICpw cmtfbGVuKQotK3N0YXRpYyBpbnQgSEtERl9FeHRyYWN0KGNvbnN0IEVWUF9NRCAqZXZwX21kLAot KyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNhbHQsIHNpemVf dCBzYWx0X2xlbiwKLSsgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFy ICprZXksIHNpemVfdCBrZXlfbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVk IGNoYXIgKnByaywgc2l6ZV90IHBya19sZW4pCi0gewotLSAgICB1bnNpZ25lZCBpbnQgdG1wX2xl bjsKLS0KLS0gICAgaWYgKCFITUFDKGV2cF9tZCwgc2FsdCwgc2FsdF9sZW4sIGtleSwga2V5X2xl biwgcHJrLCAmdG1wX2xlbikpCi0tICAgICAgICByZXR1cm4gTlVMTDsKLS0KLS0gICAgKnBya19s ZW4gPSB0bXBfbGVuOwotLSAgICByZXR1cm4gcHJrOwotKyAgICBpZiAocHJrX2xlbiAhPSAoc2l6 ZV90KUVWUF9NRF9zaXplKGV2cF9tZCkpIHsKLSsgICAgICAgIEtERmVycihLREZfRl9IS0RGX0VY VFJBQ1QsIEtERl9SX1dST05HX09VVFBVVF9CVUZGRVJfU0laRSk7Ci0rICAgICAgICByZXR1cm4g MDsKLSsgICAgfQotKyAgICByZXR1cm4gSE1BQyhldnBfbWQsIHNhbHQsIHNhbHRfbGVuLCBrZXks IGtleV9sZW4sIHByaywgTlVMTCkgIT0gTlVMTDsKLSB9Ci0gCi0tc3RhdGljIHVuc2lnbmVkIGNo YXIgKkhLREZfRXhwYW5kKGNvbnN0IEVWUF9NRCAqZXZwX21kLAotLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpwcmssIHNpemVfdCBwcmtfbGVu LAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFy ICppbmZvLCBzaXplX3QgaW5mb19sZW4sCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHVuc2lnbmVkIGNoYXIgKm9rbSwgc2l6ZV90IG9rbV9sZW4pCi0rc3RhdGljIGludCBIS0RG X0V4cGFuZChjb25zdCBFVlBfTUQgKmV2cF9tZCwKLSsgICAgICAgICAgICAgICAgICAgICAgIGNv bnN0IHVuc2lnbmVkIGNoYXIgKnByaywgc2l6ZV90IHBya19sZW4sCi0rICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICppbmZvLCBzaXplX3QgaW5mb19sZW4sCi0rICAg ICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpva20sIHNpemVfdCBva21fbGVuKQot IHsKLSAgICAgSE1BQ19DVFggKmhtYWM7Ci0tICAgIHVuc2lnbmVkIGNoYXIgKnJldCA9IE5VTEw7 Ci0tCi0rICAgIGludCByZXQgPSAwOwotICAgICB1bnNpZ25lZCBpbnQgaTsKLS0KLSAgICAgdW5z aWduZWQgY2hhciBwcmV2W0VWUF9NQVhfTURfU0laRV07Ci0tCi0gICAgIHNpemVfdCBkb25lX2xl biA9IDAsIGRpZ19sZW4gPSBFVlBfTURfc2l6ZShldnBfbWQpOwotLQotICAgICBzaXplX3QgbiA9 IG9rbV9sZW4gLyBkaWdfbGVuOwotKwotICAgICBpZiAob2ttX2xlbiAlIGRpZ19sZW4pCi0gICAg ICAgICBuKys7Ci0gCi0gICAgIGlmIChuID4gMjU1IHx8IG9rbSA9PSBOVUxMKQotLSAgICAgICAg cmV0dXJuIE5VTEw7Ci0rICAgICAgICByZXR1cm4gMDsKLSAKLSAgICAgaWYgKChobWFjID0gSE1B Q19DVFhfbmV3KCkpID09IE5VTEwpCi0tICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAgICAgIHJl dHVybiAwOwotIAotICAgICBpZiAoIUhNQUNfSW5pdF9leChobWFjLCBwcmssIHBya19sZW4sIGV2 cF9tZCwgTlVMTCkpCi0gICAgICAgICBnb3RvIGVycjsKLUBAIC0zNDMsNyArMzE3LDcgQEAgc3Rh dGljIHVuc2lnbmVkIGNoYXIgKkhLREZfRXhwYW5kKGNvbnN0Ci0gCi0gICAgICAgICBkb25lX2xl biArPSBjb3B5X2xlbjsKLSAgICAgfQotLSAgICByZXQgPSBva207Ci0rICAgIHJldCA9IDE7Ci0g Ci0gIGVycjoKLSAgICAgT1BFTlNTTF9jbGVhbnNlKHByZXYsIHNpemVvZihwcmV2KSk7Ci1kaWZm IC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8va2RmL2tkZl9lcnIuYy5ldnAta2RmIG9wZW5zc2wt MS4xLjFqL2NyeXB0by9rZGYva2RmX2Vyci5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2tk Zi9rZGZfZXJyLmMuZXZwLWtkZgkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAot KysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9rZGYva2RmX2Vyci5jCTIwMjEtMDMtMDMgMTQ6MDg6 MDIuNDkyMjk0ODU2ICswMTAwCi1AQCAtMSw2ICsxLDYgQEAKLSAvKgotICAqIEdlbmVyYXRlZCBi eSB1dGlsL21rZXJyLnBsIERPIE5PVCBFRElUCi0tICogQ29weXJpZ2h0IDE5OTUtMjAxOCBUaGUg T3BlblNTTCBQcm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCi0rICogQ29weXJp Z2h0IDE5OTUtMjAxOSBUaGUgT3BlblNTTCBQcm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVz ZXJ2ZWQuCi0gICoKLSAgKiBMaWNlbnNlZCB1bmRlciB0aGUgT3BlblNTTCBsaWNlbnNlICh0aGUg IkxpY2Vuc2UiKS4gIFlvdSBtYXkgbm90IHVzZQotICAqIHRoaXMgZmlsZSBleGNlcHQgaW4gY29t cGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiAgWW91IGNhbiBvYnRhaW4gYSBjb3B5Ci1AQCAtMTQs NiArMTQsMjkgQEAKLSAjaWZuZGVmIE9QRU5TU0xfTk9fRVJSCi0gCi0gc3RhdGljIGNvbnN0IEVS Ul9TVFJJTkdfREFUQSBLREZfc3RyX2Z1bmN0c1tdID0gewotKyAgICB7RVJSX1BBQ0soRVJSX0xJ Ql9LREYsIEtERl9GX0hLREZfRVhUUkFDVCwgMCksICJIS0RGX0V4dHJhY3QifSwKLSsgICAge0VS Ul9QQUNLKEVSUl9MSUJfS0RGLCBLREZfRl9LREZfSEtERl9ERVJJVkUsIDApLCAia2RmX2hrZGZf ZGVyaXZlIn0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfS0RGX0hLREZfTkVX LCAwKSwgImtkZl9oa2RmX25ldyJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtERl9G X0tERl9IS0RGX1NJWkUsIDApLCAia2RmX2hrZGZfc2l6ZSJ9LAotKyAgICB7RVJSX1BBQ0soRVJS X0xJQl9LREYsIEtERl9GX0tERl9NRDJDVFJMLCAwKSwgImtkZl9tZDJjdHJsIn0sCi0rICAgIHtF UlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfS0RGX1BCS0RGMl9DVFJMX1NUUiwgMCksCi0rICAg ICAia2RmX3Bia2RmMl9jdHJsX3N0ciJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtE Rl9GX0tERl9QQktERjJfREVSSVZFLCAwKSwgImtkZl9wYmtkZjJfZGVyaXZlIn0sCi0rICAgIHtF UlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfS0RGX1BCS0RGMl9ORVcsIDApLCAia2RmX3Bia2Rm Ml9uZXcifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCBLREZfRl9LREZfU0NSWVBUX0NU UkxfU1RSLCAwKSwKLSsgICAgICJrZGZfc2NyeXB0X2N0cmxfc3RyIn0sCi0rICAgIHtFUlJfUEFD SyhFUlJfTElCX0tERiwgS0RGX0ZfS0RGX1NDUllQVF9DVFJMX1VJTlQzMiwgMCksCi0rICAgICAi a2RmX3NjcnlwdF9jdHJsX3VpbnQzMiJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtE Rl9GX0tERl9TQ1JZUFRfQ1RSTF9VSU5UNjQsIDApLAotKyAgICAgImtkZl9zY3J5cHRfY3RybF91 aW50NjQifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCBLREZfRl9LREZfU0NSWVBUX0RF UklWRSwgMCksICJrZGZfc2NyeXB0X2Rlcml2ZSJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9L REYsIEtERl9GX0tERl9TQ1JZUFRfTkVXLCAwKSwgImtkZl9zY3J5cHRfbmV3In0sCi0rICAgIHtF UlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfS0RGX1RMUzFfUFJGX0NUUkxfU1RSLCAwKSwKLSsg ICAgICJrZGZfdGxzMV9wcmZfY3RybF9zdHIifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RG LCBLREZfRl9LREZfVExTMV9QUkZfREVSSVZFLCAwKSwKLSsgICAgICJrZGZfdGxzMV9wcmZfZGVy aXZlIn0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfS0RGX1RMUzFfUFJGX05F VywgMCksICJrZGZfdGxzMV9wcmZfbmV3In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwg S0RGX0ZfUEJLREYyX1NFVF9NRU1CVUYsIDApLCAicGJrZGYyX3NldF9tZW1idWYifSwKLSAgICAg e0VSUl9QQUNLKEVSUl9MSUJfS0RGLCBLREZfRl9QS0VZX0hLREZfQ1RSTF9TVFIsIDApLCAicGtl eV9oa2RmX2N0cmxfc3RyIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfUEtF WV9IS0RGX0RFUklWRSwgMCksICJwa2V5X2hrZGZfZGVyaXZlIn0sCi0gICAgIHtFUlJfUEFDSyhF UlJfTElCX0tERiwgS0RGX0ZfUEtFWV9IS0RGX0lOSVQsIDApLCAicGtleV9oa2RmX2luaXQifSwK LUBAIC0zMCw2ICs1Myw3IEBAIHN0YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEgS0RGX3N0cl9m dW4KLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCBLREZfRl9QS0VZX1RMUzFfUFJGX0RFUklW RSwgMCksCi0gICAgICAicGtleV90bHMxX3ByZl9kZXJpdmUifSwKLSAgICAge0VSUl9QQUNLKEVS Ul9MSUJfS0RGLCBLREZfRl9QS0VZX1RMUzFfUFJGX0lOSVQsIDApLCAicGtleV90bHMxX3ByZl9p bml0In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfU0NSWVBUX1NFVF9NRU1C VUYsIDApLCAic2NyeXB0X3NldF9tZW1idWYifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RG LCBLREZfRl9UTFMxX1BSRl9BTEcsIDApLCAidGxzMV9wcmZfYWxnIn0sCi0gICAgIHswLCBOVUxM fQotIH07Ci1AQCAtNTAsNiArNzQsOCBAQCBzdGF0aWMgY29uc3QgRVJSX1NUUklOR19EQVRBIEtE Rl9zdHJfcmVhCi0gICAgICJ1bmtub3duIHBhcmFtZXRlciB0eXBlIn0sCi0gICAgIHtFUlJfUEFD SyhFUlJfTElCX0tERiwgMCwgS0RGX1JfVkFMVUVfRVJST1IpLCAidmFsdWUgZXJyb3IifSwKLSAg ICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCAwLCBLREZfUl9WQUxVRV9NSVNTSU5HKSwgInZhbHVl IG1pc3NpbmcifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCAwLCBLREZfUl9XUk9OR19P VVRQVVRfQlVGRkVSX1NJWkUpLAotKyAgICAid3Jvbmcgb3V0cHV0IGJ1ZmZlciBzaXplIn0sCi0g ICAgIHswLCBOVUxMfQotIH07Ci0gCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8va2Rm L2tkZl9sb2NhbC5oLmV2cC1rZGYgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2tkZi9rZGZfbG9jYWwu aAotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9rZGYva2RmX2xvY2FsLmguZXZwLWtkZgkyMDIx LTAzLTAzIDE0OjA4OjAyLjQ5MjI5NDg1NiArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0 by9rZGYva2RmX2xvY2FsLmgJMjAyMS0wMy0wMyAxNDowODowMi40OTIyOTQ4NTYgKzAxMDAKLUBA IC0wLDAgKzEsMjIgQEAKLSsvKgotKyAqIENvcHlyaWdodCAyMDE4IFRoZSBPcGVuU1NMIFByb2pl Y3QgQXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMTgs IE9yYWNsZSBhbmQvb3IgaXRzIGFmZmlsaWF0ZXMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotKyAq Ci0rICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlIDIuMCAodGhlICJMaWNlbnNl IikuICBZb3UgbWF5IG5vdCB1c2UKLSsgKiB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ug d2l0aCB0aGUgTGljZW5zZS4gIFlvdSBjYW4gb2J0YWluIGEgY29weQotKyAqIGluIHRoZSBmaWxl IExJQ0VOU0UgaW4gdGhlIHNvdXJjZSBkaXN0cmlidXRpb24gb3IgYXQKLSsgKiBodHRwczovL3d3 dy5vcGVuc3NsLm9yZy9zb3VyY2UvbGljZW5zZS5odG1sCi0rICovCi0rCi0raW50IGNhbGxfY3Ry bChpbnQgKCpjdHJsKShFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsIHZhX2xpc3QgYXJncyks Ci0rICAgICAgICAgICAgICBFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsIC4uLik7Ci0raW50 IGtkZl9zdHIyY3RybChFVlBfS0RGX0lNUEwgKmltcGwsCi0rICAgICAgICAgICAgICAgICBpbnQg KCpjdHJsKShFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsIHZhX2xpc3QgYXJncyksCi0rICAg ICAgICAgICAgICAgICBpbnQgY21kLCBjb25zdCBjaGFyICpzdHIpOwotK2ludCBrZGZfaGV4MmN0 cmwoRVZQX0tERl9JTVBMICppbXBsLAotKyAgICAgICAgICAgICAgICAgaW50ICgqY3RybCkoRVZQ X0tERl9JTVBMICppbXBsLCBpbnQgY21kLCB2YV9saXN0IGFyZ3MpLAotKyAgICAgICAgICAgICAg ICAgaW50IGNtZCwgY29uc3QgY2hhciAqaGV4KTsKLStpbnQga2RmX21kMmN0cmwoRVZQX0tERl9J TVBMICppbXBsLAotKyAgICAgICAgICAgICAgICBpbnQgKCpjdHJsKShFVlBfS0RGX0lNUEwgKmlt cGwsIGludCBjbWQsIHZhX2xpc3QgYXJncyksCi0rICAgICAgICAgICAgICAgIGludCBjbWQsIGNv bnN0IGNoYXIgKm1kX25hbWUpOwotKwotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2tk Zi9rZGZfdXRpbC5jLmV2cC1rZGYgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2tkZi9rZGZfdXRpbC5j Ci0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2tkZi9rZGZfdXRpbC5jLmV2cC1rZGYJMjAyMS0w My0wMyAxNDowODowMi40OTIyOTQ4NTYgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8v a2RmL2tkZl91dGlsLmMJMjAyMS0wMy0wMyAxNDowODowMi40OTIyOTQ4NTYgKzAxMDAKLUBAIC0w LDAgKzEsNzMgQEAKLSsvKgotKyAqIENvcHlyaWdodCAyMDE4IFRoZSBPcGVuU1NMIFByb2plY3Qg QXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMTgsIE9y YWNsZSBhbmQvb3IgaXRzIGFmZmlsaWF0ZXMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotKyAqCi0r ICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlIDIuMCAodGhlICJMaWNlbnNlIiku ICBZb3UgbWF5IG5vdCB1c2UKLSsgKiB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0 aCB0aGUgTGljZW5zZS4gIFlvdSBjYW4gb2J0YWluIGEgY29weQotKyAqIGluIHRoZSBmaWxlIExJ Q0VOU0UgaW4gdGhlIHNvdXJjZSBkaXN0cmlidXRpb24gb3IgYXQKLSsgKiBodHRwczovL3d3dy5v cGVuc3NsLm9yZy9zb3VyY2UvbGljZW5zZS5odG1sCi0rICovCi0rCi0rI2luY2x1ZGUgPHN0cmlu Zy5oPgotKyNpbmNsdWRlIDxzdGRhcmcuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9rZGYuaD4KLSsj aW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLSsjaW5jbHVkZSAiaW50ZXJuYWwvY3J5cHRsaWIuaCIK LSsjaW5jbHVkZSAiY3J5cHRvL2V2cC5oIgotKyNpbmNsdWRlICJpbnRlcm5hbC9udW1iZXJzLmgi Ci0rI2luY2x1ZGUgImtkZl9sb2NhbC5oIgotKwotK2ludCBjYWxsX2N0cmwoaW50ICgqY3RybCko RVZQX0tERl9JTVBMICppbXBsLCBpbnQgY21kLCB2YV9saXN0IGFyZ3MpLAotKyAgICAgICAgICAg ICAgRVZQX0tERl9JTVBMICppbXBsLCBpbnQgY21kLCAuLi4pCi0rewotKyAgICBpbnQgcmV0Owot KyAgICB2YV9saXN0IGFyZ3M7Ci0rCi0rICAgIHZhX3N0YXJ0KGFyZ3MsIGNtZCk7Ci0rICAgIHJl dCA9IGN0cmwoaW1wbCwgY21kLCBhcmdzKTsKLSsgICAgdmFfZW5kKGFyZ3MpOwotKwotKyAgICBy ZXR1cm4gcmV0OwotK30KLSsKLSsvKiBVdGlsaXR5IGZ1bmN0aW9ucyB0byBzZW5kIGEgc3RyaW5n IG9yIGhleCBzdHJpbmcgdG8gYSBjdHJsICovCi0rCi0raW50IGtkZl9zdHIyY3RybChFVlBfS0RG X0lNUEwgKmltcGwsCi0rICAgICAgICAgICAgICAgICBpbnQgKCpjdHJsKShFVlBfS0RGX0lNUEwg KmltcGwsIGludCBjbWQsIHZhX2xpc3QgYXJncyksCi0rICAgICAgICAgICAgICAgICBpbnQgY21k LCBjb25zdCBjaGFyICpzdHIpCi0rewotKyAgICByZXR1cm4gY2FsbF9jdHJsKGN0cmwsIGltcGws IGNtZCwgKGNvbnN0IHVuc2lnbmVkIGNoYXIgKilzdHIsIHN0cmxlbihzdHIpKTsKLSt9Ci0rCi0r aW50IGtkZl9oZXgyY3RybChFVlBfS0RGX0lNUEwgKmltcGwsCi0rICAgICAgICAgICAgICAgICBp bnQgKCpjdHJsKShFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsIHZhX2xpc3QgYXJncyksCi0r ICAgICAgICAgICAgICAgICBpbnQgY21kLCBjb25zdCBjaGFyICpoZXgpCi0rewotKyAgICB1bnNp Z25lZCBjaGFyICpiaW47Ci0rICAgIGxvbmcgYmlubGVuOwotKyAgICBpbnQgcmV0ID0gLTE7Ci0r Ci0rICAgIGJpbiA9IE9QRU5TU0xfaGV4c3RyMmJ1ZihoZXgsICZiaW5sZW4pOwotKyAgICBpZiAo YmluID09IE5VTEwpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgaWYgKGJpbmxlbiA8PSBJ TlRfTUFYKQotKyAgICAgICAgcmV0ID0gY2FsbF9jdHJsKGN0cmwsIGltcGwsIGNtZCwgYmluLCAo c2l6ZV90KWJpbmxlbik7Ci0rICAgIE9QRU5TU0xfZnJlZShiaW4pOwotKyAgICByZXR1cm4gcmV0 OwotK30KLSsKLSsvKiBQYXNzIGEgbWVzc2FnZSBkaWdlc3QgdG8gYSBjdHJsICovCi0raW50IGtk Zl9tZDJjdHJsKEVWUF9LREZfSU1QTCAqaW1wbCwKLSsgICAgICAgICAgICAgICAgaW50ICgqY3Ry bCkoRVZQX0tERl9JTVBMICppbXBsLCBpbnQgY21kLCB2YV9saXN0IGFyZ3MpLAotKyAgICAgICAg ICAgICAgICBpbnQgY21kLCBjb25zdCBjaGFyICptZF9uYW1lKQotK3sKLSsgICAgY29uc3QgRVZQ X01EICptZDsKLSsKLSsgICAgaWYgKG1kX25hbWUgPT0gTlVMTCB8fCAobWQgPSBFVlBfZ2V0X2Rp Z2VzdGJ5bmFtZShtZF9uYW1lKSkgPT0gTlVMTCkgewotKyAgICAgICAgS0RGZXJyKEtERl9GX0tE Rl9NRDJDVFJMLCBLREZfUl9JTlZBTElEX0RJR0VTVCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsg ICAgfQotKyAgICByZXR1cm4gY2FsbF9jdHJsKGN0cmwsIGltcGwsIGNtZCwgbWQpOwotK30KLSsK LWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9rZGYvcGJrZGYyLmMuZXZwLWtkZiBvcGVu c3NsLTEuMS4xai9jcnlwdG8va2RmL3Bia2RmMi5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRv L2tkZi9wYmtkZjIuYy5ldnAta2RmCTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDkyMjk0ODU2ICswMTAw Ci0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2tkZi9wYmtkZjIuYwkyMDIxLTAzLTAzIDE0OjA4 OjAyLjQ5MjI5NDg1NiArMDEwMAotQEAgLTAsMCArMSwyNjQgQEAKLSsvKgotKyAqIENvcHlyaWdo dCAyMDE4IFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4K LSsgKgotKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSAyLjAgKHRoZSAiTGlj ZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCi0rICogdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlh bmNlIHdpdGggdGhlIExpY2Vuc2UuICBZb3UgY2FuIG9idGFpbiBhIGNvcHkKLSsgKiBpbiB0aGUg ZmlsZSBMSUNFTlNFIGluIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9yIGF0Ci0rICogaHR0cHM6 Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2UuaHRtbAotKyAqLwotKwotKyNpbmNsdWRl IDxzdGRsaWIuaD4KLSsjaW5jbHVkZSA8c3RkYXJnLmg+Ci0rI2luY2x1ZGUgPHN0cmluZy5oPgot KyNpbmNsdWRlIDxvcGVuc3NsL2htYWMuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLSsj aW5jbHVkZSA8b3BlbnNzbC9rZGYuaD4KLSsjaW5jbHVkZSAiaW50ZXJuYWwvY3J5cHRsaWIuaCIK LSsjaW5jbHVkZSAiY3J5cHRvL2V2cC5oIgotKyNpbmNsdWRlICJrZGZfbG9jYWwuaCIKLSsKLStz dGF0aWMgdm9pZCBrZGZfcGJrZGYyX3Jlc2V0KEVWUF9LREZfSU1QTCAqaW1wbCk7Ci0rc3RhdGlj IHZvaWQga2RmX3Bia2RmMl9pbml0KEVWUF9LREZfSU1QTCAqaW1wbCk7Ci0rc3RhdGljIGludCBw a2NzNV9wYmtkZjJfYWxnKGNvbnN0IGNoYXIgKnBhc3MsIHNpemVfdCBwYXNzbGVuLAotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpzYWx0LCBpbnQgc2Fs dGxlbiwgaW50IGl0ZXIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVWUF9N RCAqZGlnZXN0LCB1bnNpZ25lZCBjaGFyICprZXksCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHNpemVfdCBrZXlsZW4pOwotKwotK3N0cnVjdCBldnBfa2RmX2ltcGxfc3QgewotKyAgICB1 bnNpZ25lZCBjaGFyICpwYXNzOwotKyAgICBzaXplX3QgcGFzc19sZW47Ci0rICAgIHVuc2lnbmVk IGNoYXIgKnNhbHQ7Ci0rICAgIHNpemVfdCBzYWx0X2xlbjsKLSsgICAgaW50IGl0ZXI7Ci0rICAg IGNvbnN0IEVWUF9NRCAqbWQ7Ci0rfTsKLSsKLStzdGF0aWMgRVZQX0tERl9JTVBMICprZGZfcGJr ZGYyX25ldyh2b2lkKQotK3sKLSsgICAgRVZQX0tERl9JTVBMICppbXBsOwotKwotKyAgICBpbXBs ID0gT1BFTlNTTF96YWxsb2Moc2l6ZW9mKCppbXBsKSk7Ci0rICAgIGlmIChpbXBsID09IE5VTEwp IHsKLSsgICAgICAgIEtERmVycihLREZfRl9LREZfUEJLREYyX05FVywgRVJSX1JfTUFMTE9DX0ZB SUxVUkUpOwotKyAgICAgICAgcmV0dXJuIE5VTEw7Ci0rICAgIH0KLSsgICAga2RmX3Bia2RmMl9p bml0KGltcGwpOwotKyAgICByZXR1cm4gaW1wbDsKLSt9Ci0rCi0rc3RhdGljIHZvaWQga2RmX3Bi a2RmMl9mcmVlKEVWUF9LREZfSU1QTCAqaW1wbCkKLSt7Ci0rICAgIGtkZl9wYmtkZjJfcmVzZXQo aW1wbCk7Ci0rICAgIE9QRU5TU0xfZnJlZShpbXBsKTsKLSt9Ci0rCi0rc3RhdGljIHZvaWQga2Rm X3Bia2RmMl9yZXNldChFVlBfS0RGX0lNUEwgKmltcGwpCi0rewotKyAgICBPUEVOU1NMX2ZyZWUo aW1wbC0+c2FsdCk7Ci0rICAgIE9QRU5TU0xfY2xlYXJfZnJlZShpbXBsLT5wYXNzLCBpbXBsLT5w YXNzX2xlbik7Ci0rICAgIG1lbXNldChpbXBsLCAwLCBzaXplb2YoKmltcGwpKTsKLSsgICAga2Rm X3Bia2RmMl9pbml0KGltcGwpOwotK30KLSsKLStzdGF0aWMgdm9pZCBrZGZfcGJrZGYyX2luaXQo RVZQX0tERl9JTVBMICppbXBsKQotK3sKLSsgICAgaW1wbC0+aXRlciA9IFBLQ1M1X0RFRkFVTFRf SVRFUjsKLSsgICAgaW1wbC0+bWQgPSBFVlBfc2hhMSgpOwotK30KLSsKLStzdGF0aWMgaW50IHBi a2RmMl9zZXRfbWVtYnVmKHVuc2lnbmVkIGNoYXIgKipidWZmZXIsIHNpemVfdCAqYnVmbGVuLAot KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqbmV3X2J1 ZmZlciwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBuZXdfYnVmbGVuKQot K3sKLSsgICAgaWYgKG5ld19idWZmZXIgPT0gTlVMTCkKLSsgICAgICAgIHJldHVybiAxOwotKwot KyAgICBPUEVOU1NMX2NsZWFyX2ZyZWUoKmJ1ZmZlciwgKmJ1Zmxlbik7Ci0rCi0rICAgIGlmIChu ZXdfYnVmbGVuID4gMCkgewotKyAgICAgICAgKmJ1ZmZlciA9IE9QRU5TU0xfbWVtZHVwKG5ld19i dWZmZXIsIG5ld19idWZsZW4pOwotKyAgICB9IGVsc2UgewotKyAgICAgICAgKmJ1ZmZlciA9IE9Q RU5TU0xfbWFsbG9jKDEpOwotKyAgICB9Ci0rICAgIGlmICgqYnVmZmVyID09IE5VTEwpIHsKLSsg ICAgICAgIEtERmVycihLREZfRl9QQktERjJfU0VUX01FTUJVRiwgRVJSX1JfTUFMTE9DX0ZBSUxV UkUpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsKLSsgICAgKmJ1ZmxlbiA9IG5ld19i dWZsZW47Ci0rICAgIHJldHVybiAxOwotK30KLSsKLStzdGF0aWMgaW50IGtkZl9wYmtkZjJfY3Ry bChFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsIHZhX2xpc3QgYXJncykKLSt7Ci0rICAgIGlu dCBpdGVyOwotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpwOwotKyAgICBzaXplX3QgbGVuOwot KyAgICBjb25zdCBFVlBfTUQgKm1kOwotKwotKyAgICBzd2l0Y2ggKGNtZCkgewotKyAgICBjYXNl IEVWUF9LREZfQ1RSTF9TRVRfUEFTUzoKLSsgICAgICAgIHAgPSB2YV9hcmcoYXJncywgY29uc3Qg dW5zaWduZWQgY2hhciAqKTsKLSsgICAgICAgIGxlbiA9IHZhX2FyZyhhcmdzLCBzaXplX3QpOwot KyAgICAgICAgcmV0dXJuIHBia2RmMl9zZXRfbWVtYnVmKCZpbXBsLT5wYXNzLCAmaW1wbC0+cGFz c19sZW4sIHAsIGxlbik7Ci0rCi0rICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9TQUxUOgotKyAg ICAgICAgcCA9IHZhX2FyZyhhcmdzLCBjb25zdCB1bnNpZ25lZCBjaGFyICopOwotKyAgICAgICAg bGVuID0gdmFfYXJnKGFyZ3MsIHNpemVfdCk7Ci0rICAgICAgICByZXR1cm4gcGJrZGYyX3NldF9t ZW1idWYoJmltcGwtPnNhbHQsICZpbXBsLT5zYWx0X2xlbiwgcCwgbGVuKTsKLSsKLSsgICAgY2Fz ZSBFVlBfS0RGX0NUUkxfU0VUX0lURVI6Ci0rICAgICAgICBpdGVyID0gdmFfYXJnKGFyZ3MsIGlu dCk7Ci0rICAgICAgICBpZiAoaXRlciA8IDEpCi0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0rCi0r ICAgICAgICBpbXBsLT5pdGVyID0gaXRlcjsKLSsgICAgICAgIHJldHVybiAxOwotKwotKyAgICBj YXNlIEVWUF9LREZfQ1RSTF9TRVRfTUQ6Ci0rICAgICAgICBtZCA9IHZhX2FyZyhhcmdzLCBjb25z dCBFVlBfTUQgKik7Ci0rICAgICAgICBpZiAobWQgPT0gTlVMTCkKLSsgICAgICAgICAgICByZXR1 cm4gMDsKLSsKLSsgICAgICAgIGltcGwtPm1kID0gbWQ7Ci0rICAgICAgICByZXR1cm4gMTsKLSsK LSsgICAgZGVmYXVsdDoKLSsgICAgICAgIHJldHVybiAtMjsKLSsgICAgfQotK30KLSsKLStzdGF0 aWMgaW50IGtkZl9wYmtkZjJfY3RybF9zdHIoRVZQX0tERl9JTVBMICppbXBsLCBjb25zdCBjaGFy ICp0eXBlLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1 ZSkKLSt7Ci0rICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0Zf S0RGX1BCS0RGMl9DVFJMX1NUUiwgS0RGX1JfVkFMVUVfTUlTU0lORyk7Ci0rICAgICAgICByZXR1 cm4gMDsKLSsgICAgfQotKwotKyAgICBpZiAoc3RyY21wKHR5cGUsICJwYXNzIikgPT0gMCkKLSsg ICAgICAgIHJldHVybiBrZGZfc3RyMmN0cmwoaW1wbCwga2RmX3Bia2RmMl9jdHJsLCBFVlBfS0RG X0NUUkxfU0VUX1BBU1MsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlKTsKLSsK LSsgICAgaWYgKHN0cmNtcCh0eXBlLCAiaGV4cGFzcyIpID09IDApCi0rICAgICAgICByZXR1cm4g a2RmX2hleDJjdHJsKGltcGwsIGtkZl9wYmtkZjJfY3RybCwgRVZQX0tERl9DVFJMX1NFVF9QQVNT LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSk7Ci0rCi0rICAgIGlmIChzdHJj bXAodHlwZSwgInNhbHQiKSA9PSAwKQotKyAgICAgICAgcmV0dXJuIGtkZl9zdHIyY3RybChpbXBs LCBrZGZfcGJrZGYyX2N0cmwsIEVWUF9LREZfQ1RSTF9TRVRfU0FMVCwKLSsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdmFsdWUpOwotKwotKyAgICBpZiAoc3RyY21wKHR5cGUsICJoZXhzYWx0 IikgPT0gMCkKLSsgICAgICAgIHJldHVybiBrZGZfaGV4MmN0cmwoaW1wbCwga2RmX3Bia2RmMl9j dHJsLCBFVlBfS0RGX0NUUkxfU0VUX1NBTFQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg IHZhbHVlKTsKLSsKLSsgICAgaWYgKHN0cmNtcCh0eXBlLCAiaXRlciIpID09IDApCi0rICAgICAg ICByZXR1cm4gY2FsbF9jdHJsKGtkZl9wYmtkZjJfY3RybCwgaW1wbCwgRVZQX0tERl9DVFJMX1NF VF9JVEVSLAotKyAgICAgICAgICAgICAgICAgICAgICAgICBhdG9pKHZhbHVlKSk7Ci0rCi0rICAg IGlmIChzdHJjbXAodHlwZSwgImRpZ2VzdCIpID09IDApCi0rICAgICAgICByZXR1cm4ga2RmX21k MmN0cmwoaW1wbCwga2RmX3Bia2RmMl9jdHJsLCBFVlBfS0RGX0NUUkxfU0VUX01ELCB2YWx1ZSk7 Ci0rCi0rICAgIHJldHVybiAtMjsKLSt9Ci0rCi0rc3RhdGljIGludCBrZGZfcGJrZGYyX2Rlcml2 ZShFVlBfS0RGX0lNUEwgKmltcGwsIHVuc2lnbmVkIGNoYXIgKmtleSwKLSsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHNpemVfdCBrZXlsZW4pCi0rewotKyAgICBpZiAoaW1wbC0+cGFzcyA9 PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfS0RGX1BCS0RGMl9ERVJJVkUsIEtERl9S X01JU1NJTkdfUEFTUyk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKwotKyAgICBpZiAo aW1wbC0+c2FsdCA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfS0RGX1BCS0RGMl9E RVJJVkUsIEtERl9SX01JU1NJTkdfU0FMVCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQot KwotKyAgICByZXR1cm4gcGtjczVfcGJrZGYyX2FsZygoY2hhciAqKWltcGwtPnBhc3MsIGltcGwt PnBhc3NfbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbXBsLT5zYWx0LCBpbXBs LT5zYWx0X2xlbiwgaW1wbC0+aXRlciwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW1w bC0+bWQsIGtleSwga2V5bGVuKTsKLSt9Ci0rCi0rY29uc3QgRVZQX0tERl9NRVRIT0QgcGJrZGYy X2tkZl9tZXRoID0gewotKyAgICBFVlBfS0RGX1BCS0RGMiwKLSsgICAga2RmX3Bia2RmMl9uZXcs Ci0rICAgIGtkZl9wYmtkZjJfZnJlZSwKLSsgICAga2RmX3Bia2RmMl9yZXNldCwKLSsgICAga2Rm X3Bia2RmMl9jdHJsLAotKyAgICBrZGZfcGJrZGYyX2N0cmxfc3RyLAotKyAgICBOVUxMLAotKyAg ICBrZGZfcGJrZGYyX2Rlcml2ZQotK307Ci0rCi0rLyoKLSsgKiBUaGlzIGlzIGFuIGltcGxlbWVu dGF0aW9uIG9mIFBLQ1MjNSB2Mi4wIHBhc3N3b3JkIGJhc2VkIGVuY3J5cHRpb24ga2V5Ci0rICog ZGVyaXZhdGlvbiBmdW5jdGlvbiBQQktERjIuIFNIQTEgdmVyc2lvbiB2ZXJpZmllZCBhZ2FpbnN0 IHRlc3QgdmVjdG9ycwotKyAqIHBvc3RlZCBieSBQZXRlciBHdXRtYW5uIHRvIHRoZSBQS0NTLVRO RyBtYWlsaW5nIGxpc3QuCi0rICovCi0rCi0rc3RhdGljIGludCBwa2NzNV9wYmtkZjJfYWxnKGNv bnN0IGNoYXIgKnBhc3MsIHNpemVfdCBwYXNzbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpzYWx0LCBpbnQgc2FsdGxlbiwgaW50IGl0ZXIsCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVWUF9NRCAqZGlnZXN0LCB1bnNpZ25l ZCBjaGFyICprZXksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBrZXlsZW4p Ci0rewotKyAgICBpbnQgcmV0ID0gMDsKLSsgICAgdW5zaWduZWQgY2hhciBkaWd0bXBbRVZQX01B WF9NRF9TSVpFXSwgKnAsIGl0bXBbNF07Ci0rICAgIGludCBjcGxlbiwgaiwgaywgdGtleWxlbiwg bWRsZW47Ci0rICAgIHVuc2lnbmVkIGxvbmcgaSA9IDE7Ci0rICAgIEhNQUNfQ1RYICpoY3R4X3Rw bCA9IE5VTEwsICpoY3R4ID0gTlVMTDsKLSsKLSsgICAgbWRsZW4gPSBFVlBfTURfc2l6ZShkaWdl c3QpOwotKyAgICBpZiAobWRsZW4gPCAwKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIGhj dHhfdHBsID0gSE1BQ19DVFhfbmV3KCk7Ci0rICAgIGlmIChoY3R4X3RwbCA9PSBOVUxMKQotKyAg ICAgICAgcmV0dXJuIDA7Ci0rICAgIHAgPSBrZXk7Ci0rICAgIHRrZXlsZW4gPSBrZXlsZW47Ci0r ICAgIGlmICghSE1BQ19Jbml0X2V4KGhjdHhfdHBsLCBwYXNzLCBwYXNzbGVuLCBkaWdlc3QsIE5V TEwpKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGhjdHggPSBITUFDX0NUWF9uZXcoKTsKLSsg ICAgaWYgKGhjdHggPT0gTlVMTCkKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB3aGlsZSAodGtl eWxlbikgewotKyAgICAgICAgaWYgKHRrZXlsZW4gPiBtZGxlbikKLSsgICAgICAgICAgICBjcGxl biA9IG1kbGVuOwotKyAgICAgICAgZWxzZQotKyAgICAgICAgICAgIGNwbGVuID0gdGtleWxlbjsK LSsgICAgICAgIC8qCi0rICAgICAgICAgKiBXZSBhcmUgdW5saWtlbHkgdG8gZXZlciB1c2UgbW9y ZSB0aGFuIDI1NiBibG9ja3MgKDUxMjAgYml0cyEpIGJ1dAotKyAgICAgICAgICoganVzdCBpbiBj YXNlLi4uCi0rICAgICAgICAgKi8KLSsgICAgICAgIGl0bXBbMF0gPSAodW5zaWduZWQgY2hhciko KGkgPj4gMjQpICYgMHhmZik7Ci0rICAgICAgICBpdG1wWzFdID0gKHVuc2lnbmVkIGNoYXIpKChp ID4+IDE2KSAmIDB4ZmYpOwotKyAgICAgICAgaXRtcFsyXSA9ICh1bnNpZ25lZCBjaGFyKSgoaSA+ PiA4KSAmIDB4ZmYpOwotKyAgICAgICAgaXRtcFszXSA9ICh1bnNpZ25lZCBjaGFyKShpICYgMHhm Zik7Ci0rICAgICAgICBpZiAoIUhNQUNfQ1RYX2NvcHkoaGN0eCwgaGN0eF90cGwpKQotKyAgICAg ICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgaWYgKCFITUFDX1VwZGF0ZShoY3R4LCBzYWx0LCBz YWx0bGVuKQotKyAgICAgICAgICAgICAgICB8fCAhSE1BQ19VcGRhdGUoaGN0eCwgaXRtcCwgNCkK LSsgICAgICAgICAgICAgICAgfHwgIUhNQUNfRmluYWwoaGN0eCwgZGlndG1wLCBOVUxMKSkKLSsg ICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgIG1lbWNweShwLCBkaWd0bXAsIGNwbGVuKTsK LSsgICAgICAgIGZvciAoaiA9IDE7IGogPCBpdGVyOyBqKyspIHsKLSsgICAgICAgICAgICBpZiAo IUhNQUNfQ1RYX2NvcHkoaGN0eCwgaGN0eF90cGwpKQotKyAgICAgICAgICAgICAgICBnb3RvIGVy cjsKLSsgICAgICAgICAgICBpZiAoIUhNQUNfVXBkYXRlKGhjdHgsIGRpZ3RtcCwgbWRsZW4pCi0r ICAgICAgICAgICAgICAgICAgICB8fCAhSE1BQ19GaW5hbChoY3R4LCBkaWd0bXAsIE5VTEwpKQot KyAgICAgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgICAgICBmb3IgKGsgPSAwOyBrIDwg Y3BsZW47IGsrKykKLSsgICAgICAgICAgICAgICAgcFtrXSBePSBkaWd0bXBba107Ci0rICAgICAg ICB9Ci0rICAgICAgICB0a2V5bGVuIC09IGNwbGVuOwotKyAgICAgICAgaSsrOwotKyAgICAgICAg cCArPSBjcGxlbjsKLSsgICAgfQotKyAgICByZXQgPSAxOwotKwotK2VycjoKLSsgICAgSE1BQ19D VFhfZnJlZShoY3R4KTsKLSsgICAgSE1BQ19DVFhfZnJlZShoY3R4X3RwbCk7Ci0rICAgIHJldHVy biByZXQ7Ci0rfQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2tkZi9zY3J5cHQuYy5l dnAta2RmIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9rZGYvc2NyeXB0LmMKLS0tLSBvcGVuc3NsLTEu MS4xai9jcnlwdG8va2RmL3NjcnlwdC5jLmV2cC1rZGYJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAw MDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8va2RmL3NjcnlwdC5jCTIwMjEt MDMtMDMgMTQ6MDg6MDIuNDkyMjk0ODU2ICswMTAwCi1AQCAtOCwyNSArOCwzNSBAQAotICAqLwot IAotICNpbmNsdWRlIDxzdGRsaWIuaD4KLSsjaW5jbHVkZSA8c3RkYXJnLmg+Ci0gI2luY2x1ZGUg PHN0cmluZy5oPgotICNpbmNsdWRlIDxvcGVuc3NsL2htYWMuaD4KLSAjaW5jbHVkZSA8b3BlbnNz bC9rZGYuaD4KLSAjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLS0jaW5jbHVkZSAiaW50ZXJuYWwv Y3J5cHRsaWIuaCIKLSsjaW5jbHVkZSA8b3BlbnNzbC9lcnIuaD4KLSAjaW5jbHVkZSAiY3J5cHRv L2V2cC5oIgotKyNpbmNsdWRlICJpbnRlcm5hbC9udW1iZXJzLmgiCi0rI2luY2x1ZGUgImtkZl9s b2NhbC5oIgotIAotICNpZm5kZWYgT1BFTlNTTF9OT19TQ1JZUFQKLSAKLStzdGF0aWMgdm9pZCBr ZGZfc2NyeXB0X3Jlc2V0KEVWUF9LREZfSU1QTCAqaW1wbCk7Ci0rc3RhdGljIHZvaWQga2RmX3Nj cnlwdF9pbml0KEVWUF9LREZfSU1QTCAqaW1wbCk7Ci0gc3RhdGljIGludCBhdG91NjQoY29uc3Qg Y2hhciAqbnB0ciwgdWludDY0X3QgKnJlc3VsdCk7Ci0rc3RhdGljIGludCBzY3J5cHRfYWxnKGNv bnN0IGNoYXIgKnBhc3MsIHNpemVfdCBwYXNzbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICBj b25zdCB1bnNpZ25lZCBjaGFyICpzYWx0LCBzaXplX3Qgc2FsdGxlbiwKLSsgICAgICAgICAgICAg ICAgICAgICAgdWludDY0X3QgTiwgdWludDY0X3QgciwgdWludDY0X3QgcCwgdWludDY0X3QgbWF4 bWVtLAotKyAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICprZXksIHNpemVfdCBr ZXlsZW4pOwotIAotLXR5cGVkZWYgc3RydWN0IHsKLStzdHJ1Y3QgZXZwX2tkZl9pbXBsX3N0IHsK LSAgICAgdW5zaWduZWQgY2hhciAqcGFzczsKLSAgICAgc2l6ZV90IHBhc3NfbGVuOwotICAgICB1 bnNpZ25lZCBjaGFyICpzYWx0OwotICAgICBzaXplX3Qgc2FsdF9sZW47Ci0tICAgIHVpbnQ2NF90 IE4sIHIsIHA7Ci0rICAgIHVpbnQ2NF90IE47Ci0rICAgIHVpbnQzMl90IHIsIHA7Ci0gICAgIHVp bnQ2NF90IG1heG1lbV9ieXRlczsKLS19IFNDUllQVF9QS0VZX0NUWDsKLSt9OwotIAotIC8qIEN1 c3RvbSB1aW50NjRfdCBwYXJzZXIgc2luY2Ugd2UgZG8gbm90IGhhdmUgc3RydG91bGwgKi8KLSBz dGF0aWMgaW50IGF0b3U2NChjb25zdCBjaGFyICpucHRyLCB1aW50NjRfdCAqcmVzdWx0KQotQEAg LTUzLDUxICs2Myw1MyBAQCBzdGF0aWMgaW50IGF0b3U2NChjb25zdCBjaGFyICpucHRyLCB1aW50 Ci0gICAgIHJldHVybiAxOwotIH0KLSAKLS1zdGF0aWMgaW50IHBrZXlfc2NyeXB0X2luaXQoRVZQ X1BLRVlfQ1RYICpjdHgpCi0rc3RhdGljIEVWUF9LREZfSU1QTCAqa2RmX3NjcnlwdF9uZXcodm9p ZCkKLSB7Ci0tICAgIFNDUllQVF9QS0VZX0NUWCAqa2N0eDsKLSsgICAgRVZQX0tERl9JTVBMICpp bXBsOwotIAotLSAgICBrY3R4ID0gT1BFTlNTTF96YWxsb2Moc2l6ZW9mKCprY3R4KSk7Ci0tICAg IGlmIChrY3R4ID09IE5VTEwpIHsKLS0gICAgICAgIEtERmVycihLREZfRl9QS0VZX1NDUllQVF9J TklULCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7Ci0tICAgICAgICByZXR1cm4gMDsKLSsgICAgaW1w bCA9IE9QRU5TU0xfemFsbG9jKHNpemVvZigqaW1wbCkpOwotKyAgICBpZiAoaW1wbCA9PSBOVUxM KSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfS0RGX1NDUllQVF9ORVcsIEVSUl9SX01BTExPQ19G QUlMVVJFKTsKLSsgICAgICAgIHJldHVybiBOVUxMOwotICAgICB9Ci0rICAgIGtkZl9zY3J5cHRf aW5pdChpbXBsKTsKLSsgICAgcmV0dXJuIGltcGw7Ci0rfQotIAotLSAgICAvKiBEZWZhdWx0IHZh bHVlcyBhcmUgdGhlIG1vc3QgY29uc2VydmF0aXZlIHJlY29tbWVuZGF0aW9uIGdpdmVuIGluIHRo ZQotLSAgICAgKiBvcmlnaW5hbCBwYXBlciBvZiBDLiBQZXJjaXZhbC4gRGVyaXZhdGlvbiB1c2Vz IHJvdWdobHkgMSBHaUIgb2YgbWVtb3J5Ci0tICAgICAqIGZvciB0aGlzIHBhcmFtZXRlciBjaG9p Y2UgKGFwcHJveC4gMTI4ICogciAqIChOICsgcCkgYnl0ZXMpLgotLSAgICAgKi8KLS0gICAga2N0 eC0+TiA9IDEgPDwgMjA7Ci0tICAgIGtjdHgtPnIgPSA4OwotLSAgICBrY3R4LT5wID0gMTsKLS0g ICAga2N0eC0+bWF4bWVtX2J5dGVzID0gMTAyNSAqIDEwMjQgKiAxMDI0OwotLQotLSAgICBjdHgt PmRhdGEgPSBrY3R4OwotLQotLSAgICByZXR1cm4gMTsKLStzdGF0aWMgdm9pZCBrZGZfc2NyeXB0 X2ZyZWUoRVZQX0tERl9JTVBMICppbXBsKQotK3sKLSsgICAga2RmX3NjcnlwdF9yZXNldChpbXBs KTsKLSsgICAgT1BFTlNTTF9mcmVlKGltcGwpOwotIH0KLSAKLS1zdGF0aWMgdm9pZCBwa2V5X3Nj cnlwdF9jbGVhbnVwKEVWUF9QS0VZX0NUWCAqY3R4KQotK3N0YXRpYyB2b2lkIGtkZl9zY3J5cHRf cmVzZXQoRVZQX0tERl9JTVBMICppbXBsKQotIHsKLS0gICAgU0NSWVBUX1BLRVlfQ1RYICprY3R4 ID0gY3R4LT5kYXRhOwotKyAgICBPUEVOU1NMX2ZyZWUoaW1wbC0+c2FsdCk7Ci0rICAgIE9QRU5T U0xfY2xlYXJfZnJlZShpbXBsLT5wYXNzLCBpbXBsLT5wYXNzX2xlbik7Ci0rICAgIG1lbXNldChp bXBsLCAwLCBzaXplb2YoKmltcGwpKTsKLSsgICAga2RmX3NjcnlwdF9pbml0KGltcGwpOwotK30K LSAKLS0gICAgT1BFTlNTTF9jbGVhcl9mcmVlKGtjdHgtPnNhbHQsIGtjdHgtPnNhbHRfbGVuKTsK LS0gICAgT1BFTlNTTF9jbGVhcl9mcmVlKGtjdHgtPnBhc3MsIGtjdHgtPnBhc3NfbGVuKTsKLS0g ICAgT1BFTlNTTF9mcmVlKGtjdHgpOwotK3N0YXRpYyB2b2lkIGtkZl9zY3J5cHRfaW5pdChFVlBf S0RGX0lNUEwgKmltcGwpCi0rewotKyAgICAvKiBEZWZhdWx0IHZhbHVlcyBhcmUgdGhlIG1vc3Qg Y29uc2VydmF0aXZlIHJlY29tbWVuZGF0aW9uIGdpdmVuIGluIHRoZQotKyAgICAgKiBvcmlnaW5h bCBwYXBlciBvZiBDLiBQZXJjaXZhbC4gRGVyaXZhdGlvbiB1c2VzIHJvdWdobHkgMSBHaUIgb2Yg bWVtb3J5Ci0rICAgICAqIGZvciB0aGlzIHBhcmFtZXRlciBjaG9pY2UgKGFwcHJveC4gMTI4ICog ciAqIE4gKiBwIGJ5dGVzKS4KLSsgICAgICovCi0rICAgIGltcGwtPk4gPSAxIDw8IDIwOwotKyAg ICBpbXBsLT5yID0gODsKLSsgICAgaW1wbC0+cCA9IDE7Ci0rICAgIGltcGwtPm1heG1lbV9ieXRl cyA9IDEwMjUgKiAxMDI0ICogMTAyNDsKLSB9Ci0gCi0tc3RhdGljIGludCBwa2V5X3NjcnlwdF9z ZXRfbWVtYnVmKHVuc2lnbmVkIGNoYXIgKipidWZmZXIsIHNpemVfdCAqYnVmbGVuLAotLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpuZXdfYnVm ZmVyLAotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnQgbmV3X2J1 ZmxlbikKLStzdGF0aWMgaW50IHNjcnlwdF9zZXRfbWVtYnVmKHVuc2lnbmVkIGNoYXIgKipidWZm ZXIsIHNpemVfdCAqYnVmbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg dW5zaWduZWQgY2hhciAqbmV3X2J1ZmZlciwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHNpemVfdCBuZXdfYnVmbGVuKQotIHsKLSAgICAgaWYgKG5ld19idWZmZXIgPT0gTlVMTCkKLSAg ICAgICAgIHJldHVybiAxOwotIAotLSAgICBpZiAobmV3X2J1ZmxlbiA8IDApCi0tICAgICAgICBy ZXR1cm4gMDsKLS0KLS0gICAgaWYgKCpidWZmZXIgIT0gTlVMTCkKLS0gICAgICAgIE9QRU5TU0xf Y2xlYXJfZnJlZSgqYnVmZmVyLCAqYnVmbGVuKTsKLSsgICAgT1BFTlNTTF9jbGVhcl9mcmVlKCpi dWZmZXIsICpidWZsZW4pOwotIAotICAgICBpZiAobmV3X2J1ZmxlbiA+IDApIHsKLSAgICAgICAg ICpidWZmZXIgPSBPUEVOU1NMX21lbWR1cChuZXdfYnVmZmVyLCBuZXdfYnVmbGVuKTsKLUBAIC0x MDUsNyArMTE3LDcgQEAgc3RhdGljIGludCBwa2V5X3NjcnlwdF9zZXRfbWVtYnVmKHVuc2lnbgot ICAgICAgICAgKmJ1ZmZlciA9IE9QRU5TU0xfbWFsbG9jKDEpOwotICAgICB9Ci0gICAgIGlmICgq YnVmZmVyID09IE5VTEwpIHsKLS0gICAgICAgIEtERmVycihLREZfRl9QS0VZX1NDUllQVF9TRVRf TUVNQlVGLCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfU0NS WVBUX1NFVF9NRU1CVUYsIEVSUl9SX01BTExPQ19GQUlMVVJFKTsKLSAgICAgICAgIHJldHVybiAw OwotICAgICB9Ci0gCi1AQCAtMTE4LDE0OSArMTMwLDM3OCBAQCBzdGF0aWMgaW50IGlzX3Bvd2Vy X29mX3R3byh1aW50NjRfdCB2YWx1Ci0gICAgIHJldHVybiAodmFsdWUgIT0gMCkgJiYgKCh2YWx1 ZSAmICh2YWx1ZSAtIDEpKSA9PSAwKTsKLSB9Ci0gCi0tc3RhdGljIGludCBwa2V5X3NjcnlwdF9j dHJsKEVWUF9QS0VZX0NUWCAqY3R4LCBpbnQgdHlwZSwgaW50IHAxLCB2b2lkICpwMikKLStzdGF0 aWMgaW50IGtkZl9zY3J5cHRfY3RybChFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsIHZhX2xp c3QgYXJncykKLSB7Ci0tICAgIFNDUllQVF9QS0VZX0NUWCAqa2N0eCA9IGN0eC0+ZGF0YTsKLSAg ICAgdWludDY0X3QgdTY0X3ZhbHVlOwotKyAgICB1aW50MzJfdCB2YWx1ZTsKLSsgICAgY29uc3Qg dW5zaWduZWQgY2hhciAqcDsKLSsgICAgc2l6ZV90IGxlbjsKLSsKLSsgICAgc3dpdGNoIChjbWQp IHsKLSsgICAgY2FzZSBFVlBfS0RGX0NUUkxfU0VUX1BBU1M6Ci0rICAgICAgICBwID0gdmFfYXJn KGFyZ3MsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKik7Ci0rICAgICAgICBsZW4gPSB2YV9hcmcoYXJn cywgc2l6ZV90KTsKLSsgICAgICAgIHJldHVybiBzY3J5cHRfc2V0X21lbWJ1ZigmaW1wbC0+cGFz cywgJmltcGwtPnBhc3NfbGVuLCBwLCBsZW4pOwotKwotKyAgICBjYXNlIEVWUF9LREZfQ1RSTF9T RVRfU0FMVDoKLSsgICAgICAgIHAgPSB2YV9hcmcoYXJncywgY29uc3QgdW5zaWduZWQgY2hhciAq KTsKLSsgICAgICAgIGxlbiA9IHZhX2FyZyhhcmdzLCBzaXplX3QpOwotKyAgICAgICAgcmV0dXJu IHNjcnlwdF9zZXRfbWVtYnVmKCZpbXBsLT5zYWx0LCAmaW1wbC0+c2FsdF9sZW4sIHAsIGxlbik7 Ci0gCi0tICAgIHN3aXRjaCAodHlwZSkgewotLSAgICBjYXNlIEVWUF9QS0VZX0NUUkxfUEFTUzoK LS0gICAgICAgIHJldHVybiBwa2V5X3NjcnlwdF9zZXRfbWVtYnVmKCZrY3R4LT5wYXNzLCAma2N0 eC0+cGFzc19sZW4sIHAyLCBwMSk7Ci0tCi0tICAgIGNhc2UgRVZQX1BLRVlfQ1RSTF9TQ1JZUFRf U0FMVDoKLS0gICAgICAgIHJldHVybiBwa2V5X3NjcnlwdF9zZXRfbWVtYnVmKCZrY3R4LT5zYWx0 LCAma2N0eC0+c2FsdF9sZW4sIHAyLCBwMSk7Ci0tCi0tICAgIGNhc2UgRVZQX1BLRVlfQ1RSTF9T Q1JZUFRfTjoKLS0gICAgICAgIHU2NF92YWx1ZSA9ICooKHVpbnQ2NF90ICopcDIpOwotKyAgICBj YXNlIEVWUF9LREZfQ1RSTF9TRVRfU0NSWVBUX046Ci0rICAgICAgICB1NjRfdmFsdWUgPSB2YV9h cmcoYXJncywgdWludDY0X3QpOwotICAgICAgICAgaWYgKCh1NjRfdmFsdWUgPD0gMSkgfHwgIWlz X3Bvd2VyX29mX3R3byh1NjRfdmFsdWUpKQotICAgICAgICAgICAgIHJldHVybiAwOwotLSAgICAg ICAga2N0eC0+TiA9IHU2NF92YWx1ZTsKLSsKLSsgICAgICAgIGltcGwtPk4gPSB1NjRfdmFsdWU7 Ci0gICAgICAgICByZXR1cm4gMTsKLSAKLS0gICAgY2FzZSBFVlBfUEtFWV9DVFJMX1NDUllQVF9S OgotLSAgICAgICAgdTY0X3ZhbHVlID0gKigodWludDY0X3QgKilwMik7Ci0tICAgICAgICBpZiAo dTY0X3ZhbHVlIDwgMSkKLSsgICAgY2FzZSBFVlBfS0RGX0NUUkxfU0VUX1NDUllQVF9SOgotKyAg ICAgICAgdmFsdWUgPSB2YV9hcmcoYXJncywgdWludDMyX3QpOwotKyAgICAgICAgaWYgKHZhbHVl IDwgMSkKLSAgICAgICAgICAgICByZXR1cm4gMDsKLS0gICAgICAgIGtjdHgtPnIgPSB1NjRfdmFs dWU7Ci0rCi0rICAgICAgICBpbXBsLT5yID0gdmFsdWU7Ci0gICAgICAgICByZXR1cm4gMTsKLSAK LS0gICAgY2FzZSBFVlBfUEtFWV9DVFJMX1NDUllQVF9QOgotLSAgICAgICAgdTY0X3ZhbHVlID0g KigodWludDY0X3QgKilwMik7Ci0tICAgICAgICBpZiAodTY0X3ZhbHVlIDwgMSkKLSsgICAgY2Fz ZSBFVlBfS0RGX0NUUkxfU0VUX1NDUllQVF9QOgotKyAgICAgICAgdmFsdWUgPSB2YV9hcmcoYXJn cywgdWludDMyX3QpOwotKyAgICAgICAgaWYgKHZhbHVlIDwgMSkKLSAgICAgICAgICAgICByZXR1 cm4gMDsKLS0gICAgICAgIGtjdHgtPnAgPSB1NjRfdmFsdWU7Ci0rCi0rICAgICAgICBpbXBsLT5w ID0gdmFsdWU7Ci0gICAgICAgICByZXR1cm4gMTsKLSAKLS0gICAgY2FzZSBFVlBfUEtFWV9DVFJM X1NDUllQVF9NQVhNRU1fQllURVM6Ci0tICAgICAgICB1NjRfdmFsdWUgPSAqKCh1aW50NjRfdCAq KXAyKTsKLSsgICAgY2FzZSBFVlBfS0RGX0NUUkxfU0VUX01BWE1FTV9CWVRFUzoKLSsgICAgICAg IHU2NF92YWx1ZSA9IHZhX2FyZyhhcmdzLCB1aW50NjRfdCk7Ci0gICAgICAgICBpZiAodTY0X3Zh bHVlIDwgMSkKLSAgICAgICAgICAgICByZXR1cm4gMDsKLS0gICAgICAgIGtjdHgtPm1heG1lbV9i eXRlcyA9IHU2NF92YWx1ZTsKLSsKLSsgICAgICAgIGltcGwtPm1heG1lbV9ieXRlcyA9IHU2NF92 YWx1ZTsKLSAgICAgICAgIHJldHVybiAxOwotIAotICAgICBkZWZhdWx0OgotICAgICAgICAgcmV0 dXJuIC0yOwotKyAgICB9Ci0rfQotIAotK3N0YXRpYyBpbnQga2RmX3NjcnlwdF9jdHJsX3VpbnQz MihFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IGNoYXIgKnZhbHVlKQotK3sKLSsgICAgaW50IGludF92YWx1ZSA9IGF0 b2kodmFsdWUpOwotKwotKyAgICBpZiAoaW50X3ZhbHVlIDwgMCB8fCAodWludDY0X3QpaW50X3Zh bHVlID4gVUlOVDMyX01BWCkgewotKyAgICAgICAgS0RGZXJyKEtERl9GX0tERl9TQ1JZUFRfQ1RS TF9VSU5UMzIsIEtERl9SX1ZBTFVFX0VSUk9SKTsKLSsgICAgICAgIHJldHVybiAwOwotICAgICB9 Ci0rICAgIHJldHVybiBjYWxsX2N0cmwoa2RmX3NjcnlwdF9jdHJsLCBpbXBsLCBjbWQsICh1aW50 MzJfdClpbnRfdmFsdWUpOwotIH0KLSAKLS1zdGF0aWMgaW50IHBrZXlfc2NyeXB0X2N0cmxfdWlu dDY0KEVWUF9QS0VZX0NUWCAqY3R4LCBpbnQgdHlwZSwKLS0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnZhbHVlKQotK3N0YXRpYyBpbnQga2RmX3NjcnlwdF9j dHJsX3VpbnQ2NChFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnZhbHVlKQotIHsKLS0gICAgdWludDY0X3Qg aW50X3ZhbHVlOwotKyAgICB1aW50NjRfdCB1NjRfdmFsdWU7Ci0gCi0tICAgIGlmICghYXRvdTY0 KHZhbHVlLCAmaW50X3ZhbHVlKSkgewotLSAgICAgICAgS0RGZXJyKEtERl9GX1BLRVlfU0NSWVBU X0NUUkxfVUlOVDY0LCBLREZfUl9WQUxVRV9FUlJPUik7Ci0rICAgIGlmICghYXRvdTY0KHZhbHVl LCAmdTY0X3ZhbHVlKSkgewotKyAgICAgICAgS0RGZXJyKEtERl9GX0tERl9TQ1JZUFRfQ1RSTF9V SU5UNjQsIEtERl9SX1ZBTFVFX0VSUk9SKTsKLSAgICAgICAgIHJldHVybiAwOwotICAgICB9Ci0t ICAgIHJldHVybiBwa2V5X3NjcnlwdF9jdHJsKGN0eCwgdHlwZSwgMCwgJmludF92YWx1ZSk7Ci0r ICAgIHJldHVybiBjYWxsX2N0cmwoa2RmX3NjcnlwdF9jdHJsLCBpbXBsLCBjbWQsIHU2NF92YWx1 ZSk7Ci0gfQotIAotLXN0YXRpYyBpbnQgcGtleV9zY3J5cHRfY3RybF9zdHIoRVZQX1BLRVlfQ1RY ICpjdHgsIGNvbnN0IGNoYXIgKnR5cGUsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBjaGFyICp2YWx1ZSkKLStzdGF0aWMgaW50IGtkZl9zY3J5cHRfY3RybF9zdHIoRVZQ X0tERl9JTVBMICppbXBsLCBjb25zdCBjaGFyICp0eXBlLAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSkKLSB7Ci0gICAgIGlmICh2YWx1ZSA9PSBOVUxM KSB7Ci0tICAgICAgICBLREZlcnIoS0RGX0ZfUEtFWV9TQ1JZUFRfQ1RSTF9TVFIsIEtERl9SX1ZB TFVFX01JU1NJTkcpOwotKyAgICAgICAgS0RGZXJyKEtERl9GX0tERl9TQ1JZUFRfQ1RSTF9TVFIs IEtERl9SX1ZBTFVFX01JU1NJTkcpOwotICAgICAgICAgcmV0dXJuIDA7Ci0gICAgIH0KLSAKLSAg ICAgaWYgKHN0cmNtcCh0eXBlLCAicGFzcyIpID09IDApCi0tICAgICAgICByZXR1cm4gRVZQX1BL RVlfQ1RYX3N0cjJjdHJsKGN0eCwgRVZQX1BLRVlfQ1RSTF9QQVNTLCB2YWx1ZSk7Ci0rICAgICAg ICByZXR1cm4ga2RmX3N0cjJjdHJsKGltcGwsIGtkZl9zY3J5cHRfY3RybCwgRVZQX0tERl9DVFJM X1NFVF9QQVNTLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSk7Ci0gCi0gICAg IGlmIChzdHJjbXAodHlwZSwgImhleHBhc3MiKSA9PSAwKQotLSAgICAgICAgcmV0dXJuIEVWUF9Q S0VZX0NUWF9oZXgyY3RybChjdHgsIEVWUF9QS0VZX0NUUkxfUEFTUywgdmFsdWUpOwotKyAgICAg ICAgcmV0dXJuIGtkZl9oZXgyY3RybChpbXBsLCBrZGZfc2NyeXB0X2N0cmwsIEVWUF9LREZfQ1RS TF9TRVRfUEFTUywKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUpOwotIAotICAg ICBpZiAoc3RyY21wKHR5cGUsICJzYWx0IikgPT0gMCkKLS0gICAgICAgIHJldHVybiBFVlBfUEtF WV9DVFhfc3RyMmN0cmwoY3R4LCBFVlBfUEtFWV9DVFJMX1NDUllQVF9TQUxULCB2YWx1ZSk7Ci0r ICAgICAgICByZXR1cm4ga2RmX3N0cjJjdHJsKGltcGwsIGtkZl9zY3J5cHRfY3RybCwgRVZQX0tE Rl9DVFJMX1NFVF9TQUxULAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSk7Ci0g Ci0gICAgIGlmIChzdHJjbXAodHlwZSwgImhleHNhbHQiKSA9PSAwKQotLSAgICAgICAgcmV0dXJu IEVWUF9QS0VZX0NUWF9oZXgyY3RybChjdHgsIEVWUF9QS0VZX0NUUkxfU0NSWVBUX1NBTFQsIHZh bHVlKTsKLSsgICAgICAgIHJldHVybiBrZGZfaGV4MmN0cmwoaW1wbCwga2RmX3NjcnlwdF9jdHJs LCBFVlBfS0RGX0NUUkxfU0VUX1NBTFQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZh bHVlKTsKLSAKLSAgICAgaWYgKHN0cmNtcCh0eXBlLCAiTiIpID09IDApCi0tICAgICAgICByZXR1 cm4gcGtleV9zY3J5cHRfY3RybF91aW50NjQoY3R4LCBFVlBfUEtFWV9DVFJMX1NDUllQVF9OLCB2 YWx1ZSk7Ci0rICAgICAgICByZXR1cm4ga2RmX3NjcnlwdF9jdHJsX3VpbnQ2NChpbXBsLCBFVlBf S0RGX0NUUkxfU0VUX1NDUllQVF9OLCB2YWx1ZSk7Ci0gCi0gICAgIGlmIChzdHJjbXAodHlwZSwg InIiKSA9PSAwKQotLSAgICAgICAgcmV0dXJuIHBrZXlfc2NyeXB0X2N0cmxfdWludDY0KGN0eCwg RVZQX1BLRVlfQ1RSTF9TQ1JZUFRfUiwgdmFsdWUpOwotKyAgICAgICAgcmV0dXJuIGtkZl9zY3J5 cHRfY3RybF91aW50MzIoaW1wbCwgRVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfUiwgdmFsdWUpOwot IAotICAgICBpZiAoc3RyY21wKHR5cGUsICJwIikgPT0gMCkKLS0gICAgICAgIHJldHVybiBwa2V5 X3NjcnlwdF9jdHJsX3VpbnQ2NChjdHgsIEVWUF9QS0VZX0NUUkxfU0NSWVBUX1AsIHZhbHVlKTsK LSsgICAgICAgIHJldHVybiBrZGZfc2NyeXB0X2N0cmxfdWludDMyKGltcGwsIEVWUF9LREZfQ1RS TF9TRVRfU0NSWVBUX1AsIHZhbHVlKTsKLSAKLSAgICAgaWYgKHN0cmNtcCh0eXBlLCAibWF4bWVt X2J5dGVzIikgPT0gMCkKLS0gICAgICAgIHJldHVybiBwa2V5X3NjcnlwdF9jdHJsX3VpbnQ2NChj dHgsIEVWUF9QS0VZX0NUUkxfU0NSWVBUX01BWE1FTV9CWVRFUywKLS0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSk7Ci0rICAgICAgICByZXR1cm4ga2RmX3Njcnlw dF9jdHJsX3VpbnQ2NChpbXBsLCBFVlBfS0RGX0NUUkxfU0VUX01BWE1FTV9CWVRFUywKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlKTsKLSAKLS0gICAgS0RGZXJy KEtERl9GX1BLRVlfU0NSWVBUX0NUUkxfU1RSLCBLREZfUl9VTktOT1dOX1BBUkFNRVRFUl9UWVBF KTsKLSAgICAgcmV0dXJuIC0yOwotIH0KLSAKLS1zdGF0aWMgaW50IHBrZXlfc2NyeXB0X2Rlcml2 ZShFVlBfUEtFWV9DVFggKmN0eCwgdW5zaWduZWQgY2hhciAqa2V5LAotLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHNpemVfdCAqa2V5bGVuKQotK3N0YXRpYyBpbnQga2RmX3NjcnlwdF9k ZXJpdmUoRVZQX0tERl9JTVBMICppbXBsLCB1bnNpZ25lZCBjaGFyICprZXksCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzaXplX3Qga2V5bGVuKQotIHsKLS0gICAgU0NSWVBUX1BLRVlf Q1RYICprY3R4ID0gY3R4LT5kYXRhOwotLQotLSAgICBpZiAoa2N0eC0+cGFzcyA9PSBOVUxMKSB7 Ci0tICAgICAgICBLREZlcnIoS0RGX0ZfUEtFWV9TQ1JZUFRfREVSSVZFLCBLREZfUl9NSVNTSU5H X1BBU1MpOwotKyAgICBpZiAoaW1wbC0+cGFzcyA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIo S0RGX0ZfS0RGX1NDUllQVF9ERVJJVkUsIEtERl9SX01JU1NJTkdfUEFTUyk7Ci0gICAgICAgICBy ZXR1cm4gMDsKLSAgICAgfQotIAotLSAgICBpZiAoa2N0eC0+c2FsdCA9PSBOVUxMKSB7Ci0tICAg ICAgICBLREZlcnIoS0RGX0ZfUEtFWV9TQ1JZUFRfREVSSVZFLCBLREZfUl9NSVNTSU5HX1NBTFQp OwotKyAgICBpZiAoaW1wbC0+c2FsdCA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0Zf S0RGX1NDUllQVF9ERVJJVkUsIEtERl9SX01JU1NJTkdfU0FMVCk7Ci0gICAgICAgICByZXR1cm4g MDsKLSAgICAgfQotIAotLSAgICByZXR1cm4gRVZQX1BCRV9zY3J5cHQoKGNoYXIgKilrY3R4LT5w YXNzLCBrY3R4LT5wYXNzX2xlbiwga2N0eC0+c2FsdCwKLS0gICAgICAgICAgICAgICAgICAgICAg ICAgIGtjdHgtPnNhbHRfbGVuLCBrY3R4LT5OLCBrY3R4LT5yLCBrY3R4LT5wLAotLSAgICAgICAg ICAgICAgICAgICAgICAgICAga2N0eC0+bWF4bWVtX2J5dGVzLCBrZXksICprZXlsZW4pOwotKyAg ICByZXR1cm4gc2NyeXB0X2FsZygoY2hhciAqKWltcGwtPnBhc3MsIGltcGwtPnBhc3NfbGVuLCBp bXBsLT5zYWx0LAotKyAgICAgICAgICAgICAgICAgICAgICBpbXBsLT5zYWx0X2xlbiwgaW1wbC0+ TiwgaW1wbC0+ciwgaW1wbC0+cCwKLSsgICAgICAgICAgICAgICAgICAgICAgaW1wbC0+bWF4bWVt X2J5dGVzLCBrZXksIGtleWxlbik7Ci0gfQotIAotLWNvbnN0IEVWUF9QS0VZX01FVEhPRCBzY3J5 cHRfcGtleV9tZXRoID0gewotLSAgICBFVlBfUEtFWV9TQ1JZUFQsCi0tICAgIDAsCi0tICAgIHBr ZXlfc2NyeXB0X2luaXQsCi0tICAgIDAsCi0tICAgIHBrZXlfc2NyeXB0X2NsZWFudXAsCi0rY29u c3QgRVZQX0tERl9NRVRIT0Qgc2NyeXB0X2tkZl9tZXRoID0gewotKyAgICBFVlBfS0RGX1NDUllQ VCwKLSsgICAga2RmX3NjcnlwdF9uZXcsCi0rICAgIGtkZl9zY3J5cHRfZnJlZSwKLSsgICAga2Rm X3NjcnlwdF9yZXNldCwKLSsgICAga2RmX3NjcnlwdF9jdHJsLAotKyAgICBrZGZfc2NyeXB0X2N0 cmxfc3RyLAotKyAgICBOVUxMLAotKyAgICBrZGZfc2NyeXB0X2Rlcml2ZQotK307Ci0gCi0tICAg IDAsIDAsCi0tICAgIDAsIDAsCi0rI2RlZmluZSBSKGEsYikgKCgoYSkgPDwgKGIpKSB8ICgoYSkg Pj4gKDMyIC0gKGIpKSkpCi0rc3RhdGljIHZvaWQgc2Fsc2EyMDhfd29yZF9zcGVjaWZpY2F0aW9u KHVpbnQzMl90IGlub3V0WzE2XSkKLSt7Ci0rICAgIGludCBpOwotKyAgICB1aW50MzJfdCB4WzE2 XTsKLSAKLS0gICAgMCwKLS0gICAgMCwKLSsgICAgbWVtY3B5KHgsIGlub3V0LCBzaXplb2YoeCkp OwotKyAgICBmb3IgKGkgPSA4OyBpID4gMDsgaSAtPSAyKSB7Ci0rICAgICAgICB4WzRdIF49IFIo eFswXSArIHhbMTJdLCA3KTsKLSsgICAgICAgIHhbOF0gXj0gUih4WzRdICsgeFswXSwgOSk7Ci0r ICAgICAgICB4WzEyXSBePSBSKHhbOF0gKyB4WzRdLCAxMyk7Ci0rICAgICAgICB4WzBdIF49IFIo eFsxMl0gKyB4WzhdLCAxOCk7Ci0rICAgICAgICB4WzldIF49IFIoeFs1XSArIHhbMV0sIDcpOwot KyAgICAgICAgeFsxM10gXj0gUih4WzldICsgeFs1XSwgOSk7Ci0rICAgICAgICB4WzFdIF49IFIo eFsxM10gKyB4WzldLCAxMyk7Ci0rICAgICAgICB4WzVdIF49IFIoeFsxXSArIHhbMTNdLCAxOCk7 Ci0rICAgICAgICB4WzE0XSBePSBSKHhbMTBdICsgeFs2XSwgNyk7Ci0rICAgICAgICB4WzJdIF49 IFIoeFsxNF0gKyB4WzEwXSwgOSk7Ci0rICAgICAgICB4WzZdIF49IFIoeFsyXSArIHhbMTRdLCAx Myk7Ci0rICAgICAgICB4WzEwXSBePSBSKHhbNl0gKyB4WzJdLCAxOCk7Ci0rICAgICAgICB4WzNd IF49IFIoeFsxNV0gKyB4WzExXSwgNyk7Ci0rICAgICAgICB4WzddIF49IFIoeFszXSArIHhbMTVd LCA5KTsKLSsgICAgICAgIHhbMTFdIF49IFIoeFs3XSArIHhbM10sIDEzKTsKLSsgICAgICAgIHhb MTVdIF49IFIoeFsxMV0gKyB4WzddLCAxOCk7Ci0rICAgICAgICB4WzFdIF49IFIoeFswXSArIHhb M10sIDcpOwotKyAgICAgICAgeFsyXSBePSBSKHhbMV0gKyB4WzBdLCA5KTsKLSsgICAgICAgIHhb M10gXj0gUih4WzJdICsgeFsxXSwgMTMpOwotKyAgICAgICAgeFswXSBePSBSKHhbM10gKyB4WzJd LCAxOCk7Ci0rICAgICAgICB4WzZdIF49IFIoeFs1XSArIHhbNF0sIDcpOwotKyAgICAgICAgeFs3 XSBePSBSKHhbNl0gKyB4WzVdLCA5KTsKLSsgICAgICAgIHhbNF0gXj0gUih4WzddICsgeFs2XSwg MTMpOwotKyAgICAgICAgeFs1XSBePSBSKHhbNF0gKyB4WzddLCAxOCk7Ci0rICAgICAgICB4WzEx XSBePSBSKHhbMTBdICsgeFs5XSwgNyk7Ci0rICAgICAgICB4WzhdIF49IFIoeFsxMV0gKyB4WzEw XSwgOSk7Ci0rICAgICAgICB4WzldIF49IFIoeFs4XSArIHhbMTFdLCAxMyk7Ci0rICAgICAgICB4 WzEwXSBePSBSKHhbOV0gKyB4WzhdLCAxOCk7Ci0rICAgICAgICB4WzEyXSBePSBSKHhbMTVdICsg eFsxNF0sIDcpOwotKyAgICAgICAgeFsxM10gXj0gUih4WzEyXSArIHhbMTVdLCA5KTsKLSsgICAg ICAgIHhbMTRdIF49IFIoeFsxM10gKyB4WzEyXSwgMTMpOwotKyAgICAgICAgeFsxNV0gXj0gUih4 WzE0XSArIHhbMTNdLCAxOCk7Ci0rICAgIH0KLSsgICAgZm9yIChpID0gMDsgaSA8IDE2OyArK2kp Ci0rICAgICAgICBpbm91dFtpXSArPSB4W2ldOwotKyAgICBPUEVOU1NMX2NsZWFuc2UoeCwgc2l6 ZW9mKHgpKTsKLSt9Ci0gCi0tICAgIDAsCi0tICAgIDAsCi0rc3RhdGljIHZvaWQgc2NyeXB0Qmxv Y2tNaXgodWludDMyX3QgKkJfLCB1aW50MzJfdCAqQiwgdWludDY0X3QgcikKLSt7Ci0rICAgIHVp bnQ2NF90IGksIGo7Ci0rICAgIHVpbnQzMl90IFhbMTZdLCAqcEI7Ci0gCi0tICAgIDAsIDAsCi0r ICAgIG1lbWNweShYLCBCICsgKHIgKiAyIC0gMSkgKiAxNiwgc2l6ZW9mKFgpKTsKLSsgICAgcEIg PSBCOwotKyAgICBmb3IgKGkgPSAwOyBpIDwgciAqIDI7IGkrKykgewotKyAgICAgICAgZm9yIChq ID0gMDsgaiA8IDE2OyBqKyspCi0rICAgICAgICAgICAgWFtqXSBePSAqcEIrKzsKLSsgICAgICAg IHNhbHNhMjA4X3dvcmRfc3BlY2lmaWNhdGlvbihYKTsKLSsgICAgICAgIG1lbWNweShCXyArIChp IC8gMiArIChpICYgMSkgKiByKSAqIDE2LCBYLCBzaXplb2YoWCkpOwotKyAgICB9Ci0rICAgIE9Q RU5TU0xfY2xlYW5zZShYLCBzaXplb2YoWCkpOwotK30KLSAKLS0gICAgMCwgMCwgMCwgMCwKLStz dGF0aWMgdm9pZCBzY3J5cHRST01peCh1bnNpZ25lZCBjaGFyICpCLCB1aW50NjRfdCByLCB1aW50 NjRfdCBOLAotKyAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90ICpYLCB1aW50MzJfdCAq VCwgdWludDMyX3QgKlYpCi0rewotKyAgICB1bnNpZ25lZCBjaGFyICpwQjsKLSsgICAgdWludDMy X3QgKnBWOwotKyAgICB1aW50NjRfdCBpLCBrOwotKwotKyAgICAvKiBDb252ZXJ0IGZyb20gbGl0 dGxlIGVuZGlhbiBpbnB1dCAqLwotKyAgICBmb3IgKHBWID0gViwgaSA9IDAsIHBCID0gQjsgaSA8 IDMyICogcjsgaSsrLCBwVisrKSB7Ci0rICAgICAgICAqcFYgPSAqcEIrKzsKLSsgICAgICAgICpw ViB8PSAqcEIrKyA8PCA4OwotKyAgICAgICAgKnBWIHw9ICpwQisrIDw8IDE2OwotKyAgICAgICAg KnBWIHw9ICh1aW50MzJfdCkqcEIrKyA8PCAyNDsKLSsgICAgfQotIAotLSAgICAwLCAwLAotKyAg ICBmb3IgKGkgPSAxOyBpIDwgTjsgaSsrLCBwViArPSAzMiAqIHIpCi0rICAgICAgICBzY3J5cHRC bG9ja01peChwViwgcFYgLSAzMiAqIHIsIHIpOwotIAotLSAgICAwLCAwLAotKyAgICBzY3J5cHRC bG9ja01peChYLCBWICsgKE4gLSAxKSAqIDMyICogciwgcik7Ci0gCi0tICAgIDAsCi0tICAgIHBr ZXlfc2NyeXB0X2Rlcml2ZSwKLS0gICAgcGtleV9zY3J5cHRfY3RybCwKLS0gICAgcGtleV9zY3J5 cHRfY3RybF9zdHIKLS19OwotKyAgICBmb3IgKGkgPSAwOyBpIDwgTjsgaSsrKSB7Ci0rICAgICAg ICB1aW50MzJfdCBqOwotKyAgICAgICAgaiA9IFhbMTYgKiAoMiAqIHIgLSAxKV0gJSBOOwotKyAg ICAgICAgcFYgPSBWICsgMzIgKiByICogajsKLSsgICAgICAgIGZvciAoayA9IDA7IGsgPCAzMiAq IHI7IGsrKykKLSsgICAgICAgICAgICBUW2tdID0gWFtrXSBeICpwVisrOwotKyAgICAgICAgc2Ny eXB0QmxvY2tNaXgoWCwgVCwgcik7Ci0rICAgIH0KLSsgICAgLyogQ29udmVydCBvdXRwdXQgdG8g bGl0dGxlIGVuZGlhbiAqLwotKyAgICBmb3IgKGkgPSAwLCBwQiA9IEI7IGkgPCAzMiAqIHI7IGkr KykgewotKyAgICAgICAgdWludDMyX3QgeHRtcCA9IFhbaV07Ci0rICAgICAgICAqcEIrKyA9IHh0 bXAgJiAweGZmOwotKyAgICAgICAgKnBCKysgPSAoeHRtcCA+PiA4KSAmIDB4ZmY7Ci0rICAgICAg ICAqcEIrKyA9ICh4dG1wID4+IDE2KSAmIDB4ZmY7Ci0rICAgICAgICAqcEIrKyA9ICh4dG1wID4+ IDI0KSAmIDB4ZmY7Ci0rICAgIH0KLSt9Ci0rCi0rI2lmbmRlZiBTSVpFX01BWAotKyMgZGVmaW5l IFNJWkVfTUFYICAgICgoc2l6ZV90KS0xKQotKyNlbmRpZgotKwotKy8qCi0rICogTWF4aW11bSBw b3dlciBvZiB0d28gdGhhdCB3aWxsIGZpdCBpbiB1aW50NjRfdDogdGhpcyBzaG91bGQgd29yayBv bgotKyAqIG1vc3QgKGFsbD8pIHBsYXRmb3Jtcy4KLSsgKi8KLSsKLSsjZGVmaW5lIExPRzJfVUlO VDY0X01BWCAgICAgICAgIChzaXplb2YodWludDY0X3QpICogOCAtIDEpCi0rCi0rLyoKLSsgKiBN YXhpbXVtIHZhbHVlIG9mIHAgKiByOgotKyAqIHAgPD0gKCgyXjMyLTEpICogaExlbikgLyBNRkxl biA9PgotKyAqIHAgPD0gKCgyXjMyLTEpICogMzIpIC8gKDEyOCAqIHIpID0+Ci0rICogcCAqIHIg PD0gKDJeMzAtMSkKLSsgKi8KLSsKLSsjZGVmaW5lIFNDUllQVF9QUl9NQVggICAoKDEgPDwgMzAp IC0gMSkKLSsKLStzdGF0aWMgaW50IHNjcnlwdF9hbGcoY29uc3QgY2hhciAqcGFzcywgc2l6ZV90 IHBhc3NsZW4sCi0rICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNh bHQsIHNpemVfdCBzYWx0bGVuLAotKyAgICAgICAgICAgICAgICAgICAgICB1aW50NjRfdCBOLCB1 aW50NjRfdCByLCB1aW50NjRfdCBwLCB1aW50NjRfdCBtYXhtZW0sCi0rICAgICAgICAgICAgICAg ICAgICAgIHVuc2lnbmVkIGNoYXIgKmtleSwgc2l6ZV90IGtleWxlbikKLSt7Ci0rICAgIGludCBy diA9IDA7Ci0rICAgIHVuc2lnbmVkIGNoYXIgKkI7Ci0rICAgIHVpbnQzMl90ICpYLCAqViwgKlQ7 Ci0rICAgIHVpbnQ2NF90IGksIEJsZW4sIFZsZW47Ci0rCi0rICAgIC8qIFNhbml0eSBjaGVjayBw YXJhbWV0ZXJzICovCi0rICAgIC8qIGluaXRpYWwgY2hlY2ssIHIscCBtdXN0IGJlIG5vbiB6ZXJv LCBOID49IDIgYW5kIGEgcG93ZXIgb2YgMiAqLwotKyAgICBpZiAociA9PSAwIHx8IHAgPT0gMCB8 fCBOIDwgMiB8fCAoTiAmIChOIC0gMSkpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIC8qIENo ZWNrIHAgKiByIDwgU0NSWVBUX1BSX01BWCBhdm9pZGluZyBvdmVyZmxvdyAqLwotKyAgICBpZiAo cCA+IFNDUllQVF9QUl9NQVggLyByKSB7Ci0rICAgICAgICBFVlBlcnIoRVZQX0ZfU0NSWVBUX0FM RywgRVZQX1JfTUVNT1JZX0xJTUlUX0VYQ0VFREVEKTsKLSsgICAgICAgIHJldHVybiAwOwotKyAg ICB9Ci0rCi0rICAgIC8qCi0rICAgICAqIE5lZWQgdG8gY2hlY2sgTjogaWYgMl4oMTI4ICogciAv IDgpIG92ZXJmbG93cyBsaW1pdCB0aGlzIGlzCi0rICAgICAqIGF1dG9tYXRpY2FsbHkgc2F0aXNm aWVkIHNpbmNlIE4gPD0gVUlOVDY0X01BWC4KLSsgICAgICovCi0rCi0rICAgIGlmICgxNiAqIHIg PD0gTE9HMl9VSU5UNjRfTUFYKSB7Ci0rICAgICAgICBpZiAoTiA+PSAoKCh1aW50NjRfdCkxKSA8 PCAoMTYgKiByKSkpIHsKLSsgICAgICAgICAgICBFVlBlcnIoRVZQX0ZfU0NSWVBUX0FMRywgRVZQ X1JfTUVNT1JZX0xJTUlUX0VYQ0VFREVEKTsKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsgICAg ICAgIH0KLSsgICAgfQotKwotKyAgICAvKiBNZW1vcnkgY2hlY2tzOiBjaGVjayB0b3RhbCBhbGxv Y2F0ZWQgYnVmZmVyIHNpemUgZml0cyBpbiB1aW50NjRfdCAqLwotKwotKyAgICAvKgotKyAgICAg KiBCIHNpemUgaW4gc2VjdGlvbiA1IHN0ZXAgMS5TCi0rICAgICAqIE5vdGU6IHdlIGtub3cgcCAq IDEyOCAqIHIgPCBVSU5UNjRfTUFYIGJlY2F1c2Ugd2UgYWxyZWFkeSBjaGVja2VkCi0rICAgICAq IHAgKiByIDwgU0NSWVBUX1BSX01BWAotKyAgICAgKi8KLSsgICAgQmxlbiA9IHAgKiAxMjggKiBy OwotKyAgICAvKgotKyAgICAgKiBZZXQgd2UgcGFzcyBpdCBhcyBpbnRlZ2VyIHRvIFBLQ1M1X1BC S0RGMl9ITUFDLi4uIFtUaGlzIHdvdWxkCi0rICAgICAqIGhhdmUgdG8gYmUgcmV2aXNlZCB3aGVu L2lmIFBLQ1M1X1BCS0RGMl9ITUFDIGFjY2VwdHMgc2l6ZV90Ll0KLSsgICAgICovCi0rICAgIGlm IChCbGVuID4gSU5UX01BWCkgewotKyAgICAgICAgRVZQZXJyKEVWUF9GX1NDUllQVF9BTEcsIEVW UF9SX01FTU9SWV9MSU1JVF9FWENFRURFRCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQot KwotKyAgICAvKgotKyAgICAgKiBDaGVjayAzMiAqIHIgKiAoTiArIDIpICogc2l6ZW9mKHVpbnQz Ml90KSBmaXRzIGluIHVpbnQ2NF90Ci0rICAgICAqIFRoaXMgaXMgY29tYmluZWQgc2l6ZSBWLCBY IGFuZCBUIChzZWN0aW9uIDQpCi0rICAgICAqLwotKyAgICBpID0gVUlOVDY0X01BWCAvICgzMiAq IHNpemVvZih1aW50MzJfdCkpOwotKyAgICBpZiAoTiArIDIgPiBpIC8gcikgewotKyAgICAgICAg RVZQZXJyKEVWUF9GX1NDUllQVF9BTEcsIEVWUF9SX01FTU9SWV9MSU1JVF9FWENFRURFRCk7Ci0r ICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKyAgICBWbGVuID0gMzIgKiByICogKE4gKyAyKSAq IHNpemVvZih1aW50MzJfdCk7Ci0rCi0rICAgIC8qIGNoZWNrIHRvdGFsIGFsbG9jYXRlZCBzaXpl IGZpdHMgaW4gdWludDY0X3QgKi8KLSsgICAgaWYgKEJsZW4gPiBVSU5UNjRfTUFYIC0gVmxlbikg ewotKyAgICAgICAgRVZQZXJyKEVWUF9GX1NDUllQVF9BTEcsIEVWUF9SX01FTU9SWV9MSU1JVF9F WENFRURFRCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKwotKyAgICAvKiBDaGVjayB0 aGF0IHRoZSBtYXhpbXVtIG1lbW9yeSBkb2Vzbid0IGV4Y2VlZCBhIHNpemVfdCBsaW1pdHMgKi8K LSsgICAgaWYgKG1heG1lbSA+IFNJWkVfTUFYKQotKyAgICAgICAgbWF4bWVtID0gU0laRV9NQVg7 Ci0rCi0rICAgIGlmIChCbGVuICsgVmxlbiA+IG1heG1lbSkgewotKyAgICAgICAgRVZQZXJyKEVW UF9GX1NDUllQVF9BTEcsIEVWUF9SX01FTU9SWV9MSU1JVF9FWENFRURFRCk7Ci0rICAgICAgICBy ZXR1cm4gMDsKLSsgICAgfQotKwotKyAgICAvKiBJZiBubyBrZXkgcmV0dXJuIHRvIGluZGljYXRl IHBhcmFtZXRlcnMgYXJlIE9LICovCi0rICAgIGlmIChrZXkgPT0gTlVMTCkKLSsgICAgICAgIHJl dHVybiAxOwotKwotKyAgICBCID0gT1BFTlNTTF9tYWxsb2MoKHNpemVfdCkoQmxlbiArIFZsZW4p KTsKLSsgICAgaWYgKEIgPT0gTlVMTCkgewotKyAgICAgICAgRVZQZXJyKEVWUF9GX1NDUllQVF9B TEcsIEVSUl9SX01BTExPQ19GQUlMVVJFKTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0r ICAgIFggPSAodWludDMyX3QgKikoQiArIEJsZW4pOwotKyAgICBUID0gWCArIDMyICogcjsKLSsg ICAgViA9IFQgKyAzMiAqIHI7Ci0rICAgIGlmIChQS0NTNV9QQktERjJfSE1BQyhwYXNzLCBwYXNz bGVuLCBzYWx0LCBzYWx0bGVuLCAxLCBFVlBfc2hhMjU2KCksCi0rICAgICAgICAgICAgICAgICAg ICAgICAgICAoaW50KUJsZW4sIEIpID09IDApCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAg Zm9yIChpID0gMDsgaSA8IHA7IGkrKykKLSsgICAgICAgIHNjcnlwdFJPTWl4KEIgKyAxMjggKiBy ICogaSwgciwgTiwgWCwgVCwgVik7Ci0rCi0rICAgIGlmIChQS0NTNV9QQktERjJfSE1BQyhwYXNz LCBwYXNzbGVuLCBCLCAoaW50KUJsZW4sIDEsIEVWUF9zaGEyNTYoKSwKLSsgICAgICAgICAgICAg ICAgICAgICAgICAgIGtleWxlbiwga2V5KSA9PSAwKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAg IHJ2ID0gMTsKLSsgZXJyOgotKyAgICBpZiAocnYgPT0gMCkKLSsgICAgICAgIEVWUGVycihFVlBf Rl9TQ1JZUFRfQUxHLCBFVlBfUl9QQktERjJfRVJST1IpOwotKwotKyAgICBPUEVOU1NMX2NsZWFy X2ZyZWUoQiwgKHNpemVfdCkoQmxlbiArIFZsZW4pKTsKLSsgICAgcmV0dXJuIHJ2OwotK30KLSAK LSAjZW5kaWYKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9rZGYvdGxzMV9wcmYuYy5l dnAta2RmIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9rZGYvdGxzMV9wcmYuYwotLS0tIG9wZW5zc2wt MS4xLjFqL2NyeXB0by9rZGYvdGxzMV9wcmYuYy5ldnAta2RmCTIwMjEtMDItMTYgMTY6MjQ6MDEu MDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2tkZi90bHMxX3ByZi5j CTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDkyMjk0ODU2ICswMTAwCi1AQCAtOCwxMSArOCwxNSBAQAot ICAqLwotIAotICNpbmNsdWRlIDxzdGRpby5oPgotKyNpbmNsdWRlIDxzdGRhcmcuaD4KLSsjaW5j bHVkZSA8c3RyaW5nLmg+Ci0gI2luY2x1ZGUgImludGVybmFsL2NyeXB0bGliLmgiCi0gI2luY2x1 ZGUgPG9wZW5zc2wva2RmLmg+Ci0gI2luY2x1ZGUgPG9wZW5zc2wvZXZwLmg+Ci0gI2luY2x1ZGUg ImNyeXB0by9ldnAuaCIKLSsjaW5jbHVkZSAia2RmX2xvY2FsLmgiCi0gCi0rc3RhdGljIHZvaWQg a2RmX3RsczFfcHJmX3Jlc2V0KEVWUF9LREZfSU1QTCAqaW1wbCk7Ci0gc3RhdGljIGludCB0bHMx X3ByZl9hbGcoY29uc3QgRVZQX01EICptZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICBjb25z dCB1bnNpZ25lZCBjaGFyICpzZWMsIHNpemVfdCBzbGVuLAotICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNlZWQsIHNpemVfdCBzZWVkX2xlbiwKLUBAIC0yMCw5 ICsyNCw5IEBAIHN0YXRpYyBpbnQgdGxzMV9wcmZfYWxnKGNvbnN0IEVWUF9NRCAqbWQKLSAKLSAj ZGVmaW5lIFRMUzFfUFJGX01BWEJVRiAxMDI0Ci0gCi0tLyogVExTIEtERiBwa2V5IGNvbnRleHQg c3RydWN0dXJlICovCi0rLyogVExTIEtERiBrZGYgY29udGV4dCBzdHJ1Y3R1cmUgKi8KLSAKLS10 eXBlZGVmIHN0cnVjdCB7Ci0rc3RydWN0IGV2cF9rZGZfaW1wbF9zdCB7Ci0gICAgIC8qIERpZ2Vz dCB0byB1c2UgZm9yIFBSRiAqLwotICAgICBjb25zdCBFVlBfTUQgKm1kOwotICAgICAvKiBTZWNy ZXQgdmFsdWUgdG8gdXNlIGZvciBQUkYgKi8KLUBAIC0zMSwxNDUgKzM1LDEzNyBAQCB0eXBlZGVm IHN0cnVjdCB7Ci0gICAgIC8qIEJ1ZmZlciBvZiBjb25jYXRlbmF0ZWQgc2VlZCBkYXRhICovCi0g ICAgIHVuc2lnbmVkIGNoYXIgc2VlZFtUTFMxX1BSRl9NQVhCVUZdOwotICAgICBzaXplX3Qgc2Vl ZGxlbjsKLS19IFRMUzFfUFJGX1BLRVlfQ1RYOwotK307Ci0gCi0tc3RhdGljIGludCBwa2V5X3Rs czFfcHJmX2luaXQoRVZQX1BLRVlfQ1RYICpjdHgpCi0rc3RhdGljIEVWUF9LREZfSU1QTCAqa2Rm X3RsczFfcHJmX25ldyh2b2lkKQotIHsKLS0gICAgVExTMV9QUkZfUEtFWV9DVFggKmtjdHg7Ci0r ICAgIEVWUF9LREZfSU1QTCAqaW1wbDsKLSAKLS0gICAgaWYgKChrY3R4ID0gT1BFTlNTTF96YWxs b2Moc2l6ZW9mKCprY3R4KSkpID09IE5VTEwpIHsKLS0gICAgICAgIEtERmVycihLREZfRl9QS0VZ X1RMUzFfUFJGX0lOSVQsIEVSUl9SX01BTExPQ19GQUlMVVJFKTsKLS0gICAgICAgIHJldHVybiAw OwotLSAgICB9Ci0tICAgIGN0eC0+ZGF0YSA9IGtjdHg7Ci0rICAgIGlmICgoaW1wbCA9IE9QRU5T U0xfemFsbG9jKHNpemVvZigqaW1wbCkpKSA9PSBOVUxMKQotKyAgICAgICAgS0RGZXJyKEtERl9G X0tERl9UTFMxX1BSRl9ORVcsIEVSUl9SX01BTExPQ19GQUlMVVJFKTsKLSsgICAgcmV0dXJuIGlt cGw7Ci0rfQotIAotLSAgICByZXR1cm4gMTsKLStzdGF0aWMgdm9pZCBrZGZfdGxzMV9wcmZfZnJl ZShFVlBfS0RGX0lNUEwgKmltcGwpCi0rewotKyAgICBrZGZfdGxzMV9wcmZfcmVzZXQoaW1wbCk7 Ci0rICAgIE9QRU5TU0xfZnJlZShpbXBsKTsKLSB9Ci0gCi0tc3RhdGljIHZvaWQgcGtleV90bHMx X3ByZl9jbGVhbnVwKEVWUF9QS0VZX0NUWCAqY3R4KQotK3N0YXRpYyB2b2lkIGtkZl90bHMxX3By Zl9yZXNldChFVlBfS0RGX0lNUEwgKmltcGwpCi0gewotLSAgICBUTFMxX1BSRl9QS0VZX0NUWCAq a2N0eCA9IGN0eC0+ZGF0YTsKLS0gICAgT1BFTlNTTF9jbGVhcl9mcmVlKGtjdHgtPnNlYywga2N0 eC0+c2VjbGVuKTsKLS0gICAgT1BFTlNTTF9jbGVhbnNlKGtjdHgtPnNlZWQsIGtjdHgtPnNlZWRs ZW4pOwotLSAgICBPUEVOU1NMX2ZyZWUoa2N0eCk7Ci0rICAgIE9QRU5TU0xfY2xlYXJfZnJlZShp bXBsLT5zZWMsIGltcGwtPnNlY2xlbik7Ci0rICAgIE9QRU5TU0xfY2xlYW5zZShpbXBsLT5zZWVk LCBpbXBsLT5zZWVkbGVuKTsKLSsgICAgbWVtc2V0KGltcGwsIDAsIHNpemVvZigqaW1wbCkpOwot IH0KLSAKLS1zdGF0aWMgaW50IHBrZXlfdGxzMV9wcmZfY3RybChFVlBfUEtFWV9DVFggKmN0eCwg aW50IHR5cGUsIGludCBwMSwgdm9pZCAqcDIpCi0rc3RhdGljIGludCBrZGZfdGxzMV9wcmZfY3Ry bChFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsIHZhX2xpc3QgYXJncykKLSB7Ci0tICAgIFRM UzFfUFJGX1BLRVlfQ1RYICprY3R4ID0gY3R4LT5kYXRhOwotLSAgICBzd2l0Y2ggKHR5cGUpIHsK LS0gICAgY2FzZSBFVlBfUEtFWV9DVFJMX1RMU19NRDoKLS0gICAgICAgIGtjdHgtPm1kID0gcDI7 Ci0tICAgICAgICByZXR1cm4gMTsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcDsKLSsgICAg c2l6ZV90IGxlbjsKLSsgICAgY29uc3QgRVZQX01EICptZDsKLSAKLS0gICAgY2FzZSBFVlBfUEtF WV9DVFJMX1RMU19TRUNSRVQ6Ci0tICAgICAgICBpZiAocDEgPCAwKQotKyAgICBzd2l0Y2ggKGNt ZCkgewotKyAgICBjYXNlIEVWUF9LREZfQ1RSTF9TRVRfTUQ6Ci0rICAgICAgICBtZCA9IHZhX2Fy ZyhhcmdzLCBjb25zdCBFVlBfTUQgKik7Ci0rICAgICAgICBpZiAobWQgPT0gTlVMTCkKLSAgICAg ICAgICAgICByZXR1cm4gMDsKLS0gICAgICAgIGlmIChrY3R4LT5zZWMgIT0gTlVMTCkKLS0gICAg ICAgICAgICBPUEVOU1NMX2NsZWFyX2ZyZWUoa2N0eC0+c2VjLCBrY3R4LT5zZWNsZW4pOwotLSAg ICAgICAgT1BFTlNTTF9jbGVhbnNlKGtjdHgtPnNlZWQsIGtjdHgtPnNlZWRsZW4pOwotLSAgICAg ICAga2N0eC0+c2VlZGxlbiA9IDA7Ci0tICAgICAgICBrY3R4LT5zZWMgPSBPUEVOU1NMX21lbWR1 cChwMiwgcDEpOwotLSAgICAgICAgaWYgKGtjdHgtPnNlYyA9PSBOVUxMKQotKwotKyAgICAgICAg aW1wbC0+bWQgPSBtZDsKLSsgICAgICAgIHJldHVybiAxOwotKwotKyAgICBjYXNlIEVWUF9LREZf Q1RSTF9TRVRfVExTX1NFQ1JFVDoKLSsgICAgICAgIHAgPSB2YV9hcmcoYXJncywgY29uc3QgdW5z aWduZWQgY2hhciAqKTsKLSsgICAgICAgIGxlbiA9IHZhX2FyZyhhcmdzLCBzaXplX3QpOwotKyAg ICAgICAgT1BFTlNTTF9jbGVhcl9mcmVlKGltcGwtPnNlYywgaW1wbC0+c2VjbGVuKTsKLSsgICAg ICAgIGltcGwtPnNlYyA9IE9QRU5TU0xfbWVtZHVwKHAsIGxlbik7Ci0rICAgICAgICBpZiAoaW1w bC0+c2VjID09IE5VTEwpCi0gICAgICAgICAgICAgcmV0dXJuIDA7Ci0tICAgICAgICBrY3R4LT5z ZWNsZW4gID0gcDE7Ci0rCi0rICAgICAgICBpbXBsLT5zZWNsZW4gID0gbGVuOwotKyAgICAgICAg cmV0dXJuIDE7Ci0rCi0rICAgIGNhc2UgRVZQX0tERl9DVFJMX1JFU0VUX1RMU19TRUVEOgotKyAg ICAgICAgT1BFTlNTTF9jbGVhbnNlKGltcGwtPnNlZWQsIGltcGwtPnNlZWRsZW4pOwotKyAgICAg ICAgaW1wbC0+c2VlZGxlbiA9IDA7Ci0gICAgICAgICByZXR1cm4gMTsKLSAKLS0gICAgY2FzZSBF VlBfUEtFWV9DVFJMX1RMU19TRUVEOgotLSAgICAgICAgaWYgKHAxID09IDAgfHwgcDIgPT0gTlVM TCkKLSsgICAgY2FzZSBFVlBfS0RGX0NUUkxfQUREX1RMU19TRUVEOgotKyAgICAgICAgcCA9IHZh X2FyZyhhcmdzLCBjb25zdCB1bnNpZ25lZCBjaGFyICopOwotKyAgICAgICAgbGVuID0gdmFfYXJn KGFyZ3MsIHNpemVfdCk7Ci0rICAgICAgICBpZiAobGVuID09IDAgfHwgcCA9PSBOVUxMKQotICAg ICAgICAgICAgIHJldHVybiAxOwotLSAgICAgICAgaWYgKHAxIDwgMCB8fCBwMSA+IChpbnQpKFRM UzFfUFJGX01BWEJVRiAtIGtjdHgtPnNlZWRsZW4pKQotKwotKyAgICAgICAgaWYgKGxlbiA+IChU TFMxX1BSRl9NQVhCVUYgLSBpbXBsLT5zZWVkbGVuKSkKLSAgICAgICAgICAgICByZXR1cm4gMDsK LS0gICAgICAgIG1lbWNweShrY3R4LT5zZWVkICsga2N0eC0+c2VlZGxlbiwgcDIsIHAxKTsKLS0g ICAgICAgIGtjdHgtPnNlZWRsZW4gKz0gcDE7Ci0rCi0rICAgICAgICBtZW1jcHkoaW1wbC0+c2Vl ZCArIGltcGwtPnNlZWRsZW4sIHAsIGxlbik7Ci0rICAgICAgICBpbXBsLT5zZWVkbGVuICs9IGxl bjsKLSAgICAgICAgIHJldHVybiAxOwotIAotICAgICBkZWZhdWx0OgotICAgICAgICAgcmV0dXJu IC0yOwotLQotICAgICB9Ci0gfQotIAotLXN0YXRpYyBpbnQgcGtleV90bHMxX3ByZl9jdHJsX3N0 cihFVlBfUEtFWV9DVFggKmN0eCwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgY2hhciAqdHlwZSwgY29uc3QgY2hhciAqdmFsdWUpCi0rc3RhdGljIGludCBrZGZfdGxz MV9wcmZfY3RybF9zdHIoRVZQX0tERl9JTVBMICppbXBsLAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IGNoYXIgKnR5cGUsIGNvbnN0IGNoYXIgKnZhbHVlKQotIHsKLSAg ICAgaWYgKHZhbHVlID09IE5VTEwpIHsKLS0gICAgICAgIEtERmVycihLREZfRl9QS0VZX1RMUzFf UFJGX0NUUkxfU1RSLCBLREZfUl9WQUxVRV9NSVNTSU5HKTsKLSsgICAgICAgIEtERmVycihLREZf Rl9LREZfVExTMV9QUkZfQ1RSTF9TVFIsIEtERl9SX1ZBTFVFX01JU1NJTkcpOwotICAgICAgICAg cmV0dXJuIDA7Ci0gICAgIH0KLS0gICAgaWYgKHN0cmNtcCh0eXBlLCAibWQiKSA9PSAwKSB7Ci0t ICAgICAgICBUTFMxX1BSRl9QS0VZX0NUWCAqa2N0eCA9IGN0eC0+ZGF0YTsKLSsgICAgaWYgKHN0 cmNtcCh0eXBlLCAiZGlnZXN0IikgPT0gMCkKLSsgICAgICAgIHJldHVybiBrZGZfbWQyY3RybChp bXBsLCBrZGZfdGxzMV9wcmZfY3RybCwgRVZQX0tERl9DVFJMX1NFVF9NRCwgdmFsdWUpOwotIAot LSAgICAgICAgY29uc3QgRVZQX01EICptZCA9IEVWUF9nZXRfZGlnZXN0YnluYW1lKHZhbHVlKTsK LS0gICAgICAgIGlmIChtZCA9PSBOVUxMKSB7Ci0tICAgICAgICAgICAgS0RGZXJyKEtERl9GX1BL RVlfVExTMV9QUkZfQ1RSTF9TVFIsIEtERl9SX0lOVkFMSURfRElHRVNUKTsKLS0gICAgICAgICAg ICByZXR1cm4gMDsKLS0gICAgICAgIH0KLS0gICAgICAgIGtjdHgtPm1kID0gbWQ7Ci0tICAgICAg ICByZXR1cm4gMTsKLS0gICAgfQotICAgICBpZiAoc3RyY21wKHR5cGUsICJzZWNyZXQiKSA9PSAw KQotLSAgICAgICAgcmV0dXJuIEVWUF9QS0VZX0NUWF9zdHIyY3RybChjdHgsIEVWUF9QS0VZX0NU UkxfVExTX1NFQ1JFVCwgdmFsdWUpOwotKyAgICAgICAgcmV0dXJuIGtkZl9zdHIyY3RybChpbXBs LCBrZGZfdGxzMV9wcmZfY3RybCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVZQX0tE Rl9DVFJMX1NFVF9UTFNfU0VDUkVULCB2YWx1ZSk7Ci0rCi0gICAgIGlmIChzdHJjbXAodHlwZSwg ImhleHNlY3JldCIpID09IDApCi0tICAgICAgICByZXR1cm4gRVZQX1BLRVlfQ1RYX2hleDJjdHJs KGN0eCwgRVZQX1BLRVlfQ1RSTF9UTFNfU0VDUkVULCB2YWx1ZSk7Ci0rICAgICAgICByZXR1cm4g a2RmX2hleDJjdHJsKGltcGwsIGtkZl90bHMxX3ByZl9jdHJsLAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICBFVlBfS0RGX0NUUkxfU0VUX1RMU19TRUNSRVQsIHZhbHVlKTsKLSsKLSAgICAg aWYgKHN0cmNtcCh0eXBlLCAic2VlZCIpID09IDApCi0tICAgICAgICByZXR1cm4gRVZQX1BLRVlf Q1RYX3N0cjJjdHJsKGN0eCwgRVZQX1BLRVlfQ1RSTF9UTFNfU0VFRCwgdmFsdWUpOwotKyAgICAg ICAgcmV0dXJuIGtkZl9zdHIyY3RybChpbXBsLCBrZGZfdGxzMV9wcmZfY3RybCwgRVZQX0tERl9D VFJMX0FERF9UTFNfU0VFRCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUpOwot KwotICAgICBpZiAoc3RyY21wKHR5cGUsICJoZXhzZWVkIikgPT0gMCkKLS0gICAgICAgIHJldHVy biBFVlBfUEtFWV9DVFhfaGV4MmN0cmwoY3R4LCBFVlBfUEtFWV9DVFJMX1RMU19TRUVELCB2YWx1 ZSk7Ci0rICAgICAgICByZXR1cm4ga2RmX2hleDJjdHJsKGltcGwsIGtkZl90bHMxX3ByZl9jdHJs LCBFVlBfS0RGX0NUUkxfQUREX1RMU19TRUVELAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICB2YWx1ZSk7Ci0gCi0tICAgIEtERmVycihLREZfRl9QS0VZX1RMUzFfUFJGX0NUUkxfU1RSLCBL REZfUl9VTktOT1dOX1BBUkFNRVRFUl9UWVBFKTsKLSAgICAgcmV0dXJuIC0yOwotIH0KLSAKLS1z dGF0aWMgaW50IHBrZXlfdGxzMV9wcmZfZGVyaXZlKEVWUF9QS0VZX0NUWCAqY3R4LCB1bnNpZ25l ZCBjaGFyICprZXksCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgKmtl eWxlbikKLStzdGF0aWMgaW50IGtkZl90bHMxX3ByZl9kZXJpdmUoRVZQX0tERl9JTVBMICppbXBs LCB1bnNpZ25lZCBjaGFyICprZXksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNp emVfdCBrZXlsZW4pCi0gewotLSAgICBUTFMxX1BSRl9QS0VZX0NUWCAqa2N0eCA9IGN0eC0+ZGF0 YTsKLS0gICAgaWYgKGtjdHgtPm1kID09IE5VTEwpIHsKLS0gICAgICAgIEtERmVycihLREZfRl9Q S0VZX1RMUzFfUFJGX0RFUklWRSwgS0RGX1JfTUlTU0lOR19NRVNTQUdFX0RJR0VTVCk7Ci0rICAg IGlmIChpbXBsLT5tZCA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfS0RGX1RMUzFf UFJGX0RFUklWRSwgS0RGX1JfTUlTU0lOR19NRVNTQUdFX0RJR0VTVCk7Ci0gICAgICAgICByZXR1 cm4gMDsKLSAgICAgfQotLSAgICBpZiAoa2N0eC0+c2VjID09IE5VTEwpIHsKLS0gICAgICAgIEtE RmVycihLREZfRl9QS0VZX1RMUzFfUFJGX0RFUklWRSwgS0RGX1JfTUlTU0lOR19TRUNSRVQpOwot KyAgICBpZiAoaW1wbC0+c2VjID09IE5VTEwpIHsKLSsgICAgICAgIEtERmVycihLREZfRl9LREZf VExTMV9QUkZfREVSSVZFLCBLREZfUl9NSVNTSU5HX1NFQ1JFVCk7Ci0gICAgICAgICByZXR1cm4g MDsKLSAgICAgfQotLSAgICBpZiAoa2N0eC0+c2VlZGxlbiA9PSAwKSB7Ci0tICAgICAgICBLREZl cnIoS0RGX0ZfUEtFWV9UTFMxX1BSRl9ERVJJVkUsIEtERl9SX01JU1NJTkdfU0VFRCk7Ci0rICAg IGlmIChpbXBsLT5zZWVkbGVuID09IDApIHsKLSsgICAgICAgIEtERmVycihLREZfRl9LREZfVExT MV9QUkZfREVSSVZFLCBLREZfUl9NSVNTSU5HX1NFRUQpOwotICAgICAgICAgcmV0dXJuIDA7Ci0g ICAgIH0KLS0gICAgcmV0dXJuIHRsczFfcHJmX2FsZyhrY3R4LT5tZCwga2N0eC0+c2VjLCBrY3R4 LT5zZWNsZW4sCi0tICAgICAgICAgICAgICAgICAgICAgICAga2N0eC0+c2VlZCwga2N0eC0+c2Vl ZGxlbiwKLS0gICAgICAgICAgICAgICAgICAgICAgICBrZXksICprZXlsZW4pOwotKyAgICByZXR1 cm4gdGxzMV9wcmZfYWxnKGltcGwtPm1kLCBpbXBsLT5zZWMsIGltcGwtPnNlY2xlbiwKLSsgICAg ICAgICAgICAgICAgICAgICAgICBpbXBsLT5zZWVkLCBpbXBsLT5zZWVkbGVuLAotKyAgICAgICAg ICAgICAgICAgICAgICAgIGtleSwga2V5bGVuKTsKLSB9Ci0gCi0tY29uc3QgRVZQX1BLRVlfTUVU SE9EIHRsczFfcHJmX3BrZXlfbWV0aCA9IHsKLS0gICAgRVZQX1BLRVlfVExTMV9QUkYsCi0tICAg IDAsCi0tICAgIHBrZXlfdGxzMV9wcmZfaW5pdCwKLS0gICAgMCwKLS0gICAgcGtleV90bHMxX3By Zl9jbGVhbnVwLAotLQotLSAgICAwLCAwLAotLSAgICAwLCAwLAotLQotLSAgICAwLAotLSAgICAw LAotLQotLSAgICAwLAotLSAgICAwLAotLQotLSAgICAwLCAwLAotLQotLSAgICAwLCAwLCAwLCAw LAotLQotLSAgICAwLCAwLAotLQotLSAgICAwLCAwLAotLQotLSAgICAwLAotLSAgICBwa2V5X3Rs czFfcHJmX2Rlcml2ZSwKLS0gICAgcGtleV90bHMxX3ByZl9jdHJsLAotLSAgICBwa2V5X3RsczFf cHJmX2N0cmxfc3RyCi0rY29uc3QgRVZQX0tERl9NRVRIT0QgdGxzMV9wcmZfa2RmX21ldGggPSB7 Ci0rICAgIEVWUF9LREZfVExTMV9QUkYsCi0rICAgIGtkZl90bHMxX3ByZl9uZXcsCi0rICAgIGtk Zl90bHMxX3ByZl9mcmVlLAotKyAgICBrZGZfdGxzMV9wcmZfcmVzZXQsCi0rICAgIGtkZl90bHMx X3ByZl9jdHJsLAotKyAgICBrZGZfdGxzMV9wcmZfY3RybF9zdHIsCi0rICAgIE5VTEwsCi0rICAg IGtkZl90bHMxX3ByZl9kZXJpdmUKLSB9OwotIAotIHN0YXRpYyBpbnQgdGxzMV9wcmZfUF9oYXNo KGNvbnN0IEVWUF9NRCAqbWQsCi1AQCAtMjQ5LDEyICsyNDUsMTEgQEAgc3RhdGljIGludCB0bHMx X3ByZl9hbGcoY29uc3QgRVZQX01EICptZAotICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IHVuc2lnbmVkIGNoYXIgKnNlZWQsIHNpemVfdCBzZWVkX2xlbiwKLSAgICAgICAgICAgICAgICAg ICAgICAgICB1bnNpZ25lZCBjaGFyICpvdXQsIHNpemVfdCBvbGVuKQotIHsKLS0KLSAgICAgaWYg KEVWUF9NRF90eXBlKG1kKSA9PSBOSURfbWQ1X3NoYTEpIHsKLSAgICAgICAgIHNpemVfdCBpOwot ICAgICAgICAgdW5zaWduZWQgY2hhciAqdG1wOwotICAgICAgICAgaWYgKCF0bHMxX3ByZl9QX2hh c2goRVZQX21kNSgpLCBzZWMsIHNsZW4vMiArIChzbGVuICYgMSksCi0tICAgICAgICAgICAgICAg ICAgICAgICAgIHNlZWQsIHNlZWRfbGVuLCBvdXQsIG9sZW4pKQotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2VlZCwgc2VlZF9sZW4sIG91dCwgb2xlbikpCi0gICAgICAgICAgICAgcmV0 dXJuIDA7Ci0gCi0gICAgICAgICBpZiAoKHRtcCA9IE9QRU5TU0xfbWFsbG9jKG9sZW4pKSA9PSBO VUxMKSB7Ci1AQCAtMjYyLDcgKzI1Nyw3IEBAIHN0YXRpYyBpbnQgdGxzMV9wcmZfYWxnKGNvbnN0 IEVWUF9NRCAqbWQKLSAgICAgICAgICAgICByZXR1cm4gMDsKLSAgICAgICAgIH0KLSAgICAgICAg IGlmICghdGxzMV9wcmZfUF9oYXNoKEVWUF9zaGExKCksIHNlYyArIHNsZW4vMiwgc2xlbi8yICsg KHNsZW4gJiAxKSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgc2VlZCwgc2VlZF9sZW4sIHRt cCwgb2xlbikpIHsKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlZWQsIHNlZWRfbGVu LCB0bXAsIG9sZW4pKSB7Ci0gICAgICAgICAgICAgT1BFTlNTTF9jbGVhcl9mcmVlKHRtcCwgb2xl bik7Ci0gICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICB9Ci1kaWZmIC11cCBvcGVuc3Ns LTEuMS4xai9kb2MvbWFuMy9FVlBfS0RGX0NUWC5wb2QuZXZwLWtkZiBvcGVuc3NsLTEuMS4xai9k b2MvbWFuMy9FVlBfS0RGX0NUWC5wb2QKLS0tLSBvcGVuc3NsLTEuMS4xai9kb2MvbWFuMy9FVlBf S0RGX0NUWC5wb2QuZXZwLWtkZgkyMDIxLTAzLTAzIDE0OjA4OjAyLjQ5MjI5NDg1NiArMDEwMAot KysrIG9wZW5zc2wtMS4xLjFqL2RvYy9tYW4zL0VWUF9LREZfQ1RYLnBvZAkyMDIxLTAzLTAzIDE0 OjA4OjAyLjQ5MjI5NDg1NiArMDEwMAotQEAgLTAsMCArMSwyMTcgQEAKLSs9cG9kCi0rCi0rPWhl YWQxIE5BTUUKLSsKLStFVlBfS0RGX0NUWCwgRVZQX0tERl9DVFhfbmV3X2lkLCBFVlBfS0RGX0NU WF9mcmVlLCBFVlBfS0RGX3Jlc2V0LAotK0VWUF9LREZfY3RybCwgRVZQX0tERl92Y3RybCwgRVZQ X0tERl9jdHJsX3N0ciwgRVZQX0tERl9zaXplLAotK0VWUF9LREZfZGVyaXZlIC0gRVZQIEtERiBy b3V0aW5lcwotKwotKz1oZWFkMSBTWU5PUFNJUwotKwotKyAjaW5jbHVkZSA8b3BlbnNzbC9rZGYu aD4KLSsKLSsgdHlwZWRlZiBzdHJ1Y3QgZXZwX2tkZl9jdHhfc3QgRVZQX0tERl9DVFg7Ci0rCi0r IEVWUF9LREZfQ1RYICpFVlBfS0RGX0NUWF9uZXdfaWQoaW50IGlkKTsKLSsgdm9pZCBFVlBfS0RG X0NUWF9mcmVlKEVWUF9LREZfQ1RYICpjdHgpOwotKyB2b2lkIEVWUF9LREZfcmVzZXQoRVZQX0tE Rl9DVFggKmN0eCk7Ci0rIGludCBFVlBfS0RGX2N0cmwoRVZQX0tERl9DVFggKmN0eCwgaW50IGNt ZCwgLi4uKTsKLSsgaW50IEVWUF9LREZfdmN0cmwoRVZQX0tERl9DVFggKmN0eCwgaW50IGNtZCwg dmFfbGlzdCBhcmdzKTsKLSsgaW50IEVWUF9LREZfY3RybF9zdHIoRVZQX0tERl9DVFggKmN0eCwg Y29uc3QgY2hhciAqdHlwZSwgY29uc3QgY2hhciAqdmFsdWUpOwotKyBzaXplX3QgRVZQX0tERl9z aXplKEVWUF9LREZfQ1RYICpjdHgpOwotKyBpbnQgRVZQX0tERl9kZXJpdmUoRVZQX0tERl9DVFgg KmN0eCwgdW5zaWduZWQgY2hhciAqa2V5LCBzaXplX3Qga2V5bGVuKTsKLSsKLSs9aGVhZDEgREVT Q1JJUFRJT04KLSsKLStUaGUgRVZQIEtERiByb3V0aW5lcyBhcmUgYSBoaWdoIGxldmVsIGludGVy ZmFjZSB0byBLZXkgRGVyaXZhdGlvbiBGdW5jdGlvbgotK2FsZ29yaXRobXMgYW5kIHNob3VsZCBi ZSB1c2VkIGluc3RlYWQgb2YgYWxnb3JpdGhtLXNwZWNpZmljIGZ1bmN0aW9ucy4KLSsKLStBZnRl ciBjcmVhdGluZyBhIEM8RVZQX0tERl9DVFg+IGZvciB0aGUgcmVxdWlyZWQgYWxnb3JpdGhtIHVz aW5nCi0rRVZQX0tERl9DVFhfbmV3X2lkKCksIGlucHV0cyB0byB0aGUgYWxnb3JpdGhtIGFyZSBz dXBwbGllZCB1c2luZyBjYWxscyB0bwotK0VWUF9LREZfY3RybCgpLCBFVlBfS0RGX3ZjdHJsKCkg b3IgRVZQX0tERl9jdHJsX3N0cigpIGJlZm9yZSBjYWxsaW5nCi0rRVZQX0tERl9kZXJpdmUoKSB0 byBkZXJpdmUgdGhlIGtleS4KLSsKLSs9aGVhZDIgVHlwZXMKLSsKLStCPEVWUF9LREZfQ1RYPiBp cyBhIGNvbnRleHQgdHlwZSB0aGF0IGhvbGRzIHRoZSBhbGdvcml0aG0gaW5wdXRzLgotKwotKz1o ZWFkMiBDb250ZXh0IG1hbmlwdWxhdGlvbiBmdW5jdGlvbnMKLSsKLStFVlBfS0RGX0NUWF9uZXdf aWQoKSBjcmVhdGVzIGEgS0RGIGNvbnRleHQgZm9yIHRoZSBhbGdvcml0aG0gaWRlbnRpZmllZCBi eSB0aGUKLStzcGVjaWZpZWQgTklELgotKwotK0VWUF9LREZfQ1RYX2ZyZWUoKSBmcmVlcyB1cCB0 aGUgY29udGV4dCBDPGN0eD4uICBJZiBDPGN0eD4gaXMgQzxOVUxMPiwgbm90aGluZwotK2lzIGRv bmUuCi0rCi0rPWhlYWQyIENvbXB1dGluZyBmdW5jdGlvbnMKLSsKLStFVlBfS0RGX3Jlc2V0KCkg cmVzZXRzIHRoZSBjb250ZXh0IHRvIHRoZSBkZWZhdWx0IHN0YXRlIGFzIGlmIHRoZSBjb250ZXh0 Ci0raGFkIGp1c3QgYmVlbiBjcmVhdGVkLgotKwotK0VWUF9LREZfY3RybCgpIGlzIHVzZWQgdG8g cHJvdmlkZSBpbnB1dHMgdG8gdGhlIEtERiBhbGdvcml0aG0gcHJpb3IgdG8KLStFVlBfS0RGX2Rl cml2ZSgpIGJlaW5nIGNhbGxlZC4gIFRoZSBpbnB1dHMgdGhhdCBtYXkgYmUgcHJvdmlkZWQgd2ls bCB2YXJ5Ci0rZGVwZW5kaW5nIG9uIHRoZSBLREYgYWxnb3JpdGhtIG9yIGl0cyBpbXBsZW1lbnRh dGlvbi4gIFRoaXMgZnVuY3Rpb25zIHRha2VzCi0rdmFyaWFibGUgYXJndW1lbnRzLCB0aGUgZXhh Y3QgZXhwZWN0ZWQgYXJndW1lbnRzIGRlcGVuZCBvbiBDPGNtZD4uCi0rU2VlIEw8L0NPTlRST0xT PiBiZWxvdyBmb3IgYSBkZXNjcmlwdGlvbiBvZiBzdGFuZGFyZCBjb250cm9scy4KLSsKLStFVlBf S0RGX3ZjdHJsKCkgaXMgdGhlIHZhcmlhbnQgb2YgRVZQX0tERl9jdHJsKCkgdGhhdCB0YWtlcyBh IEM8dmFfbGlzdD4KLSthcmd1bWVudCBpbnN0ZWFkIG9mIHZhcmlhZGljIGFyZ3VtZW50cy4KLSsK LStFVlBfS0RGX2N0cmxfc3RyKCkgYWxsb3dzIGFuIGFwcGxpY2F0aW9uIHRvIHNlbmQgYW4gYWxn b3JpdGhtIHNwZWNpZmljIGNvbnRyb2wKLStvcGVyYXRpb24gdG8gYSBjb250ZXh0IEM8Y3R4PiBp biBzdHJpbmcgZm9ybS4gIFRoaXMgaXMgaW50ZW5kZWQgdG8gYmUgdXNlZCBmb3IKLStvcHRpb25z IHNwZWNpZmllZCBvbiB0aGUgY29tbWFuZCBsaW5lIG9yIGluIHRleHQgZmlsZXMuCi0rCi0rRVZQ X0tERl9zaXplKCkgcmV0dXJucyB0aGUgb3V0cHV0IHNpemUgaWYgdGhlIGFsZ29yaXRobSBwcm9k dWNlcyBhIGZpeGVkIGFtb3VudAotK29mIG91dHB1dCBhbmQgQzxTSVpFX01BWD4gb3RoZXJ3aXNl LiAgSWYgYW4gZXJyb3Igb2NjdXJzIHRoZW4gMCBpcyByZXR1cm5lZC4KLStGb3Igc29tZSBhbGdv cml0aG1zIGFuIGVycm9yIG1heSByZXN1bHQgaWYgaW5wdXQgcGFyYW1ldGVycyBuZWNlc3Nhcnkg dG8KLStjYWxjdWxhdGUgYSBmaXhlZCBvdXRwdXQgc2l6ZSBoYXZlIG5vdCB5ZXQgYmVlbiBzdXBw bGllZC4KLSsKLStFVlBfS0RGX2Rlcml2ZSgpIGRlcml2ZXMgQzxrZXlsZW4+IGJ5dGVzIG9mIGtl eSBtYXRlcmlhbCBhbmQgcGxhY2VzIGl0IGluIHRoZQotK0M8a2V5PiBidWZmZXIuICBJZiB0aGUg YWxnb3JpdGhtIHByb2R1Y2VzIGEgZml4ZWQgYW1vdW50IG9mIG91dHB1dCB0aGVuIGFuCi0rZXJy b3Igd2lsbCBvY2N1ciB1bmxlc3MgdGhlIEM8a2V5bGVuPiBwYXJhbWV0ZXIgaXMgZXF1YWwgdG8g dGhhdCBvdXRwdXQgc2l6ZSwKLSthcyByZXR1cm5lZCBieSBFVlBfS0RGX3NpemUoKS4KLSsKLSs9 aGVhZDEgQ09OVFJPTFMKLSsKLStUaGUgc3RhbmRhcmQgY29udHJvbHMgYXJlOgotKwotKz1vdmVy IDQKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRfUEFTUz4KLSsKLStUaGlzIGNvbnRyb2wg ZXhwZWN0cyB0d28gYXJndW1lbnRzOiBDPHVuc2lnbmVkIGNoYXIgKnBhc3M+LCBDPHNpemVfdCBw YXNzbGVuPgotKwotK1NvbWUgS0RGIGltcGxlbWVudGF0aW9ucyByZXF1aXJlIGEgcGFzc3dvcmQu ICBGb3IgdGhvc2UgS0RGIGltcGxlbWVudGF0aW9ucwotK3RoYXQgc3VwcG9ydCBpdCwgdGhpcyBj b250cm9sIHNldHMgdGhlIHBhc3N3b3JkLgotKwotK0VWUF9LREZfY3RybF9zdHIoKSB0YWtlcyB0 d28gdHlwZSBzdHJpbmdzIGZvciB0aGlzIGNvbnRyb2w6Ci0rCi0rPW92ZXIgNAotKwotKz1pdGVt ICJwYXNzIgotKwotK1RoZSB2YWx1ZSBzdHJpbmcgaXMgdXNlZCBhcyBpcy4KLSsKLSs9aXRlbSAi aGV4cGFzcyIKLSsKLStUaGUgdmFsdWUgc3RyaW5nIGlzIGV4cGVjdGVkIHRvIGJlIGEgaGV4YWRl Y2ltYWwgbnVtYmVyLCB3aGljaCB3aWxsIGJlCi0rZGVjb2RlZCBiZWZvcmUgYmVpbmcgcGFzc2Vk IG9uIGFzIHRoZSBjb250cm9sIHZhbHVlLgotKwotKz1iYWNrCi0rCi0rPWl0ZW0gQjxFVlBfS0RG X0NUUkxfU0VUX1NBTFQ+Ci0rCi0rVGhpcyBjb250cm9sIGV4cGVjdHMgdHdvIGFyZ3VtZW50czog Qzx1bnNpZ25lZCBjaGFyICpzYWx0PiwgQzxzaXplX3Qgc2FsdGxlbj4KLSsKLStTb21lIEtERiBp bXBsZW1lbnRhdGlvbnMgY2FuIHRha2UgYSBzYWx0LiAgRm9yIHRob3NlIEtERiBpbXBsZW1lbnRh dGlvbnMgdGhhdAotK3N1cHBvcnQgaXQsIHRoaXMgY29udHJvbCBzZXRzIHRoZSBzYWx0LgotKwot K1RoZSBkZWZhdWx0IHZhbHVlLCBpZiBhbnksIGlzIGltcGxlbWVudGF0aW9uIGRlcGVuZGVudC4K LSsKLStFVlBfS0RGX2N0cmxfc3RyKCkgdGFrZXMgdHdvIHR5cGUgc3RyaW5ncyBmb3IgdGhpcyBj b250cm9sOgotKwotKz1vdmVyIDQKLSsKLSs9aXRlbSAic2FsdCIKLSsKLStUaGUgdmFsdWUgc3Ry aW5nIGlzIHVzZWQgYXMgaXMuCi0rCi0rPWl0ZW0gImhleHNhbHQiCi0rCi0rVGhlIHZhbHVlIHN0 cmluZyBpcyBleHBlY3RlZCB0byBiZSBhIGhleGFkZWNpbWFsIG51bWJlciwgd2hpY2ggd2lsbCBi ZQotK2RlY29kZWQgYmVmb3JlIGJlaW5nIHBhc3NlZCBvbiBhcyB0aGUgY29udHJvbCB2YWx1ZS4K LSsKLSs9YmFjawotKwotKz1pdGVtIEI8RVZQX0tERl9DVFJMX1NFVF9JVEVSPgotKwotK1RoaXMg Y29udHJvbCBleHBlY3RzIG9uZSBhcmd1bWVudDogQzxpbnQgaXRlcj4KLSsKLStTb21lIEtERiBp bXBsZW1lbnRhdGlvbnMgcmVxdWlyZSBhbiBpdGVyYXRpb24gY291bnQuIEZvciB0aG9zZSBLREYg aW1wbGVtZW50YXRpb25zIHRoYXQgc3VwcG9ydCBpdCwgdGhpcyBjb250cm9sIHNldHMgdGhlIGl0 ZXJhdGlvbiBjb3VudC4KLSsKLStUaGUgZGVmYXVsdCB2YWx1ZSwgaWYgYW55LCBpcyBpbXBsZW1l bnRhdGlvbiBkZXBlbmRlbnQuCi0rCi0rRVZQX0tERl9jdHJsX3N0cigpIHR5cGUgc3RyaW5nOiAi aXRlciIKLSsKLStUaGUgdmFsdWUgc3RyaW5nIGlzIGV4cGVjdGVkIHRvIGJlIGEgZGVjaW1hbCBu dW1iZXIuCi0rCi0rPWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX01EPgotKwotK1RoaXMgY29udHJv bCBleHBlY3RzIG9uZSBhcmd1bWVudDogQzxFVlBfTUQgKm1kPgotKwotK0ZvciBNQUMgaW1wbGVt ZW50YXRpb25zIHRoYXQgdXNlIGEgbWVzc2FnZSBkaWdlc3QgYXMgYW4gdW5kZXJseWluZyBjb21w dXRhdGlvbgotK2FsZ29yaXRobSwgdGhpcyBjb250cm9sIHNldCB3aGF0IHRoZSBkaWdlc3QgYWxn b3JpdGhtIHNob3VsZCBiZS4KLSsKLStFVlBfS0RGX2N0cmxfc3RyKCkgdHlwZSBzdHJpbmc6ICJt ZCIKLSsKLStUaGUgdmFsdWUgc3RyaW5nIGlzIGV4cGVjdGVkIHRvIGJlIHRoZSBuYW1lIG9mIGEg ZGlnZXN0LgotKwotKz1pdGVtIEI8RVZQX0tERl9DVFJMX1NFVF9LRVk+Ci0rCi0rVGhpcyBjb250 cm9sIGV4cGVjdHMgdHdvIGFyZ3VtZW50czogQzx1bnNpZ25lZCBjaGFyICprZXk+LCBDPHNpemVf dCBrZXlsZW4+Ci0rCi0rU29tZSBLREYgaW1wbGVtZW50YXRpb25zIHJlcXVpcmUgYSBrZXkuICBG b3IgdGhvc2UgS0RGIGltcGxlbWVudGF0aW9ucyB0aGF0Ci0rc3VwcG9ydCBpdCwgdGhpcyBjb250 cm9sIHNldHMgdGhlIGtleS4KLSsKLStFVlBfS0RGX2N0cmxfc3RyKCkgdGFrZXMgdHdvIHR5cGUg c3RyaW5ncyBmb3IgdGhpcyBjb250cm9sOgotKwotKz1vdmVyIDQKLSsKLSs9aXRlbSAia2V5Igot KwotK1RoZSB2YWx1ZSBzdHJpbmcgaXMgdXNlZCBhcyBpcy4KLSsKLSs9aXRlbSAiaGV4a2V5Igot KwotK1RoZSB2YWx1ZSBzdHJpbmcgaXMgZXhwZWN0ZWQgdG8gYmUgYSBoZXhhZGVjaW1hbCBudW1i ZXIsIHdoaWNoIHdpbGwgYmUKLStkZWNvZGVkIGJlZm9yZSBiZWluZyBwYXNzZWQgb24gYXMgdGhl IGNvbnRyb2wgdmFsdWUuCi0rCi0rPWJhY2sKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRf TUFYTUVNX0JZVEVTPgotKwotK1RoaXMgY29udHJvbCBleHBlY3RzIG9uZSBhcmd1bWVudDogQzx1 aW50NjRfdCBtYXhtZW1fYnl0ZXM+Ci0rCi0rTWVtb3J5LWhhcmQgcGFzc3dvcmQtYmFzZWQgS0RG IGFsZ29yaXRobXMsIHN1Y2ggYXMgc2NyeXB0LCB1c2UgYW4gYW1vdW50IG9mCi0rbWVtb3J5IHRo YXQgZGVwZW5kcyBvbiB0aGUgbG9hZCBmYWN0b3JzIHByb3ZpZGVkIGFzIGlucHV0LiAgRm9yIHRo b3NlIEtERgotK2ltcGxlbWVudGF0aW9ucyB0aGF0IHN1cHBvcnQgaXQsIHRoaXMgY29udHJvbCBz ZXRzIGFuIHVwcGVyIGxpbWl0IG9uIHRoZSBhbW91bnQKLStvZiBtZW1vcnkgdGhhdCBtYXkgYmUg Y29uc3VtZWQgd2hpbGUgcGVyZm9ybWluZyBhIGtleSBkZXJpdmF0aW9uLiAgSWYgdGhpcwotK21l bW9yeSB1c2FnZSBsaW1pdCBpcyBleGNlZWRlZCBiZWNhdXNlIHRoZSBsb2FkIGZhY3RvcnMgYXJl IGNob3NlbiB0b28gaGlnaCwKLSt0aGUga2V5IGRlcml2YXRpb24gd2lsbCBmYWlsLgotKwotK1Ro ZSBkZWZhdWx0IHZhbHVlIGlzIGltcGxlbWVudGF0aW9uIGRlcGVuZGVudC4KLSsKLStFVlBfS0RG X2N0cmxfc3RyKCkgdHlwZSBzdHJpbmc6ICJtYXhtZW1fYnl0ZXMiCi0rCi0rVGhlIHZhbHVlIHN0 cmluZyBpcyBleHBlY3RlZCB0byBiZSBhIGRlY2ltYWwgbnVtYmVyLgotKwotKz1iYWNrCi0rCi0r PWhlYWQxIFJFVFVSTiBWQUxVRVMKLSsKLStFVlBfS0RGX0NUWF9uZXdfaWQoKSByZXR1cm5zIGVp dGhlciB0aGUgbmV3bHkgYWxsb2NhdGVkIEM8RVZQX0tERl9DVFg+Ci0rc3RydWN0dXJlIG9yIEM8 TlVMTD4gaWYgYW4gZXJyb3Igb2NjdXJyZWQuCi0rCi0rRVZQX0tERl9DVFhfZnJlZSgpIGFuZCBF VlBfS0RGX3Jlc2V0KCkgZG8gbm90IHJldHVybiBhIHZhbHVlLgotKwotK0VWUF9LREZfc2l6ZSgp IHJldHVybnMgdGhlIG91dHB1dCBzaXplLiAgQzxTSVpFX01BWD4gaXMgcmV0dXJuZWQgdG8gaW5k aWNhdGUKLSt0aGF0IHRoZSBhbGdvcml0aG0gcHJvZHVjZXMgYSB2YXJpYWJsZSBhbW91bnQgb2Yg b3V0cHV0OyAwIHRvIGluZGljYXRlIGZhaWx1cmUuCi0rCi0rVGhlIHJlbWFpbmluZyBmdW5jdGlv bnMgcmV0dXJuIDEgZm9yIHN1Y2Nlc3MgYW5kIDAgb3IgYSBuZWdhdGl2ZSB2YWx1ZSBmb3IKLStm YWlsdXJlLiAgSW4gcGFydGljdWxhciwgYSByZXR1cm4gdmFsdWUgb2YgLTIgaW5kaWNhdGVzIHRo ZSBvcGVyYXRpb24gaXMgbm90Ci0rc3VwcG9ydGVkIGJ5IHRoZSBLREYgYWxnb3JpdGhtLgotKwot Kz1oZWFkMSBTRUUgQUxTTwotKwotK0w8RVZQX0tERl9TQ1JZUFQoNyk+Ci0rCi0rPWhlYWQxIENP UFlSSUdIVAotKwotK0NvcHlyaWdodCAyMDE4IFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4g QWxsIFJpZ2h0cyBSZXNlcnZlZC4KLSsKLStMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vu c2UgMi4wICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBtYXkgbm90IHVzZQotK3RoaXMgZmlsZSBleGNl cHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiAgWW91IGNhbiBvYnRhaW4gYSBjb3B5 Ci0raW4gdGhlIGZpbGUgTElDRU5TRSBpbiB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBvciBhdAot K0w8aHR0cHM6Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2UuaHRtbD4uCi0rCi0rPWN1 dAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovZG9jL21hbjcvRVZQX0tERl9IS0RGLnBvZC5ldnAt a2RmIG9wZW5zc2wtMS4xLjFqL2RvYy9tYW43L0VWUF9LREZfSEtERi5wb2QKLS0tLSBvcGVuc3Ns LTEuMS4xai9kb2MvbWFuNy9FVlBfS0RGX0hLREYucG9kLmV2cC1rZGYJMjAyMS0wMy0wMyAxNDow ODowMi40OTMyOTQ4NjUgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9kb2MvbWFuNy9FVlBfS0RG X0hLREYucG9kCTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDkzMjk0ODY1ICswMTAwCi1AQCAtMCwwICsx LDE4MCBAQAotKz1wb2QKLSsKLSs9aGVhZDEgTkFNRQotKwotK0VWUF9LREZfSEtERiAtIFRoZSBI S0RGIEVWUF9LREYgaW1wbGVtZW50YXRpb24KLSsKLSs9aGVhZDEgREVTQ1JJUFRJT04KLSsKLStT dXBwb3J0IGZvciBjb21wdXRpbmcgdGhlIEI8SEtERj4gS0RGIHRocm91Z2ggdGhlIEI8RVZQX0tE Rj4gQVBJLgotKwotK1RoZSBFVlBfS0RGX0hLREYgYWxnb3JpdGhtIGltcGxlbWVudHMgdGhlIEhL REYga2V5IGRlcml2YXRpb24gZnVuY3Rpb24uCi0rSEtERiBmb2xsb3dzIHRoZSAiZXh0cmFjdC10 aGVuLWV4cGFuZCIgcGFyYWRpZ20sIHdoZXJlIHRoZSBLREYgbG9naWNhbGx5Ci0rY29uc2lzdHMg b2YgdHdvIG1vZHVsZXMuIFRoZSBmaXJzdCBzdGFnZSB0YWtlcyB0aGUgaW5wdXQga2V5aW5nIG1h dGVyaWFsCi0rYW5kICJleHRyYWN0cyIgZnJvbSBpdCBhIGZpeGVkLWxlbmd0aCBwc2V1ZG9yYW5k b20ga2V5IEsuIFRoZSBzZWNvbmQgc3RhZ2UKLSsiZXhwYW5kcyIgdGhlIGtleSBLIGludG8gc2V2 ZXJhbCBhZGRpdGlvbmFsIHBzZXVkb3JhbmRvbSBrZXlzICh0aGUgb3V0cHV0Ci0rb2YgdGhlIEtE RikuCi0rCi0rPWhlYWQyIE51bWVyaWMgaWRlbnRpdHkKLSsKLStCPEVWUF9LREZfSEtERj4gaXMg dGhlIG51bWVyaWMgaWRlbnRpdHkgZm9yIHRoaXMgaW1wbGVtZW50YXRpb247IGl0Ci0rY2FuIGJl IHVzZWQgd2l0aCB0aGUgRVZQX0tERl9DVFhfbmV3X2lkKCkgZnVuY3Rpb24uCi0rCi0rPWhlYWQy IFN1cHBvcnRlZCBjb250cm9scwotKwotK1RoZSBzdXBwb3J0ZWQgY29udHJvbHMgYXJlOgotKwot Kz1vdmVyIDQKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRfU0FMVD4KLSsKLSs9aXRlbSBC PEVWUF9LREZfQ1RSTF9TRVRfTUQ+Ci0rCi0rPWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX0tFWT4K LSsKLStUaGVzZSBjb250cm9scyB3b3JrIGFzIGRlc2NyaWJlZCBpbiBMPEVWUF9LREZfQ1RYKDMp L0NPTlRST0xTPi4KLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9SRVNFVF9IS0RGX0lORk8+Ci0r Ci0rVGhpcyBjb250cm9sIGRvZXMgbm90IGV4cGVjdCBhbnkgYXJndW1lbnRzLgotKwotK1Jlc2V0 cyB0aGUgY29udGV4dCBpbmZvIGJ1ZmZlciB0byB6ZXJvIGxlbmd0aC4KLSsKLSs9aXRlbSBCPEVW UF9LREZfQ1RSTF9BRERfSEtERl9JTkZPPgotKwotK1RoaXMgY29udHJvbCBleHBlY3RzIHR3byBh cmd1bWVudHM6IEM8dW5zaWduZWQgY2hhciAqaW5mbz4sIEM8c2l6ZV90IGluZm9sZW4+Ci0rCi0r U2V0cyB0aGUgaW5mbyB2YWx1ZSB0byB0aGUgZmlyc3QgQjxpbmZvbGVuPiBieXRlcyBvZiB0aGUg YnVmZmVyIEI8aW5mbz4uICBJZiBhCi0rdmFsdWUgaXMgYWxyZWFkeSBzZXQsIHRoZSBjb250ZW50 cyBvZiB0aGUgYnVmZmVyIGFyZSBhcHBlbmRlZCB0byB0aGUgZXhpc3RpbmcKLSt2YWx1ZS4KLSsK LStUaGUgdG90YWwgbGVuZ3RoIG9mIHRoZSBjb250ZXh0IGluZm8gYnVmZmVyIGNhbm5vdCBleGNl ZWQgMTAyNCBieXRlczsKLSt0aGlzIHNob3VsZCBiZSBtb3JlIHRoYW4gZW5vdWdoIGZvciBhbnkg bm9ybWFsIHVzZSBvZiBIS0RGLgotKwotK0VWUF9LREZfY3RybF9zdHIoKSB0YWtlcyB0d28gdHlw ZSBzdHJpbmdzIGZvciB0aGlzIGNvbnRyb2w6Ci0rCi0rPW92ZXIgNAotKwotKz1pdGVtICJpbmZv IgotKwotK1RoZSB2YWx1ZSBzdHJpbmcgaXMgdXNlZCBhcyBpcy4KLSsKLSs9aXRlbSAiaGV4aW5m byIKLSsKLStUaGUgdmFsdWUgc3RyaW5nIGlzIGV4cGVjdGVkIHRvIGJlIGEgaGV4YWRlY2ltYWwg bnVtYmVyLCB3aGljaCB3aWxsIGJlCi0rZGVjb2RlZCBiZWZvcmUgYmVpbmcgcGFzc2VkIG9uIGFz IHRoZSBjb250cm9sIHZhbHVlLgotKwotKz1iYWNrCi0rCi0rPWl0ZW0gQjxFVlBfS0RGX0NUUkxf U0VUX0hLREZfTU9ERT4KLSsKLStUaGlzIGNvbnRyb2wgZXhwZWN0cyBvbmUgYXJndW1lbnQ6IEM8 aW50IG1vZGU+Ci0rCi0rU2V0cyB0aGUgbW9kZSBmb3IgdGhlIEhLREYgb3BlcmF0aW9uLiBUaGVy ZSBhcmUgdGhyZWUgbW9kZXMgdGhhdCBhcmUgY3VycmVudGx5Ci0rZGVmaW5lZDoKLSsKLSs9b3Zl ciA0Ci0rCi0rPWl0ZW0gRVZQX0tERl9IS0RGX01PREVfRVhUUkFDVF9BTkRfRVhQQU5ECi0rCi0r VGhpcyBpcyB0aGUgZGVmYXVsdCBtb2RlLiAgQ2FsbGluZyBMPEVWUF9LREZfZGVyaXZlKDMpPiBv biBhbiBFVlBfS0RGX0NUWCBzZXQKLSt1cCBmb3IgSEtERiB3aWxsIHBlcmZvcm0gYW4gZXh0cmFj dCBmb2xsb3dlZCBieSBhbiBleHBhbmQgb3BlcmF0aW9uIGluIG9uZSBnby4KLStUaGUgZGVyaXZl ZCBrZXkgcmV0dXJuZWQgd2lsbCBiZSB0aGUgcmVzdWx0IGFmdGVyIHRoZSBleHBhbmQgb3BlcmF0 aW9uLiBUaGUKLStpbnRlcm1lZGlhdGUgZml4ZWQtbGVuZ3RoIHBzZXVkb3JhbmRvbSBrZXkgSyBp cyBub3QgcmV0dXJuZWQuCi0rCi0rSW4gdGhpcyBtb2RlIHRoZSBkaWdlc3QsIGtleSwgc2FsdCBh bmQgaW5mbyB2YWx1ZXMgbXVzdCBiZSBzZXQgYmVmb3JlIGEga2V5IGlzCi0rZGVyaXZlZCBvdGhl cndpc2UgYW4gZXJyb3Igd2lsbCBvY2N1ci4KLSsKLSs9aXRlbSBFVlBfS0RGX0hLREZfTU9ERV9F WFRSQUNUX09OTFkKLSsKLStJbiB0aGlzIG1vZGUgY2FsbGluZyBMPEVWUF9LREZfZGVyaXZlKDMp PiB3aWxsIGp1c3QgcGVyZm9ybSB0aGUgZXh0cmFjdAotK29wZXJhdGlvbi4gVGhlIHZhbHVlIHJl dHVybmVkIHdpbGwgYmUgdGhlIGludGVybWVkaWF0ZSBmaXhlZC1sZW5ndGggcHNldWRvcmFuZG9t Ci0ra2V5IEsuICBUaGUgQzxrZXlsZW4+IHBhcmFtZXRlciBtdXN0IG1hdGNoIHRoZSBzaXplIG9m IEssIHdoaWNoIGNhbiBiZSBsb29rZWQKLSt1cCBieSBjYWxsaW5nIEVWUF9LREZfc2l6ZSgpIGFm dGVyIHNldHRpbmcgdGhlIG1vZGUgYW5kIGRpZ2VzdC4KLSsKLStUaGUgZGlnZXN0LCBrZXkgYW5k IHNhbHQgdmFsdWVzIG11c3QgYmUgc2V0IGJlZm9yZSBhIGtleSBpcyBkZXJpdmVkIG90aGVyd2lz ZQotK2FuIGVycm9yIHdpbGwgb2NjdXIuCi0rCi0rPWl0ZW0gRVZQX0tERl9IS0RGX01PREVfRVhQ QU5EX09OTFkKLSsKLStJbiB0aGlzIG1vZGUgY2FsbGluZyBMPEVWUF9LREZfZGVyaXZlKDMpPiB3 aWxsIGp1c3QgcGVyZm9ybSB0aGUgZXhwYW5kCi0rb3BlcmF0aW9uLiBUaGUgaW5wdXQga2V5IHNo b3VsZCBiZSBzZXQgdG8gdGhlIGludGVybWVkaWF0ZSBmaXhlZC1sZW5ndGgKLStwc2V1ZG9yYW5k b20ga2V5IEsgcmV0dXJuZWQgZnJvbSBhIHByZXZpb3VzIGV4dHJhY3Qgb3BlcmF0aW9uLgotKwot K1RoZSBkaWdlc3QsIGtleSBhbmQgaW5mbyB2YWx1ZXMgbXVzdCBiZSBzZXQgYmVmb3JlIGEga2V5 IGlzIGRlcml2ZWQgb3RoZXJ3aXNlCi0rYW4gZXJyb3Igd2lsbCBvY2N1ci4KLSsKLSs9YmFjawot KwotK0VWUF9LREZfY3RybF9zdHIoKSB0eXBlIHN0cmluZzogIm1vZGUiCi0rCi0rVGhlIHZhbHVl IHN0cmluZyBpcyBleHBlY3RlZCB0byBiZSBvbmUgb2Y6ICJFWFRSQUNUX0FORF9FWFBBTkQiLCAi RVhUUkFDVF9PTkxZIgotK29yICJFWFBBTkRfT05MWSIuCi0rCi0rPWJhY2sKLSsKLSs9aGVhZDEg Tk9URVMKLSsKLStBIGNvbnRleHQgZm9yIEhLREYgY2FuIGJlIG9idGFpbmVkIGJ5IGNhbGxpbmc6 Ci0rCi0rIEVWUF9LREZfQ1RYICprY3R4ID0gRVZQX0tERl9DVFhfbmV3X2lkKEVWUF9LREZfSEtE Rik7Ci0rCi0rVGhlIG91dHB1dCBsZW5ndGggb2YgYW4gSEtERiBleHBhbmQgb3BlcmF0aW9uIGlz IHNwZWNpZmllZCB2aWEgdGhlIEM8a2V5bGVuPgotK3BhcmFtZXRlciB0byB0aGUgTDxFVlBfS0RG X2Rlcml2ZSgzKT4gZnVuY3Rpb24uICBXaGVuIHVzaW5nCi0rRVZQX0tERl9IS0RGX01PREVfRVhU UkFDVF9PTkxZIHRoZSBDPGtleWxlbj4gcGFyYW1ldGVyIG11c3QgZXF1YWwgdGhlIHNpemUgb2YK LSt0aGUgaW50ZXJtZWRpYXRlIGZpeGVkLWxlbmd0aCBwc2V1ZG9yYW5kb20ga2V5IG90aGVyd2lz ZSBhbiBlcnJvciB3aWxsIG9jY3VyLgotK0ZvciB0aGF0IG1vZGUsIHRoZSBmaXhlZCBvdXRwdXQg c2l6ZSBjYW4gYmUgbG9va2VkIHVwIGJ5IGNhbGxpbmcgRVZQX0tERl9zaXplKCkKLSthZnRlciBz ZXR0aW5nIHRoZSBtb2RlIGFuZCBkaWdlc3Qgb24gdGhlIEM8RVZQX0tERl9DVFg+LgotKwotKz1o ZWFkMSBFWEFNUExFCi0rCi0rVGhpcyBleGFtcGxlIGRlcml2ZXMgMTAgYnl0ZXMgdXNpbmcgU0hB LTI1NiB3aXRoIHRoZSBzZWNyZXQga2V5ICJzZWNyZXQiLAotK3NhbHQgdmFsdWUgInNhbHQiIGFu ZCBpbmZvIHZhbHVlICJsYWJlbCI6Ci0rCi0rIEVWUF9LREZfQ1RYICprY3R4OwotKyB1bnNpZ25l ZCBjaGFyIG91dFsxMF07Ci0rCi0rIGtjdHggPSBFVlBfS0RGX0NUWF9uZXdfaWQoRVZQX0tERl9I S0RGKTsKLSsKLSsgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX01ELCBF VlBfc2hhMjU2KCkpIDw9IDApIHsKLSsgICAgIGVycm9yKCJFVlBfS0RGX0NUUkxfU0VUX01EIik7 Ci0rIH0KLSsgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX1NBTFQsICJz YWx0IiwgKHNpemVfdCk0KSA8PSAwKSB7Ci0rICAgICBlcnJvcigiRVZQX0tERl9DVFJMX1NFVF9T QUxUIik7Ci0rIH0KLSsgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX0tF WSwgInNlY3JldCIsIChzaXplX3QpNikgPD0gMCkgewotKyAgICAgZXJyb3IoIkVWUF9LREZfQ1RS TF9TRVRfS0VZIik7Ci0rIH0KLSsgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxf QUREX0hLREZfSU5GTywgImxhYmVsIiwgKHNpemVfdCk1KSA8PSAwKSB7Ci0rICAgICBlcnJvcigi RVZQX0tERl9DVFJMX0FERF9IS0RGX0lORk8iKTsKLSsgfQotKyBpZiAoRVZQX0tERl9kZXJpdmUo a2N0eCwgb3V0LCBzaXplb2Yob3V0KSkgPD0gMCkgewotKyAgICAgZXJyb3IoIkVWUF9LREZfZGVy aXZlIik7Ci0rIH0KLSsKLSsgRVZQX0tERl9DVFhfZnJlZShrY3R4KTsKLSsKLSs9aGVhZDEgQ09O Rk9STUlORyBUTwotKwotK1JGQyA1ODY5Ci0rCi0rPWhlYWQxIFNFRSBBTFNPCi0rCi0rTDxFVlBf S0RGX0NUWD4sCi0rTDxFVlBfS0RGX0NUWF9uZXdfaWQoMyk+LAotK0w8RVZQX0tERl9DVFhfZnJl ZSgzKT4sCi0rTDxFVlBfS0RGX2N0cmwoMyk+LAotK0w8RVZQX0tERl9zaXplKDMpPiwKLStMPEVW UF9LREZfZGVyaXZlKDMpPiwKLStMPEVWUF9LREZfQ1RYKDMpL0NPTlRST0xTPgotKwotKz1oZWFk MSBDT1BZUklHSFQKLSsKLStDb3B5cmlnaHQgMjAxNi0yMDE4IFRoZSBPcGVuU1NMIFByb2plY3Qg QXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLSsKLStMaWNlbnNlZCB1bmRlciB0aGUgQXBh Y2hlIExpY2Vuc2UgMi4wICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBtYXkgbm90IHVzZQotK3RoaXMg ZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiAgWW91IGNhbiBvYnRh aW4gYSBjb3B5Ci0raW4gdGhlIGZpbGUgTElDRU5TRSBpbiB0aGUgc291cmNlIGRpc3RyaWJ1dGlv biBvciBhdAotK0w8aHR0cHM6Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2UuaHRtbD4u Ci0rCi0rPWN1dAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovZG9jL21hbjcvRVZQX0tERl9QQktE RjIucG9kLmV2cC1rZGYgb3BlbnNzbC0xLjEuMWovZG9jL21hbjcvRVZQX0tERl9QQktERjIucG9k Ci0tLS0gb3BlbnNzbC0xLjEuMWovZG9jL21hbjcvRVZQX0tERl9QQktERjIucG9kLmV2cC1rZGYJ MjAyMS0wMy0wMyAxNDowODowMi40OTMyOTQ4NjUgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9k b2MvbWFuNy9FVlBfS0RGX1BCS0RGMi5wb2QJMjAyMS0wMy0wMyAxNDowODowMi40OTMyOTQ4NjUg KzAxMDAKLUBAIC0wLDAgKzEsNzggQEAKLSs9cG9kCi0rCi0rPWhlYWQxIE5BTUUKLSsKLStFVlBf S0RGX1BCS0RGMiAtIFRoZSBQQktERjIgRVZQX0tERiBpbXBsZW1lbnRhdGlvbgotKwotKz1oZWFk MSBERVNDUklQVElPTgotKwotK1N1cHBvcnQgZm9yIGNvbXB1dGluZyB0aGUgQjxQQktERjI+IHBh c3N3b3JkLWJhc2VkIEtERiB0aHJvdWdoIHRoZSBCPEVWUF9LREY+Ci0rQVBJLgotKwotK1RoZSBF VlBfS0RGX1BCS0RGMiBhbGdvcml0aG0gaW1wbGVtZW50cyB0aGUgUEJLREYyIHBhc3N3b3JkLWJh c2VkIGtleQotK2Rlcml2YXRpb24gZnVuY3Rpb24sIGFzIGRlc2NyaWJlZCBpbiBSRkMgMjg5ODsg aXQgZGVyaXZlcyBhIGtleSBmcm9tIGEgcGFzc3dvcmQKLSt1c2luZyBhIHNhbHQgYW5kIGl0ZXJh dGlvbiBjb3VudC4KLSsKLSs9aGVhZDIgTnVtZXJpYyBpZGVudGl0eQotKwotK0I8RVZQX0tERl9Q QktERjI+IGlzIHRoZSBudW1lcmljIGlkZW50aXR5IGZvciB0aGlzIGltcGxlbWVudGF0aW9uOyBp dAotK2NhbiBiZSB1c2VkIHdpdGggdGhlIEVWUF9LREZfQ1RYX25ld19pZCgpIGZ1bmN0aW9uLgot KwotKz1oZWFkMiBTdXBwb3J0ZWQgY29udHJvbHMKLSsKLStUaGUgc3VwcG9ydGVkIGNvbnRyb2xz IGFyZToKLSsKLSs9b3ZlciA0Ci0rCi0rPWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX1BBU1M+Ci0r Ci0rPWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX1NBTFQ+Ci0rCi0rPWl0ZW0gQjxFVlBfS0RGX0NU UkxfU0VUX0lURVI+Ci0rCi0rPWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX01EPgotKwotK1RoZXNl IGNvbnRyb2xzIHdvcmsgYXMgZGVzY3JpYmVkIGluIEw8RVZQX0tERl9DVFgoMykvQ09OVFJPTFM+ LgotKwotK0I8aXRlcj4gaXMgdGhlIGl0ZXJhdGlvbiBjb3VudCBhbmQgaXRzIHZhbHVlIHNob3Vs ZCBiZSBncmVhdGVyIHRoYW4gb3IgZXF1YWwgdG8KLSsxLiBSRkMgMjg5OCBzdWdnZXN0cyBhbiBp dGVyYXRpb24gY291bnQgb2YgYXQgbGVhc3QgMTAwMC4gIFRoZSBkZWZhdWx0IHZhbHVlIGlzCi0r MjA0OC4gIEFueSBCPGl0ZXI+IGxlc3MgdGhhbiAxIGlzIHRyZWF0ZWQgYXMgYSBzaW5nbGUgaXRl cmF0aW9uLgotKwotKz1iYWNrCi0rCi0rPWhlYWQxIE5PVEVTCi0rCi0rQSB0eXBpY2FsIGFwcGxp Y2F0aW9uIG9mIHRoaXMgYWxnb3JpdGhtIGlzIHRvIGRlcml2ZSBrZXlpbmcgbWF0ZXJpYWwgZm9y IGFuCi0rZW5jcnlwdGlvbiBhbGdvcml0aG0gZnJvbSBhIHBhc3N3b3JkIGluIHRoZSBCPHBhc3M+ LCBhIHNhbHQgaW4gQjxzYWx0PiwKLSthbmQgYW4gaXRlcmF0aW9uIGNvdW50LgotKwotK0luY3Jl YXNpbmcgdGhlIEI8aXRlcj4gcGFyYW1ldGVyIHNsb3dzIGRvd24gdGhlIGFsZ29yaXRobSB3aGlj aCBtYWtlcyBpdAotK2hhcmRlciBmb3IgYW4gYXR0YWNrZXIgdG8gcGVyZm9ybSBhIGJydXRlIGZv cmNlIGF0dGFjayB1c2luZyBhIGxhcmdlIG51bWJlcgotK29mIGNhbmRpZGF0ZSBwYXNzd29yZHMu Ci0rCi0rTm8gYXNzdW1wdGlvbiBpcyBtYWRlIHJlZ2FyZGluZyB0aGUgZ2l2ZW4gcGFzc3dvcmQ7 IGl0IGlzIHNpbXBseSB0cmVhdGVkIGFzIGEKLStieXRlIHNlcXVlbmNlLgotKwotKz1oZWFkMSBD T05GT1JNSU5HIFRPCi0rCi0rUkZDIDI4OTgKLSsKLSs9aGVhZDEgU0VFIEFMU08KLSsKLStMPEVW UF9LREZfQ1RYPiwKLStMPEVWUF9LREZfQ1RYX25ld19pZCgzKT4sCi0rTDxFVlBfS0RGX0NUWF9m cmVlKDMpPiwKLStMPEVWUF9LREZfY3RybCgzKT4sCi0rTDxFVlBfS0RGX2Rlcml2ZSgzKT4sCi0r TDxFVlBfS0RGX0NUWCgzKS9DT05UUk9MUz4KLSsKLSs9aGVhZDEgQ09QWVJJR0hUCi0rCi0rQ29w eXJpZ2h0IDIwMTggVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJlc2Vy dmVkLgotKwotK0xpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSAyLjAgKHRoZSAiTGlj ZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCi0rdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNl IHdpdGggdGhlIExpY2Vuc2UuICBZb3UgY2FuIG9idGFpbiBhIGNvcHkKLStpbiB0aGUgZmlsZSBM SUNFTlNFIGluIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9yIGF0Ci0rTDxodHRwczovL3d3dy5v cGVuc3NsLm9yZy9zb3VyY2UvbGljZW5zZS5odG1sPi4KLSsKLSs9Y3V0Ci1kaWZmIC11cCBvcGVu c3NsLTEuMS4xai9kb2MvbWFuNy9FVlBfS0RGX1NDUllQVC5wb2QuZXZwLWtkZiBvcGVuc3NsLTEu MS4xai9kb2MvbWFuNy9FVlBfS0RGX1NDUllQVC5wb2QKLS0tLSBvcGVuc3NsLTEuMS4xai9kb2Mv bWFuNy9FVlBfS0RGX1NDUllQVC5wb2QuZXZwLWtkZgkyMDIxLTAzLTAzIDE0OjA4OjAyLjQ5MzI5 NDg2NSArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2RvYy9tYW43L0VWUF9LREZfU0NSWVBULnBv ZAkyMDIxLTAzLTAzIDE0OjA4OjAyLjQ5MzI5NDg2NSArMDEwMAotQEAgLTAsMCArMSwxNDkgQEAK LSs9cG9kCi0rCi0rPWhlYWQxIE5BTUUKLSsKLStFVlBfS0RGX1NDUllQVCAtIFRoZSBzY3J5cHQg RVZQX0tERiBpbXBsZW1lbnRhdGlvbgotKwotKz1oZWFkMSBERVNDUklQVElPTgotKwotK1N1cHBv cnQgZm9yIGNvbXB1dGluZyB0aGUgQjxzY3J5cHQ+IHBhc3N3b3JkLWJhc2VkIEtERiB0aHJvdWdo IHRoZSBCPEVWUF9LREY+Ci0rQVBJLgotKwotK1RoZSBFVlBfS0RGX1NDUllQVCBhbGdvcml0aG0g aW1wbGVtZW50cyB0aGUgc2NyeXB0IHBhc3N3b3JkLWJhc2VkIGtleQotK2Rlcml2YXRpb24gZnVu Y3Rpb24sIGFzIGRlc2NyaWJlZCBpbiBSRkMgNzkxNC4gIEl0IGlzIG1lbW9yeS1oYXJkIGluIHRo ZSBzZW5zZQotK3RoYXQgaXQgZGVsaWJlcmF0ZWx5IHJlcXVpcmVzIGEgc2lnbmlmaWNhbnQgYW1v dW50IG9mIFJBTSBmb3IgZWZmaWNpZW50Ci0rY29tcHV0YXRpb24uIFRoZSBpbnRlbnRpb24gb2Yg dGhpcyBpcyB0byByZW5kZXIgYnJ1dGUgZm9yY2luZyBvZiBwYXNzd29yZHMgb24KLStzeXN0ZW1z IHRoYXQgbGFjayBsYXJnZSBhbW91bnRzIG9mIG1haW4gbWVtb3J5IChzdWNoIGFzIEdQVXMgb3Ig QVNJQ3MpCi0rY29tcHV0YXRpb25hbGx5IGluZmVhc2libGUuCi0rCi0rc2NyeXB0IHByb3ZpZGVz IHRocmVlIHdvcmsgZmFjdG9ycyB0aGF0IGNhbiBiZSBjdXN0b21pemVkOiBOLCByIGFuZCBwLiBO LCB3aGljaAotK2hhcyB0byBiZSBhIHBvc2l0aXZlIHBvd2VyIG9mIHR3bywgaXMgdGhlIGdlbmVy YWwgd29yayBmYWN0b3IgYW5kIHNjYWxlcyBDUFUKLSt0aW1lIGluIGFuIGFwcHJveGltYXRlbHkg bGluZWFyIGZhc2hpb24uIHIgaXMgdGhlIGJsb2NrIHNpemUgb2YgdGhlIGludGVybmFsbHkKLSt1 c2VkIGhhc2ggZnVuY3Rpb24gYW5kIHAgaXMgdGhlIHBhcmFsbGVsaXphdGlvbiBmYWN0b3IuIEJv dGggciBhbmQgcCBuZWVkIHRvIGJlCi0rZ3JlYXRlciB0aGFuIHplcm8uIFRoZSBhbW91bnQgb2Yg UkFNIHRoYXQgc2NyeXB0IHJlcXVpcmVzIGZvciBpdHMgY29tcHV0YXRpb24KLStpcyByb3VnaGx5 ICgxMjggKiBOICogciAqIHApIGJ5dGVzLgotKwotK0luIHRoZSBvcmlnaW5hbCBwYXBlciBvZiBD b2xpbiBQZXJjaXZhbCAoIlN0cm9uZ2VyIEtleSBEZXJpdmF0aW9uIHZpYQotK1NlcXVlbnRpYWwg TWVtb3J5LUhhcmQgRnVuY3Rpb25zIiwgMjAwOSksIHRoZSBzdWdnZXN0ZWQgdmFsdWVzIHRoYXQg Z2l2ZSBhCi0rY29tcHV0YXRpb24gdGltZSBvZiBsZXNzIHRoYW4gNSBzZWNvbmRzIG9uIGEgMi41 IEdIeiBJbnRlbCBDb3JlIDIgRHVvIGFyZSBOID0KLSsyXjIwID0gMTA0ODU3NiwgciA9IDgsIHAg PSAxLiBDb25zZXF1ZW50bHksIHRoZSByZXF1aXJlZCBhbW91bnQgb2YgbWVtb3J5IGZvcgotK3Ro aXMgY29tcHV0YXRpb24gaXMgcm91Z2hseSAxIEdpQi4gT24gYSBtb3JlIHJlY2VudCBDUFUgKElu dGVsIGk3LTU5MzBLIGF0IDMuNQotK0dIeiksIHRoaXMgY29tcHV0YXRpb24gdGFrZXMgYWJvdXQg MyBzZWNvbmRzLiBXaGVuIE4sIHIgb3IgcCBhcmUgbm90IHNwZWNpZmllZCwKLSt0aGV5IGRlZmF1 bHQgdG8gMTA0ODU3NiwgOCwgYW5kIDEsIHJlc3BlY3RpdmVseS4gVGhlIG1heGltdW0gYW1vdW50 IG9mIFJBTSB0aGF0Ci0rbWF5IGJlIHVzZWQgYnkgc2NyeXB0IGRlZmF1bHRzIHRvIDEwMjUgTWlC LgotKwotKz1oZWFkMiBOdW1lcmljIGlkZW50aXR5Ci0rCi0rQjxFVlBfS0RGX1NDUllQVD4gaXMg dGhlIG51bWVyaWMgaWRlbnRpdHkgZm9yIHRoaXMgaW1wbGVtZW50YXRpb247IGl0Ci0rY2FuIGJl IHVzZWQgd2l0aCB0aGUgRVZQX0tERl9DVFhfbmV3X2lkKCkgZnVuY3Rpb24uCi0rCi0rPWhlYWQy IFN1cHBvcnRlZCBjb250cm9scwotKwotK1RoZSBzdXBwb3J0ZWQgY29udHJvbHMgYXJlOgotKwot Kz1vdmVyIDQKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRfUEFTUz4KLSsKLSs9aXRlbSBC PEVWUF9LREZfQ1RSTF9TRVRfU0FMVD4KLSsKLStUaGVzZSBjb250cm9scyB3b3JrIGFzIGRlc2Ny aWJlZCBpbiBMPEVWUF9LREZfQ1RYKDMpL0NPTlRST0xTPi4KLSsKLSs9aXRlbSBCPEVWUF9LREZf Q1RSTF9TRVRfU0NSWVBUX04+Ci0rCi0rPWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX1NDUllQVF9S PgotKwotKz1pdGVtIEI8RVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfUD4KLSsKLStCPEVWUF9LREZf Q1RSTF9TRVRfU0NSWVBUX04+IGV4cGVjdHMgb25lIGFyZ3VtZW50OiBDPHVpbnQ2NF90IE4+Ci0r Ci0rQjxFVlBfS0RGX0NUUkxfU0VUX1NDUllQVF9SPiBleHBlY3RzIG9uZSBhcmd1bWVudDogQzx1 aW50MzJfdCByPgotKwotK0I8RVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfUD4gZXhwZWN0cyBvbmUg YXJndW1lbnQ6IEM8dWludDMyX3QgcD4KLSsKLStUaGVzZSBjb250cm9scyBjb25maWd1cmUgdGhl IHNjcnlwdCB3b3JrIGZhY3RvcnMgTiwgciBhbmQgcC4KLSsKLStFVlBfS0RGX2N0cmxfc3RyKCkg dHlwZSBzdHJpbmdzOiAiTiIsICJyIiBhbmQgInAiLCByZXNwZWN0aXZlbHkuCi0rCi0rVGhlIGNv cnJlc3BvbmRpbmcgdmFsdWUgc3RyaW5ncyBhcmUgZXhwZWN0ZWQgdG8gYmUgZGVjaW1hbCBudW1i ZXJzLgotKwotKz1iYWNrCi0rCi0rPWhlYWQxIE5PVEVTCi0rCi0rQSBjb250ZXh0IGZvciBzY3J5 cHQgY2FuIGJlIG9idGFpbmVkIGJ5IGNhbGxpbmc6Ci0rCi0rIEVWUF9LREZfQ1RYICprY3R4ID0g RVZQX0tERl9DVFhfbmV3X2lkKEVWUF9LREZfU0NSWVBUKTsKLSsKLStUaGUgb3V0cHV0IGxlbmd0 aCBvZiBhbiBzY3J5cHQga2V5IGRlcml2YXRpb24gaXMgc3BlY2lmaWVkIHZpYSB0aGUKLStCPGtl eWxlbj4gcGFyYW1ldGVyIHRvIHRoZSBMPEVWUF9LREZfZGVyaXZlKDMpPiBmdW5jdGlvbi4KLSsK LSs9aGVhZDEgRVhBTVBMRQotKwotK1RoaXMgZXhhbXBsZSBkZXJpdmVzIGEgNjQtYnl0ZSBsb25n IHRlc3QgdmVjdG9yIHVzaW5nIHNjcnlwdCB3aXRoIHRoZSBwYXNzd29yZAotKyJwYXNzd29yZCIs IHNhbHQgIk5hQ2wiIGFuZCBOID0gMTAyNCwgciA9IDgsIHAgPSAxNi4KLSsKLSsgRVZQX0tERl9D VFggKmtjdHg7Ci0rIHVuc2lnbmVkIGNoYXIgb3V0WzY0XTsKLSsKLSsga2N0eCA9IEVWUF9LREZf Q1RYX25ld19pZChFVlBfS0RGX1NDUllQVCk7Ci0rCi0rIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwg RVZQX0tERl9DVFJMX1NFVF9QQVNTLCAicGFzc3dvcmQiLCAoc2l6ZV90KTgpIDw9IDApIHsKLSsg ICAgIGVycm9yKCJFVlBfS0RGX0NUUkxfU0VUX1BBU1MiKTsKLSsgfQotKyBpZiAoRVZQX0tERl9j dHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfU0FMVCwgIk5hQ2wiLCAoc2l6ZV90KTQpIDw9IDAp IHsKLSsgICAgIGVycm9yKCJFVlBfS0RGX0NUUkxfU0VUX1NBTFQiKTsKLSsgfQotKyBpZiAoRVZQ X0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfU0NSWVBUX04sICh1aW50NjRfdCkxMDI0 KSA8PSAwKSB7Ci0rICAgICBlcnJvcigiRVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfTiIpOwotKyB9 Ci0rIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfUiwgKHVp bnQzMl90KTgpIDw9IDApIHsKLSsgICAgIGVycm9yKCJFVlBfS0RGX0NUUkxfU0VUX1NDUllQVF9S Iik7Ci0rIH0KLSsgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX1NDUllQ VF9QLCAodWludDMyX3QpMTYpIDw9IDApIHsKLSsgICAgIGVycm9yKCJFVlBfS0RGX0NUUkxfU0VU X1NDUllQVF9QIik7Ci0rIH0KLSsgaWYgKEVWUF9LREZfZGVyaXZlKGtjdHgsIG91dCwgc2l6ZW9m KG91dCkpIDw9IDApIHsKLSsgICAgIGVycm9yKCJFVlBfS0RGX2Rlcml2ZSIpOwotKyB9Ci0rCi0r IHsKLSsgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgZXhwZWN0ZWRbc2l6ZW9mKG91dCldID0gewot KyAgICAgICAgIDB4ZmQsIDB4YmEsIDB4YmUsIDB4MWMsIDB4OWQsIDB4MzQsIDB4NzIsIDB4MDAs Ci0rICAgICAgICAgMHg3OCwgMHg1NiwgMHhlNywgMHgxOSwgMHgwZCwgMHgwMSwgMHhlOSwgMHhm ZSwKLSsgICAgICAgICAweDdjLCAweDZhLCAweGQ3LCAweGNiLCAweGM4LCAweDIzLCAweDc4LCAw eDMwLAotKyAgICAgICAgIDB4ZTcsIDB4NzMsIDB4NzYsIDB4NjMsIDB4NGIsIDB4MzcsIDB4MzEs IDB4NjIsCi0rICAgICAgICAgMHgyZSwgMHhhZiwgMHgzMCwgMHhkOSwgMHgyZSwgMHgyMiwgMHhh MywgMHg4OCwKLSsgICAgICAgICAweDZmLCAweGYxLCAweDA5LCAweDI3LCAweDlkLCAweDk4LCAw eDMwLCAweGRhLAotKyAgICAgICAgIDB4YzcsIDB4MjcsIDB4YWYsIDB4YjksIDB4NGEsIDB4ODMs IDB4ZWUsIDB4NmQsCi0rICAgICAgICAgMHg4MywgMHg2MCwgMHhjYiwgMHhkZiwgMHhhMiwgMHhj YywgMHgwNiwgMHg0MAotKyAgICAgfTsKLSsKLSsgICAgIGFzc2VydCghbWVtY21wKG91dCwgZXhw ZWN0ZWQsIHNpemVvZihvdXQpKSk7Ci0rIH0KLSsKLSsgRVZQX0tERl9DVFhfZnJlZShrY3R4KTsK LSsKLSs9aGVhZDEgQ09ORk9STUlORyBUTwotKwotK1JGQyA3OTE0Ci0rCi0rPWhlYWQxIFNFRSBB TFNPCi0rCi0rTDxFVlBfS0RGX0NUWD4sCi0rTDxFVlBfS0RGX0NUWF9uZXdfaWQoMyk+LAotK0w8 RVZQX0tERl9DVFhfZnJlZSgzKT4sCi0rTDxFVlBfS0RGX2N0cmwoMyk+LAotK0w8RVZQX0tERl9k ZXJpdmUoMyk+LAotK0w8RVZQX0tERl9DVFgoMykvQ09OVFJPTFM+Ci0rCi0rPWhlYWQxIENPUFlS SUdIVAotKwotK0NvcHlyaWdodCAyMDE3LTIwMTggVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3Jz LiBBbGwgUmlnaHRzIFJlc2VydmVkLgotKwotK0xpY2Vuc2VkIHVuZGVyIHRoZSBPcGVuU1NMIGxp Y2Vuc2UgKHRoZSAiTGljZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCi0rdGhpcyBmaWxlIGV4Y2Vw dCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuICBZb3UgY2FuIG9idGFpbiBhIGNvcHkK LStpbiB0aGUgZmlsZSBMSUNFTlNFIGluIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9yIGF0Ci0r TDxodHRwczovL3d3dy5vcGVuc3NsLm9yZy9zb3VyY2UvbGljZW5zZS5odG1sPi4KLSsKLSs9Y3V0 Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9kb2MvbWFuNy9FVlBfS0RGX1RMUzFfUFJGLnBvZC5l dnAta2RmIG9wZW5zc2wtMS4xLjFqL2RvYy9tYW43L0VWUF9LREZfVExTMV9QUkYucG9kCi0tLS0g b3BlbnNzbC0xLjEuMWovZG9jL21hbjcvRVZQX0tERl9UTFMxX1BSRi5wb2QuZXZwLWtkZgkyMDIx LTAzLTAzIDE0OjA4OjAyLjQ5MzI5NDg2NSArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2RvYy9t YW43L0VWUF9LREZfVExTMV9QUkYucG9kCTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDkzMjk0ODY1ICsw MTAwCi1AQCAtMCwwICsxLDE0MiBAQAotKz1wb2QKLSsKLSs9aGVhZDEgTkFNRQotKwotK0VWUF9L REZfVExTMV9QUkYgLSBUaGUgVExTMSBQUkYgRVZQX0tERiBpbXBsZW1lbnRhdGlvbgotKwotKz1o ZWFkMSBERVNDUklQVElPTgotKwotK1N1cHBvcnQgZm9yIGNvbXB1dGluZyB0aGUgQjxUTFMxPiBQ UkYgdGhyb3VnaCB0aGUgQjxFVlBfS0RGPiBBUEkuCi0rCi0rVGhlIEVWUF9LREZfVExTMV9QUkYg YWxnb3JpdGhtIGltcGxlbWVudHMgdGhlIFBSRiB1c2VkIGJ5IFRMUyB2ZXJzaW9ucyB1cCB0bwot K2FuZCBpbmNsdWRpbmcgVExTIDEuMi4KLSsKLSs9aGVhZDIgTnVtZXJpYyBpZGVudGl0eQotKwot K0I8RVZQX0tERl9UTFMxX1BSRj4gaXMgdGhlIG51bWVyaWMgaWRlbnRpdHkgZm9yIHRoaXMgaW1w bGVtZW50YXRpb247IGl0Ci0rY2FuIGJlIHVzZWQgd2l0aCB0aGUgRVZQX0tERl9DVFhfbmV3X2lk KCkgZnVuY3Rpb24uCi0rCi0rPWhlYWQyIFN1cHBvcnRlZCBjb250cm9scwotKwotK1RoZSBzdXBw b3J0ZWQgY29udHJvbHMgYXJlOgotKwotKz1vdmVyIDQKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RS TF9TRVRfTUQ+Ci0rCi0rVGhpcyBjb250cm9sIHdvcmtzIGFzIGRlc2NyaWJlZCBpbiBMPEVWUF9L REZfQ1RYKDMpL0NPTlRST0xTPi4KLSsKLStUaGUgQzxFVlBfS0RGX0NUUkxfU0VUX01EPiBjb250 cm9sIGlzIHVzZWQgdG8gc2V0IHRoZSBtZXNzYWdlIGRpZ2VzdCBhc3NvY2lhdGVkCi0rd2l0aCB0 aGUgVExTIFBSRi4gIEVWUF9tZDVfc2hhMSgpIGlzIHRyZWF0ZWQgYXMgYSBzcGVjaWFsIGNhc2Ug d2hpY2ggdXNlcyB0aGUKLStQUkYgYWxnb3JpdGhtIHVzaW5nIGJvdGggQjxNRDU+IGFuZCBCPFNI QTE+IGFzIHVzZWQgaW4gVExTIDEuMCBhbmQgMS4xLgotKwotKz1pdGVtIEI8RVZQX0tERl9DVFJM X1NFVF9UTFNfU0VDUkVUPgotKwotK1RoaXMgY29udHJvbCBleHBlY3RzIHR3byBhcmd1bWVudHM6 IEM8dW5zaWduZWQgY2hhciAqc2VjPiwgQzxzaXplX3Qgc2VjbGVuPgotKwotK1NldHMgdGhlIHNl Y3JldCB2YWx1ZSBvZiB0aGUgVExTIFBSRiB0byBCPHNlY2xlbj4gYnl0ZXMgb2YgdGhlIGJ1ZmZl ciBCPHNlYz4uCi0rQW55IGV4aXN0aW5nIHNlY3JldCB2YWx1ZSBpcyByZXBsYWNlZC4KLSsKLStF VlBfS0RGX2N0cmxfc3RyKCkgdGFrZXMgdHdvIHR5cGUgc3RyaW5ncyBmb3IgdGhpcyBjb250cm9s OgotKwotKz1vdmVyIDQKLSsKLSs9aXRlbSAic2VjcmV0IgotKwotK1RoZSB2YWx1ZSBzdHJpbmcg aXMgdXNlZCBhcyBpcy4KLSsKLSs9aXRlbSAiaGV4c2VjcmV0IgotKwotK1RoZSB2YWx1ZSBzdHJp bmcgaXMgZXhwZWN0ZWQgdG8gYmUgYSBoZXhhZGVjaW1hbCBudW1iZXIsIHdoaWNoIHdpbGwgYmUK LStkZWNvZGVkIGJlZm9yZSBiZWluZyBwYXNzZWQgb24gYXMgdGhlIGNvbnRyb2wgdmFsdWUuCi0r Ci0rPWJhY2sKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9SRVNFVF9UTFNfU0VFRD4KLSsKLStU aGlzIGNvbnRyb2wgZG9lcyBub3QgZXhwZWN0IGFueSBhcmd1bWVudHMuCi0rCi0rUmVzZXRzIHRo ZSBjb250ZXh0IHNlZWQgYnVmZmVyIHRvIHplcm8gbGVuZ3RoLgotKwotKz1pdGVtIEI8RVZQX0tE Rl9DVFJMX0FERF9UTFNfU0VFRD4KLSsKLStUaGlzIGNvbnRyb2wgZXhwZWN0cyB0d28gYXJndW1l bnRzOiBDPHVuc2lnbmVkIGNoYXIgKnNlZWQ+LCBDPHNpemVfdCBzZWVkbGVuPgotKwotK1NldHMg dGhlIHNlZWQgdG8gQjxzZWVkbGVuPiBieXRlcyBvZiBCPHNlZWQ+LiAgSWYgYSBzZWVkIGlzIGFs cmVhZHkgc2V0IGl0IGlzCi0rYXBwZW5kZWQgdG8gdGhlIGV4aXN0aW5nIHZhbHVlLgotKwotK1Ro ZSB0b3RhbCBsZW5ndGggb2YgdGhlIGNvbnRleHQgc2VlZCBidWZmZXIgY2Fubm90IGV4Y2VlZCAx MDI0IGJ5dGVzOwotK3RoaXMgc2hvdWxkIGJlIG1vcmUgdGhhbiBlbm91Z2ggZm9yIGFueSBub3Jt YWwgdXNlIG9mIHRoZSBUTFMgUFJGLgotKwotK0VWUF9LREZfY3RybF9zdHIoKSB0YWtlcyB0d28g dHlwZSBzdHJpbmdzIGZvciB0aGlzIGNvbnRyb2w6Ci0rCi0rPW92ZXIgNAotKwotKz1pdGVtICJz ZWVkIgotKwotK1RoZSB2YWx1ZSBzdHJpbmcgaXMgdXNlZCBhcyBpcy4KLSsKLSs9aXRlbSAiaGV4 c2VlZCIKLSsKLStUaGUgdmFsdWUgc3RyaW5nIGlzIGV4cGVjdGVkIHRvIGJlIGEgaGV4YWRlY2lt YWwgbnVtYmVyLCB3aGljaCB3aWxsIGJlCi0rZGVjb2RlZCBiZWZvcmUgYmVpbmcgcGFzc2VkIG9u IGFzIHRoZSBjb250cm9sIHZhbHVlLgotKwotKz1iYWNrCi0rCi0rPWJhY2sKLSsKLSs9aGVhZDEg Tk9URVMKLSsKLStBIGNvbnRleHQgZm9yIHRoZSBUTFMgUFJGIGNhbiBiZSBvYnRhaW5lZCBieSBj YWxsaW5nOgotKwotKyBFVlBfS0RGX0NUWCAqa2N0eCA9IEVWUF9LREZfQ1RYX25ld19pZChFVlBf S0RGX1RMUzFfUFJGLCBOVUxMKTsKLSsKLStUaGUgZGlnZXN0LCBzZWNyZXQgdmFsdWUgYW5kIHNl ZWQgbXVzdCBiZSBzZXQgYmVmb3JlIGEga2V5IGlzIGRlcml2ZWQgb3RoZXJ3aXNlCi0rYW4gZXJy b3Igd2lsbCBvY2N1ci4KLSsKLStUaGUgb3V0cHV0IGxlbmd0aCBvZiB0aGUgUFJGIGlzIHNwZWNp ZmllZCBieSB0aGUgQzxrZXlsZW4+IHBhcmFtZXRlciB0byB0aGUKLStFVlBfS0RGX2Rlcml2ZSgp IGZ1bmN0aW9uLgotKwotKz1oZWFkMSBFWEFNUExFCi0rCi0rVGhpcyBleGFtcGxlIGRlcml2ZXMg MTAgYnl0ZXMgdXNpbmcgU0hBLTI1NiB3aXRoIHRoZSBzZWNyZXQga2V5ICJzZWNyZXQiCi0rYW5k IHNlZWQgdmFsdWUgInNlZWQiOgotKwotKyBFVlBfS0RGX0NUWCAqa2N0eDsKLSsgdW5zaWduZWQg Y2hhciBvdXRbMTBdOwotKwotKyBrY3R4ID0gRVZQX0tERl9DVFhfbmV3X2lkKEVWUF9LREZfVExT MV9QUkYpOwotKyBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfTUQsIEVW UF9zaGEyNTYoKSkgPD0gMCkgewotKyAgICAgZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRfTUQiKTsK LSsgfQotKyBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfVExTX1NFQ1JF VCwKLSsgICAgICAgICAgICAgICAgICAic2VjcmV0IiwgKHNpemVfdCk2KSA8PSAwKSB7Ci0rICAg ICBlcnJvcigiRVZQX0tERl9DVFJMX1NFVF9UTFNfU0VDUkVUIik7Ci0rIH0KLSsgaWYgKEVWUF9L REZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfQUREX1RMU19TRUVELCAic2VlZCIsIChzaXplX3Qp NCkgPD0gMCkgewotKyAgICAgZXJyb3IoIkVWUF9LREZfQ1RSTF9BRERfVExTX1NFRUQiKTsKLSsg fQotKyBpZiAoRVZQX0tERl9kZXJpdmUoa2N0eCwgb3V0LCBzaXplb2Yob3V0KSkgPD0gMCkgewot KyAgICAgZXJyb3IoIkVWUF9LREZfZGVyaXZlIik7Ci0rIH0KLSsgRVZQX0tERl9DVFhfZnJlZShr Y3R4KTsKLSsKLSs9aGVhZDEgU0VFIEFMU08KLSsKLStMPEVWUF9LREZfQ1RYPiwKLStMPEVWUF9L REZfQ1RYX25ld19pZCgzKT4sCi0rTDxFVlBfS0RGX0NUWF9mcmVlKDMpPiwKLStMPEVWUF9LREZf Y3RybCgzKT4sCi0rTDxFVlBfS0RGX2Rlcml2ZSgzKT4sCi0rTDxFVlBfS0RGX0NUWCgzKS9DT05U Uk9MUz4KLSsKLSs9aGVhZDEgQ09QWVJJR0hUCi0rCi0rQ29weXJpZ2h0IDIwMTggVGhlIE9wZW5T U0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgotKwotK0xpY2Vuc2VkIHVu ZGVyIHRoZSBBcGFjaGUgTGljZW5zZSAyLjAgKHRoZSAiTGljZW5zZSIpLiAgWW91IG1heSBub3Qg dXNlCi0rdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuICBZ b3UgY2FuIG9idGFpbiBhIGNvcHkKLStpbiB0aGUgZmlsZSBMSUNFTlNFIGluIHRoZSBzb3VyY2Ug ZGlzdHJpYnV0aW9uIG9yIGF0Ci0rTDxodHRwczovL3d3dy5vcGVuc3NsLm9yZy9zb3VyY2UvbGlj ZW5zZS5odG1sPi4KLSsKLSs9Y3V0Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL2Ny eXB0by9ldnAuaC5ldnAta2RmIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvY3J5cHRvL2V2cC5oCi0t LS0gb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9jcnlwdG8vZXZwLmguZXZwLWtkZgkyMDIxLTAyLTE2 IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvY3J5 cHRvL2V2cC5oCTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDkzMjk0ODY1ICswMTAwCi1AQCAtMTEyLDYg KzExMiwyNCBAQCBleHRlcm4gY29uc3QgRVZQX1BLRVlfTUVUSE9EIGhrZGZfcGtleV9tCi0gZXh0 ZXJuIGNvbnN0IEVWUF9QS0VZX01FVEhPRCBwb2x5MTMwNV9wa2V5X21ldGg7Ci0gZXh0ZXJuIGNv bnN0IEVWUF9QS0VZX01FVEhPRCBzaXBoYXNoX3BrZXlfbWV0aDsKLSAKLSsvKiBzdHJ1Y3QgZXZw X2tkZl9pbXBsX3N0IGlzIGRlZmluZWQgYnkgdGhlIGltcGxlbWVudGF0aW9uICovCi0rdHlwZWRl ZiBzdHJ1Y3QgZXZwX2tkZl9pbXBsX3N0IEVWUF9LREZfSU1QTDsKLSt0eXBlZGVmIHN0cnVjdCB7 Ci0rICAgIGludCB0eXBlOwotKyAgICBFVlBfS0RGX0lNUEwgKigqbmV3KSAodm9pZCk7Ci0rICAg IHZvaWQgKCpmcmVlKSAoRVZQX0tERl9JTVBMICppbXBsKTsKLSsgICAgdm9pZCAoKnJlc2V0KSAo RVZQX0tERl9JTVBMICppbXBsKTsKLSsgICAgaW50ICgqY3RybCkgKEVWUF9LREZfSU1QTCAqaW1w bCwgaW50IGNtZCwgdmFfbGlzdCBhcmdzKTsKLSsgICAgaW50ICgqY3RybF9zdHIpIChFVlBfS0RG X0lNUEwgKmltcGwsIGNvbnN0IGNoYXIgKnR5cGUsIGNvbnN0IGNoYXIgKnZhbHVlKTsKLSsgICAg c2l6ZV90ICgqc2l6ZSkgKEVWUF9LREZfSU1QTCAqaW1wbCk7Ci0rICAgIGludCAoKmRlcml2ZSkg KEVWUF9LREZfSU1QTCAqaW1wbCwgdW5zaWduZWQgY2hhciAqa2V5LCBzaXplX3Qga2V5bGVuKTsK LSt9IEVWUF9LREZfTUVUSE9EOwotKwotK2V4dGVybiBjb25zdCBFVlBfS0RGX01FVEhPRCBwYmtk ZjJfa2RmX21ldGg7Ci0rZXh0ZXJuIGNvbnN0IEVWUF9LREZfTUVUSE9EIHNjcnlwdF9rZGZfbWV0 aDsKLStleHRlcm4gY29uc3QgRVZQX0tERl9NRVRIT0QgdGxzMV9wcmZfa2RmX21ldGg7Ci0rZXh0 ZXJuIGNvbnN0IEVWUF9LREZfTUVUSE9EIGhrZGZfa2RmX21ldGg7Ci0rCi0gc3RydWN0IGV2cF9t ZF9zdCB7Ci0gICAgIGludCB0eXBlOwotICAgICBpbnQgcGtleV90eXBlOwotZGlmZiAtdXAgb3Bl bnNzbC0xLjEuMWovaW5jbHVkZS9vcGVuc3NsL2V2cGVyci5oLmV2cC1rZGYgb3BlbnNzbC0xLjEu MWovaW5jbHVkZS9vcGVuc3NsL2V2cGVyci5oCi0tLS0gb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9v cGVuc3NsL2V2cGVyci5oLmV2cC1rZGYJMjAyMS0wMy0wMyAxNDowODowMi40NzcyOTQ3MjIgKzAx MDAKLSsrKyBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvZXZwZXJyLmgJMjAyMS0wMy0w MyAxNDoxMzozNy41ODcwMDM3MjIgKzAxMDAKLUBAIC01Niw2ICs1Niw5IEBAIGludCBFUlJfbG9h ZF9FVlBfc3RyaW5ncyh2b2lkKTsKLSAjIGRlZmluZSBFVlBfRl9FVlBfRU5DUllQVERFQ1JZUFRV UERBVEUgICAgICAgICAgICAgICAgICAgMjE5Ci0gIyBkZWZpbmUgRVZQX0ZfRVZQX0VOQ1JZUFRG SU5BTF9FWCAgICAgICAgICAgICAgICAgICAgICAgIDEyNwotICMgZGVmaW5lIEVWUF9GX0VWUF9F TkNSWVBUVVBEQVRFICAgICAgICAgICAgICAgICAgICAgICAgICAxNjcKLSsjIGRlZmluZSBFVlBf Rl9FVlBfS0RGX0NUUkwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjI0Ci0rIyBkZWZp bmUgRVZQX0ZfRVZQX0tERl9DVFJMX1NUUiAgICAgICAgICAgICAgICAgICAgICAgICAgIDIyNQot KyMgZGVmaW5lIEVWUF9GX0VWUF9LREZfQ1RYX05FV19JRCAgICAgICAgICAgICAgICAgICAgICAg ICAyMjYKLSAjIGRlZmluZSBFVlBfRl9FVlBfTURfQ1RYX0NPUFlfRVggICAgICAgICAgICAgICAg ICAgICAgICAgMTEwCi0gIyBkZWZpbmUgRVZQX0ZfRVZQX01EX1NJWkUgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDE2MgotICMgZGVmaW5lIEVWUF9GX0VWUF9PUEVOSU5JVCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAxMDIKLUBAIC0xMTgsMTEgKzEyMSwxMyBAQCBpbnQgRVJS X2xvYWRfRVZQX3N0cmluZ3Modm9pZCk7Ci0gIyBkZWZpbmUgRVZQX0ZfUEtDUzVfVjJfUEJFX0tF WUlWR0VOICAgICAgICAgICAgICAgICAgICAgIDExOAotICMgZGVmaW5lIEVWUF9GX1BLQ1M1X1Yy X1BCS0RGMl9LRVlJVkdFTiAgICAgICAgICAgICAgICAgICAxNjQKLSAjIGRlZmluZSBFVlBfRl9Q S0NTNV9WMl9TQ1JZUFRfS0VZSVZHRU4gICAgICAgICAgICAgICAgICAgMTgwCi0rIyBkZWZpbmUg RVZQX0ZfUEtFWV9LREZfQ1RSTCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIyNwotICMg ZGVmaW5lIEVWUF9GX1BLRVlfU0VUX1RZUEUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAx NTgKLSAjIGRlZmluZSBFVlBfRl9SQzJfTUFHSUNfVE9fTUVUSCAgICAgICAgICAgICAgICAgICAg ICAgICAgMTA5Ci0gIyBkZWZpbmUgRVZQX0ZfUkM1X0NUUkwgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDEyNQotICMgZGVmaW5lIEVWUF9GX1JfMzJfMTJfMTZfSU5JVF9LRVkgICAg ICAgICAgICAgICAgICAgICAgICAyNDIKLSAjIGRlZmluZSBFVlBfRl9TMzkwWF9BRVNfR0NNX0NU UkwgICAgICAgICAgICAgICAgICAgICAgICAgMjAxCi0rIyBkZWZpbmUgRVZQX0ZfU0NSWVBUX0FM RyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIyOAotICMgZGVmaW5lIEVWUF9GX1VQ REFURSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNzMKLSAKLSAvKgotQEAg LTE3OSw2ICsxODQsNyBAQCBpbnQgRVJSX2xvYWRfRVZQX3N0cmluZ3Modm9pZCk7Ci0gIyBkZWZp bmUgRVZQX1JfT05MWV9PTkVTSE9UX1NVUFBPUlRFRCAgICAgICAgICAgICAgICAgICAgIDE3Nwot ICMgZGVmaW5lIEVWUF9SX09QRVJBVElPTl9OT1RfU1VQUE9SVEVEX0ZPUl9USElTX0tFWVRZUEUg ICAxNTAKLSAjIGRlZmluZSBFVlBfUl9PUEVSQVRPTl9OT1RfSU5JVElBTElaRUQgICAgICAgICAg ICAgICAgICAgMTUxCi0rIyBkZWZpbmUgRVZQX1JfUEFSQU1FVEVSX1RPT19MQVJHRSAgICAgICAg ICAgICAgICAgICAgICAgIDE4NwotICMgZGVmaW5lIEVWUF9SX09VVFBVVF9XT1VMRF9PVkVSRkxP VyAgICAgICAgICAgICAgICAgICAgICAxODQKLSAjIGRlZmluZSBFVlBfUl9QQVJUSUFMTFlfT1ZF UkxBUFBJTkcgICAgICAgICAgICAgICAgICAgICAgMTYyCi0gIyBkZWZpbmUgRVZQX1JfUEJLREYy X0VSUk9SICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE4MQotZGlmZiAtdXAgb3BlbnNz bC0xLjEuMWovaW5jbHVkZS9vcGVuc3NsL2tkZmVyci5oLmV2cC1rZGYgb3BlbnNzbC0xLjEuMWov aW5jbHVkZS9vcGVuc3NsL2tkZmVyci5oCi0tLS0gb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVu c3NsL2tkZmVyci5oLmV2cC1rZGYJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAK LSsrKyBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wva2RmZXJyLmgJMjAyMS0wMy0wMyAx NDowODowMi40OTMyOTQ4NjUgKzAxMDAKLUBAIC0yMyw2ICsyMywyMyBAQCBpbnQgRVJSX2xvYWRf S0RGX3N0cmluZ3Modm9pZCk7Ci0gLyoKLSAgKiBLREYgZnVuY3Rpb24gY29kZXMuCi0gICovCi0r IyBkZWZpbmUgS0RGX0ZfSEtERl9FWFRSQUNUICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IDExMgotKyMgZGVmaW5lIEtERl9GX0tERl9IS0RGX0RFUklWRSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAxMTMKLSsjIGRlZmluZSBLREZfRl9LREZfSEtERl9ORVcgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMTE0Ci0rIyBkZWZpbmUgS0RGX0ZfS0RGX0hLREZfU0laRSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDExNQotKyMgZGVmaW5lIEtERl9GX0tERl9NRDJDVFJMICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMTYKLSsjIGRlZmluZSBLREZfRl9LREZfUEJL REYyX0NUUkxfU1RSICAgICAgICAgICAgICAgICAgICAgICAgMTE3Ci0rIyBkZWZpbmUgS0RGX0Zf S0RGX1BCS0RGMl9ERVJJVkUgICAgICAgICAgICAgICAgICAgICAgICAgIDExOAotKyMgZGVmaW5l IEtERl9GX0tERl9QQktERjJfTkVXICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMTkKLSsj IGRlZmluZSBLREZfRl9LREZfU0NSWVBUX0NUUkxfU1RSICAgICAgICAgICAgICAgICAgICAgICAg MTIwCi0rIyBkZWZpbmUgS0RGX0ZfS0RGX1NDUllQVF9DVFJMX1VJTlQzMiAgICAgICAgICAgICAg ICAgICAgIDEyMQotKyMgZGVmaW5lIEtERl9GX0tERl9TQ1JZUFRfQ1RSTF9VSU5UNjQgICAgICAg ICAgICAgICAgICAgICAxMjIKLSsjIGRlZmluZSBLREZfRl9LREZfU0NSWVBUX0RFUklWRSAgICAg ICAgICAgICAgICAgICAgICAgICAgMTIzCi0rIyBkZWZpbmUgS0RGX0ZfS0RGX1NDUllQVF9ORVcg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyNAotKyMgZGVmaW5lIEtERl9GX0tERl9UTFMx X1BSRl9DVFJMX1NUUiAgICAgICAgICAgICAgICAgICAgICAxMjUKLSsjIGRlZmluZSBLREZfRl9L REZfVExTMV9QUkZfREVSSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTI2Ci0rIyBkZWZpbmUg S0RGX0ZfS0RGX1RMUzFfUFJGX05FVyAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyNwotKyMg ZGVmaW5lIEtERl9GX1BCS0RGMl9TRVRfTUVNQlVGICAgICAgICAgICAgICAgICAgICAgICAgICAx MjgKLSAjIGRlZmluZSBLREZfRl9QS0VZX0hLREZfQ1RSTF9TVFIgICAgICAgICAgICAgICAgICAg ICAgICAgMTAzCi0gIyBkZWZpbmUgS0RGX0ZfUEtFWV9IS0RGX0RFUklWRSAgICAgICAgICAgICAg ICAgICAgICAgICAgIDEwMgotICMgZGVmaW5lIEtERl9GX1BLRVlfSEtERl9JTklUICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAxMDgKLUBAIC0zNCw2ICs1MSw3IEBAIGludCBFUlJfbG9hZF9L REZfc3RyaW5ncyh2b2lkKTsKLSAjIGRlZmluZSBLREZfRl9QS0VZX1RMUzFfUFJGX0NUUkxfU1RS ICAgICAgICAgICAgICAgICAgICAgMTAwCi0gIyBkZWZpbmUgS0RGX0ZfUEtFWV9UTFMxX1BSRl9E RVJJVkUgICAgICAgICAgICAgICAgICAgICAgIDEwMQotICMgZGVmaW5lIEtERl9GX1BLRVlfVExT MV9QUkZfSU5JVCAgICAgICAgICAgICAgICAgICAgICAgICAxMTAKLSsjIGRlZmluZSBLREZfRl9T Q1JZUFRfU0VUX01FTUJVRiAgICAgICAgICAgICAgICAgICAgICAgICAgMTI5Ci0gIyBkZWZpbmUg S0RGX0ZfVExTMV9QUkZfQUxHICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDExMQotIAot IC8qCi1AQCAtNTEsNSArNjksNiBAQCBpbnQgRVJSX2xvYWRfS0RGX3N0cmluZ3Modm9pZCk7Ci0g IyBkZWZpbmUgS0RGX1JfVU5LTk9XTl9QQVJBTUVURVJfVFlQRSAgICAgICAgICAgICAgICAgICAg IDEwMwotICMgZGVmaW5lIEtERl9SX1ZBTFVFX0VSUk9SICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAxMDgKLSAjIGRlZmluZSBLREZfUl9WQUxVRV9NSVNTSU5HICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMTAyCi0rIyBkZWZpbmUgS0RGX1JfV1JPTkdfT1VUUFVUX0JVRkZFUl9T SVpFICAgICAgICAgICAgICAgICAgIDExMgotIAotICNlbmRpZgotZGlmZiAtdXAgb3BlbnNzbC0x LjEuMWovaW5jbHVkZS9vcGVuc3NsL2tkZi5oLmV2cC1rZGYgb3BlbnNzbC0xLjEuMWovaW5jbHVk ZS9vcGVuc3NsL2tkZi5oCi0tLS0gb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVuc3NsL2tkZi5o LmV2cC1rZGYJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3Ns LTEuMS4xai9pbmNsdWRlL29wZW5zc2wva2RmLmgJMjAyMS0wMy0wMyAxNDowODowMi40OTMyOTQ4 NjUgKzAxMDAKLUBAIC0xMCwxMCArMTAsNTAgQEAKLSAjaWZuZGVmIEhFQURFUl9LREZfSAotICMg ZGVmaW5lIEhFQURFUl9LREZfSAotIAotKyMgaW5jbHVkZSA8b3BlbnNzbC9vc3NsX3R5cC5oPgot ICMgaW5jbHVkZSA8b3BlbnNzbC9rZGZlcnIuaD4KLS0jaWZkZWYgX19jcGx1c3BsdXMKLSsjIGlm ZGVmIF9fY3BsdXNwbHVzCi0gZXh0ZXJuICJDIiB7Ci0tI2VuZGlmCi0rIyBlbmRpZgotKwotKyMg ZGVmaW5lIEVWUF9LREZfUEJLREYyICAgICBOSURfaWRfcGJrZGYyCi0rIyBkZWZpbmUgRVZQX0tE Rl9TQ1JZUFQgICAgIE5JRF9pZF9zY3J5cHQKLSsjIGRlZmluZSBFVlBfS0RGX1RMUzFfUFJGICAg TklEX3RsczFfcHJmCi0rIyBkZWZpbmUgRVZQX0tERl9IS0RGICAgICAgIE5JRF9oa2RmCi0rCi0r RVZQX0tERl9DVFggKkVWUF9LREZfQ1RYX25ld19pZChpbnQgaWQpOwotK3ZvaWQgRVZQX0tERl9D VFhfZnJlZShFVlBfS0RGX0NUWCAqY3R4KTsKLSsKLSt2b2lkIEVWUF9LREZfcmVzZXQoRVZQX0tE Rl9DVFggKmN0eCk7Ci0raW50IEVWUF9LREZfY3RybChFVlBfS0RGX0NUWCAqY3R4LCBpbnQgY21k LCAuLi4pOwotK2ludCBFVlBfS0RGX3ZjdHJsKEVWUF9LREZfQ1RYICpjdHgsIGludCBjbWQsIHZh X2xpc3QgYXJncyk7Ci0raW50IEVWUF9LREZfY3RybF9zdHIoRVZQX0tERl9DVFggKmN0eCwgY29u c3QgY2hhciAqdHlwZSwgY29uc3QgY2hhciAqdmFsdWUpOwotK3NpemVfdCBFVlBfS0RGX3NpemUo RVZQX0tERl9DVFggKmN0eCk7Ci0raW50IEVWUF9LREZfZGVyaXZlKEVWUF9LREZfQ1RYICpjdHgs IHVuc2lnbmVkIGNoYXIgKmtleSwgc2l6ZV90IGtleWxlbik7Ci0rCi0rCi0rIyBkZWZpbmUgRVZQ X0tERl9DVFJMX1NFVF9QQVNTICAgICAgICAgIDB4MDEgLyogdW5zaWduZWQgY2hhciAqLCBzaXpl X3QgKi8KLSsjIGRlZmluZSBFVlBfS0RGX0NUUkxfU0VUX1NBTFQgICAgICAgICAgMHgwMiAvKiB1 bnNpZ25lZCBjaGFyICosIHNpemVfdCAqLwotKyMgZGVmaW5lIEVWUF9LREZfQ1RSTF9TRVRfSVRF UiAgICAgICAgICAweDAzIC8qIGludCAqLwotKyMgZGVmaW5lIEVWUF9LREZfQ1RSTF9TRVRfTUQg ICAgICAgICAgICAweDA0IC8qIEVWUF9NRCAqICovCi0rIyBkZWZpbmUgRVZQX0tERl9DVFJMX1NF VF9LRVkgICAgICAgICAgIDB4MDUgLyogdW5zaWduZWQgY2hhciAqLCBzaXplX3QgKi8KLSsjIGRl ZmluZSBFVlBfS0RGX0NUUkxfU0VUX01BWE1FTV9CWVRFUyAgMHgwNiAvKiB1aW50NjRfdCAqLwot KyMgZGVmaW5lIEVWUF9LREZfQ1RSTF9TRVRfVExTX1NFQ1JFVCAgICAweDA3IC8qIHVuc2lnbmVk IGNoYXIgKiwgc2l6ZV90ICovCi0rIyBkZWZpbmUgRVZQX0tERl9DVFJMX1JFU0VUX1RMU19TRUVE ICAgIDB4MDgKLSsjIGRlZmluZSBFVlBfS0RGX0NUUkxfQUREX1RMU19TRUVEICAgICAgMHgwOSAv KiB1bnNpZ25lZCBjaGFyICosIHNpemVfdCAqLwotKyMgZGVmaW5lIEVWUF9LREZfQ1RSTF9SRVNF VF9IS0RGX0lORk8gICAweDBhCi0rIyBkZWZpbmUgRVZQX0tERl9DVFJMX0FERF9IS0RGX0lORk8g ICAgIDB4MGIgLyogdW5zaWduZWQgY2hhciAqLCBzaXplX3QgKi8KLSsjIGRlZmluZSBFVlBfS0RG X0NUUkxfU0VUX0hLREZfTU9ERSAgICAgMHgwYyAvKiBpbnQgKi8KLSsjIGRlZmluZSBFVlBfS0RG X0NUUkxfU0VUX1NDUllQVF9OICAgICAgMHgwZCAvKiB1aW50NjRfdCAqLwotKyMgZGVmaW5lIEVW UF9LREZfQ1RSTF9TRVRfU0NSWVBUX1IgICAgICAweDBlIC8qIHVpbnQzMl90ICovCi0rIyBkZWZp bmUgRVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfUCAgICAgIDB4MGYgLyogdWludDMyX3QgKi8KLSsK LSsjIGRlZmluZSBFVlBfS0RGX0hLREZfTU9ERV9FWFRSQUNUX0FORF9FWFBBTkQgIDAKLSsjIGRl ZmluZSBFVlBfS0RGX0hLREZfTU9ERV9FWFRSQUNUX09OTFkgICAgICAgIDEKLSsjIGRlZmluZSBF VlBfS0RGX0hLREZfTU9ERV9FWFBBTkRfT05MWSAgICAgICAgIDIKLSsKLSsKLSsvKioqKiBUaGUg bGVnYWN5IFBLRVktYmFzZWQgS0RGIEFQSSBmb2xsb3dzLiAqKioqLwotIAotICMgZGVmaW5lIEVW UF9QS0VZX0NUUkxfVExTX01EICAgICAgICAgICAgICAgICAgIChFVlBfUEtFWV9BTEdfQ1RSTCkK LSAjIGRlZmluZSBFVlBfUEtFWV9DVFJMX1RMU19TRUNSRVQgICAgICAgICAgICAgICAoRVZQX1BL RVlfQUxHX0NUUkwgKyAxKQotQEAgLTMwLDkgKzcwLDEyIEBAIGV4dGVybiAiQyIgewotICMgZGVm aW5lIEVWUF9QS0VZX0NUUkxfU0NSWVBUX1AgICAgICAgICAgICAgICAgIChFVlBfUEtFWV9BTEdf Q1RSTCArIDEyKQotICMgZGVmaW5lIEVWUF9QS0VZX0NUUkxfU0NSWVBUX01BWE1FTV9CWVRFUyAg ICAgIChFVlBfUEtFWV9BTEdfQ1RSTCArIDEzKQotIAotLSMgZGVmaW5lIEVWUF9QS0VZX0hLREVG X01PREVfRVhUUkFDVF9BTkRfRVhQQU5EIDAKLS0jIGRlZmluZSBFVlBfUEtFWV9IS0RFRl9NT0RF X0VYVFJBQ1RfT05MWSAgICAgICAxCi0tIyBkZWZpbmUgRVZQX1BLRVlfSEtERUZfTU9ERV9FWFBB TkRfT05MWSAgICAgICAgMgotKyMgZGVmaW5lIEVWUF9QS0VZX0hLREVGX01PREVfRVhUUkFDVF9B TkRfRVhQQU5EIFwKLSsgICAgICAgICAgICBFVlBfS0RGX0hLREZfTU9ERV9FWFRSQUNUX0FORF9F WFBBTkQKLSsjIGRlZmluZSBFVlBfUEtFWV9IS0RFRl9NT0RFX0VYVFJBQ1RfT05MWSAgICAgICBc Ci0rICAgICAgICAgICAgRVZQX0tERl9IS0RGX01PREVfRVhUUkFDVF9PTkxZCi0rIyBkZWZpbmUg RVZQX1BLRVlfSEtERUZfTU9ERV9FWFBBTkRfT05MWSAgICAgICAgXAotKyAgICAgICAgICAgIEVW UF9LREZfSEtERl9NT0RFX0VYUEFORF9PTkxZCi0gCi0gIyBkZWZpbmUgRVZQX1BLRVlfQ1RYX3Nl dF90bHMxX3ByZl9tZChwY3R4LCBtZCkgXAotICAgICAgICAgICAgIEVWUF9QS0VZX0NUWF9jdHJs KHBjdHgsIC0xLCBFVlBfUEtFWV9PUF9ERVJJVkUsIFwKLUBAIC05MSw3ICsxMzQsNyBAQCBleHRl cm4gIkMiIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVZQX1BLRVlfQ1RSTF9TQ1JZ UFRfTUFYTUVNX0JZVEVTLCBtYXhtZW1fYnl0ZXMpCi0gCi0gCi0tIyBpZmRlZiAgX19jcGx1c3Bs dXMKLSsjIGlmZGVmIF9fY3BsdXNwbHVzCi0gfQotICMgZW5kaWYKLSAjZW5kaWYKLWRpZmYgLXVw IG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9vc3NsX3R5cC5oLmV2cC1rZGYgb3BlbnNz bC0xLjEuMWovaW5jbHVkZS9vcGVuc3NsL29zc2xfdHlwLmgKLS0tLSBvcGVuc3NsLTEuMS4xai9p bmNsdWRlL29wZW5zc2wvb3NzbF90eXAuaC5ldnAta2RmCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAw MDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVuc3NsL29zc2xfdHlw LmgJMjAyMS0wMy0wMyAxNDowODowMi40OTMyOTQ4NjUgKzAxMDAKLUBAIC05Nyw2ICs5Nyw4IEBA IHR5cGVkZWYgc3RydWN0IGV2cF9wa2V5X2FzbjFfbWV0aG9kX3N0IEUKLSB0eXBlZGVmIHN0cnVj dCBldnBfcGtleV9tZXRob2Rfc3QgRVZQX1BLRVlfTUVUSE9EOwotIHR5cGVkZWYgc3RydWN0IGV2 cF9wa2V5X2N0eF9zdCBFVlBfUEtFWV9DVFg7Ci0gCi0rdHlwZWRlZiBzdHJ1Y3QgZXZwX2tkZl9j dHhfc3QgRVZQX0tERl9DVFg7Ci0rCi0gdHlwZWRlZiBzdHJ1Y3QgZXZwX0VuY29kZV9DdHhfc3Qg RVZQX0VOQ09ERV9DVFg7Ci0gCi0gdHlwZWRlZiBzdHJ1Y3QgaG1hY19jdHhfc3QgSE1BQ19DVFg7 Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai90ZXN0L2J1aWxkLmluZm8uZXZwLWtkZiBvcGVuc3Ns LTEuMS4xai90ZXN0L2J1aWxkLmluZm8KLS0tLSBvcGVuc3NsLTEuMS4xai90ZXN0L2J1aWxkLmlu Zm8uZXZwLWtkZgkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5z c2wtMS4xLjFqL3Rlc3QvYnVpbGQuaW5mbwkyMDIxLTAzLTAzIDE0OjA4OjAyLjQ5MzI5NDg2NSAr MDEwMAotQEAgLTQ0LDcgKzQ0LDggQEAgSU5DTFVERV9NQUlOX19fdGVzdF9saWJ0ZXN0dXRpbF9P TEIgPSAvSQotICAgICAgICAgICBzc2xfdGVzdF9jdHhfdGVzdCBzc2xfdGVzdCB4NTA5YXV4IGNp cGhlcmxpc3RfdGVzdCBhc3luY2lvdGVzdCBcCi0gICAgICAgICAgIGJpb19jYWxsYmFja190ZXN0 IGJpb19tZW1sZWFrX3Rlc3QgXAotICAgICAgICAgICBiaW9wcmludHRlc3Qgc3NsYXBpdGVzdCBk dGxzdGVzdCBzc2xjb3JydXB0dGVzdCBiaW9fZW5jX3Rlc3QgXAotLSAgICAgICAgICBwa2V5X21l dGhfdGVzdCBwa2V5X21ldGhfa2RmX3Rlc3QgdWl0ZXN0IGNpcGhlcmJ5dGVzX3Rlc3QgXAotKyAg ICAgICAgICBwa2V5X21ldGhfdGVzdCBwa2V5X21ldGhfa2RmX3Rlc3QgZXZwX2tkZl90ZXN0IHVp dGVzdCBcCi0rICAgICAgICAgIGNpcGhlcmJ5dGVzX3Rlc3QgXAotICAgICAgICAgICBhc24xX2Vu Y29kZV90ZXN0IGFzbjFfZGVjb2RlX3Rlc3QgYXNuMV9zdHJpbmdfdGFibGVfdGVzdCBcCi0gICAg ICAgICAgIHg1MDlfdGltZV90ZXN0IHg1MDlfZHVwX2NlcnRfdGVzdCB4NTA5X2NoZWNrX2NlcnRf cGtleV90ZXN0IFwKLSAgICAgICAgICAgcmVjb3JkbGVudGVzdCBkcmJndGVzdCBzc2xidWZmZXJ0 ZXN0IFwKLUBAIC0zMzYsNiArMzM3LDEwIEBAIElOQ0xVREVfTUFJTl9fX3Rlc3RfbGlidGVzdHV0 aWxfT0xCID0gL0kKLSAgIElOQ0xVREVbcGtleV9tZXRoX2tkZl90ZXN0XT0uLi9pbmNsdWRlCi0g ICBERVBFTkRbcGtleV9tZXRoX2tkZl90ZXN0XT0uLi9saWJjcnlwdG8gbGlidGVzdHV0aWwuYQot IAotKyAgU09VUkNFW2V2cF9rZGZfdGVzdF09ZXZwX2tkZl90ZXN0LmMKLSsgIElOQ0xVREVbZXZw X2tkZl90ZXN0XT0uLi9pbmNsdWRlCi0rICBERVBFTkRbZXZwX2tkZl90ZXN0XT0uLi9saWJjcnlw dG8gbGlidGVzdHV0aWwuYQotKwotICAgU09VUkNFW3g1MDlfdGltZV90ZXN0XT14NTA5X3RpbWVf dGVzdC5jCi0gICBJTkNMVURFW3g1MDlfdGltZV90ZXN0XT0uLi9pbmNsdWRlCi0gICBERVBFTkRb eDUwOV90aW1lX3Rlc3RdPS4uL2xpYmNyeXB0byBsaWJ0ZXN0dXRpbC5hCi1kaWZmIC11cCBvcGVu c3NsLTEuMS4xai90ZXN0L2V2cF9rZGZfdGVzdC5jLmV2cC1rZGYgb3BlbnNzbC0xLjEuMWovdGVz dC9ldnBfa2RmX3Rlc3QuYwotLS0tIG9wZW5zc2wtMS4xLjFqL3Rlc3QvZXZwX2tkZl90ZXN0LmMu ZXZwLWtkZgkyMDIxLTAzLTAzIDE0OjA4OjAyLjQ5NDI5NDg3NCArMDEwMAotKysrIG9wZW5zc2wt MS4xLjFqL3Rlc3QvZXZwX2tkZl90ZXN0LmMJMjAyMS0wMy0wMyAxNDowODowMi40OTQyOTQ4NzQg KzAxMDAKLUBAIC0wLDAgKzEsMjM3IEBACi0rLyoKLSsgKiBDb3B5cmlnaHQgMjAxOC0yMDE5IFRo ZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLSsgKiBDb3B5 cmlnaHQgKGMpIDIwMTgtMjAxOSwgT3JhY2xlIGFuZC9vciBpdHMgYWZmaWxpYXRlcy4gIEFsbCBy aWdodHMgcmVzZXJ2ZWQuCi0rICoKLSsgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vu c2UgMi4wICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBtYXkgbm90IHVzZQotKyAqIHRoaXMgZmlsZSBl eGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiAgWW91IGNhbiBvYnRhaW4gYSBj b3B5Ci0rICogaW4gdGhlIGZpbGUgTElDRU5TRSBpbiB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBv ciBhdAotKyAqIGh0dHBzOi8vd3d3Lm9wZW5zc2wub3JnL3NvdXJjZS9saWNlbnNlLmh0bWwKLSsg Ki8KLSsKLSsvKiBUZXN0cyBvZiB0aGUgRVZQX0tERl9DVFggQVBJcyAqLwotKwotKyNpbmNsdWRl IDxzdGRpby5oPgotKyNpbmNsdWRlIDxzdHJpbmcuaD4KLSsKLSsjaW5jbHVkZSA8b3BlbnNzbC9l dnAuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9rZGYuaD4KLSsjaW5jbHVkZSAidGVzdHV0aWwuaCIK LSsKLStzdGF0aWMgaW50IHRlc3Rfa2RmX3RsczFfcHJmKHZvaWQpCi0rewotKyAgICBpbnQgcmV0 ID0gMDsKLSsgICAgRVZQX0tERl9DVFggKmtjdHg7Ci0rICAgIHVuc2lnbmVkIGNoYXIgb3V0WzE2 XTsKLSsKLSsgICAgaWYgKChrY3R4ID0gRVZQX0tERl9DVFhfbmV3X2lkKEVWUF9LREZfVExTMV9Q UkYpKSA9PSBOVUxMKSB7Ci0rICAgICAgICBURVNUX2Vycm9yKCJFVlBfS0RGX1RMUzFfUFJGIik7 Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgs IEVWUF9LREZfQ1RSTF9TRVRfTUQsIEVWUF9zaGEyNTYoKSkgPD0gMCkgewotKyAgICAgICAgVEVT VF9lcnJvcigiRVZQX0tERl9DVFJMX1NFVF9NRCIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAg IH0KLSsgICAgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX1RMU19TRUNS RVQsCi0rICAgICAgICAgICAgICAgICAgICAgInNlY3JldCIsIChzaXplX3QpNikgPD0gMCkgewot KyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9DVFJMX1NFVF9UTFNfU0VDUkVUIik7Ci0rICAg ICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9L REZfQ1RSTF9BRERfVExTX1NFRUQsICJzZWVkIiwgKHNpemVfdCk0KSA8PSAwKSB7Ci0rICAgICAg ICBURVNUX2Vycm9yKCJFVlBfS0RGX0NUUkxfQUREX1RMU19TRUVEIik7Ci0rICAgICAgICBnb3Rv IGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9kZXJpdmUoa2N0eCwgb3V0LCBzaXplb2Yo b3V0KSkgPD0gMCkgewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9kZXJpdmUiKTsKLSsg ICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIHsKLSsgICAgICAgIGNvbnN0IHVuc2ln bmVkIGNoYXIgZXhwZWN0ZWRbc2l6ZW9mKG91dCldID0gewotKyAgICAgICAgICAgIDB4OGUsIDB4 NGQsIDB4OTMsIDB4MjUsIDB4MzAsIDB4ZDcsIDB4NjUsIDB4YTAsCi0rICAgICAgICAgICAgMHhh YSwgMHhlOSwgMHg3NCwgMHhjMywgMHgwNCwgMHg3MywgMHg1ZSwgMHhjYwotKyAgICAgICAgfTsK LSsgICAgICAgIGlmICghVEVTVF9tZW1fZXEob3V0LCBzaXplb2Yob3V0KSwgZXhwZWN0ZWQsIHNp emVvZihleHBlY3RlZCkpKSB7Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0r ICAgIH0KLSsgICAgcmV0ID0gMTsKLStlcnI6Ci0rICAgIEVWUF9LREZfQ1RYX2ZyZWUoa2N0eCk7 Ci0rICAgIHJldHVybiByZXQ7Ci0rfQotKwotK3N0YXRpYyBpbnQgdGVzdF9rZGZfaGtkZih2b2lk KQotK3sKLSsgICAgaW50IHJldCA9IDA7Ci0rICAgIEVWUF9LREZfQ1RYICprY3R4OwotKyAgICB1 bnNpZ25lZCBjaGFyIG91dFsxMF07Ci0rCi0rICAgIGlmICgoa2N0eCA9IEVWUF9LREZfQ1RYX25l d19pZChFVlBfS0RGX0hLREYpKSA9PSBOVUxMKSB7Ci0rICAgICAgICBURVNUX2Vycm9yKCJFVlBf S0RGX0hLREYiKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rICAgIGlmIChFVlBfS0RG X2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9NRCwgRVZQX3NoYTI1NigpKSA8PSAwKSB7Ci0r ICAgICAgICBURVNUX2Vycm9yKCJFVlBfS0RGX0NUUkxfU0VUX01EIik7Ci0rICAgICAgICBnb3Rv IGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9T RVRfU0FMVCwgInNhbHQiLCAoc2l6ZV90KTQpIDw9IDApIHsKLSsgICAgICAgIFRFU1RfZXJyb3Io IkVWUF9LREZfQ1RSTF9TRVRfU0FMVCIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsg ICAgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX0tFWSwgInNlY3JldCIs IChzaXplX3QpNikgPD0gMCkgewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9DVFJMX1NF VF9LRVkiKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rICAgIGlmIChFVlBfS0RGX2N0 cmwoa2N0eCwgRVZQX0tERl9DVFJMX0FERF9IS0RGX0lORk8sCi0rICAgICAgICAgICAgICAgICAg ICAgImxhYmVsIiwgKHNpemVfdCk1KSA8PSAwKSB7Ci0rICAgICAgICBURVNUX2Vycm9yKCJFVlBf S0RGX0NUUkxfQUREX0hLREZfSU5GTyIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsg ICAgaWYgKEVWUF9LREZfZGVyaXZlKGtjdHgsIG91dCwgc2l6ZW9mKG91dCkpIDw9IDApIHsKLSsg ICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfZGVyaXZlIik7Ci0rICAgICAgICBnb3RvIGVycjsK LSsgICAgfQotKwotKyAgICB7Ci0rICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyIGV4cGVjdGVk W3NpemVvZihvdXQpXSA9IHsKLSsgICAgICAgICAgICAweDJhLCAweGM0LCAweDM2LCAweDlmLCAw eDUyLCAweDU5LCAweDk2LCAweGY4LCAweGRlLCAweDEzCi0rICAgICAgICB9OwotKyAgICAgICAg aWYgKCFURVNUX21lbV9lcShvdXQsIHNpemVvZihvdXQpLCBleHBlY3RlZCwgc2l6ZW9mKGV4cGVj dGVkKSkpIHsKLSsgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgIH0KLSsgICAgfQotKyAg ICByZXQgPSAxOwotK2VycjoKLSsgICAgRVZQX0tERl9DVFhfZnJlZShrY3R4KTsKLSsgICAgcmV0 dXJuIHJldDsKLSt9Ci0rCi0rc3RhdGljIGludCB0ZXN0X2tkZl9wYmtkZjIodm9pZCkKLSt7Ci0r ICAgIGludCByZXQgPSAwOwotKyAgICBFVlBfS0RGX0NUWCAqa2N0eDsKLSsgICAgdW5zaWduZWQg Y2hhciBvdXRbMzJdOwotKwotKyAgICBpZiAoKGtjdHggPSBFVlBfS0RGX0NUWF9uZXdfaWQoRVZQ X0tERl9QQktERjIpKSA9PSBOVUxMKSB7Ci0rICAgICAgICBURVNUX2Vycm9yKCJFVlBfS0RGX1BC S0RGMiIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgaWYgKEVWUF9LREZfY3Ry bChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX1BBU1MsICJwYXNzd29yZCIsIChzaXplX3QpOCkgPD0g MCkgewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9DVFJMX1NFVF9QQVNTIik7Ci0rICAg ICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9L REZfQ1RSTF9TRVRfU0FMVCwgInNhbHQiLCAoc2l6ZV90KTQpIDw9IDApIHsKLSsgICAgICAgIFRF U1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRfU0FMVCIpOwotKyAgICAgICAgZ290byBlcnI7Ci0r ICAgIH0KLSsgICAgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX0lURVIs IDIpIDw9IDApIHsKLSsgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRfSVRFUiIp OwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgaWYgKEVWUF9LREZfY3RybChrY3R4 LCBFVlBfS0RGX0NUUkxfU0VUX01ELCBFVlBfc2hhMjU2KCkpIDw9IDApIHsKLSsgICAgICAgIFRF U1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRfTUQiKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAg ICB9Ci0rICAgIGlmIChFVlBfS0RGX2Rlcml2ZShrY3R4LCBvdXQsIHNpemVvZihvdXQpKSA8PSAw KSB7Ci0rICAgICAgICBURVNUX2Vycm9yKCJFVlBfS0RGX2Rlcml2ZSIpOwotKyAgICAgICAgZ290 byBlcnI7Ci0rICAgIH0KLSsKLSsgICAgewotKyAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciBl eHBlY3RlZFtzaXplb2Yob3V0KV0gPSB7Ci0rICAgICAgICAgICAgMHhhZSwgMHg0ZCwgMHgwYywg MHg5NSwgMHhhZiwgMHg2YiwgMHg0NiwgMHhkMywKLSsgICAgICAgICAgICAweDJkLCAweDBhLCAw eGRmLCAweGY5LCAweDI4LCAweGYwLCAweDZkLCAweGQwLAotKyAgICAgICAgICAgIDB4MmEsIDB4 MzAsIDB4M2YsIDB4OGUsIDB4ZjMsIDB4YzIsIDB4NTEsIDB4ZGYsCi0rICAgICAgICAgICAgMHhk NiwgMHhlMiwgMHhkOCwgMHg1YSwgMHg5NSwgMHg0NywgMHg0YywgMHg0MwotKyAgICAgICAgfTsK LSsgICAgICAgIGlmICghVEVTVF9tZW1fZXEob3V0LCBzaXplb2Yob3V0KSwgZXhwZWN0ZWQsIHNp emVvZihleHBlY3RlZCkpKSB7Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0r ICAgIH0KLSsgICAgcmV0ID0gMTsKLStlcnI6Ci0rICAgIEVWUF9LREZfQ1RYX2ZyZWUoa2N0eCk7 Ci0rICAgIHJldHVybiByZXQ7Ci0rfQotKwotKyNpZm5kZWYgT1BFTlNTTF9OT19TQ1JZUFQKLStz dGF0aWMgaW50IHRlc3Rfa2RmX3NjcnlwdCh2b2lkKQotK3sKLSsgICAgaW50IHJldCA9IDA7Ci0r ICAgIEVWUF9LREZfQ1RYICprY3R4OwotKyAgICB1bnNpZ25lZCBjaGFyIG91dFs2NF07Ci0rCi0r ICAgIGlmICgoa2N0eCA9IEVWUF9LREZfQ1RYX25ld19pZChFVlBfS0RGX1NDUllQVCkpID09IE5V TEwpIHsKLSsgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfU0NSWVBUIik7Ci0rICAgICAgICBn b3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RS TF9TRVRfUEFTUywgInBhc3N3b3JkIiwgKHNpemVfdCk4KSA8PSAwKSB7Ci0rICAgICAgICBURVNU X2Vycm9yKCJFVlBfS0RGX0NUUkxfU0VUX1BBU1MiKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAg ICB9Ci0rICAgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9TQUxULCAi TmFDbCIsIChzaXplX3QpNCkgPD0gMCkgewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9D VFJMX1NFVF9TQUxUIik7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQ X0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfU0NSWVBUX04sICh1aW50NjRfdCkxMDI0 KSA8PSAwKSB7Ci0rICAgICAgICBURVNUX2Vycm9yKCJFVlBfS0RGX0NUUkxfU0VUX1NDUllQVF9O Iik7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtj dHgsIEVWUF9LREZfQ1RSTF9TRVRfU0NSWVBUX1IsICh1aW50MzJfdCk4KSA8PSAwKSB7Ci0rICAg ICAgICBURVNUX2Vycm9yKCJFVlBfS0RGX0NUUkxfU0VUX1NDUllQVF9SIik7Ci0rICAgICAgICBn b3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RS TF9TRVRfU0NSWVBUX1AsICh1aW50MzJfdCkxNikgPD0gMCkgewotKyAgICAgICAgVEVTVF9lcnJv cigiRVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfUCIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAg IH0KLSsgICAgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX01BWE1FTV9C WVRFUywgKHVpbnQ2NF90KTE2KSA8PSAwKSB7Ci0rICAgICAgICBURVNUX2Vycm9yKCJFVlBfS0RG X0NUUkxfU0VUX01BWE1FTV9CWVRFUyIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsg ICAgaWYgKEVWUF9LREZfZGVyaXZlKGtjdHgsIG91dCwgc2l6ZW9mKG91dCkpID4gMCkgewotKyAg ICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9kZXJpdmUgc2hvdWxkIGhhdmUgZmFpbGVkIik7Ci0r ICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVW UF9LREZfQ1RSTF9TRVRfTUFYTUVNX0JZVEVTLAotKyAgICAgICAgICAgICAgICAgICAgICh1aW50 NjRfdCkoMTAgKiAxMDI0ICogMTAyNCkpIDw9IDApIHsKLSsgICAgICAgIFRFU1RfZXJyb3IoIkVW UF9LREZfQ1RSTF9TRVRfTUFYTUVNX0JZVEVTIik7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAg fQotKyAgICBpZiAoRVZQX0tERl9kZXJpdmUoa2N0eCwgb3V0LCBzaXplb2Yob3V0KSkgPD0gMCkg ewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9kZXJpdmUiKTsKLSsgICAgICAgIGdvdG8g ZXJyOwotKyAgICB9Ci0rCi0rICAgIHsKLSsgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgZXhw ZWN0ZWRbc2l6ZW9mKG91dCldID0gewotKyAgICAgICAgICAgIDB4ZmQsIDB4YmEsIDB4YmUsIDB4 MWMsIDB4OWQsIDB4MzQsIDB4NzIsIDB4MDAsCi0rICAgICAgICAgICAgMHg3OCwgMHg1NiwgMHhl NywgMHgxOSwgMHgwZCwgMHgwMSwgMHhlOSwgMHhmZSwKLSsgICAgICAgICAgICAweDdjLCAweDZh LCAweGQ3LCAweGNiLCAweGM4LCAweDIzLCAweDc4LCAweDMwLAotKyAgICAgICAgICAgIDB4ZTcs IDB4NzMsIDB4NzYsIDB4NjMsIDB4NGIsIDB4MzcsIDB4MzEsIDB4NjIsCi0rICAgICAgICAgICAg MHgyZSwgMHhhZiwgMHgzMCwgMHhkOSwgMHgyZSwgMHgyMiwgMHhhMywgMHg4OCwKLSsgICAgICAg ICAgICAweDZmLCAweGYxLCAweDA5LCAweDI3LCAweDlkLCAweDk4LCAweDMwLCAweGRhLAotKyAg ICAgICAgICAgIDB4YzcsIDB4MjcsIDB4YWYsIDB4YjksIDB4NGEsIDB4ODMsIDB4ZWUsIDB4NmQs Ci0rICAgICAgICAgICAgMHg4MywgMHg2MCwgMHhjYiwgMHhkZiwgMHhhMiwgMHhjYywgMHgwNiwg MHg0MAotKyAgICAgICAgfTsKLSsgICAgICAgIGlmICghVEVTVF9tZW1fZXEob3V0LCBzaXplb2Yo b3V0KSwgZXhwZWN0ZWQsIHNpemVvZihleHBlY3RlZCkpKSB7Ci0rICAgICAgICAgICAgZ290byBl cnI7Ci0rICAgICAgICB9Ci0rICAgIH0KLSsgICAgcmV0ID0gMTsKLStlcnI6Ci0rICAgIEVWUF9L REZfQ1RYX2ZyZWUoa2N0eCk7Ci0rICAgIHJldHVybiByZXQ7Ci0rfQotKyNlbmRpZgotKwotK2lu dCBzZXR1cF90ZXN0cyh2b2lkKQotK3sKLSsgICAgQUREX1RFU1QodGVzdF9rZGZfdGxzMV9wcmYp OwotKyAgICBBRERfVEVTVCh0ZXN0X2tkZl9oa2RmKTsKLSsgICAgQUREX1RFU1QodGVzdF9rZGZf cGJrZGYyKTsKLSsjaWZuZGVmIE9QRU5TU0xfTk9fU0NSWVBUCi0rICAgIEFERF9URVNUKHRlc3Rf a2RmX3NjcnlwdCk7Ci0rI2VuZGlmCi0rICAgIHJldHVybiAxOwotK30KLWRpZmYgLXVwIG9wZW5z c2wtMS4xLjFqL3Rlc3QvZXZwX3Rlc3QuYy5ldnAta2RmIG9wZW5zc2wtMS4xLjFqL3Rlc3QvZXZw X3Rlc3QuYwotLS0tIG9wZW5zc2wtMS4xLjFqL3Rlc3QvZXZwX3Rlc3QuYy5ldnAta2RmCTIwMjEt MDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovdGVzdC9l dnBfdGVzdC5jCTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDk0Mjk0ODc0ICswMTAwCi1AQCAtMTcwNSwx MyArMTcwNSwxNCBAQCBzdGF0aWMgY29uc3QgRVZQX1RFU1RfTUVUSE9EIGVuY29kZV90ZXN0Ci0g ICAgIGVuY29kZV90ZXN0X3J1biwKLSB9OwotIAotKwotIC8qKgotICoqKiAgS0RGIFRFU1RTCi0g KiovCi0gCi0gdHlwZWRlZiBzdHJ1Y3Qga2RmX2RhdGFfc3QgewotICAgICAvKiBDb250ZXh0IGZv ciB0aGlzIG9wZXJhdGlvbiAqLwotLSAgICBFVlBfUEtFWV9DVFggKmN0eDsKLSsgICAgRVZQX0tE Rl9DVFggKmN0eDsKLSAgICAgLyogRXhwZWN0ZWQgb3V0cHV0ICovCi0gICAgIHVuc2lnbmVkIGNo YXIgKm91dHB1dDsKLSAgICAgc2l6ZV90IG91dHB1dF9sZW47Ci1AQCAtMTczOCwxNiArMTczOSwx MSBAQCBzdGF0aWMgaW50IGtkZl90ZXN0X2luaXQoRVZQX1RFU1QgKnQsIGNvCi0gCi0gICAgIGlm ICghVEVTVF9wdHIoa2RhdGEgPSBPUEVOU1NMX3phbGxvYyhzaXplb2YoKmtkYXRhKSkpKQotICAg ICAgICAgcmV0dXJuIDA7Ci0tICAgIGtkYXRhLT5jdHggPSBFVlBfUEtFWV9DVFhfbmV3X2lkKGtk Zl9uaWQsIE5VTEwpOwotKyAgICBrZGF0YS0+Y3R4ID0gRVZQX0tERl9DVFhfbmV3X2lkKGtkZl9u aWQpOwotICAgICBpZiAoa2RhdGEtPmN0eCA9PSBOVUxMKSB7Ci0gICAgICAgICBPUEVOU1NMX2Zy ZWUoa2RhdGEpOwotICAgICAgICAgcmV0dXJuIDA7Ci0gICAgIH0KLS0gICAgaWYgKEVWUF9QS0VZ X2Rlcml2ZV9pbml0KGtkYXRhLT5jdHgpIDw9IDApIHsKLS0gICAgICAgIEVWUF9QS0VZX0NUWF9m cmVlKGtkYXRhLT5jdHgpOwotLSAgICAgICAgT1BFTlNTTF9mcmVlKGtkYXRhKTsKLS0gICAgICAg IHJldHVybiAwOwotLSAgICB9Ci0gICAgIHQtPmRhdGEgPSBrZGF0YTsKLSAgICAgcmV0dXJuIDE7 Ci0gfQotQEAgLTE3NTYsNyArMTc1Miw0MiBAQCBzdGF0aWMgdm9pZCBrZGZfdGVzdF9jbGVhbnVw KEVWUF9URVNUICp0Ci0gewotICAgICBLREZfREFUQSAqa2RhdGEgPSB0LT5kYXRhOwotICAgICBP UEVOU1NMX2ZyZWUoa2RhdGEtPm91dHB1dCk7Ci0tICAgIEVWUF9QS0VZX0NUWF9mcmVlKGtkYXRh LT5jdHgpOwotKyAgICBFVlBfS0RGX0NUWF9mcmVlKGtkYXRhLT5jdHgpOwotK30KLSsKLStzdGF0 aWMgaW50IGtkZl90ZXN0X2N0cmwoRVZQX1RFU1QgKnQsIEVWUF9LREZfQ1RYICprY3R4LAotKyAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSkKLSt7Ci0rICAgIGludCBy djsKLSsgICAgY2hhciAqcCwgKnRtcHZhbDsKLSsKLSsgICAgaWYgKCFURVNUX3B0cih0bXB2YWwg PSBPUEVOU1NMX3N0cmR1cCh2YWx1ZSkpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIHAgPSBz dHJjaHIodG1wdmFsLCAnOicpOwotKyAgICBpZiAocCAhPSBOVUxMKQotKyAgICAgICAgKnArKyA9 ICdcMCc7Ci0rICAgIHJ2ID0gRVZQX0tERl9jdHJsX3N0cihrY3R4LCB0bXB2YWwsIHApOwotKyAg ICBpZiAocnYgPT0gLTIpIHsKLSsgICAgICAgIHQtPmVyciA9ICJLREZfQ1RSTF9JTlZBTElEIjsK LSsgICAgICAgIHJ2ID0gMTsKLSsgICAgfSBlbHNlIGlmIChwICE9IE5VTEwgJiYgcnYgPD0gMCkg ewotKyAgICAgICAgLyogSWYgcCBoYXMgYW4gT0lEIGFuZCBsb29rdXAgZmFpbHMgYXNzdW1lIGRp c2FibGVkIGFsZ29yaXRobSAqLwotKyAgICAgICAgaW50IG5pZCA9IE9CSl9zbjJuaWQocCk7Ci0r Ci0rICAgICAgICBpZiAobmlkID09IE5JRF91bmRlZikKLSsgICAgICAgICAgICAgbmlkID0gT0JK X2xuMm5pZChwKTsKLSsgICAgICAgIGlmIChuaWQgIT0gTklEX3VuZGVmCi0rICAgICAgICAgICAg ICAgICYmIEVWUF9nZXRfZGlnZXN0YnluaWQobmlkKSA9PSBOVUxMCi0rICAgICAgICAgICAgICAg ICYmIEVWUF9nZXRfY2lwaGVyYnluaWQobmlkKSA9PSBOVUxMKSB7Ci0rICAgICAgICAgICAgdC0+ c2tpcCA9IDE7Ci0rICAgICAgICAgICAgcnYgPSAxOwotKyAgICAgICAgfSBlbHNlIHsKLSsgICAg ICAgICAgICB0LT5lcnIgPSAiS0RGX0NUUkxfRVJST1IiOwotKyAgICAgICAgICAgIHJ2ID0gMTsK LSsgICAgICAgIH0KLSsgICAgfQotKyAgICBPUEVOU1NMX2ZyZWUodG1wdmFsKTsKLSsgICAgcmV0 dXJuIHJ2ID4gMDsKLSB9Ci0gCi0gc3RhdGljIGludCBrZGZfdGVzdF9wYXJzZShFVlBfVEVTVCAq dCwKLUBAIC0xNzY3LDcgKzE3OTgsNyBAQCBzdGF0aWMgaW50IGtkZl90ZXN0X3BhcnNlKEVWUF9U RVNUICp0LAotICAgICBpZiAoc3RyY21wKGtleXdvcmQsICJPdXRwdXQiKSA9PSAwKQotICAgICAg ICAgcmV0dXJuIHBhcnNlX2Jpbih2YWx1ZSwgJmtkYXRhLT5vdXRwdXQsICZrZGF0YS0+b3V0cHV0 X2xlbik7Ci0gICAgIGlmIChzdHJuY21wKGtleXdvcmQsICJDdHJsIiwgNCkgPT0gMCkKLS0gICAg ICAgIHJldHVybiBwa2V5X3Rlc3RfY3RybCh0LCBrZGF0YS0+Y3R4LCB2YWx1ZSk7Ci0rICAgICAg ICByZXR1cm4ga2RmX3Rlc3RfY3RybCh0LCBrZGF0YS0+Y3R4LCB2YWx1ZSk7Ci0gICAgIHJldHVy biAwOwotIH0KLSAKLUBAIC0xNzgxLDcgKzE4MTIsNyBAQCBzdGF0aWMgaW50IGtkZl90ZXN0X3J1 bihFVlBfVEVTVCAqdCkKLSAgICAgICAgIHQtPmVyciA9ICJJTlRFUk5BTF9FUlJPUiI7Ci0gICAg ICAgICBnb3RvIGVycjsKLSAgICAgfQotLSAgICBpZiAoRVZQX1BLRVlfZGVyaXZlKGV4cGVjdGVk LT5jdHgsIGdvdCwgJmdvdF9sZW4pIDw9IDApIHsKLSsgICAgaWYgKEVWUF9LREZfZGVyaXZlKGV4 cGVjdGVkLT5jdHgsIGdvdCwgZ290X2xlbikgPD0gMCkgewotICAgICAgICAgdC0+ZXJyID0gIktE Rl9ERVJJVkVfRVJST1IiOwotICAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLUBAIC0xODA3LDYg KzE4MzgsMTA2IEBAIHN0YXRpYyBjb25zdCBFVlBfVEVTVF9NRVRIT0Qga2RmX3Rlc3RfbWUKLSAK LSAKLSAvKioKLSsqKiogIFBLRVkgS0RGIFRFU1RTCi0rKiovCi0rCi0rdHlwZWRlZiBzdHJ1Y3Qg cGtleV9rZGZfZGF0YV9zdCB7Ci0rICAgIC8qIENvbnRleHQgZm9yIHRoaXMgb3BlcmF0aW9uICov Ci0rICAgIEVWUF9QS0VZX0NUWCAqY3R4OwotKyAgICAvKiBFeHBlY3RlZCBvdXRwdXQgKi8KLSsg ICAgdW5zaWduZWQgY2hhciAqb3V0cHV0OwotKyAgICBzaXplX3Qgb3V0cHV0X2xlbjsKLSt9IFBL RVlfS0RGX0RBVEE7Ci0rCi0rLyoKLSsgKiBQZXJmb3JtIHB1YmxpYyBrZXkgb3BlcmF0aW9uIHNl dHVwOiBsb29rdXAga2V5LCBhbGxvY2F0ZWQgY3R4IGFuZCBjYWxsCi0rICogdGhlIGFwcHJvcHJp YXRlIGluaXRpYWxpc2F0aW9uIGZ1bmN0aW9uCi0rICovCi0rc3RhdGljIGludCBwa2V5X2tkZl90 ZXN0X2luaXQoRVZQX1RFU1QgKnQsIGNvbnN0IGNoYXIgKm5hbWUpCi0rewotKyAgICBQS0VZX0tE Rl9EQVRBICprZGF0YTsKLSsgICAgaW50IGtkZl9uaWQgPSBPQkpfc24ybmlkKG5hbWUpOwotKwot KyNpZmRlZiBPUEVOU1NMX05PX1NDUllQVAotKyAgICBpZiAoc3RyY21wKG5hbWUsICJzY3J5cHQi KSA9PSAwKSB7Ci0rICAgICAgICB0LT5za2lwID0gMTsKLSsgICAgICAgIHJldHVybiAxOwotKyAg ICB9Ci0rI2VuZGlmCi0rCi0rICAgIGlmIChrZGZfbmlkID09IE5JRF91bmRlZikKLSsgICAgICAg IGtkZl9uaWQgPSBPQkpfbG4ybmlkKG5hbWUpOwotKwotKyAgICBpZiAoIVRFU1RfcHRyKGtkYXRh ID0gT1BFTlNTTF96YWxsb2Moc2l6ZW9mKCprZGF0YSkpKSkKLSsgICAgICAgIHJldHVybiAwOwot KyAgICBrZGF0YS0+Y3R4ID0gRVZQX1BLRVlfQ1RYX25ld19pZChrZGZfbmlkLCBOVUxMKTsKLSsg ICAgaWYgKGtkYXRhLT5jdHggPT0gTlVMTCkgewotKyAgICAgICAgT1BFTlNTTF9mcmVlKGtkYXRh KTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rICAgIGlmIChFVlBfUEtFWV9kZXJpdmVf aW5pdChrZGF0YS0+Y3R4KSA8PSAwKSB7Ci0rICAgICAgICBFVlBfUEtFWV9DVFhfZnJlZShrZGF0 YS0+Y3R4KTsKLSsgICAgICAgIE9QRU5TU0xfZnJlZShrZGF0YSk7Ci0rICAgICAgICByZXR1cm4g MDsKLSsgICAgfQotKyAgICB0LT5kYXRhID0ga2RhdGE7Ci0rICAgIHJldHVybiAxOwotK30KLSsK LStzdGF0aWMgdm9pZCBwa2V5X2tkZl90ZXN0X2NsZWFudXAoRVZQX1RFU1QgKnQpCi0rewotKyAg ICBQS0VZX0tERl9EQVRBICprZGF0YSA9IHQtPmRhdGE7Ci0rICAgIE9QRU5TU0xfZnJlZShrZGF0 YS0+b3V0cHV0KTsKLSsgICAgRVZQX1BLRVlfQ1RYX2ZyZWUoa2RhdGEtPmN0eCk7Ci0rfQotKwot K3N0YXRpYyBpbnQgcGtleV9rZGZfdGVzdF9wYXJzZShFVlBfVEVTVCAqdCwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqa2V5d29yZCwgY29uc3QgY2hhciAqdmFs dWUpCi0rewotKyAgICBQS0VZX0tERl9EQVRBICprZGF0YSA9IHQtPmRhdGE7Ci0rCi0rICAgIGlm IChzdHJjbXAoa2V5d29yZCwgIk91dHB1dCIpID09IDApCi0rICAgICAgICByZXR1cm4gcGFyc2Vf YmluKHZhbHVlLCAma2RhdGEtPm91dHB1dCwgJmtkYXRhLT5vdXRwdXRfbGVuKTsKLSsgICAgaWYg KHN0cm5jbXAoa2V5d29yZCwgIkN0cmwiLCA0KSA9PSAwKQotKyAgICAgICAgcmV0dXJuIHBrZXlf dGVzdF9jdHJsKHQsIGtkYXRhLT5jdHgsIHZhbHVlKTsKLSsgICAgcmV0dXJuIDA7Ci0rfQotKwot K3N0YXRpYyBpbnQgcGtleV9rZGZfdGVzdF9ydW4oRVZQX1RFU1QgKnQpCi0rewotKyAgICBQS0VZ X0tERl9EQVRBICpleHBlY3RlZCA9IHQtPmRhdGE7Ci0rICAgIHVuc2lnbmVkIGNoYXIgKmdvdCA9 IE5VTEw7Ci0rICAgIHNpemVfdCBnb3RfbGVuID0gZXhwZWN0ZWQtPm91dHB1dF9sZW47Ci0rCi0r ICAgIGlmICghVEVTVF9wdHIoZ290ID0gT1BFTlNTTF9tYWxsb2MoZ290X2xlbikpKSB7Ci0rICAg ICAgICB0LT5lcnIgPSAiSU5URVJOQUxfRVJST1IiOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAg IH0KLSsgICAgaWYgKEVWUF9QS0VZX2Rlcml2ZShleHBlY3RlZC0+Y3R4LCBnb3QsICZnb3RfbGVu KSA8PSAwKSB7Ci0rICAgICAgICB0LT5lcnIgPSAiS0RGX0RFUklWRV9FUlJPUiI7Ci0rICAgICAg ICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoIVRFU1RfbWVtX2VxKGV4cGVjdGVkLT5vdXRw dXQsIGV4cGVjdGVkLT5vdXRwdXRfbGVuLCBnb3QsIGdvdF9sZW4pKSB7Ci0rICAgICAgICB0LT5l cnIgPSAiS0RGX01JU01BVENIIjsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rICAgIHQt PmVyciA9IE5VTEw7Ci0rCi0rIGVycjoKLSsgICAgT1BFTlNTTF9mcmVlKGdvdCk7Ci0rICAgIHJl dHVybiAxOwotK30KLSsKLStzdGF0aWMgY29uc3QgRVZQX1RFU1RfTUVUSE9EIHBrZXlfa2RmX3Rl c3RfbWV0aG9kID0gewotKyAgICAiUEtFWUtERiIsCi0rICAgIHBrZXlfa2RmX3Rlc3RfaW5pdCwK LSsgICAgcGtleV9rZGZfdGVzdF9jbGVhbnVwLAotKyAgICBwa2V5X2tkZl90ZXN0X3BhcnNlLAot KyAgICBwa2V5X2tkZl90ZXN0X3J1bgotK307Ci0rCi0rCi0rLyoqCi0gKioqICBLRVlQQUlSIFRF U1RTCi0gKiovCi0gCi1AQCAtMjMxMCw2ICsyNDQxLDcgQEAgc3RhdGljIGNvbnN0IEVWUF9URVNU X01FVEhPRCAqZXZwX3Rlc3RfbAotICAgICAmZGlnZXN0dmVyaWZ5X3Rlc3RfbWV0aG9kLAotICAg ICAmZW5jb2RlX3Rlc3RfbWV0aG9kLAotICAgICAma2RmX3Rlc3RfbWV0aG9kLAotKyAgICAmcGtl eV9rZGZfdGVzdF9tZXRob2QsCi0gICAgICZrZXlwYWlyX3Rlc3RfbWV0aG9kLAotICAgICAma2V5 Z2VuX3Rlc3RfbWV0aG9kLAotICAgICAmbWFjX3Rlc3RfbWV0aG9kLAotZGlmZiAtdXAgb3BlbnNz bC0xLjEuMWovdGVzdC9wa2V5X21ldGhfa2RmX3Rlc3QuYy5ldnAta2RmIG9wZW5zc2wtMS4xLjFq L3Rlc3QvcGtleV9tZXRoX2tkZl90ZXN0LmMKLS0tLSBvcGVuc3NsLTEuMS4xai90ZXN0L3BrZXlf bWV0aF9rZGZfdGVzdC5jLmV2cC1rZGYJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAx MDAKLSsrKyBvcGVuc3NsLTEuMS4xai90ZXN0L3BrZXlfbWV0aF9rZGZfdGVzdC5jCTIwMjEtMDMt MDMgMTQ6MDg6MDIuNDk0Mjk0ODc0ICswMTAwCi1AQCAtMSw1ICsxLDUgQEAKLSAvKgotLSAqIENv cHlyaWdodCAyMDE3LTIwMTggVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRz IFJlc2VydmVkLgotKyAqIENvcHlyaWdodCAyMDE3LTIwMTkgVGhlIE9wZW5TU0wgUHJvamVjdCBB dXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgotICAqCi0gICogTGljZW5zZWQgdW5kZXIgdGhl IE9wZW5TU0wgbGljZW5zZSAodGhlICJMaWNlbnNlIikuICBZb3UgbWF5IG5vdCB1c2UKLSAgKiB0 aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gIFlvdSBjYW4g b2J0YWluIGEgY29weQotQEAgLTE4LDMwICsxOCwzNCBAQAotIAotIHN0YXRpYyBpbnQgdGVzdF9r ZGZfdGxzMV9wcmYodm9pZCkKLSB7Ci0rICAgIGludCByZXQgPSAwOwotICAgICBFVlBfUEtFWV9D VFggKnBjdHg7Ci0gICAgIHVuc2lnbmVkIGNoYXIgb3V0WzE2XTsKLSAgICAgc2l6ZV90IG91dGxl biA9IHNpemVvZihvdXQpOwotLSAgICBwY3R4ID0gRVZQX1BLRVlfQ1RYX25ld19pZChFVlBfUEtF WV9UTFMxX1BSRiwgTlVMTCk7Ci0gCi0rICAgIGlmICgocGN0eCA9IEVWUF9QS0VZX0NUWF9uZXdf aWQoRVZQX1BLRVlfVExTMV9QUkYsIE5VTEwpKSA9PSBOVUxMKSB7Ci0rICAgICAgICBURVNUX2Vy cm9yKCJFVlBfUEtFWV9UTFMxX1BSRiIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSAg ICAgaWYgKEVWUF9QS0VZX2Rlcml2ZV9pbml0KHBjdHgpIDw9IDApIHsKLSAgICAgICAgIFRFU1Rf ZXJyb3IoIkVWUF9QS0VZX2Rlcml2ZV9pbml0Iik7Ci0tICAgICAgICByZXR1cm4gMDsKLSsgICAg ICAgIGdvdG8gZXJyOwotICAgICB9Ci0gICAgIGlmIChFVlBfUEtFWV9DVFhfc2V0X3RsczFfcHJm X21kKHBjdHgsIEVWUF9zaGEyNTYoKSkgPD0gMCkgewotICAgICAgICAgVEVTVF9lcnJvcigiRVZQ X1BLRVlfQ1RYX3NldF90bHMxX3ByZl9tZCIpOwotLSAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAg ICBnb3RvIGVycjsKLSAgICAgfQotICAgICBpZiAoRVZQX1BLRVlfQ1RYX3NldDFfdGxzMV9wcmZf c2VjcmV0KHBjdHgsICJzZWNyZXQiLCA2KSA8PSAwKSB7Ci0gICAgICAgICBURVNUX2Vycm9yKCJF VlBfUEtFWV9DVFhfc2V0MV90bHMxX3ByZl9zZWNyZXQiKTsKLS0gICAgICAgIHJldHVybiAwOwot KyAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAgICAgaWYgKEVWUF9QS0VZX0NUWF9hZGQxX3Rs czFfcHJmX3NlZWQocGN0eCwgInNlZWQiLCA0KSA8PSAwKSB7Ci0gICAgICAgICBURVNUX2Vycm9y KCJFVlBfUEtFWV9DVFhfYWRkMV90bHMxX3ByZl9zZWVkIik7Ci0tICAgICAgICByZXR1cm4gMDsK LSsgICAgICAgIGdvdG8gZXJyOwotICAgICB9Ci0gICAgIGlmIChFVlBfUEtFWV9kZXJpdmUocGN0 eCwgb3V0LCAmb3V0bGVuKSA8PSAwKSB7Ci0gICAgICAgICBURVNUX2Vycm9yKCJFVlBfUEtFWV9k ZXJpdmUiKTsKLS0gICAgICAgIHJldHVybiAwOwotKyAgICAgICAgZ290byBlcnI7Ci0gICAgIH0K LSAKLSAgICAgewotQEAgLTUwLDQzICs1NCw0OSBAQCBzdGF0aWMgaW50IHRlc3Rfa2RmX3RsczFf cHJmKHZvaWQpCi0gICAgICAgICAgICAgMHhhYSwgMHhlOSwgMHg3NCwgMHhjMywgMHgwNCwgMHg3 MywgMHg1ZSwgMHhjYwotICAgICAgICAgfTsKLSAgICAgICAgIGlmICghVEVTVF9tZW1fZXEob3V0 LCBzaXplb2Yob3V0KSwgZXhwZWN0ZWQsIHNpemVvZihleHBlY3RlZCkpKSB7Ci0tICAgICAgICAg ICAgcmV0dXJuIDA7Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0gICAgICAgICB9Ci0gICAgIH0K LSsgICAgcmV0ID0gMTsKLStlcnI6Ci0gICAgIEVWUF9QS0VZX0NUWF9mcmVlKHBjdHgpOwotLSAg ICByZXR1cm4gMTsKLSsgICAgcmV0dXJuIHJldDsKLSB9Ci0gCi0gc3RhdGljIGludCB0ZXN0X2tk Zl9oa2RmKHZvaWQpCi0gewotKyAgICBpbnQgcmV0ID0gMDsKLSAgICAgRVZQX1BLRVlfQ1RYICpw Y3R4OwotICAgICB1bnNpZ25lZCBjaGFyIG91dFsxMF07Ci0gICAgIHNpemVfdCBvdXRsZW4gPSBz aXplb2Yob3V0KTsKLS0gICAgcGN0eCA9IEVWUF9QS0VZX0NUWF9uZXdfaWQoRVZQX1BLRVlfSEtE RiwgTlVMTCk7Ci0gCi0rICAgIGlmICgocGN0eCA9IEVWUF9QS0VZX0NUWF9uZXdfaWQoRVZQX1BL RVlfSEtERiwgTlVMTCkpID09IE5VTEwpIHsKLSsgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9QS0VZ X0hLREYiKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0gICAgIGlmIChFVlBfUEtFWV9k ZXJpdmVfaW5pdChwY3R4KSA8PSAwKSB7Ci0gICAgICAgICBURVNUX2Vycm9yKCJFVlBfUEtFWV9k ZXJpdmVfaW5pdCIpOwotLSAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICBnb3RvIGVycjsKLSAg ICAgfQotICAgICBpZiAoRVZQX1BLRVlfQ1RYX3NldF9oa2RmX21kKHBjdHgsIEVWUF9zaGEyNTYo KSkgPD0gMCkgewotICAgICAgICAgVEVTVF9lcnJvcigiRVZQX1BLRVlfQ1RYX3NldF9oa2RmX21k Iik7Ci0tICAgICAgICByZXR1cm4gMDsKLSsgICAgICAgIGdvdG8gZXJyOwotICAgICB9Ci0gICAg IGlmIChFVlBfUEtFWV9DVFhfc2V0MV9oa2RmX3NhbHQocGN0eCwgInNhbHQiLCA0KSA8PSAwKSB7 Ci0gICAgICAgICBURVNUX2Vycm9yKCJFVlBfUEtFWV9DVFhfc2V0MV9oa2RmX3NhbHQiKTsKLS0g ICAgICAgIHJldHVybiAwOwotKyAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAgICAgaWYgKEVW UF9QS0VZX0NUWF9zZXQxX2hrZGZfa2V5KHBjdHgsICJzZWNyZXQiLCA2KSA8PSAwKSB7Ci0gICAg ICAgICBURVNUX2Vycm9yKCJFVlBfUEtFWV9DVFhfc2V0MV9oa2RmX2tleSIpOwotLSAgICAgICAg cmV0dXJuIDA7Ci0rICAgICAgICBnb3RvIGVycjsKLSAgICAgfQotICAgICBpZiAoRVZQX1BLRVlf Q1RYX2FkZDFfaGtkZl9pbmZvKHBjdHgsICJsYWJlbCIsIDUpIDw9IDApIHsKLSAgICAgICAgIFRF U1RfZXJyb3IoIkVWUF9QS0VZX0NUWF9zZXQxX2hrZGZfaW5mbyIpOwotLSAgICAgICAgcmV0dXJu IDA7Ci0rICAgICAgICBnb3RvIGVycjsKLSAgICAgfQotICAgICBpZiAoRVZQX1BLRVlfZGVyaXZl KHBjdHgsIG91dCwgJm91dGxlbikgPD0gMCkgewotICAgICAgICAgVEVTVF9lcnJvcigiRVZQX1BL RVlfZGVyaXZlIik7Ci0tICAgICAgICByZXR1cm4gMDsKLSsgICAgICAgIGdvdG8gZXJyOwotICAg ICB9Ci0gCi0gICAgIHsKLUBAIC05NCw2MCArMTA0LDY2IEBAIHN0YXRpYyBpbnQgdGVzdF9rZGZf aGtkZih2b2lkKQotICAgICAgICAgICAgIDB4MmEsIDB4YzQsIDB4MzYsIDB4OWYsIDB4NTIsIDB4 NTksIDB4OTYsIDB4ZjgsIDB4ZGUsIDB4MTMKLSAgICAgICAgIH07Ci0gICAgICAgICBpZiAoIVRF U1RfbWVtX2VxKG91dCwgc2l6ZW9mKG91dCksIGV4cGVjdGVkLCBzaXplb2YoZXhwZWN0ZWQpKSkg ewotLSAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgICAgIGdvdG8gZXJyOwotICAgICAg ICAgfQotICAgICB9Ci0rICAgIHJldCA9IDE7Ci0rZXJyOgotICAgICBFVlBfUEtFWV9DVFhfZnJl ZShwY3R4KTsKLS0gICAgcmV0dXJuIDE7Ci0rICAgIHJldHVybiByZXQ7Ci0gfQotIAotICNpZm5k ZWYgT1BFTlNTTF9OT19TQ1JZUFQKLSBzdGF0aWMgaW50IHRlc3Rfa2RmX3NjcnlwdCh2b2lkKQot IHsKLSsgICAgaW50IHJldCA9IDA7Ci0gICAgIEVWUF9QS0VZX0NUWCAqcGN0eDsKLSAgICAgdW5z aWduZWQgY2hhciBvdXRbNjRdOwotICAgICBzaXplX3Qgb3V0bGVuID0gc2l6ZW9mKG91dCk7Ci0t ICAgIHBjdHggPSBFVlBfUEtFWV9DVFhfbmV3X2lkKEVWUF9QS0VZX1NDUllQVCwgTlVMTCk7Ci0g Ci0rICAgIGlmICgocGN0eCA9IEVWUF9QS0VZX0NUWF9uZXdfaWQoRVZQX1BLRVlfU0NSWVBULCBO VUxMKSkgPT0gTlVMTCkgewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQX1BLRVlfU0NSWVBUIik7 Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotICAgICBpZiAoRVZQX1BLRVlfZGVyaXZlX2lu aXQocGN0eCkgPD0gMCkgewotICAgICAgICAgVEVTVF9lcnJvcigiRVZQX1BLRVlfZGVyaXZlX2lu aXQiKTsKLS0gICAgICAgIHJldHVybiAwOwotKyAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAg ICAgaWYgKEVWUF9QS0VZX0NUWF9zZXQxX3BiZV9wYXNzKHBjdHgsICJwYXNzd29yZCIsIDgpIDw9 IDApIHsKLSAgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9QS0VZX0NUWF9zZXQxX3BiZV9wYXNzIik7 Ci0tICAgICAgICByZXR1cm4gMDsKLSsgICAgICAgIGdvdG8gZXJyOwotICAgICB9Ci0gICAgIGlm IChFVlBfUEtFWV9DVFhfc2V0MV9zY3J5cHRfc2FsdChwY3R4LCAiTmFDbCIsIDQpIDw9IDApIHsK LSAgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9QS0VZX0NUWF9zZXQxX3NjcnlwdF9zYWx0Iik7Ci0t ICAgICAgICByZXR1cm4gMDsKLSsgICAgICAgIGdvdG8gZXJyOwotICAgICB9Ci0gICAgIGlmIChF VlBfUEtFWV9DVFhfc2V0X3NjcnlwdF9OKHBjdHgsIDEwMjQpIDw9IDApIHsKLSAgICAgICAgIFRF U1RfZXJyb3IoIkVWUF9QS0VZX0NUWF9zZXRfc2NyeXB0X04iKTsKLS0gICAgICAgIHJldHVybiAw OwotKyAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAgICAgaWYgKEVWUF9QS0VZX0NUWF9zZXRf c2NyeXB0X3IocGN0eCwgOCkgPD0gMCkgewotICAgICAgICAgVEVTVF9lcnJvcigiRVZQX1BLRVlf Q1RYX3NldF9zY3J5cHRfciIpOwotLSAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICBnb3RvIGVy cjsKLSAgICAgfQotICAgICBpZiAoRVZQX1BLRVlfQ1RYX3NldF9zY3J5cHRfcChwY3R4LCAxNikg PD0gMCkgewotICAgICAgICAgVEVTVF9lcnJvcigiRVZQX1BLRVlfQ1RYX3NldF9zY3J5cHRfcCIp OwotLSAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICBnb3RvIGVycjsKLSAgICAgfQotICAgICBp ZiAoRVZQX1BLRVlfQ1RYX3NldF9zY3J5cHRfbWF4bWVtX2J5dGVzKHBjdHgsIDE2KSA8PSAwKSB7 Ci0gICAgICAgICBURVNUX2Vycm9yKCJFVlBfUEtFWV9DVFhfc2V0X21heG1lbV9ieXRlcyIpOwot LSAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICBnb3RvIGVycjsKLSAgICAgfQotICAgICBpZiAo RVZQX1BLRVlfZGVyaXZlKHBjdHgsIG91dCwgJm91dGxlbikgPiAwKSB7Ci0gICAgICAgICBURVNU X2Vycm9yKCJFVlBfUEtFWV9kZXJpdmUgc2hvdWxkIGhhdmUgZmFpbGVkIik7Ci0tICAgICAgICBy ZXR1cm4gMDsKLSsgICAgICAgIGdvdG8gZXJyOwotICAgICB9Ci0gICAgIGlmIChFVlBfUEtFWV9D VFhfc2V0X3NjcnlwdF9tYXhtZW1fYnl0ZXMocGN0eCwgMTAgKiAxMDI0ICogMTAyNCkgPD0gMCkg ewotICAgICAgICAgVEVTVF9lcnJvcigiRVZQX1BLRVlfQ1RYX3NldF9tYXhtZW1fYnl0ZXMiKTsK LS0gICAgICAgIHJldHVybiAwOwotKyAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAgICAgaWYg KEVWUF9QS0VZX2Rlcml2ZShwY3R4LCBvdXQsICZvdXRsZW4pIDw9IDApIHsKLSAgICAgICAgIFRF U1RfZXJyb3IoIkVWUF9QS0VZX2Rlcml2ZSIpOwotLSAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAg ICBnb3RvIGVycjsKLSAgICAgfQotIAotICAgICB7Ci1AQCAtMTYyLDExICsxNzgsMTMgQEAgc3Rh dGljIGludCB0ZXN0X2tkZl9zY3J5cHQodm9pZCkKLSAgICAgICAgICAgICAweDgzLCAweDYwLCAw eGNiLCAweGRmLCAweGEyLCAweGNjLCAweDA2LCAweDQwCi0gICAgICAgICB9OwotICAgICAgICAg aWYgKCFURVNUX21lbV9lcShvdXQsIHNpemVvZihvdXQpLCBleHBlY3RlZCwgc2l6ZW9mKGV4cGVj dGVkKSkpIHsKLS0gICAgICAgICAgICByZXR1cm4gMDsKLSsgICAgICAgICAgICBnb3RvIGVycjsK LSAgICAgICAgIH0KLSAgICAgfQotKyAgICByZXQgPSAxOwotK2VycjoKLSAgICAgRVZQX1BLRVlf Q1RYX2ZyZWUocGN0eCk7Ci0tICAgIHJldHVybiAxOwotKyAgICByZXR1cm4gcmV0OwotIH0KLSAj ZW5kaWYKLSAKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL3Rlc3QvcmVjaXBlcy8zMC10ZXN0X2V2 cF9kYXRhL2V2cGtkZi50eHQuZXZwLWtkZiBvcGVuc3NsLTEuMS4xai90ZXN0L3JlY2lwZXMvMzAt dGVzdF9ldnBfZGF0YS9ldnBrZGYudHh0Ci0tLS0gb3BlbnNzbC0xLjEuMWovdGVzdC9yZWNpcGVz LzMwLXRlc3RfZXZwX2RhdGEvZXZwa2RmLnR4dC5ldnAta2RmCTIwMjEtMDItMTYgMTY6MjQ6MDEu MDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovdGVzdC9yZWNpcGVzLzMwLXRlc3Rf ZXZwX2RhdGEvZXZwa2RmLnR4dAkyMDIxLTAzLTAzIDE0OjA4OjAyLjQ5NDI5NDg3NCArMDEwMAot QEAgLTEsNSArMSw1IEBACi0gIwotLSMgQ29weXJpZ2h0IDIwMDEtMjAxNyBUaGUgT3BlblNTTCBQ cm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCi0rIyBDb3B5cmlnaHQgMjAwMS0y MDE4IFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLSAj Ci0gIyBMaWNlbnNlZCB1bmRlciB0aGUgT3BlblNTTCBsaWNlbnNlICh0aGUgIkxpY2Vuc2UiKS4g IFlvdSBtYXkgbm90IHVzZQotICMgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGgg dGhlIExpY2Vuc2UuICBZb3UgY2FuIG9idGFpbiBhIGNvcHkKLUBAIC0xNSw3ICsxNSw3IEBACi0g VGl0bGUgPSBUTFMxIFBSRiB0ZXN0cyAoZnJvbSBOSVNUIHRlc3QgdmVjdG9ycykKLSAKLSBLREY9 VExTMS1QUkYKLS1DdHJsLm1kID0gbWQ6TUQ1LVNIQTEKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpN RDUtU0hBMQotIEN0cmwuU2VjcmV0ID0gaGV4c2VjcmV0OmJkZWQ3ZmE1YzE2OTljMDEwYmUyM2Rk MDZhZGEzYTQ4MzQ5ZjIxZTVmODYyNjNkNTEyYzBjNWNjMzc5ZjBlNzgwZWM1NWQ5ODQ0YjJmMWRi MDJhOTY0NTM1MTM1NjhkMAotIEN0cmwubGFiZWwgPSBzZWVkOm1hc3RlciBzZWNyZXQKLSBDdHJs LmNsaWVudF9yYW5kb20gPSBoZXhzZWVkOmU1YWNhZjU0OWNkMjVjMjJkOTY0YzBkOTMwZmE0YjUy NjFkMjUwN2ZhZDg0YzMzNzE1YjdiOWE4NjQwMjA2OTMKLUBAIC0yMyw3ICsyMyw3IEBAIEN0cmwu c2VydmVyX3JhbmRvbSA9IGhleHNlZWQ6MTM1ZTRkNTU3ZmQKLSBPdXRwdXQgPSAyZjY5NjJkZmJj NzQ0YzRiMjEzOGJiNmIzZDMzMDU0YzVlY2MxNGYyNDg1MWQ5ODk2Mzk1YTQ0YWIzOTY0ZWZjMjA5 MGM1YmY1MWEwODkxMjA5ZjQ2YzFlMWU5OThmNjIKLSAKLSBLREY9VExTMS1QUkYKLS1DdHJsLm1k ID0gbWQ6TUQ1LVNIQTEKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpNRDUtU0hBMQotIEN0cmwuU2Vj cmV0ID0gaGV4c2VjcmV0OjJmNjk2MmRmYmM3NDRjNGIyMTM4YmI2YjNkMzMwNTRjNWVjYzE0ZjI0 ODUxZDk4OTYzOTVhNDRhYjM5NjRlZmMyMDkwYzViZjUxYTA4OTEyMDlmNDZjMWUxZTk5OGY2Mgot IEN0cmwubGFiZWwgPSBzZWVkOmtleSBleHBhbnNpb24KLSBDdHJsLnNlcnZlcl9yYW5kb20gPSBo ZXhzZWVkOjY3MjY3ZTY1MGViMzI0NDQxMTlkMjIyYTM2OGMxOTFhZjMwODI4ODhkYzM1YWZlODM2 OGU2MzhjODI4ODc0YmUKLUBAIC0zMSw3ICszMSw3IEBAIEN0cmwuY2xpZW50X3JhbmRvbSA9IGhl eHNlZWQ6ZDU4YTdiMWNkNGYKLSBPdXRwdXQgPSAzMDg4ODI1OTg4ZTc3ZmNlNjhkMTlmNzU2ZTE4 ZTQzZWI3ZmU2NzI0MzM1MDRmZWFmOTliM2M1MDNkOTA5MWIxNjRmMTY2ZGIzMDFkNzBjOWZjMDg3 MGI0YTk0NTYzOTA3YmVlMWE2MWZiNzg2Y2I3MTc1NzY4OTBiY2M1MWNiOWVhZDk3ZTAxZDBhMmZl YTk5Yzk1MzM3N2IxOTUyMDVmZjA3YjM2OTU4OTE3ODc5NmVkYzk2M2ZkODBmZGJlNTE4YTJmYzFj MzVjMThhZThkCi0gCi0gS0RGPVRMUzEtUFJGCi0tQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwu ZGlnZXN0ID0gZGlnZXN0OlNIQTI1NgotIEN0cmwuU2VjcmV0ID0gaGV4c2VjcmV0OmY4OTM4ZWNj OWVkZWJjNTAzMGMwYzZhNDQxZTIxM2NkMjRlNmY3NzBhNTBkZGEwNzg3NmY4ZDU1ZGEwNjJiY2Fk YjM4NmI0MTFmZDRmZTQzMTNhNjA0ZmNlNmMxN2ZiYwotIEN0cmwubGFiZWwgPSBzZWVkOm1hc3Rl ciBzZWNyZXQKLSBDdHJsLmNsaWVudF9yYW5kb20gPSBoZXhzZWVkOjM2YzEyOWQwMWEzMjAwODk0 YjkxNzlmYWFjNTg5ZDk4MzVkNTg3NzVmOWI1ZWEzNTg3Y2I4ZmQwMzY0Y2FlOGMKLUBAIC0zOSw3 ICszOSw3IEBAIEN0cmwuc2VydmVyX3JhbmRvbSA9IGhleHNlZWQ6ZjZjOTU3NWVkN2QKLSBPdXRw dXQgPSAyMDJjODhjMDBmODRhMTdhMjAwMjcwNzk2MDQ3ODc0NjExNzY0NTU1MzllNzA1YmU3MzA4 OTA2MDJjMjg5YTUwMDFlMzRlZWIzYTA0M2U1ZDUyYTY1ZTY2MTI1MTg4YmYKLSAKLSBLREY9VExT MS1QUkYKLS1DdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMjU2 Ci0gQ3RybC5TZWNyZXQgPSBoZXhzZWNyZXQ6MjAyYzg4YzAwZjg0YTE3YTIwMDI3MDc5NjA0Nzg3 NDYxMTc2NDU1NTM5ZTcwNWJlNzMwODkwNjAyYzI4OWE1MDAxZTM0ZWViM2EwNDNlNWQ1MmE2NWU2 NjEyNTE4OGJmCi0gQ3RybC5sYWJlbCA9IHNlZWQ6a2V5IGV4cGFuc2lvbgotIEN0cmwuc2VydmVy X3JhbmRvbSA9IGhleHNlZWQ6YWU2YzgwNmY4YWQ0ZDgwNzg0NTQ5ZGZmMjhhNGI1OGZkODM3Njgx YTUxZDkyOGMzZTMwZWU1ZmYxNGYzOTg2OAotQEAgLTQ4LDcgKzQ4LDcgQEAgT3V0cHV0ID0gZDA2 MTM5ODg5ZmZmYWMxZTNhNzE4NjVmNTA0YWE1ZAotIAotICMgQXMgYWJvdmUgYnV0IHVzZSBsb25n IG5hbWUgZm9yIEtERgotIEtERj10bHMxLXByZgotLUN0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJs LmRpZ2VzdCA9IGRpZ2VzdDpTSEEyNTYKLSBDdHJsLlNlY3JldCA9IGhleHNlY3JldDoyMDJjODhj MDBmODRhMTdhMjAwMjcwNzk2MDQ3ODc0NjExNzY0NTU1MzllNzA1YmU3MzA4OTA2MDJjMjg5YTUw MDFlMzRlZWIzYTA0M2U1ZDUyYTY1ZTY2MTI1MTg4YmYKLSBDdHJsLmxhYmVsID0gc2VlZDprZXkg ZXhwYW5zaW9uCi0gQ3RybC5zZXJ2ZXJfcmFuZG9tID0gaGV4c2VlZDphZTZjODA2ZjhhZDRkODA3 ODQ1NDlkZmYyOGE0YjU4ZmQ4Mzc2ODFhNTFkOTI4YzNlMzBlZTVmZjE0ZjM5ODY4Ci1AQCAtNjQs NyArNjQsNyBAQCBSZXN1bHQgPSBLREZfREVSSVZFX0VSUk9SCi0gCi0gIyBNaXNzaW5nIHNlY3Jl dC4KLSBLREY9VExTMS1QUkYKLS1DdHJsLm1kID0gbWQ6TUQ1LVNIQTEKLStDdHJsLmRpZ2VzdCA9 IGRpZ2VzdDpNRDUtU0hBMQotIEN0cmwuU2VlZCA9IGhleHNlZWQ6MDIKLSBPdXRwdXQgPSAwMwot IFJlc3VsdCA9IEtERl9ERVJJVkVfRVJST1IKLUBAIC03Miw3ICs3Miw3IEBAIFJlc3VsdCA9IEtE Rl9ERVJJVkVfRVJST1IKLSBUaXRsZSA9IEhLREYgdGVzdHMgKGZyb20gUkZDNTg2OSB0ZXN0IHZl Y3RvcnMpCi0gCi0gS0RGID0gSEtERgotLUN0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmRpZ2Vz dCA9IGRpZ2VzdDpTSEEyNTYKLSBDdHJsLklLTSA9IGhleGtleTowYjBiMGIwYjBiMGIwYjBiMGIw YjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYgotIEN0cmwuc2FsdCA9IGhleHNhbHQ6MDAwMTAyMDMw NDA1MDYwNzA4MDkwYTBiMGMKLSBDdHJsLmluZm8gPSBoZXhpbmZvOmYwZjFmMmYzZjRmNWY2Zjdm OGY5Ci1AQCAtODAsMjAgKzgwLDIwIEBAIE91dHB1dCA9IDNjYjI1ZjI1ZmFhY2Q1N2E5MDQzNGY2 NGQwMzYyZjIKLSAKLSBLREYgPSBIS0RGCi0gQ3RybC5tb2RlID0gbW9kZTpFWFRSQUNUX09OTFkK LS1DdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMjU2Ci0gQ3Ry bC5JS00gPSBoZXhrZXk6MGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBi MGIKLSBDdHJsLnNhbHQgPSBoZXhzYWx0OjAwMDEwMjAzMDQwNTA2MDcwODA5MGEwYjBjCi0gT3V0 cHV0ID0gMDc3NzA5MzYyYzJlMzJkZjBkZGMzZjBkYzQ3YmJhNjM5MGI2YzczYmI1MGY5YzMxMjJl Yzg0NGFkN2MyYjNlNQotIAotIEtERiA9IEhLREYKLSBDdHJsLm1vZGUgPSBtb2RlOkVYUEFORF9P TkxZCi0tQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTI1Ngot IEN0cmwuSUtNID0gaGV4a2V5OjA3NzcwOTM2MmMyZTMyZGYwZGRjM2YwZGM0N2JiYTYzOTBiNmM3 M2JiNTBmOWMzMTIyZWM4NDRhZDdjMmIzZTUKLSBDdHJsLmluZm8gPSBoZXhpbmZvOmYwZjFmMmYz ZjRmNWY2ZjdmOGY5Ci0gT3V0cHV0ID0gM2NiMjVmMjVmYWFjZDU3YTkwNDM0ZjY0ZDAzNjJmMmEy ZDJkMGE5MGNmMWE1YTRjNWRiMDJkNTZlY2M0YzViZjM0MDA3MjA4ZDViODg3MTg1ODY1Ci0gCi0g S0RGID0gSEtERgotLUN0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpT SEEyNTYKLSBDdHJsLklLTSA9IGhleGtleTowMDAxMDIwMzA0MDUwNjA3MDgwOTBhMGIwYzBkMGUw ZjEwMTExMjEzMTQxNTE2MTcxODE5MWExYjFjMWQxZTFmMjAyMTIyMjMyNDI1MjYyNzI4MjkyYTJi MmMyZDJlMmYzMDMxMzIzMzM0MzUzNjM3MzgzOTNhM2IzYzNkM2UzZjQwNDE0MjQzNDQ0NTQ2NDc0 ODQ5NGE0YjRjNGQ0ZTRmCi0gQ3RybC5zYWx0ID0gaGV4c2FsdDo2MDYxNjI2MzY0NjU2NjY3Njg2 OTZhNmI2YzZkNmU2ZjcwNzE3MjczNzQ3NTc2Nzc3ODc5N2E3YjdjN2Q3ZTdmODA4MTgyODM4NDg1 ODY4Nzg4ODk4YThiOGM4ZDhlOGY5MDkxOTI5Mzk0OTU5Njk3OTg5OTlhOWI5YzlkOWU5ZmEwYTFh MmEzYTRhNWE2YTdhOGE5YWFhYmFjYWRhZWFmCi0gQ3RybC5pbmZvID0gaGV4aW5mbzpiMGIxYjJi M2I0YjViNmI3YjhiOWJhYmJiY2JkYmViZmMwYzFjMmMzYzRjNWM2YzdjOGM5Y2FjYmNjY2RjZWNm ZDBkMWQyZDNkNGQ1ZDZkN2Q4ZDlkYWRiZGNkZGRlZGZlMGUxZTJlM2U0ZTVlNmU3ZThlOWVhZWJl Y2VkZWVlZmYwZjFmMmYzZjRmNWY2ZjdmOGY5ZmFmYmZjZmRmZWZmCi1AQCAtMTAxLDIwICsxMDEs MjAgQEAgT3V0cHV0ID0gYjExZTM5OGRjODAzMjdhMWM4ZTdmNzhjNTk2YTQ5MwotIAotIEtERiA9 IEhLREYKLSBDdHJsLm1vZGUgPSBtb2RlOkVYVFJBQ1RfT05MWQotLUN0cmwubWQgPSBtZDpTSEEy NTYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEEyNTYKLSBDdHJsLklLTSA9IGhleGtleTowMDAx MDIwMzA0MDUwNjA3MDgwOTBhMGIwYzBkMGUwZjEwMTExMjEzMTQxNTE2MTcxODE5MWExYjFjMWQx ZTFmMjAyMTIyMjMyNDI1MjYyNzI4MjkyYTJiMmMyZDJlMmYzMDMxMzIzMzM0MzUzNjM3MzgzOTNh M2IzYzNkM2UzZjQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NGE0YjRjNGQ0ZTRmCi0gQ3RybC5zYWx0ID0g aGV4c2FsdDo2MDYxNjI2MzY0NjU2NjY3Njg2OTZhNmI2YzZkNmU2ZjcwNzE3MjczNzQ3NTc2Nzc3 ODc5N2E3YjdjN2Q3ZTdmODA4MTgyODM4NDg1ODY4Nzg4ODk4YThiOGM4ZDhlOGY5MDkxOTI5Mzk0 OTU5Njk3OTg5OTlhOWI5YzlkOWU5ZmEwYTFhMmEzYTRhNWE2YTdhOGE5YWFhYmFjYWRhZWFmCi0g T3V0cHV0ID0gMDZhNmI4OGM1ODUzMzYxYTA2MTA0YzljZWIzNWI0NWNlZjc2MDAxNDkwNDY3MTAx NGExOTNmNDBjMTVmYzI0NAotIAotIEtERiA9IEhLREYKLSBDdHJsLm1vZGUgPSBtb2RlOkVYUEFO RF9PTkxZCi0tQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTI1 NgotIEN0cmwuSUtNID0gaGV4a2V5OjA2YTZiODhjNTg1MzM2MWEwNjEwNGM5Y2ViMzViNDVjZWY3 NjAwMTQ5MDQ2NzEwMTRhMTkzZjQwYzE1ZmMyNDQKLSBDdHJsLmluZm8gPSBoZXhpbmZvOmIwYjFi MmIzYjRiNWI2YjdiOGI5YmFiYmJjYmRiZWJmYzBjMWMyYzNjNGM1YzZjN2M4YzljYWNiY2NjZGNl Y2ZkMGQxZDJkM2Q0ZDVkNmQ3ZDhkOWRhZGJkY2RkZGVkZmUwZTFlMmUzZTRlNWU2ZTdlOGU5ZWFl YmVjZWRlZWVmZjBmMWYyZjNmNGY1ZjZmN2Y4ZjlmYWZiZmNmZGZlZmYKLSBPdXRwdXQgPSBiMTFl Mzk4ZGM4MDMyN2ExYzhlN2Y3OGM1OTZhNDkzNDRmMDEyZWRhMmQ0ZWZhZDhhMDUwY2M0YzE5YWZh OTdjNTkwNDVhOTljYWM3ODI3MjcxY2I0MWM2NWU1OTBlMDlkYTMyNzU2MDBjMmYwOWI4MzY3Nzkz YTlhY2EzZGI3MWNjMzBjNTgxNzllYzNlODdjMTRjMDFkNWMxZjM0MzRmMWQ4NwotIAotIEtERiA9 IEhLREYKLS1DdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMjU2 Ci0gQ3RybC5JS00gPSBoZXhrZXk6MGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBi MGIwYjBiMGIKLSBDdHJsLnNhbHQgPSBzYWx0OgotIEN0cmwuaW5mbyA9IGluZm86Ci1AQCAtMTIy LDcgKzEyMiw3IEBAIE91dHB1dCA9IDhkYTRlNzc1YTU2M2MxOGY3MTVmODAyYTA2M2M1YTMKLSAK LSBLREYgPSBIS0RGCi0gQ3RybC5tb2RlID0gbW9kZTpFWFRSQUNUX09OTFkKLS1DdHJsLm1kID0g bWQ6U0hBMjU2Ci0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMjU2Ci0gQ3RybC5JS00gPSBoZXhr ZXk6MGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIKLSBDdHJsLnNh bHQgPSBzYWx0OgotIEN0cmwuaW5mbyA9IGluZm86Ci1AQCAtMTMwLDEzICsxMzAsMTMgQEAgT3V0 cHV0ID0gMTllZjI0YTMyYzcxN2IxNjdmMzNhOTFkNmY2NDhiZAotIAotIEtERiA9IEhLREYKLSBD dHJsLm1vZGUgPSBtb2RlOkVYUEFORF9PTkxZCi0tQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwu ZGlnZXN0ID0gZGlnZXN0OlNIQTI1NgotIEN0cmwuSUtNID0gaGV4a2V5OjE5ZWYyNGEzMmM3MTdi MTY3ZjMzYTkxZDZmNjQ4YmRmOTY1OTY3NzZhZmRiNjM3N2FjNDM0YzFjMjkzY2NiMDQKLSBDdHJs LmluZm8gPSBpbmZvOgotIE91dHB1dCA9IDhkYTRlNzc1YTU2M2MxOGY3MTVmODAyYTA2M2M1YTMx YjhhMTFmNWM1ZWUxODc5ZWMzNDU0ZTVmM2M3MzhkMmQ5ZDIwMTM5NWZhYTRiNjFhOTZjOAotIAot IEtERiA9IEhLREYKLS1DdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNI QTEKLSBDdHJsLklLTSA9IGhleGtleTowYjBiMGIwYjBiMGIwYjBiMGIwYjBiCi0gQ3RybC5zYWx0 ID0gaGV4c2FsdDowMDAxMDIwMzA0MDUwNjA3MDgwOTBhMGIwYwotIEN0cmwuaW5mbyA9IGhleGlu Zm86ZjBmMWYyZjNmNGY1ZjZmN2Y4ZjkKLUBAIC0xNDQsMjAgKzE0NCwyMCBAQCBPdXRwdXQgPSAw ODVhMDFlYTFiMTBmMzY5MzMwNjhiNTZlZmE1YWQ4Ci0gCi0gS0RGID0gSEtERgotIEN0cmwubW9k ZSA9IG1vZGU6RVhUUkFDVF9PTkxZCi0tQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmRpZ2VzdCA9 IGRpZ2VzdDpTSEExCi0gQ3RybC5JS00gPSBoZXhrZXk6MGIwYjBiMGIwYjBiMGIwYjBiMGIwYgot IEN0cmwuc2FsdCA9IGhleHNhbHQ6MDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMKLSBPdXRwdXQg PSA5YjZjMThjNDMyYTdiZjhmMGU3MWM4ZWI4OGY0YjMwYmFhMmJhMjQzCi0gCi0gS0RGID0gSEtE RgotIEN0cmwubW9kZSA9IG1vZGU6RVhQQU5EX09OTFkKLS1DdHJsLm1kID0gbWQ6U0hBMQotK0N0 cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLSBDdHJsLklLTSA9IGhleGtleTo5YjZjMThjNDMyYTdi ZjhmMGU3MWM4ZWI4OGY0YjMwYmFhMmJhMjQzCi0gQ3RybC5pbmZvID0gaGV4aW5mbzpmMGYxZjJm M2Y0ZjVmNmY3ZjhmOQotIE91dHB1dCA9IDA4NWEwMWVhMWIxMGYzNjkzMzA2OGI1NmVmYTVhZDgx YTRmMTRiODIyZjViMDkxNTY4YTljZGQ0ZjE1NWZkYTJjMjJlNDIyNDc4ZDMwNWYzZjg5NgotIAot IEtERiA9IEhLREYKLS1DdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNI QTEKLSBDdHJsLklLTSA9IGhleGtleTowMDAxMDIwMzA0MDUwNjA3MDgwOTBhMGIwYzBkMGUwZjEw MTExMjEzMTQxNTE2MTcxODE5MWExYjFjMWQxZTFmMjAyMTIyMjMyNDI1MjYyNzI4MjkyYTJiMmMy ZDJlMmYzMDMxMzIzMzM0MzUzNjM3MzgzOTNhM2IzYzNkM2UzZjQwNDE0MjQzNDQ0NTQ2NDc0ODQ5 NGE0YjRjNGQ0ZTRmCi0gQ3RybC5zYWx0ID0gaGV4c2FsdDo2MDYxNjI2MzY0NjU2NjY3Njg2OTZh NmI2YzZkNmU2ZjcwNzE3MjczNzQ3NTc2Nzc3ODc5N2E3YjdjN2Q3ZTdmODA4MTgyODM4NDg1ODY4 Nzg4ODk4YThiOGM4ZDhlOGY5MDkxOTI5Mzk0OTU5Njk3OTg5OTlhOWI5YzlkOWU5ZmEwYTFhMmEz YTRhNWE2YTdhOGE5YWFhYmFjYWRhZWFmCi0gQ3RybC5pbmZvID0gaGV4aW5mbzpiMGIxYjJiM2I0 YjViNmI3YjhiOWJhYmJiY2JkYmViZmMwYzFjMmMzYzRjNWM2YzdjOGM5Y2FjYmNjY2RjZWNmZDBk MWQyZDNkNGQ1ZDZkN2Q4ZDlkYWRiZGNkZGRlZGZlMGUxZTJlM2U0ZTVlNmU3ZThlOWVhZWJlY2Vk ZWVlZmYwZjFmMmYzZjRmNWY2ZjdmOGY5ZmFmYmZjZmRmZWZmCi1AQCAtMTY1LDIwICsxNjUsMjAg QEAgT3V0cHV0ID0gMGJkNzcwYTc0ZDExNjBmN2M5ZjEyY2Q1OTEyYTA2ZQotIAotIEtERiA9IEhL REYKLSBDdHJsLm1vZGUgPSBtb2RlOkVYVFJBQ1RfT05MWQotLUN0cmwubWQgPSBtZDpTSEExCi0r Q3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotIEN0cmwuSUtNID0gaGV4a2V5OjAwMDEwMjAzMDQw NTA2MDcwODA5MGEwYjBjMGQwZTBmMTAxMTEyMTMxNDE1MTYxNzE4MTkxYTFiMWMxZDFlMWYyMDIx MjIyMzI0MjUyNjI3MjgyOTJhMmIyYzJkMmUyZjMwMzEzMjMzMzQzNTM2MzczODM5M2EzYjNjM2Qz ZTNmNDA0MTQyNDM0NDQ1NDY0NzQ4NDk0YTRiNGM0ZDRlNGYKLSBDdHJsLnNhbHQgPSBoZXhzYWx0 OjYwNjE2MjYzNjQ2NTY2Njc2ODY5NmE2YjZjNmQ2ZTZmNzA3MTcyNzM3NDc1NzY3Nzc4Nzk3YTdi N2M3ZDdlN2Y4MDgxODI4Mzg0ODU4Njg3ODg4OThhOGI4YzhkOGU4ZjkwOTE5MjkzOTQ5NTk2OTc5 ODk5OWE5YjljOWQ5ZTlmYTBhMWEyYTNhNGE1YTZhN2E4YTlhYWFiYWNhZGFlYWYKLSBPdXRwdXQg PSA4YWRhZTA5YTJhMzA3MDU5NDc4ZDMwOWIyNmM0MTE1YTIyNGNmYWY2Ci0gCi0gS0RGID0gSEtE RgotIEN0cmwubW9kZSA9IG1vZGU6RVhQQU5EX09OTFkKLS1DdHJsLm1kID0gbWQ6U0hBMQotK0N0 cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLSBDdHJsLklLTSA9IGhleGtleTo4YWRhZTA5YTJhMzA3 MDU5NDc4ZDMwOWIyNmM0MTE1YTIyNGNmYWY2Ci0gQ3RybC5pbmZvID0gaGV4aW5mbzpiMGIxYjJi M2I0YjViNmI3YjhiOWJhYmJiY2JkYmViZmMwYzFjMmMzYzRjNWM2YzdjOGM5Y2FjYmNjY2RjZWNm ZDBkMWQyZDNkNGQ1ZDZkN2Q4ZDlkYWRiZGNkZGRlZGZlMGUxZTJlM2U0ZTVlNmU3ZThlOWVhZWJl Y2VkZWVlZmYwZjFmMmYzZjRmNWY2ZjdmOGY5ZmFmYmZjZmRmZWZmCi0gT3V0cHV0ID0gMGJkNzcw YTc0ZDExNjBmN2M5ZjEyY2Q1OTEyYTA2ZWJmZjZhZGNhZTg5OWQ5MjE5MWZlNDMwNTY3M2JhMmZm ZThmYTNmMWE0ZTVhZDc5ZjNmMzM0YjNiMjAyYjIxNzNjNDg2ZWEzN2NlM2QzOTdlZDAzNGM3Zjlk ZmViMTVjNWU5MjczMzZkMDQ0MWY0YzQzMDBlMmNmZjBkMDkwMGI1MmQzYjQKLSAKLSBLREYgPSBI S0RGCi0tQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0gQ3Ry bC5JS00gPSBoZXhrZXk6MGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBi MGIKLSBDdHJsLnNhbHQgPSBzYWx0OgotIEN0cmwuaW5mbyA9IGluZm86Ci1AQCAtMTg2LDIwICsx ODYsMjAgQEAgT3V0cHV0ID0gMGFjMWFmNzAwMmIzZDc2MWQxZTU1Mjk4ZGE5ZDA1MAotIAotIEtE RiA9IEhLREYKLSBDdHJsLm1vZGUgPSBtb2RlOkVYVFJBQ1RfT05MWQotLUN0cmwubWQgPSBtZDpT SEExCi0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotIEN0cmwuSUtNID0gaGV4a2V5OjBiMGIw YjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiCi0gQ3RybC5zYWx0ID0gc2Fs dDoKLSBPdXRwdXQgPSBkYThjOGE3M2M3ZmE3NzI4OGVjNmY1ZTdjMjk3Nzg2YWEwZDMyZDAxCi0g Ci0gS0RGID0gSEtERgotIEN0cmwubW9kZSA9IG1vZGU6RVhQQU5EX09OTFkKLS1DdHJsLm1kID0g bWQ6U0hBMQotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLSBDdHJsLklLTSA9IGhleGtleTpk YThjOGE3M2M3ZmE3NzI4OGVjNmY1ZTdjMjk3Nzg2YWEwZDMyZDAxCi0gQ3RybC5pbmZvID0gaW5m bzoKLSBPdXRwdXQgPSAwYWMxYWY3MDAyYjNkNzYxZDFlNTUyOThkYTlkMDUwNmI5YWU1MjA1NzIy MGEzMDZlMDdiNmI4N2U4ZGYyMWQwZWEwMDAzM2RlMDM5ODRkMzQ5MTgKLSAKLSBLREYgPSBIS0RG Ci0tQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0gQ3RybC5J S00gPSBoZXhrZXk6MGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMK LSBDdHJsLnNhbHQgPSBzYWx0OgotIEN0cmwuaW5mbyA9IGluZm86Ci1AQCAtMjA3LDE0ICsyMDcs MTQgQEAgT3V0cHV0ID0gMmM5MTExNzIwNGQ3NDVmMzUwMGQ2MzZhNjJmNjRmMAotIAotIEtERiA9 IEhLREYKLSBDdHJsLm1vZGUgPSBtb2RlOkVYVFJBQ1RfT05MWQotLUN0cmwubWQgPSBtZDpTSEEx Ci0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotIEN0cmwuSUtNID0gaGV4a2V5OjBjMGMwYzBj MGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjCi0gQ3RybC5zYWx0ID0gc2FsdDoK LSBPdXRwdXQgPSAyYWRjY2FkYTE4Nzc5ZTdjMjA3N2FkMmViMTlkM2YzZTczMTM4NWRkCi0gCi0g S0RGID0gSEtERgotIEN0cmwubW9kZSA9IG1vZGU6RVhQQU5EX09OTFkKLS1DdHJsLm1kID0gbWQ6 U0hBMQotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLSBDdHJsLklLTSA9IGhleGtleToyYWRj Y2FkYTE4Nzc5ZTdjMjA3N2FkMmViMTlkM2YzZTczMTM4NWRkCi0gQ3RybC5pbmZvID0gaW5mbzoK LSBPdXRwdXQgPSAyYzkxMTE3MjA0ZDc0NWYzNTAwZDYzNmE2MmY2NGYwYWIzYmFlNTQ4YWE1M2Q0 MjNiMGQxZjI3ZWJiYTZmNWU1NjczYTA4MWQ3MGNjZTdhY2ZjNDgKLUBAIC0yMjcsMjcgKzIyNywy NyBAQCBPdXRwdXQgPSAwMAotIFJlc3VsdCA9IEtERl9ERVJJVkVfRVJST1IKLSAKLSBLREYgPSBI S0RGCi0tQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0gQ3Ry bC5zYWx0ID0gc2FsdDoKLSBDdHJsLmluZm8gPSBpbmZvOgotIE91dHB1dCA9IDAwCi0gUmVzdWx0 ID0gS0RGX0RFUklWRV9FUlJPUgotIAotIEtERiA9IEhLREYKLS1DdHJsLm1kID0gbWQ6U0hBMQot K0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLSBDdHJsLklLTSA9IGhleGtleTowYzBjMGMwYzBj MGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYwotIEN0cmwuaW5mbyA9IGluZm86Ci0g T3V0cHV0ID0gMmM5MTExNzIwNGQ3NDVmMzUwMGQ2MzZhNjJmNjRmMGFiM2JhZTU0OGFhNTNkNDIz YjBkMWYyN2ViYmE2ZjVlNTY3M2EwODFkNzBjY2U3YWNmYzQ4Ci0gCi0gS0RGID0gSEtERgotLUN0 cmwubWQgPSBtZDpTSEExCi0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotIEN0cmwuSUtNID0g aGV4a2V5OjBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjCi0gQ3Ry bC5zYWx0ID0gc2FsdDoKLSBPdXRwdXQgPSAyYzkxMTE3MjA0ZDc0NWYzNTAwZDYzNmE2MmY2NGYw YWIzYmFlNTQ4YWE1M2Q0MjNiMGQxZjI3ZWJiYTZmNWU1NjczYTA4MWQ3MGNjZTdhY2ZjNDgKLSAK LSBLREYgPSBIS0RGCi0gQ3RybC5tb2RlID0gbW9kZTpFWFRSQUNUX0FORF9FWFBBTkQKLS1DdHJs Lm1kID0gbWQ6U0hBMQotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLSBDdHJsLklLTSA9IGhl eGtleTowYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYwotIEN0cmwu c2FsdCA9IHNhbHQ6Ci0gT3V0cHV0ID0gMmM5MTExNzIwNGQ3NDVmMzUwMGQ2MzZhNjJmNjRmMGFi M2JhZTU0OGFhNTNkNDIzYjBkMWYyN2ViYmE2ZjVlNTY3M2EwODFkNzBjY2U3YWNmYzQ4Ci1AQCAt MzAzLDMgKzMwMywxMzMgQEAgQ3RybC5yID0gcjo4Ci0gQ3RybC5wID0gcDoxCi0gUmVzdWx0ID0g SU5URVJOQUxfRVJST1IKLSAKLStUaXRsZSA9IFBCS0RGMiB0ZXN0cwotKwotK0tERiA9IFBCS0RG MgotK0N0cmwucGFzcyA9IHBhc3M6cGFzc3dvcmQKLStDdHJsLnNhbHQgPSBzYWx0OnNhbHQKLStD dHJsLml0ZXIgPSBpdGVyOjEKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpzaGExCi0rT3V0cHV0ID0g MGM2MGM4MGY5NjFmMGU3MWYzYTliNTI0YWY2MDEyMDYyZmUwMzdhNgotKwotK0tERiA9IFBCS0RG MgotK0N0cmwucGFzcyA9IHBhc3M6cGFzc3dvcmQKLStDdHJsLnNhbHQgPSBzYWx0OnNhbHQKLStD dHJsLml0ZXIgPSBpdGVyOjEKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpzaGEyNTYKLStPdXRwdXQg PSAxMjBmYjZjZmZjZjhiMzJjNDNlNzIyNTI1NmM0ZjgzN2E4NjU0OGM5MmNjYzM1NDgwODA1OTg3 Y2I3MGJlMTdiCi0rCi0rS0RGID0gUEJLREYyCi0rQ3RybC5wYXNzID0gcGFzczpwYXNzd29yZAot K0N0cmwuc2FsdCA9IHNhbHQ6c2FsdAotK0N0cmwuaXRlciA9IGl0ZXI6MQotK0N0cmwuZGlnZXN0 ID0gZGlnZXN0OnNoYTUxMgotK091dHB1dCA9IDg2N2Y3MGNmMWFkZTAyY2ZmMzc1MjU5OWEzYTUz ZGM0YWYzNGM3YTY2OTgxNWFlNWQ1MTM1NTRlMWM4Y2YyNTJjMDJkNDcwYTI4NWEwNTAxYmFkOTk5 YmZlOTQzYzA4ZjA1MDIzNWQ3ZDY4YjFkYTU1ZTYzZjczYjYwYTU3ZmNlCi0rCi0rS0RGID0gUEJL REYyCi0rQ3RybC5wYXNzID0gcGFzczpwYXNzd29yZAotK0N0cmwuc2FsdCA9IHNhbHQ6c2FsdAot K0N0cmwuaXRlciA9IGl0ZXI6MgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OnNoYTEKLStPdXRwdXQg PSBlYTZjMDE0ZGM3MmQ2ZjhjY2QxZWQ5MmFjZTFkNDFmMGQ4ZGU4OTU3Ci0rCi0rS0RGID0gUEJL REYyCi0rQ3RybC5wYXNzID0gcGFzczpwYXNzd29yZAotK0N0cmwuc2FsdCA9IHNhbHQ6c2FsdAot K0N0cmwuaXRlciA9IGl0ZXI6MgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OnNoYTI1NgotK091dHB1 dCA9IGFlNGQwYzk1YWY2YjQ2ZDMyZDBhZGZmOTI4ZjA2ZGQwMmEzMDNmOGVmM2MyNTFkZmQ2ZTJk ODVhOTU0NzRjNDMKLSsKLStLREYgPSBQQktERjIKLStDdHJsLnBhc3MgPSBwYXNzOnBhc3N3b3Jk Ci0rQ3RybC5zYWx0ID0gc2FsdDpzYWx0Ci0rQ3RybC5pdGVyID0gaXRlcjoyCi0rQ3RybC5kaWdl c3QgPSBkaWdlc3Q6c2hhNTEyCi0rT3V0cHV0ID0gZTFkOWMxNmFhNjgxNzA4YTQ1ZjVjN2M0ZTIx NWNlYjY2ZTAxMWEyZTlmMDA0MDcxM2YxOGFlZmRiODY2ZDUzY2Y3NmNhYjI4NjhhMzliOWY3ODQw ZWRjZTRmZWY1YTgyYmU2NzMzNWM3N2E2MDY4ZTA0MTEyNzU0ZjI3Y2NmNGUKLSsKLStLREYgPSBQ QktERjIKLStDdHJsLnBhc3MgPSBwYXNzOnBhc3N3b3JkCi0rQ3RybC5zYWx0ID0gc2FsdDpzYWx0 Ci0rQ3RybC5pdGVyID0gaXRlcjo0MDk2Ci0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6c2hhMQotK091 dHB1dCA9IDRiMDA3OTAxYjc2NTQ4OWFiZWFkNDlkOTI2ZjcyMWQwNjVhNDI5YzEKLSsKLStLREYg PSBQQktERjIKLStDdHJsLnBhc3MgPSBwYXNzOnBhc3N3b3JkCi0rQ3RybC5zYWx0ID0gc2FsdDpz YWx0Ci0rQ3RybC5pdGVyID0gaXRlcjo0MDk2Ci0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6c2hhMjU2 Ci0rT3V0cHV0ID0gYzVlNDc4ZDU5Mjg4Yzg0MWFhNTMwZGI2ODQ1YzRjOGQ5NjI4OTNhMDAxY2U0 ZTExYTQ5NjM4NzNhYTk4MTM0YQotKwotK0tERiA9IFBCS0RGMgotK0N0cmwucGFzcyA9IHBhc3M6 cGFzc3dvcmQKLStDdHJsLnNhbHQgPSBzYWx0OnNhbHQKLStDdHJsLml0ZXIgPSBpdGVyOjQwOTYK LStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpzaGE1MTIKLStPdXRwdXQgPSBkMTk3YjFiMzNkYjAxNDNl MDE4YjEyZjNkMWQxNDc5ZTZjZGViZGNjOTdjNWMwZjg3ZjY5MDJlMDcyZjQ1N2I1MTQzZjMwNjAy NjQxYjNkNTVjZDMzNTk4OGNiMzZiODQzNzYwNjBlY2Q1MzJlMDM5Yjc0MmEyMzk0MzRhZjJkNQot KwotK0tERiA9IFBCS0RGMgotK0N0cmwucGFzcyA9IHBhc3M6cGFzc3dvcmRQQVNTV09SRHBhc3N3 b3JkCi0rQ3RybC5zYWx0ID0gc2FsdDpzYWx0U0FMVHNhbHRTQUxUc2FsdFNBTFRzYWx0U0FMVHNh bHQKLStDdHJsLml0ZXIgPSBpdGVyOjQwOTYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpzaGExCi0r T3V0cHV0ID0gM2QyZWVjNGZlNDFjODQ5YjgwYzhkODM2NjJjMGU0NGE4YjI5MWE5NjRjZjJmMDcw MzgKLSsKLStLREYgPSBQQktERjIKLStDdHJsLnBhc3MgPSBwYXNzOnBhc3N3b3JkUEFTU1dPUkRw YXNzd29yZAotK0N0cmwuc2FsdCA9IHNhbHQ6c2FsdFNBTFRzYWx0U0FMVHNhbHRTQUxUc2FsdFNB TFRzYWx0Ci0rQ3RybC5pdGVyID0gaXRlcjo0MDk2Ci0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6c2hh MjU2Ci0rT3V0cHV0ID0gMzQ4Yzg5ZGJjYmQzMmIyZjMyZDgxNGI4MTE2ZTg0Y2YyYjE3MzQ3ZWJj MTgwMDE4MWM0ZTJhMWZiOGRkNTNlMWM2MzU1MThjN2RhYzQ3ZTkKLSsKLStLREYgPSBQQktERjIK LStDdHJsLnBhc3MgPSBwYXNzOnBhc3N3b3JkUEFTU1dPUkRwYXNzd29yZAotK0N0cmwuc2FsdCA9 IHNhbHQ6c2FsdFNBTFRzYWx0U0FMVHNhbHRTQUxUc2FsdFNBTFRzYWx0Ci0rQ3RybC5pdGVyID0g aXRlcjo0MDk2Ci0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6c2hhNTEyCi0rT3V0cHV0ID0gOGMwNTEx ZjRjNmU1OTdjNmFjNjMxNWQ4ZjAzNjJlMjI1ZjNjNTAxNDk1YmEyM2I4NjhjMDA1MTc0ZGM0ZWU3 MTExNWI1OWY5ZTYwY2Q5NTMyZmEzM2UwZjc1YWVmZTMwMjI1YzU4M2ExODZjZDgyYmQ0ZGFlYTk3 MjRhM2QzYjgKLSsKLStLREYgPSBQQktERjIKLStDdHJsLmhleHBhc3MgPSBoZXhwYXNzOjcwNjE3 MzczMDA3NzZmNzI2NAotK0N0cmwuaGV4c2FsdCA9IGhleHNhbHQ6NzM2MTAwNmM3NAotK0N0cmwu aXRlciA9IGl0ZXI6NDA5NgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OnNoYTEKLStPdXRwdXQgPSA1 NmZhNmFhNzU1NDgwOTlkY2MzN2Q3ZjAzNDI1ZTBjMwotKwotK0tERiA9IFBCS0RGMgotK0N0cmwu aGV4cGFzcyA9IGhleHBhc3M6NzA2MTczNzMwMDc3NmY3MjY0Ci0rQ3RybC5oZXhzYWx0ID0gaGV4 c2FsdDo3MzYxMDA2Yzc0Ci0rQ3RybC5pdGVyID0gaXRlcjo0MDk2Ci0rQ3RybC5kaWdlc3QgPSBk aWdlc3Q6c2hhMjU2Ci0rT3V0cHV0ID0gODliNjlkMDUxNmY4Mjk4OTNjNjk2MjI2NjUwYTg2ODcK LSsKLStLREYgPSBQQktERjIKLStDdHJsLmhleHBhc3MgPSBoZXhwYXNzOjcwNjE3MzczMDA3NzZm NzI2NAotK0N0cmwuaGV4c2FsdCA9IGhleHNhbHQ6NzM2MTAwNmM3NAotK0N0cmwuaXRlciA9IGl0 ZXI6NDA5NgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OnNoYTUxMgotK091dHB1dCA9IDlkOWU5YzRj ZDIxZmU0YmUyNGQ1YjgyNDRjNzU5NjY1Ci0rCi0rVGl0bGUgPSBQQktERjIgdGVzdHMgZm9yIGVt cHR5IGlucHV0cwotKwotK0tERiA9IFBCS0RGMgotK0N0cmwucGFzcyA9IHBhc3M6Ci0rQ3RybC5z YWx0ID0gc2FsdDpzYWx0Ci0rQ3RybC5pdGVyID0gaXRlcjoxCi0rQ3RybC5kaWdlc3QgPSBkaWdl c3Q6c2hhMQotK091dHB1dCA9IGEzM2RkZGMzMDQ3ODE4NTUxNTMxMWY4NzUyODk1ZDM2ZWE0MzYz YTIKLSsKLStLREYgPSBQQktERjIKLStDdHJsLnBhc3MgPSBwYXNzOgotK0N0cmwuc2FsdCA9IHNh bHQ6c2FsdAotK0N0cmwuaXRlciA9IGl0ZXI6MQotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OnNoYTI1 NgotK091dHB1dCA9IGYxMzVjMjc5OTNiYWY5ODc3M2M1Y2RiNDBhNTcwNmNlNmEzNDVjZGUKLSsK LStLREYgPSBQQktERjIKLStDdHJsLnBhc3MgPSBwYXNzOgotK0N0cmwuc2FsdCA9IHNhbHQ6c2Fs dAotK0N0cmwuaXRlciA9IGl0ZXI6MQotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OnNoYTUxMgotK091 dHB1dCA9IDAwZWY0MmNkYmZjOThkMjlkYjIwOTc2NjA4ZTQ1NTU2N2ZkZGRmMTQKLSsKLWRpZmYg LXVwIG9wZW5zc2wtMS4xLjFqL3Rlc3QvcmVjaXBlcy8zMC10ZXN0X2V2cF9kYXRhL2V2cHBrZXlf a2RmLnR4dC5ldnAta2RmIG9wZW5zc2wtMS4xLjFqL3Rlc3QvcmVjaXBlcy8zMC10ZXN0X2V2cF9k YXRhL2V2cHBrZXlfa2RmLnR4dAotLS0tIG9wZW5zc2wtMS4xLjFqL3Rlc3QvcmVjaXBlcy8zMC10 ZXN0X2V2cF9kYXRhL2V2cHBrZXlfa2RmLnR4dC5ldnAta2RmCTIwMjEtMDMtMDMgMTQ6MDg6MDIu NDk0Mjk0ODc0ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovdGVzdC9yZWNpcGVzLzMwLXRlc3Rf ZXZwX2RhdGEvZXZwcGtleV9rZGYudHh0CTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDk0Mjk0ODc0ICsw MTAwCi1AQCAtMCwwICsxLDMwNSBAQAotKyMKLSsjIENvcHlyaWdodCAyMDAxLTIwMTggVGhlIE9w ZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgotKyMKLSsjIExpY2Vu c2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSAyLjAgKHRoZSAiTGljZW5zZSIpLiAgWW91IG1h eSBub3QgdXNlCi0rIyB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGlj ZW5zZS4gIFlvdSBjYW4gb2J0YWluIGEgY29weQotKyMgaW4gdGhlIGZpbGUgTElDRU5TRSBpbiB0 aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBvciBhdAotKyMgaHR0cHM6Ly93d3cub3BlbnNzbC5vcmcv c291cmNlL2xpY2Vuc2UuaHRtbAotKwotKyMgVGVzdHMgc3RhcnQgd2l0aCBvbmUgb2YgdGhlc2Ug a2V5d29yZHMKLSsjICAgICAgIENpcGhlciBEZWNyeXB0IERlcml2ZSBEaWdlc3QgRW5jb2Rpbmcg S0RGIFBLRVlLREYgTUFDIFBCRQotKyMgICAgICAgUHJpdlB1YktleVBhaXIgU2lnbiBWZXJpZnkg VmVyaWZ5UmVjb3ZlcgotKyMgYW5kIGNvbnRpbnVlIHVudGlsIGEgYmxhbmsgbGluZS4gIExpbmVz IHN0YXJ0aW5nIHdpdGggYSBwb3VuZCBzaWduLAotKyMgbGlrZSB0aGlzIHByb2xvZywgYXJlIGln bm9yZWQuCi0rCi0rVGl0bGUgPSBUTFMxIFBSRiB0ZXN0cyAoZnJvbSBOSVNUIHRlc3QgdmVjdG9y cykKLSsKLStQS0VZS0RGPVRMUzEtUFJGCi0rQ3RybC5tZCA9IG1kOk1ENS1TSEExCi0rQ3RybC5T ZWNyZXQgPSBoZXhzZWNyZXQ6YmRlZDdmYTVjMTY5OWMwMTBiZTIzZGQwNmFkYTNhNDgzNDlmMjFl NWY4NjI2M2Q1MTJjMGM1Y2MzNzlmMGU3ODBlYzU1ZDk4NDRiMmYxZGIwMmE5NjQ1MzUxMzU2OGQw Ci0rQ3RybC5sYWJlbCA9IHNlZWQ6bWFzdGVyIHNlY3JldAotK0N0cmwuY2xpZW50X3JhbmRvbSA9 IGhleHNlZWQ6ZTVhY2FmNTQ5Y2QyNWMyMmQ5NjRjMGQ5MzBmYTRiNTI2MWQyNTA3ZmFkODRjMzM3 MTViN2I5YTg2NDAyMDY5MwotK0N0cmwuc2VydmVyX3JhbmRvbSA9IGhleHNlZWQ6MTM1ZTRkNTU3 ZmRmM2FhNjQwNmQ4Mjk3NWQ1YzYwNmE5NzM0YzkzMzRiNDIxMzZlOTY5OTBmYmQ1MzU4Y2RiMgot K091dHB1dCA9IDJmNjk2MmRmYmM3NDRjNGIyMTM4YmI2YjNkMzMwNTRjNWVjYzE0ZjI0ODUxZDk4 OTYzOTVhNDRhYjM5NjRlZmMyMDkwYzViZjUxYTA4OTEyMDlmNDZjMWUxZTk5OGY2MgotKwotK1BL RVlLREY9VExTMS1QUkYKLStDdHJsLm1kID0gbWQ6TUQ1LVNIQTEKLStDdHJsLlNlY3JldCA9IGhl eHNlY3JldDoyZjY5NjJkZmJjNzQ0YzRiMjEzOGJiNmIzZDMzMDU0YzVlY2MxNGYyNDg1MWQ5ODk2 Mzk1YTQ0YWIzOTY0ZWZjMjA5MGM1YmY1MWEwODkxMjA5ZjQ2YzFlMWU5OThmNjIKLStDdHJsLmxh YmVsID0gc2VlZDprZXkgZXhwYW5zaW9uCi0rQ3RybC5zZXJ2ZXJfcmFuZG9tID0gaGV4c2VlZDo2 NzI2N2U2NTBlYjMyNDQ0MTE5ZDIyMmEzNjhjMTkxYWYzMDgyODg4ZGMzNWFmZTgzNjhlNjM4Yzgy ODg3NGJlCi0rQ3RybC5jbGllbnRfcmFuZG9tID0gaGV4c2VlZDpkNThhN2IxY2Q0ZmVkYWEyMzIx NTlkZjY1MmNlMTg4ZjlkOTk3ZTA2MWI5YmY0OGU4M2I2Mjk5MDQ0MDkzMWY2Ci0rT3V0cHV0ID0g MzA4ODgyNTk4OGU3N2ZjZTY4ZDE5Zjc1NmUxOGU0M2ViN2ZlNjcyNDMzNTA0ZmVhZjk5YjNjNTAz ZDkwOTFiMTY0ZjE2NmRiMzAxZDcwYzlmYzA4NzBiNGE5NDU2MzkwN2JlZTFhNjFmYjc4NmNiNzE3 NTc2ODkwYmNjNTFjYjllYWQ5N2UwMWQwYTJmZWE5OWM5NTMzNzdiMTk1MjA1ZmYwN2IzNjk1ODkx Nzg3OTZlZGM5NjNmZDgwZmRiZTUxOGEyZmMxYzM1YzE4YWU4ZAotKwotK1BLRVlLREY9VExTMS1Q UkYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5TZWNyZXQgPSBoZXhzZWNyZXQ6Zjg5Mzhl Y2M5ZWRlYmM1MDMwYzBjNmE0NDFlMjEzY2QyNGU2Zjc3MGE1MGRkYTA3ODc2ZjhkNTVkYTA2MmJj YWRiMzg2YjQxMWZkNGZlNDMxM2E2MDRmY2U2YzE3ZmJjCi0rQ3RybC5sYWJlbCA9IHNlZWQ6bWFz dGVyIHNlY3JldAotK0N0cmwuY2xpZW50X3JhbmRvbSA9IGhleHNlZWQ6MzZjMTI5ZDAxYTMyMDA4 OTRiOTE3OWZhYWM1ODlkOTgzNWQ1ODc3NWY5YjVlYTM1ODdjYjhmZDAzNjRjYWU4YwotK0N0cmwu c2VydmVyX3JhbmRvbSA9IGhleHNlZWQ6ZjZjOTU3NWVkN2RkZDczZTFmN2QxNmVjYTExNTQxNTgx MmE0M2MyYjc0N2RhYWFhZTA0M2FiZmI1MDA1M2ZjZQotK091dHB1dCA9IDIwMmM4OGMwMGY4NGEx N2EyMDAyNzA3OTYwNDc4NzQ2MTE3NjQ1NTUzOWU3MDViZTczMDg5MDYwMmMyODlhNTAwMWUzNGVl YjNhMDQzZTVkNTJhNjVlNjYxMjUxODhiZgotKwotK1BLRVlLREY9VExTMS1QUkYKLStDdHJsLm1k ID0gbWQ6U0hBMjU2Ci0rQ3RybC5TZWNyZXQgPSBoZXhzZWNyZXQ6MjAyYzg4YzAwZjg0YTE3YTIw MDI3MDc5NjA0Nzg3NDYxMTc2NDU1NTM5ZTcwNWJlNzMwODkwNjAyYzI4OWE1MDAxZTM0ZWViM2Ew NDNlNWQ1MmE2NWU2NjEyNTE4OGJmCi0rQ3RybC5sYWJlbCA9IHNlZWQ6a2V5IGV4cGFuc2lvbgot K0N0cmwuc2VydmVyX3JhbmRvbSA9IGhleHNlZWQ6YWU2YzgwNmY4YWQ0ZDgwNzg0NTQ5ZGZmMjhh NGI1OGZkODM3NjgxYTUxZDkyOGMzZTMwZWU1ZmYxNGYzOTg2OAotK0N0cmwuY2xpZW50X3JhbmRv bSA9IGhleHNlZWQ6NjJlMWZkOTFmMjNmNTU4YTYwNWYyODQ3OGM1OGNmNzI2MzdiODk3ODRkOTU5 ZGY3ZTk0NmQzZjA3YmQxYjYxNgotK091dHB1dCA9IGQwNjEzOTg4OWZmZmFjMWUzYTcxODY1ZjUw NGFhNWQwZDJhMmU4OTUwNmM2ZjIyNzliNjcwYzNlMWI3NGY1MzEwMTZhMjUzMGM1MWEzYTBmN2Ux ZDY1OTBkMGYwNTY2YjJmMzg3ZjhkMTFmZDRmNzMxY2RkNTcyZDJlYWU5MjdmNmYyZjgxNDEwYjI1 ZTY5NjBiZTY4OTg1YWRkNmMzODQ0NWFkOWY4YzY0YmY4MDY4YmY5YTY2Nzk0ODVkOTY2ZjFhZDZm NjhiNDM0OTViMTBhNjgzNzU1ZWEyYjg1OGQ3MGNjYWM3ZWM4YjA1M2M2YmQ0MWNhMjk5ZDRlNTE5 MjgKLSsKLSsjIEFzIGFib3ZlIGJ1dCB1c2UgbG9uZyBuYW1lIGZvciBLREYKLStQS0VZS0RGPXRs czEtcHJmCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuU2VjcmV0ID0gaGV4c2VjcmV0OjIw MmM4OGMwMGY4NGExN2EyMDAyNzA3OTYwNDc4NzQ2MTE3NjQ1NTUzOWU3MDViZTczMDg5MDYwMmMy ODlhNTAwMWUzNGVlYjNhMDQzZTVkNTJhNjVlNjYxMjUxODhiZgotK0N0cmwubGFiZWwgPSBzZWVk OmtleSBleHBhbnNpb24KLStDdHJsLnNlcnZlcl9yYW5kb20gPSBoZXhzZWVkOmFlNmM4MDZmOGFk NGQ4MDc4NDU0OWRmZjI4YTRiNThmZDgzNzY4MWE1MWQ5MjhjM2UzMGVlNWZmMTRmMzk4NjgKLStD dHJsLmNsaWVudF9yYW5kb20gPSBoZXhzZWVkOjYyZTFmZDkxZjIzZjU1OGE2MDVmMjg0NzhjNThj ZjcyNjM3Yjg5Nzg0ZDk1OWRmN2U5NDZkM2YwN2JkMWI2MTYKLStPdXRwdXQgPSBkMDYxMzk4ODlm ZmZhYzFlM2E3MTg2NWY1MDRhYTVkMGQyYTJlODk1MDZjNmYyMjc5YjY3MGMzZTFiNzRmNTMxMDE2 YTI1MzBjNTFhM2EwZjdlMWQ2NTkwZDBmMDU2NmIyZjM4N2Y4ZDExZmQ0ZjczMWNkZDU3MmQyZWFl OTI3ZjZmMmY4MTQxMGIyNWU2OTYwYmU2ODk4NWFkZDZjMzg0NDVhZDlmOGM2NGJmODA2OGJmOWE2 Njc5NDg1ZDk2NmYxYWQ2ZjY4YjQzNDk1YjEwYTY4Mzc1NWVhMmI4NThkNzBjY2FjN2VjOGIwNTNj NmJkNDFjYTI5OWQ0ZTUxOTI4Ci0rCi0rIyBNaXNzaW5nIGRpZ2VzdC4KLStQS0VZS0RGPVRMUzEt UFJGCi0rQ3RybC5TZWNyZXQgPSBoZXhzZWNyZXQ6MDEKLStDdHJsLlNlZWQgPSBoZXhzZWVkOjAy Ci0rT3V0cHV0ID0gMDMKLStSZXN1bHQgPSBLREZfREVSSVZFX0VSUk9SCi0rCi0rIyBNaXNzaW5n IHNlY3JldC4KLStQS0VZS0RGPVRMUzEtUFJGCi0rQ3RybC5tZCA9IG1kOk1ENS1TSEExCi0rQ3Ry bC5TZWVkID0gaGV4c2VlZDowMgotK091dHB1dCA9IDAzCi0rUmVzdWx0ID0gS0RGX0RFUklWRV9F UlJPUgotKwotK1RpdGxlID0gSEtERiB0ZXN0cyAoZnJvbSBSRkM1ODY5IHRlc3QgdmVjdG9ycykK LSsKLStQS0VZS0RGID0gSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLklLTSA9IGhl eGtleTowYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYgotK0N0cmwu c2FsdCA9IGhleHNhbHQ6MDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMKLStDdHJsLmluZm8gPSBo ZXhpbmZvOmYwZjFmMmYzZjRmNWY2ZjdmOGY5Ci0rT3V0cHV0ID0gM2NiMjVmMjVmYWFjZDU3YTkw NDM0ZjY0ZDAzNjJmMmEyZDJkMGE5MGNmMWE1YTRjNWRiMDJkNTZlY2M0YzViZjM0MDA3MjA4ZDVi ODg3MTg1ODY1Ci0rCi0rUEtFWUtERiA9IEhLREYKLStDdHJsLm1vZGUgPSBtb2RlOkVYVFJBQ1Rf T05MWQotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLklLTSA9IGhleGtleTowYjBiMGIwYjBi MGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYgotK0N0cmwuc2FsdCA9IGhleHNhbHQ6 MDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMKLStPdXRwdXQgPSAwNzc3MDkzNjJjMmUzMmRmMGRk YzNmMGRjNDdiYmE2MzkwYjZjNzNiYjUwZjljMzEyMmVjODQ0YWQ3YzJiM2U1Ci0rCi0rUEtFWUtE RiA9IEhLREYKLStDdHJsLm1vZGUgPSBtb2RlOkVYUEFORF9PTkxZCi0rQ3RybC5tZCA9IG1kOlNI QTI1NgotK0N0cmwuSUtNID0gaGV4a2V5OjA3NzcwOTM2MmMyZTMyZGYwZGRjM2YwZGM0N2JiYTYz OTBiNmM3M2JiNTBmOWMzMTIyZWM4NDRhZDdjMmIzZTUKLStDdHJsLmluZm8gPSBoZXhpbmZvOmYw ZjFmMmYzZjRmNWY2ZjdmOGY5Ci0rT3V0cHV0ID0gM2NiMjVmMjVmYWFjZDU3YTkwNDM0ZjY0ZDAz NjJmMmEyZDJkMGE5MGNmMWE1YTRjNWRiMDJkNTZlY2M0YzViZjM0MDA3MjA4ZDViODg3MTg1ODY1 Ci0rCi0rUEtFWUtERiA9IEhLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5JS00gPSBo ZXhrZXk6MDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMwZDBlMGYxMDExMTIxMzE0MTUxNjE3MTgx OTFhMWIxYzFkMWUxZjIwMjEyMjIzMjQyNTI2MjcyODI5MmEyYjJjMmQyZTJmMzAzMTMyMzMzNDM1 MzYzNzM4MzkzYTNiM2MzZDNlM2Y0MDQxNDI0MzQ0NDU0NjQ3NDg0OTRhNGI0YzRkNGU0ZgotK0N0 cmwuc2FsdCA9IGhleHNhbHQ6NjA2MTYyNjM2NDY1NjY2NzY4Njk2YTZiNmM2ZDZlNmY3MDcxNzI3 Mzc0NzU3Njc3Nzg3OTdhN2I3YzdkN2U3ZjgwODE4MjgzODQ4NTg2ODc4ODg5OGE4YjhjOGQ4ZThm OTA5MTkyOTM5NDk1OTY5Nzk4OTk5YTliOWM5ZDllOWZhMGExYTJhM2E0YTVhNmE3YThhOWFhYWJh Y2FkYWVhZgotK0N0cmwuaW5mbyA9IGhleGluZm86YjBiMWIyYjNiNGI1YjZiN2I4YjliYWJiYmNi ZGJlYmZjMGMxYzJjM2M0YzVjNmM3YzhjOWNhY2JjY2NkY2VjZmQwZDFkMmQzZDRkNWQ2ZDdkOGQ5 ZGFkYmRjZGRkZWRmZTBlMWUyZTNlNGU1ZTZlN2U4ZTllYWViZWNlZGVlZWZmMGYxZjJmM2Y0ZjVm NmY3ZjhmOWZhZmJmY2ZkZmVmZgotK091dHB1dCA9IGIxMWUzOThkYzgwMzI3YTFjOGU3Zjc4YzU5 NmE0OTM0NGYwMTJlZGEyZDRlZmFkOGEwNTBjYzRjMTlhZmE5N2M1OTA0NWE5OWNhYzc4MjcyNzFj YjQxYzY1ZTU5MGUwOWRhMzI3NTYwMGMyZjA5YjgzNjc3OTNhOWFjYTNkYjcxY2MzMGM1ODE3OWVj M2U4N2MxNGMwMWQ1YzFmMzQzNGYxZDg3Ci0rCi0rUEtFWUtERiA9IEhLREYKLStDdHJsLm1vZGUg PSBtb2RlOkVYVFJBQ1RfT05MWQotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLklLTSA9IGhl eGtleTowMDAxMDIwMzA0MDUwNjA3MDgwOTBhMGIwYzBkMGUwZjEwMTExMjEzMTQxNTE2MTcxODE5 MWExYjFjMWQxZTFmMjAyMTIyMjMyNDI1MjYyNzI4MjkyYTJiMmMyZDJlMmYzMDMxMzIzMzM0MzUz NjM3MzgzOTNhM2IzYzNkM2UzZjQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NGE0YjRjNGQ0ZTRmCi0rQ3Ry bC5zYWx0ID0gaGV4c2FsdDo2MDYxNjI2MzY0NjU2NjY3Njg2OTZhNmI2YzZkNmU2ZjcwNzE3Mjcz NzQ3NTc2Nzc3ODc5N2E3YjdjN2Q3ZTdmODA4MTgyODM4NDg1ODY4Nzg4ODk4YThiOGM4ZDhlOGY5 MDkxOTI5Mzk0OTU5Njk3OTg5OTlhOWI5YzlkOWU5ZmEwYTFhMmEzYTRhNWE2YTdhOGE5YWFhYmFj YWRhZWFmCi0rT3V0cHV0ID0gMDZhNmI4OGM1ODUzMzYxYTA2MTA0YzljZWIzNWI0NWNlZjc2MDAx NDkwNDY3MTAxNGExOTNmNDBjMTVmYzI0NAotKwotK1BLRVlLREYgPSBIS0RGCi0rQ3RybC5tb2Rl ID0gbW9kZTpFWFBBTkRfT05MWQotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLklLTSA9IGhl eGtleTowNmE2Yjg4YzU4NTMzNjFhMDYxMDRjOWNlYjM1YjQ1Y2VmNzYwMDE0OTA0NjcxMDE0YTE5 M2Y0MGMxNWZjMjQ0Ci0rQ3RybC5pbmZvID0gaGV4aW5mbzpiMGIxYjJiM2I0YjViNmI3YjhiOWJh YmJiY2JkYmViZmMwYzFjMmMzYzRjNWM2YzdjOGM5Y2FjYmNjY2RjZWNmZDBkMWQyZDNkNGQ1ZDZk N2Q4ZDlkYWRiZGNkZGRlZGZlMGUxZTJlM2U0ZTVlNmU3ZThlOWVhZWJlY2VkZWVlZmYwZjFmMmYz ZjRmNWY2ZjdmOGY5ZmFmYmZjZmRmZWZmCi0rT3V0cHV0ID0gYjExZTM5OGRjODAzMjdhMWM4ZTdm NzhjNTk2YTQ5MzQ0ZjAxMmVkYTJkNGVmYWQ4YTA1MGNjNGMxOWFmYTk3YzU5MDQ1YTk5Y2FjNzgy NzI3MWNiNDFjNjVlNTkwZTA5ZGEzMjc1NjAwYzJmMDliODM2Nzc5M2E5YWNhM2RiNzFjYzMwYzU4 MTc5ZWMzZTg3YzE0YzAxZDVjMWYzNDM0ZjFkODcKLSsKLStQS0VZS0RGID0gSEtERgotK0N0cmwu bWQgPSBtZDpTSEEyNTYKLStDdHJsLklLTSA9IGhleGtleTowYjBiMGIwYjBiMGIwYjBiMGIwYjBi MGIwYjBiMGIwYjBiMGIwYjBiMGIwYgotK0N0cmwuc2FsdCA9IHNhbHQ6Ci0rQ3RybC5pbmZvID0g aW5mbzoKLStPdXRwdXQgPSA4ZGE0ZTc3NWE1NjNjMThmNzE1ZjgwMmEwNjNjNWEzMWI4YTExZjVj NWVlMTg3OWVjMzQ1NGU1ZjNjNzM4ZDJkOWQyMDEzOTVmYWE0YjYxYTk2YzgKLSsKLStQS0VZS0RG ID0gSEtERgotK0N0cmwubW9kZSA9IG1vZGU6RVhUUkFDVF9PTkxZCi0rQ3RybC5tZCA9IG1kOlNI QTI1NgotK0N0cmwuSUtNID0gaGV4a2V5OjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBi MGIwYjBiMGIwYjBiCi0rQ3RybC5zYWx0ID0gc2FsdDoKLStDdHJsLmluZm8gPSBpbmZvOgotK091 dHB1dCA9IDE5ZWYyNGEzMmM3MTdiMTY3ZjMzYTkxZDZmNjQ4YmRmOTY1OTY3NzZhZmRiNjM3N2Fj NDM0YzFjMjkzY2NiMDQKLSsKLStQS0VZS0RGID0gSEtERgotK0N0cmwubW9kZSA9IG1vZGU6RVhQ QU5EX09OTFkKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5JS00gPSBoZXhrZXk6MTllZjI0 YTMyYzcxN2IxNjdmMzNhOTFkNmY2NDhiZGY5NjU5Njc3NmFmZGI2Mzc3YWM0MzRjMWMyOTNjY2Iw NAotK0N0cmwuaW5mbyA9IGluZm86Ci0rT3V0cHV0ID0gOGRhNGU3NzVhNTYzYzE4ZjcxNWY4MDJh MDYzYzVhMzFiOGExMWY1YzVlZTE4NzllYzM0NTRlNWYzYzczOGQyZDlkMjAxMzk1ZmFhNGI2MWE5 NmM4Ci0rCi0rUEtFWUtERiA9IEhLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuSUtNID0g aGV4a2V5OjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIKLStDdHJsLnNhbHQgPSBoZXhzYWx0OjAwMDEw MjAzMDQwNTA2MDcwODA5MGEwYjBjCi0rQ3RybC5pbmZvID0gaGV4aW5mbzpmMGYxZjJmM2Y0ZjVm NmY3ZjhmOQotK091dHB1dCA9IDA4NWEwMWVhMWIxMGYzNjkzMzA2OGI1NmVmYTVhZDgxYTRmMTRi ODIyZjViMDkxNTY4YTljZGQ0ZjE1NWZkYTJjMjJlNDIyNDc4ZDMwNWYzZjg5NgotKwotK1BLRVlL REYgPSBIS0RGCi0rQ3RybC5tb2RlID0gbW9kZTpFWFRSQUNUX09OTFkKLStDdHJsLm1kID0gbWQ6 U0hBMQotK0N0cmwuSUtNID0gaGV4a2V5OjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIKLStDdHJsLnNh bHQgPSBoZXhzYWx0OjAwMDEwMjAzMDQwNTA2MDcwODA5MGEwYjBjCi0rT3V0cHV0ID0gOWI2YzE4 YzQzMmE3YmY4ZjBlNzFjOGViODhmNGIzMGJhYTJiYTI0MwotKwotK1BLRVlLREYgPSBIS0RGCi0r Q3RybC5tb2RlID0gbW9kZTpFWFBBTkRfT05MWQotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5J S00gPSBoZXhrZXk6OWI2YzE4YzQzMmE3YmY4ZjBlNzFjOGViODhmNGIzMGJhYTJiYTI0MwotK0N0 cmwuaW5mbyA9IGhleGluZm86ZjBmMWYyZjNmNGY1ZjZmN2Y4ZjkKLStPdXRwdXQgPSAwODVhMDFl YTFiMTBmMzY5MzMwNjhiNTZlZmE1YWQ4MWE0ZjE0YjgyMmY1YjA5MTU2OGE5Y2RkNGYxNTVmZGEy YzIyZTQyMjQ3OGQzMDVmM2Y4OTYKLSsKLStQS0VZS0RGID0gSEtERgotK0N0cmwubWQgPSBtZDpT SEExCi0rQ3RybC5JS00gPSBoZXhrZXk6MDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMwZDBlMGYx MDExMTIxMzE0MTUxNjE3MTgxOTFhMWIxYzFkMWUxZjIwMjEyMjIzMjQyNTI2MjcyODI5MmEyYjJj MmQyZTJmMzAzMTMyMzMzNDM1MzYzNzM4MzkzYTNiM2MzZDNlM2Y0MDQxNDI0MzQ0NDU0NjQ3NDg0 OTRhNGI0YzRkNGU0ZgotK0N0cmwuc2FsdCA9IGhleHNhbHQ6NjA2MTYyNjM2NDY1NjY2NzY4Njk2 YTZiNmM2ZDZlNmY3MDcxNzI3Mzc0NzU3Njc3Nzg3OTdhN2I3YzdkN2U3ZjgwODE4MjgzODQ4NTg2 ODc4ODg5OGE4YjhjOGQ4ZThmOTA5MTkyOTM5NDk1OTY5Nzk4OTk5YTliOWM5ZDllOWZhMGExYTJh M2E0YTVhNmE3YThhOWFhYWJhY2FkYWVhZgotK0N0cmwuaW5mbyA9IGhleGluZm86YjBiMWIyYjNi NGI1YjZiN2I4YjliYWJiYmNiZGJlYmZjMGMxYzJjM2M0YzVjNmM3YzhjOWNhY2JjY2NkY2VjZmQw ZDFkMmQzZDRkNWQ2ZDdkOGQ5ZGFkYmRjZGRkZWRmZTBlMWUyZTNlNGU1ZTZlN2U4ZTllYWViZWNl ZGVlZWZmMGYxZjJmM2Y0ZjVmNmY3ZjhmOWZhZmJmY2ZkZmVmZgotK091dHB1dCA9IDBiZDc3MGE3 NGQxMTYwZjdjOWYxMmNkNTkxMmEwNmViZmY2YWRjYWU4OTlkOTIxOTFmZTQzMDU2NzNiYTJmZmU4 ZmEzZjFhNGU1YWQ3OWYzZjMzNGIzYjIwMmIyMTczYzQ4NmVhMzdjZTNkMzk3ZWQwMzRjN2Y5ZGZl YjE1YzVlOTI3MzM2ZDA0NDFmNGM0MzAwZTJjZmYwZDA5MDBiNTJkM2I0Ci0rCi0rUEtFWUtERiA9 IEhLREYKLStDdHJsLm1vZGUgPSBtb2RlOkVYVFJBQ1RfT05MWQotK0N0cmwubWQgPSBtZDpTSEEx Ci0rQ3RybC5JS00gPSBoZXhrZXk6MDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMwZDBlMGYxMDEx MTIxMzE0MTUxNjE3MTgxOTFhMWIxYzFkMWUxZjIwMjEyMjIzMjQyNTI2MjcyODI5MmEyYjJjMmQy ZTJmMzAzMTMyMzMzNDM1MzYzNzM4MzkzYTNiM2MzZDNlM2Y0MDQxNDI0MzQ0NDU0NjQ3NDg0OTRh NGI0YzRkNGU0ZgotK0N0cmwuc2FsdCA9IGhleHNhbHQ6NjA2MTYyNjM2NDY1NjY2NzY4Njk2YTZi NmM2ZDZlNmY3MDcxNzI3Mzc0NzU3Njc3Nzg3OTdhN2I3YzdkN2U3ZjgwODE4MjgzODQ4NTg2ODc4 ODg5OGE4YjhjOGQ4ZThmOTA5MTkyOTM5NDk1OTY5Nzk4OTk5YTliOWM5ZDllOWZhMGExYTJhM2E0 YTVhNmE3YThhOWFhYWJhY2FkYWVhZgotK091dHB1dCA9IDhhZGFlMDlhMmEzMDcwNTk0NzhkMzA5 YjI2YzQxMTVhMjI0Y2ZhZjYKLSsKLStQS0VZS0RGID0gSEtERgotK0N0cmwubW9kZSA9IG1vZGU6 RVhQQU5EX09OTFkKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuSUtNID0gaGV4a2V5OjhhZGFl MDlhMmEzMDcwNTk0NzhkMzA5YjI2YzQxMTVhMjI0Y2ZhZjYKLStDdHJsLmluZm8gPSBoZXhpbmZv OmIwYjFiMmIzYjRiNWI2YjdiOGI5YmFiYmJjYmRiZWJmYzBjMWMyYzNjNGM1YzZjN2M4YzljYWNi Y2NjZGNlY2ZkMGQxZDJkM2Q0ZDVkNmQ3ZDhkOWRhZGJkY2RkZGVkZmUwZTFlMmUzZTRlNWU2ZTdl OGU5ZWFlYmVjZWRlZWVmZjBmMWYyZjNmNGY1ZjZmN2Y4ZjlmYWZiZmNmZGZlZmYKLStPdXRwdXQg PSAwYmQ3NzBhNzRkMTE2MGY3YzlmMTJjZDU5MTJhMDZlYmZmNmFkY2FlODk5ZDkyMTkxZmU0MzA1 NjczYmEyZmZlOGZhM2YxYTRlNWFkNzlmM2YzMzRiM2IyMDJiMjE3M2M0ODZlYTM3Y2UzZDM5N2Vk MDM0YzdmOWRmZWIxNWM1ZTkyNzMzNmQwNDQxZjRjNDMwMGUyY2ZmMGQwOTAwYjUyZDNiNAotKwot K1BLRVlLREYgPSBIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLklLTSA9IGhleGtleTow YjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYgotK0N0cmwuc2FsdCA9 IHNhbHQ6Ci0rQ3RybC5pbmZvID0gaW5mbzoKLStPdXRwdXQgPSAwYWMxYWY3MDAyYjNkNzYxZDFl NTUyOThkYTlkMDUwNmI5YWU1MjA1NzIyMGEzMDZlMDdiNmI4N2U4ZGYyMWQwZWEwMDAzM2RlMDM5 ODRkMzQ5MTgKLSsKLStQS0VZS0RGID0gSEtERgotK0N0cmwubW9kZSA9IG1vZGU6RVhUUkFDVF9P TkxZCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLklLTSA9IGhleGtleTowYjBiMGIwYjBiMGIw YjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYjBiMGIwYgotK0N0cmwuc2FsdCA9IHNhbHQ6Ci0rT3V0 cHV0ID0gZGE4YzhhNzNjN2ZhNzcyODhlYzZmNWU3YzI5Nzc4NmFhMGQzMmQwMQotKwotK1BLRVlL REYgPSBIS0RGCi0rQ3RybC5tb2RlID0gbW9kZTpFWFBBTkRfT05MWQotK0N0cmwubWQgPSBtZDpT SEExCi0rQ3RybC5JS00gPSBoZXhrZXk6ZGE4YzhhNzNjN2ZhNzcyODhlYzZmNWU3YzI5Nzc4NmFh MGQzMmQwMQotK0N0cmwuaW5mbyA9IGluZm86Ci0rT3V0cHV0ID0gMGFjMWFmNzAwMmIzZDc2MWQx ZTU1Mjk4ZGE5ZDA1MDZiOWFlNTIwNTcyMjBhMzA2ZTA3YjZiODdlOGRmMjFkMGVhMDAwMzNkZTAz OTg0ZDM0OTE4Ci0rCi0rUEtFWUtERiA9IEhLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwu SUtNID0gaGV4a2V5OjBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBj Ci0rQ3RybC5zYWx0ID0gc2FsdDoKLStDdHJsLmluZm8gPSBpbmZvOgotK091dHB1dCA9IDJjOTEx MTcyMDRkNzQ1ZjM1MDBkNjM2YTYyZjY0ZjBhYjNiYWU1NDhhYTUzZDQyM2IwZDFmMjdlYmJhNmY1 ZTU2NzNhMDgxZDcwY2NlN2FjZmM0OAotKwotK1BLRVlLREYgPSBIS0RGCi0rQ3RybC5tb2RlID0g bW9kZTpFWFRSQUNUX09OTFkKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuSUtNID0gaGV4a2V5 OjBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjCi0rQ3RybC5zYWx0 ID0gc2FsdDoKLStPdXRwdXQgPSAyYWRjY2FkYTE4Nzc5ZTdjMjA3N2FkMmViMTlkM2YzZTczMTM4 NWRkCi0rCi0rUEtFWUtERiA9IEhLREYKLStDdHJsLm1vZGUgPSBtb2RlOkVYUEFORF9PTkxZCi0r Q3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLklLTSA9IGhleGtleToyYWRjY2FkYTE4Nzc5ZTdjMjA3 N2FkMmViMTlkM2YzZTczMTM4NWRkCi0rQ3RybC5pbmZvID0gaW5mbzoKLStPdXRwdXQgPSAyYzkx MTE3MjA0ZDc0NWYzNTAwZDYzNmE2MmY2NGYwYWIzYmFlNTQ4YWE1M2Q0MjNiMGQxZjI3ZWJiYTZm NWU1NjczYTA4MWQ3MGNjZTdhY2ZjNDgKLSsKLStQS0VZS0RGID0gSEtERgotK0N0cmwuSUtNID0g aGV4a2V5OjBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjCi0rQ3Ry bC5zYWx0ID0gc2FsdDoKLStDdHJsLmluZm8gPSBpbmZvOgotK091dHB1dCA9IDAwCi0rUmVzdWx0 ID0gS0RGX0RFUklWRV9FUlJPUgotKwotK1BLRVlLREYgPSBIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTEKLStDdHJsLnNhbHQgPSBzYWx0OgotK0N0cmwuaW5mbyA9IGluZm86Ci0rT3V0cHV0ID0gMDAK LStSZXN1bHQgPSBLREZfREVSSVZFX0VSUk9SCi0rCi0rUEtFWUtERiA9IEhLREYKLStDdHJsLm1k ID0gbWQ6U0hBMQotK0N0cmwuSUtNID0gaGV4a2V5OjBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBj MGMwYzBjMGMwYzBjMGMwYzBjCi0rQ3RybC5pbmZvID0gaW5mbzoKLStPdXRwdXQgPSAyYzkxMTE3 MjA0ZDc0NWYzNTAwZDYzNmE2MmY2NGYwYWIzYmFlNTQ4YWE1M2Q0MjNiMGQxZjI3ZWJiYTZmNWU1 NjczYTA4MWQ3MGNjZTdhY2ZjNDgKLSsKLStQS0VZS0RGID0gSEtERgotK0N0cmwubWQgPSBtZDpT SEExCi0rQ3RybC5JS00gPSBoZXhrZXk6MGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMw YzBjMGMwYzBjMGMKLStDdHJsLnNhbHQgPSBzYWx0OgotK091dHB1dCA9IDJjOTExMTcyMDRkNzQ1 ZjM1MDBkNjM2YTYyZjY0ZjBhYjNiYWU1NDhhYTUzZDQyM2IwZDFmMjdlYmJhNmY1ZTU2NzNhMDgx ZDcwY2NlN2FjZmM0OAotKwotK1BLRVlLREYgPSBIS0RGCi0rQ3RybC5tb2RlID0gbW9kZTpFWFRS QUNUX0FORF9FWFBBTkQKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuSUtNID0gaGV4a2V5OjBj MGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjMGMwYzBjCi0rQ3RybC5zYWx0ID0g c2FsdDoKLStPdXRwdXQgPSAyYzkxMTE3MjA0ZDc0NWYzNTAwZDYzNmE2MmY2NGYwYWIzYmFlNTQ4 YWE1M2Q0MjNiMGQxZjI3ZWJiYTZmNWU1NjczYTA4MWQ3MGNjZTdhY2ZjNDgKLSsKLStUaXRsZSA9 IGlkLXNjcnlwdCB0ZXN0cyAoZnJvbSBkcmFmdC1qb3NlZnNzb24taWQtc2NyeXB0LWtkZi0wMyBh bmQgb3RoZXJzKQotKwotK1BLRVlLREYgPSBzY3J5cHQKLStDdHJsLnBhc3MgPSBwYXNzOgotK0N0 cmwuc2FsdCA9IHNhbHQ6Ci0rQ3RybC5OID0gTjoxNgotK0N0cmwuciA9IHI6MQotK0N0cmwucCA9 IHA6MQotK091dHB1dCA9IDc3ZDY1NzYyMzg2NTdiMjAzYjE5Y2E0MmMxOGEwNDk3ZjE2YjQ4NDRl MzA3NGFlOGRmZGZmYTNmZWRlMjE0NDJmY2QwMDY5ZGVkMDk0OGY4MzI2YTc1M2EwZmM4MWYxN2U4 ZDNlMGZiMmUwZDM2MjhjZjM1ZTIwYzM4ZDE4OTA2Ci0rCi0rUEtFWUtERiA9IHNjcnlwdAotK0N0 cmwucGFzcyA9IHBhc3M6cGFzc3dvcmQKLStDdHJsLnNhbHQgPSBzYWx0Ok5hQ2wKLStDdHJsLk4g PSBOOjEwMjQKLStDdHJsLnIgPSByOjgKLStDdHJsLnAgPSBwOjE2Ci0rT3V0cHV0ID0gZmRiYWJl MWM5ZDM0NzIwMDc4NTZlNzE5MGQwMWU5ZmU3YzZhZDdjYmM4MjM3ODMwZTc3Mzc2NjM0YjM3MzE2 MjJlYWYzMGQ5MmUyMmEzODg2ZmYxMDkyNzlkOTgzMGRhYzcyN2FmYjk0YTgzZWU2ZDgzNjBjYmRm YTJjYzA2NDAKLSsKLStQS0VZS0RGID0gc2NyeXB0Ci0rQ3RybC5oZXhwYXNzID0gaGV4cGFzczo3 MDYxNzM3Mzc3NmY3MjY0Ci0rQ3RybC5zYWx0ID0gc2FsdDpOYUNsCi0rQ3RybC5OID0gTjoxMDI0 Ci0rQ3RybC5yID0gcjo4Ci0rQ3RybC5wID0gcDoxNgotK091dHB1dCA9IGZkYmFiZTFjOWQzNDcy MDA3ODU2ZTcxOTBkMDFlOWZlN2M2YWQ3Y2JjODIzNzgzMGU3NzM3NjYzNGIzNzMxNjIyZWFmMzBk OTJlMjJhMzg4NmZmMTA5Mjc5ZDk4MzBkYWM3MjdhZmI5NGE4M2VlNmQ4MzYwY2JkZmEyY2MwNjQw Ci0rCi0rUEtFWUtERiA9IHNjcnlwdAotK0N0cmwucGFzcyA9IHBhc3M6cGFzc3dvcmQKLStDdHJs LmhleHNhbHQgPSBoZXhzYWx0OjRlNjE0MzZjCi0rQ3RybC5OID0gTjoxMDI0Ci0rQ3RybC5yID0g cjo4Ci0rQ3RybC5wID0gcDoxNgotK091dHB1dCA9IGZkYmFiZTFjOWQzNDcyMDA3ODU2ZTcxOTBk MDFlOWZlN2M2YWQ3Y2JjODIzNzgzMGU3NzM3NjYzNGIzNzMxNjIyZWFmMzBkOTJlMjJhMzg4NmZm MTA5Mjc5ZDk4MzBkYWM3MjdhZmI5NGE4M2VlNmQ4MzYwY2JkZmEyY2MwNjQwCi0rCi0rUEtFWUtE RiA9IHNjcnlwdAotK0N0cmwucGFzcyA9IHBhc3M6cGxlYXNlbGV0bWVpbgotK0N0cmwuc2FsdCA9 IHNhbHQ6U29kaXVtQ2hsb3JpZGUKLStDdHJsLk4gPSBOOjE2Mzg0Ci0rQ3RybC5yID0gcjo4Ci0r Q3RybC5wID0gcDoxCi0rT3V0cHV0ID0gNzAyM2JkY2IzYWZkNzM0ODQ2MWMwNmNkODFmZDM4ZWJm ZGE4ZmJiYTkwNGY4ZTNlYTliNTQzZjY1NDVkYTFmMmQ1NDMyOTU1NjEzZjBmY2Y2MmQ0OTcwNTI0 MmE5YWY5ZTYxZTg1ZGMwZDY1MWU0MGRmY2YwMTdiNDU1NzU4ODcKLSsKLSsjIE91dCBvZiBtZW1v cnkKLStQS0VZS0RGID0gc2NyeXB0Ci0rQ3RybC5wYXNzID0gcGFzczpwbGVhc2VsZXRtZWluCi0r Q3RybC5zYWx0ID0gc2FsdDpTb2RpdW1DaGxvcmlkZQotK0N0cmwuTiA9IE46MTA0ODU3NgotK0N0 cmwuciA9IHI6OAotK0N0cmwucCA9IHA6MQotK1Jlc3VsdCA9IElOVEVSTkFMX0VSUk9SCi0rCi1k aWZmIC11cCBvcGVuc3NsLTEuMS4xai90ZXN0L3JlY2lwZXMvMzAtdGVzdF9ldnBfa2RmLnQuZXZw LWtkZiBvcGVuc3NsLTEuMS4xai90ZXN0L3JlY2lwZXMvMzAtdGVzdF9ldnBfa2RmLnQKLS0tLSBv cGVuc3NsLTEuMS4xai90ZXN0L3JlY2lwZXMvMzAtdGVzdF9ldnBfa2RmLnQuZXZwLWtkZgkyMDIx LTAzLTAzIDE0OjA4OjAyLjQ5NDI5NDg3NCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL3Rlc3Qv cmVjaXBlcy8zMC10ZXN0X2V2cF9rZGYudAkyMDIxLTAzLTAzIDE0OjA4OjAyLjQ5NDI5NDg3NCAr MDEwMAotQEAgLTAsMCArMSwxMyBAQAotKyMhIC91c3IvYmluL2VudiBwZXJsCi0rIyBDb3B5cmln aHQgMjAxOCBUaGUgT3BlblNTTCBQcm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQu Ci0rIyBDb3B5cmlnaHQgKGMpIDIwMTgsIE9yYWNsZSBhbmQvb3IgaXRzIGFmZmlsaWF0ZXMuICBB bGwgcmlnaHRzIHJlc2VydmVkLgotKyMKLSsjIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGlj ZW5zZSAyLjAgKHRoZSAiTGljZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCi0rIyB0aGlzIGZpbGUg ZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gIFlvdSBjYW4gb2J0YWluIGEg Y29weQotKyMgaW4gdGhlIGZpbGUgTElDRU5TRSBpbiB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBv ciBhdAotKyMgaHR0cHM6Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2UuaHRtbAotKwot KwotK3VzZSBPcGVuU1NMOjpUZXN0OjpTaW1wbGU7Ci0rCi0rc2ltcGxlX3Rlc3QoInRlc3RfZXZw X2tkZiIsICJldnBfa2RmX3Rlc3QiKTsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL3Rlc3QvcmVj aXBlcy8zMC10ZXN0X2V2cC50LmV2cC1rZGYgb3BlbnNzbC0xLjEuMWovdGVzdC9yZWNpcGVzLzMw LXRlc3RfZXZwLnQKLS0tLSBvcGVuc3NsLTEuMS4xai90ZXN0L3JlY2lwZXMvMzAtdGVzdF9ldnAu dC5ldnAta2RmCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNz bC0xLjEuMWovdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwLnQJMjAyMS0wMy0wMyAxNDowODowMi40 OTUyOTQ4ODMgKzAxMDAKLUBAIC0xNSw3ICsxNSw3IEBAIHVzZSBPcGVuU1NMOjpUZXN0IHF3LzpE RUZBVUxUIGRhdGFfZmlsZS8KLSBzZXR1cCgidGVzdF9ldnAiKTsKLSAKLSBteSBAZmlsZXMgPSAo ICJldnBjaXBoLnR4dCIsICJldnBkaWdlc3QudHh0IiwgImV2cGVuY29kLnR4dCIsICJldnBrZGYu dHh0IiwKLS0gICAgImV2cG1hYy50eHQiLCAiZXZwcGJlLnR4dCIsICJldnBwa2V5LnR4dCIsICJl dnBwa2V5X2VjYy50eHQiLAotKyAgICAiZXZwcGtleV9rZGYudHh0IiwgImV2cG1hYy50eHQiLCAi ZXZwcGJlLnR4dCIsICJldnBwa2V5LnR4dCIsICJldnBwa2V5X2VjYy50eHQiLAotICAgICAiZXZw Y2FzZS50eHQiLCAiZXZwY2NtY2F2cy50eHQiICk7Ci0gCi0gcGxhbiB0ZXN0cyA9PiBzY2FsYXIo QGZpbGVzKTsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL3V0aWwvbGliY3J5cHRvLm51bS5ldnAt a2RmIG9wZW5zc2wtMS4xLjFqL3V0aWwvbGliY3J5cHRvLm51bQotLS0tIG9wZW5zc2wtMS4xLjFq L3V0aWwvbGliY3J5cHRvLm51bS5ldnAta2RmCTIwMjEtMDMtMDMgMTQ6MDg6MDIuNDgxMjk0NzU4 ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovdXRpbC9saWJjcnlwdG8ubnVtCTIwMjEtMDMtMDMg MTQ6MDg6MDIuNDk1Mjk0ODgzICswMTAwCi1AQCAtNDYyNiwzICs0NjI2LDExIEBAIEZJUFNfZHJi Z19nZXRfc3RyZW5ndGgKLSBGSVBTX3JhbmRfc3RyZW5ndGggICAgICAgICAgICAgICAgICAgICAg NjM4MAkxXzFfMGcJRVhJU1Q6OkZVTkNUSU9OOgotIEZJUFNfZHJiZ19nZXRfYmxvY2tsZW5ndGgg ICAgICAgICAgICAgICA2MzgxCTFfMV8wZwlFWElTVDo6RlVOQ1RJT046Ci0gRklQU19kcmJnX2lu aXQgICAgICAgICAgICAgICAgICAgICAgICAgIDYzODIJMV8xXzBnCUVYSVNUOjpGVU5DVElPTjoK LStFVlBfS0RGX0NUWF9uZXdfaWQgICAgICAgICAgICAgICAgICAgICAgNjU5MAkxXzFfMWIJRVhJ U1Q6OkZVTkNUSU9OOgotK0VWUF9LREZfQ1RYX2ZyZWUgICAgICAgICAgICAgICAgICAgICAgICA2 NTkxCTFfMV8xYglFWElTVDo6RlVOQ1RJT046Ci0rRVZQX0tERl9yZXNldCAgICAgICAgICAgICAg ICAgICAgICAgICAgIDY1OTIJMV8xXzFiCUVYSVNUOjpGVU5DVElPTjoKLStFVlBfS0RGX2N0cmwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgNjU5MwkxXzFfMWIJRVhJU1Q6OkZVTkNUSU9OOgot K0VWUF9LREZfdmN0cmwgICAgICAgICAgICAgICAgICAgICAgICAgICA2NTk0CTFfMV8xYglFWElT VDo6RlVOQ1RJT046Ci0rRVZQX0tERl9jdHJsX3N0ciAgICAgICAgICAgICAgICAgICAgICAgIDY1 OTUJMV8xXzFiCUVYSVNUOjpGVU5DVElPTjoKLStFVlBfS0RGX3NpemUgICAgICAgICAgICAgICAg ICAgICAgICAgICAgNjU5NgkxXzFfMWIJRVhJU1Q6OkZVTkNUSU9OOgotK0VWUF9LREZfZGVyaXZl ICAgICAgICAgICAgICAgICAgICAgICAgICA2NTk3CTFfMV8xYglFWElTVDo6RlVOQ1RJT046Ci1k aWZmIC11cCBvcGVuc3NsLTEuMS4xai91dGlsL3ByaXZhdGUubnVtLmV2cC1rZGYgb3BlbnNzbC0x LjEuMWovdXRpbC9wcml2YXRlLm51bQotLS0tIG9wZW5zc2wtMS4xLjFqL3V0aWwvcHJpdmF0ZS5u dW0uZXZwLWtkZgkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5z c2wtMS4xLjFqL3V0aWwvcHJpdmF0ZS5udW0JMjAyMS0wMy0wMyAxNDowODowMi40OTUyOTQ4ODMg KzAxMDAKLUBAIC0yMSw2ICsyMSw3IEBAIENSWVBUT19FWF9kdXAKLSBDUllQVE9fRVhfZnJlZSAg ICAgICAgICAgICAgICAgICAgICAgICAgZGF0YXR5cGUKLSBDUllQVE9fRVhfbmV3ICAgICAgICAg ICAgICAgICAgICAgICAgICAgZGF0YXR5cGUKLSBEVExTX3RpbWVyX2NiICAgICAgICAgICAgICAg ICAgICAgICAgICAgZGF0YXR5cGUKLStFVlBfS0RGX0NUWCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZGF0YXR5cGUKLSBFVlBfUEtFWV9nZW5fY2IgICAgICAgICAgICAgICAgICAgICAgICAg ZGF0YXR5cGUKLSBFVlBfUEtFWV9NRVRIT0QgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YXR5 cGUKLSBFVlBfUEtFWV9BU04xX01FVEhPRCAgICAgICAgICAgICAgICAgICAgZGF0YXR5cGUKCmRp ZmYgLS1naXQgYS9vcGVuc3NsLTEuMS4xLWZpcHMtY3JuZy10ZXN0LnBhdGNoIGIvb3BlbnNzbC0x LjEuMS1maXBzLWNybmctdGVzdC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MjY3YTNlYS4uMDAwMDAwMAotLS0gYS9vcGVuc3NsLTEuMS4xLWZpcHMtY3JuZy10ZXN0LnBhdGNo CisrKyAvZGV2L251bGwKQEAgLTEsNDA4ICswLDAgQEAKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFn L2NyeXB0by9yYW5kL2J1aWxkLmluZm8uY3JuZy10ZXN0IG9wZW5zc2wtMS4xLjFnL2NyeXB0by9y YW5kL2J1aWxkLmluZm8KLS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vcmFuZC9idWlsZC5pbmZv LmNybmctdGVzdAkyMDIwLTA0LTIzIDEzOjMwOjQ1Ljg2MzM4OTgzNyArMDIwMAotKysrIG9wZW5z c2wtMS4xLjFnL2NyeXB0by9yYW5kL2J1aWxkLmluZm8JMjAyMC0wNC0yMyAxMzozMTo1NS44NDcw Njk4OTIgKzAyMDAKLUBAIC0xLDYgKzEsNiBAQAotIExJQlM9Li4vLi4vbGliY3J5cHRvCi0gU09V UkNFWy4uLy4uL2xpYmNyeXB0b109XAotLSAgICAgICAgcmFuZGZpbGUuYyByYW5kX2xpYi5jIHJh bmRfZXJyLmMgcmFuZF9lZ2QuYyBcCi0rICAgICAgICByYW5kZmlsZS5jIHJhbmRfbGliLmMgcmFu ZF9lcnIuYyByYW5kX2NybmdfdGVzdC5jIHJhbmRfZWdkLmMgXAotICAgICAgICAgcmFuZF93aW4u YyByYW5kX3VuaXguYyByYW5kX3Ztcy5jIGRyYmdfbGliLmMgZHJiZ19jdHIuYwotIAotIElOQ0xV REVbZHJiZ19jdHIub109Li4vbW9kZXMKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9y YW5kL2RyYmdfbGliLmMuY3JuZy10ZXN0IG9wZW5zc2wtMS4xLjFnL2NyeXB0by9yYW5kL2RyYmdf bGliLmMKLS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vcmFuZC9kcmJnX2xpYi5jLmNybmctdGVz dAkyMDIwLTA0LTIzIDEzOjMwOjQ1LjgxODM5MDY4NiArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFn L2NyeXB0by9yYW5kL2RyYmdfbGliLmMJMjAyMC0wNC0yMyAxMzozMDo0NS44NjQzODk4MTkgKzAy MDAKLUBAIC02Nyw3ICs2Nyw3IEBAIHN0YXRpYyBDUllQVE9fVEhSRUFEX0xPQ0FMIHByaXZhdGVf ZHJiZzsKLSAKLSAKLSAvKiBOSVNUIFNQIDgwMC05MEEgRFJCRyByZWNvbW1lbmRzIHRoZSB1c2Ug b2YgYSBwZXJzb25hbGl6YXRpb24gc3RyaW5nLiAqLwotLXN0YXRpYyBjb25zdCBjaGFyIG9zc2xf cGVyc19zdHJpbmdbXSA9ICJPcGVuU1NMIE5JU1QgU1AgODAwLTkwQSBEUkJHIjsKLStzdGF0aWMg Y29uc3QgY2hhciBvc3NsX3BlcnNfc3RyaW5nW10gPSBEUkJHX0RFRkFVTFRfUEVSU19TVFJJTkc7 Ci0gCi0gc3RhdGljIENSWVBUT19PTkNFIHJhbmRfZHJiZ19pbml0ID0gQ1JZUFRPX09OQ0VfU1RB VElDX0lOSVQ7Ci0gCi1AQCAtMjAxLDggKzIwMSwxMyBAQCBzdGF0aWMgUkFORF9EUkJHICpyYW5k X2RyYmdfbmV3KGludCBzZWN1Ci0gICAgIGRyYmctPnBhcmVudCA9IHBhcmVudDsKLSAKLSAgICAg aWYgKHBhcmVudCA9PSBOVUxMKSB7Ci0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyAgICAgICAgZHJi Zy0+Z2V0X2VudHJvcHkgPSByYW5kX2Nybmd0X2dldF9lbnRyb3B5OwotKyAgICAgICAgZHJiZy0+ Y2xlYW51cF9lbnRyb3B5ID0gcmFuZF9jcm5ndF9jbGVhbnVwX2VudHJvcHk7Ci0rI2Vsc2UKLSAg ICAgICAgIGRyYmctPmdldF9lbnRyb3B5ID0gcmFuZF9kcmJnX2dldF9lbnRyb3B5OwotICAgICAg ICAgZHJiZy0+Y2xlYW51cF9lbnRyb3B5ID0gcmFuZF9kcmJnX2NsZWFudXBfZW50cm9weTsKLSsj ZW5kaWYKLSAjaWZuZGVmIFJBTkRfRFJCR19HRVRfUkFORE9NX05PTkNFCi0gICAgICAgICBkcmJn LT5nZXRfbm9uY2UgPSByYW5kX2RyYmdfZ2V0X25vbmNlOwotICAgICAgICAgZHJiZy0+Y2xlYW51 cF9ub25jZSA9IHJhbmRfZHJiZ19jbGVhbnVwX25vbmNlOwotZGlmZiAtdXAgb3BlbnNzbC0xLjEu MWcvY3J5cHRvL3JhbmQvcmFuZF9jcm5nX3Rlc3QuYy5jcm5nLXRlc3Qgb3BlbnNzbC0xLjEuMWcv Y3J5cHRvL3JhbmQvcmFuZF9jcm5nX3Rlc3QuYwotLS0tIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9y YW5kL3JhbmRfY3JuZ190ZXN0LmMuY3JuZy10ZXN0CTIwMjAtMDQtMjMgMTM6MzA6NDUuODY0Mzg5 ODE5ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3JhbmQvcmFuZF9jcm5nX3Rlc3Qu YwkyMDIwLTA0LTIzIDEzOjMwOjQ1Ljg2NDM4OTgxOSArMDIwMAotQEAgLTAsMCArMSwxMTggQEAK LSsvKgotKyAqIENvcHlyaWdodCAyMDE5IFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxs IFJpZ2h0cyBSZXNlcnZlZC4KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMTksIE9yYWNsZSBhbmQvb3Ig aXRzIGFmZmlsaWF0ZXMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotKyAqCi0rICogTGljZW5zZWQg dW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlIDIuMCAodGhlICJMaWNlbnNlIikuICBZb3UgbWF5IG5v dCB1c2UKLSsgKiB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5z ZS4gIFlvdSBjYW4gb2J0YWluIGEgY29weQotKyAqIGluIHRoZSBmaWxlIExJQ0VOU0UgaW4gdGhl IHNvdXJjZSBkaXN0cmlidXRpb24gb3IgYXQKLSsgKiBodHRwczovL3d3dy5vcGVuc3NsLm9yZy9z b3VyY2UvbGljZW5zZS5odG1sCi0rICovCi0rCi0rLyoKLSsgKiBJbXBsZW1lbnRhdGlvbiBvZiB0 aGUgRklQUyAxNDAtMiBzZWN0aW9uIDQuOS4yIENvbmRpdGlvbmFsIFRlc3RzLgotKyAqLwotKwot KyNpbmNsdWRlIDxzdHJpbmcuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLSsjaW5jbHVk ZSAiY3J5cHRvL3JhbmQuaCIKLSsjaW5jbHVkZSAiaW50ZXJuYWwvdGhyZWFkX29uY2UuaCIKLSsj aW5jbHVkZSAicmFuZF9sb2NhbC5oIgotKwotK3N0YXRpYyBSQU5EX1BPT0wgKmNybmd0X3Bvb2w7 Ci0rc3RhdGljIHVuc2lnbmVkIGNoYXIgY3JuZ3RfcHJldltFVlBfTUFYX01EX1NJWkVdOwotKwot K2ludCAoKmNybmd0X2dldF9lbnRyb3B5KSh1bnNpZ25lZCBjaGFyICosIHVuc2lnbmVkIGNoYXIg KiwgdW5zaWduZWQgaW50ICopCi0rICAgID0gJnJhbmRfY3JuZ3RfZ2V0X2VudHJvcHlfY2I7Ci0r Ci0raW50IHJhbmRfY3JuZ3RfZ2V0X2VudHJvcHlfY2IodW5zaWduZWQgY2hhciAqYnVmLCB1bnNp Z25lZCBjaGFyICptZCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBp bnQgKm1kX3NpemUpCi0rewotKyAgICBpbnQgcjsKLSsgICAgc2l6ZV90IG47Ci0rICAgIHVuc2ln bmVkIGNoYXIgKnA7Ci0rCi0rICAgIG4gPSByYW5kX3Bvb2xfYWNxdWlyZV9lbnRyb3B5KGNybmd0 X3Bvb2wpOwotKyAgICBpZiAobiA+PSBDUk5HVF9CVUZTSVopIHsKLSsgICAgICAgIHAgPSByYW5k X3Bvb2xfZGV0YWNoKGNybmd0X3Bvb2wpOwotKyAgICAgICAgciA9IEVWUF9EaWdlc3QocCwgQ1JO R1RfQlVGU0laLCBtZCwgbWRfc2l6ZSwgRVZQX3NoYTI1NigpLCBOVUxMKTsKLSsgICAgICAgIGlm IChyICE9IDApCi0rICAgICAgICAgICAgbWVtY3B5KGJ1ZiwgcCwgQ1JOR1RfQlVGU0laKTsKLSsg ICAgICAgIHJhbmRfcG9vbF9yZWF0dGFjaChjcm5ndF9wb29sLCBwKTsKLSsgICAgICAgIHJldHVy biByOwotKyAgICB9Ci0rICAgIHJldHVybiAwOwotK30KLSsKLSt2b2lkIHJhbmRfY3JuZ3RfY2xl YW51cCh2b2lkKQotK3sKLSsgICAgcmFuZF9wb29sX2ZyZWUoY3JuZ3RfcG9vbCk7Ci0rICAgIGNy bmd0X3Bvb2wgPSBOVUxMOwotK30KLSsKLStpbnQgcmFuZF9jcm5ndF9pbml0KHZvaWQpCi0rewot KyAgICB1bnNpZ25lZCBjaGFyIGJ1ZltDUk5HVF9CVUZTSVpdOwotKwotKyAgICBpZiAoKGNybmd0 X3Bvb2wgPSByYW5kX3Bvb2xfbmV3KDAsIDEsIENSTkdUX0JVRlNJWiwgQ1JOR1RfQlVGU0laKSkg PT0gTlVMTCkKLSsgICAgICAgIHJldHVybiAwOwotKyAgICBpZiAoY3JuZ3RfZ2V0X2VudHJvcHko YnVmLCBjcm5ndF9wcmV2LCBOVUxMKSkgewotKyAgICAgICAgT1BFTlNTTF9jbGVhbnNlKGJ1Ziwg c2l6ZW9mKGJ1ZikpOwotKyAgICAgICAgcmV0dXJuIDE7Ci0rICAgIH0KLSsgICAgcmFuZF9jcm5n dF9jbGVhbnVwKCk7Ci0rICAgIHJldHVybiAwOwotK30KLSsKLStzdGF0aWMgQ1JZUFRPX09OQ0Ug cmFuZF9jcm5ndF9pbml0X2ZsYWcgPSBDUllQVE9fT05DRV9TVEFUSUNfSU5JVDsKLStERUZJTkVf UlVOX09OQ0VfU1RBVElDKGRvX3JhbmRfY3JuZ3RfaW5pdCkKLSt7Ci0rICAgIHJldHVybiBPUEVO U1NMX2luaXRfY3J5cHRvKDAsIE5VTEwpCi0rICAgICAgICAmJiByYW5kX2Nybmd0X2luaXQoKQot KyAgICAgICAgJiYgT1BFTlNTTF9hdGV4aXQoJnJhbmRfY3JuZ3RfY2xlYW51cCk7Ci0rfQotKwot K2ludCByYW5kX2Nybmd0X3NpbmdsZV9pbml0KHZvaWQpCi0rewotKyAgICByZXR1cm4gUlVOX09O Q0UoJnJhbmRfY3JuZ3RfaW5pdF9mbGFnLCBkb19yYW5kX2Nybmd0X2luaXQpOwotK30KLSsKLStz aXplX3QgcmFuZF9jcm5ndF9nZXRfZW50cm9weShSQU5EX0RSQkcgKmRyYmcsCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqKnBvdXQsCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaW50IGVudHJvcHksIHNpemVfdCBtaW5fbGVuLCBzaXplX3QgbWF4 X2xlbiwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcHJlZGljdGlvbl9yZXNp c3RhbmNlKQotK3sKLSsgICAgdW5zaWduZWQgY2hhciBidWZbQ1JOR1RfQlVGU0laXSwgbWRbRVZQ X01BWF9NRF9TSVpFXTsKLSsgICAgdW5zaWduZWQgaW50IHN6OwotKyAgICBSQU5EX1BPT0wgKnBv b2w7Ci0rICAgIHNpemVfdCBxLCByID0gMCwgcywgdCA9IDA7Ci0rICAgIGludCBhdHRlbXB0cyA9 IDM7Ci0rCi0rICAgIGlmICghUlVOX09OQ0UoJnJhbmRfY3JuZ3RfaW5pdF9mbGFnLCBkb19yYW5k X2Nybmd0X2luaXQpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIGlmICgocG9vbCA9IHJh bmRfcG9vbF9uZXcoZW50cm9weSwgMSwgbWluX2xlbiwgbWF4X2xlbikpID09IE5VTEwpCi0rICAg ICAgICByZXR1cm4gMDsKLSsKLSsgICAgd2hpbGUgKChxID0gcmFuZF9wb29sX2J5dGVzX25lZWRl ZChwb29sLCAxKSkgPiAwICYmIGF0dGVtcHRzLS0gPiAwKSB7Ci0rICAgICAgICBzID0gcSA+IHNp emVvZihidWYpID8gc2l6ZW9mKGJ1ZikgOiBxOwotKyAgICAgICAgaWYgKCFjcm5ndF9nZXRfZW50 cm9weShidWYsIG1kLCAmc3opCi0rICAgICAgICAgICAgfHwgbWVtY21wKGNybmd0X3ByZXYsIG1k LCBzeikgPT0gMAotKyAgICAgICAgICAgIHx8ICFyYW5kX3Bvb2xfYWRkKHBvb2wsIGJ1Ziwgcywg cyAqIDgpKQotKyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgbWVtY3B5KGNybmd0X3By ZXYsIG1kLCBzeik7Ci0rICAgICAgICB0ICs9IHM7Ci0rICAgICAgICBhdHRlbXB0cysrOwotKyAg ICB9Ci0rICAgIHIgPSB0OwotKyAgICAqcG91dCA9IHJhbmRfcG9vbF9kZXRhY2gocG9vbCk7Ci0r ZXJyOgotKyAgICBPUEVOU1NMX2NsZWFuc2UoYnVmLCBzaXplb2YoYnVmKSk7Ci0rICAgIHJhbmRf cG9vbF9mcmVlKHBvb2wpOwotKyAgICByZXR1cm4gcjsKLSt9Ci0rCi0rdm9pZCByYW5kX2Nybmd0 X2NsZWFudXBfZW50cm9weShSQU5EX0RSQkcgKmRyYmcsCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpvdXQsIHNpemVfdCBvdXRsZW4pCi0rewotKyAgICBP UEVOU1NMX3NlY3VyZV9jbGVhcl9mcmVlKG91dCwgb3V0bGVuKTsKLSt9Ci1kaWZmIC11cCBvcGVu c3NsLTEuMS4xZy9jcnlwdG8vcmFuZC9yYW5kX2xvY2FsLmguY3JuZy10ZXN0IG9wZW5zc2wtMS4x LjFnL2NyeXB0by9yYW5kL3JhbmRfbG9jYWwuaAotLS0tIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9y YW5kL3JhbmRfbG9jYWwuaC5jcm5nLXRlc3QJMjAyMC0wNC0yMyAxMzozMDo0NS40NzAzOTcyNTAg KzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vcmFuZC9yYW5kX2xvY2FsLmgJMjAyMC0w NC0yMyAxMzozMDo0NS44NjQzODk4MTkgKzAyMDAKLUBAIC0zMyw3ICszMywxNSBAQAotICMgZGVm aW5lIE1BU1RFUl9SRVNFRURfVElNRV9JTlRFUlZBTCAgICAgICAgICAgICAoNjAqNjApICAgLyog MSBob3VyICovCi0gIyBkZWZpbmUgU0xBVkVfUkVTRUVEX1RJTUVfSU5URVJWQUwgICAgICAgICAg ICAgICg3KjYwKSAgICAvKiA3IG1pbnV0ZXMgKi8KLSAKLS0KLSsvKgotKyAqIFRoZSBudW1iZXIg b2YgYnl0ZXMgdGhhdCBjb25zdGl0dXRlcyBhbiBhdG9taWMgbHVtcCBvZiBlbnRyb3B5IHdpdGgg cmVzcGVjdAotKyAqIHRvIHRoZSBGSVBTIDE0MC0yIHNlY3Rpb24gNC45LjIgQ29uZGl0aW9uYWwg VGVzdHMuICBUaGUgc2l6ZSBpcyBzb21ld2hhdAotKyAqIGFyYml0cmFyeSwgdGhlIHNtYWxsZXIg dGhlIHZhbHVlLCB0aGUgbGVzcyBlbnRyb3B5IGlzIGNvbnN1bWVkIG9uIGZpcnN0Ci0rICogcmVh ZCBidXQgdGhlIGhpZ2hlciB0aGUgcHJvYmFiaWxpdHkgb2YgdGhlIHRlc3QgZmFpbGluZyBieSBh Y2NpZGVudC4KLSsgKgotKyAqIFRoZSB2YWx1ZSBpcyBpbiBieXRlcy4KLSsgKi8KLSsjZGVmaW5l IENSTkdUX0JVRlNJWiAgICAxNgotIAotIC8qCi0gICogTWF4aW11bSBpbnB1dCBzaXplIGZvciB0 aGUgRFJCRyAoZW50cm9weSwgbm9uY2UsIHBlcnNvbmFsaXphdGlvbiBzdHJpbmcpCi1AQCAtNDQs NiArNTIsOCBAQAotICAqLwotICMgZGVmaW5lIERSQkdfTUFYX0xFTkdUSCAgICAgICAgICAgICAg ICAgICAgICAgICBJTlQzMl9NQVgKLSAKLSsvKiBUaGUgZGVmYXVsdCBub25jZSAqLwotKyMgZGVm aW5lIERSQkdfREVGQVVMVF9QRVJTX1NUUklORyAgICAgICAgICAgICAgICAiT3BlblNTTCBOSVNU IFNQIDgwMC05MEEgRFJCRyIKLSAKLSAvKgotICAqIE1heGltdW0gYWxsb2NhdGlvbiBzaXplIGZv ciBSQU5ET01fUE9PTCBidWZmZXJzCi1AQCAtMjk2LDQgKzMwNiwyMiBAQCBpbnQgcmFuZF9kcmJn X2VuYWJsZV9sb2NraW5nKFJBTkRfRFJCRyAqCi0gLyogaW5pdGlhbGl6ZXMgdGhlIEFFUy1DVFIg RFJCRyBpbXBsZW1lbnRhdGlvbiAqLwotIGludCBkcmJnX2N0cl9pbml0KFJBTkRfRFJCRyAqZHJi Zyk7Ci0gCi0rLyoKLSsgKiBFbnRyb3B5IGNhbGwgYmFjayBmb3IgdGhlIEZJUFMgMTQwLTIgc2Vj dGlvbiA0LjkuMiBDb25kaXRpb25hbCBUZXN0cy4KLSsgKiBUaGVzZSBuZWVkIHRvIGJlIGV4cG9z ZWQgZm9yIHRoZSB1bml0IHRlc3RzLgotKyAqLwotK2ludCByYW5kX2Nybmd0X2dldF9lbnRyb3B5 X2NiKHVuc2lnbmVkIGNoYXIgKmJ1ZiwgdW5zaWduZWQgY2hhciAqbWQsCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50ICptZF9zaXplKTsKLStleHRlcm4gaW50ICgq Y3JuZ3RfZ2V0X2VudHJvcHkpKHVuc2lnbmVkIGNoYXIgKmJ1ZiwgdW5zaWduZWQgY2hhciAqbWQs Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKm1kX3NpemUp OwotK2ludCByYW5kX2Nybmd0X2luaXQodm9pZCk7Ci0rdm9pZCByYW5kX2Nybmd0X2NsZWFudXAo dm9pZCk7Ci0rCi0rLyoKLSsgKiBFeHBvc2UgdGhlIHJ1biBvbmNlIGluaXRpYWxpc2F0aW9uIGZ1 bmN0aW9uIGZvciB0aGUgdW5pdCB0ZXN0cyBiZWNhdXNlLgotKyAqIHRoZXkgbmVlZCB0byByZXN0 YXJ0IGZyb20gc2NyYXRjaCB0byB2YWxpZGF0ZSB0aGUgZmlyc3QgYmxvY2sgaXMgc2tpcHBlZAot KyAqIHByb3Blcmx5LgotKyAqLwotK2ludCByYW5kX2Nybmd0X3NpbmdsZV9pbml0KHZvaWQpOwot KwotICNlbmRpZgotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9jcnlwdG8vcmFuZC5o LmNybmctdGVzdCBvcGVuc3NsLTEuMS4xZy9pbmNsdWRlL2NyeXB0by9yYW5kLmgKLS0tLSBvcGVu c3NsLTEuMS4xZy9pbmNsdWRlL2NyeXB0by9yYW5kLmguY3JuZy10ZXN0CTIwMjAtMDQtMjMgMTM6 MzA6NDUuODI0MzkwNTczICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9jcnlwdG8v cmFuZC5oCTIwMjAtMDQtMjMgMTM6MzA6NDUuODY0Mzg5ODE5ICswMjAwCi1AQCAtNDksNiArNDks MTQgQEAgc2l6ZV90IHJhbmRfZHJiZ19nZXRfYWRkaXRpb25hbF9kYXRhKFJBTgotIAotIHZvaWQg cmFuZF9kcmJnX2NsZWFudXBfYWRkaXRpb25hbF9kYXRhKFJBTkRfUE9PTCAqcG9vbCwgdW5zaWdu ZWQgY2hhciAqb3V0KTsKLSAKLSsvKiBDUk5HIHRlc3QgZW50cm9weSBmaWx0ZXIgY2FsbGJhY2tz LiAqLwotK3NpemVfdCByYW5kX2Nybmd0X2dldF9lbnRyb3B5KFJBTkRfRFJCRyAqZHJiZywKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICoqcG91dCwKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZW50cm9weSwgc2l6ZV90IG1pbl9sZW4sIHNp emVfdCBtYXhfbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBwcmVkaWN0 aW9uX3Jlc2lzdGFuY2UpOwotK3ZvaWQgcmFuZF9jcm5ndF9jbGVhbnVwX2VudHJvcHkoUkFORF9E UkJHICpkcmJnLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hh ciAqb3V0LCBzaXplX3Qgb3V0bGVuKTsKLSsKLSAvKgotICAqIFJBTkRfUE9PTCBmdW5jdGlvbnMK LSAgKi8KLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL3Rlc3QvZHJiZ3Rlc3QuYy5jcm5nLXRlc3Qg b3BlbnNzbC0xLjEuMWcvdGVzdC9kcmJndGVzdC5jCi0tLS0gb3BlbnNzbC0xLjEuMWcvdGVzdC9k cmJndGVzdC5jLmNybmctdGVzdAkyMDIwLTA0LTIxIDE0OjIyOjM5LjAwMDAwMDAwMCArMDIwMAot KysrIG9wZW5zc2wtMS4xLjFnL3Rlc3QvZHJiZ3Rlc3QuYwkyMDIwLTA0LTIzIDEzOjMwOjQ1Ljg2 NTM4OTgwMCArMDIwMAotQEAgLTE1MCw2ICsxNTAsMzEgQEAgc3RhdGljIHNpemVfdCBrYXRfbm9u Y2UoUkFORF9EUkJHICpkcmJnLAotICAgICByZXR1cm4gdC0+bm9uY2VsZW47Ci0gfQotIAotKyAv KgotKyAqIERpc2FibGUgQ1JORyB0ZXN0aW5nIGlmIGl0IGlzIGVuYWJsZWQuCi0rICogSWYgdGhl IERSQkcgaXMgcmVhZHkgb3IgaW4gYW4gZXJyb3Igc3RhdGUsIHRoaXMgbWVhbnMgYW4gaW5zdGFu dGlhdGUgY3ljbGUKLSsgKiBmb3Igd2hpY2ggdGhlIGRlZmF1bHQgcGVyc29uYWxpc2F0aW9uIHN0 cmluZyBpcyB1c2VkLgotKyAqLwotK3N0YXRpYyBpbnQgZGlzYWJsZV9jcm5ndChSQU5EX0RSQkcg KmRyYmcpCi0rewotKyAgICBzdGF0aWMgY29uc3QgY2hhciBwZXJzW10gPSBEUkJHX0RFRkFVTFRf UEVSU19TVFJJTkc7Ci0rICAgIGNvbnN0IGludCBpbnN0YW50aWF0ZSA9IGRyYmctPnN0YXRlICE9 IERSQkdfVU5JTklUSUFMSVNFRDsKLSsKLSsgICAgaWYgKGRyYmctPmdldF9lbnRyb3B5ICE9IHJh bmRfY3JuZ3RfZ2V0X2VudHJvcHkpCi0rICAgICAgICByZXR1cm4gMTsKLSsKLSsgICAgIGlmICgo aW5zdGFudGlhdGUgJiYgIVJBTkRfRFJCR191bmluc3RhbnRpYXRlKGRyYmcpKQotKyAgICAgICAg fHwgIVRFU1RfdHJ1ZShSQU5EX0RSQkdfc2V0X2NhbGxiYWNrcyhkcmJnLCAmcmFuZF9kcmJnX2dl dF9lbnRyb3B5LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmcmFuZF9kcmJnX2NsZWFudXBfZW50cm9weSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgJnJhbmRfZHJiZ19nZXRfbm9uY2UsCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyYW5kX2RyYmdfY2xlYW51cF9ub25j ZSkpCi0rICAgICAgICB8fCAoaW5zdGFudGlhdGUKLSsgICAgICAgICAgICAmJiAhUkFORF9EUkJH X2luc3RhbnRpYXRlKGRyYmcsIChjb25zdCB1bnNpZ25lZCBjaGFyICopcGVycywKLSsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihwZXJzKSAtIDEpKSkKLSsgICAg ICAgIHJldHVybiAwOwotKyAgICByZXR1cm4gMTsKLSt9Ci0rCi0gc3RhdGljIGludCB1bmluc3Rh bnRpYXRlKFJBTkRfRFJCRyAqZHJiZykKLSB7Ci0gICAgIGludCByZXQgPSBkcmJnID09IE5VTEwg PyAxIDogUkFORF9EUkJHX3VuaW5zdGFudGlhdGUoZHJiZyk7Ci1AQCAtMTc1LDcgKzIwMCw4IEBA IHN0YXRpYyBpbnQgc2luZ2xlX2thdChEUkJHX1NFTEZURVNUX0RBVEEKLSAgICAgaWYgKCFURVNU X3B0cihkcmJnID0gUkFORF9EUkJHX25ldyh0ZC0+bmlkLCB0ZC0+ZmxhZ3MsIE5VTEwpKSkKLSAg ICAgICAgIHJldHVybiAwOwotICAgICBpZiAoIVRFU1RfdHJ1ZShSQU5EX0RSQkdfc2V0X2NhbGxi YWNrcyhkcmJnLCBrYXRfZW50cm9weSwgTlVMTCwKLS0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAga2F0X25vbmNlLCBOVUxMKSkpIHsKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAga2F0X25vbmNlLCBOVUxMKSkKLSsgICAgICAgIHx8 ICFURVNUX3RydWUoZGlzYWJsZV9jcm5ndChkcmJnKSkpIHsKLSAgICAgICAgIGZhaWx1cmVzKys7 Ci0gICAgICAgICBnb3RvIGVycjsKLSAgICAgfQotQEAgLTI5Myw3ICszMTksOCBAQCBzdGF0aWMg aW50IGVycm9yX2NoZWNrKERSQkdfU0VMRlRFU1RfREFUCi0gICAgIHVuc2lnbmVkIGludCByZXNl ZWRfY291bnRlcl90bXA7Ci0gICAgIGludCByZXQgPSAwOwotIAotLSAgICBpZiAoIVRFU1RfcHRy KGRyYmcgPSBSQU5EX0RSQkdfbmV3KDAsIDAsIE5VTEwpKSkKLSsgICAgaWYgKCFURVNUX3B0cihk cmJnID0gUkFORF9EUkJHX25ldygwLCAwLCBOVUxMKSkKLSsJfHwgIVRFU1RfdHJ1ZShkaXNhYmxl X2Nybmd0KGRyYmcpKSkKLSAgICAgICAgIGdvdG8gZXJyOwotIAotICAgICAvKgotQEAgLTc0MCw2 ICs3NjcsMTAgQEAgc3RhdGljIGludCB0ZXN0X3JhbmRfZHJiZ19yZXNlZWQodm9pZCkKLSAgICAg ICAgIHx8ICFURVNUX3B0cl9lcShwcml2YXRlLT5wYXJlbnQsIG1hc3RlcikpCi0gICAgICAgICBy ZXR1cm4gMDsKLSAKLSsgICAgLyogRGlzYWJsZSBDUk5HIHRlc3RpbmcgZm9yIHRoZSBtYXN0ZXIg RFJCRyAqLwotKyAgICBpZiAoIVRFU1RfdHJ1ZShkaXNhYmxlX2Nybmd0KG1hc3RlcikpKQotKyAg ICAgICAgcmV0dXJuIDA7Ci0rCi0gICAgIC8qIHVuaW5zdGFudGlhdGUgdGhlIHRocmVlIGdsb2Jh bCBEUkJHcyAqLwotICAgICBSQU5EX0RSQkdfdW5pbnN0YW50aWF0ZShwcml2YXRlKTsKLSAgICAg UkFORF9EUkJHX3VuaW5zdGFudGlhdGUocHVibGljKTsKLUBAIC05NjQsNyArOTk1LDggQEAgc3Rh dGljIGludCB0ZXN0X3JhbmRfc2VlZCh2b2lkKQotICAgICBzaXplX3QgcmFuZF9idWZsZW47Ci0g ICAgIHNpemVfdCByZXF1aXJlZF9zZWVkX2J1ZmxlbiA9IDA7Ci0gCi0tICAgIGlmICghVEVTVF9w dHIobWFzdGVyID0gUkFORF9EUkJHX2dldDBfbWFzdGVyKCkpKQotKyAgICBpZiAoIVRFU1RfcHRy KG1hc3RlciA9IFJBTkRfRFJCR19nZXQwX21hc3RlcigpKQotKyAgICAgICAgfHwgIVRFU1RfdHJ1 ZShkaXNhYmxlX2Nybmd0KG1hc3RlcikpKQotICAgICAgICAgcmV0dXJuIDA7Ci0gCi0gI2lmZGVm IE9QRU5TU0xfUkFORF9TRUVEX05PTkUKLUBAIC0xMDEzLDYgKzEwNDUsOTUgQEAgc3RhdGljIGlu dCB0ZXN0X3JhbmRfYWRkKHZvaWQpCi0gICAgIHJldHVybiAxOwotIH0KLSAKLSsvKgotKyAqIEEg bGlzdCBvZiB0aGUgRklQUyBEUkdCIHR5cGVzLgotKyAqLwotK3N0YXRpYyBjb25zdCBzdHJ1Y3Qg c19kcmdiX3R5cGVzIHsKLSsgICAgaW50IG5pZDsKLSsgICAgaW50IGZsYWdzOwotK30gZHJnYl90 eXBlc1tdID0gewotKyAgICB7IE5JRF9hZXNfMTI4X2N0ciwgIDAgICAgICAgICAgICAgICAgICAg fSwKLSsgICAgeyBOSURfYWVzXzE5Ml9jdHIsICAwICAgICAgICAgICAgICAgICAgIH0sCi0rICAg IHsgTklEX2Flc18yNTZfY3RyLCAgMCAgICAgICAgICAgICAgICAgICB9LAotK307Ci0rCi0rLyog U2l4IGNhc2VzIGZvciBlYWNoIGNvdmVycyBzZWVkIHNpemVzIHVwIHRvIDMyIGJ5dGVzICovCi0r c3RhdGljIGNvbnN0IHNpemVfdCBjcm5ndF9udW1fY2FzZXMgPSA2OwotKwotK3N0YXRpYyBzaXpl X3QgY3JuZ3RfY2FzZSwgY3JuZ3RfaWR4OwotKwotK3N0YXRpYyBpbnQgY3JuZ3RfZW50cm9weV9j Yih1bnNpZ25lZCBjaGFyICpidWYsIHVuc2lnbmVkIGNoYXIgKm1kLAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgKm1kX3NpemUpCi0rewotKyAgICBzaXplX3QgaSwg ejsKLSsKLSsgICAgaWYgKCFURVNUX2ludF9sdChjcm5ndF9pZHgsIGNybmd0X251bV9jYXNlcykp Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgLyogR2VuZXJhdGUgYSBibG9jayBvZiB1bmlxdWUg ZGF0YSB1bmxlc3MgdGhpcyBpcyB0aGUgZHVwbGljYXRpb24gcG9pbnQgKi8KLSsgICAgeiA9IGNy bmd0X2lkeCsrOwotKyAgICBpZiAoeiA+IDAgJiYgY3JuZ3RfY2FzZSA9PSB6KQotKyAgICAgICAg ei0tOwotKyAgICBmb3IgKGkgPSAwOyBpIDwgQ1JOR1RfQlVGU0laOyBpKyspCi0rICAgICAgICBi dWZbaV0gPSAodW5zaWduZWQgY2hhcikoaSArICdBJyArIHopOwotKyAgICByZXR1cm4gRVZQX0Rp Z2VzdChidWYsIENSTkdUX0JVRlNJWiwgbWQsIG1kX3NpemUsIEVWUF9zaGEyNTYoKSwgTlVMTCk7 Ci0rfQotKwotK3N0YXRpYyBpbnQgdGVzdF9jcm5ndChpbnQgbikKLSt7Ci0rICAgIGNvbnN0IHN0 cnVjdCBzX2RyZ2JfdHlwZXMgKmR0ID0gZHJnYl90eXBlcyArIG4gLyBjcm5ndF9udW1fY2FzZXM7 Ci0rICAgIFJBTkRfRFJCRyAqZHJiZyA9IE5VTEw7Ci0rICAgIHVuc2lnbmVkIGNoYXIgYnVmZlsx MDBdOwotKyAgICBzaXplX3QgZW50OwotKyAgICBpbnQgcmVzID0gMDsKLSsgICAgaW50IGV4cGVj dDsKLSsKLSsgICAgaWYgKCFURVNUX3RydWUocmFuZF9jcm5ndF9zaW5nbGVfaW5pdCgpKSkKLSsg ICAgICAgIHJldHVybiAwOwotKyAgICByYW5kX2Nybmd0X2NsZWFudXAoKTsKLSsKLSsgICAgaWYg KCFURVNUX3B0cihkcmJnID0gUkFORF9EUkJHX25ldyhkdC0+bmlkLCBkdC0+ZmxhZ3MsIE5VTEwp KSkKLSsgICAgICAgIHJldHVybiAwOwotKyAgICBlbnQgPSAoZHJiZy0+bWluX2VudHJvcHlsZW4g KyBDUk5HVF9CVUZTSVogLSAxKSAvIENSTkdUX0JVRlNJWjsKLSsgICAgY3JuZ3RfY2FzZSA9IG4g JSBjcm5ndF9udW1fY2FzZXM7Ci0rICAgIGNybmd0X2lkeCA9IDA7Ci0rICAgIGNybmd0X2dldF9l bnRyb3B5ID0gJmNybmd0X2VudHJvcHlfY2I7Ci0rICAgIGlmICghVEVTVF90cnVlKHJhbmRfY3Ju Z3RfaW5pdCgpKSkKLSsgICAgICAgIGdvdG8gZXJyOwotKyNpZm5kZWYgT1BFTlNTTF9GSVBTCi0r ICAgIGlmICghVEVTVF90cnVlKFJBTkRfRFJCR19zZXRfY2FsbGJhY2tzKGRyYmcsICZyYW5kX2Ny bmd0X2dldF9lbnRyb3B5LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAmcmFuZF9jcm5ndF9jbGVhbnVwX2VudHJvcHksCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICZyYW5kX2RyYmdfZ2V0X25vbmNlLAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmcmFuZF9kcmJnX2NsZWFudXBfbm9uY2Up KSkKLSsgICAgICAgIGdvdG8gZXJyOwotKyNlbmRpZgotKyAgICBleHBlY3QgPSBjcm5ndF9jYXNl ID09IDAgfHwgY3JuZ3RfY2FzZSA+IGVudDsKLSsgICAgaWYgKCFURVNUX2ludF9lcShSQU5EX0RS QkdfaW5zdGFudGlhdGUoZHJiZywgTlVMTCwgMCksIGV4cGVjdCkpCi0rICAgICAgICBnb3RvIGVy cjsKLSsgICAgaWYgKCFleHBlY3QpCi0rICAgICAgICBnb3RvIGZpbjsKLSsgICAgaWYgKCFURVNU X3RydWUoUkFORF9EUkJHX2dlbmVyYXRlKGRyYmcsIGJ1ZmYsIHNpemVvZihidWZmKSwgMCwgTlVM TCwgMCkpKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIGV4cGVjdCA9IGNybmd0X2Nhc2Ug PT0gMCB8fCBjcm5ndF9jYXNlID4gMiAqIGVudDsKLSsgICAgaWYgKCFURVNUX2ludF9lcShSQU5E X0RSQkdfcmVzZWVkKGRyYmcsIE5VTEwsIDAsIDApLCBleHBlY3QpKQotKyAgICAgICAgZ290byBl cnI7Ci0rICAgIGlmICghZXhwZWN0KQotKyAgICAgICAgZ290byBmaW47Ci0rICAgIGlmICghVEVT VF90cnVlKFJBTkRfRFJCR19nZW5lcmF0ZShkcmJnLCBidWZmLCBzaXplb2YoYnVmZiksIDAsIE5V TEwsIDApKSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotK2ZpbjoKLSsgICAgcmVzID0gMTsKLStl cnI6Ci0rICAgIGlmICghcmVzKQotKyAgICAgICAgVEVTVF9ub3RlKCJEUkJHICV6ZCBjYXNlICV6 ZCBibG9jayAlemQiLCBuIC8gY3JuZ3RfbnVtX2Nhc2VzLAotKyAgICAgICAgICAgICAgICAgIGNy bmd0X2Nhc2UsIGNybmd0X2lkeCk7Ci0rICAgIHVuaW5zdGFudGlhdGUoZHJiZyk7Ci0rICAgIFJB TkRfRFJCR19mcmVlKGRyYmcpOwotKyAgICBjcm5ndF9nZXRfZW50cm9weSA9ICZyYW5kX2Nybmd0 X2dldF9lbnRyb3B5X2NiOwotKyAgICByZXR1cm4gcmVzOwotK30KLSsKLSBpbnQgc2V0dXBfdGVz dHModm9pZCkKLSB7Ci0gICAgIGFwcF9kYXRhX2luZGV4ID0gUkFORF9EUkJHX2dldF9leF9uZXdf aW5kZXgoMEwsIE5VTEwsIE5VTEwsIE5VTEwsIE5VTEwpOwotQEAgLTEwMjUsNSArMTE0Niw2IEBA IGludCBzZXR1cF90ZXN0cyh2b2lkKQotICNpZiBkZWZpbmVkKE9QRU5TU0xfVEhSRUFEUykKLSAg ICAgQUREX1RFU1QodGVzdF9tdWx0aV90aHJlYWQpOwotICNlbmRpZgotKyAgICBBRERfQUxMX1RF U1RTKHRlc3RfY3JuZ3QsIGNybmd0X251bV9jYXNlcyAqIE9TU0xfTkVMRU0oZHJnYl90eXBlcykp OwotICAgICByZXR1cm4gMTsKLSB9CgpkaWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1maXBzLWN1 cnZlcy5wYXRjaCBiL29wZW5zc2wtMS4xLjEtZmlwcy1jdXJ2ZXMucGF0Y2gKZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDMzZTlmYzUuLjAwMDAwMDAKLS0tIGEvb3BlbnNzbC0xLjEuMS1m aXBzLWN1cnZlcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDIwMCArMCwwIEBACi1kaWZmIC11 cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNfY3VydmUuYy5maXBzLWN1cnZlcyBvcGVuc3Ns LTEuMS4xZy9jcnlwdG8vZWMvZWNfY3VydmUuYwotLS0tIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9l Yy9lY19jdXJ2ZS5jLmZpcHMtY3VydmVzCTIwMjAtMDUtMTggMTI6NTk6NTQuODM5NjQzOTgwICsw MjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjX2N1cnZlLmMJMjAyMC0wNS0xOCAx Mjo1OTo1NC44NTI2NDQwOTMgKzAyMDAKLUBAIC0xMyw2ICsxMyw3IEBACi0gI2luY2x1ZGUgPG9w ZW5zc2wvZXJyLmg+Ci0gI2luY2x1ZGUgPG9wZW5zc2wvb2JqX21hYy5oPgotICNpbmNsdWRlIDxv cGVuc3NsL29wZW5zc2xjb25mLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvY3J5cHRvLmg+Ci0gI2lu Y2x1ZGUgImludGVybmFsL25lbGVtLmgiCi0gCi0gdHlwZWRlZiBzdHJ1Y3QgewotQEAgLTIzNyw2 ICsyMzgsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IHsKLSAKLSB0eXBlZGVmIHN0cnVjdCBfZWNf bGlzdF9lbGVtZW50X3N0IHsKLSAgICAgaW50IG5pZDsKLSsgICAgaW50IGZpcHNfYWxsb3dlZDsK LSAgICAgY29uc3QgRUNfQ1VSVkVfREFUQSAqZGF0YTsKLSAgICAgY29uc3QgRUNfTUVUSE9EICoo Km1ldGgpICh2b2lkKTsKLSAgICAgY29uc3QgY2hhciAqY29tbWVudDsKLUBAIC0yNDYsMjMgKzI0 OCwyMyBAQCBzdGF0aWMgY29uc3QgZWNfbGlzdF9lbGVtZW50IGN1cnZlX2xpc3RbCi0gICAgIC8q IHByaW1lIGZpZWxkIGN1cnZlcyAqLwotICAgICAvKiBzZWNnIGN1cnZlcyAqLwotICNpZm5kZWYg T1BFTlNTTF9OT19FQ19OSVNUUF82NF9HQ0NfMTI4Ci0tICAgIHtOSURfc2VjcDIyNHIxLCAmX0VD X05JU1RfUFJJTUVfMjI0LmgsIEVDX0dGcF9uaXN0cDIyNF9tZXRob2QsCi0rICAgIHtOSURfc2Vj cDIyNHIxLCAxLCAmX0VDX05JU1RfUFJJTUVfMjI0LmgsIEVDX0dGcF9uaXN0cDIyNF9tZXRob2Qs Ci0gICAgICAiTklTVC9TRUNHIGN1cnZlIG92ZXIgYSAyMjQgYml0IHByaW1lIGZpZWxkIn0sCi0g I2Vsc2UKLS0gICAge05JRF9zZWNwMjI0cjEsICZfRUNfTklTVF9QUklNRV8yMjQuaCwgMCwKLSsg ICAge05JRF9zZWNwMjI0cjEsIDEsICZfRUNfTklTVF9QUklNRV8yMjQuaCwgMCwKLSAgICAgICJO SVNUL1NFQ0cgY3VydmUgb3ZlciBhIDIyNCBiaXQgcHJpbWUgZmllbGQifSwKLSAjZW5kaWYKLS0g ICAge05JRF9zZWNwMjU2azEsICZfRUNfU0VDR19QUklNRV8yNTZLMS5oLCAwLAotKyAgICB7TklE X3NlY3AyNTZrMSwgMCwgJl9FQ19TRUNHX1BSSU1FXzI1NksxLmgsIDAsCi0gICAgICAiU0VDRyBj dXJ2ZSBvdmVyIGEgMjU2IGJpdCBwcmltZSBmaWVsZCJ9LAotICAgICAvKiBTRUNHIHNlY3AyNTZy MSBpcyB0aGUgc2FtZSBhcyBYOS42MiBwcmltZTI1NnYxIGFuZCBoZW5jZSBvbWl0dGVkICovCi0t ICAgIHtOSURfc2VjcDM4NHIxLCAmX0VDX05JU1RfUFJJTUVfMzg0LmgsCi0rICAgIHtOSURfc2Vj cDM4NHIxLCAxLCAmX0VDX05JU1RfUFJJTUVfMzg0LmgsCi0gIyBpZiBkZWZpbmVkKFMzOTBYX0VD X0FTTSkKLSAgICAgIEVDX0dGcF9zMzkweF9uaXN0cDM4NF9tZXRob2QsCi0gIyBlbHNlCi0gICAg ICAwLAotICMgZW5kaWYKLSAgICAgICJOSVNUL1NFQ0cgY3VydmUgb3ZlciBhIDM4NCBiaXQgcHJp bWUgZmllbGQifSwKLS0gICAge05JRF9zZWNwNTIxcjEsICZfRUNfTklTVF9QUklNRV81MjEuaCwK LSsgICAge05JRF9zZWNwNTIxcjEsIDEsICZfRUNfTklTVF9QUklNRV81MjEuaCwKLSAjIGlmIGRl ZmluZWQoUzM5MFhfRUNfQVNNKQotICAgICAgRUNfR0ZwX3MzOTB4X25pc3RwNTIxX21ldGhvZCwK LSAjIGVsaWYgIWRlZmluZWQoT1BFTlNTTF9OT19FQ19OSVNUUF82NF9HQ0NfMTI4KQotQEAgLTI3 Miw3ICsyNzQsNyBAQCBzdGF0aWMgY29uc3QgZWNfbGlzdF9lbGVtZW50IGN1cnZlX2xpc3RbCi0g IyBlbmRpZgotICAgICAgIk5JU1QvU0VDRyBjdXJ2ZSBvdmVyIGEgNTIxIGJpdCBwcmltZSBmaWVs ZCJ9LAotICAgICAvKiBYOS42MiBjdXJ2ZXMgKi8KLS0gICAge05JRF9YOV82Ml9wcmltZTI1NnYx LCAmX0VDX1g5XzYyX1BSSU1FXzI1NlYxLmgsCi0rICAgIHtOSURfWDlfNjJfcHJpbWUyNTZ2MSwg MSwgJl9FQ19YOV82Ml9QUklNRV8yNTZWMS5oLAotICNpZiBkZWZpbmVkKEVDUF9OSVNUWjI1Nl9B U00pCi0gICAgICBFQ19HRnBfbmlzdHoyNTZfbWV0aG9kLAotICMgZWxpZiBkZWZpbmVkKFMzOTBY X0VDX0FTTSkKLUBAIC00MDQsNiArNDA2LDEwIEBAIEVDX0dST1VQICpFQ19HUk9VUF9uZXdfYnlf Y3VydmVfbmFtZShpbnQKLSAKLSAgICAgZm9yIChpID0gMDsgaSA8IGN1cnZlX2xpc3RfbGVuZ3Ro OyBpKyspCi0gICAgICAgICBpZiAoY3VydmVfbGlzdFtpXS5uaWQgPT0gbmlkKSB7Ci0rICAgICAg ICAgICAgaWYgKCFjdXJ2ZV9saXN0W2ldLmZpcHNfYWxsb3dlZCAmJiBGSVBTX21vZGUoKSkgewot KyAgICAgICAgICAgICAgICBFQ2VycihFQ19GX0VDX0dST1VQX05FV19CWV9DVVJWRV9OQU1FLCBF Q19SX05PVF9BX05JU1RfUFJJTUUpOwotKyAgICAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSsg ICAgICAgICAgICB9Ci0gICAgICAgICAgICAgcmV0ID0gZWNfZ3JvdXBfbmV3X2Zyb21fZGF0YShj dXJ2ZV9saXN0W2ldKTsKLSAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgIH0KLUBAIC00MTgs MTkgKzQyNCwzMSBAQCBFQ19HUk9VUCAqRUNfR1JPVVBfbmV3X2J5X2N1cnZlX25hbWUoaW50Ci0g Ci0gc2l6ZV90IEVDX2dldF9idWlsdGluX2N1cnZlcyhFQ19idWlsdGluX2N1cnZlICpyLCBzaXpl X3Qgbml0ZW1zKQotIHsKLS0gICAgc2l6ZV90IGksIG1pbjsKLSsgICAgc2l6ZV90IGksIGosIG51 bTsKLSsgICAgaW50IGZpcHNfbW9kZSA9IEZJUFNfbW9kZSgpOwotIAotLSAgICBpZiAociA9PSBO VUxMIHx8IG5pdGVtcyA9PSAwKQotLSAgICAgICAgcmV0dXJuIGN1cnZlX2xpc3RfbGVuZ3RoOwot KyAgICBudW0gPSBjdXJ2ZV9saXN0X2xlbmd0aDsKLSsgICAgaWYgKGZpcHNfbW9kZSkKLSsgICAg ICAgIGZvciAoaSA9IDA7IGkgPCBjdXJ2ZV9saXN0X2xlbmd0aDsgaSsrKSB7Ci0rICAgICAgICAg ICAgaWYgKCFjdXJ2ZV9saXN0W2ldLmZpcHNfYWxsb3dlZCkKLSsgICAgICAgICAgICAgICAgLS1u dW07Ci0rICAgICAgICB9Ci0gCi0tICAgIG1pbiA9IG5pdGVtcyA8IGN1cnZlX2xpc3RfbGVuZ3Ro ID8gbml0ZW1zIDogY3VydmVfbGlzdF9sZW5ndGg7Ci0rICAgIGlmIChyID09IE5VTEwgfHwgbml0 ZW1zID09IDApIHsKLSsgICAgICAgIHJldHVybiBudW07Ci0rICAgIH0KLSAKLS0gICAgZm9yIChp ID0gMDsgaSA8IG1pbjsgaSsrKSB7Ci0tICAgICAgICByW2ldLm5pZCA9IGN1cnZlX2xpc3RbaV0u bmlkOwotLSAgICAgICAgcltpXS5jb21tZW50ID0gY3VydmVfbGlzdFtpXS5jb21tZW50OwotKyAg ICBmb3IgKGkgPSAwLCBqID0gMDsgaSA8IGN1cnZlX2xpc3RfbGVuZ3RoOyBpKyspIHsKLSsgICAg ICAgIGlmIChqID49IG5pdGVtcykKLSsgICAgICAgICAgICBicmVhazsKLSsgICAgICAgIGlmICgh Zmlwc19tb2RlIHx8IGN1cnZlX2xpc3RbaV0uZmlwc19hbGxvd2VkKSB7Ci0rICAgICAgICAgICAg cltqXS5uaWQgPSBjdXJ2ZV9saXN0W2ldLm5pZDsKLSsgICAgICAgICAgICByW2pdLmNvbW1lbnQg PSBjdXJ2ZV9saXN0W2ldLmNvbW1lbnQ7Ci0rICAgICAgICAgICAgKytqOwotKyAgICAgICAgfQot ICAgICB9Ci0gCi0tICAgIHJldHVybiBjdXJ2ZV9saXN0X2xlbmd0aDsKLSsgICAgcmV0dXJuIG51 bTsKLSB9Ci0gCi0gLyogRnVuY3Rpb25zIHRvIHRyYW5zbGF0ZSBiZXR3ZWVuIGNvbW1vbiBOSVNU IGN1cnZlIG5hbWVzIGFuZCBOSURzICovCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9zc2wvdDFf bGliLmMuZmlwcy1jdXJ2ZXMgb3BlbnNzbC0xLjEuMWcvc3NsL3QxX2xpYi5jCi0tLS0gb3BlbnNz bC0xLjEuMWcvc3NsL3QxX2xpYi5jLmZpcHMtY3VydmVzCTIwMjAtMDUtMTggMTI6NTk6NTQuNzk3 NjQzNjE2ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvc3NsL3QxX2xpYi5jCTIwMjAtMDUtMTgg MTM6MDM6NTQuNzQ4NzI1NDYzICswMjAwCi1AQCAtNjc4LDYgKzY3OCwzNiBAQCBzdGF0aWMgY29u c3QgdWludDE2X3QgdGxzMTJfc2lnYWxnc1tdID0KLSAjZW5kaWYKLSB9OwotIAotK3N0YXRpYyBj b25zdCB1aW50MTZfdCB0bHMxMl9maXBzX3NpZ2FsZ3NbXSA9IHsKLSsjaWZuZGVmIE9QRU5TU0xf Tk9fRUMKLSsgICAgVExTRVhUX1NJR0FMR19lY2RzYV9zZWNwMjU2cjFfc2hhMjU2LAotKyAgICBU TFNFWFRfU0lHQUxHX2VjZHNhX3NlY3AzODRyMV9zaGEzODQsCi0rICAgIFRMU0VYVF9TSUdBTEdf ZWNkc2Ffc2VjcDUyMXIxX3NoYTUxMiwKLSsjZW5kaWYKLSsKLSsgICAgVExTRVhUX1NJR0FMR19y c2FfcHNzX3Bzc19zaGEyNTYsCi0rICAgIFRMU0VYVF9TSUdBTEdfcnNhX3Bzc19wc3Nfc2hhMzg0 LAotKyAgICBUTFNFWFRfU0lHQUxHX3JzYV9wc3NfcHNzX3NoYTUxMiwKLSsgICAgVExTRVhUX1NJ R0FMR19yc2FfcHNzX3JzYWVfc2hhMjU2LAotKyAgICBUTFNFWFRfU0lHQUxHX3JzYV9wc3NfcnNh ZV9zaGEzODQsCi0rICAgIFRMU0VYVF9TSUdBTEdfcnNhX3Bzc19yc2FlX3NoYTUxMiwKLSsKLSsg ICAgVExTRVhUX1NJR0FMR19yc2FfcGtjczFfc2hhMjU2LAotKyAgICBUTFNFWFRfU0lHQUxHX3Jz YV9wa2NzMV9zaGEzODQsCi0rICAgIFRMU0VYVF9TSUdBTEdfcnNhX3BrY3MxX3NoYTUxMiwKLSsK LSsjaWZuZGVmIE9QRU5TU0xfTk9fRUMKLSsgICAgVExTRVhUX1NJR0FMR19lY2RzYV9zaGEyMjQs Ci0rI2VuZGlmCi0rICAgIFRMU0VYVF9TSUdBTEdfcnNhX3BrY3MxX3NoYTIyNCwKLSsjaWZuZGVm IE9QRU5TU0xfTk9fRFNBCi0rICAgIFRMU0VYVF9TSUdBTEdfZHNhX3NoYTIyNCwKLSsgICAgVExT RVhUX1NJR0FMR19kc2Ffc2hhMjU2LAotKyAgICBUTFNFWFRfU0lHQUxHX2RzYV9zaGEzODQsCi0r ICAgIFRMU0VYVF9TSUdBTEdfZHNhX3NoYTUxMiwKLSsjZW5kaWYKLSt9OwotKwotICNpZm5kZWYg T1BFTlNTTF9OT19FQwotIHN0YXRpYyBjb25zdCB1aW50MTZfdCBzdWl0ZWJfc2lnYWxnc1tdID0g ewotICAgICBUTFNFWFRfU0lHQUxHX2VjZHNhX3NlY3AyNTZyMV9zaGEyNTYsCi1AQCAtODk0LDYg KzkyNCw4IEBAIHN0YXRpYyBjb25zdCBTSUdBTEdfTE9PS1VQICp0bHMxX2dldF9sZWcKLSAgICAg fQotICAgICBpZiAoaWR4IDwgMCB8fCBpZHggPj0gKGludClPU1NMX05FTEVNKHRsc19kZWZhdWx0 X3NpZ2FsZykpCi0gICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAgaWYgKEZJUFNfbW9kZSgpKSAv KiBXZSBkbyBub3QgYWxsb3cgbGVnYWN5IFNIQTEgc2lnbmF0dXJlcyBpbiBGSVBTIG1vZGUgKi8K LSsgICAgICAgIHJldHVybiBOVUxMOwotICAgICBpZiAoU1NMX1VTRV9TSUdBTEdTKHMpIHx8IGlk eCAhPSBTU0xfUEtFWV9SU0EpIHsKLSAgICAgICAgIGNvbnN0IFNJR0FMR19MT09LVVAgKmx1ID0g dGxzMV9sb29rdXBfc2lnYWxnKHRsc19kZWZhdWx0X3NpZ2FsZ1tpZHhdKTsKLSAKLUBAIC05NTQs NiArOTg2LDkgQEAgc2l6ZV90IHRsczEyX2dldF9wc2lnYWxncyhTU0wgKnMsIGludCBzZQotICAg ICB9IGVsc2UgaWYgKHMtPmNlcnQtPmNvbmZfc2lnYWxncykgewotICAgICAgICAgKnBzaWdzID0g cy0+Y2VydC0+Y29uZl9zaWdhbGdzOwotICAgICAgICAgcmV0dXJuIHMtPmNlcnQtPmNvbmZfc2ln YWxnc2xlbjsKLSsgICAgfSBlbHNlIGlmIChGSVBTX21vZGUoKSkgewotKyAgICAgICAgKnBzaWdz ID0gdGxzMTJfZmlwc19zaWdhbGdzOwotKyAgICAgICAgcmV0dXJuIE9TU0xfTkVMRU0odGxzMTJf Zmlwc19zaWdhbGdzKTsKLSAgICAgfSBlbHNlIHsKLSAgICAgICAgICpwc2lncyA9IHRsczEyX3Np Z2FsZ3M7Ci0gICAgICAgICByZXR1cm4gT1NTTF9ORUxFTSh0bHMxMl9zaWdhbGdzKTsKLUBAIC05 NzMsNiArMTAwOCw5IEBAIGludCB0bHNfY2hlY2tfc2lnYWxnX2N1cnZlKGNvbnN0IFNTTCAqcywK LSAgICAgaWYgKHMtPmNlcnQtPmNvbmZfc2lnYWxncykgewotICAgICAgICAgc2lncyA9IHMtPmNl cnQtPmNvbmZfc2lnYWxnczsKLSAgICAgICAgIHNpZ2xlbiA9IHMtPmNlcnQtPmNvbmZfc2lnYWxn c2xlbjsKLSsgICAgfSBlbHNlIGlmIChGSVBTX21vZGUoKSkgewotKyAgICAgICAgc2lncyA9IHRs czEyX2ZpcHNfc2lnYWxnczsKLSsgICAgICAgIHNpZ2xlbiA9IE9TU0xfTkVMRU0odGxzMTJfZmlw c19zaWdhbGdzKTsKLSAgICAgfSBlbHNlIHsKLSAgICAgICAgIHNpZ3MgPSB0bHMxMl9zaWdhbGdz OwotICAgICAgICAgc2lnbGVuID0gT1NTTF9ORUxFTSh0bHMxMl9zaWdhbGdzKTsKLUBAIC0xNjE3 LDYgKzE2NTUsOCBAQCBzdGF0aWMgaW50IHRsczEyX3NpZ2FsZ19hbGxvd2VkKGNvbnN0IFNTCi0g ICAgIGlmIChsdS0+c2lnID09IE5JRF9pZF9Hb3N0UjM0MTBfMjAxMl8yNTYKLSAgICAgICAgICAg ICB8fCBsdS0+c2lnID09IE5JRF9pZF9Hb3N0UjM0MTBfMjAxMl81MTIKLSAgICAgICAgICAgICB8 fCBsdS0+c2lnID09IE5JRF9pZF9Hb3N0UjM0MTBfMjAwMSkgewotKyAgICAgICAgaWYgKEZJUFNf bW9kZSgpKQotKyAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgLyogV2UgbmV2ZXIgYWxs b3cgR09TVCBzaWcgYWxncyBvbiB0aGUgc2VydmVyIHdpdGggVExTdjEuMyAqLwotICAgICAgICAg aWYgKHMtPnNlcnZlciAmJiBTU0xfSVNfVExTMTMocykpCi0gICAgICAgICAgICAgcmV0dXJuIDA7 Ci1AQCAtMjg0Miw2ICsyODgyLDEzIEBAIGludCB0bHNfY2hvb3NlX3NpZ2FsZyhTU0wgKnMsIGlu dCBmYXRhbGUKLSAgICAgICAgICAgICAgICAgY29uc3QgdWludDE2X3QgKnNlbnRfc2lnczsKLSAg ICAgICAgICAgICAgICAgc2l6ZV90IHNlbnRfc2lnc2xlbjsKLSAKLSsgICAgICAgICAgICAgICAg aWYgKGZhdGFsZXJycyAmJiBGSVBTX21vZGUoKSkgewotKyAgICAgICAgICAgICAgICAgICAgLyog VGhlcmUgYXJlIG5vIHN1aXRhYmxlIGxlZ2FjeSBhbGdvcml0aG1zIGluIEZJUFMgbW9kZSAqLwot KyAgICAgICAgICAgICAgICAgICAgU1NMZmF0YWwocywgU1NMX0FEX0hBTkRTSEFLRV9GQUlMVVJF LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU1NMX0ZfVExTX0NIT09TRV9TSUdBTEcs Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTU0xfUl9OT19TVUlUQUJMRV9TSUdOQVRV UkVfQUxHT1JJVEhNKTsKLSsgICAgICAgICAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAg ICAgICAgICB9Ci0gICAgICAgICAgICAgICAgIGlmICgobHUgPSB0bHMxX2dldF9sZWdhY3lfc2ln YWxnKHMsIC0xKSkgPT0gTlVMTCkgewotICAgICAgICAgICAgICAgICAgICAgaWYgKCFmYXRhbGVy cnMpCi0gICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDE7CgpkaWZmIC0tZ2l0IGEvb3Bl bnNzbC0xLjEuMS1maXBzLWRoLnBhdGNoIGIvb3BlbnNzbC0xLjEuMS1maXBzLWRoLnBhdGNoCmRl bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlMWM3MzliLi4wMDAwMDAwCi0tLSBhL29wZW5z c2wtMS4xLjEtZmlwcy1kaC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI3MzAgKzAsMCBAQAot ZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2JuL2JuX2NvbnN0LmMuZmlwcy1kaCBvcGVu c3NsLTEuMS4xai9jcnlwdG8vYm4vYm5fY29uc3QuYwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0 by9ibi9ibl9jb25zdC5jLmZpcHMtZGgJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAx MDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vYm4vYm5fY29uc3QuYwkyMDIxLTAzLTAzIDE0 OjIzOjI3LjQwMzA5MjQxOCArMDEwMAotQEAgLTEsMTMgKzEsMTcgQEAKLSAvKgotLSAqIENvcHly aWdodCAyMDA1LTIwMTYgVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJl c2VydmVkLgotKyAqIENvcHlyaWdodCAyMDA1LTIwMjAgVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRo b3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgotICAqCi0tICogTGljZW5zZWQgdW5kZXIgdGhlIE9w ZW5TU0wgbGljZW5zZSAodGhlICJMaWNlbnNlIikuICBZb3UgbWF5IG5vdCB1c2UKLSsgKiBMaWNl bnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UgMi4wICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBt YXkgbm90IHVzZQotICAqIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBM aWNlbnNlLiAgWW91IGNhbiBvYnRhaW4gYSBjb3B5Ci0gICogaW4gdGhlIGZpbGUgTElDRU5TRSBp biB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBvciBhdAotICAqIGh0dHBzOi8vd3d3Lm9wZW5zc2wu b3JnL3NvdXJjZS9saWNlbnNlLmh0bWwKLSAgKi8KLSAKLSAjaW5jbHVkZSA8b3BlbnNzbC9ibi5o PgotKyNpbmNsdWRlICJjcnlwdG8vYm5fZGguaCIKLSsKLSsjZGVmaW5lIENPUFlfQk4oZHN0LCBz cmMpIChkc3QgIT0gTlVMTCkgPyBCTl9jb3B5KGRzdCwgJnNyYykgOiBCTl9kdXAoJnNyYykKLSsK LSAKLSAvKi0KLSAgKiAiRmlyc3QgT2FrbGV5IERlZmF1bHQgR3JvdXAiIGZyb20gUkZDMjQwOSwg c2VjdGlvbiA2LjEuCi1AQCAtODAsMzMgKzg0LDcgQEAgQklHTlVNICpCTl9nZXRfcmZjMjQwOV9w cmltZV8xMDI0KEJJR05VTQotIAotIEJJR05VTSAqQk5fZ2V0X3JmYzM1MjZfcHJpbWVfMTUzNihC SUdOVU0gKmJuKQotIHsKLS0gICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgUkZDMzUyNl9Q UklNRV8xNTM2W10gPSB7Ci0tICAgICAgICAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLCAw eEZGLCAweEZGLCAweEZGLAotLSAgICAgICAgMHhDOSwgMHgwRiwgMHhEQSwgMHhBMiwgMHgyMSwg MHg2OCwgMHhDMiwgMHgzNCwKLS0gICAgICAgIDB4QzQsIDB4QzYsIDB4NjIsIDB4OEIsIDB4ODAs IDB4REMsIDB4MUMsIDB4RDEsCi0tICAgICAgICAweDI5LCAweDAyLCAweDRFLCAweDA4LCAweDhB LCAweDY3LCAweENDLCAweDc0LAotLSAgICAgICAgMHgwMiwgMHgwQiwgMHhCRSwgMHhBNiwgMHgz QiwgMHgxMywgMHg5QiwgMHgyMiwKLS0gICAgICAgIDB4NTEsIDB4NEEsIDB4MDgsIDB4NzksIDB4 OEUsIDB4MzQsIDB4MDQsIDB4REQsCi0tICAgICAgICAweEVGLCAweDk1LCAweDE5LCAweEIzLCAw eENELCAweDNBLCAweDQzLCAweDFCLAotLSAgICAgICAgMHgzMCwgMHgyQiwgMHgwQSwgMHg2RCwg MHhGMiwgMHg1RiwgMHgxNCwgMHgzNywKLS0gICAgICAgIDB4NEYsIDB4RTEsIDB4MzUsIDB4NkQs IDB4NkQsIDB4NTEsIDB4QzIsIDB4NDUsCi0tICAgICAgICAweEU0LCAweDg1LCAweEI1LCAweDc2 LCAweDYyLCAweDVFLCAweDdFLCAweEM2LAotLSAgICAgICAgMHhGNCwgMHg0QywgMHg0MiwgMHhF OSwgMHhBNiwgMHgzNywgMHhFRCwgMHg2QiwKLS0gICAgICAgIDB4MEIsIDB4RkYsIDB4NUMsIDB4 QjYsIDB4RjQsIDB4MDYsIDB4QjcsIDB4RUQsCi0tICAgICAgICAweEVFLCAweDM4LCAweDZCLCAw eEZCLCAweDVBLCAweDg5LCAweDlGLCAweEE1LAotLSAgICAgICAgMHhBRSwgMHg5RiwgMHgyNCwg MHgxMSwgMHg3QywgMHg0QiwgMHgxRiwgMHhFNiwKLS0gICAgICAgIDB4NDksIDB4MjgsIDB4NjYs IDB4NTEsIDB4RUMsIDB4RTQsIDB4NUIsIDB4M0QsCi0tICAgICAgICAweEMyLCAweDAwLCAweDdD LCAweEI4LCAweEExLCAweDYzLCAweEJGLCAweDA1LAotLSAgICAgICAgMHg5OCwgMHhEQSwgMHg0 OCwgMHgzNiwgMHgxQywgMHg1NSwgMHhEMywgMHg5QSwKLS0gICAgICAgIDB4NjksIDB4MTYsIDB4 M0YsIDB4QTgsIDB4RkQsIDB4MjQsIDB4Q0YsIDB4NUYsCi0tICAgICAgICAweDgzLCAweDY1LCAw eDVELCAweDIzLCAweERDLCAweEEzLCAweEFELCAweDk2LAotLSAgICAgICAgMHgxQywgMHg2Miwg MHhGMywgMHg1NiwgMHgyMCwgMHg4NSwgMHg1MiwgMHhCQiwKLS0gICAgICAgIDB4OUUsIDB4RDUs IDB4MjksIDB4MDcsIDB4NzAsIDB4OTYsIDB4OTYsIDB4NkQsCi0tICAgICAgICAweDY3LCAweDBD LCAweDM1LCAweDRFLCAweDRBLCAweEJDLCAweDk4LCAweDA0LAotLSAgICAgICAgMHhGMSwgMHg3 NCwgMHg2QywgMHgwOCwgMHhDQSwgMHgyMywgMHg3MywgMHgyNywKLS0gICAgICAgIDB4RkYsIDB4 RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsCi0tICAgIH07Ci0tICAgIHJl dHVybiBCTl9iaW4yYm4oUkZDMzUyNl9QUklNRV8xNTM2LCBzaXplb2YoUkZDMzUyNl9QUklNRV8x NTM2KSwgYm4pOwotKyAgICByZXR1cm4gQ09QWV9CTihibiwgX2JpZ251bV9tb2RwXzE1MzZfcCk7 Ci0gfQotIAotIC8qLQotQEAgLTExOSw0MSArOTcsNyBAQCBCSUdOVU0gKkJOX2dldF9yZmMzNTI2 X3ByaW1lXzE1MzYoQklHTlVNCi0gCi0gQklHTlVNICpCTl9nZXRfcmZjMzUyNl9wcmltZV8yMDQ4 KEJJR05VTSAqYm4pCi0gewotLSAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBSRkMzNTI2 X1BSSU1FXzIwNDhbXSA9IHsKLS0gICAgICAgIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYs IDB4RkYsIDB4RkYsIDB4RkYsCi0tICAgICAgICAweEM5LCAweDBGLCAweERBLCAweEEyLCAweDIx LCAweDY4LCAweEMyLCAweDM0LAotLSAgICAgICAgMHhDNCwgMHhDNiwgMHg2MiwgMHg4QiwgMHg4 MCwgMHhEQywgMHgxQywgMHhEMSwKLS0gICAgICAgIDB4MjksIDB4MDIsIDB4NEUsIDB4MDgsIDB4 OEEsIDB4NjcsIDB4Q0MsIDB4NzQsCi0tICAgICAgICAweDAyLCAweDBCLCAweEJFLCAweEE2LCAw eDNCLCAweDEzLCAweDlCLCAweDIyLAotLSAgICAgICAgMHg1MSwgMHg0QSwgMHgwOCwgMHg3OSwg MHg4RSwgMHgzNCwgMHgwNCwgMHhERCwKLS0gICAgICAgIDB4RUYsIDB4OTUsIDB4MTksIDB4QjMs IDB4Q0QsIDB4M0EsIDB4NDMsIDB4MUIsCi0tICAgICAgICAweDMwLCAweDJCLCAweDBBLCAweDZE LCAweEYyLCAweDVGLCAweDE0LCAweDM3LAotLSAgICAgICAgMHg0RiwgMHhFMSwgMHgzNSwgMHg2 RCwgMHg2RCwgMHg1MSwgMHhDMiwgMHg0NSwKLS0gICAgICAgIDB4RTQsIDB4ODUsIDB4QjUsIDB4 NzYsIDB4NjIsIDB4NUUsIDB4N0UsIDB4QzYsCi0tICAgICAgICAweEY0LCAweDRDLCAweDQyLCAw eEU5LCAweEE2LCAweDM3LCAweEVELCAweDZCLAotLSAgICAgICAgMHgwQiwgMHhGRiwgMHg1Qywg MHhCNiwgMHhGNCwgMHgwNiwgMHhCNywgMHhFRCwKLS0gICAgICAgIDB4RUUsIDB4MzgsIDB4NkIs IDB4RkIsIDB4NUEsIDB4ODksIDB4OUYsIDB4QTUsCi0tICAgICAgICAweEFFLCAweDlGLCAweDI0 LCAweDExLCAweDdDLCAweDRCLCAweDFGLCAweEU2LAotLSAgICAgICAgMHg0OSwgMHgyOCwgMHg2 NiwgMHg1MSwgMHhFQywgMHhFNCwgMHg1QiwgMHgzRCwKLS0gICAgICAgIDB4QzIsIDB4MDAsIDB4 N0MsIDB4QjgsIDB4QTEsIDB4NjMsIDB4QkYsIDB4MDUsCi0tICAgICAgICAweDk4LCAweERBLCAw eDQ4LCAweDM2LCAweDFDLCAweDU1LCAweEQzLCAweDlBLAotLSAgICAgICAgMHg2OSwgMHgxNiwg MHgzRiwgMHhBOCwgMHhGRCwgMHgyNCwgMHhDRiwgMHg1RiwKLS0gICAgICAgIDB4ODMsIDB4NjUs IDB4NUQsIDB4MjMsIDB4REMsIDB4QTMsIDB4QUQsIDB4OTYsCi0tICAgICAgICAweDFDLCAweDYy LCAweEYzLCAweDU2LCAweDIwLCAweDg1LCAweDUyLCAweEJCLAotLSAgICAgICAgMHg5RSwgMHhE NSwgMHgyOSwgMHgwNywgMHg3MCwgMHg5NiwgMHg5NiwgMHg2RCwKLS0gICAgICAgIDB4NjcsIDB4 MEMsIDB4MzUsIDB4NEUsIDB4NEEsIDB4QkMsIDB4OTgsIDB4MDQsCi0tICAgICAgICAweEYxLCAw eDc0LCAweDZDLCAweDA4LCAweENBLCAweDE4LCAweDIxLCAweDdDLAotLSAgICAgICAgMHgzMiwg MHg5MCwgMHg1RSwgMHg0NiwgMHgyRSwgMHgzNiwgMHhDRSwgMHgzQiwKLS0gICAgICAgIDB4RTMs IDB4OUUsIDB4NzcsIDB4MkMsIDB4MTgsIDB4MEUsIDB4ODYsIDB4MDMsCi0tICAgICAgICAweDlC LCAweDI3LCAweDgzLCAweEEyLCAweEVDLCAweDA3LCAweEEyLCAweDhGLAotLSAgICAgICAgMHhC NSwgMHhDNSwgMHg1RCwgMHhGMCwgMHg2RiwgMHg0QywgMHg1MiwgMHhDOSwKLS0gICAgICAgIDB4 REUsIDB4MkIsIDB4Q0IsIDB4RjYsIDB4OTUsIDB4NTgsIDB4MTcsIDB4MTgsCi0tICAgICAgICAw eDM5LCAweDk1LCAweDQ5LCAweDdDLCAweEVBLCAweDk1LCAweDZBLCAweEU1LAotLSAgICAgICAg MHgxNSwgMHhEMiwgMHgyNiwgMHgxOCwgMHg5OCwgMHhGQSwgMHgwNSwgMHgxMCwKLS0gICAgICAg IDB4MTUsIDB4NzIsIDB4OEUsIDB4NUEsIDB4OEEsIDB4QUMsIDB4QUEsIDB4NjgsCi0tICAgICAg ICAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLAotLSAgICB9 OwotLSAgICByZXR1cm4gQk5fYmluMmJuKFJGQzM1MjZfUFJJTUVfMjA0OCwgc2l6ZW9mKFJGQzM1 MjZfUFJJTUVfMjA0OCksIGJuKTsKLSsgICAgcmV0dXJuIENPUFlfQk4oYm4sIF9iaWdudW1fbW9k cF8yMDQ4X3ApOwotIH0KLSAKLSAvKi0KLUBAIC0xNjYsNTcgKzExMCw3IEBAIEJJR05VTSAqQk5f Z2V0X3JmYzM1MjZfcHJpbWVfMjA0OChCSUdOVU0KLSAKLSBCSUdOVU0gKkJOX2dldF9yZmMzNTI2 X3ByaW1lXzMwNzIoQklHTlVNICpibikKLSB7Ci0tICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIFJGQzM1MjZfUFJJTUVfMzA3MltdID0gewotLSAgICAgICAgMHhGRiwgMHhGRiwgMHhGRiwg MHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwKLS0gICAgICAgIDB4QzksIDB4MEYsIDB4REEs IDB4QTIsIDB4MjEsIDB4NjgsIDB4QzIsIDB4MzQsCi0tICAgICAgICAweEM0LCAweEM2LCAweDYy LCAweDhCLCAweDgwLCAweERDLCAweDFDLCAweEQxLAotLSAgICAgICAgMHgyOSwgMHgwMiwgMHg0 RSwgMHgwOCwgMHg4QSwgMHg2NywgMHhDQywgMHg3NCwKLS0gICAgICAgIDB4MDIsIDB4MEIsIDB4 QkUsIDB4QTYsIDB4M0IsIDB4MTMsIDB4OUIsIDB4MjIsCi0tICAgICAgICAweDUxLCAweDRBLCAw eDA4LCAweDc5LCAweDhFLCAweDM0LCAweDA0LCAweERELAotLSAgICAgICAgMHhFRiwgMHg5NSwg MHgxOSwgMHhCMywgMHhDRCwgMHgzQSwgMHg0MywgMHgxQiwKLS0gICAgICAgIDB4MzAsIDB4MkIs IDB4MEEsIDB4NkQsIDB4RjIsIDB4NUYsIDB4MTQsIDB4MzcsCi0tICAgICAgICAweDRGLCAweEUx LCAweDM1LCAweDZELCAweDZELCAweDUxLCAweEMyLCAweDQ1LAotLSAgICAgICAgMHhFNCwgMHg4 NSwgMHhCNSwgMHg3NiwgMHg2MiwgMHg1RSwgMHg3RSwgMHhDNiwKLS0gICAgICAgIDB4RjQsIDB4 NEMsIDB4NDIsIDB4RTksIDB4QTYsIDB4MzcsIDB4RUQsIDB4NkIsCi0tICAgICAgICAweDBCLCAw eEZGLCAweDVDLCAweEI2LCAweEY0LCAweDA2LCAweEI3LCAweEVELAotLSAgICAgICAgMHhFRSwg MHgzOCwgMHg2QiwgMHhGQiwgMHg1QSwgMHg4OSwgMHg5RiwgMHhBNSwKLS0gICAgICAgIDB4QUUs IDB4OUYsIDB4MjQsIDB4MTEsIDB4N0MsIDB4NEIsIDB4MUYsIDB4RTYsCi0tICAgICAgICAweDQ5 LCAweDI4LCAweDY2LCAweDUxLCAweEVDLCAweEU0LCAweDVCLCAweDNELAotLSAgICAgICAgMHhD MiwgMHgwMCwgMHg3QywgMHhCOCwgMHhBMSwgMHg2MywgMHhCRiwgMHgwNSwKLS0gICAgICAgIDB4 OTgsIDB4REEsIDB4NDgsIDB4MzYsIDB4MUMsIDB4NTUsIDB4RDMsIDB4OUEsCi0tICAgICAgICAw eDY5LCAweDE2LCAweDNGLCAweEE4LCAweEZELCAweDI0LCAweENGLCAweDVGLAotLSAgICAgICAg MHg4MywgMHg2NSwgMHg1RCwgMHgyMywgMHhEQywgMHhBMywgMHhBRCwgMHg5NiwKLS0gICAgICAg IDB4MUMsIDB4NjIsIDB4RjMsIDB4NTYsIDB4MjAsIDB4ODUsIDB4NTIsIDB4QkIsCi0tICAgICAg ICAweDlFLCAweEQ1LCAweDI5LCAweDA3LCAweDcwLCAweDk2LCAweDk2LCAweDZELAotLSAgICAg ICAgMHg2NywgMHgwQywgMHgzNSwgMHg0RSwgMHg0QSwgMHhCQywgMHg5OCwgMHgwNCwKLS0gICAg ICAgIDB4RjEsIDB4NzQsIDB4NkMsIDB4MDgsIDB4Q0EsIDB4MTgsIDB4MjEsIDB4N0MsCi0tICAg ICAgICAweDMyLCAweDkwLCAweDVFLCAweDQ2LCAweDJFLCAweDM2LCAweENFLCAweDNCLAotLSAg ICAgICAgMHhFMywgMHg5RSwgMHg3NywgMHgyQywgMHgxOCwgMHgwRSwgMHg4NiwgMHgwMywKLS0g ICAgICAgIDB4OUIsIDB4MjcsIDB4ODMsIDB4QTIsIDB4RUMsIDB4MDcsIDB4QTIsIDB4OEYsCi0t ICAgICAgICAweEI1LCAweEM1LCAweDVELCAweEYwLCAweDZGLCAweDRDLCAweDUyLCAweEM5LAot LSAgICAgICAgMHhERSwgMHgyQiwgMHhDQiwgMHhGNiwgMHg5NSwgMHg1OCwgMHgxNywgMHgxOCwK LS0gICAgICAgIDB4MzksIDB4OTUsIDB4NDksIDB4N0MsIDB4RUEsIDB4OTUsIDB4NkEsIDB4RTUs Ci0tICAgICAgICAweDE1LCAweEQyLCAweDI2LCAweDE4LCAweDk4LCAweEZBLCAweDA1LCAweDEw LAotLSAgICAgICAgMHgxNSwgMHg3MiwgMHg4RSwgMHg1QSwgMHg4QSwgMHhBQSwgMHhDNCwgMHgy RCwKLS0gICAgICAgIDB4QUQsIDB4MzMsIDB4MTcsIDB4MEQsIDB4MDQsIDB4NTAsIDB4N0EsIDB4 MzMsCi0tICAgICAgICAweEE4LCAweDU1LCAweDIxLCAweEFCLCAweERGLCAweDFDLCAweEJBLCAw eDY0LAotLSAgICAgICAgMHhFQywgMHhGQiwgMHg4NSwgMHgwNCwgMHg1OCwgMHhEQiwgMHhFRiwg MHgwQSwKLS0gICAgICAgIDB4OEEsIDB4RUEsIDB4NzEsIDB4NTcsIDB4NUQsIDB4MDYsIDB4MEMs IDB4N0QsCi0tICAgICAgICAweEIzLCAweDk3LCAweDBGLCAweDg1LCAweEE2LCAweEUxLCAweEU0 LCAweEM3LAotLSAgICAgICAgMHhBQiwgMHhGNSwgMHhBRSwgMHg4QywgMHhEQiwgMHgwOSwgMHgz MywgMHhENywKLS0gICAgICAgIDB4MUUsIDB4OEMsIDB4OTQsIDB4RTAsIDB4NEEsIDB4MjUsIDB4 NjEsIDB4OUQsCi0tICAgICAgICAweENFLCAweEUzLCAweEQyLCAweDI2LCAweDFBLCAweEQyLCAw eEVFLCAweDZCLAotLSAgICAgICAgMHhGMSwgMHgyRiwgMHhGQSwgMHgwNiwgMHhEOSwgMHg4QSwg MHgwOCwgMHg2NCwKLS0gICAgICAgIDB4RDgsIDB4NzYsIDB4MDIsIDB4NzMsIDB4M0UsIDB4Qzgs IDB4NkEsIDB4NjQsCi0tICAgICAgICAweDUyLCAweDFGLCAweDJCLCAweDE4LCAweDE3LCAweDdC LCAweDIwLCAweDBDLAotLSAgICAgICAgMHhCQiwgMHhFMSwgMHgxNywgMHg1NywgMHg3QSwgMHg2 MSwgMHg1RCwgMHg2QywKLS0gICAgICAgIDB4NzcsIDB4MDksIDB4ODgsIDB4QzAsIDB4QkEsIDB4 RDksIDB4NDYsIDB4RTIsCi0tICAgICAgICAweDA4LCAweEUyLCAweDRGLCAweEEwLCAweDc0LCAw eEU1LCAweEFCLCAweDMxLAotLSAgICAgICAgMHg0MywgMHhEQiwgMHg1QiwgMHhGQywgMHhFMCwg MHhGRCwgMHgxMCwgMHg4RSwKLS0gICAgICAgIDB4NEIsIDB4ODIsIDB4RDEsIDB4MjAsIDB4QTks IDB4M0EsIDB4RDIsIDB4Q0EsCi0tICAgICAgICAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZG LCAweEZGLCAweEZGLCAweEZGLAotLSAgICB9OwotLSAgICByZXR1cm4gQk5fYmluMmJuKFJGQzM1 MjZfUFJJTUVfMzA3Miwgc2l6ZW9mKFJGQzM1MjZfUFJJTUVfMzA3MiksIGJuKTsKLSsgICAgcmV0 dXJuIENPUFlfQk4oYm4sIF9iaWdudW1fbW9kcF8zMDcyX3ApOwotIH0KLSAKLSAvKi0KLUBAIC0y MjksNzMgKzEyMyw3IEBAIEJJR05VTSAqQk5fZ2V0X3JmYzM1MjZfcHJpbWVfMzA3MihCSUdOVU0K LSAKLSBCSUdOVU0gKkJOX2dldF9yZmMzNTI2X3ByaW1lXzQwOTYoQklHTlVNICpibikKLSB7Ci0t ICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIFJGQzM1MjZfUFJJTUVfNDA5NltdID0gewot LSAgICAgICAgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwK LS0gICAgICAgIDB4QzksIDB4MEYsIDB4REEsIDB4QTIsIDB4MjEsIDB4NjgsIDB4QzIsIDB4MzQs Ci0tICAgICAgICAweEM0LCAweEM2LCAweDYyLCAweDhCLCAweDgwLCAweERDLCAweDFDLCAweEQx LAotLSAgICAgICAgMHgyOSwgMHgwMiwgMHg0RSwgMHgwOCwgMHg4QSwgMHg2NywgMHhDQywgMHg3 NCwKLS0gICAgICAgIDB4MDIsIDB4MEIsIDB4QkUsIDB4QTYsIDB4M0IsIDB4MTMsIDB4OUIsIDB4 MjIsCi0tICAgICAgICAweDUxLCAweDRBLCAweDA4LCAweDc5LCAweDhFLCAweDM0LCAweDA0LCAw eERELAotLSAgICAgICAgMHhFRiwgMHg5NSwgMHgxOSwgMHhCMywgMHhDRCwgMHgzQSwgMHg0Mywg MHgxQiwKLS0gICAgICAgIDB4MzAsIDB4MkIsIDB4MEEsIDB4NkQsIDB4RjIsIDB4NUYsIDB4MTQs IDB4MzcsCi0tICAgICAgICAweDRGLCAweEUxLCAweDM1LCAweDZELCAweDZELCAweDUxLCAweEMy LCAweDQ1LAotLSAgICAgICAgMHhFNCwgMHg4NSwgMHhCNSwgMHg3NiwgMHg2MiwgMHg1RSwgMHg3 RSwgMHhDNiwKLS0gICAgICAgIDB4RjQsIDB4NEMsIDB4NDIsIDB4RTksIDB4QTYsIDB4MzcsIDB4 RUQsIDB4NkIsCi0tICAgICAgICAweDBCLCAweEZGLCAweDVDLCAweEI2LCAweEY0LCAweDA2LCAw eEI3LCAweEVELAotLSAgICAgICAgMHhFRSwgMHgzOCwgMHg2QiwgMHhGQiwgMHg1QSwgMHg4OSwg MHg5RiwgMHhBNSwKLS0gICAgICAgIDB4QUUsIDB4OUYsIDB4MjQsIDB4MTEsIDB4N0MsIDB4NEIs IDB4MUYsIDB4RTYsCi0tICAgICAgICAweDQ5LCAweDI4LCAweDY2LCAweDUxLCAweEVDLCAweEU0 LCAweDVCLCAweDNELAotLSAgICAgICAgMHhDMiwgMHgwMCwgMHg3QywgMHhCOCwgMHhBMSwgMHg2 MywgMHhCRiwgMHgwNSwKLS0gICAgICAgIDB4OTgsIDB4REEsIDB4NDgsIDB4MzYsIDB4MUMsIDB4 NTUsIDB4RDMsIDB4OUEsCi0tICAgICAgICAweDY5LCAweDE2LCAweDNGLCAweEE4LCAweEZELCAw eDI0LCAweENGLCAweDVGLAotLSAgICAgICAgMHg4MywgMHg2NSwgMHg1RCwgMHgyMywgMHhEQywg MHhBMywgMHhBRCwgMHg5NiwKLS0gICAgICAgIDB4MUMsIDB4NjIsIDB4RjMsIDB4NTYsIDB4MjAs IDB4ODUsIDB4NTIsIDB4QkIsCi0tICAgICAgICAweDlFLCAweEQ1LCAweDI5LCAweDA3LCAweDcw LCAweDk2LCAweDk2LCAweDZELAotLSAgICAgICAgMHg2NywgMHgwQywgMHgzNSwgMHg0RSwgMHg0 QSwgMHhCQywgMHg5OCwgMHgwNCwKLS0gICAgICAgIDB4RjEsIDB4NzQsIDB4NkMsIDB4MDgsIDB4 Q0EsIDB4MTgsIDB4MjEsIDB4N0MsCi0tICAgICAgICAweDMyLCAweDkwLCAweDVFLCAweDQ2LCAw eDJFLCAweDM2LCAweENFLCAweDNCLAotLSAgICAgICAgMHhFMywgMHg5RSwgMHg3NywgMHgyQywg MHgxOCwgMHgwRSwgMHg4NiwgMHgwMywKLS0gICAgICAgIDB4OUIsIDB4MjcsIDB4ODMsIDB4QTIs IDB4RUMsIDB4MDcsIDB4QTIsIDB4OEYsCi0tICAgICAgICAweEI1LCAweEM1LCAweDVELCAweEYw LCAweDZGLCAweDRDLCAweDUyLCAweEM5LAotLSAgICAgICAgMHhERSwgMHgyQiwgMHhDQiwgMHhG NiwgMHg5NSwgMHg1OCwgMHgxNywgMHgxOCwKLS0gICAgICAgIDB4MzksIDB4OTUsIDB4NDksIDB4 N0MsIDB4RUEsIDB4OTUsIDB4NkEsIDB4RTUsCi0tICAgICAgICAweDE1LCAweEQyLCAweDI2LCAw eDE4LCAweDk4LCAweEZBLCAweDA1LCAweDEwLAotLSAgICAgICAgMHgxNSwgMHg3MiwgMHg4RSwg MHg1QSwgMHg4QSwgMHhBQSwgMHhDNCwgMHgyRCwKLS0gICAgICAgIDB4QUQsIDB4MzMsIDB4MTcs IDB4MEQsIDB4MDQsIDB4NTAsIDB4N0EsIDB4MzMsCi0tICAgICAgICAweEE4LCAweDU1LCAweDIx LCAweEFCLCAweERGLCAweDFDLCAweEJBLCAweDY0LAotLSAgICAgICAgMHhFQywgMHhGQiwgMHg4 NSwgMHgwNCwgMHg1OCwgMHhEQiwgMHhFRiwgMHgwQSwKLS0gICAgICAgIDB4OEEsIDB4RUEsIDB4 NzEsIDB4NTcsIDB4NUQsIDB4MDYsIDB4MEMsIDB4N0QsCi0tICAgICAgICAweEIzLCAweDk3LCAw eDBGLCAweDg1LCAweEE2LCAweEUxLCAweEU0LCAweEM3LAotLSAgICAgICAgMHhBQiwgMHhGNSwg MHhBRSwgMHg4QywgMHhEQiwgMHgwOSwgMHgzMywgMHhENywKLS0gICAgICAgIDB4MUUsIDB4OEMs IDB4OTQsIDB4RTAsIDB4NEEsIDB4MjUsIDB4NjEsIDB4OUQsCi0tICAgICAgICAweENFLCAweEUz LCAweEQyLCAweDI2LCAweDFBLCAweEQyLCAweEVFLCAweDZCLAotLSAgICAgICAgMHhGMSwgMHgy RiwgMHhGQSwgMHgwNiwgMHhEOSwgMHg4QSwgMHgwOCwgMHg2NCwKLS0gICAgICAgIDB4RDgsIDB4 NzYsIDB4MDIsIDB4NzMsIDB4M0UsIDB4QzgsIDB4NkEsIDB4NjQsCi0tICAgICAgICAweDUyLCAw eDFGLCAweDJCLCAweDE4LCAweDE3LCAweDdCLCAweDIwLCAweDBDLAotLSAgICAgICAgMHhCQiwg MHhFMSwgMHgxNywgMHg1NywgMHg3QSwgMHg2MSwgMHg1RCwgMHg2QywKLS0gICAgICAgIDB4Nzcs IDB4MDksIDB4ODgsIDB4QzAsIDB4QkEsIDB4RDksIDB4NDYsIDB4RTIsCi0tICAgICAgICAweDA4 LCAweEUyLCAweDRGLCAweEEwLCAweDc0LCAweEU1LCAweEFCLCAweDMxLAotLSAgICAgICAgMHg0 MywgMHhEQiwgMHg1QiwgMHhGQywgMHhFMCwgMHhGRCwgMHgxMCwgMHg4RSwKLS0gICAgICAgIDB4 NEIsIDB4ODIsIDB4RDEsIDB4MjAsIDB4QTksIDB4MjEsIDB4MDgsIDB4MDEsCi0tICAgICAgICAw eDFBLCAweDcyLCAweDNDLCAweDEyLCAweEE3LCAweDg3LCAweEU2LCAweEQ3LAotLSAgICAgICAg MHg4OCwgMHg3MSwgMHg5QSwgMHgxMCwgMHhCRCwgMHhCQSwgMHg1QiwgMHgyNiwKLS0gICAgICAg IDB4OTksIDB4QzMsIDB4MjcsIDB4MTgsIDB4NkEsIDB4RjQsIDB4RTIsIDB4M0MsCi0tICAgICAg ICAweDFBLCAweDk0LCAweDY4LCAweDM0LCAweEI2LCAweDE1LCAweDBCLCAweERBLAotLSAgICAg ICAgMHgyNSwgMHg4MywgMHhFOSwgMHhDQSwgMHgyQSwgMHhENCwgMHg0QywgMHhFOCwKLS0gICAg ICAgIDB4REIsIDB4QkIsIDB4QzIsIDB4REIsIDB4MDQsIDB4REUsIDB4OEUsIDB4RjksCi0tICAg ICAgICAweDJFLCAweDhFLCAweEZDLCAweDE0LCAweDFGLCAweEJFLCAweENBLCAweEE2LAotLSAg ICAgICAgMHgyOCwgMHg3QywgMHg1OSwgMHg0NywgMHg0RSwgMHg2QiwgMHhDMCwgMHg1RCwKLS0g ICAgICAgIDB4OTksIDB4QjIsIDB4OTYsIDB4NEYsIDB4QTAsIDB4OTAsIDB4QzMsIDB4QTIsCi0t ICAgICAgICAweDIzLCAweDNCLCAweEExLCAweDg2LCAweDUxLCAweDVCLCAweEU3LCAweEVELAot LSAgICAgICAgMHgxRiwgMHg2MSwgMHgyOSwgMHg3MCwgMHhDRSwgMHhFMiwgMHhENywgMHhBRiwK LS0gICAgICAgIDB4QjgsIDB4MUIsIDB4REQsIDB4NzYsIDB4MjEsIDB4NzAsIDB4NDgsIDB4MUMs Ci0tICAgICAgICAweEQwLCAweDA2LCAweDkxLCAweDI3LCAweEQ1LCAweEIwLCAweDVBLCAweEE5 LAotLSAgICAgICAgMHg5MywgMHhCNCwgMHhFQSwgMHg5OCwgMHg4RCwgMHg4RiwgMHhERCwgMHhD MSwKLS0gICAgICAgIDB4ODYsIDB4RkYsIDB4QjcsIDB4REMsIDB4OTAsIDB4QTYsIDB4QzAsIDB4 OEYsCi0tICAgICAgICAweDRELCAweEY0LCAweDM1LCAweEM5LCAweDM0LCAweDA2LCAweDMxLCAw eDk5LAotLSAgICAgICAgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwg MHhGRiwKLS0gICAgfTsKLS0gICAgcmV0dXJuIEJOX2JpbjJibihSRkMzNTI2X1BSSU1FXzQwOTYs IHNpemVvZihSRkMzNTI2X1BSSU1FXzQwOTYpLCBibik7Ci0rICAgIHJldHVybiBDT1BZX0JOKGJu LCBfYmlnbnVtX21vZHBfNDA5Nl9wKTsKLSB9Ci0gCi0gLyotCi1AQCAtMzA4LDEwNSArMTM2LDcg QEAgQklHTlVNICpCTl9nZXRfcmZjMzUyNl9wcmltZV80MDk2KEJJR05VTQotIAotIEJJR05VTSAq Qk5fZ2V0X3JmYzM1MjZfcHJpbWVfNjE0NChCSUdOVU0gKmJuKQotIHsKLS0gICAgc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIgUkZDMzUyNl9QUklNRV82MTQ0W10gPSB7Ci0tICAgICAgICAweEZG LCAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLCAweEZGLAotLSAgICAgICAgMHhD OSwgMHgwRiwgMHhEQSwgMHhBMiwgMHgyMSwgMHg2OCwgMHhDMiwgMHgzNCwKLS0gICAgICAgIDB4 QzQsIDB4QzYsIDB4NjIsIDB4OEIsIDB4ODAsIDB4REMsIDB4MUMsIDB4RDEsCi0tICAgICAgICAw eDI5LCAweDAyLCAweDRFLCAweDA4LCAweDhBLCAweDY3LCAweENDLCAweDc0LAotLSAgICAgICAg MHgwMiwgMHgwQiwgMHhCRSwgMHhBNiwgMHgzQiwgMHgxMywgMHg5QiwgMHgyMiwKLS0gICAgICAg IDB4NTEsIDB4NEEsIDB4MDgsIDB4NzksIDB4OEUsIDB4MzQsIDB4MDQsIDB4REQsCi0tICAgICAg ICAweEVGLCAweDk1LCAweDE5LCAweEIzLCAweENELCAweDNBLCAweDQzLCAweDFCLAotLSAgICAg ICAgMHgzMCwgMHgyQiwgMHgwQSwgMHg2RCwgMHhGMiwgMHg1RiwgMHgxNCwgMHgzNywKLS0gICAg ICAgIDB4NEYsIDB4RTEsIDB4MzUsIDB4NkQsIDB4NkQsIDB4NTEsIDB4QzIsIDB4NDUsCi0tICAg ICAgICAweEU0LCAweDg1LCAweEI1LCAweDc2LCAweDYyLCAweDVFLCAweDdFLCAweEM2LAotLSAg ICAgICAgMHhGNCwgMHg0QywgMHg0MiwgMHhFOSwgMHhBNiwgMHgzNywgMHhFRCwgMHg2QiwKLS0g ICAgICAgIDB4MEIsIDB4RkYsIDB4NUMsIDB4QjYsIDB4RjQsIDB4MDYsIDB4QjcsIDB4RUQsCi0t ICAgICAgICAweEVFLCAweDM4LCAweDZCLCAweEZCLCAweDVBLCAweDg5LCAweDlGLCAweEE1LAot LSAgICAgICAgMHhBRSwgMHg5RiwgMHgyNCwgMHgxMSwgMHg3QywgMHg0QiwgMHgxRiwgMHhFNiwK LS0gICAgICAgIDB4NDksIDB4MjgsIDB4NjYsIDB4NTEsIDB4RUMsIDB4RTQsIDB4NUIsIDB4M0Qs Ci0tICAgICAgICAweEMyLCAweDAwLCAweDdDLCAweEI4LCAweEExLCAweDYzLCAweEJGLCAweDA1 LAotLSAgICAgICAgMHg5OCwgMHhEQSwgMHg0OCwgMHgzNiwgMHgxQywgMHg1NSwgMHhEMywgMHg5 QSwKLS0gICAgICAgIDB4NjksIDB4MTYsIDB4M0YsIDB4QTgsIDB4RkQsIDB4MjQsIDB4Q0YsIDB4 NUYsCi0tICAgICAgICAweDgzLCAweDY1LCAweDVELCAweDIzLCAweERDLCAweEEzLCAweEFELCAw eDk2LAotLSAgICAgICAgMHgxQywgMHg2MiwgMHhGMywgMHg1NiwgMHgyMCwgMHg4NSwgMHg1Miwg MHhCQiwKLS0gICAgICAgIDB4OUUsIDB4RDUsIDB4MjksIDB4MDcsIDB4NzAsIDB4OTYsIDB4OTYs IDB4NkQsCi0tICAgICAgICAweDY3LCAweDBDLCAweDM1LCAweDRFLCAweDRBLCAweEJDLCAweDk4 LCAweDA0LAotLSAgICAgICAgMHhGMSwgMHg3NCwgMHg2QywgMHgwOCwgMHhDQSwgMHgxOCwgMHgy MSwgMHg3QywKLS0gICAgICAgIDB4MzIsIDB4OTAsIDB4NUUsIDB4NDYsIDB4MkUsIDB4MzYsIDB4 Q0UsIDB4M0IsCi0tICAgICAgICAweEUzLCAweDlFLCAweDc3LCAweDJDLCAweDE4LCAweDBFLCAw eDg2LCAweDAzLAotLSAgICAgICAgMHg5QiwgMHgyNywgMHg4MywgMHhBMiwgMHhFQywgMHgwNywg MHhBMiwgMHg4RiwKLS0gICAgICAgIDB4QjUsIDB4QzUsIDB4NUQsIDB4RjAsIDB4NkYsIDB4NEMs IDB4NTIsIDB4QzksCi0tICAgICAgICAweERFLCAweDJCLCAweENCLCAweEY2LCAweDk1LCAweDU4 LCAweDE3LCAweDE4LAotLSAgICAgICAgMHgzOSwgMHg5NSwgMHg0OSwgMHg3QywgMHhFQSwgMHg5 NSwgMHg2QSwgMHhFNSwKLS0gICAgICAgIDB4MTUsIDB4RDIsIDB4MjYsIDB4MTgsIDB4OTgsIDB4 RkEsIDB4MDUsIDB4MTAsCi0tICAgICAgICAweDE1LCAweDcyLCAweDhFLCAweDVBLCAweDhBLCAw eEFBLCAweEM0LCAweDJELAotLSAgICAgICAgMHhBRCwgMHgzMywgMHgxNywgMHgwRCwgMHgwNCwg MHg1MCwgMHg3QSwgMHgzMywKLS0gICAgICAgIDB4QTgsIDB4NTUsIDB4MjEsIDB4QUIsIDB4REYs IDB4MUMsIDB4QkEsIDB4NjQsCi0tICAgICAgICAweEVDLCAweEZCLCAweDg1LCAweDA0LCAweDU4 LCAweERCLCAweEVGLCAweDBBLAotLSAgICAgICAgMHg4QSwgMHhFQSwgMHg3MSwgMHg1NywgMHg1 RCwgMHgwNiwgMHgwQywgMHg3RCwKLS0gICAgICAgIDB4QjMsIDB4OTcsIDB4MEYsIDB4ODUsIDB4 QTYsIDB4RTEsIDB4RTQsIDB4QzcsCi0tICAgICAgICAweEFCLCAweEY1LCAweEFFLCAweDhDLCAw eERCLCAweDA5LCAweDMzLCAweEQ3LAotLSAgICAgICAgMHgxRSwgMHg4QywgMHg5NCwgMHhFMCwg MHg0QSwgMHgyNSwgMHg2MSwgMHg5RCwKLS0gICAgICAgIDB4Q0UsIDB4RTMsIDB4RDIsIDB4MjYs IDB4MUEsIDB4RDIsIDB4RUUsIDB4NkIsCi0tICAgICAgICAweEYxLCAweDJGLCAweEZBLCAweDA2 LCAweEQ5LCAweDhBLCAweDA4LCAweDY0LAotLSAgICAgICAgMHhEOCwgMHg3NiwgMHgwMiwgMHg3 MywgMHgzRSwgMHhDOCwgMHg2QSwgMHg2NCwKLS0gICAgICAgIDB4NTIsIDB4MUYsIDB4MkIsIDB4 MTgsIDB4MTcsIDB4N0IsIDB4MjAsIDB4MEMsCi0tICAgICAgICAweEJCLCAweEUxLCAweDE3LCAw eDU3LCAweDdBLCAweDYxLCAweDVELCAweDZDLAotLSAgICAgICAgMHg3NywgMHgwOSwgMHg4OCwg MHhDMCwgMHhCQSwgMHhEOSwgMHg0NiwgMHhFMiwKLS0gICAgICAgIDB4MDgsIDB4RTIsIDB4NEYs IDB4QTAsIDB4NzQsIDB4RTUsIDB4QUIsIDB4MzEsCi0tICAgICAgICAweDQzLCAweERCLCAweDVC LCAweEZDLCAweEUwLCAweEZELCAweDEwLCAweDhFLAotLSAgICAgICAgMHg0QiwgMHg4MiwgMHhE MSwgMHgyMCwgMHhBOSwgMHgyMSwgMHgwOCwgMHgwMSwKLS0gICAgICAgIDB4MUEsIDB4NzIsIDB4 M0MsIDB4MTIsIDB4QTcsIDB4ODcsIDB4RTYsIDB4RDcsCi0tICAgICAgICAweDg4LCAweDcxLCAw eDlBLCAweDEwLCAweEJELCAweEJBLCAweDVCLCAweDI2LAotLSAgICAgICAgMHg5OSwgMHhDMywg MHgyNywgMHgxOCwgMHg2QSwgMHhGNCwgMHhFMiwgMHgzQywKLS0gICAgICAgIDB4MUEsIDB4OTQs IDB4NjgsIDB4MzQsIDB4QjYsIDB4MTUsIDB4MEIsIDB4REEsCi0tICAgICAgICAweDI1LCAweDgz LCAweEU5LCAweENBLCAweDJBLCAweEQ0LCAweDRDLCAweEU4LAotLSAgICAgICAgMHhEQiwgMHhC QiwgMHhDMiwgMHhEQiwgMHgwNCwgMHhERSwgMHg4RSwgMHhGOSwKLS0gICAgICAgIDB4MkUsIDB4 OEUsIDB4RkMsIDB4MTQsIDB4MUYsIDB4QkUsIDB4Q0EsIDB4QTYsCi0tICAgICAgICAweDI4LCAw eDdDLCAweDU5LCAweDQ3LCAweDRFLCAweDZCLCAweEMwLCAweDVELAotLSAgICAgICAgMHg5OSwg MHhCMiwgMHg5NiwgMHg0RiwgMHhBMCwgMHg5MCwgMHhDMywgMHhBMiwKLS0gICAgICAgIDB4MjMs IDB4M0IsIDB4QTEsIDB4ODYsIDB4NTEsIDB4NUIsIDB4RTcsIDB4RUQsCi0tICAgICAgICAweDFG LCAweDYxLCAweDI5LCAweDcwLCAweENFLCAweEUyLCAweEQ3LCAweEFGLAotLSAgICAgICAgMHhC OCwgMHgxQiwgMHhERCwgMHg3NiwgMHgyMSwgMHg3MCwgMHg0OCwgMHgxQywKLS0gICAgICAgIDB4 RDAsIDB4MDYsIDB4OTEsIDB4MjcsIDB4RDUsIDB4QjAsIDB4NUEsIDB4QTksCi0tICAgICAgICAw eDkzLCAweEI0LCAweEVBLCAweDk4LCAweDhELCAweDhGLCAweERELCAweEMxLAotLSAgICAgICAg MHg4NiwgMHhGRiwgMHhCNywgMHhEQywgMHg5MCwgMHhBNiwgMHhDMCwgMHg4RiwKLS0gICAgICAg IDB4NEQsIDB4RjQsIDB4MzUsIDB4QzksIDB4MzQsIDB4MDIsIDB4ODQsIDB4OTIsCi0tICAgICAg ICAweDM2LCAweEMzLCAweEZBLCAweEI0LCAweEQyLCAweDdDLCAweDcwLCAweDI2LAotLSAgICAg ICAgMHhDMSwgMHhENCwgMHhEQywgMHhCMiwgMHg2MCwgMHgyNiwgMHg0NiwgMHhERSwKLS0gICAg ICAgIDB4QzksIDB4NzUsIDB4MUUsIDB4NzYsIDB4M0QsIDB4QkEsIDB4MzcsIDB4QkQsCi0tICAg ICAgICAweEY4LCAweEZGLCAweDk0LCAweDA2LCAweEFELCAweDlFLCAweDUzLCAweDBFLAotLSAg ICAgICAgMHhFNSwgMHhEQiwgMHgzOCwgMHgyRiwgMHg0MSwgMHgzMCwgMHgwMSwgMHhBRSwKLS0g ICAgICAgIDB4QjAsIDB4NkEsIDB4NTMsIDB4RUQsIDB4OTAsIDB4MjcsIDB4RDgsIDB4MzEsCi0t ICAgICAgICAweDE3LCAweDk3LCAweDI3LCAweEIwLCAweDg2LCAweDVBLCAweDg5LCAweDE4LAot LSAgICAgICAgMHhEQSwgMHgzRSwgMHhEQiwgMHhFQiwgMHhDRiwgMHg5QiwgMHgxNCwgMHhFRCwK LS0gICAgICAgIDB4NDQsIDB4Q0UsIDB4NkMsIDB4QkEsIDB4Q0UsIDB4RDQsIDB4QkIsIDB4MUIs Ci0tICAgICAgICAweERCLCAweDdGLCAweDE0LCAweDQ3LCAweEU2LCAweENDLCAweDI1LCAweDRC LAotLSAgICAgICAgMHgzMywgMHgyMCwgMHg1MSwgMHg1MSwgMHgyQiwgMHhENywgMHhBRiwgMHg0 MiwKLS0gICAgICAgIDB4NkYsIDB4QjgsIDB4RjQsIDB4MDEsIDB4MzcsIDB4OEMsIDB4RDIsIDB4 QkYsCi0tICAgICAgICAweDU5LCAweDgzLCAweENBLCAweDAxLCAweEM2LCAweDRCLCAweDkyLCAw eEVDLAotLSAgICAgICAgMHhGMCwgMHgzMiwgMHhFQSwgMHgxNSwgMHhEMSwgMHg3MiwgMHgxRCwg MHgwMywKLS0gICAgICAgIDB4RjQsIDB4ODIsIDB4RDcsIDB4Q0UsIDB4NkUsIDB4NzQsIDB4RkUs IDB4RjYsCi0tICAgICAgICAweEQ1LCAweDVFLCAweDcwLCAweDJGLCAweDQ2LCAweDk4LCAweDBD LCAweDgyLAotLSAgICAgICAgMHhCNSwgMHhBOCwgMHg0MCwgMHgzMSwgMHg5MCwgMHgwQiwgMHgx QywgMHg5RSwKLS0gICAgICAgIDB4NTksIDB4RTcsIDB4QzksIDB4N0YsIDB4QkUsIDB4QzcsIDB4 RTgsIDB4RjMsCi0tICAgICAgICAweDIzLCAweEE5LCAweDdBLCAweDdFLCAweDM2LCAweENDLCAw eDg4LCAweEJFLAotLSAgICAgICAgMHgwRiwgMHgxRCwgMHg0NSwgMHhCNywgMHhGRiwgMHg1OCwg MHg1QSwgMHhDNSwKLS0gICAgICAgIDB4NEIsIDB4RDQsIDB4MDcsIDB4QjIsIDB4MkIsIDB4NDEs IDB4NTQsIDB4QUEsCi0tICAgICAgICAweENDLCAweDhGLCAweDZELCAweDdFLCAweEJGLCAweDQ4 LCAweEUxLCAweEQ4LAotLSAgICAgICAgMHgxNCwgMHhDQywgMHg1RSwgMHhEMiwgMHgwRiwgMHg4 MCwgMHgzNywgMHhFMCwKLS0gICAgICAgIDB4QTcsIDB4OTcsIDB4MTUsIDB4RUUsIDB4RjIsIDB4 OUIsIDB4RTMsIDB4MjgsCi0tICAgICAgICAweDA2LCAweEExLCAweEQ1LCAweDhCLCAweEI3LCAw eEM1LCAweERBLCAweDc2LAotLSAgICAgICAgMHhGNSwgMHg1MCwgMHhBQSwgMHgzRCwgMHg4QSwg MHgxRiwgMHhCRiwgMHhGMCwKLS0gICAgICAgIDB4RUIsIDB4MTksIDB4Q0MsIDB4QjEsIDB4QTMs IDB4MTMsIDB4RDUsIDB4NUMsCi0tICAgICAgICAweERBLCAweDU2LCAweEM5LCAweEVDLCAweDJF LCAweEYyLCAweDk2LCAweDMyLAotLSAgICAgICAgMHgzOCwgMHg3RiwgMHhFOCwgMHhENywgMHg2 RSwgMHgzQywgMHgwNCwgMHg2OCwKLS0gICAgICAgIDB4MDQsIDB4M0UsIDB4OEYsIDB4NjYsIDB4 M0YsIDB4NDgsIDB4NjAsIDB4RUUsCi0tICAgICAgICAweDEyLCAweEJGLCAweDJELCAweDVCLCAw eDBCLCAweDc0LCAweDc0LCAweEQ2LAotLSAgICAgICAgMHhFNiwgMHg5NCwgMHhGOSwgMHgxRSwg MHg2RCwgMHhDQywgMHg0MCwgMHgyNCwKLS0gICAgICAgIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYs IDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsCi0tICAgIH07Ci0tICAgIHJldHVybiBCTl9iaW4yYm4o UkZDMzUyNl9QUklNRV82MTQ0LCBzaXplb2YoUkZDMzUyNl9QUklNRV82MTQ0KSwgYm4pOwotKyAg ICByZXR1cm4gQ09QWV9CTihibiwgX2JpZ251bV9tb2RwXzYxNDRfcCk7Ci0gfQotIAotIC8qLQot QEAgLTQxOSwxMzUgKzE0OSw1IEBAIEJJR05VTSAqQk5fZ2V0X3JmYzM1MjZfcHJpbWVfNjE0NChC SUdOVU0KLSAKLSBCSUdOVU0gKkJOX2dldF9yZmMzNTI2X3ByaW1lXzgxOTIoQklHTlVNICpibikK LSB7Ci0tICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIFJGQzM1MjZfUFJJTUVfODE5Mltd ID0gewotLSAgICAgICAgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiwg MHhGRiwKLS0gICAgICAgIDB4QzksIDB4MEYsIDB4REEsIDB4QTIsIDB4MjEsIDB4NjgsIDB4QzIs IDB4MzQsCi0tICAgICAgICAweEM0LCAweEM2LCAweDYyLCAweDhCLCAweDgwLCAweERDLCAweDFD LCAweEQxLAotLSAgICAgICAgMHgyOSwgMHgwMiwgMHg0RSwgMHgwOCwgMHg4QSwgMHg2NywgMHhD QywgMHg3NCwKLS0gICAgICAgIDB4MDIsIDB4MEIsIDB4QkUsIDB4QTYsIDB4M0IsIDB4MTMsIDB4 OUIsIDB4MjIsCi0tICAgICAgICAweDUxLCAweDRBLCAweDA4LCAweDc5LCAweDhFLCAweDM0LCAw eDA0LCAweERELAotLSAgICAgICAgMHhFRiwgMHg5NSwgMHgxOSwgMHhCMywgMHhDRCwgMHgzQSwg MHg0MywgMHgxQiwKLS0gICAgICAgIDB4MzAsIDB4MkIsIDB4MEEsIDB4NkQsIDB4RjIsIDB4NUYs IDB4MTQsIDB4MzcsCi0tICAgICAgICAweDRGLCAweEUxLCAweDM1LCAweDZELCAweDZELCAweDUx LCAweEMyLCAweDQ1LAotLSAgICAgICAgMHhFNCwgMHg4NSwgMHhCNSwgMHg3NiwgMHg2MiwgMHg1 RSwgMHg3RSwgMHhDNiwKLS0gICAgICAgIDB4RjQsIDB4NEMsIDB4NDIsIDB4RTksIDB4QTYsIDB4 MzcsIDB4RUQsIDB4NkIsCi0tICAgICAgICAweDBCLCAweEZGLCAweDVDLCAweEI2LCAweEY0LCAw eDA2LCAweEI3LCAweEVELAotLSAgICAgICAgMHhFRSwgMHgzOCwgMHg2QiwgMHhGQiwgMHg1QSwg MHg4OSwgMHg5RiwgMHhBNSwKLS0gICAgICAgIDB4QUUsIDB4OUYsIDB4MjQsIDB4MTEsIDB4N0Ms IDB4NEIsIDB4MUYsIDB4RTYsCi0tICAgICAgICAweDQ5LCAweDI4LCAweDY2LCAweDUxLCAweEVD LCAweEU0LCAweDVCLCAweDNELAotLSAgICAgICAgMHhDMiwgMHgwMCwgMHg3QywgMHhCOCwgMHhB MSwgMHg2MywgMHhCRiwgMHgwNSwKLS0gICAgICAgIDB4OTgsIDB4REEsIDB4NDgsIDB4MzYsIDB4 MUMsIDB4NTUsIDB4RDMsIDB4OUEsCi0tICAgICAgICAweDY5LCAweDE2LCAweDNGLCAweEE4LCAw eEZELCAweDI0LCAweENGLCAweDVGLAotLSAgICAgICAgMHg4MywgMHg2NSwgMHg1RCwgMHgyMywg MHhEQywgMHhBMywgMHhBRCwgMHg5NiwKLS0gICAgICAgIDB4MUMsIDB4NjIsIDB4RjMsIDB4NTYs IDB4MjAsIDB4ODUsIDB4NTIsIDB4QkIsCi0tICAgICAgICAweDlFLCAweEQ1LCAweDI5LCAweDA3 LCAweDcwLCAweDk2LCAweDk2LCAweDZELAotLSAgICAgICAgMHg2NywgMHgwQywgMHgzNSwgMHg0 RSwgMHg0QSwgMHhCQywgMHg5OCwgMHgwNCwKLS0gICAgICAgIDB4RjEsIDB4NzQsIDB4NkMsIDB4 MDgsIDB4Q0EsIDB4MTgsIDB4MjEsIDB4N0MsCi0tICAgICAgICAweDMyLCAweDkwLCAweDVFLCAw eDQ2LCAweDJFLCAweDM2LCAweENFLCAweDNCLAotLSAgICAgICAgMHhFMywgMHg5RSwgMHg3Nywg MHgyQywgMHgxOCwgMHgwRSwgMHg4NiwgMHgwMywKLS0gICAgICAgIDB4OUIsIDB4MjcsIDB4ODMs IDB4QTIsIDB4RUMsIDB4MDcsIDB4QTIsIDB4OEYsCi0tICAgICAgICAweEI1LCAweEM1LCAweDVE LCAweEYwLCAweDZGLCAweDRDLCAweDUyLCAweEM5LAotLSAgICAgICAgMHhERSwgMHgyQiwgMHhD QiwgMHhGNiwgMHg5NSwgMHg1OCwgMHgxNywgMHgxOCwKLS0gICAgICAgIDB4MzksIDB4OTUsIDB4 NDksIDB4N0MsIDB4RUEsIDB4OTUsIDB4NkEsIDB4RTUsCi0tICAgICAgICAweDE1LCAweEQyLCAw eDI2LCAweDE4LCAweDk4LCAweEZBLCAweDA1LCAweDEwLAotLSAgICAgICAgMHgxNSwgMHg3Miwg MHg4RSwgMHg1QSwgMHg4QSwgMHhBQSwgMHhDNCwgMHgyRCwKLS0gICAgICAgIDB4QUQsIDB4MzMs IDB4MTcsIDB4MEQsIDB4MDQsIDB4NTAsIDB4N0EsIDB4MzMsCi0tICAgICAgICAweEE4LCAweDU1 LCAweDIxLCAweEFCLCAweERGLCAweDFDLCAweEJBLCAweDY0LAotLSAgICAgICAgMHhFQywgMHhG QiwgMHg4NSwgMHgwNCwgMHg1OCwgMHhEQiwgMHhFRiwgMHgwQSwKLS0gICAgICAgIDB4OEEsIDB4 RUEsIDB4NzEsIDB4NTcsIDB4NUQsIDB4MDYsIDB4MEMsIDB4N0QsCi0tICAgICAgICAweEIzLCAw eDk3LCAweDBGLCAweDg1LCAweEE2LCAweEUxLCAweEU0LCAweEM3LAotLSAgICAgICAgMHhBQiwg MHhGNSwgMHhBRSwgMHg4QywgMHhEQiwgMHgwOSwgMHgzMywgMHhENywKLS0gICAgICAgIDB4MUUs IDB4OEMsIDB4OTQsIDB4RTAsIDB4NEEsIDB4MjUsIDB4NjEsIDB4OUQsCi0tICAgICAgICAweENF LCAweEUzLCAweEQyLCAweDI2LCAweDFBLCAweEQyLCAweEVFLCAweDZCLAotLSAgICAgICAgMHhG MSwgMHgyRiwgMHhGQSwgMHgwNiwgMHhEOSwgMHg4QSwgMHgwOCwgMHg2NCwKLS0gICAgICAgIDB4 RDgsIDB4NzYsIDB4MDIsIDB4NzMsIDB4M0UsIDB4QzgsIDB4NkEsIDB4NjQsCi0tICAgICAgICAw eDUyLCAweDFGLCAweDJCLCAweDE4LCAweDE3LCAweDdCLCAweDIwLCAweDBDLAotLSAgICAgICAg MHhCQiwgMHhFMSwgMHgxNywgMHg1NywgMHg3QSwgMHg2MSwgMHg1RCwgMHg2QywKLS0gICAgICAg IDB4NzcsIDB4MDksIDB4ODgsIDB4QzAsIDB4QkEsIDB4RDksIDB4NDYsIDB4RTIsCi0tICAgICAg ICAweDA4LCAweEUyLCAweDRGLCAweEEwLCAweDc0LCAweEU1LCAweEFCLCAweDMxLAotLSAgICAg ICAgMHg0MywgMHhEQiwgMHg1QiwgMHhGQywgMHhFMCwgMHhGRCwgMHgxMCwgMHg4RSwKLS0gICAg ICAgIDB4NEIsIDB4ODIsIDB4RDEsIDB4MjAsIDB4QTksIDB4MjEsIDB4MDgsIDB4MDEsCi0tICAg ICAgICAweDFBLCAweDcyLCAweDNDLCAweDEyLCAweEE3LCAweDg3LCAweEU2LCAweEQ3LAotLSAg ICAgICAgMHg4OCwgMHg3MSwgMHg5QSwgMHgxMCwgMHhCRCwgMHhCQSwgMHg1QiwgMHgyNiwKLS0g ICAgICAgIDB4OTksIDB4QzMsIDB4MjcsIDB4MTgsIDB4NkEsIDB4RjQsIDB4RTIsIDB4M0MsCi0t ICAgICAgICAweDFBLCAweDk0LCAweDY4LCAweDM0LCAweEI2LCAweDE1LCAweDBCLCAweERBLAot LSAgICAgICAgMHgyNSwgMHg4MywgMHhFOSwgMHhDQSwgMHgyQSwgMHhENCwgMHg0QywgMHhFOCwK LS0gICAgICAgIDB4REIsIDB4QkIsIDB4QzIsIDB4REIsIDB4MDQsIDB4REUsIDB4OEUsIDB4Rjks Ci0tICAgICAgICAweDJFLCAweDhFLCAweEZDLCAweDE0LCAweDFGLCAweEJFLCAweENBLCAweEE2 LAotLSAgICAgICAgMHgyOCwgMHg3QywgMHg1OSwgMHg0NywgMHg0RSwgMHg2QiwgMHhDMCwgMHg1 RCwKLS0gICAgICAgIDB4OTksIDB4QjIsIDB4OTYsIDB4NEYsIDB4QTAsIDB4OTAsIDB4QzMsIDB4 QTIsCi0tICAgICAgICAweDIzLCAweDNCLCAweEExLCAweDg2LCAweDUxLCAweDVCLCAweEU3LCAw eEVELAotLSAgICAgICAgMHgxRiwgMHg2MSwgMHgyOSwgMHg3MCwgMHhDRSwgMHhFMiwgMHhENywg MHhBRiwKLS0gICAgICAgIDB4QjgsIDB4MUIsIDB4REQsIDB4NzYsIDB4MjEsIDB4NzAsIDB4NDgs IDB4MUMsCi0tICAgICAgICAweEQwLCAweDA2LCAweDkxLCAweDI3LCAweEQ1LCAweEIwLCAweDVB LCAweEE5LAotLSAgICAgICAgMHg5MywgMHhCNCwgMHhFQSwgMHg5OCwgMHg4RCwgMHg4RiwgMHhE RCwgMHhDMSwKLS0gICAgICAgIDB4ODYsIDB4RkYsIDB4QjcsIDB4REMsIDB4OTAsIDB4QTYsIDB4 QzAsIDB4OEYsCi0tICAgICAgICAweDRELCAweEY0LCAweDM1LCAweEM5LCAweDM0LCAweDAyLCAw eDg0LCAweDkyLAotLSAgICAgICAgMHgzNiwgMHhDMywgMHhGQSwgMHhCNCwgMHhEMiwgMHg3Qywg MHg3MCwgMHgyNiwKLS0gICAgICAgIDB4QzEsIDB4RDQsIDB4REMsIDB4QjIsIDB4NjAsIDB4MjYs IDB4NDYsIDB4REUsCi0tICAgICAgICAweEM5LCAweDc1LCAweDFFLCAweDc2LCAweDNELCAweEJB LCAweDM3LCAweEJELAotLSAgICAgICAgMHhGOCwgMHhGRiwgMHg5NCwgMHgwNiwgMHhBRCwgMHg5 RSwgMHg1MywgMHgwRSwKLS0gICAgICAgIDB4RTUsIDB4REIsIDB4MzgsIDB4MkYsIDB4NDEsIDB4 MzAsIDB4MDEsIDB4QUUsCi0tICAgICAgICAweEIwLCAweDZBLCAweDUzLCAweEVELCAweDkwLCAw eDI3LCAweEQ4LCAweDMxLAotLSAgICAgICAgMHgxNywgMHg5NywgMHgyNywgMHhCMCwgMHg4Niwg MHg1QSwgMHg4OSwgMHgxOCwKLS0gICAgICAgIDB4REEsIDB4M0UsIDB4REIsIDB4RUIsIDB4Q0Ys IDB4OUIsIDB4MTQsIDB4RUQsCi0tICAgICAgICAweDQ0LCAweENFLCAweDZDLCAweEJBLCAweENF LCAweEQ0LCAweEJCLCAweDFCLAotLSAgICAgICAgMHhEQiwgMHg3RiwgMHgxNCwgMHg0NywgMHhF NiwgMHhDQywgMHgyNSwgMHg0QiwKLS0gICAgICAgIDB4MzMsIDB4MjAsIDB4NTEsIDB4NTEsIDB4 MkIsIDB4RDcsIDB4QUYsIDB4NDIsCi0tICAgICAgICAweDZGLCAweEI4LCAweEY0LCAweDAxLCAw eDM3LCAweDhDLCAweEQyLCAweEJGLAotLSAgICAgICAgMHg1OSwgMHg4MywgMHhDQSwgMHgwMSwg MHhDNiwgMHg0QiwgMHg5MiwgMHhFQywKLS0gICAgICAgIDB4RjAsIDB4MzIsIDB4RUEsIDB4MTUs IDB4RDEsIDB4NzIsIDB4MUQsIDB4MDMsCi0tICAgICAgICAweEY0LCAweDgyLCAweEQ3LCAweENF LCAweDZFLCAweDc0LCAweEZFLCAweEY2LAotLSAgICAgICAgMHhENSwgMHg1RSwgMHg3MCwgMHgy RiwgMHg0NiwgMHg5OCwgMHgwQywgMHg4MiwKLS0gICAgICAgIDB4QjUsIDB4QTgsIDB4NDAsIDB4 MzEsIDB4OTAsIDB4MEIsIDB4MUMsIDB4OUUsCi0tICAgICAgICAweDU5LCAweEU3LCAweEM5LCAw eDdGLCAweEJFLCAweEM3LCAweEU4LCAweEYzLAotLSAgICAgICAgMHgyMywgMHhBOSwgMHg3QSwg MHg3RSwgMHgzNiwgMHhDQywgMHg4OCwgMHhCRSwKLS0gICAgICAgIDB4MEYsIDB4MUQsIDB4NDUs IDB4QjcsIDB4RkYsIDB4NTgsIDB4NUEsIDB4QzUsCi0tICAgICAgICAweDRCLCAweEQ0LCAweDA3 LCAweEIyLCAweDJCLCAweDQxLCAweDU0LCAweEFBLAotLSAgICAgICAgMHhDQywgMHg4RiwgMHg2 RCwgMHg3RSwgMHhCRiwgMHg0OCwgMHhFMSwgMHhEOCwKLS0gICAgICAgIDB4MTQsIDB4Q0MsIDB4 NUUsIDB4RDIsIDB4MEYsIDB4ODAsIDB4MzcsIDB4RTAsCi0tICAgICAgICAweEE3LCAweDk3LCAw eDE1LCAweEVFLCAweEYyLCAweDlCLCAweEUzLCAweDI4LAotLSAgICAgICAgMHgwNiwgMHhBMSwg MHhENSwgMHg4QiwgMHhCNywgMHhDNSwgMHhEQSwgMHg3NiwKLS0gICAgICAgIDB4RjUsIDB4NTAs IDB4QUEsIDB4M0QsIDB4OEEsIDB4MUYsIDB4QkYsIDB4RjAsCi0tICAgICAgICAweEVCLCAweDE5 LCAweENDLCAweEIxLCAweEEzLCAweDEzLCAweEQ1LCAweDVDLAotLSAgICAgICAgMHhEQSwgMHg1 NiwgMHhDOSwgMHhFQywgMHgyRSwgMHhGMiwgMHg5NiwgMHgzMiwKLS0gICAgICAgIDB4MzgsIDB4 N0YsIDB4RTgsIDB4RDcsIDB4NkUsIDB4M0MsIDB4MDQsIDB4NjgsCi0tICAgICAgICAweDA0LCAw eDNFLCAweDhGLCAweDY2LCAweDNGLCAweDQ4LCAweDYwLCAweEVFLAotLSAgICAgICAgMHgxMiwg MHhCRiwgMHgyRCwgMHg1QiwgMHgwQiwgMHg3NCwgMHg3NCwgMHhENiwKLS0gICAgICAgIDB4RTYs IDB4OTQsIDB4RjksIDB4MUUsIDB4NkQsIDB4QkUsIDB4MTEsIDB4NTksCi0tICAgICAgICAweDc0 LCAweEEzLCAweDkyLCAweDZGLCAweDEyLCAweEZFLCAweEU1LCAweEU0LAotLSAgICAgICAgMHgz OCwgMHg3NywgMHg3QywgMHhCNiwgMHhBOSwgMHgzMiwgMHhERiwgMHg4QywKLS0gICAgICAgIDB4 RDgsIDB4QkUsIDB4QzQsIDB4RDAsIDB4NzMsIDB4QjksIDB4MzEsIDB4QkEsCi0tICAgICAgICAw eDNCLCAweEM4LCAweDMyLCAweEI2LCAweDhELCAweDlELCAweEQzLCAweDAwLAotLSAgICAgICAg MHg3NCwgMHgxRiwgMHhBNywgMHhCRiwgMHg4QSwgMHhGQywgMHg0NywgMHhFRCwKLS0gICAgICAg IDB4MjUsIDB4NzYsIDB4RjYsIDB4OTMsIDB4NkIsIDB4QTQsIDB4MjQsIDB4NjYsCi0tICAgICAg ICAweDNBLCAweEFCLCAweDYzLCAweDlDLCAweDVBLCAweEU0LCAweEY1LCAweDY4LAotLSAgICAg ICAgMHgzNCwgMHgyMywgMHhCNCwgMHg3NCwgMHgyQiwgMHhGMSwgMHhDOSwgMHg3OCwKLS0gICAg ICAgIDB4MjMsIDB4OEYsIDB4MTYsIDB4Q0IsIDB4RTMsIDB4OUQsIDB4NjUsIDB4MkQsCi0tICAg ICAgICAweEUzLCAweEZELCAweEI4LCAweEJFLCAweEZDLCAweDg0LCAweDhBLCAweEQ5LAotLSAg ICAgICAgMHgyMiwgMHgyMiwgMHgyRSwgMHgwNCwgMHhBNCwgMHgwMywgMHg3QywgMHgwNywKLS0g ICAgICAgIDB4MTMsIDB4RUIsIDB4NTcsIDB4QTgsIDB4MUEsIDB4MjMsIDB4RjAsIDB4QzcsCi0t ICAgICAgICAweDM0LCAweDczLCAweEZDLCAweDY0LCAweDZDLCAweEVBLCAweDMwLCAweDZCLAot LSAgICAgICAgMHg0QiwgMHhDQiwgMHhDOCwgMHg4NiwgMHgyRiwgMHg4MywgMHg4NSwgMHhERCwK LS0gICAgICAgIDB4RkEsIDB4OUQsIDB4NEIsIDB4N0YsIDB4QTIsIDB4QzAsIDB4ODcsIDB4RTgs Ci0tICAgICAgICAweDc5LCAweDY4LCAweDMzLCAweDAzLCAweEVELCAweDVCLCAweERELCAweDNB LAotLSAgICAgICAgMHgwNiwgMHgyQiwgMHgzQywgMHhGNSwgMHhCMywgMHhBMiwgMHg3OCwgMHhB NiwKLS0gICAgICAgIDB4NkQsIDB4MkEsIDB4MTMsIDB4RjgsIDB4M0YsIDB4NDQsIDB4RjgsIDB4 MkQsCi0tICAgICAgICAweERGLCAweDMxLCAweDBFLCAweEUwLCAweDc0LCAweEFCLCAweDZBLCAw eDM2LAotLSAgICAgICAgMHg0NSwgMHg5NywgMHhFOCwgMHg5OSwgMHhBMCwgMHgyNSwgMHg1RCwg MHhDMSwKLS0gICAgICAgIDB4NjQsIDB4RjMsIDB4MUMsIDB4QzUsIDB4MDgsIDB4NDYsIDB4ODUs IDB4MUQsCi0tICAgICAgICAweEY5LCAweEFCLCAweDQ4LCAweDE5LCAweDVELCAweEVELCAweDdF LCAweEExLAotLSAgICAgICAgMHhCMSwgMHhENSwgMHgxMCwgMHhCRCwgMHg3RSwgMHhFNywgMHg0 RCwgMHg3MywKLS0gICAgICAgIDB4RkEsIDB4RjMsIDB4NkIsIDB4QzMsIDB4MUUsIDB4Q0YsIDB4 QTIsIDB4NjgsCi0tICAgICAgICAweDM1LCAweDkwLCAweDQ2LCAweEY0LCAweEVCLCAweDg3LCAw eDlGLCAweDkyLAotLSAgICAgICAgMHg0MCwgMHgwOSwgMHg0MywgMHg4QiwgMHg0OCwgMHgxQywg MHg2QywgMHhENywKLS0gICAgICAgIDB4ODgsIDB4OUEsIDB4MDAsIDB4MkUsIDB4RDUsIDB4RUUs IDB4MzgsIDB4MkIsCi0tICAgICAgICAweEM5LCAweDE5LCAweDBELCAweEE2LCAweEZDLCAweDAy LCAweDZFLCAweDQ3LAotLSAgICAgICAgMHg5NSwgMHg1OCwgMHhFNCwgMHg0NywgMHg1NiwgMHg3 NywgMHhFOSwgMHhBQSwKLS0gICAgICAgIDB4OUUsIDB4MzAsIDB4NTAsIDB4RTIsIDB4NzYsIDB4 NTYsIDB4OTQsIDB4REYsCi0tICAgICAgICAweEM4LCAweDFGLCAweDU2LCAweEU4LCAweDgwLCAw eEI5LCAweDZFLCAweDcxLAotLSAgICAgICAgMHg2MCwgMHhDOSwgMHg4MCwgMHhERCwgMHg5OCwg MHhFRCwgMHhEMywgMHhERiwKLS0gICAgICAgIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYsIDB4RkYs IDB4RkYsIDB4RkYsIDB4RkYsCi0tICAgIH07Ci0tICAgIHJldHVybiBCTl9iaW4yYm4oUkZDMzUy Nl9QUklNRV84MTkyLCBzaXplb2YoUkZDMzUyNl9QUklNRV84MTkyKSwgYm4pOwotKyAgICByZXR1 cm4gQ09QWV9CTihibiwgX2JpZ251bV9tb2RwXzgxOTJfcCk7Ci0gfQotZGlmZiAtdXAgb3BlbnNz bC0xLjEuMWovY3J5cHRvL2JuL2JuX2RoLmMuZmlwcy1kaCBvcGVuc3NsLTEuMS4xai9jcnlwdG8v Ym4vYm5fZGguYwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ibi9ibl9kaC5jLmZpcHMtZGgJ MjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9j cnlwdG8vYm4vYm5fZGguYwkyMDIxLTAzLTAzIDE0OjIzOjI3LjQwNDA5MjQyNyArMDEwMAotQEAg LTEsNyArMSw3IEBACi0gLyoKLS0gKiBDb3B5cmlnaHQgMjAxNC0yMDE3IFRoZSBPcGVuU1NMIFBy b2plY3QgQXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLSsgKiBDb3B5cmlnaHQgMjAxNC0y MDIwIFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLSAg KgotLSAqIExpY2Vuc2VkIHVuZGVyIHRoZSBPcGVuU1NMIGxpY2Vuc2UgKHRoZSAiTGljZW5zZSIp LiAgWW91IG1heSBub3QgdXNlCi0rICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNl IDIuMCAodGhlICJMaWNlbnNlIikuICBZb3UgbWF5IG5vdCB1c2UKLSAgKiB0aGlzIGZpbGUgZXhj ZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gIFlvdSBjYW4gb2J0YWluIGEgY29w eQotICAqIGluIHRoZSBmaWxlIExJQ0VOU0UgaW4gdGhlIHNvdXJjZSBkaXN0cmlidXRpb24gb3Ig YXQKLSAgKiBodHRwczovL3d3dy5vcGVuc3NsLm9yZy9zb3VyY2UvbGljZW5zZS5odG1sCi1AQCAt MTEsNDc0ICsxMSw5OTUgQEAKLSAjaW5jbHVkZSAiaW50ZXJuYWwvbmVsZW0uaCIKLSAKLSAjaWZu ZGVmIE9QRU5TU0xfTk9fREgKLS0jaW5jbHVkZSA8b3BlbnNzbC9kaC5oPgotLSNpbmNsdWRlICJj cnlwdG8vYm5fZGguaCIKLS0vKiBESCBwYXJhbWV0ZXJzIGZyb20gUkZDNTExNCAqLwotKyMgaW5j bHVkZSA8b3BlbnNzbC9kaC5oPgotKyMgaW5jbHVkZSAiY3J5cHRvL2JuX2RoLmgiCi0gCi0gIyBp ZiBCTl9CSVRTMiA9PSA2NAotLXN0YXRpYyBjb25zdCBCTl9VTE9ORyBkaDEwMjRfMTYwX3BbXSA9 IHsKLS0gICAgMHhERjFGQjJCQzJFNEE0MzcxVUxMLCAweEU2OENGREE3NkQ0REE3MDhVTEwsIDB4 NDVCRjM3REYzNjVDMUE2NVVMTCwKLS0gICAgMHhBMTUxQUY1RjBEQzhCNEJEVUxMLCAweEZBQTMx QTRGRjU1QkNDQzBVTEwsIDB4NEVGRkQ2RkFFNTY0NDczOFVMTCwKLS0gICAgMHg5ODQ4OEU5QzIx OUE3MzcyVUxMLCAweEFDQ0JERDdEOTBDNEJENzBVTEwsIDB4MjQ5NzVDM0NENDlCODNCRlVMTCwK LS0gICAgMHgxM0VDQjRBRUE5MDYxMTIzVUxMLCAweDk4MzhFRjFFMkVFNjUyQzBVTEwsIDB4NjA3 M0UyODY3NUEyM0QxOFVMTCwKLS0gICAgMHg5QTZBOURDQTUyRDIzQjYxVUxMLCAweDUyQzk5RkJD RkIwNkEzQzZVTEwsIDB4REU5MkRFNUVBRTVENTRFQ1VMTCwKLS0gICAgMHhCMTBCOEY5NkEwODBF MDFEVUxMCi0tfTsKLS0KLS1zdGF0aWMgY29uc3QgQk5fVUxPTkcgZGgxMDI0XzE2MF9nW10gPSB7 Ci0tICAgIDB4ODU1RTZFRUIyMkIzQjJFNVVMTCwgMHg4NThGNERDRUY5N0MyQTI0VUxMLCAweDJE Nzc5RDU5MThEMDhCQzhVTEwsCi0tICAgIDB4RDY2MkE0RDE4RTczQUZBM1VMTCwgMHgxREJGMEEw MTY5QjZBMjhBVUxMLCAweEE2QTI0QzA4N0EwOTFGNTNVTEwsCi0tICAgIDB4OTA5RDBEMjI2M0Y4 MEE3NlVMTCwgMHhEN0ZCRDdEM0I5QTkyRUUxVUxMLCAweDVFOTE1NDdGOUUyNzQ5RjRVTEwsCi0t ICAgIDB4MTYwMjE3QjRCMDFCODg2QVVMTCwgMHg3NzdFNjkwRjU1MDRGMjEzVUxMLCAweDI2NkZF QTFFNUM0MTU2NEJVTEwsCi0tICAgIDB4RDY0MDZDRkYxNDI2NkQzMVVMTCwgMHhGODEwNEREMjU4 QUM1MDdGVUxMLCAweDY3NjVBNDQyRUZCOTk5MDVVTEwsCi0tICAgIDB4QTREMUNCRDVDM0ZEMzQx MlVMTAotLX07Ci0tCi0tc3RhdGljIGNvbnN0IEJOX1VMT05HIGRoMTAyNF8xNjBfcVtdID0gewot LSAgICAweDY0QjdDQjlENDk0NjIzNTNVTEwsIDB4ODFBOERGMjc4QUJBNEU3RFVMTCwgMHgwMDAw MDAwMEY1MThBQTg3VUxMCi0tfTsKLS0KLS1zdGF0aWMgY29uc3QgQk5fVUxPTkcgZGgyMDQ4XzIy NF9wW10gPSB7Ci0tICAgIDB4MEFDNERGRkUwQzEwRTY0RlVMTCwgMHhDRjlERTUzODRFNzFCODFD VUxMLCAweDdFRjM2M0UyRkZBMzFGNzFVTEwsCi0tICAgIDB4RTNGQjczQzE2QjhFNzVCOVVMTCwg MHhDOUI1M0RDRjRCQTgwQTI5VUxMLCAweDIzRjEwQjBFMTZFNzk3NjNVTEwsCi0tICAgIDB4QzUy MTcyRTQxMzA0MkU5QlVMTCwgMHhCRTYwRTY5Q0M5MjhCMkI5VUxMLCAweDgwQ0Q4NkExQjlFNTg3 RThVTEwsCi0tICAgIDB4MzE1RDc1RTE5OEM2NDFBNFVMTCwgMHhDREY5M0FDQzQ0MzI4Mzg3VUxM LCAweDE1OTg3RDlBREMwQTQ4NkRVTEwsCi0tICAgIDB4NzMxMEY3MTIxRkQ1QTA3NFVMTCwgMHgy NzgyNzNDN0RFMzFFRkRDVUxMLCAweDE2MDJFNzE0NDE1RDkzMzBVTEwsCi0tICAgIDB4ODEyODYx MzBCQzg5ODVEQlVMTCwgMHhCM0JGOEEzMTcwOTE4ODM2VUxMLCAweDZBMDBFMEEwQjlDNDk3MDhV TEwsCi0tICAgIDB4QzZCQTBCMkM4QkJDMjdCRVVMTCwgMHhDOUY5OEQxMUVEMzREQkY2VUxMLCAw eDdBRDVCN0QwQjZDMTIyMDdVTEwsCi0tICAgIDB4RDkxRThGRUY1NUI3Mzk0QlVMTCwgMHg5MDM3 QzlFREVGREE0REY4VUxMLCAweDZEM0Y4MTUyQUQ2QUMyMTJVTEwsCi0tICAgIDB4MURFNkI4NUEx Mjc0QTBBNlVMTCwgMHhFQjNENjg4QTMwOUMxODBFVUxMLCAweEFGOUEzQzQwN0JBMURGMTVVTEws Ci0tICAgIDB4RTZGQTE0MURGOTVBNTZEQlVMTCwgMHhCNTRCMTU5N0I2MUQwQTc1VUxMLCAweEEy MEQ2NEU1NjgzQjlGRDFVTEwsCi0tICAgIDB4RDY2MEZBQTc5NTU5QzUxRlVMTCwgMHhBRDEwN0Ux RTkxMjNBOUQwVUxMCi0tfTsKLS0KLS1zdGF0aWMgY29uc3QgQk5fVUxPTkcgZGgyMDQ4XzIyNF9n W10gPSB7Ci0tICAgIDB4ODRCODkwRDMxOTFGMkJGQVVMTCwgMHg4MUJDMDg3RjJBNzA2NUIzVUxM LCAweDE5QzQxOEUxRjZFQzAxNzlVTEwsCi0tICAgIDB4N0I1QTBGMUM3MUNGRkY0Q1VMTCwgMHhF REZFNzJGRTlCNkFBNEJEVUxMLCAweDgxRTFCQ0ZFOTRCMzAyNjlVTEwsCi0tICAgIDB4NTY2QUZC QjQ4RDZDMDE5MVVMTCwgMHhCNTM5Q0NFMzQwOUQxM0NEVUxMLCAweDZBQTIxRTdGNUYyRkYzODFV TEwsCi0tICAgIDB4RDlFMjYzRTQ3NzA1ODlFRlVMTCwgMHgxMEUxODNFREQxOTk2M0REVUxMLCAw eEI3MEE4MTM3MTUwQjhFRUJVTEwsCi0tICAgIDB4MDUxQUUzRDQyOEM4RjhBQ1VMTCwgMHhCQjc3 QTg2RjBDMUFCMTVCVUxMLCAweDZFMzAyNUUzMTZBMzMwRUZVTEwsCi0tICAgIDB4MTk1MjlBNDVE NkY4MzQ1NlVMTCwgMHhGMTgwRUIzNDExOEU5OEQxVUxMLCAweEI1RjZDNkIyNTA3MTdDQkVVTEws Ci0tICAgIDB4MDk5MzlENTREQTc0NjBDRFVMTCwgMHhFMjQ3MTUwNDIyRUExRUQ0VUxMLCAweEI4 QTc2MkQwNTIxQkM5OEFVTEwsCi0tICAgIDB4RjREMDI3Mjc1QUMxMzQ4QlVMTCwgMHhDMTc2Njkx MDE5OTkwMjRBVUxMLCAweEJFNUU5MDAxQThENjZBRDdVTEwsCi0tICAgIDB4QzU3REIxN0M2MjBB ODY1MlVMTCwgMHhBQjczOUQ3NzAwQzI5RjUyVUxMLCAweEREOTIxRjAxQTcwQzRBRkFVTEwsCi0t ICAgIDB4QTY4MjRBNEUxMEI5QTZGMFVMTCwgMHg3NDg2NkEwOENGRTRGRkUzVUxMLCAweDZDREVC RTdCODk5OThDQUZVTEwsCi0tICAgIDB4OURGMzBCNUM4RkZEQUM1MFVMTCwgMHhBQzQwMzJFRjRG MkQ5QUUzVUxMCi0tfTsKLS0KLS1zdGF0aWMgY29uc3QgQk5fVUxPTkcgZGgyMDQ4XzIyNF9xW10g PSB7Ci0tICAgIDB4QkYzODlBOTlCMzYzNzFFQlVMTCwgMHgxRjgwNTM1QTQ3MzhDRUJDVUxMLCAw eEM1OEQ5M0ZFOTk3MTc3MTBVTEwsCi0tICAgIDB4MDAwMDAwMDA4MDFDMEQzNFVMTAotLX07Ci0t Ci0tc3RhdGljIGNvbnN0IEJOX1VMT05HIGRoMjA0OF8yNTZfcFtdID0gewotLSAgICAweERCMDk0 QUU5MUUxQTE1OTdVTEwsIDB4NjkzODc3RkFEN0VGMDlDQVVMTCwgMHg2MTE2RDIyNzZFMTE3MTVG VUxMLAotLSAgICAweEE0QjU0MzMwQzE5OEFGMTJVTEwsIDB4NzVGMjYzNzVENzAxNDEwM1VMTCwg MHhDM0EzOTYwQTU0RTcxMEMzVUxMLAotLSAgICAweERFRDQwMTBBQkQwQkU2MjFVTEwsIDB4QzBC ODU3RjY4OTk2Mjg1NlVMTCwgMHhCM0NBM0Y3OTcxNTA2MDI2VUxMLAotLSAgICAweDFDQ0FDQjgz RTZCNDg2RjZVTEwsIDB4NjdFMTQ0RTUxNDA1NjQyNVVMTCwgMHhGNkExNjdCNUE0MTgyNUQ5VUxM LAotLSAgICAweDNBRDgzNDc3OTY1MjREOEVVTEwsIDB4RjEzQzZEOUE1MUJGQTRBQlVMTCwgMHgy RDUyNTI2NzM1NDg4QTBFVUxMLAotLSAgICAweEI2M0FDQUUxQ0FBNkI3OTBVTEwsIDB4NEZEQjcw QzU4MUIyM0Y3NlVMTCwgMHhCQzM5QTBCRjEyMzA3RjVDVUxMLAotLSAgICAweEI5NDFGNTRFQjFF NTlCQjhVTEwsIDB4NkM1QkZDMTFENDVGOTA4OFVMTCwgMHgyMkUwQjFFRjQyNzVCRjdCVUxMLAot LSAgICAweDkxRjlFNjcyNUI0NzU4QzBVTEwsIDB4NUE4QTlEMzA2QkNGNjdFRFVMTCwgMHgyMDlF MEM2NDk3NTE3QUJEVUxMLAotLSAgICAweDNCRjQyOTZEODMwRTlBN0NVTEwsIDB4MTZDM0Q5MTEz NDA5NkZBQVVMTCwgMHhGQUY3REY0NTYxQjJBQTMwVUxMLAotLSAgICAweEUwMERGOEYxRDYxOTU3 RDRVTEwsIDB4NUQyQ0VFRDQ0MzVFM0IwMFVMTCwgMHg4Q0VFRjYwODY2MEREMEYyVUxMLAotLSAg ICAweEZGQkJEMTlDNjUxOTU5OTlVTEwsIDB4ODdBOEU2MURCNEI2NjYzQ1VMTAotLX07Ci0rIyAg ZGVmaW5lIEJOX0RFRihsbywgaGkpIChCTl9VTE9ORyloaSA8PCAzMiB8IGxvCi0rIyBlbHNlCi0r IyAgZGVmaW5lIEJOX0RFRihsbywgaGkpIGxvLCBoaQotKyMgZW5kaWYKLSAKLS1zdGF0aWMgY29u c3QgQk5fVUxPTkcgZGgyMDQ4XzI1Nl9nW10gPSB7Ci0tICAgIDB4NjY0QjRDMEY2Q0M0MTY1OVVM TCwgMHg1RTIzMjdDRkVGOThDNTgyVUxMLCAweEQ2NDdEMTQ4RDQ3OTU0NTFVTEwsCi0tICAgIDB4 MkY2MzA3ODQ5MEYwMEVGOFVMTCwgMHgxODRCNTIzRDFEQjI0NkMzVUxMLCAweEM3ODkxNDI4Q0RD NjdFQjZVTEwsCi0tICAgIDB4N0ZEMDI4MzcwREY5MkI1MlVMTCwgMHhCMzM1M0JCQjY0RTBFQzM3 VUxMLCAweEVDRDA2RTE1NTdDRDA5MTVVTEwsCi0tICAgIDB4QjdEMkJCRDJERjAxNjE5OVVMTCwg MHhDODQ4NEIxRTA1MjU4OEI5VUxMLCAweERCMkEzQjczMTNEM0ZFMTRVTEwsCi0tICAgIDB4RDA1 MkI5ODVEMTgyRUEwQVVMTCwgMHhBNEJEMUJGRkU4M0I5QzgwVUxMLCAweERGQzk2N0MxRkIzRjJF NTVVTEwsCi0tICAgIDB4QjUwNDVBRjI3NjcxNjRFMVVMTCwgMHgxRDE0MzQ4RjZGMkY5MTkzVUxM LCAweDY0RTY3OTgyNDI4RUJDODNVTEwsCi0tICAgIDB4OEFDMzc2RDI4MkQ2RUQzOFVMTCwgMHg3 NzdERTYyQUFBQjhBODYyVUxMLCAweERERjQ2M0U1RTlFQzE0NEJVTEwsCi0tICAgIDB4MDE5NkY5 MzFDNzdBNTdGMlVMTCwgMHhBNTVBRTMxMzQxMDAwQTY1VUxMLCAweDkwMTIyOEY4QzI4Q0JCMThV TEwsCi0tICAgIDB4QkMzNzczQkY3RThDNkY2MlVMTCwgMHhCRTNBNkMxQjBDNkI0N0IxVUxMLCAw eEZGNEZFRDRBQUMwQkI1NTVVTEwsCi0tICAgIDB4MTBEQkMxNTA3N0JFNDYzRlVMTCwgMHgwN0Y0 NzkzQTFBMEJBMTI1VUxMLCAweDRDQTdCMThGMjFFRjIwNTRVTEwsCi0tICAgIDB4MkU3NzUwNjY2 MEVEQkQ0OFVMTCwgMHgzRkIzMkM5QjczMTM0RDBCVUxMCi0tfTsKLSsvKiBESCBwYXJhbWV0ZXJz IGZyb20gUkZDMzUyNiAqLwotIAotLXN0YXRpYyBjb25zdCBCTl9VTE9ORyBkaDIwNDhfMjU2X3Fb XSA9IHsKLS0gICAgMHhBMzA4QjBGRTY0RjVGQkQzVUxMLCAweDk5QjFBNDdEMUVCMzc1MEJVTEws IDB4QjQ0Nzk5NzY0MDEyOURBMlVMTCwKLS0gICAgMHg4Q0Y4MzY0MkE3MDlBMDk3VUxMCi0rLyoK LSsgKiAiMTUzNi1iaXQgTU9EUCBHcm91cCIgZnJvbSBSRkMzNTI2LCBTZWN0aW9uIDIuCi0rICoK LSsgKiBUaGUgcHJpbWUgaXM6IDJeMTUzNiAtIDJeMTQ3MiAtIDEgKyAyXjY0ICogeyBbMl4xNDA2 IHBpXSArIDc0MTgwNCB9Ci0rICoKLSsgKiBSRkMzNTI2IHNwZWNpZmllcyBhIGdlbmVyYXRvciBv ZiAyLgotKyAqIFJGQzIzMTIgc3BlY2lmaWVzIGEgZ2VuZXJhdG9yIG9mIDIyLgotKyAqLwotK3N0 YXRpYyBjb25zdCBCTl9VTE9ORyBtb2RwXzE1MzZfcFtdID0gewotKyAgICBCTl9ERUYoMHhGRkZG RkZGRiwgMHhGRkZGRkZGRiksIEJOX0RFRigweENBMjM3MzI3LCAweEYxNzQ2QzA4KSwKLSsgICAg Qk5fREVGKDB4NEFCQzk4MDQsIDB4NjcwQzM1NEUpLCBCTl9ERUYoMHg3MDk2OTY2RCwgMHg5RUQ1 MjkwNyksCi0rICAgIEJOX0RFRigweDIwODU1MkJCLCAweDFDNjJGMzU2KSwgQk5fREVGKDB4RENB M0FEOTYsIDB4ODM2NTVEMjMpLAotKyAgICBCTl9ERUYoMHhGRDI0Q0Y1RiwgMHg2OTE2M0ZBOCks IEJOX0RFRigweDFDNTVEMzlBLCAweDk4REE0ODM2KSwKLSsgICAgQk5fREVGKDB4QTE2M0JGMDUs IDB4QzIwMDdDQjgpLCBCTl9ERUYoMHhFQ0U0NUIzRCwgMHg0OTI4NjY1MSksCi0rICAgIEJOX0RF RigweDdDNEIxRkU2LCAweEFFOUYyNDExKSwgQk5fREVGKDB4NUE4OTlGQTUsIDB4RUUzODZCRkIp LAotKyAgICBCTl9ERUYoMHhGNDA2QjdFRCwgMHgwQkZGNUNCNiksIEJOX0RFRigweEE2MzdFRDZC LCAweEY0NEM0MkU5KSwKLSsgICAgQk5fREVGKDB4NjI1RTdFQzYsIDB4RTQ4NUI1NzYpLCBCTl9E RUYoMHg2RDUxQzI0NSwgMHg0RkUxMzU2RCksCi0rICAgIEJOX0RFRigweEYyNUYxNDM3LCAweDMw MkIwQTZEKSwgQk5fREVGKDB4Q0QzQTQzMUIsIDB4RUY5NTE5QjMpLAotKyAgICBCTl9ERUYoMHg4 RTM0MDRERCwgMHg1MTRBMDg3OSksIEJOX0RFRigweDNCMTM5QjIyLCAweDAyMEJCRUE2KSwKLSsg ICAgQk5fREVGKDB4OEE2N0NDNzQsIDB4MjkwMjRFMDgpLCBCTl9ERUYoMHg4MERDMUNEMSwgMHhD NEM2NjI4QiksCi0rICAgIEJOX0RFRigweDIxNjhDMjM0LCAweEM5MEZEQUEyKSwgQk5fREVGKDB4 RkZGRkZGRkYsIDB4RkZGRkZGRkYpCi0rfTsKLSsvKiBxID0gKHAgLSAxKSAvIDIgKi8KLStzdGF0 aWMgY29uc3QgQk5fVUxPTkcgbW9kcF8xNTM2X3FbXSA9IHsKLSsgICAgQk5fREVGKDB4RkZGRkZG RkYsIDB4RkZGRkZGRkYpLCBCTl9ERUYoMHg2NTExQjk5MywgMHg3OEJBMzYwNCksCi0rICAgIEJO X0RFRigweDI1NUU0QzAyLCAweEIzODYxQUE3KSwgQk5fREVGKDB4Qjg0QjRCMzYsIDB4Q0Y2QTk0 ODMpLAotKyAgICBCTl9ERUYoMHgxMDQyQTk1RCwgMHgwRTMxNzlBQiksIEJOX0RFRigweEVFNTFE NkNCLCAweEMxQjJBRTkxKSwKLSsgICAgQk5fREVGKDB4N0U5MjY3QUYsIDB4MzQ4QjFGRDQpLCBC Tl9ERUYoMHgwRTJBRTlDRCwgMHhDQzZEMjQxQiksCi0rICAgIEJOX0RFRigweDUwQjFERjgyLCAw eEUxMDAzRTVDKSwgQk5fREVGKDB4RjY3MjJEOUUsIDB4MjQ5NDMzMjgpLAotKyAgICBCTl9ERUYo MHhCRTI1OEZGMywgMHhENzRGOTIwOCksIEJOX0RFRigweEFENDRDRkQyLCAweEY3MUMzNUZEKSwK LSsgICAgQk5fREVGKDB4N0EwMzVCRjYsIDB4ODVGRkFFNUIpLCBCTl9ERUYoMHhEMzFCRjZCNSwg MHg3QTI2MjE3NCksCi0rICAgIEJOX0RFRigweDMxMkYzRjYzLCAweEYyNDJEQUJCKSwgQk5fREVG KDB4QjZBOEUxMjIsIDB4QTdGMDlBQjYpLAotKyAgICBCTl9ERUYoMHhGOTJGOEExQiwgMHg5ODE1 ODUzNiksIEJOX0RFRigweEU2OUQyMThELCAweEY3Q0E4Q0Q5KSwKLSsgICAgQk5fREVGKDB4Qzcx QTAyNkUsIDB4MjhBNTA0M0MpLCBCTl9ERUYoMHgxRDg5Q0Q5MSwgMHgwMTA1REY1MyksCi0rICAg IEJOX0RFRigweDQ1MzNFNjNBLCAweDk0ODEyNzA0KSwgQk5fREVGKDB4QzA2RTBFNjgsIDB4NjI2 MzMxNDUpLAotKyAgICBCTl9ERUYoMHgxMEI0NjExQSwgMHhFNDg3RUQ1MSksIEJOX0RFRigweEZG RkZGRkZGLCAweDdGRkZGRkZGKQotIH07Ci0gCi0tLyogUHJpbWVzIGZyb20gUkZDIDc5MTkgKi8K LS1zdGF0aWMgY29uc3QgQk5fVUxPTkcgZmZkaGUyMDQ4X3BbXSA9IHsKLS0gICAgMHhGRkZGRkZG RkZGRkZGRkZGVUxMLCAweDg4NkI0MjM4NjEyODVDOTdVTEwsIDB4QzZGMzRBMjZDMUIyRUZGQVVM TCwKLS0gICAgMHhDNThFRjE4MzdEMTY4M0IyVUxMLCAweDNCQjVGQ0JDMkVDMjIwMDVVTEwsIDB4 QzNGRTNCMUI0QzZGQUQ3M1VMTCwKLS0gICAgMHg4RTRGMTIzMkVFRjI4MTgzVUxMLCAweDkxNzJG RTlDRTk4NTgzRkZVTEwsIDB4QzAzNDA0Q0QyODM0MkY2MVVMTCwKLS0gICAgMHg5RTAyRkNFMUNE RjdFMkVDVUxMLCAweDBCMDdBN0M4RUUwQTZENzBVTEwsIDB4QUU1NkVERTc2MzcyQkIxOVVMTCwK LS0gICAgMHgxRDRGNDJBM0RFMzk0REY0VUxMLCAweEI5NkFEQUI3NjBEN0Y0NjhVTEwsIDB4RDEw OEE5NEJCMkM4RTNGQlVMTCwKLS0gICAgMHhCQzBBQjE4MkIzMjRGQjYxVUxMLCAweDMwQUNDQTRG NDgzQTc5N0FVTEwsIDB4MURGMTU4QTEzNkFERTczNVVMTCwKLS0gICAgMHhFMkE2ODlEQUYzRUZF ODcyVUxMLCAweDk4NEYwQzcwRTBFNjhCNzdVTEwsIDB4QjU1NzEzNUU3RjU3QzkzNVVMTCwKLS0g ICAgMHg4NTYzNjU1NTNERUQxQUYzVUxMLCAweDI0MzNGNTFGNUYwNjZFRDBVTEwsIDB4RDNERjFF RDVENUZENjU2MVVMTCwKLS0gICAgMHhGNjgxQjIwMkFFQzQ2MTdBVUxMLCAweDdEMkZFMzYzNjMw Qzc1RDhVTEwsIDB4Q0M5MzlEQ0UyNDlCM0VGOVVMTCwKLS0gICAgMHhBOUUxMzY0MTE0NjQzM0ZC VUxMLCAweEQ4QjlDNTgzQ0UyRDM2OTVVTEwsIDB4QUZEQzU2MjAyNzNEM0NGMVVMTCwKLS0gICAg MHhBREY4NTQ1OEEyQkI0QTlBVUxMLCAweEZGRkZGRkZGRkZGRkZGRkZVTEwKLSsvKi0KLSsgKiAi MjA0OC1iaXQgTU9EUCBHcm91cCIgZnJvbSBSRkMzNTI2LCBTZWN0aW9uIDMuCi0rICoKLSsgKiBU aGUgcHJpbWUgaXM6IDJeMjA0OCAtIDJeMTk4NCAtIDEgKyAyXjY0ICogeyBbMl4xOTE4IHBpXSAr IDEyNDQ3NiB9Ci0rICoKLSsgKiBSRkMzNTI2IHNwZWNpZmllcyBhIGdlbmVyYXRvciBvZiAyLgot KyAqLwotK3N0YXRpYyBjb25zdCBCTl9VTE9ORyBtb2RwXzIwNDhfcFtdID0gewotKyAgICBCTl9E RUYoMHhGRkZGRkZGRiwgMHhGRkZGRkZGRiksIEJOX0RFRigweDhBQUNBQTY4LCAweDE1NzI4RTVB KSwKLSsgICAgQk5fREVGKDB4OThGQTA1MTAsIDB4MTVEMjI2MTgpLCBCTl9ERUYoMHhFQTk1NkFF NSwgMHgzOTk1NDk3QyksCi0rICAgIEJOX0RFRigweDk1NTgxNzE4LCAweERFMkJDQkY2KSwgQk5f REVGKDB4NkY0QzUyQzksIDB4QjVDNTVERjApLAotKyAgICBCTl9ERUYoMHhFQzA3QTI4RiwgMHg5 QjI3ODNBMiksIEJOX0RFRigweDE4MEU4NjAzLCAweEUzOUU3NzJDKSwKLSsgICAgQk5fREVGKDB4 MkUzNkNFM0IsIDB4MzI5MDVFNDYpLCBCTl9ERUYoMHhDQTE4MjE3QywgMHhGMTc0NkMwOCksCi0r ICAgIEJOX0RFRigweDRBQkM5ODA0LCAweDY3MEMzNTRFKSwgQk5fREVGKDB4NzA5Njk2NkQsIDB4 OUVENTI5MDcpLAotKyAgICBCTl9ERUYoMHgyMDg1NTJCQiwgMHgxQzYyRjM1NiksIEJOX0RFRigw eERDQTNBRDk2LCAweDgzNjU1RDIzKSwKLSsgICAgQk5fREVGKDB4RkQyNENGNUYsIDB4NjkxNjNG QTgpLCBCTl9ERUYoMHgxQzU1RDM5QSwgMHg5OERBNDgzNiksCi0rICAgIEJOX0RFRigweEExNjNC RjA1LCAweEMyMDA3Q0I4KSwgQk5fREVGKDB4RUNFNDVCM0QsIDB4NDkyODY2NTEpLAotKyAgICBC Tl9ERUYoMHg3QzRCMUZFNiwgMHhBRTlGMjQxMSksIEJOX0RFRigweDVBODk5RkE1LCAweEVFMzg2 QkZCKSwKLSsgICAgQk5fREVGKDB4RjQwNkI3RUQsIDB4MEJGRjVDQjYpLCBCTl9ERUYoMHhBNjM3 RUQ2QiwgMHhGNDRDNDJFOSksCi0rICAgIEJOX0RFRigweDYyNUU3RUM2LCAweEU0ODVCNTc2KSwg Qk5fREVGKDB4NkQ1MUMyNDUsIDB4NEZFMTM1NkQpLAotKyAgICBCTl9ERUYoMHhGMjVGMTQzNywg MHgzMDJCMEE2RCksIEJOX0RFRigweENEM0E0MzFCLCAweEVGOTUxOUIzKSwKLSsgICAgQk5fREVG KDB4OEUzNDA0REQsIDB4NTE0QTA4NzkpLCBCTl9ERUYoMHgzQjEzOUIyMiwgMHgwMjBCQkVBNiks Ci0rICAgIEJOX0RFRigweDhBNjdDQzc0LCAweDI5MDI0RTA4KSwgQk5fREVGKDB4ODBEQzFDRDEs IDB4QzRDNjYyOEIpLAotKyAgICBCTl9ERUYoMHgyMTY4QzIzNCwgMHhDOTBGREFBMiksIEJOX0RF RigweEZGRkZGRkZGLCAweEZGRkZGRkZGKQotK307Ci0rLyogcSA9IChwIC0gMSkgLyAyICovCi0r c3RhdGljIGNvbnN0IEJOX1VMT05HIG1vZHBfMjA0OF9xW10gPSB7Ci0rICAgIEJOX0RFRigweEZG RkZGRkZGLCAgMHg3RkZGRkZGRiksIEJOX0RFRigweDQ1NTY1NTM0LCAgMHgwQUI5NDcyRCksCi0r ICAgIEJOX0RFRigweDRDN0QwMjg4LCAgMHg4QUU5MTMwQyksIEJOX0RFRigweDc1NEFCNTcyLCAg MHgxQ0NBQTRCRSksCi0rICAgIEJOX0RFRigweDRBQUMwQjhDLCAgMHhFRjE1RTVGQiksIEJOX0RF RigweDM3QTYyOTY0LCAgMHhEQUUyQUVGOCksCi0rICAgIEJOX0RFRigweDc2MDNEMTQ3LCAgMHhD RDkzQzFEMSksIEJOX0RFRigweDBDMDc0MzAxLCAgMHhGMUNGM0I5NiksCi0rICAgIEJOX0RFRigw eDE3MUI2NzFELCAgMHgxOTQ4MkYyMyksIEJOX0RFRigweDY1MEMxMEJFLCAgMHg3OEJBMzYwNCks Ci0rICAgIEJOX0RFRigweDI1NUU0QzAyLCAgMHhCMzg2MUFBNyksIEJOX0RFRigweEI4NEI0QjM2 LCAgMHhDRjZBOTQ4MyksCi0rICAgIEJOX0RFRigweDEwNDJBOTVELCAgMHgwRTMxNzlBQiksIEJO X0RFRigweEVFNTFENkNCLCAgMHhDMUIyQUU5MSksCi0rICAgIEJOX0RFRigweDdFOTI2N0FGLCAg MHgzNDhCMUZENCksIEJOX0RFRigweDBFMkFFOUNELCAgMHhDQzZEMjQxQiksCi0rICAgIEJOX0RF RigweDUwQjFERjgyLCAgMHhFMTAwM0U1QyksIEJOX0RFRigweEY2NzIyRDlFLCAgMHgyNDk0MzMy OCksCi0rICAgIEJOX0RFRigweEJFMjU4RkYzLCAgMHhENzRGOTIwOCksIEJOX0RFRigweEFENDRD RkQyLCAgMHhGNzFDMzVGRCksCi0rICAgIEJOX0RFRigweDdBMDM1QkY2LCAgMHg4NUZGQUU1Qiks IEJOX0RFRigweEQzMUJGNkI1LCAgMHg3QTI2MjE3NCksCi0rICAgIEJOX0RFRigweDMxMkYzRjYz LCAgMHhGMjQyREFCQiksIEJOX0RFRigweEI2QThFMTIyLCAgMHhBN0YwOUFCNiksCi0rICAgIEJO X0RFRigweEY5MkY4QTFCLCAgMHg5ODE1ODUzNiksIEJOX0RFRigweEU2OUQyMThELCAgMHhGN0NB OENEOSksCi0rICAgIEJOX0RFRigweEM3MUEwMjZFLCAgMHgyOEE1MDQzQyksIEJOX0RFRigweDFE ODlDRDkxLCAgMHgwMTA1REY1MyksCi0rICAgIEJOX0RFRigweDQ1MzNFNjNBLCAgMHg5NDgxMjcw NCksIEJOX0RFRigweEMwNkUwRTY4LCAgMHg2MjYzMzE0NSksCi0rICAgIEJOX0RFRigweDEwQjQ2 MTFBLCAgMHhFNDg3RUQ1MSksIEJOX0RFRigweEZGRkZGRkZGLCAgMHg3RkZGRkZGRiksCi0gfTsK LSAKLS1zdGF0aWMgY29uc3QgQk5fVUxPTkcgZmZkaGUzMDcyX3BbXSA9IHsKLS0gICAgMHhGRkZG RkZGRkZGRkZGRkZGVUxMLCAweDI1RTQxRDJCNjZDNjJFMzdVTEwsIDB4M0MxQjIwRUUzRkQ1OUQ3 Q1VMTCwKLS0gICAgMHgwQUJDRDA2QkZBNTNEREVGVUxMLCAweDFEQkY5QTQyRDVDNDQ4NEVVTEws IDB4QUJDNTIxOTc5QjBERUFEQVVMTCwKLS0gICAgMHhFODZEMkJDNTIyMzYzQTBEVUxMLCAweDVD QUU4MkFCOUM5REY2OUVVTEwsIDB4NjRGMkUyMUU3MUY1NEJGRlVMTCwKLS0gICAgMHhGNEZENDQ1 MkUyRDc0REQzVUxMLCAweEI0MTMwQzkzQkM0Mzc5NDRVTEwsIDB4QUVGRTEzMDk4NTEzOTI3MFVM TCwKLS0gICAgMHg1OThDQjBGQUMxODZEOTFDVUxMLCAweDdBRDkxRDI2OTFGN0Y3RUVVTEwsIDB4 NjFCNDZGQzlENkU2QzkwN1VMTCwKLS0gICAgMHhCQzM0RjRERUY5OUMwMjM4VUxMLCAweERFMzU1 QjNCNjUxOTAzNUJVTEwsIDB4ODg2QjQyMzg2MTFGQ0ZEQ1VMTCwKLS0gICAgMHhDNkYzNEEyNkMx QjJFRkZBVUxMLCAweEM1OEVGMTgzN0QxNjgzQjJVTEwsIDB4M0JCNUZDQkMyRUMyMjAwNVVMTCwK LS0gICAgMHhDM0ZFM0IxQjRDNkZBRDczVUxMLCAweDhFNEYxMjMyRUVGMjgxODNVTEwsIDB4OTE3 MkZFOUNFOTg1ODNGRlVMTCwKLS0gICAgMHhDMDM0MDRDRDI4MzQyRjYxVUxMLCAweDlFMDJGQ0Ux Q0RGN0UyRUNVTEwsIDB4MEIwN0E3QzhFRTBBNkQ3MFVMTCwKLS0gICAgMHhBRTU2RURFNzYzNzJC QjE5VUxMLCAweDFENEY0MkEzREUzOTRERjRVTEwsIDB4Qjk2QURBQjc2MEQ3RjQ2OFVMTCwKLS0g ICAgMHhEMTA4QTk0QkIyQzhFM0ZCVUxMLCAweEJDMEFCMTgyQjMyNEZCNjFVTEwsIDB4MzBBQ0NB NEY0ODNBNzk3QVVMTCwKLS0gICAgMHgxREYxNThBMTM2QURFNzM1VUxMLCAweEUyQTY4OURBRjNF RkU4NzJVTEwsIDB4OTg0RjBDNzBFMEU2OEI3N1VMTCwKLS0gICAgMHhCNTU3MTM1RTdGNTdDOTM1 VUxMLCAweDg1NjM2NTU1M0RFRDFBRjNVTEwsIDB4MjQzM0Y1MUY1RjA2NkVEMFVMTCwKLS0gICAg MHhEM0RGMUVENUQ1RkQ2NTYxVUxMLCAweEY2ODFCMjAyQUVDNDYxN0FVTEwsIDB4N0QyRkUzNjM2 MzBDNzVEOFVMTCwKLS0gICAgMHhDQzkzOURDRTI0OUIzRUY5VUxMLCAweEE5RTEzNjQxMTQ2NDMz RkJVTEwsIDB4RDhCOUM1ODNDRTJEMzY5NVVMTCwKLS0gICAgMHhBRkRDNTYyMDI3M0QzQ0YxVUxM LCAweEFERjg1NDU4QTJCQjRBOUFVTEwsIDB4RkZGRkZGRkZGRkZGRkZGRlVMTAotKy8qLQotKyAq ICIzMDcyLWJpdCBNT0RQIEdyb3VwIiBmcm9tIFJGQzM1MjYsIFNlY3Rpb24gNC4KLSsgKgotKyAq IFRoZSBwcmltZSBpczogMl4zMDcyIC0gMl4zMDA4IC0gMSArIDJeNjQgKiB7IFsyXjI5NDIgcGld ICsgMTY5MDMxNCB9Ci0rICoKLSsgKiBSRkMzNTI2IHNwZWNpZmllcyBhIGdlbmVyYXRvciBvZiAy LgotKyAqLwotK3N0YXRpYyBjb25zdCBCTl9VTE9ORyBtb2RwXzMwNzJfcFtdID0gewotKyAgICBC Tl9ERUYoMHhGRkZGRkZGRiwgMHhGRkZGRkZGRiksIEJOX0RFRigweEE5M0FEMkNBLCAweDRCODJE MTIwKSwKLSsgICAgQk5fREVGKDB4RTBGRDEwOEUsIDB4NDNEQjVCRkMpLCBCTl9ERUYoMHg3NEU1 QUIzMSwgMHgwOEUyNEZBMCksCi0rICAgIEJOX0RFRigweEJBRDk0NkUyLCAweDc3MDk4OEMwKSwg Qk5fREVGKDB4N0E2MTVENkMsIDB4QkJFMTE3NTcpLAotKyAgICBCTl9ERUYoMHgxNzdCMjAwQywg MHg1MjFGMkIxOCksIEJOX0RFRigweDNFQzg2QTY0LCAweEQ4NzYwMjczKSwKLSsgICAgQk5fREVG KDB4RDk4QTA4NjQsIDB4RjEyRkZBMDYpLCBCTl9ERUYoMHgxQUQyRUU2QiwgMHhDRUUzRDIyNiks Ci0rICAgIEJOX0RFRigweDRBMjU2MTlELCAweDFFOEM5NEUwKSwgQk5fREVGKDB4REIwOTMzRDcs IDB4QUJGNUFFOEMpLAotKyAgICBCTl9ERUYoMHhBNkUxRTRDNywgMHhCMzk3MEY4NSksIEJOX0RF RigweDVEMDYwQzdELCAweDhBRUE3MTU3KSwKLSsgICAgQk5fREVGKDB4NThEQkVGMEEsIDB4RUNG Qjg1MDQpLCBCTl9ERUYoMHhERjFDQkE2NCwgMHhBODU1MjFBQiksCi0rICAgIEJOX0RFRigweDA0 NTA3QTMzLCAweEFEMzMxNzBEKSwgQk5fREVGKDB4OEFBQUM0MkQsIDB4MTU3MjhFNUEpLAotKyAg ICBCTl9ERUYoMHg5OEZBMDUxMCwgMHgxNUQyMjYxOCksIEJOX0RFRigweEVBOTU2QUU1LCAweDM5 OTU0OTdDKSwKLSsgICAgQk5fREVGKDB4OTU1ODE3MTgsIDB4REUyQkNCRjYpLCBCTl9ERUYoMHg2 RjRDNTJDOSwgMHhCNUM1NURGMCksCi0rICAgIEJOX0RFRigweEVDMDdBMjhGLCAweDlCMjc4M0Ey KSwgQk5fREVGKDB4MTgwRTg2MDMsIDB4RTM5RTc3MkMpLAotKyAgICBCTl9ERUYoMHgyRTM2Q0Uz QiwgMHgzMjkwNUU0NiksIEJOX0RFRigweENBMTgyMTdDLCAweEYxNzQ2QzA4KSwKLSsgICAgQk5f REVGKDB4NEFCQzk4MDQsIDB4NjcwQzM1NEUpLCBCTl9ERUYoMHg3MDk2OTY2RCwgMHg5RUQ1Mjkw NyksCi0rICAgIEJOX0RFRigweDIwODU1MkJCLCAweDFDNjJGMzU2KSwgQk5fREVGKDB4RENBM0FE OTYsIDB4ODM2NTVEMjMpLAotKyAgICBCTl9ERUYoMHhGRDI0Q0Y1RiwgMHg2OTE2M0ZBOCksIEJO X0RFRigweDFDNTVEMzlBLCAweDk4REE0ODM2KSwKLSsgICAgQk5fREVGKDB4QTE2M0JGMDUsIDB4 QzIwMDdDQjgpLCBCTl9ERUYoMHhFQ0U0NUIzRCwgMHg0OTI4NjY1MSksCi0rICAgIEJOX0RFRigw eDdDNEIxRkU2LCAweEFFOUYyNDExKSwgQk5fREVGKDB4NUE4OTlGQTUsIDB4RUUzODZCRkIpLAot KyAgICBCTl9ERUYoMHhGNDA2QjdFRCwgMHgwQkZGNUNCNiksIEJOX0RFRigweEE2MzdFRDZCLCAw eEY0NEM0MkU5KSwKLSsgICAgQk5fREVGKDB4NjI1RTdFQzYsIDB4RTQ4NUI1NzYpLCBCTl9ERUYo MHg2RDUxQzI0NSwgMHg0RkUxMzU2RCksCi0rICAgIEJOX0RFRigweEYyNUYxNDM3LCAweDMwMkIw QTZEKSwgQk5fREVGKDB4Q0QzQTQzMUIsIDB4RUY5NTE5QjMpLAotKyAgICBCTl9ERUYoMHg4RTM0 MDRERCwgMHg1MTRBMDg3OSksIEJOX0RFRigweDNCMTM5QjIyLCAweDAyMEJCRUE2KSwKLSsgICAg Qk5fREVGKDB4OEE2N0NDNzQsIDB4MjkwMjRFMDgpLCBCTl9ERUYoMHg4MERDMUNEMSwgMHhDNEM2 NjI4QiksCi0rICAgIEJOX0RFRigweDIxNjhDMjM0LCAweEM5MEZEQUEyKSwgQk5fREVGKDB4RkZG RkZGRkYsIDB4RkZGRkZGRkYpCi0rfTsKLSsvKiBxID0gKHAgLSAxKSAvIDIgKi8KLStzdGF0aWMg Y29uc3QgQk5fVUxPTkcgbW9kcF8zMDcyX3FbXSA9IHsKLSsgICAgQk5fREVGKDB4RkZGRkZGRkYs ICAweDdGRkZGRkZGKSwgQk5fREVGKDB4NTQ5RDY5NjUsICAweDI1QzE2ODkwKSwKLSsgICAgQk5f REVGKDB4NzA3RTg4NDcsICAweEExRURBREZFKSwgQk5fREVGKDB4M0E3MkQ1OTgsICAweDA0NzEy N0QwKSwKLSsgICAgQk5fREVGKDB4NUQ2Q0EzNzEsICAweDNCODRDNDYwKSwgQk5fREVGKDB4QkQz MEFFQjYsICAweDVERjA4QkFCKSwKLSsgICAgQk5fREVGKDB4MEJCRDkwMDYsICAweDI5MEY5NThD KSwgQk5fREVGKDB4OUY2NDM1MzIsICAweDZDM0IwMTM5KSwKLSsgICAgQk5fREVGKDB4NkNDNTA0 MzIsICAweEY4OTdGRDAzKSwgQk5fREVGKDB4MEQ2OTc3MzUsICAweEU3NzFFOTEzKSwKLSsgICAg Qk5fREVGKDB4MjUxMkIwQ0UsICAweDhGNDY0QTcwKSwgQk5fREVGKDB4NkQ4NDk5RUIsICAweEQ1 RkFENzQ2KSwKLSsgICAgQk5fREVGKDB4RDM3MEYyNjMsICAweEQ5Q0I4N0MyKSwgQk5fREVGKDB4 QUU4MzA2M0UsICAweDQ1NzUzOEFCKSwKLSsgICAgQk5fREVGKDB4MkM2REY3ODUsICAweDc2N0RD MjgyKSwgQk5fREVGKDB4RUY4RTVEMzIsICAweEQ0MkE5MEQ1KSwKLSsgICAgQk5fREVGKDB4ODIy ODNEMTksICAweEQ2OTk4Qjg2KSwgQk5fREVGKDB4NDU1NTYyMTYsICAweDBBQjk0NzJEKSwKLSsg ICAgQk5fREVGKDB4NEM3RDAyODgsICAweDhBRTkxMzBDKSwgQk5fREVGKDB4NzU0QUI1NzIsICAw eDFDQ0FBNEJFKSwKLSsgICAgQk5fREVGKDB4NEFBQzBCOEMsICAweEVGMTVFNUZCKSwgQk5fREVG KDB4MzdBNjI5NjQsICAweERBRTJBRUY4KSwKLSsgICAgQk5fREVGKDB4NzYwM0QxNDcsICAweENE OTNDMUQxKSwgQk5fREVGKDB4MEMwNzQzMDEsICAweEYxQ0YzQjk2KSwKLSsgICAgQk5fREVGKDB4 MTcxQjY3MUQsICAweDE5NDgyRjIzKSwgQk5fREVGKDB4NjUwQzEwQkUsICAweDc4QkEzNjA0KSwK LSsgICAgQk5fREVGKDB4MjU1RTRDMDIsICAweEIzODYxQUE3KSwgQk5fREVGKDB4Qjg0QjRCMzYs ICAweENGNkE5NDgzKSwKLSsgICAgQk5fREVGKDB4MTA0MkE5NUQsICAweDBFMzE3OUFCKSwgQk5f REVGKDB4RUU1MUQ2Q0IsICAweEMxQjJBRTkxKSwKLSsgICAgQk5fREVGKDB4N0U5MjY3QUYsICAw eDM0OEIxRkQ0KSwgQk5fREVGKDB4MEUyQUU5Q0QsICAweENDNkQyNDFCKSwKLSsgICAgQk5fREVG KDB4NTBCMURGODIsICAweEUxMDAzRTVDKSwgQk5fREVGKDB4RjY3MjJEOUUsICAweDI0OTQzMzI4 KSwKLSsgICAgQk5fREVGKDB4QkUyNThGRjMsICAweEQ3NEY5MjA4KSwgQk5fREVGKDB4QUQ0NENG RDIsICAweEY3MUMzNUZEKSwKLSsgICAgQk5fREVGKDB4N0EwMzVCRjYsICAweDg1RkZBRTVCKSwg Qk5fREVGKDB4RDMxQkY2QjUsICAweDdBMjYyMTc0KSwKLSsgICAgQk5fREVGKDB4MzEyRjNGNjMs ICAweEYyNDJEQUJCKSwgQk5fREVGKDB4QjZBOEUxMjIsICAweEE3RjA5QUI2KSwKLSsgICAgQk5f REVGKDB4RjkyRjhBMUIsICAweDk4MTU4NTM2KSwgQk5fREVGKDB4RTY5RDIxOEQsICAweEY3Q0E4 Q0Q5KSwKLSsgICAgQk5fREVGKDB4QzcxQTAyNkUsICAweDI4QTUwNDNDKSwgQk5fREVGKDB4MUQ4 OUNEOTEsICAweDAxMDVERjUzKSwKLSsgICAgQk5fREVGKDB4NDUzM0U2M0EsICAweDk0ODEyNzA0 KSwgQk5fREVGKDB4QzA2RTBFNjgsICAweDYyNjMzMTQ1KSwKLSsgICAgQk5fREVGKDB4MTBCNDYx MUEsICAweEU0ODdFRDUxKSwgQk5fREVGKDB4RkZGRkZGRkYsICAweDdGRkZGRkZGKSwKLSB9Owot IAotLXN0YXRpYyBjb25zdCBCTl9VTE9ORyBmZmRoZTQwOTZfcFtdID0gewotLSAgICAweEZGRkZG RkZGRkZGRkZGRkZVTEwsIDB4QzY4QTAwN0U1RTY1NUY2QVVMTCwgMHg0REI1QTg1MUY0NDE4MkUx VUxMLAotLSAgICAweDhFQzlCNTVBN0Y4OEE0NkJVTEwsIDB4MEE4MjkxQ0RDRUM5N0RDRlVMTCwg MHgyQTRFQ0VBOUY5OEQwQUNDVUxMLAotLSAgICAweDFBMURCOTNENzE0MDAwM0NVTEwsIDB4MDky OTk5QTMzM0NCOEI3QVVMTCwgMHg2REM3NzhGOTcxQUQwMDM4VUxMLAotLSAgICAweEE5MDc2MDBB OTE4MTMwQzRVTEwsIDB4RUQ2QTFFMDEyRDlFNjgzMlVMTCwgMHg3MTM1Qzg4NkVGQjQzMThBVUxM LAotLSAgICAweDg3RjU1QkE1N0UzMUNDN0FVTEwsIDB4Nzc2M0NGMUQ1NTAzNDAwNFVMTCwgMHhB QzdENUY0MkQ2OUY2RDE4VUxMLAotLSAgICAweDc5MzBFOUU0RTU4ODU3QjZVTEwsIDB4NkU2RjUy QzMxNjRERjRGQlVMTCwgMHgyNUU0MUQyQjY2OUUxRUYxVUxMLAotLSAgICAweDNDMUIyMEVFM0ZE NTlEN0NVTEwsIDB4MEFCQ0QwNkJGQTUzRERFRlVMTCwgMHgxREJGOUE0MkQ1QzQ0ODRFVUxMLAot LSAgICAweEFCQzUyMTk3OUIwREVBREFVTEwsIDB4RTg2RDJCQzUyMjM2M0EwRFVMTCwgMHg1Q0FF ODJBQjlDOURGNjlFVUxMLAotLSAgICAweDY0RjJFMjFFNzFGNTRCRkZVTEwsIDB4RjRGRDQ0NTJF MkQ3NEREM1VMTCwgMHhCNDEzMEM5M0JDNDM3OTQ0VUxMLAotLSAgICAweEFFRkUxMzA5ODUxMzky NzBVTEwsIDB4NTk4Q0IwRkFDMTg2RDkxQ1VMTCwgMHg3QUQ5MUQyNjkxRjdGN0VFVUxMLAotLSAg ICAweDYxQjQ2RkM5RDZFNkM5MDdVTEwsIDB4QkMzNEY0REVGOTlDMDIzOFVMTCwgMHhERTM1NUIz QjY1MTkwMzVCVUxMLAotLSAgICAweDg4NkI0MjM4NjExRkNGRENVTEwsIDB4QzZGMzRBMjZDMUIy RUZGQVVMTCwgMHhDNThFRjE4MzdEMTY4M0IyVUxMLAotLSAgICAweDNCQjVGQ0JDMkVDMjIwMDVV TEwsIDB4QzNGRTNCMUI0QzZGQUQ3M1VMTCwgMHg4RTRGMTIzMkVFRjI4MTgzVUxMLAotLSAgICAw eDkxNzJGRTlDRTk4NTgzRkZVTEwsIDB4QzAzNDA0Q0QyODM0MkY2MVVMTCwgMHg5RTAyRkNFMUNE RjdFMkVDVUxMLAotLSAgICAweDBCMDdBN0M4RUUwQTZENzBVTEwsIDB4QUU1NkVERTc2MzcyQkIx OVVMTCwgMHgxRDRGNDJBM0RFMzk0REY0VUxMLAotLSAgICAweEI5NkFEQUI3NjBEN0Y0NjhVTEws IDB4RDEwOEE5NEJCMkM4RTNGQlVMTCwgMHhCQzBBQjE4MkIzMjRGQjYxVUxMLAotLSAgICAweDMw QUNDQTRGNDgzQTc5N0FVTEwsIDB4MURGMTU4QTEzNkFERTczNVVMTCwgMHhFMkE2ODlEQUYzRUZF ODcyVUxMLAotLSAgICAweDk4NEYwQzcwRTBFNjhCNzdVTEwsIDB4QjU1NzEzNUU3RjU3QzkzNVVM TCwgMHg4NTYzNjU1NTNERUQxQUYzVUxMLAotLSAgICAweDI0MzNGNTFGNUYwNjZFRDBVTEwsIDB4 RDNERjFFRDVENUZENjU2MVVMTCwgMHhGNjgxQjIwMkFFQzQ2MTdBVUxMLAotLSAgICAweDdEMkZF MzYzNjMwQzc1RDhVTEwsIDB4Q0M5MzlEQ0UyNDlCM0VGOVVMTCwgMHhBOUUxMzY0MTE0NjQzM0ZC VUxMLAotLSAgICAweEQ4QjlDNTgzQ0UyRDM2OTVVTEwsIDB4QUZEQzU2MjAyNzNEM0NGMVVMTCwg MHhBREY4NTQ1OEEyQkI0QTlBVUxMLAotLSAgICAweEZGRkZGRkZGRkZGRkZGRkZVTEwKLSsvKi0K LSsgKiAiNDA5Ni1iaXQgTU9EUCBHcm91cCIgZnJvbSBSRkMzNTI2LCBTZWN0aW9uIDUuCi0rICoK LSsgKiBUaGUgcHJpbWUgaXM6IDJeNDA5NiAtIDJeNDAzMiAtIDEgKyAyXjY0ICogeyBbMl4zOTY2 IHBpXSArIDI0MDkwNCB9Ci0rICoKLSsgKiBSRkMzNTI2IHNwZWNpZmllcyBhIGdlbmVyYXRvciBv ZiAyLgotKyAqLwotK3N0YXRpYyBjb25zdCBCTl9VTE9ORyBtb2RwXzQwOTZfcFtdID0gewotKyAg ICBCTl9ERUYoMHhGRkZGRkZGRiwgMHhGRkZGRkZGRiksIEJOX0RFRigweDM0MDYzMTk5LCAweDRE RjQzNUM5KSwKLSsgICAgQk5fREVGKDB4OTBBNkMwOEYsIDB4ODZGRkI3REMpLCBCTl9ERUYoMHg4 RDhGRERDMSwgMHg5M0I0RUE5OCksCi0rICAgIEJOX0RFRigweEQ1QjA1QUE5LCAweEQwMDY5MTI3 KSwgQk5fREVGKDB4MjE3MDQ4MUMsIDB4QjgxQkRENzYpLAotKyAgICBCTl9ERUYoMHhDRUUyRDdB RiwgMHgxRjYxMjk3MCksIEJOX0RFRigweDUxNUJFN0VELCAweDIzM0JBMTg2KSwKLSsgICAgQk5f REVGKDB4QTA5MEMzQTIsIDB4OTlCMjk2NEYpLCBCTl9ERUYoMHg0RTZCQzA1RCwgMHgyODdDNTk0 NyksCi0rICAgIEJOX0RFRigweDFGQkVDQUE2LCAweDJFOEVGQzE0KSwgQk5fREVGKDB4MDRERThF RjksIDB4REJCQkMyREIpLAotKyAgICBCTl9ERUYoMHgyQUQ0NENFOCwgMHgyNTgzRTlDQSksIEJO X0RFRigweEI2MTUwQkRBLCAweDFBOTQ2ODM0KSwKLSsgICAgQk5fREVGKDB4NkFGNEUyM0MsIDB4 OTlDMzI3MTgpLCBCTl9ERUYoMHhCREJBNUIyNiwgMHg4ODcxOUExMCksCi0rICAgIEJOX0RFRigw eEE3ODdFNkQ3LCAweDFBNzIzQzEyKSwgQk5fREVGKDB4QTkyMTA4MDEsIDB4NEI4MkQxMjApLAot KyAgICBCTl9ERUYoMHhFMEZEMTA4RSwgMHg0M0RCNUJGQyksIEJOX0RFRigweDc0RTVBQjMxLCAw eDA4RTI0RkEwKSwKLSsgICAgQk5fREVGKDB4QkFEOTQ2RTIsIDB4NzcwOTg4QzApLCBCTl9ERUYo MHg3QTYxNUQ2QywgMHhCQkUxMTc1NyksCi0rICAgIEJOX0RFRigweDE3N0IyMDBDLCAweDUyMUYy QjE4KSwgQk5fREVGKDB4M0VDODZBNjQsIDB4RDg3NjAyNzMpLAotKyAgICBCTl9ERUYoMHhEOThB MDg2NCwgMHhGMTJGRkEwNiksIEJOX0RFRigweDFBRDJFRTZCLCAweENFRTNEMjI2KSwKLSsgICAg Qk5fREVGKDB4NEEyNTYxOUQsIDB4MUU4Qzk0RTApLCBCTl9ERUYoMHhEQjA5MzNENywgMHhBQkY1 QUU4QyksCi0rICAgIEJOX0RFRigweEE2RTFFNEM3LCAweEIzOTcwRjg1KSwgQk5fREVGKDB4NUQw NjBDN0QsIDB4OEFFQTcxNTcpLAotKyAgICBCTl9ERUYoMHg1OERCRUYwQSwgMHhFQ0ZCODUwNCks IEJOX0RFRigweERGMUNCQTY0LCAweEE4NTUyMUFCKSwKLSsgICAgQk5fREVGKDB4MDQ1MDdBMzMs IDB4QUQzMzE3MEQpLCBCTl9ERUYoMHg4QUFBQzQyRCwgMHgxNTcyOEU1QSksCi0rICAgIEJOX0RF RigweDk4RkEwNTEwLCAweDE1RDIyNjE4KSwgQk5fREVGKDB4RUE5NTZBRTUsIDB4Mzk5NTQ5N0Mp LAotKyAgICBCTl9ERUYoMHg5NTU4MTcxOCwgMHhERTJCQ0JGNiksIEJOX0RFRigweDZGNEM1MkM5 LCAweEI1QzU1REYwKSwKLSsgICAgQk5fREVGKDB4RUMwN0EyOEYsIDB4OUIyNzgzQTIpLCBCTl9E RUYoMHgxODBFODYwMywgMHhFMzlFNzcyQyksCi0rICAgIEJOX0RFRigweDJFMzZDRTNCLCAweDMy OTA1RTQ2KSwgQk5fREVGKDB4Q0ExODIxN0MsIDB4RjE3NDZDMDgpLAotKyAgICBCTl9ERUYoMHg0 QUJDOTgwNCwgMHg2NzBDMzU0RSksIEJOX0RFRigweDcwOTY5NjZELCAweDlFRDUyOTA3KSwKLSsg ICAgQk5fREVGKDB4MjA4NTUyQkIsIDB4MUM2MkYzNTYpLCBCTl9ERUYoMHhEQ0EzQUQ5NiwgMHg4 MzY1NUQyMyksCi0rICAgIEJOX0RFRigweEZEMjRDRjVGLCAweDY5MTYzRkE4KSwgQk5fREVGKDB4 MUM1NUQzOUEsIDB4OThEQTQ4MzYpLAotKyAgICBCTl9ERUYoMHhBMTYzQkYwNSwgMHhDMjAwN0NC OCksIEJOX0RFRigweEVDRTQ1QjNELCAweDQ5Mjg2NjUxKSwKLSsgICAgQk5fREVGKDB4N0M0QjFG RTYsIDB4QUU5RjI0MTEpLCBCTl9ERUYoMHg1QTg5OUZBNSwgMHhFRTM4NkJGQiksCi0rICAgIEJO X0RFRigweEY0MDZCN0VELCAweDBCRkY1Q0I2KSwgQk5fREVGKDB4QTYzN0VENkIsIDB4RjQ0QzQy RTkpLAotKyAgICBCTl9ERUYoMHg2MjVFN0VDNiwgMHhFNDg1QjU3NiksIEJOX0RFRigweDZENTFD MjQ1LCAweDRGRTEzNTZEKSwKLSsgICAgQk5fREVGKDB4RjI1RjE0MzcsIDB4MzAyQjBBNkQpLCBC Tl9ERUYoMHhDRDNBNDMxQiwgMHhFRjk1MTlCMyksCi0rICAgIEJOX0RFRigweDhFMzQwNERELCAw eDUxNEEwODc5KSwgQk5fREVGKDB4M0IxMzlCMjIsIDB4MDIwQkJFQTYpLAotKyAgICBCTl9ERUYo MHg4QTY3Q0M3NCwgMHgyOTAyNEUwOCksIEJOX0RFRigweDgwREMxQ0QxLCAweEM0QzY2MjhCKSwK LSsgICAgQk5fREVGKDB4MjE2OEMyMzQsIDB4QzkwRkRBQTIpLCBCTl9ERUYoMHhGRkZGRkZGRiwg MHhGRkZGRkZGRikKLSt9OwotKy8qIHEgPSAocCAtIDEpIC8gMiAqLwotK3N0YXRpYyBjb25zdCBC Tl9VTE9ORyBtb2RwXzQwOTZfcVtdID0gewotKyAgICBCTl9ERUYoMHhGRkZGRkZGRiwgIDB4RkZG RkZGRkYpLCBCTl9ERUYoMHg5QTAzMThDQywgIDB4QTZGQTFBRTQpLAotKyAgICBCTl9ERUYoMHg0 ODUzNjA0NywgIDB4QzM3RkRCRUUpLCBCTl9ERUYoMHg0NkM3RUVFMCwgIDB4QzlEQTc1NEMpLAot KyAgICBCTl9ERUYoMHhFQUQ4MkQ1NCwgIDB4NjgwMzQ4OTMpLCBCTl9ERUYoMHgxMEI4MjQwRSwg IDB4REMwREVFQkIpLAotKyAgICBCTl9ERUYoMHg2NzcxNkJENywgIDB4OEZCMDk0QjgpLCBCTl9E RUYoMHgyOEFERjNGNiwgIDB4MTE5REQwQzMpLAotKyAgICBCTl9ERUYoMHhEMDQ4NjFEMSwgIDB4 Q0NEOTRCMjcpLCBCTl9ERUYoMHhBNzM1RTAyRSwgIDB4MTQzRTJDQTMpLAotKyAgICBCTl9ERUYo MHgwRkRGNjU1MywgIDB4OTc0NzdFMEEpLCBCTl9ERUYoMHg4MjZGNDc3QywgIDB4NkREREUxNkQp LAotKyAgICBCTl9ERUYoMHgxNTZBMjY3NCwgIDB4MTJDMUY0RTUpLCBCTl9ERUYoMHg1QjBBODVF RCwgIDB4MEQ0QTM0MUEpLAotKyAgICBCTl9ERUYoMHgzNTdBNzExRSwgIDB4NENFMTkzOEMpLCBC Tl9ERUYoMHg1RUREMkQ5MywgIDB4QzQzOENEMDgpLAotKyAgICBCTl9ERUYoMHg1M0MzRjM2Qiwg IDB4OEQzOTFFMDkpLCBCTl9ERUYoMHg1NDkwODQwMCwgIDB4MjVDMTY4OTApLAotKyAgICBCTl9E RUYoMHg3MDdFODg0NywgIDB4QTFFREFERkUpLCBCTl9ERUYoMHgzQTcyRDU5OCwgIDB4MDQ3MTI3 RDApLAotKyAgICBCTl9ERUYoMHg1RDZDQTM3MSwgIDB4M0I4NEM0NjApLCBCTl9ERUYoMHhCRDMw QUVCNiwgIDB4NURGMDhCQUIpLAotKyAgICBCTl9ERUYoMHgwQkJEOTAwNiwgIDB4MjkwRjk1OEMp LCBCTl9ERUYoMHg5RjY0MzUzMiwgIDB4NkMzQjAxMzkpLAotKyAgICBCTl9ERUYoMHg2Q0M1MDQz MiwgIDB4Rjg5N0ZEMDMpLCBCTl9ERUYoMHgwRDY5NzczNSwgIDB4RTc3MUU5MTMpLAotKyAgICBC Tl9ERUYoMHgyNTEyQjBDRSwgIDB4OEY0NjRBNzApLCBCTl9ERUYoMHg2RDg0OTlFQiwgIDB4RDVG QUQ3NDYpLAotKyAgICBCTl9ERUYoMHhEMzcwRjI2MywgIDB4RDlDQjg3QzIpLCBCTl9ERUYoMHhB RTgzMDYzRSwgIDB4NDU3NTM4QUIpLAotKyAgICBCTl9ERUYoMHgyQzZERjc4NSwgIDB4NzY3REMy ODIpLCBCTl9ERUYoMHhFRjhFNUQzMiwgIDB4RDQyQTkwRDUpLAotKyAgICBCTl9ERUYoMHg4MjI4 M0QxOSwgIDB4RDY5OThCODYpLCBCTl9ERUYoMHg0NTU1NjIxNiwgIDB4MEFCOTQ3MkQpLAotKyAg ICBCTl9ERUYoMHg0QzdEMDI4OCwgIDB4OEFFOTEzMEMpLCBCTl9ERUYoMHg3NTRBQjU3MiwgIDB4 MUNDQUE0QkUpLAotKyAgICBCTl9ERUYoMHg0QUFDMEI4QywgIDB4RUYxNUU1RkIpLCBCTl9ERUYo MHgzN0E2Mjk2NCwgIDB4REFFMkFFRjgpLAotKyAgICBCTl9ERUYoMHg3NjAzRDE0NywgIDB4Q0Q5 M0MxRDEpLCBCTl9ERUYoMHgwQzA3NDMwMSwgIDB4RjFDRjNCOTYpLAotKyAgICBCTl9ERUYoMHgx NzFCNjcxRCwgIDB4MTk0ODJGMjMpLCBCTl9ERUYoMHg2NTBDMTBCRSwgIDB4NzhCQTM2MDQpLAot KyAgICBCTl9ERUYoMHgyNTVFNEMwMiwgIDB4QjM4NjFBQTcpLCBCTl9ERUYoMHhCODRCNEIzNiwg IDB4Q0Y2QTk0ODMpLAotKyAgICBCTl9ERUYoMHgxMDQyQTk1RCwgIDB4MEUzMTc5QUIpLCBCTl9E RUYoMHhFRTUxRDZDQiwgIDB4QzFCMkFFOTEpLAotKyAgICBCTl9ERUYoMHg3RTkyNjdBRiwgIDB4 MzQ4QjFGRDQpLCBCTl9ERUYoMHgwRTJBRTlDRCwgIDB4Q0M2RDI0MUIpLAotKyAgICBCTl9ERUYo MHg1MEIxREY4MiwgIDB4RTEwMDNFNUMpLCBCTl9ERUYoMHhGNjcyMkQ5RSwgIDB4MjQ5NDMzMjgp LAotKyAgICBCTl9ERUYoMHhCRTI1OEZGMywgIDB4RDc0RjkyMDgpLCBCTl9ERUYoMHhBRDQ0Q0ZE MiwgIDB4RjcxQzM1RkQpLAotKyAgICBCTl9ERUYoMHg3QTAzNUJGNiwgIDB4ODVGRkFFNUIpLCBC Tl9ERUYoMHhEMzFCRjZCNSwgIDB4N0EyNjIxNzQpLAotKyAgICBCTl9ERUYoMHgzMTJGM0Y2Mywg IDB4RjI0MkRBQkIpLCBCTl9ERUYoMHhCNkE4RTEyMiwgIDB4QTdGMDlBQjYpLAotKyAgICBCTl9E RUYoMHhGOTJGOEExQiwgIDB4OTgxNTg1MzYpLCBCTl9ERUYoMHhFNjlEMjE4RCwgIDB4RjdDQThD RDkpLAotKyAgICBCTl9ERUYoMHhDNzFBMDI2RSwgIDB4MjhBNTA0M0MpLCBCTl9ERUYoMHgxRDg5 Q0Q5MSwgIDB4MDEwNURGNTMpLAotKyAgICBCTl9ERUYoMHg0NTMzRTYzQSwgIDB4OTQ4MTI3MDQp LCBCTl9ERUYoMHhDMDZFMEU2OCwgIDB4NjI2MzMxNDUpLAotKyAgICBCTl9ERUYoMHgxMEI0NjEx QSwgIDB4RTQ4N0VENTEpLCBCTl9ERUYoMHhGRkZGRkZGRiwgIDB4N0ZGRkZGRkYpLAotIH07Ci0g Ci0tc3RhdGljIGNvbnN0IEJOX1VMT05HIGZmZGhlNjE0NF9wW10gPSB7Ci0tICAgIDB4RkZGRkZG RkZGRkZGRkZGRlVMTCwgMHhBNDBFMzI5Q0QwRTQwRTY1VUxMLCAweEE0MUQ1NzBENzkzOERBRDRV TEwsCi0tICAgIDB4NjJBNjk1MjZENDMxNjFDMVVMTCwgMHgzRkRENEE4RTlBREIxRTY5VUxMLCAw eDVCM0I3MUY5REM2QjgwRDZVTEwsCi0tICAgIDB4RUM5RDE4MTBDNjI3MkIwNFVMTCwgMHg4Q0NG MkRENUNBQ0VGNDAzVUxMLCAweEU0OUY1MjM1Qzk1QjkxMTdVTEwsCi0tICAgIDB4NTA1REM4MkRC ODU0MzM4QVVMTCwgMHg2MjI5MkMzMTE1NjJBODQ2VUxMLCAweEQ3MkIwMzc0NkFFNzdGNUVVTEws Ci0tICAgIDB4RjlDOTA5MUI0NjJENTM4Q1VMTCwgMHgwQUU4REI1ODQ3QTY3Q0JFVUxMLCAweEIz QTczOUMxMjI2MTE2ODJVTEwsCi0tICAgIDB4RUVBQUMwMjMyQTI4MUJGNlVMTCwgMHg5NEM2NjUx RTc3Q0FGOTkyVUxMLCAweDc2M0U0RTRCOTRCMkJCQzFVTEwsCi0tICAgIDB4NTg3RTM4REEwMDc3 RDlCNFVMTCwgMHg3RkIyOUY4QzE4MzAyM0MzVUxMLCAweDBBQkVDMUZGRjlFM0EyNkVVTEwsCi0t ICAgIDB4QTAwRUYwOTIzNTA1MTFFM1VMTCwgMHhCODU1MzIyRURCNjM0MEQ4VUxMLCAweEE1MjQ3 MUY3QTlBOTY5MTBVTEwsCi0tICAgIDB4Mzg4MTQ3RkI0Q0ZEQjQ3N1VMTCwgMHg5QjFGNUMzRTRF NDYwNDFGVUxMLCAweENEQUQwNjU3RkNDRkVDNzFVTEwsCi0tICAgIDB4QjM4RThDMzM0QzcwMUMz QVVMTCwgMHg5MTdCREQ2NEIxQzBGRDRDVUxMLCAweDNCQjQ1NDMyOUI3NjI0QzhVTEwsCi0tICAg IDB4MjNCQTQ0NDJDQUY1M0VBNlVMTCwgMHg0RTY3N0QyQzM4NTMyQTNBVUxMLCAweDBCRkQ2NEI2 NDUwMzZDN0FVTEwsCi0tICAgIDB4QzY4QTAwN0U1RTBERDkwMlVMTCwgMHg0REI1QTg1MUY0NDE4 MkUxVUxMLCAweDhFQzlCNTVBN0Y4OEE0NkJVTEwsCi0tICAgIDB4MEE4MjkxQ0RDRUM5N0RDRlVM TCwgMHgyQTRFQ0VBOUY5OEQwQUNDVUxMLCAweDFBMURCOTNENzE0MDAwM0NVTEwsCi0tICAgIDB4 MDkyOTk5QTMzM0NCOEI3QVVMTCwgMHg2REM3NzhGOTcxQUQwMDM4VUxMLCAweEE5MDc2MDBBOTE4 MTMwQzRVTEwsCi0tICAgIDB4RUQ2QTFFMDEyRDlFNjgzMlVMTCwgMHg3MTM1Qzg4NkVGQjQzMThB VUxMLCAweDg3RjU1QkE1N0UzMUNDN0FVTEwsCi0tICAgIDB4Nzc2M0NGMUQ1NTAzNDAwNFVMTCwg MHhBQzdENUY0MkQ2OUY2RDE4VUxMLCAweDc5MzBFOUU0RTU4ODU3QjZVTEwsCi0tICAgIDB4NkU2 RjUyQzMxNjRERjRGQlVMTCwgMHgyNUU0MUQyQjY2OUUxRUYxVUxMLCAweDNDMUIyMEVFM0ZENTlE N0NVTEwsCi0tICAgIDB4MEFCQ0QwNkJGQTUzRERFRlVMTCwgMHgxREJGOUE0MkQ1QzQ0ODRFVUxM LCAweEFCQzUyMTk3OUIwREVBREFVTEwsCi0tICAgIDB4RTg2RDJCQzUyMjM2M0EwRFVMTCwgMHg1 Q0FFODJBQjlDOURGNjlFVUxMLCAweDY0RjJFMjFFNzFGNTRCRkZVTEwsCi0tICAgIDB4RjRGRDQ0 NTJFMkQ3NEREM1VMTCwgMHhCNDEzMEM5M0JDNDM3OTQ0VUxMLCAweEFFRkUxMzA5ODUxMzkyNzBV TEwsCi0tICAgIDB4NTk4Q0IwRkFDMTg2RDkxQ1VMTCwgMHg3QUQ5MUQyNjkxRjdGN0VFVUxMLCAw eDYxQjQ2RkM5RDZFNkM5MDdVTEwsCi0tICAgIDB4QkMzNEY0REVGOTlDMDIzOFVMTCwgMHhERTM1 NUIzQjY1MTkwMzVCVUxMLCAweDg4NkI0MjM4NjExRkNGRENVTEwsCi0tICAgIDB4QzZGMzRBMjZD MUIyRUZGQVVMTCwgMHhDNThFRjE4MzdEMTY4M0IyVUxMLCAweDNCQjVGQ0JDMkVDMjIwMDVVTEws Ci0tICAgIDB4QzNGRTNCMUI0QzZGQUQ3M1VMTCwgMHg4RTRGMTIzMkVFRjI4MTgzVUxMLCAweDkx NzJGRTlDRTk4NTgzRkZVTEwsCi0tICAgIDB4QzAzNDA0Q0QyODM0MkY2MVVMTCwgMHg5RTAyRkNF MUNERjdFMkVDVUxMLCAweDBCMDdBN0M4RUUwQTZENzBVTEwsCi0tICAgIDB4QUU1NkVERTc2Mzcy QkIxOVVMTCwgMHgxRDRGNDJBM0RFMzk0REY0VUxMLCAweEI5NkFEQUI3NjBEN0Y0NjhVTEwsCi0t ICAgIDB4RDEwOEE5NEJCMkM4RTNGQlVMTCwgMHhCQzBBQjE4MkIzMjRGQjYxVUxMLCAweDMwQUND QTRGNDgzQTc5N0FVTEwsCi0tICAgIDB4MURGMTU4QTEzNkFERTczNVVMTCwgMHhFMkE2ODlEQUYz RUZFODcyVUxMLCAweDk4NEYwQzcwRTBFNjhCNzdVTEwsCi0tICAgIDB4QjU1NzEzNUU3RjU3Qzkz NVVMTCwgMHg4NTYzNjU1NTNERUQxQUYzVUxMLCAweDI0MzNGNTFGNUYwNjZFRDBVTEwsCi0tICAg IDB4RDNERjFFRDVENUZENjU2MVVMTCwgMHhGNjgxQjIwMkFFQzQ2MTdBVUxMLCAweDdEMkZFMzYz NjMwQzc1RDhVTEwsCi0tICAgIDB4Q0M5MzlEQ0UyNDlCM0VGOVVMTCwgMHhBOUUxMzY0MTE0NjQz M0ZCVUxMLCAweEQ4QjlDNTgzQ0UyRDM2OTVVTEwsCi0tICAgIDB4QUZEQzU2MjAyNzNEM0NGMVVM TCwgMHhBREY4NTQ1OEEyQkI0QTlBVUxMLCAweEZGRkZGRkZGRkZGRkZGRkZVTEwKLSsvKi0KLSsg KiAiNjE0NC1iaXQgTU9EUCBHcm91cCIgZnJvbSBSRkMzNTI2LCBTZWN0aW9uIDYuCi0rICoKLSsg KiBUaGUgcHJpbWUgaXM6IDJeNjE0NCAtIDJeNjA4MCAtIDEgKyAyXjY0ICogeyBbMl42MDE0IHBp XSArIDkyOTQ4NCB9Ci0rICoKLSsgKiBSRkMzNTI2IHNwZWNpZmllcyBhIGdlbmVyYXRvciBvZiAy LgotKyAqLwotK3N0YXRpYyBjb25zdCBCTl9VTE9ORyBtb2RwXzYxNDRfcFtdID0gewotKyAgICBC Tl9ERUYoMHhGRkZGRkZGRiwgMHhGRkZGRkZGRiksIEJOX0RFRigweDZEQ0M0MDI0LCAweEU2OTRG OTFFKSwKLSsgICAgQk5fREVGKDB4MEI3NDc0RDYsIDB4MTJCRjJENUIpLCBCTl9ERUYoMHgzRjQ4 NjBFRSwgMHgwNDNFOEY2NiksCi0rICAgIEJOX0RFRigweDZFM0MwNDY4LCAweDM4N0ZFOEQ3KSwg Qk5fREVGKDB4MkVGMjk2MzIsIDB4REE1NkM5RUMpLAotKyAgICBCTl9ERUYoMHhBMzEzRDU1Qywg MHhFQjE5Q0NCMSksIEJOX0RFRigweDhBMUZCRkYwLCAweEY1NTBBQTNEKSwKLSsgICAgQk5fREVG KDB4QjdDNURBNzYsIDB4MDZBMUQ1OEIpLCBCTl9ERUYoMHhGMjlCRTMyOCwgMHhBNzk3MTVFRSks Ci0rICAgIEJOX0RFRigweDBGODAzN0UwLCAweDE0Q0M1RUQyKSwgQk5fREVGKDB4QkY0OEUxRDgs IDB4Q0M4RjZEN0UpLAotKyAgICBCTl9ERUYoMHgyQjQxNTRBQSwgMHg0QkQ0MDdCMiksIEJOX0RF RigweEZGNTg1QUM1LCAweDBGMUQ0NUI3KSwKLSsgICAgQk5fREVGKDB4MzZDQzg4QkUsIDB4MjNB OTdBN0UpLCBCTl9ERUYoMHhCRUM3RThGMywgMHg1OUU3Qzk3RiksCi0rICAgIEJOX0RFRigweDkw MEIxQzlFLCAweEI1QTg0MDMxKSwgQk5fREVGKDB4NDY5ODBDODIsIDB4RDU1RTcwMkYpLAotKyAg ICBCTl9ERUYoMHg2RTc0RkVGNiwgMHhGNDgyRDdDRSksIEJOX0RFRigweEQxNzIxRDAzLCAweEYw MzJFQTE1KSwKLSsgICAgQk5fREVGKDB4QzY0QjkyRUMsIDB4NTk4M0NBMDEpLCBCTl9ERUYoMHgz NzhDRDJCRiwgMHg2RkI4RjQwMSksCi0rICAgIEJOX0RFRigweDJCRDdBRjQyLCAweDMzMjA1MTUx KSwgQk5fREVGKDB4RTZDQzI1NEIsIDB4REI3RjE0NDcpLAotKyAgICBCTl9ERUYoMHhDRUQ0QkIx QiwgMHg0NENFNkNCQSksIEJOX0RFRigweENGOUIxNEVELCAweERBM0VEQkVCKSwKLSsgICAgQk5f REVGKDB4ODY1QTg5MTgsIDB4MTc5NzI3QjApLCBCTl9ERUYoMHg5MDI3RDgzMSwgMHhCMDZBNTNF RCksCi0rICAgIEJOX0RFRigweDQxMzAwMUFFLCAweEU1REIzODJGKSwgQk5fREVGKDB4QUQ5RTUz MEUsIDB4RjhGRjk0MDYpLAotKyAgICBCTl9ERUYoMHgzREJBMzdCRCwgMHhDOTc1MUU3NiksIEJO X0RFRigweDYwMjY0NkRFLCAweEMxRDREQ0IyKSwKLSsgICAgQk5fREVGKDB4RDI3QzcwMjYsIDB4 MzZDM0ZBQjQpLCBCTl9ERUYoMHgzNDAyODQ5MiwgMHg0REY0MzVDOSksCi0rICAgIEJOX0RFRigw eDkwQTZDMDhGLCAweDg2RkZCN0RDKSwgQk5fREVGKDB4OEQ4RkREQzEsIDB4OTNCNEVBOTgpLAot KyAgICBCTl9ERUYoMHhENUIwNUFBOSwgMHhEMDA2OTEyNyksIEJOX0RFRigweDIxNzA0ODFDLCAw eEI4MUJERDc2KSwKLSsgICAgQk5fREVGKDB4Q0VFMkQ3QUYsIDB4MUY2MTI5NzApLCBCTl9ERUYo MHg1MTVCRTdFRCwgMHgyMzNCQTE4NiksCi0rICAgIEJOX0RFRigweEEwOTBDM0EyLCAweDk5QjI5 NjRGKSwgQk5fREVGKDB4NEU2QkMwNUQsIDB4Mjg3QzU5NDcpLAotKyAgICBCTl9ERUYoMHgxRkJF Q0FBNiwgMHgyRThFRkMxNCksIEJOX0RFRigweDA0REU4RUY5LCAweERCQkJDMkRCKSwKLSsgICAg Qk5fREVGKDB4MkFENDRDRTgsIDB4MjU4M0U5Q0EpLCBCTl9ERUYoMHhCNjE1MEJEQSwgMHgxQTk0 NjgzNCksCi0rICAgIEJOX0RFRigweDZBRjRFMjNDLCAweDk5QzMyNzE4KSwgQk5fREVGKDB4QkRC QTVCMjYsIDB4ODg3MTlBMTApLAotKyAgICBCTl9ERUYoMHhBNzg3RTZENywgMHgxQTcyM0MxMiks IEJOX0RFRigweEE5MjEwODAxLCAweDRCODJEMTIwKSwKLSsgICAgQk5fREVGKDB4RTBGRDEwOEUs IDB4NDNEQjVCRkMpLCBCTl9ERUYoMHg3NEU1QUIzMSwgMHgwOEUyNEZBMCksCi0rICAgIEJOX0RF RigweEJBRDk0NkUyLCAweDc3MDk4OEMwKSwgQk5fREVGKDB4N0E2MTVENkMsIDB4QkJFMTE3NTcp LAotKyAgICBCTl9ERUYoMHgxNzdCMjAwQywgMHg1MjFGMkIxOCksIEJOX0RFRigweDNFQzg2QTY0 LCAweEQ4NzYwMjczKSwKLSsgICAgQk5fREVGKDB4RDk4QTA4NjQsIDB4RjEyRkZBMDYpLCBCTl9E RUYoMHgxQUQyRUU2QiwgMHhDRUUzRDIyNiksCi0rICAgIEJOX0RFRigweDRBMjU2MTlELCAweDFF OEM5NEUwKSwgQk5fREVGKDB4REIwOTMzRDcsIDB4QUJGNUFFOEMpLAotKyAgICBCTl9ERUYoMHhB NkUxRTRDNywgMHhCMzk3MEY4NSksIEJOX0RFRigweDVEMDYwQzdELCAweDhBRUE3MTU3KSwKLSsg ICAgQk5fREVGKDB4NThEQkVGMEEsIDB4RUNGQjg1MDQpLCBCTl9ERUYoMHhERjFDQkE2NCwgMHhB ODU1MjFBQiksCi0rICAgIEJOX0RFRigweDA0NTA3QTMzLCAweEFEMzMxNzBEKSwgQk5fREVGKDB4 OEFBQUM0MkQsIDB4MTU3MjhFNUEpLAotKyAgICBCTl9ERUYoMHg5OEZBMDUxMCwgMHgxNUQyMjYx OCksIEJOX0RFRigweEVBOTU2QUU1LCAweDM5OTU0OTdDKSwKLSsgICAgQk5fREVGKDB4OTU1ODE3 MTgsIDB4REUyQkNCRjYpLCBCTl9ERUYoMHg2RjRDNTJDOSwgMHhCNUM1NURGMCksCi0rICAgIEJO X0RFRigweEVDMDdBMjhGLCAweDlCMjc4M0EyKSwgQk5fREVGKDB4MTgwRTg2MDMsIDB4RTM5RTc3 MkMpLAotKyAgICBCTl9ERUYoMHgyRTM2Q0UzQiwgMHgzMjkwNUU0NiksIEJOX0RFRigweENBMTgy MTdDLCAweEYxNzQ2QzA4KSwKLSsgICAgQk5fREVGKDB4NEFCQzk4MDQsIDB4NjcwQzM1NEUpLCBC Tl9ERUYoMHg3MDk2OTY2RCwgMHg5RUQ1MjkwNyksCi0rICAgIEJOX0RFRigweDIwODU1MkJCLCAw eDFDNjJGMzU2KSwgQk5fREVGKDB4RENBM0FEOTYsIDB4ODM2NTVEMjMpLAotKyAgICBCTl9ERUYo MHhGRDI0Q0Y1RiwgMHg2OTE2M0ZBOCksIEJOX0RFRigweDFDNTVEMzlBLCAweDk4REE0ODM2KSwK LSsgICAgQk5fREVGKDB4QTE2M0JGMDUsIDB4QzIwMDdDQjgpLCBCTl9ERUYoMHhFQ0U0NUIzRCwg MHg0OTI4NjY1MSksCi0rICAgIEJOX0RFRigweDdDNEIxRkU2LCAweEFFOUYyNDExKSwgQk5fREVG KDB4NUE4OTlGQTUsIDB4RUUzODZCRkIpLAotKyAgICBCTl9ERUYoMHhGNDA2QjdFRCwgMHgwQkZG NUNCNiksIEJOX0RFRigweEE2MzdFRDZCLCAweEY0NEM0MkU5KSwKLSsgICAgQk5fREVGKDB4NjI1 RTdFQzYsIDB4RTQ4NUI1NzYpLCBCTl9ERUYoMHg2RDUxQzI0NSwgMHg0RkUxMzU2RCksCi0rICAg IEJOX0RFRigweEYyNUYxNDM3LCAweDMwMkIwQTZEKSwgQk5fREVGKDB4Q0QzQTQzMUIsIDB4RUY5 NTE5QjMpLAotKyAgICBCTl9ERUYoMHg4RTM0MDRERCwgMHg1MTRBMDg3OSksIEJOX0RFRigweDNC MTM5QjIyLCAweDAyMEJCRUE2KSwKLSsgICAgQk5fREVGKDB4OEE2N0NDNzQsIDB4MjkwMjRFMDgp LCBCTl9ERUYoMHg4MERDMUNEMSwgMHhDNEM2NjI4QiksCi0rICAgIEJOX0RFRigweDIxNjhDMjM0 LCAweEM5MEZEQUEyKSwgQk5fREVGKDB4RkZGRkZGRkYsIDB4RkZGRkZGRkYpCi0rfTsKLSsvKiBx ID0gKHAgLSAxKSAvIDIgKi8KLStzdGF0aWMgY29uc3QgQk5fVUxPTkcgbW9kcF82MTQ0X3FbXSA9 IHsKLSsgICAgQk5fREVGKDB4RkZGRkZGRkYsICAweDdGRkZGRkZGKSwgQk5fREVGKDB4MzZFNjIw MTIsICAweDczNEE3QzhGKSwKLSsgICAgQk5fREVGKDB4ODVCQTNBNkIsICAweDA5NUY5NkFEKSwg Qk5fREVGKDB4MUZBNDMwNzcsICAweDAyMUY0N0IzKSwKLSsgICAgQk5fREVGKDB4QjcxRTAyMzQs ICAweDFDM0ZGNDZCKSwgQk5fREVGKDB4MTc3OTRCMTksICAweDZEMkI2NEY2KSwKLSsgICAgQk5f REVGKDB4RDE4OUVBQUUsICAweDc1OENFNjU4KSwgQk5fREVGKDB4QzUwRkRGRjgsICAweDdBQTg1 NTFFKSwKLSsgICAgQk5fREVGKDB4REJFMkVEM0IsICAweDAzNTBFQUM1KSwgQk5fREVGKDB4Nzk0 REYxOTQsICAweDUzQ0I4QUY3KSwKLSsgICAgQk5fREVGKDB4MDdDMDFCRjAsICAweDBBNjYyRjY5 KSwgQk5fREVGKDB4NUZBNDcwRUMsICAweDY2NDdCNkJGKSwKLSsgICAgQk5fREVGKDB4MTVBMEFB NTUsICAweEE1RUEwM0Q5KSwgQk5fREVGKDB4RkZBQzJENjIsICAweDA3OEVBMkRCKSwKLSsgICAg Qk5fREVGKDB4MUI2NjQ0NUYsICAweDkxRDRCRDNGKSwgQk5fREVGKDB4REY2M0Y0NzksICAweDJD RjNFNEJGKSwKLSsgICAgQk5fREVGKDB4QzgwNThFNEYsICAweDVBRDQyMDE4KSwgQk5fREVGKDB4 QTM0QzA2NDEsICAweDZBQUYzODE3KSwKLSsgICAgQk5fREVGKDB4MzczQTdGN0IsICAweEZBNDE2 QkU3KSwgQk5fREVGKDB4RThCOTBFODEsICAweDc4MTk3NTBBKSwKLSsgICAgQk5fREVGKDB4RTMy NUM5NzYsICAweEFDQzFFNTAwKSwgQk5fREVGKDB4OUJDNjY5NUYsICAweDM3REM3QTAwKSwKLSsg ICAgQk5fREVGKDB4OTVFQkQ3QTEsICAweDk5OTAyOEE4KSwgQk5fREVGKDB4RjM2NjEyQTUsICAw eEVEQkY4QTIzKSwKLSsgICAgQk5fREVGKDB4Njc2QTVEOEQsICAweEEyNjczNjVEKSwgQk5fREVG KDB4RTdDRDhBNzYsICAweDZEMUY2REY1KSwKLSsgICAgQk5fREVGKDB4NDMyRDQ0OEMsICAweDhC Q0I5M0Q4KSwgQk5fREVGKDB4QzgxM0VDMTgsICAweDU4MzUyOUY2KSwKLSsgICAgQk5fREVGKDB4 QTA5ODAwRDcsICAweDcyRUQ5QzE3KSwgQk5fREVGKDB4NTZDRjI5ODcsICAweEZDN0ZDQTAzKSwK LSsgICAgQk5fREVGKDB4MUVERDFCREUsICAweDY0QkE4RjNCKSwgQk5fREVGKDB4MzAxMzIzNkYs ICAweDYwRUE2RTU5KSwKLSsgICAgQk5fREVGKDB4NjkzRTM4MTMsICAweDFCNjFGRDVBKSwgQk5f REVGKDB4OUEwMTQyNDksICAweEE2RkExQUU0KSwKLSsgICAgQk5fREVGKDB4NDg1MzYwNDcsICAw eEMzN0ZEQkVFKSwgQk5fREVGKDB4NDZDN0VFRTAsICAweEM5REE3NTRDKSwKLSsgICAgQk5fREVG KDB4RUFEODJENTQsICAweDY4MDM0ODkzKSwgQk5fREVGKDB4MTBCODI0MEUsICAweERDMERFRUJC KSwKLSsgICAgQk5fREVGKDB4Njc3MTZCRDcsICAweDhGQjA5NEI4KSwgQk5fREVGKDB4MjhBREYz RjYsICAweDExOUREMEMzKSwKLSsgICAgQk5fREVGKDB4RDA0ODYxRDEsICAweENDRDk0QjI3KSwg Qk5fREVGKDB4QTczNUUwMkUsICAweDE0M0UyQ0EzKSwKLSsgICAgQk5fREVGKDB4MEZERjY1NTMs ICAweDk3NDc3RTBBKSwgQk5fREVGKDB4ODI2RjQ3N0MsICAweDZERERFMTZEKSwKLSsgICAgQk5f REVGKDB4MTU2QTI2NzQsICAweDEyQzFGNEU1KSwgQk5fREVGKDB4NUIwQTg1RUQsICAweDBENEEz NDFBKSwKLSsgICAgQk5fREVGKDB4MzU3QTcxMUUsICAweDRDRTE5MzhDKSwgQk5fREVGKDB4NUVE RDJEOTMsICAweEM0MzhDRDA4KSwKLSsgICAgQk5fREVGKDB4NTNDM0YzNkIsICAweDhEMzkxRTA5 KSwgQk5fREVGKDB4NTQ5MDg0MDAsICAweDI1QzE2ODkwKSwKLSsgICAgQk5fREVGKDB4NzA3RTg4 NDcsICAweEExRURBREZFKSwgQk5fREVGKDB4M0E3MkQ1OTgsICAweDA0NzEyN0QwKSwKLSsgICAg Qk5fREVGKDB4NUQ2Q0EzNzEsICAweDNCODRDNDYwKSwgQk5fREVGKDB4QkQzMEFFQjYsICAweDVE RjA4QkFCKSwKLSsgICAgQk5fREVGKDB4MEJCRDkwMDYsICAweDI5MEY5NThDKSwgQk5fREVGKDB4 OUY2NDM1MzIsICAweDZDM0IwMTM5KSwKLSsgICAgQk5fREVGKDB4NkNDNTA0MzIsICAweEY4OTdG RDAzKSwgQk5fREVGKDB4MEQ2OTc3MzUsICAweEU3NzFFOTEzKSwKLSsgICAgQk5fREVGKDB4MjUx MkIwQ0UsICAweDhGNDY0QTcwKSwgQk5fREVGKDB4NkQ4NDk5RUIsICAweEQ1RkFENzQ2KSwKLSsg ICAgQk5fREVGKDB4RDM3MEYyNjMsICAweEQ5Q0I4N0MyKSwgQk5fREVGKDB4QUU4MzA2M0UsICAw eDQ1NzUzOEFCKSwKLSsgICAgQk5fREVGKDB4MkM2REY3ODUsICAweDc2N0RDMjgyKSwgQk5fREVG KDB4RUY4RTVEMzIsICAweEQ0MkE5MEQ1KSwKLSsgICAgQk5fREVGKDB4ODIyODNEMTksICAweEQ2 OTk4Qjg2KSwgQk5fREVGKDB4NDU1NTYyMTYsICAweDBBQjk0NzJEKSwKLSsgICAgQk5fREVGKDB4 NEM3RDAyODgsICAweDhBRTkxMzBDKSwgQk5fREVGKDB4NzU0QUI1NzIsICAweDFDQ0FBNEJFKSwK LSsgICAgQk5fREVGKDB4NEFBQzBCOEMsICAweEVGMTVFNUZCKSwgQk5fREVGKDB4MzdBNjI5NjQs ICAweERBRTJBRUY4KSwKLSsgICAgQk5fREVGKDB4NzYwM0QxNDcsICAweENEOTNDMUQxKSwgQk5f REVGKDB4MEMwNzQzMDEsICAweEYxQ0YzQjk2KSwKLSsgICAgQk5fREVGKDB4MTcxQjY3MUQsICAw eDE5NDgyRjIzKSwgQk5fREVGKDB4NjUwQzEwQkUsICAweDc4QkEzNjA0KSwKLSsgICAgQk5fREVG KDB4MjU1RTRDMDIsICAweEIzODYxQUE3KSwgQk5fREVGKDB4Qjg0QjRCMzYsICAweENGNkE5NDgz KSwKLSsgICAgQk5fREVGKDB4MTA0MkE5NUQsICAweDBFMzE3OUFCKSwgQk5fREVGKDB4RUU1MUQ2 Q0IsICAweEMxQjJBRTkxKSwKLSsgICAgQk5fREVGKDB4N0U5MjY3QUYsICAweDM0OEIxRkQ0KSwg Qk5fREVGKDB4MEUyQUU5Q0QsICAweENDNkQyNDFCKSwKLSsgICAgQk5fREVGKDB4NTBCMURGODIs ICAweEUxMDAzRTVDKSwgQk5fREVGKDB4RjY3MjJEOUUsICAweDI0OTQzMzI4KSwKLSsgICAgQk5f REVGKDB4QkUyNThGRjMsICAweEQ3NEY5MjA4KSwgQk5fREVGKDB4QUQ0NENGRDIsICAweEY3MUMz NUZEKSwKLSsgICAgQk5fREVGKDB4N0EwMzVCRjYsICAweDg1RkZBRTVCKSwgQk5fREVGKDB4RDMx QkY2QjUsICAweDdBMjYyMTc0KSwKLSsgICAgQk5fREVGKDB4MzEyRjNGNjMsICAweEYyNDJEQUJC KSwgQk5fREVGKDB4QjZBOEUxMjIsICAweEE3RjA5QUI2KSwKLSsgICAgQk5fREVGKDB4RjkyRjhB MUIsICAweDk4MTU4NTM2KSwgQk5fREVGKDB4RTY5RDIxOEQsICAweEY3Q0E4Q0Q5KSwKLSsgICAg Qk5fREVGKDB4QzcxQTAyNkUsICAweDI4QTUwNDNDKSwgQk5fREVGKDB4MUQ4OUNEOTEsICAweDAx MDVERjUzKSwKLSsgICAgQk5fREVGKDB4NDUzM0U2M0EsICAweDk0ODEyNzA0KSwgQk5fREVGKDB4 QzA2RTBFNjgsICAweDYyNjMzMTQ1KSwKLSsgICAgQk5fREVGKDB4MTBCNDYxMUEsICAweEU0ODdF RDUxKSwgQk5fREVGKDB4RkZGRkZGRkYsICAweDdGRkZGRkZGKSwKLSB9OwotIAotLXN0YXRpYyBj b25zdCBCTl9VTE9ORyBmZmRoZTgxOTJfcFtdID0gewotLSAgICAweEZGRkZGRkZGRkZGRkZGRkZV TEwsIDB4RDY4QzhCQjdDNUM2NDI0Q1VMTCwgMHgwMTFFMkE5NDgzOEZGODhDVUxMLAotLSAgICAw eDA4MjJFNTA2QTlGNDYxNEVVTEwsIDB4OTdEMTFENDlGN0E4NDQzRFVMTCwgMHhBNkJCRkRFNTMw Njc3RjBEVUxMLAotLSAgICAweDJGNzQxRUY4QzFGRTg2RkVVTEwsIDB4RkFGQUJFMUM1RDcxQTg3 RVVMTCwgMHhERUQyRkJBQkZCRTU4QTMwVUxMLAotLSAgICAweEI2ODU1REZFNzJCMEE2NkVVTEws IDB4MUVGQzhDRTBCQThBNEZFOFVMTCwgMHg4M0Y4MUQ0QTNGMkZBNDU3VUxMLAotLSAgICAweEEx RkUzMDc1QTU3N0UyMzFVTEwsIDB4RDVCODAxOTQ4OEQ5QzBBMFVMTCwgMHg2MjQ4MTZDREFEOUE5 NUY5VUxMLAotLSAgICAweDk5RTlFMzE2NTBDMTIxN0JVTEwsIDB4NTFBQTY5MUUwRTQyM0NGQ1VM TCwgMHgxQzIxN0U2QzM4MjZFNTJDVUxMLAotLSAgICAweDUxQThBOTMxMDk3MDNGRUVVTEwsIDB4 QkI3MDk5ODc2QTQ2MEU3NFVMTCwgMHg1NDFGQzY4QzlDODZCMDIyVUxMLAotLSAgICAweDU5MTYw Q0MwNDZGRDgyNTFVTEwsIDB4Mjg0NkMwQkEzNUMzNUY1Q1VMTCwgMHg1NDUwNEFDNzhCNzU4Mjgy VUxMLAotLSAgICAweDI5Mzg4ODM5RDJBRjA1RTRVTEwsIDB4Q0IyQzBGMUNDMDFCRDcwMlVMTCwg MHg1NTVCMkY3NDdDOTMyNjY1VUxMLAotLSAgICAweDg2QjYzMTQyQTNBQjg4MjlVTEwsIDB4MEI4 Q0MzQkRGNjRCMTBFRlVMTCwgMHg2ODdGRUI2OUVERDFDQzVFVUxMLAotLSAgICAweEZEQjIzRkNF Qzk1MDlENDNVTEwsIDB4MUU0MjVBMzFEOTUxQUU2NFVMTCwgMHgzNkFEMDA0Q0Y2MDBDODM4VUxM LAotLSAgICAweEE0MEUzMjlDQ0ZGNDZBQUFVTEwsIDB4QTQxRDU3MEQ3OTM4REFENFVMTCwgMHg2 MkE2OTUyNkQ0MzE2MUMxVUxMLAotLSAgICAweDNGREQ0QThFOUFEQjFFNjlVTEwsIDB4NUIzQjcx RjlEQzZCODBENlVMTCwgMHhFQzlEMTgxMEM2MjcyQjA0VUxMLAotLSAgICAweDhDQ0YyREQ1Q0FD RUY0MDNVTEwsIDB4RTQ5RjUyMzVDOTVCOTExN1VMTCwgMHg1MDVEQzgyREI4NTQzMzhBVUxMLAot LSAgICAweDYyMjkyQzMxMTU2MkE4NDZVTEwsIDB4RDcyQjAzNzQ2QUU3N0Y1RVVMTCwgMHhGOUM5 MDkxQjQ2MkQ1MzhDVUxMLAotLSAgICAweDBBRThEQjU4NDdBNjdDQkVVTEwsIDB4QjNBNzM5QzEy MjYxMTY4MlVMTCwgMHhFRUFBQzAyMzJBMjgxQkY2VUxMLAotLSAgICAweDk0QzY2NTFFNzdDQUY5 OTJVTEwsIDB4NzYzRTRFNEI5NEIyQkJDMVVMTCwgMHg1ODdFMzhEQTAwNzdEOUI0VUxMLAotLSAg ICAweDdGQjI5RjhDMTgzMDIzQzNVTEwsIDB4MEFCRUMxRkZGOUUzQTI2RVVMTCwgMHhBMDBFRjA5 MjM1MDUxMUUzVUxMLAotLSAgICAweEI4NTUzMjJFREI2MzQwRDhVTEwsIDB4QTUyNDcxRjdBOUE5 NjkxMFVMTCwgMHgzODgxNDdGQjRDRkRCNDc3VUxMLAotLSAgICAweDlCMUY1QzNFNEU0NjA0MUZV TEwsIDB4Q0RBRDA2NTdGQ0NGRUM3MVVMTCwgMHhCMzhFOEMzMzRDNzAxQzNBVUxMLAotLSAgICAw eDkxN0JERDY0QjFDMEZENENVTEwsIDB4M0JCNDU0MzI5Qjc2MjRDOFVMTCwgMHgyM0JBNDQ0MkNB RjUzRUE2VUxMLAotLSAgICAweDRFNjc3RDJDMzg1MzJBM0FVTEwsIDB4MEJGRDY0QjY0NTAzNkM3 QVVMTCwgMHhDNjhBMDA3RTVFMEREOTAyVUxMLAotLSAgICAweDREQjVBODUxRjQ0MTgyRTFVTEws IDB4OEVDOUI1NUE3Rjg4QTQ2QlVMTCwgMHgwQTgyOTFDRENFQzk3RENGVUxMLAotLSAgICAweDJB NEVDRUE5Rjk4RDBBQ0NVTEwsIDB4MUExREI5M0Q3MTQwMDAzQ1VMTCwgMHgwOTI5OTlBMzMzQ0I4 QjdBVUxMLAotLSAgICAweDZEQzc3OEY5NzFBRDAwMzhVTEwsIDB4QTkwNzYwMEE5MTgxMzBDNFVM TCwgMHhFRDZBMUUwMTJEOUU2ODMyVUxMLAotLSAgICAweDcxMzVDODg2RUZCNDMxOEFVTEwsIDB4 ODdGNTVCQTU3RTMxQ0M3QVVMTCwgMHg3NzYzQ0YxRDU1MDM0MDA0VUxMLAotLSAgICAweEFDN0Q1 RjQyRDY5RjZEMThVTEwsIDB4NzkzMEU5RTRFNTg4NTdCNlVMTCwgMHg2RTZGNTJDMzE2NERGNEZC VUxMLAotLSAgICAweDI1RTQxRDJCNjY5RTFFRjFVTEwsIDB4M0MxQjIwRUUzRkQ1OUQ3Q1VMTCwg MHgwQUJDRDA2QkZBNTNEREVGVUxMLAotLSAgICAweDFEQkY5QTQyRDVDNDQ4NEVVTEwsIDB4QUJD NTIxOTc5QjBERUFEQVVMTCwgMHhFODZEMkJDNTIyMzYzQTBEVUxMLAotLSAgICAweDVDQUU4MkFC OUM5REY2OUVVTEwsIDB4NjRGMkUyMUU3MUY1NEJGRlVMTCwgMHhGNEZENDQ1MkUyRDc0REQzVUxM LAotLSAgICAweEI0MTMwQzkzQkM0Mzc5NDRVTEwsIDB4QUVGRTEzMDk4NTEzOTI3MFVMTCwgMHg1 OThDQjBGQUMxODZEOTFDVUxMLAotLSAgICAweDdBRDkxRDI2OTFGN0Y3RUVVTEwsIDB4NjFCNDZG QzlENkU2QzkwN1VMTCwgMHhCQzM0RjRERUY5OUMwMjM4VUxMLAotLSAgICAweERFMzU1QjNCNjUx OTAzNUJVTEwsIDB4ODg2QjQyMzg2MTFGQ0ZEQ1VMTCwgMHhDNkYzNEEyNkMxQjJFRkZBVUxMLAot LSAgICAweEM1OEVGMTgzN0QxNjgzQjJVTEwsIDB4M0JCNUZDQkMyRUMyMjAwNVVMTCwgMHhDM0ZF M0IxQjRDNkZBRDczVUxMLAotLSAgICAweDhFNEYxMjMyRUVGMjgxODNVTEwsIDB4OTE3MkZFOUNF OTg1ODNGRlVMTCwgMHhDMDM0MDRDRDI4MzQyRjYxVUxMLAotLSAgICAweDlFMDJGQ0UxQ0RGN0Uy RUNVTEwsIDB4MEIwN0E3QzhFRTBBNkQ3MFVMTCwgMHhBRTU2RURFNzYzNzJCQjE5VUxMLAotLSAg ICAweDFENEY0MkEzREUzOTRERjRVTEwsIDB4Qjk2QURBQjc2MEQ3RjQ2OFVMTCwgMHhEMTA4QTk0 QkIyQzhFM0ZCVUxMLAotLSAgICAweEJDMEFCMTgyQjMyNEZCNjFVTEwsIDB4MzBBQ0NBNEY0ODNB Nzk3QVVMTCwgMHgxREYxNThBMTM2QURFNzM1VUxMLAotLSAgICAweEUyQTY4OURBRjNFRkU4NzJV TEwsIDB4OTg0RjBDNzBFMEU2OEI3N1VMTCwgMHhCNTU3MTM1RTdGNTdDOTM1VUxMLAotLSAgICAw eDg1NjM2NTU1M0RFRDFBRjNVTEwsIDB4MjQzM0Y1MUY1RjA2NkVEMFVMTCwgMHhEM0RGMUVENUQ1 RkQ2NTYxVUxMLAotLSAgICAweEY2ODFCMjAyQUVDNDYxN0FVTEwsIDB4N0QyRkUzNjM2MzBDNzVE OFVMTCwgMHhDQzkzOURDRTI0OUIzRUY5VUxMLAotLSAgICAweEE5RTEzNjQxMTQ2NDMzRkJVTEws IDB4RDhCOUM1ODNDRTJEMzY5NVVMTCwgMHhBRkRDNTYyMDI3M0QzQ0YxVUxMLAotLSAgICAweEFE Rjg1NDU4QTJCQjRBOUFVTEwsIDB4RkZGRkZGRkZGRkZGRkZGRlVMTAotKy8qCi0rICogIjgxOTIt Yml0IE1PRFAgR3JvdXAiIGZyb20gUkZDMzUyNiwgU2VjdGlvbiA3LgotKyAqCi0rICogVGhlIHBy aW1lIGlzOiAyXjgxOTIgLSAyXjgxMjggLSAxICsgMl42NCAqIHsgWzJeODA2MiBwaV0gKyA0NzQz MTU4IH0KLSsgKgotKyAqIFJGQzM1MjYgc3BlY2lmaWVzIGEgZ2VuZXJhdG9yIG9mIDIuCi0rICov Ci0rc3RhdGljIGNvbnN0IEJOX1VMT05HIG1vZHBfODE5Ml9wW10gPSB7Ci0rICAgIEJOX0RFRigw eEZGRkZGRkZGLCAweEZGRkZGRkZGKSwgQk5fREVGKDB4OThFREQzREYsIDB4NjBDOTgwREQpLAot KyAgICBCTl9ERUYoMHg4MEI5NkU3MSwgMHhDODFGNTZFOCksIEJOX0RFRigweDc2NTY5NERGLCAw eDlFMzA1MEUyKSwKLSsgICAgQk5fREVGKDB4NTY3N0U5QUEsIDB4OTU1OEU0NDcpLCBCTl9ERUYo MHhGQzAyNkU0NywgMHhDOTE5MERBNiksCi0rICAgIEJOX0RFRigweEQ1RUUzODJCLCAweDg4OUEw MDJFKSwgQk5fREVGKDB4NDgxQzZDRDcsIDB4NDAwOTQzOEIpLAotKyAgICBCTl9ERUYoMHhFQjg3 OUY5MiwgMHgzNTkwNDZGNCksIEJOX0RFRigweDFFQ0ZBMjY4LCAweEZBRjM2QkMzKSwKLSsgICAg Qk5fREVGKDB4N0VFNzRENzMsIDB4QjFENTEwQkQpLCBCTl9ERUYoMHg1REVEN0VBMSwgMHhGOUFC NDgxOSksCi0rICAgIEJOX0RFRigweDA4NDY4NTFELCAweDY0RjMxQ0M1KSwgQk5fREVGKDB4QTAy NTVEQzEsIDB4NDU5N0U4OTkpLAotKyAgICBCTl9ERUYoMHg3NEFCNkEzNiwgMHhERjMxMEVFMCks IEJOX0RFRigweDNGNDRGODJELCAweDZEMkExM0Y4KSwKLSsgICAgQk5fREVGKDB4QjNBMjc4QTYs IDB4MDYyQjNDRjUpLCBCTl9ERUYoMHhFRDVCREQzQSwgMHg3OTY4MzMwMyksCi0rICAgIEJOX0RF RigweEEyQzA4N0U4LCAweEZBOUQ0QjdGKSwgQk5fREVGKDB4MkY4Mzg1REQsIDB4NEJDQkM4ODYp LAotKyAgICBCTl9ERUYoMHg2Q0VBMzA2QiwgMHgzNDczRkM2NCksIEJOX0RFRigweDFBMjNGMEM3 LCAweDEzRUI1N0E4KSwKLSsgICAgQk5fREVGKDB4QTQwMzdDMDcsIDB4MjIyMjJFMDQpLCBCTl9E RUYoMHhGQzg0OEFEOSwgMHhFM0ZEQjhCRSksCi0rICAgIEJOX0RFRigweEUzOUQ2NTJELCAweDIz OEYxNkNCKSwgQk5fREVGKDB4MkJGMUM5NzgsIDB4MzQyM0I0NzQpLAotKyAgICBCTl9ERUYoMHg1 QUU0RjU2OCwgMHgzQUFCNjM5QyksIEJOX0RFRigweDZCQTQyNDY2LCAweDI1NzZGNjkzKSwKLSsg ICAgQk5fREVGKDB4OEFGQzQ3RUQsIDB4NzQxRkE3QkYpLCBCTl9ERUYoMHg4RDlERDMwMCwgMHgz QkM4MzJCNiksCi0rICAgIEJOX0RFRigweDczQjkzMUJBLCAweEQ4QkVDNEQwKSwgQk5fREVGKDB4 QTkzMkRGOEMsIDB4Mzg3NzdDQjYpLAotKyAgICBCTl9ERUYoMHgxMkZFRTVFNCwgMHg3NEEzOTI2 RiksIEJOX0RFRigweDZEQkUxMTU5LCAweEU2OTRGOTFFKSwKLSsgICAgQk5fREVGKDB4MEI3NDc0 RDYsIDB4MTJCRjJENUIpLCBCTl9ERUYoMHgzRjQ4NjBFRSwgMHgwNDNFOEY2NiksCi0rICAgIEJO X0RFRigweDZFM0MwNDY4LCAweDM4N0ZFOEQ3KSwgQk5fREVGKDB4MkVGMjk2MzIsIDB4REE1NkM5 RUMpLAotKyAgICBCTl9ERUYoMHhBMzEzRDU1QywgMHhFQjE5Q0NCMSksIEJOX0RFRigweDhBMUZC RkYwLCAweEY1NTBBQTNEKSwKLSsgICAgQk5fREVGKDB4QjdDNURBNzYsIDB4MDZBMUQ1OEIpLCBC Tl9ERUYoMHhGMjlCRTMyOCwgMHhBNzk3MTVFRSksCi0rICAgIEJOX0RFRigweDBGODAzN0UwLCAw eDE0Q0M1RUQyKSwgQk5fREVGKDB4QkY0OEUxRDgsIDB4Q0M4RjZEN0UpLAotKyAgICBCTl9ERUYo MHgyQjQxNTRBQSwgMHg0QkQ0MDdCMiksIEJOX0RFRigweEZGNTg1QUM1LCAweDBGMUQ0NUI3KSwK LSsgICAgQk5fREVGKDB4MzZDQzg4QkUsIDB4MjNBOTdBN0UpLCBCTl9ERUYoMHhCRUM3RThGMywg MHg1OUU3Qzk3RiksCi0rICAgIEJOX0RFRigweDkwMEIxQzlFLCAweEI1QTg0MDMxKSwgQk5fREVG KDB4NDY5ODBDODIsIDB4RDU1RTcwMkYpLAotKyAgICBCTl9ERUYoMHg2RTc0RkVGNiwgMHhGNDgy RDdDRSksIEJOX0RFRigweEQxNzIxRDAzLCAweEYwMzJFQTE1KSwKLSsgICAgQk5fREVGKDB4QzY0 QjkyRUMsIDB4NTk4M0NBMDEpLCBCTl9ERUYoMHgzNzhDRDJCRiwgMHg2RkI4RjQwMSksCi0rICAg IEJOX0RFRigweDJCRDdBRjQyLCAweDMzMjA1MTUxKSwgQk5fREVGKDB4RTZDQzI1NEIsIDB4REI3 RjE0NDcpLAotKyAgICBCTl9ERUYoMHhDRUQ0QkIxQiwgMHg0NENFNkNCQSksIEJOX0RFRigweENG OUIxNEVELCAweERBM0VEQkVCKSwKLSsgICAgQk5fREVGKDB4ODY1QTg5MTgsIDB4MTc5NzI3QjAp LCBCTl9ERUYoMHg5MDI3RDgzMSwgMHhCMDZBNTNFRCksCi0rICAgIEJOX0RFRigweDQxMzAwMUFF LCAweEU1REIzODJGKSwgQk5fREVGKDB4QUQ5RTUzMEUsIDB4RjhGRjk0MDYpLAotKyAgICBCTl9E RUYoMHgzREJBMzdCRCwgMHhDOTc1MUU3NiksIEJOX0RFRigweDYwMjY0NkRFLCAweEMxRDREQ0Iy KSwKLSsgICAgQk5fREVGKDB4RDI3QzcwMjYsIDB4MzZDM0ZBQjQpLCBCTl9ERUYoMHgzNDAyODQ5 MiwgMHg0REY0MzVDOSksCi0rICAgIEJOX0RFRigweDkwQTZDMDhGLCAweDg2RkZCN0RDKSwgQk5f REVGKDB4OEQ4RkREQzEsIDB4OTNCNEVBOTgpLAotKyAgICBCTl9ERUYoMHhENUIwNUFBOSwgMHhE MDA2OTEyNyksIEJOX0RFRigweDIxNzA0ODFDLCAweEI4MUJERDc2KSwKLSsgICAgQk5fREVGKDB4 Q0VFMkQ3QUYsIDB4MUY2MTI5NzApLCBCTl9ERUYoMHg1MTVCRTdFRCwgMHgyMzNCQTE4NiksCi0r ICAgIEJOX0RFRigweEEwOTBDM0EyLCAweDk5QjI5NjRGKSwgQk5fREVGKDB4NEU2QkMwNUQsIDB4 Mjg3QzU5NDcpLAotKyAgICBCTl9ERUYoMHgxRkJFQ0FBNiwgMHgyRThFRkMxNCksIEJOX0RFRigw eDA0REU4RUY5LCAweERCQkJDMkRCKSwKLSsgICAgQk5fREVGKDB4MkFENDRDRTgsIDB4MjU4M0U5 Q0EpLCBCTl9ERUYoMHhCNjE1MEJEQSwgMHgxQTk0NjgzNCksCi0rICAgIEJOX0RFRigweDZBRjRF MjNDLCAweDk5QzMyNzE4KSwgQk5fREVGKDB4QkRCQTVCMjYsIDB4ODg3MTlBMTApLAotKyAgICBC Tl9ERUYoMHhBNzg3RTZENywgMHgxQTcyM0MxMiksIEJOX0RFRigweEE5MjEwODAxLCAweDRCODJE MTIwKSwKLSsgICAgQk5fREVGKDB4RTBGRDEwOEUsIDB4NDNEQjVCRkMpLCBCTl9ERUYoMHg3NEU1 QUIzMSwgMHgwOEUyNEZBMCksCi0rICAgIEJOX0RFRigweEJBRDk0NkUyLCAweDc3MDk4OEMwKSwg Qk5fREVGKDB4N0E2MTVENkMsIDB4QkJFMTE3NTcpLAotKyAgICBCTl9ERUYoMHgxNzdCMjAwQywg MHg1MjFGMkIxOCksIEJOX0RFRigweDNFQzg2QTY0LCAweEQ4NzYwMjczKSwKLSsgICAgQk5fREVG KDB4RDk4QTA4NjQsIDB4RjEyRkZBMDYpLCBCTl9ERUYoMHgxQUQyRUU2QiwgMHhDRUUzRDIyNiks Ci0rICAgIEJOX0RFRigweDRBMjU2MTlELCAweDFFOEM5NEUwKSwgQk5fREVGKDB4REIwOTMzRDcs IDB4QUJGNUFFOEMpLAotKyAgICBCTl9ERUYoMHhBNkUxRTRDNywgMHhCMzk3MEY4NSksIEJOX0RF RigweDVEMDYwQzdELCAweDhBRUE3MTU3KSwKLSsgICAgQk5fREVGKDB4NThEQkVGMEEsIDB4RUNG Qjg1MDQpLCBCTl9ERUYoMHhERjFDQkE2NCwgMHhBODU1MjFBQiksCi0rICAgIEJOX0RFRigweDA0 NTA3QTMzLCAweEFEMzMxNzBEKSwgQk5fREVGKDB4OEFBQUM0MkQsIDB4MTU3MjhFNUEpLAotKyAg ICBCTl9ERUYoMHg5OEZBMDUxMCwgMHgxNUQyMjYxOCksIEJOX0RFRigweEVBOTU2QUU1LCAweDM5 OTU0OTdDKSwKLSsgICAgQk5fREVGKDB4OTU1ODE3MTgsIDB4REUyQkNCRjYpLCBCTl9ERUYoMHg2 RjRDNTJDOSwgMHhCNUM1NURGMCksCi0rICAgIEJOX0RFRigweEVDMDdBMjhGLCAweDlCMjc4M0Ey KSwgQk5fREVGKDB4MTgwRTg2MDMsIDB4RTM5RTc3MkMpLAotKyAgICBCTl9ERUYoMHgyRTM2Q0Uz QiwgMHgzMjkwNUU0NiksIEJOX0RFRigweENBMTgyMTdDLCAweEYxNzQ2QzA4KSwKLSsgICAgQk5f REVGKDB4NEFCQzk4MDQsIDB4NjcwQzM1NEUpLCBCTl9ERUYoMHg3MDk2OTY2RCwgMHg5RUQ1Mjkw NyksCi0rICAgIEJOX0RFRigweDIwODU1MkJCLCAweDFDNjJGMzU2KSwgQk5fREVGKDB4RENBM0FE OTYsIDB4ODM2NTVEMjMpLAotKyAgICBCTl9ERUYoMHhGRDI0Q0Y1RiwgMHg2OTE2M0ZBOCksIEJO X0RFRigweDFDNTVEMzlBLCAweDk4REE0ODM2KSwKLSsgICAgQk5fREVGKDB4QTE2M0JGMDUsIDB4 QzIwMDdDQjgpLCBCTl9ERUYoMHhFQ0U0NUIzRCwgMHg0OTI4NjY1MSksCi0rICAgIEJOX0RFRigw eDdDNEIxRkU2LCAweEFFOUYyNDExKSwgQk5fREVGKDB4NUE4OTlGQTUsIDB4RUUzODZCRkIpLAot KyAgICBCTl9ERUYoMHhGNDA2QjdFRCwgMHgwQkZGNUNCNiksIEJOX0RFRigweEE2MzdFRDZCLCAw eEY0NEM0MkU5KSwKLSsgICAgQk5fREVGKDB4NjI1RTdFQzYsIDB4RTQ4NUI1NzYpLCBCTl9ERUYo MHg2RDUxQzI0NSwgMHg0RkUxMzU2RCksCi0rICAgIEJOX0RFRigweEYyNUYxNDM3LCAweDMwMkIw QTZEKSwgQk5fREVGKDB4Q0QzQTQzMUIsIDB4RUY5NTE5QjMpLAotKyAgICBCTl9ERUYoMHg4RTM0 MDRERCwgMHg1MTRBMDg3OSksIEJOX0RFRigweDNCMTM5QjIyLCAweDAyMEJCRUE2KSwKLSsgICAg Qk5fREVGKDB4OEE2N0NDNzQsIDB4MjkwMjRFMDgpLCBCTl9ERUYoMHg4MERDMUNEMSwgMHhDNEM2 NjI4QiksCi0rICAgIEJOX0RFRigweDIxNjhDMjM0LCAweEM5MEZEQUEyKSwgQk5fREVGKDB4RkZG RkZGRkYsIDB4RkZGRkZGRkYpCi0rfTsKLSsvKiBxID0gKHAgLSAxKSAvIDIgKi8KLStzdGF0aWMg Y29uc3QgQk5fVUxPTkcgbW9kcF84MTkyX3FbXSA9IHsKLSsgICAgQk5fREVGKDB4RkZGRkZGRkYs ICAweEZGRkZGRkZGKSwgQk5fREVGKDB4Q0M3NkU5RUYsICAweEIwNjRDMDZFKSwKLSsgICAgQk5f REVGKDB4NDA1Q0I3MzgsICAweEU0MEZBQjc0KSwgQk5fREVGKDB4M0IyQjRBNkYsICAweDRGMTgy ODcxKSwKLSsgICAgQk5fREVGKDB4QUIzQkY0RDUsICAweENBQUM3MjIzKSwgQk5fREVGKDB4N0Uw MTM3MjMsICAweEU0OEM4NkQzKSwKLSsgICAgQk5fREVGKDB4NkFGNzFDMTUsICAweEM0NEQwMDE3 KSwgQk5fREVGKDB4QTQwRTM2NkIsICAweDIwMDRBMUM1KSwKLSsgICAgQk5fREVGKDB4NzVDM0NG QzksICAweDFBQzgyMzdBKSwgQk5fREVGKDB4OEY2N0QxMzQsICAweEZENzlCNUUxKSwKLSsgICAg Qk5fREVGKDB4QkY3M0E2QjksICAweEQ4RUE4ODVFKSwgQk5fREVGKDB4QUVGNkJGNTAsICAweEZD RDVBNDBDKSwKLSsgICAgQk5fREVGKDB4ODQyMzQyOEUsICAweEIyNzk4RTYyKSwgQk5fREVGKDB4 RDAxMkFFRTAsICAweDIyQ0JGNDRDKSwKLSsgICAgQk5fREVGKDB4M0E1NUI1MUIsICAweEVGOTg4 NzcwKSwgQk5fREVGKDB4MUZBMjdDMTYsICAweDM2OTUwOUZDKSwKLSsgICAgQk5fREVGKDB4RDlE MTNDNTMsICAweDAzMTU5RTdBKSwgQk5fREVGKDB4RjZBREVFOUQsICAweDNDQjQxOTgxKSwKLSsg ICAgQk5fREVGKDB4RDE2MDQzRjQsICAweEZENEVBNUJGKSwgQk5fREVGKDB4MTdDMUMyRUUsICAw eEE1RTVFNDQzKSwKLSsgICAgQk5fREVGKDB4MzY3NTE4MzUsICAweDlBMzlGRTMyKSwgQk5fREVG KDB4MEQxMUY4NjMsICAweDg5RjVBQkQ0KSwKLSsgICAgQk5fREVGKDB4NTIwMUJFMDMsICAweDkx MTExNzAyKSwgQk5fREVGKDB4N0U0MjQ1NkMsICAweEYxRkVEQzVGKSwKLSsgICAgQk5fREVGKDB4 RjFDRUIyOTYsICAweDExQzc4QjY1KSwgQk5fREVGKDB4MTVGOEU0QkMsICAweDFBMTFEQTNBKSwK LSsgICAgQk5fREVGKDB4MkQ3MjdBQjQsICAweDFENTVCMUNFKSwgQk5fREVGKDB4QjVEMjEyMzMs ICAweDkyQkI3QjQ5KSwKLSsgICAgQk5fREVGKDB4QzU3RTIzRjYsICAweDNBMEZEM0RGKSwgQk5f REVGKDB4NDZDRUU5ODAsICAweDFERTQxOTVCKSwKLSsgICAgQk5fREVGKDB4MzlEQzk4REQsICAw eDZDNUY2MjY4KSwgQk5fREVGKDB4NTQ5OTZGQzYsICAweDFDM0JCRTVCKSwKLSsgICAgQk5fREVG KDB4ODk3RjcyRjIsICAweEJBNTFDOTM3KSwgQk5fREVGKDB4MzZERjA4QUMsICAweDczNEE3QzhG KSwKLSsgICAgQk5fREVGKDB4ODVCQTNBNkIsICAweDA5NUY5NkFEKSwgQk5fREVGKDB4MUZBNDMw NzcsICAweDAyMUY0N0IzKSwKLSsgICAgQk5fREVGKDB4QjcxRTAyMzQsICAweDFDM0ZGNDZCKSwg Qk5fREVGKDB4MTc3OTRCMTksICAweDZEMkI2NEY2KSwKLSsgICAgQk5fREVGKDB4RDE4OUVBQUUs ICAweDc1OENFNjU4KSwgQk5fREVGKDB4QzUwRkRGRjgsICAweDdBQTg1NTFFKSwKLSsgICAgQk5f REVGKDB4REJFMkVEM0IsICAweDAzNTBFQUM1KSwgQk5fREVGKDB4Nzk0REYxOTQsICAweDUzQ0I4 QUY3KSwKLSsgICAgQk5fREVGKDB4MDdDMDFCRjAsICAweDBBNjYyRjY5KSwgQk5fREVGKDB4NUZB NDcwRUMsICAweDY2NDdCNkJGKSwKLSsgICAgQk5fREVGKDB4MTVBMEFBNTUsICAweEE1RUEwM0Q5 KSwgQk5fREVGKDB4RkZBQzJENjIsICAweDA3OEVBMkRCKSwKLSsgICAgQk5fREVGKDB4MUI2NjQ0 NUYsICAweDkxRDRCRDNGKSwgQk5fREVGKDB4REY2M0Y0NzksICAweDJDRjNFNEJGKSwKLSsgICAg Qk5fREVGKDB4QzgwNThFNEYsICAweDVBRDQyMDE4KSwgQk5fREVGKDB4QTM0QzA2NDEsICAweDZB QUYzODE3KSwKLSsgICAgQk5fREVGKDB4MzczQTdGN0IsICAweEZBNDE2QkU3KSwgQk5fREVGKDB4 RThCOTBFODEsICAweDc4MTk3NTBBKSwKLSsgICAgQk5fREVGKDB4RTMyNUM5NzYsICAweEFDQzFF NTAwKSwgQk5fREVGKDB4OUJDNjY5NUYsICAweDM3REM3QTAwKSwKLSsgICAgQk5fREVGKDB4OTVF QkQ3QTEsICAweDk5OTAyOEE4KSwgQk5fREVGKDB4RjM2NjEyQTUsICAweEVEQkY4QTIzKSwKLSsg ICAgQk5fREVGKDB4Njc2QTVEOEQsICAweEEyNjczNjVEKSwgQk5fREVGKDB4RTdDRDhBNzYsICAw eDZEMUY2REY1KSwKLSsgICAgQk5fREVGKDB4NDMyRDQ0OEMsICAweDhCQ0I5M0Q4KSwgQk5fREVG KDB4QzgxM0VDMTgsICAweDU4MzUyOUY2KSwKLSsgICAgQk5fREVGKDB4QTA5ODAwRDcsICAweDcy RUQ5QzE3KSwgQk5fREVGKDB4NTZDRjI5ODcsICAweEZDN0ZDQTAzKSwKLSsgICAgQk5fREVGKDB4 MUVERDFCREUsICAweDY0QkE4RjNCKSwgQk5fREVGKDB4MzAxMzIzNkYsICAweDYwRUE2RTU5KSwK LSsgICAgQk5fREVGKDB4NjkzRTM4MTMsICAweDFCNjFGRDVBKSwgQk5fREVGKDB4OUEwMTQyNDks ICAweEE2RkExQUU0KSwKLSsgICAgQk5fREVGKDB4NDg1MzYwNDcsICAweEMzN0ZEQkVFKSwgQk5f REVGKDB4NDZDN0VFRTAsICAweEM5REE3NTRDKSwKLSsgICAgQk5fREVGKDB4RUFEODJENTQsICAw eDY4MDM0ODkzKSwgQk5fREVGKDB4MTBCODI0MEUsICAweERDMERFRUJCKSwKLSsgICAgQk5fREVG KDB4Njc3MTZCRDcsICAweDhGQjA5NEI4KSwgQk5fREVGKDB4MjhBREYzRjYsICAweDExOUREMEMz KSwKLSsgICAgQk5fREVGKDB4RDA0ODYxRDEsICAweENDRDk0QjI3KSwgQk5fREVGKDB4QTczNUUw MkUsICAweDE0M0UyQ0EzKSwKLSsgICAgQk5fREVGKDB4MEZERjY1NTMsICAweDk3NDc3RTBBKSwg Qk5fREVGKDB4ODI2RjQ3N0MsICAweDZERERFMTZEKSwKLSsgICAgQk5fREVGKDB4MTU2QTI2NzQs ICAweDEyQzFGNEU1KSwgQk5fREVGKDB4NUIwQTg1RUQsICAweDBENEEzNDFBKSwKLSsgICAgQk5f REVGKDB4MzU3QTcxMUUsICAweDRDRTE5MzhDKSwgQk5fREVGKDB4NUVERDJEOTMsICAweEM0MzhD RDA4KSwKLSsgICAgQk5fREVGKDB4NTNDM0YzNkIsICAweDhEMzkxRTA5KSwgQk5fREVGKDB4NTQ5 MDg0MDAsICAweDI1QzE2ODkwKSwKLSsgICAgQk5fREVGKDB4NzA3RTg4NDcsICAweEExRURBREZF KSwgQk5fREVGKDB4M0E3MkQ1OTgsICAweDA0NzEyN0QwKSwKLSsgICAgQk5fREVGKDB4NUQ2Q0Ez NzEsICAweDNCODRDNDYwKSwgQk5fREVGKDB4QkQzMEFFQjYsICAweDVERjA4QkFCKSwKLSsgICAg Qk5fREVGKDB4MEJCRDkwMDYsICAweDI5MEY5NThDKSwgQk5fREVGKDB4OUY2NDM1MzIsICAweDZD M0IwMTM5KSwKLSsgICAgQk5fREVGKDB4NkNDNTA0MzIsICAweEY4OTdGRDAzKSwgQk5fREVGKDB4 MEQ2OTc3MzUsICAweEU3NzFFOTEzKSwKLSsgICAgQk5fREVGKDB4MjUxMkIwQ0UsICAweDhGNDY0 QTcwKSwgQk5fREVGKDB4NkQ4NDk5RUIsICAweEQ1RkFENzQ2KSwKLSsgICAgQk5fREVGKDB4RDM3 MEYyNjMsICAweEQ5Q0I4N0MyKSwgQk5fREVGKDB4QUU4MzA2M0UsICAweDQ1NzUzOEFCKSwKLSsg ICAgQk5fREVGKDB4MkM2REY3ODUsICAweDc2N0RDMjgyKSwgQk5fREVGKDB4RUY4RTVEMzIsICAw eEQ0MkE5MEQ1KSwKLSsgICAgQk5fREVGKDB4ODIyODNEMTksICAweEQ2OTk4Qjg2KSwgQk5fREVG KDB4NDU1NTYyMTYsICAweDBBQjk0NzJEKSwKLSsgICAgQk5fREVGKDB4NEM3RDAyODgsICAweDhB RTkxMzBDKSwgQk5fREVGKDB4NzU0QUI1NzIsICAweDFDQ0FBNEJFKSwKLSsgICAgQk5fREVGKDB4 NEFBQzBCOEMsICAweEVGMTVFNUZCKSwgQk5fREVGKDB4MzdBNjI5NjQsICAweERBRTJBRUY4KSwK LSsgICAgQk5fREVGKDB4NzYwM0QxNDcsICAweENEOTNDMUQxKSwgQk5fREVGKDB4MEMwNzQzMDEs ICAweEYxQ0YzQjk2KSwKLSsgICAgQk5fREVGKDB4MTcxQjY3MUQsICAweDE5NDgyRjIzKSwgQk5f REVGKDB4NjUwQzEwQkUsICAweDc4QkEzNjA0KSwKLSsgICAgQk5fREVGKDB4MjU1RTRDMDIsICAw eEIzODYxQUE3KSwgQk5fREVGKDB4Qjg0QjRCMzYsICAweENGNkE5NDgzKSwKLSsgICAgQk5fREVG KDB4MTA0MkE5NUQsICAweDBFMzE3OUFCKSwgQk5fREVGKDB4RUU1MUQ2Q0IsICAweEMxQjJBRTkx KSwKLSsgICAgQk5fREVGKDB4N0U5MjY3QUYsICAweDM0OEIxRkQ0KSwgQk5fREVGKDB4MEUyQUU5 Q0QsICAweENDNkQyNDFCKSwKLSsgICAgQk5fREVGKDB4NTBCMURGODIsICAweEUxMDAzRTVDKSwg Qk5fREVGKDB4RjY3MjJEOUUsICAweDI0OTQzMzI4KSwKLSsgICAgQk5fREVGKDB4QkUyNThGRjMs ICAweEQ3NEY5MjA4KSwgQk5fREVGKDB4QUQ0NENGRDIsICAweEY3MUMzNUZEKSwKLSsgICAgQk5f REVGKDB4N0EwMzVCRjYsICAweDg1RkZBRTVCKSwgQk5fREVGKDB4RDMxQkY2QjUsICAweDdBMjYy MTc0KSwKLSsgICAgQk5fREVGKDB4MzEyRjNGNjMsICAweEYyNDJEQUJCKSwgQk5fREVGKDB4QjZB OEUxMjIsICAweEE3RjA5QUI2KSwKLSsgICAgQk5fREVGKDB4RjkyRjhBMUIsICAweDk4MTU4NTM2 KSwgQk5fREVGKDB4RTY5RDIxOEQsICAweEY3Q0E4Q0Q5KSwKLSsgICAgQk5fREVGKDB4QzcxQTAy NkUsICAweDI4QTUwNDNDKSwgQk5fREVGKDB4MUQ4OUNEOTEsICAweDAxMDVERjUzKSwKLSsgICAg Qk5fREVGKDB4NDUzM0U2M0EsICAweDk0ODEyNzA0KSwgQk5fREVGKDB4QzA2RTBFNjgsICAweDYy NjMzMTQ1KSwKLSsgICAgQk5fREVGKDB4MTBCNDYxMUEsICAweEU0ODdFRDUxKSwgQk5fREVGKDB4 RkZGRkZGRkYsICAweDdGRkZGRkZGKSwKLSB9OwotIAotLSMgZWxpZiBCTl9CSVRTMiA9PSAzMgot LQotKy8qIERIIHBhcmFtZXRlcnMgZnJvbSBSRkM1MTE0ICovCi0gc3RhdGljIGNvbnN0IEJOX1VM T05HIGRoMTAyNF8xNjBfcFtdID0gewotLSAgICAweDJFNEE0MzcxLCAweERGMUZCMkJDLCAweDZE NERBNzA4LCAweEU2OENGREE3LCAweDM2NUMxQTY1LCAweDQ1QkYzN0RGLAotLSAgICAweDBEQzhC NEJELCAweEExNTFBRjVGLCAweEY1NUJDQ0MwLCAweEZBQTMxQTRGLCAweEU1NjQ0NzM4LCAweDRF RkZENkZBLAotLSAgICAweDIxOUE3MzcyLCAweDk4NDg4RTlDLCAweDkwQzRCRDcwLCAweEFDQ0JE RDdELCAweEQ0OUI4M0JGLCAweDI0OTc1QzNDLAotLSAgICAweEE5MDYxMTIzLCAweDEzRUNCNEFF LCAweDJFRTY1MkMwLCAweDk4MzhFRjFFLCAweDc1QTIzRDE4LCAweDYwNzNFMjg2LAotLSAgICAw eDUyRDIzQjYxLCAweDlBNkE5RENBLCAweEZCMDZBM0M2LCAweDUyQzk5RkJDLCAweEFFNUQ1NEVD LCAweERFOTJERTVFLAotLSAgICAweEEwODBFMDFELCAweEIxMEI4Rjk2Ci0rICAgIEJOX0RFRigw eDJFNEE0MzcxLCAweERGMUZCMkJDKSwgQk5fREVGKDB4NkQ0REE3MDgsIDB4RTY4Q0ZEQTcpLAot KyAgICBCTl9ERUYoMHgzNjVDMUE2NSwgMHg0NUJGMzdERiksIEJOX0RFRigweDBEQzhCNEJELCAw eEExNTFBRjVGKSwKLSsgICAgQk5fREVGKDB4RjU1QkNDQzAsIDB4RkFBMzFBNEYpLCBCTl9ERUYo MHhFNTY0NDczOCwgMHg0RUZGRDZGQSksCi0rICAgIEJOX0RFRigweDIxOUE3MzcyLCAweDk4NDg4 RTlDKSwgQk5fREVGKDB4OTBDNEJENzAsIDB4QUNDQkREN0QpLAotKyAgICBCTl9ERUYoMHhENDlC ODNCRiwgMHgyNDk3NUMzQyksIEJOX0RFRigweEE5MDYxMTIzLCAweDEzRUNCNEFFKSwKLSsgICAg Qk5fREVGKDB4MkVFNjUyQzAsIDB4OTgzOEVGMUUpLCBCTl9ERUYoMHg3NUEyM0QxOCwgMHg2MDcz RTI4NiksCi0rICAgIEJOX0RFRigweDUyRDIzQjYxLCAweDlBNkE5RENBKSwgQk5fREVGKDB4RkIw NkEzQzYsIDB4NTJDOTlGQkMpLAotKyAgICBCTl9ERUYoMHhBRTVENTRFQywgMHhERTkyREU1RSks IEJOX0RFRigweEEwODBFMDFELCAweEIxMEI4Rjk2KQotIH07Ci0tCi0tc3RhdGljIGNvbnN0IEJO X1VMT05HIGRoMTAyNF8xNjBfZ1tdID0gewotLSAgICAweDIyQjNCMkU1LCAweDg1NUU2RUVCLCAw eEY5N0MyQTI0LCAweDg1OEY0RENFLCAweDE4RDA4QkM4LCAweDJENzc5RDU5LAotLSAgICAweDhF NzNBRkEzLCAweEQ2NjJBNEQxLCAweDY5QjZBMjhBLCAweDFEQkYwQTAxLCAweDdBMDkxRjUzLCAw eEE2QTI0QzA4LAotLSAgICAweDYzRjgwQTc2LCAweDkwOUQwRDIyLCAweEI5QTkyRUUxLCAweEQ3 RkJEN0QzLCAweDlFMjc0OUY0LCAweDVFOTE1NDdGLAotLSAgICAweEIwMUI4ODZBLCAweDE2MDIx N0I0LCAweDU1MDRGMjEzLCAweDc3N0U2OTBGLCAweDVDNDE1NjRCLCAweDI2NkZFQTFFLAotLSAg ICAweDE0MjY2RDMxLCAweEQ2NDA2Q0ZGLCAweDU4QUM1MDdGLCAweEY4MTA0REQyLCAweEVGQjk5 OTA1LCAweDY3NjVBNDQyLAotLSAgICAweEMzRkQzNDEyLCAweEE0RDFDQkQ1Ci0tfTsKLS0KLSBz dGF0aWMgY29uc3QgQk5fVUxPTkcgZGgxMDI0XzE2MF9xW10gPSB7Ci0tICAgIDB4NDk0NjIzNTMs IDB4NjRCN0NCOUQsIDB4OEFCQTRFN0QsIDB4ODFBOERGMjcsIDB4RjUxOEFBODcKLSsgICAgQk5f REVGKDB4NDk0NjIzNTMsIDB4NjRCN0NCOUQpLCBCTl9ERUYoMHg4QUJBNEU3RCwgMHg4MUE4REYy NyksCi0rICAgIChCTl9VTE9ORykweEY1MThBQTg3Ci0gfTsKLS0KLS1zdGF0aWMgY29uc3QgQk5f VUxPTkcgZGgyMDQ4XzIyNF9wW10gPSB7Ci0tICAgIDB4MEMxMEU2NEYsIDB4MEFDNERGRkUsIDB4 NEU3MUI4MUMsIDB4Q0Y5REU1MzgsIDB4RkZBMzFGNzEsIDB4N0VGMzYzRTIsCi0tICAgIDB4NkI4 RTc1QjksIDB4RTNGQjczQzEsIDB4NEJBODBBMjksIDB4QzlCNTNEQ0YsIDB4MTZFNzk3NjMsIDB4 MjNGMTBCMEUsCi0tICAgIDB4MTMwNDJFOUIsIDB4QzUyMTcyRTQsIDB4QzkyOEIyQjksIDB4QkU2 MEU2OUMsIDB4QjlFNTg3RTgsIDB4ODBDRDg2QTEsCi0tICAgIDB4OThDNjQxQTQsIDB4MzE1RDc1 RTEsIDB4NDQzMjgzODcsIDB4Q0RGOTNBQ0MsIDB4REMwQTQ4NkQsIDB4MTU5ODdEOUEsCi0tICAg IDB4MUZENUEwNzQsIDB4NzMxMEY3MTIsIDB4REUzMUVGREMsIDB4Mjc4MjczQzcsIDB4NDE1RDkz MzAsIDB4MTYwMkU3MTQsCi0tICAgIDB4QkM4OTg1REIsIDB4ODEyODYxMzAsIDB4NzA5MTg4MzYs IDB4QjNCRjhBMzEsIDB4QjlDNDk3MDgsIDB4NkEwMEUwQTAsCi0tICAgIDB4OEJCQzI3QkUsIDB4 QzZCQTBCMkMsIDB4RUQzNERCRjYsIDB4QzlGOThEMTEsIDB4QjZDMTIyMDcsIDB4N0FENUI3RDAs Ci0tICAgIDB4NTVCNzM5NEIsIDB4RDkxRThGRUYsIDB4RUZEQTRERjgsIDB4OTAzN0M5RUQsIDB4 QUQ2QUMyMTIsIDB4NkQzRjgxNTIsCi0tICAgIDB4MTI3NEEwQTYsIDB4MURFNkI4NUEsIDB4MzA5 QzE4MEUsIDB4RUIzRDY4OEEsIDB4N0JBMURGMTUsIDB4QUY5QTNDNDAsCi0tICAgIDB4Rjk1QTU2 REIsIDB4RTZGQTE0MUQsIDB4QjYxRDBBNzUsIDB4QjU0QjE1OTcsIDB4NjgzQjlGRDEsIDB4QTIw RDY0RTUsCi0tICAgIDB4OTU1OUM1MUYsIDB4RDY2MEZBQTcsIDB4OTEyM0E5RDAsIDB4QUQxMDdF MUUKLStzdGF0aWMgY29uc3QgQk5fVUxPTkcgZGgxMDI0XzE2MF9nW10gPSB7Ci0rICAgIEJOX0RF RigweDIyQjNCMkU1LCAweDg1NUU2RUVCKSwgQk5fREVGKDB4Rjk3QzJBMjQsIDB4ODU4RjREQ0Up LAotKyAgICBCTl9ERUYoMHgxOEQwOEJDOCwgMHgyRDc3OUQ1OSksIEJOX0RFRigweDhFNzNBRkEz LCAweEQ2NjJBNEQxKSwKLSsgICAgQk5fREVGKDB4NjlCNkEyOEEsIDB4MURCRjBBMDEpLCBCTl9E RUYoMHg3QTA5MUY1MywgMHhBNkEyNEMwOCksCi0rICAgIEJOX0RFRigweDYzRjgwQTc2LCAweDkw OUQwRDIyKSwgQk5fREVGKDB4QjlBOTJFRTEsIDB4RDdGQkQ3RDMpLAotKyAgICBCTl9ERUYoMHg5 RTI3NDlGNCwgMHg1RTkxNTQ3RiksIEJOX0RFRigweEIwMUI4ODZBLCAweDE2MDIxN0I0KSwKLSsg ICAgQk5fREVGKDB4NTUwNEYyMTMsIDB4Nzc3RTY5MEYpLCBCTl9ERUYoMHg1QzQxNTY0QiwgMHgy NjZGRUExRSksCi0rICAgIEJOX0RFRigweDE0MjY2RDMxLCAweEQ2NDA2Q0ZGKSwgQk5fREVGKDB4 NThBQzUwN0YsIDB4RjgxMDRERDIpLAotKyAgICBCTl9ERUYoMHhFRkI5OTkwNSwgMHg2NzY1QTQ0 MiksIEJOX0RFRigweEMzRkQzNDEyLCAweEE0RDFDQkQ1KQotIH07Ci0gCi0tc3RhdGljIGNvbnN0 IEJOX1VMT05HIGRoMjA0OF8yMjRfZ1tdID0gewotLSAgICAweDE5MUYyQkZBLCAweDg0Qjg5MEQz LCAweDJBNzA2NUIzLCAweDgxQkMwODdGLCAweEY2RUMwMTc5LCAweDE5QzQxOEUxLAotLSAgICAw eDcxQ0ZGRjRDLCAweDdCNUEwRjFDLCAweDlCNkFBNEJELCAweEVERkU3MkZFLCAweDk0QjMwMjY5 LCAweDgxRTFCQ0ZFLAotLSAgICAweDhENkMwMTkxLCAweDU2NkFGQkI0LCAweDQwOUQxM0NELCAw eEI1MzlDQ0UzLCAweDVGMkZGMzgxLCAweDZBQTIxRTdGLAotLSAgICAweDc3MDU4OUVGLCAweEQ5 RTI2M0U0LCAweEQxOTk2M0RELCAweDEwRTE4M0VELCAweDE1MEI4RUVCLCAweEI3MEE4MTM3LAot LSAgICAweDI4QzhGOEFDLCAweDA1MUFFM0Q0LCAweDBDMUFCMTVCLCAweEJCNzdBODZGLCAweDE2 QTMzMEVGLCAweDZFMzAyNUUzLAotLSAgICAweEQ2RjgzNDU2LCAweDE5NTI5QTQ1LCAweDExOEU5 OEQxLCAweEYxODBFQjM0LCAweDUwNzE3Q0JFLCAweEI1RjZDNkIyLAotLSAgICAweERBNzQ2MENE LCAweDA5OTM5RDU0LCAweDIyRUExRUQ0LCAweEUyNDcxNTA0LCAweDUyMUJDOThBLCAweEI4QTc2 MkQwLAotLSAgICAweDVBQzEzNDhCLCAweEY0RDAyNzI3LCAweDE5OTkwMjRBLCAweEMxNzY2OTEw LCAweEE4RDY2QUQ3LCAweEJFNUU5MDAxLAotLSAgICAweDYyMEE4NjUyLCAweEM1N0RCMTdDLCAw eDAwQzI5RjUyLCAweEFCNzM5RDc3LCAweEE3MEM0QUZBLCAweEREOTIxRjAxLAotLSAgICAweDEw QjlBNkYwLCAweEE2ODI0QTRFLCAweENGRTRGRkUzLCAweDc0ODY2QTA4LCAweDg5OTk4Q0FGLCAw eDZDREVCRTdCLAotLSAgICAweDhGRkRBQzUwLCAweDlERjMwQjVDLCAweDRGMkQ5QUUzLCAweEFD NDAzMkVGCi0rc3RhdGljIGNvbnN0IEJOX1VMT05HIGRoMjA0OF8yMjRfcFtdID0gewotKyAgICBC Tl9ERUYoMHgwQzEwRTY0RiwgMHgwQUM0REZGRSksIEJOX0RFRigweDRFNzFCODFDLCAweENGOURF NTM4KSwKLSsgICAgQk5fREVGKDB4RkZBMzFGNzEsIDB4N0VGMzYzRTIpLCBCTl9ERUYoMHg2QjhF NzVCOSwgMHhFM0ZCNzNDMSksCi0rICAgIEJOX0RFRigweDRCQTgwQTI5LCAweEM5QjUzRENGKSwg Qk5fREVGKDB4MTZFNzk3NjMsIDB4MjNGMTBCMEUpLAotKyAgICBCTl9ERUYoMHgxMzA0MkU5Qiwg MHhDNTIxNzJFNCksIEJOX0RFRigweEM5MjhCMkI5LCAweEJFNjBFNjlDKSwKLSsgICAgQk5fREVG KDB4QjlFNTg3RTgsIDB4ODBDRDg2QTEpLCBCTl9ERUYoMHg5OEM2NDFBNCwgMHgzMTVENzVFMSks Ci0rICAgIEJOX0RFRigweDQ0MzI4Mzg3LCAweENERjkzQUNDKSwgQk5fREVGKDB4REMwQTQ4NkQs IDB4MTU5ODdEOUEpLAotKyAgICBCTl9ERUYoMHgxRkQ1QTA3NCwgMHg3MzEwRjcxMiksIEJOX0RF RigweERFMzFFRkRDLCAweDI3ODI3M0M3KSwKLSsgICAgQk5fREVGKDB4NDE1RDkzMzAsIDB4MTYw MkU3MTQpLCBCTl9ERUYoMHhCQzg5ODVEQiwgMHg4MTI4NjEzMCksCi0rICAgIEJOX0RFRigweDcw OTE4ODM2LCAweEIzQkY4QTMxKSwgQk5fREVGKDB4QjlDNDk3MDgsIDB4NkEwMEUwQTApLAotKyAg ICBCTl9ERUYoMHg4QkJDMjdCRSwgMHhDNkJBMEIyQyksIEJOX0RFRigweEVEMzREQkY2LCAweEM5 Rjk4RDExKSwKLSsgICAgQk5fREVGKDB4QjZDMTIyMDcsIDB4N0FENUI3RDApLCBCTl9ERUYoMHg1 NUI3Mzk0QiwgMHhEOTFFOEZFRiksCi0rICAgIEJOX0RFRigweEVGREE0REY4LCAweDkwMzdDOUVE KSwgQk5fREVGKDB4QUQ2QUMyMTIsIDB4NkQzRjgxNTIpLAotKyAgICBCTl9ERUYoMHgxMjc0QTBB NiwgMHgxREU2Qjg1QSksIEJOX0RFRigweDMwOUMxODBFLCAweEVCM0Q2ODhBKSwKLSsgICAgQk5f REVGKDB4N0JBMURGMTUsIDB4QUY5QTNDNDApLCBCTl9ERUYoMHhGOTVBNTZEQiwgMHhFNkZBMTQx RCksCi0rICAgIEJOX0RFRigweEI2MUQwQTc1LCAweEI1NEIxNTk3KSwgQk5fREVGKDB4NjgzQjlG RDEsIDB4QTIwRDY0RTUpLAotKyAgICBCTl9ERUYoMHg5NTU5QzUxRiwgMHhENjYwRkFBNyksIEJO X0RFRigweDkxMjNBOUQwLCAweEFEMTA3RTFFKQotIH07Ci0tCi0gc3RhdGljIGNvbnN0IEJOX1VM T05HIGRoMjA0OF8yMjRfcVtdID0gewotLSAgICAweEIzNjM3MUVCLCAweEJGMzg5QTk5LCAweDQ3 MzhDRUJDLCAweDFGODA1MzVBLCAweDk5NzE3NzEwLCAweEM1OEQ5M0ZFLAotLSAgICAweDgwMUMw RDM0Ci0rICAgIEJOX0RFRigweEIzNjM3MUVCLCAweEJGMzg5QTk5KSwgQk5fREVGKDB4NDczOENF QkMsIDB4MUY4MDUzNUEpLAotKyAgICBCTl9ERUYoMHg5OTcxNzcxMCwgMHhDNThEOTNGRSksIChC Tl9VTE9ORykweDgwMUMwRDM0Ci0gfTsKLS0KLS1zdGF0aWMgY29uc3QgQk5fVUxPTkcgZGgyMDQ4 XzI1Nl9wW10gPSB7Ci0tICAgIDB4MUUxQTE1OTcsIDB4REIwOTRBRTksIDB4RDdFRjA5Q0EsIDB4 NjkzODc3RkEsIDB4NkUxMTcxNUYsIDB4NjExNkQyMjcsCi0tICAgIDB4QzE5OEFGMTIsIDB4QTRC NTQzMzAsIDB4RDcwMTQxMDMsIDB4NzVGMjYzNzUsIDB4NTRFNzEwQzMsIDB4QzNBMzk2MEEsCi0t ICAgIDB4QkQwQkU2MjEsIDB4REVENDAxMEEsIDB4ODk5NjI4NTYsIDB4QzBCODU3RjYsIDB4NzE1 MDYwMjYsIDB4QjNDQTNGNzksCi0tICAgIDB4RTZCNDg2RjYsIDB4MUNDQUNCODMsIDB4MTQwNTY0 MjUsIDB4NjdFMTQ0RTUsIDB4QTQxODI1RDksIDB4RjZBMTY3QjUsCi0tICAgIDB4OTY1MjREOEUs IDB4M0FEODM0NzcsIDB4NTFCRkE0QUIsIDB4RjEzQzZEOUEsIDB4MzU0ODhBMEUsIDB4MkQ1MjUy NjcsCi0tICAgIDB4Q0FBNkI3OTAsIDB4QjYzQUNBRTEsIDB4ODFCMjNGNzYsIDB4NEZEQjcwQzUs IDB4MTIzMDdGNUMsIDB4QkMzOUEwQkYsCi0tICAgIDB4QjFFNTlCQjgsIDB4Qjk0MUY1NEUsIDB4 RDQ1RjkwODgsIDB4NkM1QkZDMTEsIDB4NDI3NUJGN0IsIDB4MjJFMEIxRUYsCi0tICAgIDB4NUI0 NzU4QzAsIDB4OTFGOUU2NzIsIDB4NkJDRjY3RUQsIDB4NUE4QTlEMzAsIDB4OTc1MTdBQkQsIDB4 MjA5RTBDNjQsCi0tICAgIDB4ODMwRTlBN0MsIDB4M0JGNDI5NkQsIDB4MzQwOTZGQUEsIDB4MTZD M0Q5MTEsIDB4NjFCMkFBMzAsIDB4RkFGN0RGNDUsCi0tICAgIDB4RDYxOTU3RDQsIDB4RTAwREY4 RjEsIDB4NDM1RTNCMDAsIDB4NUQyQ0VFRDQsIDB4NjYwREQwRjIsIDB4OENFRUY2MDgsCi0tICAg IDB4NjUxOTU5OTksIDB4RkZCQkQxOUMsIDB4QjRCNjY2M0MsIDB4ODdBOEU2MUQKLStzdGF0aWMg Y29uc3QgQk5fVUxPTkcgZGgyMDQ4XzIyNF9nW10gPSB7Ci0rICAgIEJOX0RFRigweDE5MUYyQkZB LCAweDg0Qjg5MEQzKSwgQk5fREVGKDB4MkE3MDY1QjMsIDB4ODFCQzA4N0YpLAotKyAgICBCTl9E RUYoMHhGNkVDMDE3OSwgMHgxOUM0MThFMSksIEJOX0RFRigweDcxQ0ZGRjRDLCAweDdCNUEwRjFD KSwKLSsgICAgQk5fREVGKDB4OUI2QUE0QkQsIDB4RURGRTcyRkUpLCBCTl9ERUYoMHg5NEIzMDI2 OSwgMHg4MUUxQkNGRSksCi0rICAgIEJOX0RFRigweDhENkMwMTkxLCAweDU2NkFGQkI0KSwgQk5f REVGKDB4NDA5RDEzQ0QsIDB4QjUzOUNDRTMpLAotKyAgICBCTl9ERUYoMHg1RjJGRjM4MSwgMHg2 QUEyMUU3RiksIEJOX0RFRigweDc3MDU4OUVGLCAweEQ5RTI2M0U0KSwKLSsgICAgQk5fREVGKDB4 RDE5OTYzREQsIDB4MTBFMTgzRUQpLCBCTl9ERUYoMHgxNTBCOEVFQiwgMHhCNzBBODEzNyksCi0r ICAgIEJOX0RFRigweDI4QzhGOEFDLCAweDA1MUFFM0Q0KSwgQk5fREVGKDB4MEMxQUIxNUIsIDB4 QkI3N0E4NkYpLAotKyAgICBCTl9ERUYoMHgxNkEzMzBFRiwgMHg2RTMwMjVFMyksIEJOX0RFRigw eEQ2RjgzNDU2LCAweDE5NTI5QTQ1KSwKLSsgICAgQk5fREVGKDB4MTE4RTk4RDEsIDB4RjE4MEVC MzQpLCBCTl9ERUYoMHg1MDcxN0NCRSwgMHhCNUY2QzZCMiksCi0rICAgIEJOX0RFRigweERBNzQ2 MENELCAweDA5OTM5RDU0KSwgQk5fREVGKDB4MjJFQTFFRDQsIDB4RTI0NzE1MDQpLAotKyAgICBC Tl9ERUYoMHg1MjFCQzk4QSwgMHhCOEE3NjJEMCksIEJOX0RFRigweDVBQzEzNDhCLCAweEY0RDAy NzI3KSwKLSsgICAgQk5fREVGKDB4MTk5OTAyNEEsIDB4QzE3NjY5MTApLCBCTl9ERUYoMHhBOEQ2 NkFENywgMHhCRTVFOTAwMSksCi0rICAgIEJOX0RFRigweDYyMEE4NjUyLCAweEM1N0RCMTdDKSwg Qk5fREVGKDB4MDBDMjlGNTIsIDB4QUI3MzlENzcpLAotKyAgICBCTl9ERUYoMHhBNzBDNEFGQSwg MHhERDkyMUYwMSksIEJOX0RFRigweDEwQjlBNkYwLCAweEE2ODI0QTRFKSwKLSsgICAgQk5fREVG KDB4Q0ZFNEZGRTMsIDB4NzQ4NjZBMDgpLCBCTl9ERUYoMHg4OTk5OENBRiwgMHg2Q0RFQkU3Qiks Ci0rICAgIEJOX0RFRigweDhGRkRBQzUwLCAweDlERjMwQjVDKSwgQk5fREVGKDB4NEYyRDlBRTMs IDB4QUM0MDMyRUYpCi0gfTsKLSAKLS1zdGF0aWMgY29uc3QgQk5fVUxPTkcgZGgyMDQ4XzI1Nl9n W10gPSB7Ci0tICAgIDB4NkNDNDE2NTksIDB4NjY0QjRDMEYsIDB4RUY5OEM1ODIsIDB4NUUyMzI3 Q0YsIDB4RDQ3OTU0NTEsIDB4RDY0N0QxNDgsCi0tICAgIDB4OTBGMDBFRjgsIDB4MkY2MzA3ODQs IDB4MURCMjQ2QzMsIDB4MTg0QjUyM0QsIDB4Q0RDNjdFQjYsIDB4Qzc4OTE0MjgsCi0tICAgIDB4 MERGOTJCNTIsIDB4N0ZEMDI4MzcsIDB4NjRFMEVDMzcsIDB4QjMzNTNCQkIsIDB4NTdDRDA5MTUs IDB4RUNEMDZFMTUsCi0tICAgIDB4REYwMTYxOTksIDB4QjdEMkJCRDIsIDB4MDUyNTg4QjksIDB4 Qzg0ODRCMUUsIDB4MTNEM0ZFMTQsIDB4REIyQTNCNzMsCi0tICAgIDB4RDE4MkVBMEEsIDB4RDA1 MkI5ODUsIDB4RTgzQjlDODAsIDB4QTRCRDFCRkYsIDB4RkIzRjJFNTUsIDB4REZDOTY3QzEsCi0t ICAgIDB4NzY3MTY0RTEsIDB4QjUwNDVBRjIsIDB4NkYyRjkxOTMsIDB4MUQxNDM0OEYsIDB4NDI4 RUJDODMsIDB4NjRFNjc5ODIsCi0tICAgIDB4ODJENkVEMzgsIDB4OEFDMzc2RDIsIDB4QUFCOEE4 NjIsIDB4Nzc3REU2MkEsIDB4RTlFQzE0NEIsIDB4RERGNDYzRTUsCi0tICAgIDB4Qzc3QTU3RjIs IDB4MDE5NkY5MzEsIDB4NDEwMDBBNjUsIDB4QTU1QUUzMTMsIDB4QzI4Q0JCMTgsIDB4OTAxMjI4 RjgsCi0tICAgIDB4N0U4QzZGNjIsIDB4QkMzNzczQkYsIDB4MEM2QjQ3QjEsIDB4QkUzQTZDMUIs IDB4QUMwQkI1NTUsIDB4RkY0RkVENEEsCi0tICAgIDB4NzdCRTQ2M0YsIDB4MTBEQkMxNTAsIDB4 MUEwQkExMjUsIDB4MDdGNDc5M0EsIDB4MjFFRjIwNTQsIDB4NENBN0IxOEYsCi0tICAgIDB4NjBF REJENDgsIDB4MkU3NzUwNjYsIDB4NzMxMzREMEIsIDB4M0ZCMzJDOUIKLStzdGF0aWMgY29uc3Qg Qk5fVUxPTkcgZGgyMDQ4XzI1Nl9wW10gPSB7Ci0rICAgIEJOX0RFRigweDFFMUExNTk3LCAweERC MDk0QUU5KSwgQk5fREVGKDB4RDdFRjA5Q0EsIDB4NjkzODc3RkEpLAotKyAgICBCTl9ERUYoMHg2 RTExNzE1RiwgMHg2MTE2RDIyNyksIEJOX0RFRigweEMxOThBRjEyLCAweEE0QjU0MzMwKSwKLSsg ICAgQk5fREVGKDB4RDcwMTQxMDMsIDB4NzVGMjYzNzUpLCBCTl9ERUYoMHg1NEU3MTBDMywgMHhD M0EzOTYwQSksCi0rICAgIEJOX0RFRigweEJEMEJFNjIxLCAweERFRDQwMTBBKSwgQk5fREVGKDB4 ODk5NjI4NTYsIDB4QzBCODU3RjYpLAotKyAgICBCTl9ERUYoMHg3MTUwNjAyNiwgMHhCM0NBM0Y3 OSksIEJOX0RFRigweEU2QjQ4NkY2LCAweDFDQ0FDQjgzKSwKLSsgICAgQk5fREVGKDB4MTQwNTY0 MjUsIDB4NjdFMTQ0RTUpLCBCTl9ERUYoMHhBNDE4MjVEOSwgMHhGNkExNjdCNSksCi0rICAgIEJO X0RFRigweDk2NTI0RDhFLCAweDNBRDgzNDc3KSwgQk5fREVGKDB4NTFCRkE0QUIsIDB4RjEzQzZE OUEpLAotKyAgICBCTl9ERUYoMHgzNTQ4OEEwRSwgMHgyRDUyNTI2NyksIEJOX0RFRigweENBQTZC NzkwLCAweEI2M0FDQUUxKSwKLSsgICAgQk5fREVGKDB4ODFCMjNGNzYsIDB4NEZEQjcwQzUpLCBC Tl9ERUYoMHgxMjMwN0Y1QywgMHhCQzM5QTBCRiksCi0rICAgIEJOX0RFRigweEIxRTU5QkI4LCAw eEI5NDFGNTRFKSwgQk5fREVGKDB4RDQ1RjkwODgsIDB4NkM1QkZDMTEpLAotKyAgICBCTl9ERUYo MHg0Mjc1QkY3QiwgMHgyMkUwQjFFRiksIEJOX0RFRigweDVCNDc1OEMwLCAweDkxRjlFNjcyKSwK LSsgICAgQk5fREVGKDB4NkJDRjY3RUQsIDB4NUE4QTlEMzApLCBCTl9ERUYoMHg5NzUxN0FCRCwg MHgyMDlFMEM2NCksCi0rICAgIEJOX0RFRigweDgzMEU5QTdDLCAweDNCRjQyOTZEKSwgQk5fREVG KDB4MzQwOTZGQUEsIDB4MTZDM0Q5MTEpLAotKyAgICBCTl9ERUYoMHg2MUIyQUEzMCwgMHhGQUY3 REY0NSksIEJOX0RFRigweEQ2MTk1N0Q0LCAweEUwMERGOEYxKSwKLSsgICAgQk5fREVGKDB4NDM1 RTNCMDAsIDB4NUQyQ0VFRDQpLCBCTl9ERUYoMHg2NjBERDBGMiwgMHg4Q0VFRjYwOCksCi0rICAg IEJOX0RFRigweDY1MTk1OTk5LCAweEZGQkJEMTlDKSwgQk5fREVGKDB4QjRCNjY2M0MsIDB4ODdB OEU2MUQpCi0gfTsKLS0KLSBzdGF0aWMgY29uc3QgQk5fVUxPTkcgZGgyMDQ4XzI1Nl9xW10gPSB7 Ci0tICAgIDB4NjRGNUZCRDMsIDB4QTMwOEIwRkUsIDB4MUVCMzc1MEIsIDB4OTlCMUE0N0QsIDB4 NDAxMjlEQTIsIDB4QjQ0Nzk5NzYsCi0tICAgIDB4QTcwOUEwOTcsIDB4OENGODM2NDIKLSsgICAg Qk5fREVGKDB4NjRGNUZCRDMsIDB4QTMwOEIwRkUpLCBCTl9ERUYoMHgxRUIzNzUwQiwgMHg5OUIx QTQ3RCksCi0rICAgIEJOX0RFRigweDQwMTI5REEyLCAweEI0NDc5OTc2KSwgQk5fREVGKDB4QTcw OUEwOTcsIDB4OENGODM2NDIpCi0rfTsKLStzdGF0aWMgY29uc3QgQk5fVUxPTkcgZGgyMDQ4XzI1 Nl9nW10gPSB7Ci0rICAgIEJOX0RFRigweDZDQzQxNjU5LCAweDY2NEI0QzBGKSwgQk5fREVGKDB4 RUY5OEM1ODIsIDB4NUUyMzI3Q0YpLAotKyAgICBCTl9ERUYoMHhENDc5NTQ1MSwgMHhENjQ3RDE0 OCksIEJOX0RFRigweDkwRjAwRUY4LCAweDJGNjMwNzg0KSwKLSsgICAgQk5fREVGKDB4MURCMjQ2 QzMsIDB4MTg0QjUyM0QpLCBCTl9ERUYoMHhDREM2N0VCNiwgMHhDNzg5MTQyOCksCi0rICAgIEJO X0RFRigweDBERjkyQjUyLCAweDdGRDAyODM3KSwgQk5fREVGKDB4NjRFMEVDMzcsIDB4QjMzNTNC QkIpLAotKyAgICBCTl9ERUYoMHg1N0NEMDkxNSwgMHhFQ0QwNkUxNSksIEJOX0RFRigweERGMDE2 MTk5LCAweEI3RDJCQkQyKSwKLSsgICAgQk5fREVGKDB4MDUyNTg4QjksIDB4Qzg0ODRCMUUpLCBC Tl9ERUYoMHgxM0QzRkUxNCwgMHhEQjJBM0I3MyksCi0rICAgIEJOX0RFRigweEQxODJFQTBBLCAw eEQwNTJCOTg1KSwgQk5fREVGKDB4RTgzQjlDODAsIDB4QTRCRDFCRkYpLAotKyAgICBCTl9ERUYo MHhGQjNGMkU1NSwgMHhERkM5NjdDMSksIEJOX0RFRigweDc2NzE2NEUxLCAweEI1MDQ1QUYyKSwK LSsgICAgQk5fREVGKDB4NkYyRjkxOTMsIDB4MUQxNDM0OEYpLCBCTl9ERUYoMHg0MjhFQkM4Mywg MHg2NEU2Nzk4MiksCi0rICAgIEJOX0RFRigweDgyRDZFRDM4LCAweDhBQzM3NkQyKSwgQk5fREVG KDB4QUFCOEE4NjIsIDB4Nzc3REU2MkEpLAotKyAgICBCTl9ERUYoMHhFOUVDMTQ0QiwgMHhEREY0 NjNFNSksIEJOX0RFRigweEM3N0E1N0YyLCAweDAxOTZGOTMxKSwKLSsgICAgQk5fREVGKDB4NDEw MDBBNjUsIDB4QTU1QUUzMTMpLCBCTl9ERUYoMHhDMjhDQkIxOCwgMHg5MDEyMjhGOCksCi0rICAg IEJOX0RFRigweDdFOEM2RjYyLCAweEJDMzc3M0JGKSwgQk5fREVGKDB4MEM2QjQ3QjEsIDB4QkUz QTZDMUIpLAotKyAgICBCTl9ERUYoMHhBQzBCQjU1NSwgMHhGRjRGRUQ0QSksIEJOX0RFRigweDc3 QkU0NjNGLCAweDEwREJDMTUwKSwKLSsgICAgQk5fREVGKDB4MUEwQkExMjUsIDB4MDdGNDc5M0Ep LCBCTl9ERUYoMHgyMUVGMjA1NCwgMHg0Q0E3QjE4RiksCi0rICAgIEJOX0RFRigweDYwRURCRDQ4 LCAweDJFNzc1MDY2KSwgQk5fREVGKDB4NzMxMzREMEIsIDB4M0ZCMzJDOUIpCi0gfTsKLSAKLSAv KiBQcmltZXMgZnJvbSBSRkMgNzkxOSAqLwotLQotIHN0YXRpYyBjb25zdCBCTl9VTE9ORyBmZmRo ZTIwNDhfcFtdID0gewotLSAgICAweEZGRkZGRkZGLCAweEZGRkZGRkZGLCAweDYxMjg1Qzk3LCAw eDg4NkI0MjM4LCAweEMxQjJFRkZBLCAweEM2RjM0QTI2LAotLSAgICAweDdEMTY4M0IyLCAweEM1 OEVGMTgzLCAweDJFQzIyMDA1LCAweDNCQjVGQ0JDLCAweDRDNkZBRDczLCAweEMzRkUzQjFCLAot LSAgICAweEVFRjI4MTgzLCAweDhFNEYxMjMyLCAweEU5ODU4M0ZGLCAweDkxNzJGRTlDLCAweDI4 MzQyRjYxLCAweEMwMzQwNENELAotLSAgICAweENERjdFMkVDLCAweDlFMDJGQ0UxLCAweEVFMEE2 RDcwLCAweDBCMDdBN0M4LCAweDYzNzJCQjE5LCAweEFFNTZFREU3LAotLSAgICAweERFMzk0REY0 LCAweDFENEY0MkEzLCAweDYwRDdGNDY4LCAweEI5NkFEQUI3LCAweEIyQzhFM0ZCLCAweEQxMDhB OTRCLAotLSAgICAweEIzMjRGQjYxLCAweEJDMEFCMTgyLCAweDQ4M0E3OTdBLCAweDMwQUNDQTRG LCAweDM2QURFNzM1LCAweDFERjE1OEExLAotLSAgICAweEYzRUZFODcyLCAweEUyQTY4OURBLCAw eEUwRTY4Qjc3LCAweDk4NEYwQzcwLCAweDdGNTdDOTM1LCAweEI1NTcxMzVFLAotLSAgICAweDNE RUQxQUYzLCAweDg1NjM2NTU1LCAweDVGMDY2RUQwLCAweDI0MzNGNTFGLCAweEQ1RkQ2NTYxLCAw eEQzREYxRUQ1LAotLSAgICAweEFFQzQ2MTdBLCAweEY2ODFCMjAyLCAweDYzMEM3NUQ4LCAweDdE MkZFMzYzLCAweDI0OUIzRUY5LCAweENDOTM5RENFLAotLSAgICAweDE0NjQzM0ZCLCAweEE5RTEz NjQxLCAweENFMkQzNjk1LCAweEQ4QjlDNTgzLCAweDI3M0QzQ0YxLCAweEFGREM1NjIwLAotLSAg ICAweEEyQkI0QTlBLCAweEFERjg1NDU4LCAweEZGRkZGRkZGLCAweEZGRkZGRkZGCi0rICAgIEJO X0RFRigweEZGRkZGRkZGLCAweEZGRkZGRkZGKSwgQk5fREVGKDB4NjEyODVDOTcsIDB4ODg2QjQy MzgpLAotKyAgICBCTl9ERUYoMHhDMUIyRUZGQSwgMHhDNkYzNEEyNiksIEJOX0RFRigweDdEMTY4 M0IyLCAweEM1OEVGMTgzKSwKLSsgICAgQk5fREVGKDB4MkVDMjIwMDUsIDB4M0JCNUZDQkMpLCBC Tl9ERUYoMHg0QzZGQUQ3MywgMHhDM0ZFM0IxQiksCi0rICAgIEJOX0RFRigweEVFRjI4MTgzLCAw eDhFNEYxMjMyKSwgQk5fREVGKDB4RTk4NTgzRkYsIDB4OTE3MkZFOUMpLAotKyAgICBCTl9ERUYo MHgyODM0MkY2MSwgMHhDMDM0MDRDRCksIEJOX0RFRigweENERjdFMkVDLCAweDlFMDJGQ0UxKSwK LSsgICAgQk5fREVGKDB4RUUwQTZENzAsIDB4MEIwN0E3QzgpLCBCTl9ERUYoMHg2MzcyQkIxOSwg MHhBRTU2RURFNyksCi0rICAgIEJOX0RFRigweERFMzk0REY0LCAweDFENEY0MkEzKSwgQk5fREVG KDB4NjBEN0Y0NjgsIDB4Qjk2QURBQjcpLAotKyAgICBCTl9ERUYoMHhCMkM4RTNGQiwgMHhEMTA4 QTk0QiksIEJOX0RFRigweEIzMjRGQjYxLCAweEJDMEFCMTgyKSwKLSsgICAgQk5fREVGKDB4NDgz QTc5N0EsIDB4MzBBQ0NBNEYpLCBCTl9ERUYoMHgzNkFERTczNSwgMHgxREYxNThBMSksCi0rICAg IEJOX0RFRigweEYzRUZFODcyLCAweEUyQTY4OURBKSwgQk5fREVGKDB4RTBFNjhCNzcsIDB4OTg0 RjBDNzApLAotKyAgICBCTl9ERUYoMHg3RjU3QzkzNSwgMHhCNTU3MTM1RSksIEJOX0RFRigweDNE RUQxQUYzLCAweDg1NjM2NTU1KSwKLSsgICAgQk5fREVGKDB4NUYwNjZFRDAsIDB4MjQzM0Y1MUYp LCBCTl9ERUYoMHhENUZENjU2MSwgMHhEM0RGMUVENSksCi0rICAgIEJOX0RFRigweEFFQzQ2MTdB LCAweEY2ODFCMjAyKSwgQk5fREVGKDB4NjMwQzc1RDgsIDB4N0QyRkUzNjMpLAotKyAgICBCTl9E RUYoMHgyNDlCM0VGOSwgMHhDQzkzOURDRSksIEJOX0RFRigweDE0NjQzM0ZCLCAweEE5RTEzNjQx KSwKLSsgICAgQk5fREVGKDB4Q0UyRDM2OTUsIDB4RDhCOUM1ODMpLCBCTl9ERUYoMHgyNzNEM0NG MSwgMHhBRkRDNTYyMCksCi0rICAgIEJOX0RFRigweEEyQkI0QTlBLCAweEFERjg1NDU4KSwgQk5f REVGKDB4RkZGRkZGRkYsIDB4RkZGRkZGRkYpCi0rfTsKLSsvKiBxID0gKHAgLSAxKSAvIDIgKi8K LStzdGF0aWMgY29uc3QgQk5fVUxPTkcgZmZkaGUyMDQ4X3FbXSA9IHsKLSsgICAgQk5fREVGKDB4 RkZGRkZGRkYsICAweEZGRkZGRkZGKSwgQk5fREVGKDB4MzA5NDJFNEIsICAweDQ0MzVBMTFDKSwK LSsgICAgQk5fREVGKDB4NjBEOTc3RkQsICAweDYzNzlBNTEzKSwgQk5fREVGKDB4QkU4QjQxRDks ICAweEUyQzc3OEMxKSwKLSsgICAgQk5fREVGKDB4MTc2MTEwMDIsICAweDlEREFGRTVFKSwgQk5f REVGKDB4QTYzN0Q2QjksICAweEUxRkYxRDhEKSwKLSsgICAgQk5fREVGKDB4Nzc3OTQwQzEsICAw eEM3Mjc4OTE5KSwgQk5fREVGKDB4NzRDMkMxRkYsICAweEM4Qjk3RjRFKSwKLSsgICAgQk5fREVG KDB4OTQxQTE3QjAsICAweDYwMUEwMjY2KSwgQk5fREVGKDB4RTZGQkYxNzYsICAweDRGMDE3RTcw KSwKLSsgICAgQk5fREVGKDB4NzcwNTM2QjgsICAweDg1ODNEM0U0KSwgQk5fREVGKDB4QjFCOTVE OEMsICAweDU3MkI3NkYzKSwKLSsgICAgQk5fREVGKDB4RUYxQ0E2RkEsICAweDBFQTdBMTUxKSwg Qk5fREVGKDB4QjA2QkZBMzQsICAweERDQjU2RDVCKSwKLSsgICAgQk5fREVGKDB4RDk2NDcxRkQs ICAweEU4ODQ1NEE1KSwgQk5fREVGKDB4NTk5MjdEQjAsICAweDVFMDU1OEMxKSwKLSsgICAgQk5f REVGKDB4QTQxRDNDQkQsICAweDk4NTY2NTI3KSwgQk5fREVGKDB4OUI1NkYzOUEsICAweDBFRjhB QzUwKSwKLSsgICAgQk5fREVGKDB4NzlGN0Y0MzksICAweEYxNTM0NEVEKSwgQk5fREVGKDB4NzA3 MzQ1QkIsICAweENDMjc4NjM4KSwKLSsgICAgQk5fREVGKDB4M0ZBQkU0OUEsICAweERBQUI4OUFG KSwgQk5fREVGKDB4OUVGNjhENzksICAweDQyQjFCMkFBKSwKLSsgICAgQk5fREVGKDB4QUY4MzM3 NjgsICAweDkyMTlGQThGKSwgQk5fREVGKDB4RUFGRUIyQjAsICAweDY5RUY4RjZBKSwKLSsgICAg Qk5fREVGKDB4NTc2MjMwQkQsICAweDdCNDBEOTAxKSwgQk5fREVGKDB4QjE4NjNBRUMsICAweEJF OTdGMUIxKSwKLSsgICAgQk5fREVGKDB4MTI0RDlGN0MsICAweEU2NDlDRUU3KSwgQk5fREVGKDB4 OEEzMjE5RkQsICAweEQ0RjA5QjIwKSwKLSsgICAgQk5fREVGKDB4RTcxNjlCNEEsICAweEVDNUNF MkMxKSwgQk5fREVGKDB4MTM5RTlFNzgsICAweDU3RUUyQjEwKSwKLSsgICAgQk5fREVGKDB4NTE1 REE1NEQsICAweEQ2RkMyQTJDKSwgQk5fREVGKDB4RkZGRkZGRkYsICAweDdGRkZGRkZGKSwKLSB9 OwotIAotIHN0YXRpYyBjb25zdCBCTl9VTE9ORyBmZmRoZTMwNzJfcFtdID0gewotLSAgICAweEZG RkZGRkZGLCAweEZGRkZGRkZGLCAweDY2QzYyRTM3LCAweDI1RTQxRDJCLCAweDNGRDU5RDdDLCAw eDNDMUIyMEVFLAotLSAgICAweEZBNTNEREVGLCAweDBBQkNEMDZCLCAweEQ1QzQ0ODRFLCAweDFE QkY5QTQyLCAweDlCMERFQURBLCAweEFCQzUyMTk3LAotLSAgICAweDIyMzYzQTBELCAweEU4NkQy QkM1LCAweDlDOURGNjlFLCAweDVDQUU4MkFCLCAweDcxRjU0QkZGLCAweDY0RjJFMjFFLAotLSAg ICAweEUyRDc0REQzLCAweEY0RkQ0NDUyLCAweEJDNDM3OTQ0LCAweEI0MTMwQzkzLCAweDg1MTM5 MjcwLCAweEFFRkUxMzA5LAotLSAgICAweEMxODZEOTFDLCAweDU5OENCMEZBLCAweDkxRjdGN0VF LCAweDdBRDkxRDI2LCAweEQ2RTZDOTA3LCAweDYxQjQ2RkM5LAotLSAgICAweEY5OUMwMjM4LCAw eEJDMzRGNERFLCAweDY1MTkwMzVCLCAweERFMzU1QjNCLCAweDYxMUZDRkRDLCAweDg4NkI0MjM4 LAotLSAgICAweEMxQjJFRkZBLCAweEM2RjM0QTI2LCAweDdEMTY4M0IyLCAweEM1OEVGMTgzLCAw eDJFQzIyMDA1LCAweDNCQjVGQ0JDLAotLSAgICAweDRDNkZBRDczLCAweEMzRkUzQjFCLCAweEVF RjI4MTgzLCAweDhFNEYxMjMyLCAweEU5ODU4M0ZGLCAweDkxNzJGRTlDLAotLSAgICAweDI4MzQy RjYxLCAweEMwMzQwNENELCAweENERjdFMkVDLCAweDlFMDJGQ0UxLCAweEVFMEE2RDcwLCAweDBC MDdBN0M4LAotLSAgICAweDYzNzJCQjE5LCAweEFFNTZFREU3LCAweERFMzk0REY0LCAweDFENEY0 MkEzLCAweDYwRDdGNDY4LCAweEI5NkFEQUI3LAotLSAgICAweEIyQzhFM0ZCLCAweEQxMDhBOTRC LCAweEIzMjRGQjYxLCAweEJDMEFCMTgyLCAweDQ4M0E3OTdBLCAweDMwQUNDQTRGLAotLSAgICAw eDM2QURFNzM1LCAweDFERjE1OEExLCAweEYzRUZFODcyLCAweEUyQTY4OURBLCAweEUwRTY4Qjc3 LCAweDk4NEYwQzcwLAotLSAgICAweDdGNTdDOTM1LCAweEI1NTcxMzVFLCAweDNERUQxQUYzLCAw eDg1NjM2NTU1LCAweDVGMDY2RUQwLCAweDI0MzNGNTFGLAotLSAgICAweEQ1RkQ2NTYxLCAweEQz REYxRUQ1LCAweEFFQzQ2MTdBLCAweEY2ODFCMjAyLCAweDYzMEM3NUQ4LCAweDdEMkZFMzYzLAot LSAgICAweDI0OUIzRUY5LCAweENDOTM5RENFLCAweDE0NjQzM0ZCLCAweEE5RTEzNjQxLCAweENF MkQzNjk1LCAweEQ4QjlDNTgzLAotLSAgICAweDI3M0QzQ0YxLCAweEFGREM1NjIwLCAweEEyQkI0 QTlBLCAweEFERjg1NDU4LCAweEZGRkZGRkZGLCAweEZGRkZGRkZGCi0rICAgIEJOX0RFRigweEZG RkZGRkZGLCAweEZGRkZGRkZGKSwgQk5fREVGKDB4NjZDNjJFMzcsIDB4MjVFNDFEMkIpLAotKyAg ICBCTl9ERUYoMHgzRkQ1OUQ3QywgMHgzQzFCMjBFRSksIEJOX0RFRigweEZBNTNEREVGLCAweDBB QkNEMDZCKSwKLSsgICAgQk5fREVGKDB4RDVDNDQ4NEUsIDB4MURCRjlBNDIpLCBCTl9ERUYoMHg5 QjBERUFEQSwgMHhBQkM1MjE5NyksCi0rICAgIEJOX0RFRigweDIyMzYzQTBELCAweEU4NkQyQkM1 KSwgQk5fREVGKDB4OUM5REY2OUUsIDB4NUNBRTgyQUIpLAotKyAgICBCTl9ERUYoMHg3MUY1NEJG RiwgMHg2NEYyRTIxRSksIEJOX0RFRigweEUyRDc0REQzLCAweEY0RkQ0NDUyKSwKLSsgICAgQk5f REVGKDB4QkM0Mzc5NDQsIDB4QjQxMzBDOTMpLCBCTl9ERUYoMHg4NTEzOTI3MCwgMHhBRUZFMTMw OSksCi0rICAgIEJOX0RFRigweEMxODZEOTFDLCAweDU5OENCMEZBKSwgQk5fREVGKDB4OTFGN0Y3 RUUsIDB4N0FEOTFEMjYpLAotKyAgICBCTl9ERUYoMHhENkU2QzkwNywgMHg2MUI0NkZDOSksIEJO X0RFRigweEY5OUMwMjM4LCAweEJDMzRGNERFKSwKLSsgICAgQk5fREVGKDB4NjUxOTAzNUIsIDB4 REUzNTVCM0IpLCBCTl9ERUYoMHg2MTFGQ0ZEQywgMHg4ODZCNDIzOCksCi0rICAgIEJOX0RFRigw eEMxQjJFRkZBLCAweEM2RjM0QTI2KSwgQk5fREVGKDB4N0QxNjgzQjIsIDB4QzU4RUYxODMpLAot KyAgICBCTl9ERUYoMHgyRUMyMjAwNSwgMHgzQkI1RkNCQyksIEJOX0RFRigweDRDNkZBRDczLCAw eEMzRkUzQjFCKSwKLSsgICAgQk5fREVGKDB4RUVGMjgxODMsIDB4OEU0RjEyMzIpLCBCTl9ERUYo MHhFOTg1ODNGRiwgMHg5MTcyRkU5QyksCi0rICAgIEJOX0RFRigweDI4MzQyRjYxLCAweEMwMzQw NENEKSwgQk5fREVGKDB4Q0RGN0UyRUMsIDB4OUUwMkZDRTEpLAotKyAgICBCTl9ERUYoMHhFRTBB NkQ3MCwgMHgwQjA3QTdDOCksIEJOX0RFRigweDYzNzJCQjE5LCAweEFFNTZFREU3KSwKLSsgICAg Qk5fREVGKDB4REUzOTRERjQsIDB4MUQ0RjQyQTMpLCBCTl9ERUYoMHg2MEQ3RjQ2OCwgMHhCOTZB REFCNyksCi0rICAgIEJOX0RFRigweEIyQzhFM0ZCLCAweEQxMDhBOTRCKSwgQk5fREVGKDB4QjMy NEZCNjEsIDB4QkMwQUIxODIpLAotKyAgICBCTl9ERUYoMHg0ODNBNzk3QSwgMHgzMEFDQ0E0Riks IEJOX0RFRigweDM2QURFNzM1LCAweDFERjE1OEExKSwKLSsgICAgQk5fREVGKDB4RjNFRkU4NzIs IDB4RTJBNjg5REEpLCBCTl9ERUYoMHhFMEU2OEI3NywgMHg5ODRGMEM3MCksCi0rICAgIEJOX0RF RigweDdGNTdDOTM1LCAweEI1NTcxMzVFKSwgQk5fREVGKDB4M0RFRDFBRjMsIDB4ODU2MzY1NTUp LAotKyAgICBCTl9ERUYoMHg1RjA2NkVEMCwgMHgyNDMzRjUxRiksIEJOX0RFRigweEQ1RkQ2NTYx LCAweEQzREYxRUQ1KSwKLSsgICAgQk5fREVGKDB4QUVDNDYxN0EsIDB4RjY4MUIyMDIpLCBCTl9E RUYoMHg2MzBDNzVEOCwgMHg3RDJGRTM2MyksCi0rICAgIEJOX0RFRigweDI0OUIzRUY5LCAweEND OTM5RENFKSwgQk5fREVGKDB4MTQ2NDMzRkIsIDB4QTlFMTM2NDEpLAotKyAgICBCTl9ERUYoMHhD RTJEMzY5NSwgMHhEOEI5QzU4MyksIEJOX0RFRigweDI3M0QzQ0YxLCAweEFGREM1NjIwKSwKLSsg ICAgQk5fREVGKDB4QTJCQjRBOUEsIDB4QURGODU0NTgpLCBCTl9ERUYoMHhGRkZGRkZGRiwgMHhG RkZGRkZGRikKLSt9OwotKy8qIHEgPSAocCAtIDEpIC8gMiAqLwotK3N0YXRpYyBjb25zdCBCTl9V TE9ORyBmZmRoZTMwNzJfcVtdID0gewotKyAgICBCTl9ERUYoMHhGRkZGRkZGRiwgIDB4RkZGRkZG RkYpLCBCTl9ERUYoMHhCMzYzMTcxQiwgIDB4MTJGMjBFOTUpLAotKyAgICBCTl9ERUYoMHgxRkVB Q0VCRSwgIDB4OUUwRDkwNzcpLCBCTl9ERUYoMHhGRDI5RUVGNywgIDB4MDU1RTY4MzUpLAotKyAg ICBCTl9ERUYoMHg2QUUyMjQyNywgIDB4MEVERkNEMjEpLCBCTl9ERUYoMHhDRDg2RjU2RCwgIDB4 RDVFMjkwQ0IpLAotKyAgICBCTl9ERUYoMHg5MTFCMUQwNiwgIDB4NzQzNjk1RTIpLCBCTl9ERUYo MHhDRTRFRkI0RiwgIDB4QUU1NzQxNTUpLAotKyAgICBCTl9ERUYoMHgzOEZBQTVGRiwgIDB4QjI3 OTcxMEYpLCBCTl9ERUYoMHg3MTZCQTZFOSwgIDB4N0E3RUEyMjkpLAotKyAgICBCTl9ERUYoMHhE RTIxQkNBMiwgIDB4NUEwOTg2NDkpLCBCTl9ERUYoMHhDMjg5QzkzOCwgIDB4NTc3RjA5ODQpLAot KyAgICBCTl9ERUYoMHg2MEMzNkM4RSwgIDB4MkNDNjU4N0QpLCBCTl9ERUYoMHg0OEZCRkJGNywg IDB4QkQ2QzhFOTMpLAotKyAgICBCTl9ERUYoMHhFQjczNjQ4MywgIDB4MzBEQTM3RTQpLCBCTl9E RUYoMHg3Q0NFMDExQywgIDB4REUxQTdBNkYpLAotKyAgICBCTl9ERUYoMHhCMjhDODFBRCwgIDB4 NkYxQUFEOUQpLCBCTl9ERUYoMHgzMDhGRTdFRSwgIDB4NDQzNUExMUMpLAotKyAgICBCTl9ERUYo MHg2MEQ5NzdGRCwgIDB4NjM3OUE1MTMpLCBCTl9ERUYoMHhCRThCNDFEOSwgIDB4RTJDNzc4QzEp LAotKyAgICBCTl9ERUYoMHgxNzYxMTAwMiwgIDB4OUREQUZFNUUpLCBCTl9ERUYoMHhBNjM3RDZC OSwgIDB4RTFGRjFEOEQpLAotKyAgICBCTl9ERUYoMHg3Nzc5NDBDMSwgIDB4QzcyNzg5MTkpLCBC Tl9ERUYoMHg3NEMyQzFGRiwgIDB4QzhCOTdGNEUpLAotKyAgICBCTl9ERUYoMHg5NDFBMTdCMCwg IDB4NjAxQTAyNjYpLCBCTl9ERUYoMHhFNkZCRjE3NiwgIDB4NEYwMTdFNzApLAotKyAgICBCTl9E RUYoMHg3NzA1MzZCOCwgIDB4ODU4M0QzRTQpLCBCTl9ERUYoMHhCMUI5NUQ4QywgIDB4NTcyQjc2 RjMpLAotKyAgICBCTl9ERUYoMHhFRjFDQTZGQSwgIDB4MEVBN0ExNTEpLCBCTl9ERUYoMHhCMDZC RkEzNCwgIDB4RENCNTZENUIpLAotKyAgICBCTl9ERUYoMHhEOTY0NzFGRCwgIDB4RTg4NDU0QTUp LCBCTl9ERUYoMHg1OTkyN0RCMCwgIDB4NUUwNTU4QzEpLAotKyAgICBCTl9ERUYoMHhBNDFEM0NC RCwgIDB4OTg1NjY1MjcpLCBCTl9ERUYoMHg5QjU2RjM5QSwgIDB4MEVGOEFDNTApLAotKyAgICBC Tl9ERUYoMHg3OUY3RjQzOSwgIDB4RjE1MzQ0RUQpLCBCTl9ERUYoMHg3MDczNDVCQiwgIDB4Q0My Nzg2MzgpLAotKyAgICBCTl9ERUYoMHgzRkFCRTQ5QSwgIDB4REFBQjg5QUYpLCBCTl9ERUYoMHg5 RUY2OEQ3OSwgIDB4NDJCMUIyQUEpLAotKyAgICBCTl9ERUYoMHhBRjgzMzc2OCwgIDB4OTIxOUZB OEYpLCBCTl9ERUYoMHhFQUZFQjJCMCwgIDB4NjlFRjhGNkEpLAotKyAgICBCTl9ERUYoMHg1NzYy MzBCRCwgIDB4N0I0MEQ5MDEpLCBCTl9ERUYoMHhCMTg2M0FFQywgIDB4QkU5N0YxQjEpLAotKyAg ICBCTl9ERUYoMHgxMjREOUY3QywgIDB4RTY0OUNFRTcpLCBCTl9ERUYoMHg4QTMyMTlGRCwgIDB4 RDRGMDlCMjApLAotKyAgICBCTl9ERUYoMHhFNzE2OUI0QSwgIDB4RUM1Q0UyQzEpLCBCTl9ERUYo MHgxMzlFOUU3OCwgIDB4NTdFRTJCMTApLAotKyAgICBCTl9ERUYoMHg1MTVEQTU0RCwgIDB4RDZG QzJBMkMpLCBCTl9ERUYoMHhGRkZGRkZGRiwgIDB4N0ZGRkZGRkYpLAotIH07Ci0gCi0gc3RhdGlj IGNvbnN0IEJOX1VMT05HIGZmZGhlNDA5Nl9wW10gPSB7Ci0tICAgIDB4RkZGRkZGRkYsIDB4RkZG RkZGRkYsIDB4NUU2NTVGNkEsIDB4QzY4QTAwN0UsIDB4RjQ0MTgyRTEsIDB4NERCNUE4NTEsCi0t ICAgIDB4N0Y4OEE0NkIsIDB4OEVDOUI1NUEsIDB4Q0VDOTdEQ0YsIDB4MEE4MjkxQ0QsIDB4Rjk4 RDBBQ0MsIDB4MkE0RUNFQTksCi0tICAgIDB4NzE0MDAwM0MsIDB4MUExREI5M0QsIDB4MzNDQjhC N0EsIDB4MDkyOTk5QTMsIDB4NzFBRDAwMzgsIDB4NkRDNzc4RjksCi0tICAgIDB4OTE4MTMwQzQs IDB4QTkwNzYwMEEsIDB4MkQ5RTY4MzIsIDB4RUQ2QTFFMDEsIDB4RUZCNDMxOEEsIDB4NzEzNUM4 ODYsCi0tICAgIDB4N0UzMUNDN0EsIDB4ODdGNTVCQTUsIDB4NTUwMzQwMDQsIDB4Nzc2M0NGMUQs IDB4RDY5RjZEMTgsIDB4QUM3RDVGNDIsCi0tICAgIDB4RTU4ODU3QjYsIDB4NzkzMEU5RTQsIDB4 MTY0REY0RkIsIDB4NkU2RjUyQzMsIDB4NjY5RTFFRjEsIDB4MjVFNDFEMkIsCi0tICAgIDB4M0ZE NTlEN0MsIDB4M0MxQjIwRUUsIDB4RkE1M0RERUYsIDB4MEFCQ0QwNkIsIDB4RDVDNDQ4NEUsIDB4 MURCRjlBNDIsCi0tICAgIDB4OUIwREVBREEsIDB4QUJDNTIxOTcsIDB4MjIzNjNBMEQsIDB4RTg2 RDJCQzUsIDB4OUM5REY2OUUsIDB4NUNBRTgyQUIsCi0tICAgIDB4NzFGNTRCRkYsIDB4NjRGMkUy MUUsIDB4RTJENzRERDMsIDB4RjRGRDQ0NTIsIDB4QkM0Mzc5NDQsIDB4QjQxMzBDOTMsCi0tICAg IDB4ODUxMzkyNzAsIDB4QUVGRTEzMDksIDB4QzE4NkQ5MUMsIDB4NTk4Q0IwRkEsIDB4OTFGN0Y3 RUUsIDB4N0FEOTFEMjYsCi0tICAgIDB4RDZFNkM5MDcsIDB4NjFCNDZGQzksIDB4Rjk5QzAyMzgs IDB4QkMzNEY0REUsIDB4NjUxOTAzNUIsIDB4REUzNTVCM0IsCi0tICAgIDB4NjExRkNGREMsIDB4 ODg2QjQyMzgsIDB4QzFCMkVGRkEsIDB4QzZGMzRBMjYsIDB4N0QxNjgzQjIsIDB4QzU4RUYxODMs Ci0tICAgIDB4MkVDMjIwMDUsIDB4M0JCNUZDQkMsIDB4NEM2RkFENzMsIDB4QzNGRTNCMUIsIDB4 RUVGMjgxODMsIDB4OEU0RjEyMzIsCi0tICAgIDB4RTk4NTgzRkYsIDB4OTE3MkZFOUMsIDB4Mjgz NDJGNjEsIDB4QzAzNDA0Q0QsIDB4Q0RGN0UyRUMsIDB4OUUwMkZDRTEsCi0tICAgIDB4RUUwQTZE NzAsIDB4MEIwN0E3QzgsIDB4NjM3MkJCMTksIDB4QUU1NkVERTcsIDB4REUzOTRERjQsIDB4MUQ0 RjQyQTMsCi0tICAgIDB4NjBEN0Y0NjgsIDB4Qjk2QURBQjcsIDB4QjJDOEUzRkIsIDB4RDEwOEE5 NEIsIDB4QjMyNEZCNjEsIDB4QkMwQUIxODIsCi0tICAgIDB4NDgzQTc5N0EsIDB4MzBBQ0NBNEYs IDB4MzZBREU3MzUsIDB4MURGMTU4QTEsIDB4RjNFRkU4NzIsIDB4RTJBNjg5REEsCi0tICAgIDB4 RTBFNjhCNzcsIDB4OTg0RjBDNzAsIDB4N0Y1N0M5MzUsIDB4QjU1NzEzNUUsIDB4M0RFRDFBRjMs IDB4ODU2MzY1NTUsCi0tICAgIDB4NUYwNjZFRDAsIDB4MjQzM0Y1MUYsIDB4RDVGRDY1NjEsIDB4 RDNERjFFRDUsIDB4QUVDNDYxN0EsIDB4RjY4MUIyMDIsCi0tICAgIDB4NjMwQzc1RDgsIDB4N0Qy RkUzNjMsIDB4MjQ5QjNFRjksIDB4Q0M5MzlEQ0UsIDB4MTQ2NDMzRkIsIDB4QTlFMTM2NDEsCi0t ICAgIDB4Q0UyRDM2OTUsIDB4RDhCOUM1ODMsIDB4MjczRDNDRjEsIDB4QUZEQzU2MjAsIDB4QTJC QjRBOUEsIDB4QURGODU0NTgsCi0tICAgIDB4RkZGRkZGRkYsIDB4RkZGRkZGRkYKLSsgICAgQk5f REVGKDB4RkZGRkZGRkYsIDB4RkZGRkZGRkYpLCBCTl9ERUYoMHg1RTY1NUY2QSwgMHhDNjhBMDA3 RSksCi0rICAgIEJOX0RFRigweEY0NDE4MkUxLCAweDREQjVBODUxKSwgQk5fREVGKDB4N0Y4OEE0 NkIsIDB4OEVDOUI1NUEpLAotKyAgICBCTl9ERUYoMHhDRUM5N0RDRiwgMHgwQTgyOTFDRCksIEJO X0RFRigweEY5OEQwQUNDLCAweDJBNEVDRUE5KSwKLSsgICAgQk5fREVGKDB4NzE0MDAwM0MsIDB4 MUExREI5M0QpLCBCTl9ERUYoMHgzM0NCOEI3QSwgMHgwOTI5OTlBMyksCi0rICAgIEJOX0RFRigw eDcxQUQwMDM4LCAweDZEQzc3OEY5KSwgQk5fREVGKDB4OTE4MTMwQzQsIDB4QTkwNzYwMEEpLAot KyAgICBCTl9ERUYoMHgyRDlFNjgzMiwgMHhFRDZBMUUwMSksIEJOX0RFRigweEVGQjQzMThBLCAw eDcxMzVDODg2KSwKLSsgICAgQk5fREVGKDB4N0UzMUNDN0EsIDB4ODdGNTVCQTUpLCBCTl9ERUYo MHg1NTAzNDAwNCwgMHg3NzYzQ0YxRCksCi0rICAgIEJOX0RFRigweEQ2OUY2RDE4LCAweEFDN0Q1 RjQyKSwgQk5fREVGKDB4RTU4ODU3QjYsIDB4NzkzMEU5RTQpLAotKyAgICBCTl9ERUYoMHgxNjRE RjRGQiwgMHg2RTZGNTJDMyksIEJOX0RFRigweDY2OUUxRUYxLCAweDI1RTQxRDJCKSwKLSsgICAg Qk5fREVGKDB4M0ZENTlEN0MsIDB4M0MxQjIwRUUpLCBCTl9ERUYoMHhGQTUzRERFRiwgMHgwQUJD RDA2QiksCi0rICAgIEJOX0RFRigweEQ1QzQ0ODRFLCAweDFEQkY5QTQyKSwgQk5fREVGKDB4OUIw REVBREEsIDB4QUJDNTIxOTcpLAotKyAgICBCTl9ERUYoMHgyMjM2M0EwRCwgMHhFODZEMkJDNSks IEJOX0RFRigweDlDOURGNjlFLCAweDVDQUU4MkFCKSwKLSsgICAgQk5fREVGKDB4NzFGNTRCRkYs IDB4NjRGMkUyMUUpLCBCTl9ERUYoMHhFMkQ3NEREMywgMHhGNEZENDQ1MiksCi0rICAgIEJOX0RF RigweEJDNDM3OTQ0LCAweEI0MTMwQzkzKSwgQk5fREVGKDB4ODUxMzkyNzAsIDB4QUVGRTEzMDkp LAotKyAgICBCTl9ERUYoMHhDMTg2RDkxQywgMHg1OThDQjBGQSksIEJOX0RFRigweDkxRjdGN0VF LCAweDdBRDkxRDI2KSwKLSsgICAgQk5fREVGKDB4RDZFNkM5MDcsIDB4NjFCNDZGQzkpLCBCTl9E RUYoMHhGOTlDMDIzOCwgMHhCQzM0RjRERSksCi0rICAgIEJOX0RFRigweDY1MTkwMzVCLCAweERF MzU1QjNCKSwgQk5fREVGKDB4NjExRkNGREMsIDB4ODg2QjQyMzgpLAotKyAgICBCTl9ERUYoMHhD MUIyRUZGQSwgMHhDNkYzNEEyNiksIEJOX0RFRigweDdEMTY4M0IyLCAweEM1OEVGMTgzKSwKLSsg ICAgQk5fREVGKDB4MkVDMjIwMDUsIDB4M0JCNUZDQkMpLCBCTl9ERUYoMHg0QzZGQUQ3MywgMHhD M0ZFM0IxQiksCi0rICAgIEJOX0RFRigweEVFRjI4MTgzLCAweDhFNEYxMjMyKSwgQk5fREVGKDB4 RTk4NTgzRkYsIDB4OTE3MkZFOUMpLAotKyAgICBCTl9ERUYoMHgyODM0MkY2MSwgMHhDMDM0MDRD RCksIEJOX0RFRigweENERjdFMkVDLCAweDlFMDJGQ0UxKSwKLSsgICAgQk5fREVGKDB4RUUwQTZE NzAsIDB4MEIwN0E3QzgpLCBCTl9ERUYoMHg2MzcyQkIxOSwgMHhBRTU2RURFNyksCi0rICAgIEJO X0RFRigweERFMzk0REY0LCAweDFENEY0MkEzKSwgQk5fREVGKDB4NjBEN0Y0NjgsIDB4Qjk2QURB QjcpLAotKyAgICBCTl9ERUYoMHhCMkM4RTNGQiwgMHhEMTA4QTk0QiksIEJOX0RFRigweEIzMjRG QjYxLCAweEJDMEFCMTgyKSwKLSsgICAgQk5fREVGKDB4NDgzQTc5N0EsIDB4MzBBQ0NBNEYpLCBC Tl9ERUYoMHgzNkFERTczNSwgMHgxREYxNThBMSksCi0rICAgIEJOX0RFRigweEYzRUZFODcyLCAw eEUyQTY4OURBKSwgQk5fREVGKDB4RTBFNjhCNzcsIDB4OTg0RjBDNzApLAotKyAgICBCTl9ERUYo MHg3RjU3QzkzNSwgMHhCNTU3MTM1RSksIEJOX0RFRigweDNERUQxQUYzLCAweDg1NjM2NTU1KSwK LSsgICAgQk5fREVGKDB4NUYwNjZFRDAsIDB4MjQzM0Y1MUYpLCBCTl9ERUYoMHhENUZENjU2MSwg MHhEM0RGMUVENSksCi0rICAgIEJOX0RFRigweEFFQzQ2MTdBLCAweEY2ODFCMjAyKSwgQk5fREVG KDB4NjMwQzc1RDgsIDB4N0QyRkUzNjMpLAotKyAgICBCTl9ERUYoMHgyNDlCM0VGOSwgMHhDQzkz OURDRSksIEJOX0RFRigweDE0NjQzM0ZCLCAweEE5RTEzNjQxKSwKLSsgICAgQk5fREVGKDB4Q0Uy RDM2OTUsIDB4RDhCOUM1ODMpLCBCTl9ERUYoMHgyNzNEM0NGMSwgMHhBRkRDNTYyMCksCi0rICAg IEJOX0RFRigweEEyQkI0QTlBLCAweEFERjg1NDU4KSwgQk5fREVGKDB4RkZGRkZGRkYsIDB4RkZG RkZGRkYpCi0rfTsKLSsvKiBxID0gKHAgLSAxKSAvIDIgKi8KLStzdGF0aWMgY29uc3QgQk5fVUxP TkcgZmZkaGU0MDk2X3FbXSA9IHsKLSsgICAgQk5fREVGKDB4RkZGRkZGRkYsICAweDdGRkZGRkZG KSwgQk5fREVGKDB4MkYzMkFGQjUsICAweEUzNDUwMDNGKSwKLSsgICAgQk5fREVGKDB4RkEyMEMx NzAsICAweEE2REFENDI4KSwgQk5fREVGKDB4M0ZDNDUyMzUsICAweEM3NjREQUFEKSwKLSsgICAg Qk5fREVGKDB4RTc2NEJFRTcsICAweDA1NDE0OEU2KSwgQk5fREVGKDB4RkNDNjg1NjYsICAweDE1 Mjc2NzU0KSwKLSsgICAgQk5fREVGKDB4QjhBMDAwMUUsICAweDBEMEVEQzlFKSwgQk5fREVGKDB4 OTlFNUM1QkQsICAweDA0OTRDQ0QxKSwKLSsgICAgQk5fREVGKDB4QjhENjgwMUMsICAweDM2RTNC QzdDKSwgQk5fREVGKDB4NDhDMDk4NjIsICAweDU0ODNCMDA1KSwKLSsgICAgQk5fREVGKDB4OTZD RjM0MTksICAweDc2QjUwRjAwKSwgQk5fREVGKDB4NzdEQTE4QzUsICAweDM4OUFFNDQzKSwKLSsg ICAgQk5fREVGKDB4QkYxOEU2M0QsICAweDQzRkFBREQyKSwgQk5fREVGKDB4QUE4MUEwMDIsICAw eDNCQjFFNzhFKSwKLSsgICAgQk5fREVGKDB4NkI0RkI2OEMsICAweDU2M0VBRkExKSwgQk5fREVG KDB4NzJDNDJCREIsICAweEJDOTg3NEYyKSwKLSsgICAgQk5fREVGKDB4OEIyNkZBN0QsICAweEI3 MzdBOTYxKSwgQk5fREVGKDB4QjM0RjBGNzgsICAweDEyRjIwRTk1KSwKLSsgICAgQk5fREVGKDB4 MUZFQUNFQkUsICAweDlFMEQ5MDc3KSwgQk5fREVGKDB4RkQyOUVFRjcsICAweDA1NUU2ODM1KSwK LSsgICAgQk5fREVGKDB4NkFFMjI0MjcsICAweDBFREZDRDIxKSwgQk5fREVGKDB4Q0Q4NkY1NkQs ICAweEQ1RTI5MENCKSwKLSsgICAgQk5fREVGKDB4OTExQjFEMDYsICAweDc0MzY5NUUyKSwgQk5f REVGKDB4Q0U0RUZCNEYsICAweEFFNTc0MTU1KSwKLSsgICAgQk5fREVGKDB4MzhGQUE1RkYsICAw eEIyNzk3MTBGKSwgQk5fREVGKDB4NzE2QkE2RTksICAweDdBN0VBMjI5KSwKLSsgICAgQk5fREVG KDB4REUyMUJDQTIsICAweDVBMDk4NjQ5KSwgQk5fREVGKDB4QzI4OUM5MzgsICAweDU3N0YwOTg0 KSwKLSsgICAgQk5fREVGKDB4NjBDMzZDOEUsICAweDJDQzY1ODdEKSwgQk5fREVGKDB4NDhGQkZC RjcsICAweEJENkM4RTkzKSwKLSsgICAgQk5fREVGKDB4RUI3MzY0ODMsICAweDMwREEzN0U0KSwg Qk5fREVGKDB4N0NDRTAxMUMsICAweERFMUE3QTZGKSwKLSsgICAgQk5fREVGKDB4QjI4QzgxQUQs ICAweDZGMUFBRDlEKSwgQk5fREVGKDB4MzA4RkU3RUUsICAweDQ0MzVBMTFDKSwKLSsgICAgQk5f REVGKDB4NjBEOTc3RkQsICAweDYzNzlBNTEzKSwgQk5fREVGKDB4QkU4QjQxRDksICAweEUyQzc3 OEMxKSwKLSsgICAgQk5fREVGKDB4MTc2MTEwMDIsICAweDlEREFGRTVFKSwgQk5fREVGKDB4QTYz N0Q2QjksICAweEUxRkYxRDhEKSwKLSsgICAgQk5fREVGKDB4Nzc3OTQwQzEsICAweEM3Mjc4OTE5 KSwgQk5fREVGKDB4NzRDMkMxRkYsICAweEM4Qjk3RjRFKSwKLSsgICAgQk5fREVGKDB4OTQxQTE3 QjAsICAweDYwMUEwMjY2KSwgQk5fREVGKDB4RTZGQkYxNzYsICAweDRGMDE3RTcwKSwKLSsgICAg Qk5fREVGKDB4NzcwNTM2QjgsICAweDg1ODNEM0U0KSwgQk5fREVGKDB4QjFCOTVEOEMsICAweDU3 MkI3NkYzKSwKLSsgICAgQk5fREVGKDB4RUYxQ0E2RkEsICAweDBFQTdBMTUxKSwgQk5fREVGKDB4 QjA2QkZBMzQsICAweERDQjU2RDVCKSwKLSsgICAgQk5fREVGKDB4RDk2NDcxRkQsICAweEU4ODQ1 NEE1KSwgQk5fREVGKDB4NTk5MjdEQjAsICAweDVFMDU1OEMxKSwKLSsgICAgQk5fREVGKDB4QTQx RDNDQkQsICAweDk4NTY2NTI3KSwgQk5fREVGKDB4OUI1NkYzOUEsICAweDBFRjhBQzUwKSwKLSsg ICAgQk5fREVGKDB4NzlGN0Y0MzksICAweEYxNTM0NEVEKSwgQk5fREVGKDB4NzA3MzQ1QkIsICAw eENDMjc4NjM4KSwKLSsgICAgQk5fREVGKDB4M0ZBQkU0OUEsICAweERBQUI4OUFGKSwgQk5fREVG KDB4OUVGNjhENzksICAweDQyQjFCMkFBKSwKLSsgICAgQk5fREVGKDB4QUY4MzM3NjgsICAweDky MTlGQThGKSwgQk5fREVGKDB4RUFGRUIyQjAsICAweDY5RUY4RjZBKSwKLSsgICAgQk5fREVGKDB4 NTc2MjMwQkQsICAweDdCNDBEOTAxKSwgQk5fREVGKDB4QjE4NjNBRUMsICAweEJFOTdGMUIxKSwK LSsgICAgQk5fREVGKDB4MTI0RDlGN0MsICAweEU2NDlDRUU3KSwgQk5fREVGKDB4OEEzMjE5RkQs ICAweEQ0RjA5QjIwKSwKLSsgICAgQk5fREVGKDB4RTcxNjlCNEEsICAweEVDNUNFMkMxKSwgQk5f REVGKDB4MTM5RTlFNzgsICAweDU3RUUyQjEwKSwKLSsgICAgQk5fREVGKDB4NTE1REE1NEQsICAw eEQ2RkMyQTJDKSwgQk5fREVGKDB4RkZGRkZGRkYsICAweDdGRkZGRkZGKSwKLSB9OwotIAotIHN0 YXRpYyBjb25zdCBCTl9VTE9ORyBmZmRoZTYxNDRfcFtdID0gewotLSAgICAweEZGRkZGRkZGLCAw eEZGRkZGRkZGLCAweEQwRTQwRTY1LCAweEE0MEUzMjlDLCAweDc5MzhEQUQ0LCAweEE0MUQ1NzBE LAotLSAgICAweEQ0MzE2MUMxLCAweDYyQTY5NTI2LCAweDlBREIxRTY5LCAweDNGREQ0QThFLCAw eERDNkI4MEQ2LCAweDVCM0I3MUY5LAotLSAgICAweEM2MjcyQjA0LCAweEVDOUQxODEwLCAweENB Q0VGNDAzLCAweDhDQ0YyREQ1LCAweEM5NUI5MTE3LCAweEU0OUY1MjM1LAotLSAgICAweEI4NTQz MzhBLCAweDUwNURDODJELCAweDE1NjJBODQ2LCAweDYyMjkyQzMxLCAweDZBRTc3RjVFLCAweEQ3 MkIwMzc0LAotLSAgICAweDQ2MkQ1MzhDLCAweEY5QzkwOTFCLCAweDQ3QTY3Q0JFLCAweDBBRThE QjU4LCAweDIyNjExNjgyLCAweEIzQTczOUMxLAotLSAgICAweDJBMjgxQkY2LCAweEVFQUFDMDIz LCAweDc3Q0FGOTkyLCAweDk0QzY2NTFFLCAweDk0QjJCQkMxLCAweDc2M0U0RTRCLAotLSAgICAw eDAwNzdEOUI0LCAweDU4N0UzOERBLCAweDE4MzAyM0MzLCAweDdGQjI5RjhDLCAweEY5RTNBMjZF LCAweDBBQkVDMUZGLAotLSAgICAweDM1MDUxMUUzLCAweEEwMEVGMDkyLCAweERCNjM0MEQ4LCAw eEI4NTUzMjJFLCAweEE5QTk2OTEwLCAweEE1MjQ3MUY3LAotLSAgICAweDRDRkRCNDc3LCAweDM4 ODE0N0ZCLCAweDRFNDYwNDFGLCAweDlCMUY1QzNFLCAweEZDQ0ZFQzcxLCAweENEQUQwNjU3LAot LSAgICAweDRDNzAxQzNBLCAweEIzOEU4QzMzLCAweEIxQzBGRDRDLCAweDkxN0JERDY0LCAweDlC NzYyNEM4LCAweDNCQjQ1NDMyLAotLSAgICAweENBRjUzRUE2LCAweDIzQkE0NDQyLCAweDM4NTMy QTNBLCAweDRFNjc3RDJDLCAweDQ1MDM2QzdBLCAweDBCRkQ2NEI2LAotLSAgICAweDVFMEREOTAy LCAweEM2OEEwMDdFLCAweEY0NDE4MkUxLCAweDREQjVBODUxLCAweDdGODhBNDZCLCAweDhFQzlC NTVBLAotLSAgICAweENFQzk3RENGLCAweDBBODI5MUNELCAweEY5OEQwQUNDLCAweDJBNEVDRUE5 LCAweDcxNDAwMDNDLCAweDFBMURCOTNELAotLSAgICAweDMzQ0I4QjdBLCAweDA5Mjk5OUEzLCAw eDcxQUQwMDM4LCAweDZEQzc3OEY5LCAweDkxODEzMEM0LCAweEE5MDc2MDBBLAotLSAgICAweDJE OUU2ODMyLCAweEVENkExRTAxLCAweEVGQjQzMThBLCAweDcxMzVDODg2LCAweDdFMzFDQzdBLCAw eDg3RjU1QkE1LAotLSAgICAweDU1MDM0MDA0LCAweDc3NjNDRjFELCAweEQ2OUY2RDE4LCAweEFD N0Q1RjQyLCAweEU1ODg1N0I2LCAweDc5MzBFOUU0LAotLSAgICAweDE2NERGNEZCLCAweDZFNkY1 MkMzLCAweDY2OUUxRUYxLCAweDI1RTQxRDJCLCAweDNGRDU5RDdDLCAweDNDMUIyMEVFLAotLSAg ICAweEZBNTNEREVGLCAweDBBQkNEMDZCLCAweEQ1QzQ0ODRFLCAweDFEQkY5QTQyLCAweDlCMERF QURBLCAweEFCQzUyMTk3LAotLSAgICAweDIyMzYzQTBELCAweEU4NkQyQkM1LCAweDlDOURGNjlF LCAweDVDQUU4MkFCLCAweDcxRjU0QkZGLCAweDY0RjJFMjFFLAotLSAgICAweEUyRDc0REQzLCAw eEY0RkQ0NDUyLCAweEJDNDM3OTQ0LCAweEI0MTMwQzkzLCAweDg1MTM5MjcwLCAweEFFRkUxMzA5 LAotLSAgICAweEMxODZEOTFDLCAweDU5OENCMEZBLCAweDkxRjdGN0VFLCAweDdBRDkxRDI2LCAw eEQ2RTZDOTA3LCAweDYxQjQ2RkM5LAotLSAgICAweEY5OUMwMjM4LCAweEJDMzRGNERFLCAweDY1 MTkwMzVCLCAweERFMzU1QjNCLCAweDYxMUZDRkRDLCAweDg4NkI0MjM4LAotLSAgICAweEMxQjJF RkZBLCAweEM2RjM0QTI2LCAweDdEMTY4M0IyLCAweEM1OEVGMTgzLCAweDJFQzIyMDA1LCAweDNC QjVGQ0JDLAotLSAgICAweDRDNkZBRDczLCAweEMzRkUzQjFCLCAweEVFRjI4MTgzLCAweDhFNEYx MjMyLCAweEU5ODU4M0ZGLCAweDkxNzJGRTlDLAotLSAgICAweDI4MzQyRjYxLCAweEMwMzQwNENE LCAweENERjdFMkVDLCAweDlFMDJGQ0UxLCAweEVFMEE2RDcwLCAweDBCMDdBN0M4LAotLSAgICAw eDYzNzJCQjE5LCAweEFFNTZFREU3LCAweERFMzk0REY0LCAweDFENEY0MkEzLCAweDYwRDdGNDY4 LCAweEI5NkFEQUI3LAotLSAgICAweEIyQzhFM0ZCLCAweEQxMDhBOTRCLCAweEIzMjRGQjYxLCAw eEJDMEFCMTgyLCAweDQ4M0E3OTdBLCAweDMwQUNDQTRGLAotLSAgICAweDM2QURFNzM1LCAweDFE RjE1OEExLCAweEYzRUZFODcyLCAweEUyQTY4OURBLCAweEUwRTY4Qjc3LCAweDk4NEYwQzcwLAot LSAgICAweDdGNTdDOTM1LCAweEI1NTcxMzVFLCAweDNERUQxQUYzLCAweDg1NjM2NTU1LCAweDVG MDY2RUQwLCAweDI0MzNGNTFGLAotLSAgICAweEQ1RkQ2NTYxLCAweEQzREYxRUQ1LCAweEFFQzQ2 MTdBLCAweEY2ODFCMjAyLCAweDYzMEM3NUQ4LCAweDdEMkZFMzYzLAotLSAgICAweDI0OUIzRUY5 LCAweENDOTM5RENFLCAweDE0NjQzM0ZCLCAweEE5RTEzNjQxLCAweENFMkQzNjk1LCAweEQ4QjlD NTgzLAotLSAgICAweDI3M0QzQ0YxLCAweEFGREM1NjIwLCAweEEyQkI0QTlBLCAweEFERjg1NDU4 LCAweEZGRkZGRkZGLCAweEZGRkZGRkZGCi0rICAgIEJOX0RFRigweEZGRkZGRkZGLCAweEZGRkZG RkZGKSwgQk5fREVGKDB4RDBFNDBFNjUsIDB4QTQwRTMyOUMpLAotKyAgICBCTl9ERUYoMHg3OTM4 REFENCwgMHhBNDFENTcwRCksIEJOX0RFRigweEQ0MzE2MUMxLCAweDYyQTY5NTI2KSwKLSsgICAg Qk5fREVGKDB4OUFEQjFFNjksIDB4M0ZERDRBOEUpLCBCTl9ERUYoMHhEQzZCODBENiwgMHg1QjNC NzFGOSksCi0rICAgIEJOX0RFRigweEM2MjcyQjA0LCAweEVDOUQxODEwKSwgQk5fREVGKDB4Q0FD RUY0MDMsIDB4OENDRjJERDUpLAotKyAgICBCTl9ERUYoMHhDOTVCOTExNywgMHhFNDlGNTIzNSks IEJOX0RFRigweEI4NTQzMzhBLCAweDUwNURDODJEKSwKLSsgICAgQk5fREVGKDB4MTU2MkE4NDYs IDB4NjIyOTJDMzEpLCBCTl9ERUYoMHg2QUU3N0Y1RSwgMHhENzJCMDM3NCksCi0rICAgIEJOX0RF RigweDQ2MkQ1MzhDLCAweEY5QzkwOTFCKSwgQk5fREVGKDB4NDdBNjdDQkUsIDB4MEFFOERCNTgp LAotKyAgICBCTl9ERUYoMHgyMjYxMTY4MiwgMHhCM0E3MzlDMSksIEJOX0RFRigweDJBMjgxQkY2 LCAweEVFQUFDMDIzKSwKLSsgICAgQk5fREVGKDB4NzdDQUY5OTIsIDB4OTRDNjY1MUUpLCBCTl9E RUYoMHg5NEIyQkJDMSwgMHg3NjNFNEU0QiksCi0rICAgIEJOX0RFRigweDAwNzdEOUI0LCAweDU4 N0UzOERBKSwgQk5fREVGKDB4MTgzMDIzQzMsIDB4N0ZCMjlGOEMpLAotKyAgICBCTl9ERUYoMHhG OUUzQTI2RSwgMHgwQUJFQzFGRiksIEJOX0RFRigweDM1MDUxMUUzLCAweEEwMEVGMDkyKSwKLSsg ICAgQk5fREVGKDB4REI2MzQwRDgsIDB4Qjg1NTMyMkUpLCBCTl9ERUYoMHhBOUE5NjkxMCwgMHhB NTI0NzFGNyksCi0rICAgIEJOX0RFRigweDRDRkRCNDc3LCAweDM4ODE0N0ZCKSwgQk5fREVGKDB4 NEU0NjA0MUYsIDB4OUIxRjVDM0UpLAotKyAgICBCTl9ERUYoMHhGQ0NGRUM3MSwgMHhDREFEMDY1 NyksIEJOX0RFRigweDRDNzAxQzNBLCAweEIzOEU4QzMzKSwKLSsgICAgQk5fREVGKDB4QjFDMEZE NEMsIDB4OTE3QkRENjQpLCBCTl9ERUYoMHg5Qjc2MjRDOCwgMHgzQkI0NTQzMiksCi0rICAgIEJO X0RFRigweENBRjUzRUE2LCAweDIzQkE0NDQyKSwgQk5fREVGKDB4Mzg1MzJBM0EsIDB4NEU2NzdE MkMpLAotKyAgICBCTl9ERUYoMHg0NTAzNkM3QSwgMHgwQkZENjRCNiksIEJOX0RFRigweDVFMERE OTAyLCAweEM2OEEwMDdFKSwKLSsgICAgQk5fREVGKDB4RjQ0MTgyRTEsIDB4NERCNUE4NTEpLCBC Tl9ERUYoMHg3Rjg4QTQ2QiwgMHg4RUM5QjU1QSksCi0rICAgIEJOX0RFRigweENFQzk3RENGLCAw eDBBODI5MUNEKSwgQk5fREVGKDB4Rjk4RDBBQ0MsIDB4MkE0RUNFQTkpLAotKyAgICBCTl9ERUYo MHg3MTQwMDAzQywgMHgxQTFEQjkzRCksIEJOX0RFRigweDMzQ0I4QjdBLCAweDA5Mjk5OUEzKSwK LSsgICAgQk5fREVGKDB4NzFBRDAwMzgsIDB4NkRDNzc4RjkpLCBCTl9ERUYoMHg5MTgxMzBDNCwg MHhBOTA3NjAwQSksCi0rICAgIEJOX0RFRigweDJEOUU2ODMyLCAweEVENkExRTAxKSwgQk5fREVG KDB4RUZCNDMxOEEsIDB4NzEzNUM4ODYpLAotKyAgICBCTl9ERUYoMHg3RTMxQ0M3QSwgMHg4N0Y1 NUJBNSksIEJOX0RFRigweDU1MDM0MDA0LCAweDc3NjNDRjFEKSwKLSsgICAgQk5fREVGKDB4RDY5 RjZEMTgsIDB4QUM3RDVGNDIpLCBCTl9ERUYoMHhFNTg4NTdCNiwgMHg3OTMwRTlFNCksCi0rICAg IEJOX0RFRigweDE2NERGNEZCLCAweDZFNkY1MkMzKSwgQk5fREVGKDB4NjY5RTFFRjEsIDB4MjVF NDFEMkIpLAotKyAgICBCTl9ERUYoMHgzRkQ1OUQ3QywgMHgzQzFCMjBFRSksIEJOX0RFRigweEZB NTNEREVGLCAweDBBQkNEMDZCKSwKLSsgICAgQk5fREVGKDB4RDVDNDQ4NEUsIDB4MURCRjlBNDIp LCBCTl9ERUYoMHg5QjBERUFEQSwgMHhBQkM1MjE5NyksCi0rICAgIEJOX0RFRigweDIyMzYzQTBE LCAweEU4NkQyQkM1KSwgQk5fREVGKDB4OUM5REY2OUUsIDB4NUNBRTgyQUIpLAotKyAgICBCTl9E RUYoMHg3MUY1NEJGRiwgMHg2NEYyRTIxRSksIEJOX0RFRigweEUyRDc0REQzLCAweEY0RkQ0NDUy KSwKLSsgICAgQk5fREVGKDB4QkM0Mzc5NDQsIDB4QjQxMzBDOTMpLCBCTl9ERUYoMHg4NTEzOTI3 MCwgMHhBRUZFMTMwOSksCi0rICAgIEJOX0RFRigweEMxODZEOTFDLCAweDU5OENCMEZBKSwgQk5f REVGKDB4OTFGN0Y3RUUsIDB4N0FEOTFEMjYpLAotKyAgICBCTl9ERUYoMHhENkU2QzkwNywgMHg2 MUI0NkZDOSksIEJOX0RFRigweEY5OUMwMjM4LCAweEJDMzRGNERFKSwKLSsgICAgQk5fREVGKDB4 NjUxOTAzNUIsIDB4REUzNTVCM0IpLCBCTl9ERUYoMHg2MTFGQ0ZEQywgMHg4ODZCNDIzOCksCi0r ICAgIEJOX0RFRigweEMxQjJFRkZBLCAweEM2RjM0QTI2KSwgQk5fREVGKDB4N0QxNjgzQjIsIDB4 QzU4RUYxODMpLAotKyAgICBCTl9ERUYoMHgyRUMyMjAwNSwgMHgzQkI1RkNCQyksIEJOX0RFRigw eDRDNkZBRDczLCAweEMzRkUzQjFCKSwKLSsgICAgQk5fREVGKDB4RUVGMjgxODMsIDB4OEU0RjEy MzIpLCBCTl9ERUYoMHhFOTg1ODNGRiwgMHg5MTcyRkU5QyksCi0rICAgIEJOX0RFRigweDI4MzQy RjYxLCAweEMwMzQwNENEKSwgQk5fREVGKDB4Q0RGN0UyRUMsIDB4OUUwMkZDRTEpLAotKyAgICBC Tl9ERUYoMHhFRTBBNkQ3MCwgMHgwQjA3QTdDOCksIEJOX0RFRigweDYzNzJCQjE5LCAweEFFNTZF REU3KSwKLSsgICAgQk5fREVGKDB4REUzOTRERjQsIDB4MUQ0RjQyQTMpLCBCTl9ERUYoMHg2MEQ3 RjQ2OCwgMHhCOTZBREFCNyksCi0rICAgIEJOX0RFRigweEIyQzhFM0ZCLCAweEQxMDhBOTRCKSwg Qk5fREVGKDB4QjMyNEZCNjEsIDB4QkMwQUIxODIpLAotKyAgICBCTl9ERUYoMHg0ODNBNzk3QSwg MHgzMEFDQ0E0RiksIEJOX0RFRigweDM2QURFNzM1LCAweDFERjE1OEExKSwKLSsgICAgQk5fREVG KDB4RjNFRkU4NzIsIDB4RTJBNjg5REEpLCBCTl9ERUYoMHhFMEU2OEI3NywgMHg5ODRGMEM3MCks Ci0rICAgIEJOX0RFRigweDdGNTdDOTM1LCAweEI1NTcxMzVFKSwgQk5fREVGKDB4M0RFRDFBRjMs IDB4ODU2MzY1NTUpLAotKyAgICBCTl9ERUYoMHg1RjA2NkVEMCwgMHgyNDMzRjUxRiksIEJOX0RF RigweEQ1RkQ2NTYxLCAweEQzREYxRUQ1KSwKLSsgICAgQk5fREVGKDB4QUVDNDYxN0EsIDB4RjY4 MUIyMDIpLCBCTl9ERUYoMHg2MzBDNzVEOCwgMHg3RDJGRTM2MyksCi0rICAgIEJOX0RFRigweDI0 OUIzRUY5LCAweENDOTM5RENFKSwgQk5fREVGKDB4MTQ2NDMzRkIsIDB4QTlFMTM2NDEpLAotKyAg ICBCTl9ERUYoMHhDRTJEMzY5NSwgMHhEOEI5QzU4MyksIEJOX0RFRigweDI3M0QzQ0YxLCAweEFG REM1NjIwKSwKLSsgICAgQk5fREVGKDB4QTJCQjRBOUEsIDB4QURGODU0NTgpLCBCTl9ERUYoMHhG RkZGRkZGRiwgMHhGRkZGRkZGRikKLSt9OwotKy8qIHEgPSAocCAtIDEpIC8gMiAqLwotK3N0YXRp YyBjb25zdCBCTl9VTE9ORyBmZmRoZTYxNDRfcVtdID0gewotKyAgICBCTl9ERUYoMHhGRkZGRkZG RiwgIDB4RkZGRkZGRkYpLCBCTl9ERUYoMHg2ODcyMDczMiwgIDB4NTIwNzE5NEUpLAotKyAgICBC Tl9ERUYoMHhCQzlDNkQ2QSwgIDB4RDIwRUFCODYpLCBCTl9ERUYoMHg2QTE4QjBFMCwgIDB4QjE1 MzRBOTMpLAotKyAgICBCTl9ERUYoMHg0RDZEOEYzNCwgIDB4MUZFRUE1NDcpLCBCTl9ERUYoMHhF RTM1QzA2QiwgIDB4MkQ5REI4RkMpLAotKyAgICBCTl9ERUYoMHg2MzEzOTU4MiwgIDB4RjY0RThD MDgpLCBCTl9ERUYoMHhFNTY3N0EwMSwgIDB4QzY2Nzk2RUEpLAotKyAgICBCTl9ERUYoMHhFNEFE Qzg4QiwgIDB4NzI0RkE5MUEpLCBCTl9ERUYoMHhEQzJBMTlDNSwgIDB4MjgyRUU0MTYpLAotKyAg ICBCTl9ERUYoMHg4QUIxNTQyMywgIDB4MzExNDk2MTgpLCBCTl9ERUYoMHgzNTczQkZBRiwgIDB4 NkI5NTgxQkEpLAotKyAgICBCTl9ERUYoMHhBMzE2QTlDNiwgIDB4N0NFNDg0OEQpLCBCTl9ERUYo MHgyM0QzM0U1RiwgIDB4MDU3NDZEQUMpLAotKyAgICBCTl9ERUYoMHg5MTMwOEI0MSwgIDB4NTlE MzlDRTApLCBCTl9ERUYoMHg5NTE0MERGQiwgIDB4Nzc1NTYwMTEpLAotKyAgICBCTl9ERUYoMHgz QkU1N0NDOSwgIDB4Q0E2MzMyOEYpLCBCTl9ERUYoMHhDQTU5NURFMCwgIDB4M0IxRjI3MjUpLAot KyAgICBCTl9ERUYoMHgwMDNCRUNEQSwgIDB4QUMzRjFDNkQpLCBCTl9ERUYoMHgwQzE4MTFFMSwg IDB4M0ZEOTRGQzYpLAotKyAgICBCTl9ERUYoMHhGQ0YxRDEzNywgIDB4ODU1RjYwRkYpLCBCTl9E RUYoMHgxQTgyODhGMSwgIDB4NTAwNzc4NDkpLAotKyAgICBCTl9ERUYoMHg2REIxQTA2QywgIDB4 NUMyQTk5MTcpLCBCTl9ERUYoMHhENEQ0QjQ4OCwgIDB4RDI5MjM4RkIpLAotKyAgICBCTl9ERUYo MHhBNjdFREEzQiwgIDB4OUM0MEEzRkQpLCBCTl9ERUYoMHgyNzIzMDIwRiwgIDB4Q0Q4RkFFMUYp LAotKyAgICBCTl9ERUYoMHhGRTY3RjYzOCwgIDB4NjZENjgzMkIpLCBCTl9ERUYoMHhBNjM4MEUx RCwgIDB4NTlDNzQ2MTkpLAotKyAgICBCTl9ERUYoMHg1OEUwN0VBNiwgIDB4NDhCREVFQjIpLCBC Tl9ERUYoMHg0REJCMTI2NCwgIDB4MUREQTJBMTkpLAotKyAgICBCTl9ERUYoMHg2NTdBOUY1Mywg IDB4MTFERDIyMjEpLCBCTl9ERUYoMHgxQzI5OTUxRCwgIDB4MjczM0JFOTYpLAotKyAgICBCTl9E RUYoMHgyMjgxQjYzRCwgIDB4MDVGRUIyNUIpLCBCTl9ERUYoMHgyRjA2RUM4MSwgIDB4RTM0NTAw M0YpLAotKyAgICBCTl9ERUYoMHhGQTIwQzE3MCwgIDB4QTZEQUQ0MjgpLCBCTl9ERUYoMHgzRkM0 NTIzNSwgIDB4Qzc2NERBQUQpLAotKyAgICBCTl9ERUYoMHhFNzY0QkVFNywgIDB4MDU0MTQ4RTYp LCBCTl9ERUYoMHhGQ0M2ODU2NiwgIDB4MTUyNzY3NTQpLAotKyAgICBCTl9ERUYoMHhCOEEwMDAx RSwgIDB4MEQwRURDOUUpLCBCTl9ERUYoMHg5OUU1QzVCRCwgIDB4MDQ5NENDRDEpLAotKyAgICBC Tl9ERUYoMHhCOEQ2ODAxQywgIDB4MzZFM0JDN0MpLCBCTl9ERUYoMHg0OEMwOTg2MiwgIDB4NTQ4 M0IwMDUpLAotKyAgICBCTl9ERUYoMHg5NkNGMzQxOSwgIDB4NzZCNTBGMDApLCBCTl9ERUYoMHg3 N0RBMThDNSwgIDB4Mzg5QUU0NDMpLAotKyAgICBCTl9ERUYoMHhCRjE4RTYzRCwgIDB4NDNGQUFE RDIpLCBCTl9ERUYoMHhBQTgxQTAwMiwgIDB4M0JCMUU3OEUpLAotKyAgICBCTl9ERUYoMHg2QjRG QjY4QywgIDB4NTYzRUFGQTEpLCBCTl9ERUYoMHg3MkM0MkJEQiwgIDB4QkM5ODc0RjIpLAotKyAg ICBCTl9ERUYoMHg4QjI2RkE3RCwgIDB4QjczN0E5NjEpLCBCTl9ERUYoMHhCMzRGMEY3OCwgIDB4 MTJGMjBFOTUpLAotKyAgICBCTl9ERUYoMHgxRkVBQ0VCRSwgIDB4OUUwRDkwNzcpLCBCTl9ERUYo MHhGRDI5RUVGNywgIDB4MDU1RTY4MzUpLAotKyAgICBCTl9ERUYoMHg2QUUyMjQyNywgIDB4MEVE RkNEMjEpLCBCTl9ERUYoMHhDRDg2RjU2RCwgIDB4RDVFMjkwQ0IpLAotKyAgICBCTl9ERUYoMHg5 MTFCMUQwNiwgIDB4NzQzNjk1RTIpLCBCTl9ERUYoMHhDRTRFRkI0RiwgIDB4QUU1NzQxNTUpLAot KyAgICBCTl9ERUYoMHgzOEZBQTVGRiwgIDB4QjI3OTcxMEYpLCBCTl9ERUYoMHg3MTZCQTZFOSwg IDB4N0E3RUEyMjkpLAotKyAgICBCTl9ERUYoMHhERTIxQkNBMiwgIDB4NUEwOTg2NDkpLCBCTl9E RUYoMHhDMjg5QzkzOCwgIDB4NTc3RjA5ODQpLAotKyAgICBCTl9ERUYoMHg2MEMzNkM4RSwgIDB4 MkNDNjU4N0QpLCBCTl9ERUYoMHg0OEZCRkJGNywgIDB4QkQ2QzhFOTMpLAotKyAgICBCTl9ERUYo MHhFQjczNjQ4MywgIDB4MzBEQTM3RTQpLCBCTl9ERUYoMHg3Q0NFMDExQywgIDB4REUxQTdBNkYp LAotKyAgICBCTl9ERUYoMHhCMjhDODFBRCwgIDB4NkYxQUFEOUQpLCBCTl9ERUYoMHgzMDhGRTdF RSwgIDB4NDQzNUExMUMpLAotKyAgICBCTl9ERUYoMHg2MEQ5NzdGRCwgIDB4NjM3OUE1MTMpLCBC Tl9ERUYoMHhCRThCNDFEOSwgIDB4RTJDNzc4QzEpLAotKyAgICBCTl9ERUYoMHgxNzYxMTAwMiwg IDB4OUREQUZFNUUpLCBCTl9ERUYoMHhBNjM3RDZCOSwgIDB4RTFGRjFEOEQpLAotKyAgICBCTl9E RUYoMHg3Nzc5NDBDMSwgIDB4QzcyNzg5MTkpLCBCTl9ERUYoMHg3NEMyQzFGRiwgIDB4QzhCOTdG NEUpLAotKyAgICBCTl9ERUYoMHg5NDFBMTdCMCwgIDB4NjAxQTAyNjYpLCBCTl9ERUYoMHhFNkZC RjE3NiwgIDB4NEYwMTdFNzApLAotKyAgICBCTl9ERUYoMHg3NzA1MzZCOCwgIDB4ODU4M0QzRTQp LCBCTl9ERUYoMHhCMUI5NUQ4QywgIDB4NTcyQjc2RjMpLAotKyAgICBCTl9ERUYoMHhFRjFDQTZG QSwgIDB4MEVBN0ExNTEpLCBCTl9ERUYoMHhCMDZCRkEzNCwgIDB4RENCNTZENUIpLAotKyAgICBC Tl9ERUYoMHhEOTY0NzFGRCwgIDB4RTg4NDU0QTUpLCBCTl9ERUYoMHg1OTkyN0RCMCwgIDB4NUUw NTU4QzEpLAotKyAgICBCTl9ERUYoMHhBNDFEM0NCRCwgIDB4OTg1NjY1MjcpLCBCTl9ERUYoMHg5 QjU2RjM5QSwgIDB4MEVGOEFDNTApLAotKyAgICBCTl9ERUYoMHg3OUY3RjQzOSwgIDB4RjE1MzQ0 RUQpLCBCTl9ERUYoMHg3MDczNDVCQiwgIDB4Q0MyNzg2MzgpLAotKyAgICBCTl9ERUYoMHgzRkFC RTQ5QSwgIDB4REFBQjg5QUYpLCBCTl9ERUYoMHg5RUY2OEQ3OSwgIDB4NDJCMUIyQUEpLAotKyAg ICBCTl9ERUYoMHhBRjgzMzc2OCwgIDB4OTIxOUZBOEYpLCBCTl9ERUYoMHhFQUZFQjJCMCwgIDB4 NjlFRjhGNkEpLAotKyAgICBCTl9ERUYoMHg1NzYyMzBCRCwgIDB4N0I0MEQ5MDEpLCBCTl9ERUYo MHhCMTg2M0FFQywgIDB4QkU5N0YxQjEpLAotKyAgICBCTl9ERUYoMHgxMjREOUY3QywgIDB4RTY0 OUNFRTcpLCBCTl9ERUYoMHg4QTMyMTlGRCwgIDB4RDRGMDlCMjApLAotKyAgICBCTl9ERUYoMHhF NzE2OUI0QSwgIDB4RUM1Q0UyQzEpLCBCTl9ERUYoMHgxMzlFOUU3OCwgIDB4NTdFRTJCMTApLAot KyAgICBCTl9ERUYoMHg1MTVEQTU0RCwgIDB4RDZGQzJBMkMpLCBCTl9ERUYoMHhGRkZGRkZGRiwg IDB4N0ZGRkZGRkYpLAotIH07Ci0gCi0gc3RhdGljIGNvbnN0IEJOX1VMT05HIGZmZGhlODE5Ml9w W10gPSB7Ci0tICAgIDB4RkZGRkZGRkYsIDB4RkZGRkZGRkYsIDB4QzVDNjQyNEMsIDB4RDY4QzhC QjcsIDB4ODM4RkY4OEMsIDB4MDExRTJBOTQsCi0tICAgIDB4QTlGNDYxNEUsIDB4MDgyMkU1MDYs IDB4RjdBODQ0M0QsIDB4OTdEMTFENDksIDB4MzA2NzdGMEQsIDB4QTZCQkZERTUsCi0tICAgIDB4 QzFGRTg2RkUsIDB4MkY3NDFFRjgsIDB4NUQ3MUE4N0UsIDB4RkFGQUJFMUMsIDB4RkJFNThBMzAs IDB4REVEMkZCQUIsCi0tICAgIDB4NzJCMEE2NkUsIDB4QjY4NTVERkUsIDB4QkE4QTRGRTgsIDB4 MUVGQzhDRTAsIDB4M0YyRkE0NTcsIDB4ODNGODFENEEsCi0tICAgIDB4QTU3N0UyMzEsIDB4QTFG RTMwNzUsIDB4ODhEOUMwQTAsIDB4RDVCODAxOTQsIDB4QUQ5QTk1RjksIDB4NjI0ODE2Q0QsCi0t ICAgIDB4NTBDMTIxN0IsIDB4OTlFOUUzMTYsIDB4MEU0MjNDRkMsIDB4NTFBQTY5MUUsIDB4Mzgy NkU1MkMsIDB4MUMyMTdFNkMsCi0tICAgIDB4MDk3MDNGRUUsIDB4NTFBOEE5MzEsIDB4NkE0NjBF NzQsIDB4QkI3MDk5ODcsIDB4OUM4NkIwMjIsIDB4NTQxRkM2OEMsCi0tICAgIDB4NDZGRDgyNTEs IDB4NTkxNjBDQzAsIDB4MzVDMzVGNUMsIDB4Mjg0NkMwQkEsIDB4OEI3NTgyODIsIDB4NTQ1MDRB QzcsCi0tICAgIDB4RDJBRjA1RTQsIDB4MjkzODg4MzksIDB4QzAxQkQ3MDIsIDB4Q0IyQzBGMUMs IDB4N0M5MzI2NjUsIDB4NTU1QjJGNzQsCi0tICAgIDB4QTNBQjg4MjksIDB4ODZCNjMxNDIsIDB4 RjY0QjEwRUYsIDB4MEI4Q0MzQkQsIDB4RUREMUNDNUUsIDB4Njg3RkVCNjksCi0tICAgIDB4Qzk1 MDlENDMsIDB4RkRCMjNGQ0UsIDB4RDk1MUFFNjQsIDB4MUU0MjVBMzEsIDB4RjYwMEM4MzgsIDB4 MzZBRDAwNEMsCi0tICAgIDB4Q0ZGNDZBQUEsIDB4QTQwRTMyOUMsIDB4NzkzOERBRDQsIDB4QTQx RDU3MEQsIDB4RDQzMTYxQzEsIDB4NjJBNjk1MjYsCi0tICAgIDB4OUFEQjFFNjksIDB4M0ZERDRB OEUsIDB4REM2QjgwRDYsIDB4NUIzQjcxRjksIDB4QzYyNzJCMDQsIDB4RUM5RDE4MTAsCi0tICAg IDB4Q0FDRUY0MDMsIDB4OENDRjJERDUsIDB4Qzk1QjkxMTcsIDB4RTQ5RjUyMzUsIDB4Qjg1NDMz OEEsIDB4NTA1REM4MkQsCi0tICAgIDB4MTU2MkE4NDYsIDB4NjIyOTJDMzEsIDB4NkFFNzdGNUUs IDB4RDcyQjAzNzQsIDB4NDYyRDUzOEMsIDB4RjlDOTA5MUIsCi0tICAgIDB4NDdBNjdDQkUsIDB4 MEFFOERCNTgsIDB4MjI2MTE2ODIsIDB4QjNBNzM5QzEsIDB4MkEyODFCRjYsIDB4RUVBQUMwMjMs Ci0tICAgIDB4NzdDQUY5OTIsIDB4OTRDNjY1MUUsIDB4OTRCMkJCQzEsIDB4NzYzRTRFNEIsIDB4 MDA3N0Q5QjQsIDB4NTg3RTM4REEsCi0tICAgIDB4MTgzMDIzQzMsIDB4N0ZCMjlGOEMsIDB4RjlF M0EyNkUsIDB4MEFCRUMxRkYsIDB4MzUwNTExRTMsIDB4QTAwRUYwOTIsCi0tICAgIDB4REI2MzQw RDgsIDB4Qjg1NTMyMkUsIDB4QTlBOTY5MTAsIDB4QTUyNDcxRjcsIDB4NENGREI0NzcsIDB4Mzg4 MTQ3RkIsCi0tICAgIDB4NEU0NjA0MUYsIDB4OUIxRjVDM0UsIDB4RkNDRkVDNzEsIDB4Q0RBRDA2 NTcsIDB4NEM3MDFDM0EsIDB4QjM4RThDMzMsCi0tICAgIDB4QjFDMEZENEMsIDB4OTE3QkRENjQs IDB4OUI3NjI0QzgsIDB4M0JCNDU0MzIsIDB4Q0FGNTNFQTYsIDB4MjNCQTQ0NDIsCi0tICAgIDB4 Mzg1MzJBM0EsIDB4NEU2NzdEMkMsIDB4NDUwMzZDN0EsIDB4MEJGRDY0QjYsIDB4NUUwREQ5MDIs IDB4QzY4QTAwN0UsCi0tICAgIDB4RjQ0MTgyRTEsIDB4NERCNUE4NTEsIDB4N0Y4OEE0NkIsIDB4 OEVDOUI1NUEsIDB4Q0VDOTdEQ0YsIDB4MEE4MjkxQ0QsCi0tICAgIDB4Rjk4RDBBQ0MsIDB4MkE0 RUNFQTksIDB4NzE0MDAwM0MsIDB4MUExREI5M0QsIDB4MzNDQjhCN0EsIDB4MDkyOTk5QTMsCi0t ICAgIDB4NzFBRDAwMzgsIDB4NkRDNzc4RjksIDB4OTE4MTMwQzQsIDB4QTkwNzYwMEEsIDB4MkQ5 RTY4MzIsIDB4RUQ2QTFFMDEsCi0tICAgIDB4RUZCNDMxOEEsIDB4NzEzNUM4ODYsIDB4N0UzMUND N0EsIDB4ODdGNTVCQTUsIDB4NTUwMzQwMDQsIDB4Nzc2M0NGMUQsCi0tICAgIDB4RDY5RjZEMTgs IDB4QUM3RDVGNDIsIDB4RTU4ODU3QjYsIDB4NzkzMEU5RTQsIDB4MTY0REY0RkIsIDB4NkU2RjUy QzMsCi0tICAgIDB4NjY5RTFFRjEsIDB4MjVFNDFEMkIsIDB4M0ZENTlEN0MsIDB4M0MxQjIwRUUs IDB4RkE1M0RERUYsIDB4MEFCQ0QwNkIsCi0tICAgIDB4RDVDNDQ4NEUsIDB4MURCRjlBNDIsIDB4 OUIwREVBREEsIDB4QUJDNTIxOTcsIDB4MjIzNjNBMEQsIDB4RTg2RDJCQzUsCi0tICAgIDB4OUM5 REY2OUUsIDB4NUNBRTgyQUIsIDB4NzFGNTRCRkYsIDB4NjRGMkUyMUUsIDB4RTJENzRERDMsIDB4 RjRGRDQ0NTIsCi0tICAgIDB4QkM0Mzc5NDQsIDB4QjQxMzBDOTMsIDB4ODUxMzkyNzAsIDB4QUVG RTEzMDksIDB4QzE4NkQ5MUMsIDB4NTk4Q0IwRkEsCi0tICAgIDB4OTFGN0Y3RUUsIDB4N0FEOTFE MjYsIDB4RDZFNkM5MDcsIDB4NjFCNDZGQzksIDB4Rjk5QzAyMzgsIDB4QkMzNEY0REUsCi0tICAg IDB4NjUxOTAzNUIsIDB4REUzNTVCM0IsIDB4NjExRkNGREMsIDB4ODg2QjQyMzgsIDB4QzFCMkVG RkEsIDB4QzZGMzRBMjYsCi0tICAgIDB4N0QxNjgzQjIsIDB4QzU4RUYxODMsIDB4MkVDMjIwMDUs IDB4M0JCNUZDQkMsIDB4NEM2RkFENzMsIDB4QzNGRTNCMUIsCi0tICAgIDB4RUVGMjgxODMsIDB4 OEU0RjEyMzIsIDB4RTk4NTgzRkYsIDB4OTE3MkZFOUMsIDB4MjgzNDJGNjEsIDB4QzAzNDA0Q0Qs Ci0tICAgIDB4Q0RGN0UyRUMsIDB4OUUwMkZDRTEsIDB4RUUwQTZENzAsIDB4MEIwN0E3QzgsIDB4 NjM3MkJCMTksIDB4QUU1NkVERTcsCi0tICAgIDB4REUzOTRERjQsIDB4MUQ0RjQyQTMsIDB4NjBE N0Y0NjgsIDB4Qjk2QURBQjcsIDB4QjJDOEUzRkIsIDB4RDEwOEE5NEIsCi0tICAgIDB4QjMyNEZC NjEsIDB4QkMwQUIxODIsIDB4NDgzQTc5N0EsIDB4MzBBQ0NBNEYsIDB4MzZBREU3MzUsIDB4MURG MTU4QTEsCi0tICAgIDB4RjNFRkU4NzIsIDB4RTJBNjg5REEsIDB4RTBFNjhCNzcsIDB4OTg0RjBD NzAsIDB4N0Y1N0M5MzUsIDB4QjU1NzEzNUUsCi0tICAgIDB4M0RFRDFBRjMsIDB4ODU2MzY1NTUs IDB4NUYwNjZFRDAsIDB4MjQzM0Y1MUYsIDB4RDVGRDY1NjEsIDB4RDNERjFFRDUsCi0tICAgIDB4 QUVDNDYxN0EsIDB4RjY4MUIyMDIsIDB4NjMwQzc1RDgsIDB4N0QyRkUzNjMsIDB4MjQ5QjNFRjks IDB4Q0M5MzlEQ0UsCi0tICAgIDB4MTQ2NDMzRkIsIDB4QTlFMTM2NDEsIDB4Q0UyRDM2OTUsIDB4 RDhCOUM1ODMsIDB4MjczRDNDRjEsIDB4QUZEQzU2MjAsCi0tICAgIDB4QTJCQjRBOUEsIDB4QURG ODU0NTgsIDB4RkZGRkZGRkYsIDB4RkZGRkZGRkYKLSsgICAgQk5fREVGKDB4RkZGRkZGRkYsIDB4 RkZGRkZGRkYpLCBCTl9ERUYoMHhDNUM2NDI0QywgMHhENjhDOEJCNyksCi0rICAgIEJOX0RFRigw eDgzOEZGODhDLCAweDAxMUUyQTk0KSwgQk5fREVGKDB4QTlGNDYxNEUsIDB4MDgyMkU1MDYpLAot KyAgICBCTl9ERUYoMHhGN0E4NDQzRCwgMHg5N0QxMUQ0OSksIEJOX0RFRigweDMwNjc3RjBELCAw eEE2QkJGREU1KSwKLSsgICAgQk5fREVGKDB4QzFGRTg2RkUsIDB4MkY3NDFFRjgpLCBCTl9ERUYo MHg1RDcxQTg3RSwgMHhGQUZBQkUxQyksCi0rICAgIEJOX0RFRigweEZCRTU4QTMwLCAweERFRDJG QkFCKSwgQk5fREVGKDB4NzJCMEE2NkUsIDB4QjY4NTVERkUpLAotKyAgICBCTl9ERUYoMHhCQThB NEZFOCwgMHgxRUZDOENFMCksIEJOX0RFRigweDNGMkZBNDU3LCAweDgzRjgxRDRBKSwKLSsgICAg Qk5fREVGKDB4QTU3N0UyMzEsIDB4QTFGRTMwNzUpLCBCTl9ERUYoMHg4OEQ5QzBBMCwgMHhENUI4 MDE5NCksCi0rICAgIEJOX0RFRigweEFEOUE5NUY5LCAweDYyNDgxNkNEKSwgQk5fREVGKDB4NTBD MTIxN0IsIDB4OTlFOUUzMTYpLAotKyAgICBCTl9ERUYoMHgwRTQyM0NGQywgMHg1MUFBNjkxRSks IEJOX0RFRigweDM4MjZFNTJDLCAweDFDMjE3RTZDKSwKLSsgICAgQk5fREVGKDB4MDk3MDNGRUUs IDB4NTFBOEE5MzEpLCBCTl9ERUYoMHg2QTQ2MEU3NCwgMHhCQjcwOTk4NyksCi0rICAgIEJOX0RF RigweDlDODZCMDIyLCAweDU0MUZDNjhDKSwgQk5fREVGKDB4NDZGRDgyNTEsIDB4NTkxNjBDQzAp LAotKyAgICBCTl9ERUYoMHgzNUMzNUY1QywgMHgyODQ2QzBCQSksIEJOX0RFRigweDhCNzU4Mjgy LCAweDU0NTA0QUM3KSwKLSsgICAgQk5fREVGKDB4RDJBRjA1RTQsIDB4MjkzODg4MzkpLCBCTl9E RUYoMHhDMDFCRDcwMiwgMHhDQjJDMEYxQyksCi0rICAgIEJOX0RFRigweDdDOTMyNjY1LCAweDU1 NUIyRjc0KSwgQk5fREVGKDB4QTNBQjg4MjksIDB4ODZCNjMxNDIpLAotKyAgICBCTl9ERUYoMHhG NjRCMTBFRiwgMHgwQjhDQzNCRCksIEJOX0RFRigweEVERDFDQzVFLCAweDY4N0ZFQjY5KSwKLSsg ICAgQk5fREVGKDB4Qzk1MDlENDMsIDB4RkRCMjNGQ0UpLCBCTl9ERUYoMHhEOTUxQUU2NCwgMHgx RTQyNUEzMSksCi0rICAgIEJOX0RFRigweEY2MDBDODM4LCAweDM2QUQwMDRDKSwgQk5fREVGKDB4 Q0ZGNDZBQUEsIDB4QTQwRTMyOUMpLAotKyAgICBCTl9ERUYoMHg3OTM4REFENCwgMHhBNDFENTcw RCksIEJOX0RFRigweEQ0MzE2MUMxLCAweDYyQTY5NTI2KSwKLSsgICAgQk5fREVGKDB4OUFEQjFF NjksIDB4M0ZERDRBOEUpLCBCTl9ERUYoMHhEQzZCODBENiwgMHg1QjNCNzFGOSksCi0rICAgIEJO X0RFRigweEM2MjcyQjA0LCAweEVDOUQxODEwKSwgQk5fREVGKDB4Q0FDRUY0MDMsIDB4OENDRjJE RDUpLAotKyAgICBCTl9ERUYoMHhDOTVCOTExNywgMHhFNDlGNTIzNSksIEJOX0RFRigweEI4NTQz MzhBLCAweDUwNURDODJEKSwKLSsgICAgQk5fREVGKDB4MTU2MkE4NDYsIDB4NjIyOTJDMzEpLCBC Tl9ERUYoMHg2QUU3N0Y1RSwgMHhENzJCMDM3NCksCi0rICAgIEJOX0RFRigweDQ2MkQ1MzhDLCAw eEY5QzkwOTFCKSwgQk5fREVGKDB4NDdBNjdDQkUsIDB4MEFFOERCNTgpLAotKyAgICBCTl9ERUYo MHgyMjYxMTY4MiwgMHhCM0E3MzlDMSksIEJOX0RFRigweDJBMjgxQkY2LCAweEVFQUFDMDIzKSwK LSsgICAgQk5fREVGKDB4NzdDQUY5OTIsIDB4OTRDNjY1MUUpLCBCTl9ERUYoMHg5NEIyQkJDMSwg MHg3NjNFNEU0QiksCi0rICAgIEJOX0RFRigweDAwNzdEOUI0LCAweDU4N0UzOERBKSwgQk5fREVG KDB4MTgzMDIzQzMsIDB4N0ZCMjlGOEMpLAotKyAgICBCTl9ERUYoMHhGOUUzQTI2RSwgMHgwQUJF QzFGRiksIEJOX0RFRigweDM1MDUxMUUzLCAweEEwMEVGMDkyKSwKLSsgICAgQk5fREVGKDB4REI2 MzQwRDgsIDB4Qjg1NTMyMkUpLCBCTl9ERUYoMHhBOUE5NjkxMCwgMHhBNTI0NzFGNyksCi0rICAg IEJOX0RFRigweDRDRkRCNDc3LCAweDM4ODE0N0ZCKSwgQk5fREVGKDB4NEU0NjA0MUYsIDB4OUIx RjVDM0UpLAotKyAgICBCTl9ERUYoMHhGQ0NGRUM3MSwgMHhDREFEMDY1NyksIEJOX0RFRigweDRD NzAxQzNBLCAweEIzOEU4QzMzKSwKLSsgICAgQk5fREVGKDB4QjFDMEZENEMsIDB4OTE3QkRENjQp LCBCTl9ERUYoMHg5Qjc2MjRDOCwgMHgzQkI0NTQzMiksCi0rICAgIEJOX0RFRigweENBRjUzRUE2 LCAweDIzQkE0NDQyKSwgQk5fREVGKDB4Mzg1MzJBM0EsIDB4NEU2NzdEMkMpLAotKyAgICBCTl9E RUYoMHg0NTAzNkM3QSwgMHgwQkZENjRCNiksIEJOX0RFRigweDVFMEREOTAyLCAweEM2OEEwMDdF KSwKLSsgICAgQk5fREVGKDB4RjQ0MTgyRTEsIDB4NERCNUE4NTEpLCBCTl9ERUYoMHg3Rjg4QTQ2 QiwgMHg4RUM5QjU1QSksCi0rICAgIEJOX0RFRigweENFQzk3RENGLCAweDBBODI5MUNEKSwgQk5f REVGKDB4Rjk4RDBBQ0MsIDB4MkE0RUNFQTkpLAotKyAgICBCTl9ERUYoMHg3MTQwMDAzQywgMHgx QTFEQjkzRCksIEJOX0RFRigweDMzQ0I4QjdBLCAweDA5Mjk5OUEzKSwKLSsgICAgQk5fREVGKDB4 NzFBRDAwMzgsIDB4NkRDNzc4RjkpLCBCTl9ERUYoMHg5MTgxMzBDNCwgMHhBOTA3NjAwQSksCi0r ICAgIEJOX0RFRigweDJEOUU2ODMyLCAweEVENkExRTAxKSwgQk5fREVGKDB4RUZCNDMxOEEsIDB4 NzEzNUM4ODYpLAotKyAgICBCTl9ERUYoMHg3RTMxQ0M3QSwgMHg4N0Y1NUJBNSksIEJOX0RFRigw eDU1MDM0MDA0LCAweDc3NjNDRjFEKSwKLSsgICAgQk5fREVGKDB4RDY5RjZEMTgsIDB4QUM3RDVG NDIpLCBCTl9ERUYoMHhFNTg4NTdCNiwgMHg3OTMwRTlFNCksCi0rICAgIEJOX0RFRigweDE2NERG NEZCLCAweDZFNkY1MkMzKSwgQk5fREVGKDB4NjY5RTFFRjEsIDB4MjVFNDFEMkIpLAotKyAgICBC Tl9ERUYoMHgzRkQ1OUQ3QywgMHgzQzFCMjBFRSksIEJOX0RFRigweEZBNTNEREVGLCAweDBBQkNE MDZCKSwKLSsgICAgQk5fREVGKDB4RDVDNDQ4NEUsIDB4MURCRjlBNDIpLCBCTl9ERUYoMHg5QjBE RUFEQSwgMHhBQkM1MjE5NyksCi0rICAgIEJOX0RFRigweDIyMzYzQTBELCAweEU4NkQyQkM1KSwg Qk5fREVGKDB4OUM5REY2OUUsIDB4NUNBRTgyQUIpLAotKyAgICBCTl9ERUYoMHg3MUY1NEJGRiwg MHg2NEYyRTIxRSksIEJOX0RFRigweEUyRDc0REQzLCAweEY0RkQ0NDUyKSwKLSsgICAgQk5fREVG KDB4QkM0Mzc5NDQsIDB4QjQxMzBDOTMpLCBCTl9ERUYoMHg4NTEzOTI3MCwgMHhBRUZFMTMwOSks Ci0rICAgIEJOX0RFRigweEMxODZEOTFDLCAweDU5OENCMEZBKSwgQk5fREVGKDB4OTFGN0Y3RUUs IDB4N0FEOTFEMjYpLAotKyAgICBCTl9ERUYoMHhENkU2QzkwNywgMHg2MUI0NkZDOSksIEJOX0RF RigweEY5OUMwMjM4LCAweEJDMzRGNERFKSwKLSsgICAgQk5fREVGKDB4NjUxOTAzNUIsIDB4REUz NTVCM0IpLCBCTl9ERUYoMHg2MTFGQ0ZEQywgMHg4ODZCNDIzOCksCi0rICAgIEJOX0RFRigweEMx QjJFRkZBLCAweEM2RjM0QTI2KSwgQk5fREVGKDB4N0QxNjgzQjIsIDB4QzU4RUYxODMpLAotKyAg ICBCTl9ERUYoMHgyRUMyMjAwNSwgMHgzQkI1RkNCQyksIEJOX0RFRigweDRDNkZBRDczLCAweEMz RkUzQjFCKSwKLSsgICAgQk5fREVGKDB4RUVGMjgxODMsIDB4OEU0RjEyMzIpLCBCTl9ERUYoMHhF OTg1ODNGRiwgMHg5MTcyRkU5QyksCi0rICAgIEJOX0RFRigweDI4MzQyRjYxLCAweEMwMzQwNENE KSwgQk5fREVGKDB4Q0RGN0UyRUMsIDB4OUUwMkZDRTEpLAotKyAgICBCTl9ERUYoMHhFRTBBNkQ3 MCwgMHgwQjA3QTdDOCksIEJOX0RFRigweDYzNzJCQjE5LCAweEFFNTZFREU3KSwKLSsgICAgQk5f REVGKDB4REUzOTRERjQsIDB4MUQ0RjQyQTMpLCBCTl9ERUYoMHg2MEQ3RjQ2OCwgMHhCOTZBREFC NyksCi0rICAgIEJOX0RFRigweEIyQzhFM0ZCLCAweEQxMDhBOTRCKSwgQk5fREVGKDB4QjMyNEZC NjEsIDB4QkMwQUIxODIpLAotKyAgICBCTl9ERUYoMHg0ODNBNzk3QSwgMHgzMEFDQ0E0RiksIEJO X0RFRigweDM2QURFNzM1LCAweDFERjE1OEExKSwKLSsgICAgQk5fREVGKDB4RjNFRkU4NzIsIDB4 RTJBNjg5REEpLCBCTl9ERUYoMHhFMEU2OEI3NywgMHg5ODRGMEM3MCksCi0rICAgIEJOX0RFRigw eDdGNTdDOTM1LCAweEI1NTcxMzVFKSwgQk5fREVGKDB4M0RFRDFBRjMsIDB4ODU2MzY1NTUpLAot KyAgICBCTl9ERUYoMHg1RjA2NkVEMCwgMHgyNDMzRjUxRiksIEJOX0RFRigweEQ1RkQ2NTYxLCAw eEQzREYxRUQ1KSwKLSsgICAgQk5fREVGKDB4QUVDNDYxN0EsIDB4RjY4MUIyMDIpLCBCTl9ERUYo MHg2MzBDNzVEOCwgMHg3RDJGRTM2MyksCi0rICAgIEJOX0RFRigweDI0OUIzRUY5LCAweENDOTM5 RENFKSwgQk5fREVGKDB4MTQ2NDMzRkIsIDB4QTlFMTM2NDEpLAotKyAgICBCTl9ERUYoMHhDRTJE MzY5NSwgMHhEOEI5QzU4MyksIEJOX0RFRigweDI3M0QzQ0YxLCAweEFGREM1NjIwKSwKLSsgICAg Qk5fREVGKDB4QTJCQjRBOUEsIDB4QURGODU0NTgpLCBCTl9ERUYoMHhGRkZGRkZGRiwgMHhGRkZG RkZGRikKLSt9OwotKy8qIHEgPSAocCAtIDEpIC8gMiAqLwotK3N0YXRpYyBjb25zdCBCTl9VTE9O RyBmZmRoZTgxOTJfcVtdID0gewotKyAgICBCTl9ERUYoMHhGRkZGRkZGRiwgIDB4N0ZGRkZGRkYp LCBCTl9ERUYoMHhFMkUzMjEyNiwgIDB4NkI0NjQ1REIpLAotKyAgICBCTl9ERUYoMHg0MUM3RkM0 NiwgIDB4MDA4RjE1NEEpLCBCTl9ERUYoMHg1NEZBMzBBNywgIDB4ODQxMTcyODMpLAotKyAgICBC Tl9ERUYoMHhGQkQ0MjIxRSwgIDB4Q0JFODhFQTQpLCBCTl9ERUYoMHg5ODMzQkY4NiwgIDB4NTM1 REZFRjIpLAotKyAgICBCTl9ERUYoMHg2MEZGNDM3RiwgIDB4MTdCQTBGN0MpLCBCTl9ERUYoMHgy RUI4RDQzRiwgIDB4N0Q3RDVGMEUpLAotKyAgICBCTl9ERUYoMHhGREYyQzUxOCwgIDB4NkY2OTdE RDUpLCBCTl9ERUYoMHgzOTU4NTMzNywgIDB4NUI0MkFFRkYpLAotKyAgICBCTl9ERUYoMHg1RDQ1 MjdGNCwgIDB4OEY3RTQ2NzApLCBCTl9ERUYoMHgxRjk3RDIyQiwgIDB4QzFGQzBFQTUpLAotKyAg ICBCTl9ERUYoMHhEMkJCRjExOCwgIDB4NTBGRjE4M0EpLCBCTl9ERUYoMHg0NDZDRTA1MCwgIDB4 RUFEQzAwQ0EpLAotKyAgICBCTl9ERUYoMHhENkNENEFGQywgIDB4QjEyNDBCNjYpLCBCTl9ERUYo MHgyODYwOTBCRCwgIDB4NENGNEYxOEIpLAotKyAgICBCTl9ERUYoMHgwNzIxMUU3RSwgIDB4MjhE NTM0OEYpLCBCTl9ERUYoMHgxQzEzNzI5NiwgIDB4MEUxMEJGMzYpLAotKyAgICBCTl9ERUYoMHg4 NEI4MUZGNywgIDB4MjhENDU0OTgpLCBCTl9ERUYoMHhCNTIzMDczQSwgIDB4NURCODRDQzMpLAot KyAgICBCTl9ERUYoMHg0RTQzNTgxMSwgIDB4QUEwRkUzNDYpLCBCTl9ERUYoMHgyMzdFQzEyOCwg IDB4MkM4QjA2NjApLAotKyAgICBCTl9ERUYoMHgxQUUxQUZBRSwgIDB4MTQyMzYwNUQpLCBCTl9E RUYoMHhDNUJBQzE0MSwgIDB4MkEyODI1NjMpLAotKyAgICBCTl9ERUYoMHhFOTU3ODJGMiwgIDB4 MTQ5QzQ0MUMpLCBCTl9ERUYoMHg2MDBERUI4MSwgIDB4RTU5NjA3OEUpLAotKyAgICBCTl9ERUYo MHgzRTQ5OTMzMiwgIDB4QUFBRDk3QkEpLCBCTl9ERUYoMHg1MUQ1QzQxNCwgIDB4QzM1QjE4QTEp LAotKyAgICBCTl9ERUYoMHhGQjI1ODg3NywgIDB4MDVDNjYxREUpLCBCTl9ERUYoMHhGNkU4RTYy RiwgIDB4QjQzRkY1QjQpLAotKyAgICBCTl9ERUYoMHg2NEE4NEVBMSwgIDB4N0VEOTFGRTcpLCBC Tl9ERUYoMHhFQ0E4RDczMiwgIDB4MEYyMTJEMTgpLAotKyAgICBCTl9ERUYoMHg3QjAwNjQxQywg IDB4MUI1NjgwMjYpLCBCTl9ERUYoMHg2N0ZBMzU1NSwgIDB4NTIwNzE5NEUpLAotKyAgICBCTl9E RUYoMHhCQzlDNkQ2QSwgIDB4RDIwRUFCODYpLCBCTl9ERUYoMHg2QTE4QjBFMCwgIDB4QjE1MzRB OTMpLAotKyAgICBCTl9ERUYoMHg0RDZEOEYzNCwgIDB4MUZFRUE1NDcpLCBCTl9ERUYoMHhFRTM1 QzA2QiwgIDB4MkQ5REI4RkMpLAotKyAgICBCTl9ERUYoMHg2MzEzOTU4MiwgIDB4RjY0RThDMDgp LCBCTl9ERUYoMHhFNTY3N0EwMSwgIDB4QzY2Nzk2RUEpLAotKyAgICBCTl9ERUYoMHhFNEFEQzg4 QiwgIDB4NzI0RkE5MUEpLCBCTl9ERUYoMHhEQzJBMTlDNSwgIDB4MjgyRUU0MTYpLAotKyAgICBC Tl9ERUYoMHg4QUIxNTQyMywgIDB4MzExNDk2MTgpLCBCTl9ERUYoMHgzNTczQkZBRiwgIDB4NkI5 NTgxQkEpLAotKyAgICBCTl9ERUYoMHhBMzE2QTlDNiwgIDB4N0NFNDg0OEQpLCBCTl9ERUYoMHgy M0QzM0U1RiwgIDB4MDU3NDZEQUMpLAotKyAgICBCTl9ERUYoMHg5MTMwOEI0MSwgIDB4NTlEMzlD RTApLCBCTl9ERUYoMHg5NTE0MERGQiwgIDB4Nzc1NTYwMTEpLAotKyAgICBCTl9ERUYoMHgzQkU1 N0NDOSwgIDB4Q0E2MzMyOEYpLCBCTl9ERUYoMHhDQTU5NURFMCwgIDB4M0IxRjI3MjUpLAotKyAg ICBCTl9ERUYoMHgwMDNCRUNEQSwgIDB4QUMzRjFDNkQpLCBCTl9ERUYoMHgwQzE4MTFFMSwgIDB4 M0ZEOTRGQzYpLAotKyAgICBCTl9ERUYoMHhGQ0YxRDEzNywgIDB4ODU1RjYwRkYpLCBCTl9ERUYo MHgxQTgyODhGMSwgIDB4NTAwNzc4NDkpLAotKyAgICBCTl9ERUYoMHg2REIxQTA2QywgIDB4NUMy QTk5MTcpLCBCTl9ERUYoMHhENEQ0QjQ4OCwgIDB4RDI5MjM4RkIpLAotKyAgICBCTl9ERUYoMHhB NjdFREEzQiwgIDB4OUM0MEEzRkQpLCBCTl9ERUYoMHgyNzIzMDIwRiwgIDB4Q0Q4RkFFMUYpLAot KyAgICBCTl9ERUYoMHhGRTY3RjYzOCwgIDB4NjZENjgzMkIpLCBCTl9ERUYoMHhBNjM4MEUxRCwg IDB4NTlDNzQ2MTkpLAotKyAgICBCTl9ERUYoMHg1OEUwN0VBNiwgIDB4NDhCREVFQjIpLCBCTl9E RUYoMHg0REJCMTI2NCwgIDB4MUREQTJBMTkpLAotKyAgICBCTl9ERUYoMHg2NTdBOUY1MywgIDB4 MTFERDIyMjEpLCBCTl9ERUYoMHgxQzI5OTUxRCwgIDB4MjczM0JFOTYpLAotKyAgICBCTl9ERUYo MHgyMjgxQjYzRCwgIDB4MDVGRUIyNUIpLCBCTl9ERUYoMHgyRjA2RUM4MSwgIDB4RTM0NTAwM0Yp LAotKyAgICBCTl9ERUYoMHhGQTIwQzE3MCwgIDB4QTZEQUQ0MjgpLCBCTl9ERUYoMHgzRkM0NTIz NSwgIDB4Qzc2NERBQUQpLAotKyAgICBCTl9ERUYoMHhFNzY0QkVFNywgIDB4MDU0MTQ4RTYpLCBC Tl9ERUYoMHhGQ0M2ODU2NiwgIDB4MTUyNzY3NTQpLAotKyAgICBCTl9ERUYoMHhCOEEwMDAxRSwg IDB4MEQwRURDOUUpLCBCTl9ERUYoMHg5OUU1QzVCRCwgIDB4MDQ5NENDRDEpLAotKyAgICBCTl9E RUYoMHhCOEQ2ODAxQywgIDB4MzZFM0JDN0MpLCBCTl9ERUYoMHg0OEMwOTg2MiwgIDB4NTQ4M0Iw MDUpLAotKyAgICBCTl9ERUYoMHg5NkNGMzQxOSwgIDB4NzZCNTBGMDApLCBCTl9ERUYoMHg3N0RB MThDNSwgIDB4Mzg5QUU0NDMpLAotKyAgICBCTl9ERUYoMHhCRjE4RTYzRCwgIDB4NDNGQUFERDIp LCBCTl9ERUYoMHhBQTgxQTAwMiwgIDB4M0JCMUU3OEUpLAotKyAgICBCTl9ERUYoMHg2QjRGQjY4 QywgIDB4NTYzRUFGQTEpLCBCTl9ERUYoMHg3MkM0MkJEQiwgIDB4QkM5ODc0RjIpLAotKyAgICBC Tl9ERUYoMHg4QjI2RkE3RCwgIDB4QjczN0E5NjEpLCBCTl9ERUYoMHhCMzRGMEY3OCwgIDB4MTJG MjBFOTUpLAotKyAgICBCTl9ERUYoMHgxRkVBQ0VCRSwgIDB4OUUwRDkwNzcpLCBCTl9ERUYoMHhG RDI5RUVGNywgIDB4MDU1RTY4MzUpLAotKyAgICBCTl9ERUYoMHg2QUUyMjQyNywgIDB4MEVERkNE MjEpLCBCTl9ERUYoMHhDRDg2RjU2RCwgIDB4RDVFMjkwQ0IpLAotKyAgICBCTl9ERUYoMHg5MTFC MUQwNiwgIDB4NzQzNjk1RTIpLCBCTl9ERUYoMHhDRTRFRkI0RiwgIDB4QUU1NzQxNTUpLAotKyAg ICBCTl9ERUYoMHgzOEZBQTVGRiwgIDB4QjI3OTcxMEYpLCBCTl9ERUYoMHg3MTZCQTZFOSwgIDB4 N0E3RUEyMjkpLAotKyAgICBCTl9ERUYoMHhERTIxQkNBMiwgIDB4NUEwOTg2NDkpLCBCTl9ERUYo MHhDMjg5QzkzOCwgIDB4NTc3RjA5ODQpLAotKyAgICBCTl9ERUYoMHg2MEMzNkM4RSwgIDB4MkND NjU4N0QpLCBCTl9ERUYoMHg0OEZCRkJGNywgIDB4QkQ2QzhFOTMpLAotKyAgICBCTl9ERUYoMHhF QjczNjQ4MywgIDB4MzBEQTM3RTQpLCBCTl9ERUYoMHg3Q0NFMDExQywgIDB4REUxQTdBNkYpLAot KyAgICBCTl9ERUYoMHhCMjhDODFBRCwgIDB4NkYxQUFEOUQpLCBCTl9ERUYoMHgzMDhGRTdFRSwg IDB4NDQzNUExMUMpLAotKyAgICBCTl9ERUYoMHg2MEQ5NzdGRCwgIDB4NjM3OUE1MTMpLCBCTl9E RUYoMHhCRThCNDFEOSwgIDB4RTJDNzc4QzEpLAotKyAgICBCTl9ERUYoMHgxNzYxMTAwMiwgIDB4 OUREQUZFNUUpLCBCTl9ERUYoMHhBNjM3RDZCOSwgIDB4RTFGRjFEOEQpLAotKyAgICBCTl9ERUYo MHg3Nzc5NDBDMSwgIDB4QzcyNzg5MTkpLCBCTl9ERUYoMHg3NEMyQzFGRiwgIDB4QzhCOTdGNEUp LAotKyAgICBCTl9ERUYoMHg5NDFBMTdCMCwgIDB4NjAxQTAyNjYpLCBCTl9ERUYoMHhFNkZCRjE3 NiwgIDB4NEYwMTdFNzApLAotKyAgICBCTl9ERUYoMHg3NzA1MzZCOCwgIDB4ODU4M0QzRTQpLCBC Tl9ERUYoMHhCMUI5NUQ4QywgIDB4NTcyQjc2RjMpLAotKyAgICBCTl9ERUYoMHhFRjFDQTZGQSwg IDB4MEVBN0ExNTEpLCBCTl9ERUYoMHhCMDZCRkEzNCwgIDB4RENCNTZENUIpLAotKyAgICBCTl9E RUYoMHhEOTY0NzFGRCwgIDB4RTg4NDU0QTUpLCBCTl9ERUYoMHg1OTkyN0RCMCwgIDB4NUUwNTU4 QzEpLAotKyAgICBCTl9ERUYoMHhBNDFEM0NCRCwgIDB4OTg1NjY1MjcpLCBCTl9ERUYoMHg5QjU2 RjM5QSwgIDB4MEVGOEFDNTApLAotKyAgICBCTl9ERUYoMHg3OUY3RjQzOSwgIDB4RjE1MzQ0RUQp LCBCTl9ERUYoMHg3MDczNDVCQiwgIDB4Q0MyNzg2MzgpLAotKyAgICBCTl9ERUYoMHgzRkFCRTQ5 QSwgIDB4REFBQjg5QUYpLCBCTl9ERUYoMHg5RUY2OEQ3OSwgIDB4NDJCMUIyQUEpLAotKyAgICBC Tl9ERUYoMHhBRjgzMzc2OCwgIDB4OTIxOUZBOEYpLCBCTl9ERUYoMHhFQUZFQjJCMCwgIDB4NjlF RjhGNkEpLAotKyAgICBCTl9ERUYoMHg1NzYyMzBCRCwgIDB4N0I0MEQ5MDEpLCBCTl9ERUYoMHhC MTg2M0FFQywgIDB4QkU5N0YxQjEpLAotKyAgICBCTl9ERUYoMHgxMjREOUY3QywgIDB4RTY0OUNF RTcpLCBCTl9ERUYoMHg4QTMyMTlGRCwgIDB4RDRGMDlCMjApLAotKyAgICBCTl9ERUYoMHhFNzE2 OUI0QSwgIDB4RUM1Q0UyQzEpLCBCTl9ERUYoMHgxMzlFOUU3OCwgIDB4NTdFRTJCMTApLAotKyAg ICBCTl9ERUYoMHg1MTVEQTU0RCwgIDB4RDZGQzJBMkMpLCBCTl9ERUYoMHhGRkZGRkZGRiwgIDB4 N0ZGRkZGRkYpLAotIH07Ci0gCi0tIyBlbHNlCi0tIyAgZXJyb3IgInVuc3VwcG9ydGVkIEJOX0JJ VFMyIgotLSMgZW5kaWYKLS0KLSAvKiBNYWNybyB0byBtYWtlIGEgQklHTlVNIGZyb20gc3RhdGlj IGRhdGEgKi8KLSAKLSAjIGRlZmluZSBtYWtlX2RoX2JuKHgpIGV4dGVybiBjb25zdCBCSUdOVU0g X2JpZ251bV8jI3g7IFwKLUBAIC00ODksMjQgKzEwMTAsNDIgQEAgc3RhdGljIGNvbnN0IEJOX1VM T05HIGZmZGhlODE5Ml9wW10gPSB7Ci0gCi0gc3RhdGljIGNvbnN0IEJOX1VMT05HIHZhbHVlXzIg PSAyOwotIAotLWNvbnN0IEJJR05VTSBfYmlnbnVtX2NvbnN0XzIgPQotLSAgICB7IChCTl9VTE9O RyAqKSZ2YWx1ZV8yLCAxLCAxLCAwLCBCTl9GTEdfU1RBVElDX0RBVEEgfTsKLStjb25zdCBCSUdO VU0gX2JpZ251bV9jb25zdF8yID0gewotKyAgICAoQk5fVUxPTkcgKikmdmFsdWVfMiwgMSwgMSwg MCwgQk5fRkxHX1NUQVRJQ19EQVRBCi0rfTsKLSAKLSBtYWtlX2RoX2JuKGRoMTAyNF8xNjBfcCkK LS1tYWtlX2RoX2JuKGRoMTAyNF8xNjBfZykKLSBtYWtlX2RoX2JuKGRoMTAyNF8xNjBfcSkKLStt YWtlX2RoX2JuKGRoMTAyNF8xNjBfZykKLSBtYWtlX2RoX2JuKGRoMjA0OF8yMjRfcCkKLS1tYWtl X2RoX2JuKGRoMjA0OF8yMjRfZykKLSBtYWtlX2RoX2JuKGRoMjA0OF8yMjRfcSkKLSttYWtlX2Ro X2JuKGRoMjA0OF8yMjRfZykKLSBtYWtlX2RoX2JuKGRoMjA0OF8yNTZfcCkKLS1tYWtlX2RoX2Ju KGRoMjA0OF8yNTZfZykKLSBtYWtlX2RoX2JuKGRoMjA0OF8yNTZfcSkKLSttYWtlX2RoX2JuKGRo MjA0OF8yNTZfZykKLSAKLSBtYWtlX2RoX2JuKGZmZGhlMjA0OF9wKQotK21ha2VfZGhfYm4oZmZk aGUyMDQ4X3EpCi0gbWFrZV9kaF9ibihmZmRoZTMwNzJfcCkKLSttYWtlX2RoX2JuKGZmZGhlMzA3 Ml9xKQotIG1ha2VfZGhfYm4oZmZkaGU0MDk2X3ApCi0rbWFrZV9kaF9ibihmZmRoZTQwOTZfcSkK LSBtYWtlX2RoX2JuKGZmZGhlNjE0NF9wKQotK21ha2VfZGhfYm4oZmZkaGU2MTQ0X3EpCi0gbWFr ZV9kaF9ibihmZmRoZTgxOTJfcCkKLSttYWtlX2RoX2JuKGZmZGhlODE5Ml9xKQotIAotK21ha2Vf ZGhfYm4obW9kcF8xNTM2X3ApCi0rbWFrZV9kaF9ibihtb2RwXzE1MzZfcSkKLSttYWtlX2RoX2Ju KG1vZHBfMjA0OF9wKQotK21ha2VfZGhfYm4obW9kcF8yMDQ4X3EpCi0rbWFrZV9kaF9ibihtb2Rw XzMwNzJfcCkKLSttYWtlX2RoX2JuKG1vZHBfMzA3Ml9xKQotK21ha2VfZGhfYm4obW9kcF80MDk2 X3ApCi0rbWFrZV9kaF9ibihtb2RwXzQwOTZfcSkKLSttYWtlX2RoX2JuKG1vZHBfNjE0NF9wKQot K21ha2VfZGhfYm4obW9kcF82MTQ0X3EpCi0rbWFrZV9kaF9ibihtb2RwXzgxOTJfcCkKLSttYWtl X2RoX2JuKG1vZHBfODE5Ml9xKQotIAotLSNlbmRpZgotKyNlbmRpZiAvKiBPUEVOU1NMX05PX0RI ICovCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZGgvZGhfY2hlY2suYy5maXBzLWRo IG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9jaGVjay5jCi0tLS0gb3BlbnNzbC0xLjEuMWov Y3J5cHRvL2RoL2RoX2NoZWNrLmMuZmlwcy1kaAkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAw MCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9jaGVjay5jCTIwMjEtMDMt MDMgMTQ6MjM6MjcuNDA0MDkyNDI3ICswMTAwCi1AQCAtMTAsNiArMTAsNyBAQAotICNpbmNsdWRl IDxzdGRpby5oPgotICNpbmNsdWRlICJpbnRlcm5hbC9jcnlwdGxpYi5oIgotICNpbmNsdWRlIDxv cGVuc3NsL2JuLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvb2JqX21hYy5oPgotICNpbmNsdWRlICJk aF9sb2NhbC5oIgotIAotICMgZGVmaW5lIERIX05VTUJFUl9JVEVSQVRJT05TX0ZPUl9QUklNRSA2 NAotQEAgLTQxLDYgKzQyLDEyIEBAIGludCBESF9jaGVja19wYXJhbXMoY29uc3QgREggKmRoLCBp bnQgKnIKLSAgICAgQklHTlVNICp0bXAgPSBOVUxMOwotICAgICBCTl9DVFggKmN0eCA9IE5VTEw7 Ci0gCi0rICAgIGlmIChGSVBTX21vZGUoKSkgewotKyAgICAgICAgaW50IG5pZCA9IGRoLT5uaWQg PT0gTklEX3VuZGVmID8gREhfZ2V0X25pZChkaCkgOiBkaC0+bmlkOwotKwotKyAgICAgICAgcmV0 dXJuIG5pZCAhPSBOSURfdW5kZWY7Ci0rICAgIH0KLSsKLSAgICAgKnJldCA9IDA7Ci0gICAgIGN0 eCA9IEJOX0NUWF9uZXcoKTsKLSAgICAgaWYgKGN0eCA9PSBOVUxMKQotQEAgLTk1LDYgKzEwMiw3 IEBAIGludCBESF9jaGVja19leChjb25zdCBESCAqZGgpCi0gICAgIHJldHVybiBlcnJmbGFncyA9 PSAwOwotIH0KLSAKLSsvKiBOb3RlOiBhY2NvcmRpbmcgdG8gZG9jdW1lbnRhdGlvbiAtIHRoaXMg b25seSBjaGVja3MgdGhlIHBhcmFtcyAqLwotIGludCBESF9jaGVjayhjb25zdCBESCAqZGgsIGlu dCAqcmV0KQotIHsKLSAgICAgaW50IG9rID0gMCwgcjsKLUBAIC0xMDQsNiArMTEyLDkgQEAgaW50 IERIX2NoZWNrKGNvbnN0IERIICpkaCwgaW50ICpyZXQpCi0gICAgIGlmICghREhfY2hlY2tfcGFy YW1zKGRoLCByZXQpKQotICAgICAgICAgcmV0dXJuIDA7Ci0gCi0rICAgIGlmIChGSVBTX21vZGUo KSkgLyogd2UgYWxsb3cgb25seSB3ZWxsLWtub3duIHBhcmFtcyAqLwotKyAgICAgICAgcmV0dXJu IDE7Ci0rCi0gICAgIGN0eCA9IEJOX0NUWF9uZXcoKTsKLSAgICAgaWYgKGN0eCA9PSBOVUxMKQot ICAgICAgICAgZ290byBlcnI7Ci1AQCAtMTc3LDcgKzE4OCw3IEBAIGludCBESF9jaGVja19wdWJf a2V5X2V4KGNvbnN0IERIICpkaCwgY28KLSAgICAgcmV0dXJuIGVycmZsYWdzID09IDA7Ci0gfQot IAotLWludCBESF9jaGVja19wdWJfa2V5KGNvbnN0IERIICpkaCwgY29uc3QgQklHTlVNICpwdWJf a2V5LCBpbnQgKnJldCkKLStzdGF0aWMgaW50IGRoX2NoZWNrX3B1Yl9rZXlfaW50KGNvbnN0IERI ICpkaCwgY29uc3QgQklHTlVNICpxLCBjb25zdCBCSUdOVU0gKnB1Yl9rZXksIGludCAqcmV0KQot IHsKLSAgICAgaW50IG9rID0gMDsKLSAgICAgQklHTlVNICp0bXAgPSBOVUxMOwotQEAgLTE5OCw5 ICsyMDksOSBAQCBpbnQgREhfY2hlY2tfcHViX2tleShjb25zdCBESCAqZGgsIGNvbnN0Ci0gICAg IGlmIChCTl9jbXAocHViX2tleSwgdG1wKSA+PSAwKQotICAgICAgICAgKnJldCB8PSBESF9DSEVD S19QVUJLRVlfVE9PX0xBUkdFOwotIAotLSAgICBpZiAoZGgtPnEgIT0gTlVMTCkgewotKyAgICBp ZiAocSAhPSBOVUxMKSB7Ci0gICAgICAgICAvKiBDaGVjayBwdWJfa2V5XnEgPT0gMSBtb2QgcCAq LwotLSAgICAgICAgaWYgKCFCTl9tb2RfZXhwKHRtcCwgcHViX2tleSwgZGgtPnEsIGRoLT5wLCBj dHgpKQotKyAgICAgICAgaWYgKCFCTl9tb2RfZXhwKHRtcCwgcHViX2tleSwgcSwgZGgtPnAsIGN0 eCkpCi0gICAgICAgICAgICAgZ290byBlcnI7Ci0gICAgICAgICBpZiAoIUJOX2lzX29uZSh0bXAp KQotICAgICAgICAgICAgICpyZXQgfD0gREhfQ0hFQ0tfUFVCS0VZX0lOVkFMSUQ7Ci1AQCAtMjEy LDMgKzIyMywyMyBAQCBpbnQgREhfY2hlY2tfcHViX2tleShjb25zdCBESCAqZGgsIGNvbnN0Ci0g ICAgIEJOX0NUWF9mcmVlKGN0eCk7Ci0gICAgIHJldHVybiBvazsKLSB9Ci0rCi0raW50IERIX2No ZWNrX3B1Yl9rZXkoY29uc3QgREggKmRoLCBjb25zdCBCSUdOVU0gKnB1Yl9rZXksIGludCAqcmV0 KQotK3sKLSsgICAgcmV0dXJuIGRoX2NoZWNrX3B1Yl9rZXlfaW50KGRoLCBkaC0+cSwgcHViX2tl eSwgcmV0KTsKLSt9Ci0rCi0raW50IGRoX2NoZWNrX3B1Yl9rZXlfZnVsbChjb25zdCBESCAqZGgs IGNvbnN0IEJJR05VTSAqcHViX2tleSwgaW50ICpyZXQpCi0rewotKyAgICBCSUdOVU0gKnEgPSBk aC0+cTsKLSsKLSsgICAgaWYgKHEgPT0gTlVMTCkgewotKyAgICAgICAgaWYgKGRoX2dldF9rbm93 bl9xKGRoLCAmcSkgPT0gMCkgewotKyAgICAgICAgICAgICpyZXQgfD0gREhfQ0hFQ0tfSU5WQUxJ RF9RX1ZBTFVFOwotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgfQotKyAgICB9Ci0r Ci0rICAgIHJldHVybiBkaF9jaGVja19wdWJfa2V5X2ludChkaCwgcSwgcHViX2tleSwgcmV0KTsK LSt9Ci0rCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZGgvZGhfZ2VuLmMuZmlwcy1k aCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZGgvZGhfZ2VuLmMKLS0tLSBvcGVuc3NsLTEuMS4xai9j cnlwdG8vZGgvZGhfZ2VuLmMuZmlwcy1kaAkyMDIxLTAzLTAzIDE0OjIzOjI3LjMzODA5MTg1OSAr MDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9nZW4uYwkyMDIxLTAzLTAzIDE0 OjIzOjI3LjQwNDA5MjQyNyArMDEwMAotQEAgLTI3LDggKzI3LDcgQEAgaW50IERIX2dlbmVyYXRl X3BhcmFtZXRlcnNfZXgoREggKnJldCwgaQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEJOX0dFTkNCICpjYikKLSB7Ci0gI2lmZGVmIE9QRU5TU0xfRklQUwotLSAgICBpZiAoRklQU19t b2RlKCkgJiYgIShyZXQtPm1ldGgtPmZsYWdzICYgREhfRkxBR19GSVBTX01FVEhPRCkKLS0gICAg ICAgICYmICEocmV0LT5mbGFncyAmIERIX0ZMQUdfTk9OX0ZJUFNfQUxMT1cpKSB7Ci0rICAgIGlm IChGSVBTX21vZGUoKSkgewotICAgICAgICAgREhlcnIoREhfRl9ESF9HRU5FUkFURV9QQVJBTUVU RVJTX0VYLCBESF9SX05PTl9GSVBTX01FVEhPRCk7Ci0gICAgICAgICByZXR1cm4gMDsKLSAgICAg fQotQEAgLTc1LDE4ICs3NCw2IEBAIHN0YXRpYyBpbnQgZGhfYnVpbHRpbl9nZW5wYXJhbXMoREgg KnJldCwKLSAgICAgaW50IGcsIG9rID0gLTE7Ci0gICAgIEJOX0NUWCAqY3R4ID0gTlVMTDsKLSAK LS0jaWZkZWYgT1BFTlNTTF9GSVBTCi0tICAgIGlmIChGSVBTX3NlbGZ0ZXN0X2ZhaWxlZCgpKSB7 Ci0tICAgICAgICBGSVBTZXJyKEZJUFNfRl9ESF9CVUlMVElOX0dFTlBBUkFNUywgRklQU19SX0ZJ UFNfU0VMRlRFU1RfRkFJTEVEKTsKLS0gICAgICAgIHJldHVybiAwOwotLSAgICB9Ci0tCi0tICAg IGlmIChGSVBTX21vZGUoKSAmJiAocHJpbWVfbGVuIDwgT1BFTlNTTF9ESF9GSVBTX01JTl9NT0RV TFVTX0JJVFNfR0VOKSkgewotLSAgICAgICAgREhlcnIoREhfRl9ESF9CVUlMVElOX0dFTlBBUkFN UywgREhfUl9LRVlfU0laRV9UT09fU01BTEwpOwotLSAgICAgICAgZ290byBlcnI7Ci0tICAgIH0K LS0jZW5kaWYKLS0KLSAgICAgY3R4ID0gQk5fQ1RYX25ldygpOwotICAgICBpZiAoY3R4ID09IE5V TEwpCi0gICAgICAgICBnb3RvIGVycjsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9k aC9kaF9rZXkuYy5maXBzLWRoIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9rZXkuYwotLS0t IG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9rZXkuYy5maXBzLWRoCTIwMjEtMDMtMDMgMTQ6 MjM6MjcuMzM4MDkxODU5ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2RoL2RoX2tl eS5jCTIwMjEtMDMtMDMgMTQ6NTE6MzYuMjM1Mjk2MjM2ICswMTAwCi1AQCAtMTIwLDEwICsxMjAs MTggQEAgc3RhdGljIGludCBnZW5lcmF0ZV9rZXkoREggKmRoKQotICAgICBCSUdOVU0gKnB1Yl9r ZXkgPSBOVUxMLCAqcHJpdl9rZXkgPSBOVUxMOwotIAotICNpZmRlZiBPUEVOU1NMX0ZJUFMKLS0g ICAgaWYgKEZJUFNfbW9kZSgpCi0tICAgICAgICAmJiAoQk5fbnVtX2JpdHMoZGgtPnApIDwgT1BF TlNTTF9ESF9GSVBTX01JTl9NT0RVTFVTX0JJVFMpKSB7Ci0tICAgICAgICBESGVycihESF9GX0dF TkVSQVRFX0tFWSwgREhfUl9LRVlfU0laRV9UT09fU01BTEwpOwotLSAgICAgICAgcmV0dXJuIDA7 Ci0rICAgIGlmIChGSVBTX21vZGUoKSkgewotKyAgICAgICAgaWYgKEJOX251bV9iaXRzKGRoLT5w KSA8IE9QRU5TU0xfREhfRklQU19NSU5fTU9EVUxVU19CSVRTKSB7Ci0rICAgICAgICAgICAgREhl cnIoREhfRl9HRU5FUkFURV9LRVksIERIX1JfS0VZX1NJWkVfVE9PX1NNQUxMKTsKLSsgICAgICAg ICAgICByZXR1cm4gMDsKLSsgICAgICAgIH0KLSsgICAgICAgIGlmIChkaC0+bmlkID09IE5JRF91 bmRlZikKLSsgICAgICAgICAgICBkaF9jYWNoZV9uaWQoZGgpOwotKyAgICAgICAgaWYgKGRoLT5u aWQgPT0gTklEX3VuZGVmIHx8IGRoLT5sZW5ndGggPiBCTl9udW1fYml0cyhkaC0+cCkgLSAyCi0r ICAgICAgICAgICAgfHwgZGgtPmxlbmd0aCA8IDIyNCkgewotKyAgICAgICAgICAgIERIZXJyKERI X0ZfR0VORVJBVEVfS0VZLCBESF9SX05PTl9GSVBTX01FVEhPRCk7Ci0rICAgICAgICAgICAgcmV0 dXJuIDA7Ci0rICAgICAgICB9Ci0gICAgIH0KLSAjZW5kaWYKLSAKLUBAIC0xNTksNyArMTY3LDE1 IEBAIHN0YXRpYyBpbnQgZ2VuZXJhdGVfa2V5KERIICpkaCkKLSAgICAgfQotIAotICAgICBpZiAo Z2VuZXJhdGVfbmV3X2tleSkgewotLSAgICAgICAgaWYgKGRoLT5xKSB7Ci0rICAgICAgICBpZiAo RklQU19tb2RlKCkpIHsKLSsgICAgICAgICAgICBkbyB7Ci0rICAgICAgICAgICAgICAgIGlmICgh Qk5fcHJpdl9yYW5kKHByaXZfa2V5LCBkaC0+bGVuZ3RoLCBCTl9SQU5EX1RPUF9BTlksIEJOX1JB TkRfQk9UVE9NX0FOWSkpCi0rICAgICAgICAgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAg ICAgICAgICAgaWYgKCFCTl9hZGRfd29yZChwcml2X2tleSwgMSkpCi0rICAgICAgICAgICAgICAg ICAgICBnb3RvIGVycjsKLSsgICAgICAgICAgICB9Ci0rICAgICAgICAgICAgd2hpbGUgKEJOX251 bV9iaXRzKHByaXZfa2V5KSA+IGRoLT5sZW5ndGgpOwotKyAgICAgICAgfSBlbHNlIGlmIChkaC0+ cSkgewotICAgICAgICAgICAgIGRvIHsKLSAgICAgICAgICAgICAgICAgaWYgKCFCTl9wcml2X3Jh bmRfcmFuZ2UocHJpdl9rZXksIGRoLT5xKSkKLSAgICAgICAgICAgICAgICAgICAgIGdvdG8gZXJy OwotQEAgLTE5NSw2ICsyMTEsMTUgQEAgc3RhdGljIGludCBnZW5lcmF0ZV9rZXkoREggKmRoKQot ICAgICAgICAgfQotICAgICAgICAgLyogV2UgTVVTVCBmcmVlIHByayBiZWZvcmUgYW55IGZ1cnRo ZXIgdXNlIG9mIHByaXZfa2V5ICovCi0gICAgICAgICBCTl9jbGVhcl9mcmVlKHByayk7Ci0rCi0r ICAgICAgICBpZiAoRklQU19tb2RlKCkpIHsKLSsgICAgICAgICAgICBpbnQgY2hlY2tfcmVzdWx0 OwotKwotKyAgICAgICAgICAgIGlmICghZGhfY2hlY2tfcHViX2tleV9mdWxsKGRoLCBwdWJfa2V5 LCAmY2hlY2tfcmVzdWx0KSB8fCBjaGVja19yZXN1bHQpIHsKLSsgICAgICAgICAgICAgICAgREhl cnIoREhfRl9HRU5FUkFURV9LRVksIERIX1JfSU5WQUxJRF9QVUJLRVkpOwotKyAgICAgICAgICAg ICAgICBnb3RvIGVycjsKLSsgICAgICAgICAgICB9Ci0rICAgICAgICB9Ci0gICAgIH0KLSAKLSAg ICAgZGgtPnB1Yl9rZXkgPSBwdWJfa2V5OwotQEAgLTIxNyw2ICsyNDIsNyBAQCBzdGF0aWMgaW50 IGNvbXB1dGVfa2V5KHVuc2lnbmVkIGNoYXIgKmtlCi0gICAgIEJOX0NUWCAqY3R4ID0gTlVMTDsK LSAgICAgQk5fTU9OVF9DVFggKm1vbnQgPSBOVUxMOwotICAgICBCSUdOVU0gKnRtcDsKLSsgICAg QklHTlVNICpwMTsKLSAgICAgaW50IHJldCA9IC0xOwotICAgICBpbnQgY2hlY2tfcmVzdWx0Owot IAotQEAgLTI2Myw2ICsyODksMTggQEAgc3RhdGljIGludCBjb21wdXRlX2tleSh1bnNpZ25lZCBj aGFyICprZQotICAgICAgICAgREhlcnIoREhfRl9DT01QVVRFX0tFWSwgRVJSX1JfQk5fTElCKTsK LSAgICAgICAgIGdvdG8gZXJyOwotICAgICB9Ci0rCi0rICAgIGlmIChCTl9pc196ZXJvKHRtcCkg fHwgQk5faXNfb25lKHRtcCkgfHwgQk5faXNfbmVnYXRpdmUodG1wKSkgewotKyAgICAgICAgREhl cnIoREhfRl9DT01QVVRFX0tFWSwgRVJSX1JfQk5fTElCKTsKLSsgICAgICAgIGdvdG8gZXJyOwot KyAgICB9Ci0rCi0rICAgIGlmICgocDEgPSBCTl9DVFhfZ2V0KGN0eCkpID09IE5VTEwKLSsgICAg ICAgIHx8ICFCTl9zdWIocDEsIGRoLT5wLCBCTl92YWx1ZV9vbmUoKSkKLSsgICAgICAgIHx8IEJO X2NtcChwMSwgdG1wKSA8PSAwKSB7Ci0rICAgICAgICBESGVycihESF9GX0NPTVBVVEVfS0VZLCBF UlJfUl9CTl9MSUIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSAKLSAgICAgcmV0ID0g Qk5fYm4yYmlucGFkKHRtcCwga2V5LCBCTl9udW1fYnl0ZXMoZGgtPnApKTsKLSAgZXJyOgotZGlm ZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2RoL2RoX2xpYi5jLmZpcHMtZGggb3BlbnNzbC0x LjEuMWovY3J5cHRvL2RoL2RoX2xpYi5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2RoL2Ro X2xpYi5jLmZpcHMtZGgJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBv cGVuc3NsLTEuMS4xai9jcnlwdG8vZGgvZGhfbGliLmMJMjAyMS0wMy0wMyAxNDoyMzoyNy40MDUw OTI0MzYgKzAxMDAKLUBAIC04LDYgKzgsNyBAQAotICAqLwotIAotICNpbmNsdWRlIDxzdGRpby5o PgotKyNpbmNsdWRlIDxvcGVuc3NsL29iamVjdHMuaD4KLSAjaW5jbHVkZSAiaW50ZXJuYWwvY3J5 cHRsaWIuaCIKLSAjaW5jbHVkZSAiaW50ZXJuYWwvcmVmY291bnQuaCIKLSAjaW5jbHVkZSA8b3Bl bnNzbC9ibi5oPgotQEAgLTg2LDYgKzg3LDggQEAgREggKkRIX25ld19tZXRob2QoRU5HSU5FICpl bmdpbmUpCi0gICAgICAgICBnb3RvIGVycjsKLSAgICAgfQotIAotKyAgICByZXQtPm5pZCA9IE5J RF91bmRlZjsKLSsKLSAgICAgcmV0dXJuIHJldDsKLSAKLSAgZXJyOgotQEAgLTIwNSw3ICsyMDgs MTAgQEAgaW50IERIX3NldDBfcHFnKERIICpkaCwgQklHTlVNICpwLCBCSUdOVQotICAgICAgICAg ZGgtPmcgPSBnOwotICAgICB9Ci0gCi0tICAgIGlmIChxICE9IE5VTEwpIHsKLSsgICAgZGgtPm5p ZCA9IE5JRF91bmRlZjsKLSsgICAgZGhfY2FjaGVfbmlkKGRoKTsKLSsKLSsgICAgaWYgKHEgIT0g TlVMTCAmJiBkaC0+bmlkID09IE5JRF91bmRlZikgewotICAgICAgICAgZGgtPmxlbmd0aCA9IEJO X251bV9iaXRzKHEpOwotICAgICB9Ci0gCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8v ZGgvZGhfbG9jYWwuaC5maXBzLWRoIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9sb2NhbC5o Ci0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2RoL2RoX2xvY2FsLmguZmlwcy1kaAkyMDIxLTAz LTAzIDE0OjIzOjI3LjIwMjA5MDY4OSArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9k aC9kaF9sb2NhbC5oCTIwMjEtMDMtMDMgMTQ6MjM6MjcuNDA1MDkyNDM2ICswMTAwCi1AQCAtMzUs NiArMzUsNyBAQCBzdHJ1Y3QgZGhfc3QgewotICAgICBjb25zdCBESF9NRVRIT0QgKm1ldGg7Ci0g ICAgIEVOR0lORSAqZW5naW5lOwotICAgICBDUllQVE9fUldMT0NLICpsb2NrOwotKyAgICBpbnQg bmlkOwotIH07Ci0gCi0gc3RydWN0IGRoX21ldGhvZCB7Ci1AQCAtNTUsMyArNTYsMTAgQEAgc3Ry dWN0IGRoX21ldGhvZCB7Ci0gICAgIGludCAoKmdlbmVyYXRlX3BhcmFtcykgKERIICpkaCwgaW50 IHByaW1lX2xlbiwgaW50IGdlbmVyYXRvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Qk5fR0VOQ0IgKmNiKTsKLSB9OwotKwotK3ZvaWQgZGhfY2FjaGVfbmlkKERIICpkaCk7Ci0rLyog T2J0YWluIGtub3duIHEgdmFsdWUgYmFzZWQgb24gbmlkIG9yIHAgKi8KLStpbnQgZGhfZ2V0X2tu b3duX3EoY29uc3QgREggKmRoLCBCSUdOVU0gKipxKTsKLSsvKiBGSVBTIG1vZGUgb25seSBjaGVj ayB3aGljaCByZXF1aXJlcyBuaWQgc2V0IGFuZCBsb29rcyB1cCBxIGJhc2VkIG9uIGl0LiAqLwot K2ludCBkaF9jaGVja19wdWJfa2V5X2Z1bGwoY29uc3QgREggKmRoLCBjb25zdCBCSUdOVU0gKnB1 Yl9rZXksIGludCAqcmV0KTsKLSsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9k aF9yZmM3OTE5LmMuZmlwcy1kaCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZGgvZGhfcmZjNzkxOS5j Ci0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2RoL2RoX3JmYzc5MTkuYy5maXBzLWRoCTIwMjEt MDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRv L2RoL2RoX3JmYzc5MTkuYwkyMDIxLTAzLTAzIDE0OjIzOjI3LjQwNTA5MjQzNiArMDEwMAotQEAg LTcsNiArNyw4IEBACi0gICogaHR0cHM6Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2Uu aHRtbAotICAqLwotIAotKy8qIERIIHBhcmFtZXRlcnMgZnJvbSBSRkM3OTE5IGFuZCBSRkMzNTI2 ICovCi0rCi0gI2luY2x1ZGUgPHN0ZGlvLmg+Ci0gI2luY2x1ZGUgImludGVybmFsL2NyeXB0bGli LmgiCi0gI2luY2x1ZGUgImRoX2xvY2FsLmgiCi1AQCAtMTQsMTQgKzE2LDE5IEBACi0gI2luY2x1 ZGUgPG9wZW5zc2wvb2JqZWN0cy5oPgotICNpbmNsdWRlICJjcnlwdG8vYm5fZGguaCIKLSAKLS1z dGF0aWMgREggKmRoX3BhcmFtX2luaXQoY29uc3QgQklHTlVNICpwLCBpbnQzMl90IG5iaXRzKQot K3N0YXRpYyBESCAqZGhfcGFyYW1faW5pdChpbnQgbmlkLCBjb25zdCBCSUdOVU0gKnAsIGNvbnN0 IEJJR05VTSAqcSwgaW50MzJfdCBuYml0cykKLSB7Ci0gICAgIERIICpkaCA9IERIX25ldygpOwot ICAgICBpZiAoZGggPT0gTlVMTCkKLSAgICAgICAgIHJldHVybiBOVUxMOwotICAgICBkaC0+cCA9 IChCSUdOVU0gKilwOwotKyAgICAvKgotKyAgICAgKiBXZSBkbyBub3Qgc2V0IHEgYXMgaXQgd291 bGQgZW5hYmxlIHRoZSBpbmVmZmljaWVudCBhbmQKLSsgICAgICogdW5uZWNlc3NhcnkgcHVia2V5 IG1vZHVsYXIgZXhwb25lbnRpYXRpb24gY2hlY2suCi0rICAgICAqLwotICAgICBkaC0+ZyA9IChC SUdOVU0gKikmX2JpZ251bV9jb25zdF8yOwotICAgICBkaC0+bGVuZ3RoID0gbmJpdHM7Ci0rICAg IGRoLT5uaWQgPSBuaWQ7Ci0gICAgIHJldHVybiBkaDsKLSB9Ci0gCi1AQCAtMjksNDYgKzM2LDEy MSBAQCBESCAqREhfbmV3X2J5X25pZChpbnQgbmlkKQotIHsKLSAgICAgc3dpdGNoIChuaWQpIHsK LSAgICAgY2FzZSBOSURfZmZkaGUyMDQ4OgotLSAgICAgICAgcmV0dXJuIGRoX3BhcmFtX2luaXQo Jl9iaWdudW1fZmZkaGUyMDQ4X3AsIDIyNSk7Ci0rICAgICAgICByZXR1cm4gZGhfcGFyYW1faW5p dChuaWQsICZfYmlnbnVtX2ZmZGhlMjA0OF9wLCAmX2JpZ251bV9mZmRoZTIwNDhfcSwgMjI1KTsK LSAgICAgY2FzZSBOSURfZmZkaGUzMDcyOgotLSAgICAgICAgcmV0dXJuIGRoX3BhcmFtX2luaXQo Jl9iaWdudW1fZmZkaGUzMDcyX3AsIDI3NSk7Ci0rICAgICAgICByZXR1cm4gZGhfcGFyYW1faW5p dChuaWQsICZfYmlnbnVtX2ZmZGhlMzA3Ml9wLCAmX2JpZ251bV9mZmRoZTMwNzJfcSwgMjc1KTsK LSAgICAgY2FzZSBOSURfZmZkaGU0MDk2OgotLSAgICAgICAgcmV0dXJuIGRoX3BhcmFtX2luaXQo Jl9iaWdudW1fZmZkaGU0MDk2X3AsIDMyNSk7Ci0rICAgICAgICByZXR1cm4gZGhfcGFyYW1faW5p dChuaWQsICZfYmlnbnVtX2ZmZGhlNDA5Nl9wLCAmX2JpZ251bV9mZmRoZTQwOTZfcSwgMzI1KTsK LSAgICAgY2FzZSBOSURfZmZkaGU2MTQ0OgotLSAgICAgICAgcmV0dXJuIGRoX3BhcmFtX2luaXQo Jl9iaWdudW1fZmZkaGU2MTQ0X3AsIDM3NSk7Ci0rICAgICAgICByZXR1cm4gZGhfcGFyYW1faW5p dChuaWQsICZfYmlnbnVtX2ZmZGhlNjE0NF9wLCAmX2JpZ251bV9mZmRoZTYxNDRfcSwgMzc1KTsK LSAgICAgY2FzZSBOSURfZmZkaGU4MTkyOgotLSAgICAgICAgcmV0dXJuIGRoX3BhcmFtX2luaXQo Jl9iaWdudW1fZmZkaGU4MTkyX3AsIDQwMCk7Ci0rICAgICAgICByZXR1cm4gZGhfcGFyYW1faW5p dChuaWQsICZfYmlnbnVtX2ZmZGhlODE5Ml9wLCAmX2JpZ251bV9mZmRoZTgxOTJfcSwgNDAwKTsK LSsgICAgY2FzZSBOSURfbW9kcF8yMDQ4OgotKyAgICAgICAgcmV0dXJuIGRoX3BhcmFtX2luaXQo bmlkLCAmX2JpZ251bV9tb2RwXzIwNDhfcCwgJl9iaWdudW1fbW9kcF8yMDQ4X3EsIDIyNSk7Ci0r ICAgIGNhc2UgTklEX21vZHBfMzA3MjoKLSsgICAgICAgIHJldHVybiBkaF9wYXJhbV9pbml0KG5p ZCwgJl9iaWdudW1fbW9kcF8zMDcyX3AsICZfYmlnbnVtX21vZHBfMzA3Ml9xLCAyNzUpOwotKyAg ICBjYXNlIE5JRF9tb2RwXzQwOTY6Ci0rICAgICAgICByZXR1cm4gZGhfcGFyYW1faW5pdChuaWQs ICZfYmlnbnVtX21vZHBfNDA5Nl9wLCAmX2JpZ251bV9tb2RwXzQwOTZfcSwgMzI1KTsKLSsgICAg Y2FzZSBOSURfbW9kcF82MTQ0OgotKyAgICAgICAgcmV0dXJuIGRoX3BhcmFtX2luaXQobmlkLCAm X2JpZ251bV9tb2RwXzYxNDRfcCwgJl9iaWdudW1fbW9kcF82MTQ0X3EsIDM3NSk7Ci0rICAgIGNh c2UgTklEX21vZHBfODE5MjoKLSsgICAgICAgIHJldHVybiBkaF9wYXJhbV9pbml0KG5pZCwgJl9i aWdudW1fbW9kcF84MTkyX3AsICZfYmlnbnVtX21vZHBfODE5Ml9xLCA0MDApOwotKyAgICBjYXNl IE5JRF9tb2RwXzE1MzY6Ci0rICAgICAgICBpZiAoIUZJUFNfbW9kZSgpKQotKyAgICAgICAgICAg IHJldHVybiBkaF9wYXJhbV9pbml0KG5pZCwgJl9iaWdudW1fbW9kcF8xNTM2X3AsICZfYmlnbnVt X21vZHBfMTUzNl9xLCAxNzUpOwotKyAgICAgICAgLyogZmFsbHRocm91Z2ggKi8KLSAgICAgZGVm YXVsdDoKLSAgICAgICAgIERIZXJyKERIX0ZfREhfTkVXX0JZX05JRCwgREhfUl9JTlZBTElEX1BB UkFNRVRFUl9OSUQpOwotICAgICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgIH0KLSB9Ci0gCi0taW50 IERIX2dldF9uaWQoY29uc3QgREggKmRoKQotK3N0YXRpYyBpbnQgZGhfbWF0Y2hfZ3JvdXAoY29u c3QgREggKmRoLCBCSUdOVU0gKipxb3V0LCBpbnQgKmxvdXQpCi0gewotICAgICBpbnQgbmlkOwot KyAgICBjb25zdCBCSUdOVU0gKnE7Ci0rICAgIGludCBsZW5ndGg7Ci0gCi0gICAgIGlmIChCTl9n ZXRfd29yZChkaC0+ZykgIT0gMikKLSAgICAgICAgIHJldHVybiBOSURfdW5kZWY7Ci0tICAgIGlm ICghQk5fY21wKGRoLT5wLCAmX2JpZ251bV9mZmRoZTIwNDhfcCkpCi0rCi0rICAgIGlmIChkaC0+ bmlkID09IE5JRF9mZmRoZTIwNDggfHwgIUJOX2NtcChkaC0+cCwgJl9iaWdudW1fZmZkaGUyMDQ4 X3ApKSB7Ci0gICAgICAgICBuaWQgPSBOSURfZmZkaGUyMDQ4OwotLSAgICBlbHNlIGlmICghQk5f Y21wKGRoLT5wLCAmX2JpZ251bV9mZmRoZTMwNzJfcCkpCi0rICAgICAgICBxID0gJl9iaWdudW1f ZmZkaGUyMDQ4X3E7Ci0rICAgICAgICBsZW5ndGggPSAyMjU7Ci0rICAgIH0gZWxzZSBpZiAoZGgt Pm5pZCA9PSBOSURfZmZkaGUzMDcyIHx8ICFCTl9jbXAoZGgtPnAsICZfYmlnbnVtX2ZmZGhlMzA3 Ml9wKSkgewotICAgICAgICAgbmlkID0gTklEX2ZmZGhlMzA3MjsKLS0gICAgZWxzZSBpZiAoIUJO X2NtcChkaC0+cCwgJl9iaWdudW1fZmZkaGU0MDk2X3ApKQotKyAgICAgICAgcSA9ICZfYmlnbnVt X2ZmZGhlMzA3Ml9xOwotKyAgICAgICAgbGVuZ3RoID0gMjc1OwotKyAgICB9IGVsc2UgaWYgKGRo LT5uaWQgPT0gTklEX2ZmZGhlNDA5NiB8fCAhQk5fY21wKGRoLT5wLCAmX2JpZ251bV9mZmRoZTQw OTZfcCkpIHsKLSAgICAgICAgIG5pZCA9IE5JRF9mZmRoZTQwOTY7Ci0tICAgIGVsc2UgaWYgKCFC Tl9jbXAoZGgtPnAsICZfYmlnbnVtX2ZmZGhlNjE0NF9wKSkKLSsgICAgICAgIHEgPSAmX2JpZ251 bV9mZmRoZTQwOTZfcTsKLSsgICAgICAgIGxlbmd0aCA9IDMyNTsKLSsgICAgfSBlbHNlIGlmIChk aC0+bmlkID09IE5JRF9mZmRoZTYxNDQgfHwgIUJOX2NtcChkaC0+cCwgJl9iaWdudW1fZmZkaGU2 MTQ0X3ApKSB7Ci0gICAgICAgICBuaWQgPSBOSURfZmZkaGU2MTQ0OwotLSAgICBlbHNlIGlmICgh Qk5fY21wKGRoLT5wLCAmX2JpZ251bV9mZmRoZTgxOTJfcCkpCi0rICAgICAgICBxID0gJl9iaWdu dW1fZmZkaGU2MTQ0X3E7Ci0rICAgICAgICBsZW5ndGggPSAzNzU7Ci0rICAgIH0gZWxzZSBpZiAo ZGgtPm5pZCA9PSBOSURfZmZkaGU4MTkyIHx8ICFCTl9jbXAoZGgtPnAsICZfYmlnbnVtX2ZmZGhl ODE5Ml9wKSkgewotICAgICAgICAgbmlkID0gTklEX2ZmZGhlODE5MjsKLS0gICAgZWxzZQotKyAg ICAgICAgcSA9ICZfYmlnbnVtX2ZmZGhlODE5Ml9xOwotKyAgICAgICAgbGVuZ3RoID0gNDAwOwot KyAgICB9IGVsc2UgaWYgKGRoLT5uaWQgPT0gTklEX21vZHBfMjA0OCB8fCAhQk5fY21wKGRoLT5w LCAmX2JpZ251bV9tb2RwXzIwNDhfcCkpIHsKLSsgICAgICAgIG5pZCA9IE5JRF9tb2RwXzIwNDg7 Ci0rICAgICAgICBxID0gJl9iaWdudW1fbW9kcF8yMDQ4X3E7Ci0rICAgICAgICBsZW5ndGggPSAy MjU7Ci0rICAgIH0gZWxzZSBpZiAoZGgtPm5pZCA9PSBOSURfbW9kcF8zMDcyIHx8ICFCTl9jbXAo ZGgtPnAsICZfYmlnbnVtX21vZHBfMzA3Ml9wKSkgewotKyAgICAgICAgbmlkID0gTklEX21vZHBf MzA3MjsKLSsgICAgICAgIHEgPSAmX2JpZ251bV9tb2RwXzMwNzJfcTsKLSsgICAgICAgIGxlbmd0 aCA9IDI3NTsKLSsgICAgfSBlbHNlIGlmIChkaC0+bmlkID09IE5JRF9tb2RwXzQwOTYgfHwgIUJO X2NtcChkaC0+cCwgJl9iaWdudW1fbW9kcF80MDk2X3ApKSB7Ci0rICAgICAgICBuaWQgPSBOSURf bW9kcF80MDk2OwotKyAgICAgICAgcSA9ICZfYmlnbnVtX21vZHBfNDA5Nl9xOwotKyAgICAgICAg bGVuZ3RoID0gMzI1OwotKyAgICB9IGVsc2UgaWYgKGRoLT5uaWQgPT0gTklEX21vZHBfNjE0NCB8 fCAhQk5fY21wKGRoLT5wLCAmX2JpZ251bV9tb2RwXzYxNDRfcCkpIHsKLSsgICAgICAgIG5pZCA9 IE5JRF9tb2RwXzYxNDQ7Ci0rICAgICAgICBxID0gJl9iaWdudW1fbW9kcF82MTQ0X3E7Ci0rICAg ICAgICBsZW5ndGggPSAzNzU7Ci0rICAgIH0gZWxzZSBpZiAoZGgtPm5pZCA9PSBOSURfbW9kcF84 MTkyIHx8ICFCTl9jbXAoZGgtPnAsICZfYmlnbnVtX21vZHBfODE5Ml9wKSkgewotKyAgICAgICAg bmlkID0gTklEX21vZHBfODE5MjsKLSsgICAgICAgIHEgPSAmX2JpZ251bV9tb2RwXzgxOTJfcTsK LSsgICAgICAgIGxlbmd0aCA9IDQwMDsKLSsgICAgfSBlbHNlIGlmICghRklQU19tb2RlKCkgJiYg KGRoLT5uaWQgPT0gTklEX21vZHBfMTUzNiB8fCAhQk5fY21wKGRoLT5wLCAmX2JpZ251bV9tb2Rw XzE1MzZfcCkpKSB7Ci0rICAgICAgICBuaWQgPSBOSURfbW9kcF8xNTM2OwotKyAgICAgICAgcSA9 ICZfYmlnbnVtX21vZHBfMTUzNl9xOwotKyAgICAgICAgbGVuZ3RoID0gMTc1OwotKyAgICB9IGVs c2UgewotICAgICAgICAgcmV0dXJuIE5JRF91bmRlZjsKLSsgICAgfQotKwotICAgICBpZiAoZGgt PnEgIT0gTlVMTCkgewotLSAgICAgICAgQklHTlVNICpxID0gQk5fZHVwKGRoLT5wKTsKLSsgICAg ICAgIC8qIENoZWNrIHRoYXQgcSBtYXRjaGVzIHRoZSBrbm93biBxLiAqLwotKyAgICAgICAgaWYg KEJOX2NtcChkaC0+cSwgcSkpCi0rICAgICAgICAgICAgcmV0dXJuIE5JRF91bmRlZjsKLSsgICAg fSBlbHNlIGlmIChxb3V0ICE9IE5VTEwpIHsKLSsgICAgICAgICpxb3V0ID0gKEJJR05VTSAqKXE7 Ci0rICAgIH0KLSAKLS0gICAgICAgIC8qIENoZWNrIHEgPSBwICogMiArIDEgd2UgYWxyZWFkeSBr bm93IHEgaXMgb2RkLCBzbyBqdXN0IHNoaWZ0IHJpZ2h0ICovCi0tICAgICAgICBpZiAocSA9PSBO VUxMIHx8ICFCTl9yc2hpZnQxKHEsIHEpIHx8ICFCTl9jbXAoZGgtPnEsIHEpKQotLSAgICAgICAg ICAgIG5pZCA9IE5JRF91bmRlZjsKLS0gICAgICAgIEJOX2ZyZWUocSk7Ci0rICAgIGlmIChsb3V0 ICE9IE5VTEwpIHsKLSsgICAgICAgICpsb3V0ID0gbGVuZ3RoOwotICAgICB9Ci0gICAgIHJldHVy biBuaWQ7Ci0gfQotKwotK2ludCBESF9nZXRfbmlkKGNvbnN0IERIICpkaCkKLSt7Ci0rICAgIGlm IChkaC0+bmlkICE9IE5JRF91bmRlZikgewotKyAgICAgICAgcmV0dXJuIGRoLT5uaWQ7Ci0rICAg IH0KLSsgICAgcmV0dXJuIGRoX21hdGNoX2dyb3VwKGRoLCBOVUxMLCBOVUxMKTsKLSt9Ci0rCi0r dm9pZCBkaF9jYWNoZV9uaWQoREggKmRoKQotK3sKLSsgICAgZGgtPm5pZCA9IGRoX21hdGNoX2dy b3VwKGRoLCBOVUxMLCAmZGgtPmxlbmd0aCk7Ci0rfQotKwotK2ludCBkaF9nZXRfa25vd25fcShj b25zdCBESCAqZGgsIEJJR05VTSAqKnEpCi0rewotKyAgICByZXR1cm4gZGhfbWF0Y2hfZ3JvdXAo ZGgsIHEsIE5VTEwpICE9IE5JRF91bmRlZjsKLSt9Ci0rCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4x ai9jcnlwdG8vZWMvZWNfa2V5LmMuZmlwcy1kaCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZWMvZWNf a2V5LmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZWMvZWNfa2V5LmMuZmlwcy1kaAkyMDIx LTAzLTAzIDE0OjIzOjI3LjMzOTA5MTg2OCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0 by9lYy9lY19rZXkuYwkyMDIxLTAzLTAzIDE0OjIzOjI3LjQwNTA5MjQzNiArMDEwMAotQEAgLTI4 MSw5ICsyODEsMTggQEAgaW50IGVjX2tleV9zaW1wbGVfZ2VuZXJhdGVfa2V5KEVDX0tFWSAqZQot ICAgICBpZiAoIUVDX1BPSU5UX211bChlY2tleS0+Z3JvdXAsIHB1Yl9rZXksIHByaXZfa2V5LCBO VUxMLCBOVUxMLCBjdHgpKQotICAgICAgICAgZ290byBlcnI7Ci0gCi0tICAgIGVja2V5LT5wcml2 X2tleSA9IHByaXZfa2V5OwotICAgICBlY2tleS0+cHViX2tleSA9IHB1Yl9rZXk7Ci0gCi0rICAg IGlmIChGSVBTX21vZGUoKSkgewotKyAgICAgICAgZWNrZXktPnByaXZfa2V5ID0gTlVMTDsKLSsg ICAgICAgIGlmIChFQ19LRVlfY2hlY2tfa2V5KGVja2V5KSA8PSAwKSB7Ci0rICAgICAgICAgICAg ZWNrZXktPnB1Yl9rZXkgPSBOVUxMOwotKyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAg fQotKyAgICB9Ci0rCi0rICAgIGVja2V5LT5wcml2X2tleSA9IHByaXZfa2V5OwotKwotICAgICBv ayA9IDE7Ci0gCi0gIGVycjoKLUBAIC0yOTcsOCArMzA2LDIzIEBAIGludCBlY19rZXlfc2ltcGxl X2dlbmVyYXRlX2tleShFQ19LRVkgKmUKLSAKLSBpbnQgZWNfa2V5X3NpbXBsZV9nZW5lcmF0ZV9w dWJsaWNfa2V5KEVDX0tFWSAqZWNrZXkpCi0gewotLSAgICByZXR1cm4gRUNfUE9JTlRfbXVsKGVj a2V5LT5ncm91cCwgZWNrZXktPnB1Yl9rZXksIGVja2V5LT5wcml2X2tleSwgTlVMTCwKLSsgICAg QklHTlVNICpwcml2X2tleTsKLSsgICAgaW50IHJldCA9IEVDX1BPSU5UX211bChlY2tleS0+Z3Jv dXAsIGVja2V5LT5wdWJfa2V5LCBlY2tleS0+cHJpdl9rZXksIE5VTEwsCi0gICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgTlVMTCk7Ci0rCi0rICAgIGlmIChyZXQgPD0gMCB8fCAhRklQU19t b2RlKCkpCi0rICAgICAgICByZXR1cm4gcmV0OwotKwotKyAgICAvKiBubyBuZWVkIHRvIHBlcmZv cm0gcHJpdmF0ZSBrZXkgdGVzdCwgdGVtcG9yYXJpbHkgaGlkZSBpdCAqLwotKyAgICBwcml2X2tl eSA9IGVja2V5LT5wcml2X2tleTsKLSsgICAgZWNrZXktPnByaXZfa2V5ID0gTlVMTDsKLSsgICAg cmV0ID0gRUNfS0VZX2NoZWNrX2tleShlY2tleSk7Ci0rICAgIGVja2V5LT5wcml2X2tleSA9IHBy aXZfa2V5OwotKwotKyAgICBpZiAocmV0IDw9IDApCi0rICAgICAgICBFQ19QT0lOVF9zZXRfdG9f aW5maW5pdHkoZWNrZXktPmdyb3VwLCBlY2tleS0+cHViX2tleSk7Ci0rCi0rICAgIHJldHVybiBy ZXQ7Ci0gfQotIAotIGludCBFQ19LRVlfY2hlY2tfa2V5KGNvbnN0IEVDX0tFWSAqZWNrZXkpCi1k aWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL3BfbGliLmMuZmlwcy1kaCBvcGVuc3Ns LTEuMS4xai9jcnlwdG8vZXZwL3BfbGliLmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZw L3BfbGliLmMuZmlwcy1kaAkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysr IG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvcF9saWIuYwkyMDIxLTAzLTAzIDE0OjIzOjI3LjQw NTA5MjQzNiArMDEwMAotQEAgLTU0MCw3ICs1NDAsOCBAQCBFQ19LRVkgKkVWUF9QS0VZX2dldDFf RUNfS0VZKEVWUF9QS0VZICpwCi0gCi0gaW50IEVWUF9QS0VZX3NldDFfREgoRVZQX1BLRVkgKnBr ZXksIERIICprZXkpCi0gewotLSAgICBpbnQgdHlwZSA9IERIX2dldDBfcShrZXkpID09IE5VTEwg PyBFVlBfUEtFWV9ESCA6IEVWUF9QS0VZX0RIWDsKLSsgICAgaW50IHR5cGUgPSBESF9nZXQwX3Eo a2V5KSA9PSBOVUxMIHx8IERIX2dldF9uaWQoa2V5KSAhPSBOSURfdW5kZWYgPwotKyAgICAgICAg ICAgICAgIEVWUF9QS0VZX0RIIDogRVZQX1BLRVlfREhYOwotICAgICBpbnQgcmV0ID0gRVZQX1BL RVlfYXNzaWduKHBrZXksIHR5cGUsIGtleSk7Ci0gCi0gICAgIGlmIChyZXQpCi1kaWZmIC11cCBv cGVuc3NsLTEuMS4xai9jcnlwdG8vb2JqZWN0cy9vYmpfZGF0LmguZmlwcy1kaCBvcGVuc3NsLTEu MS4xai9jcnlwdG8vb2JqZWN0cy9vYmpfZGF0LmgKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8v b2JqZWN0cy9vYmpfZGF0LmguZmlwcy1kaAkyMDIxLTAzLTAzIDE0OjIzOjI3LjM5NDA5MjM0MSAr MDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9vYmplY3RzL29ial9kYXQuaAkyMDIxLTAz LTAzIDE0OjIzOjI3LjQwNjA5MjQ0NCArMDEwMAotQEAgLTEwNzgsNyArMTA3OCw3IEBAIHN0YXRp YyBjb25zdCB1bnNpZ25lZCBjaGFyIHNvWzc3NjJdID0gewotICAgICAweDJBLDB4ODYsMHg0OCww eDg2LDB4RjcsMHgwRCwweDAyLDB4MEQsICAgICAgIC8qIFsgNzc1M10gT0JKX2htYWNXaXRoU0hB NTEyXzI1NiAqLwotIH07Ci0gCi0tI2RlZmluZSBOVU1fTklEIDExOTkKLSsjZGVmaW5lIE5VTV9O SUQgMTIwNQotIHN0YXRpYyBjb25zdCBBU04xX09CSkVDVCBuaWRfb2Jqc1tOVU1fTklEXSA9IHsK LSAgICAgeyJVTkRFRiIsICJ1bmRlZmluZWQiLCBOSURfdW5kZWZ9LAotICAgICB7InJzYWRzaSIs ICJSU0EgRGF0YSBTZWN1cml0eSwgSW5jLiIsIE5JRF9yc2Fkc2ksIDYsICZzb1swXX0sCi1AQCAt MjI3OSw5ICsyMjc5LDE1IEBAIHN0YXRpYyBjb25zdCBBU04xX09CSkVDVCBuaWRfb2Jqc1tOVU1f TkkKLSAgICAgeyJLQktERiIsICJrYmtkZiIsIE5JRF9rYmtkZn0sCi0gICAgIHsiS1JCNUtERiIs ICJrcmI1a2RmIiwgTklEX2tyYjVrZGZ9LAotICAgICB7IlNTS0RGIiwgInNza2RmIiwgTklEX3Nz a2RmfSwKLSsgICAgeyJtb2RwXzE1MzYiLCAibW9kcF8xNTM2IiwgTklEX21vZHBfMTUzNn0sCi0r ICAgIHsibW9kcF8yMDQ4IiwgIm1vZHBfMjA0OCIsIE5JRF9tb2RwXzIwNDh9LAotKyAgICB7Im1v ZHBfMzA3MiIsICJtb2RwXzMwNzIiLCBOSURfbW9kcF8zMDcyfSwKLSsgICAgeyJtb2RwXzQwOTYi LCAibW9kcF80MDk2IiwgTklEX21vZHBfNDA5Nn0sCi0rICAgIHsibW9kcF82MTQ0IiwgIm1vZHBf NjE0NCIsIE5JRF9tb2RwXzYxNDR9LAotKyAgICB7Im1vZHBfODE5MiIsICJtb2RwXzgxOTIiLCBO SURfbW9kcF84MTkyfSwKLSB9OwotIAotLSNkZWZpbmUgTlVNX1NOIDExOTAKLSsjZGVmaW5lIE5V TV9TTiAxMTk2Ci0gc3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBzbl9vYmpzW05VTV9TTl0gPSB7 Ci0gICAgICAzNjQsICAgIC8qICJBRF9EVkNTIiAqLwotICAgICAgNDE5LCAgICAvKiAiQUVTLTEy OC1DQkMiICovCi1AQCAtMzEyNyw2ICszMTMzLDEyIEBAIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBp bnQgc25fb2Jqc1tOVU1fU04KLSAgICAgIDUwNiwgICAgLyogIm1pbWUtbWhzLWJvZGllcyIgKi8K LSAgICAgIDUwNSwgICAgLyogIm1pbWUtbWhzLWhlYWRpbmdzIiAqLwotICAgICAgNDg4LCAgICAv KiAibW9iaWxlVGVsZXBob25lTnVtYmVyIiAqLwotKyAgICAxMTk5LCAgICAvKiAibW9kcF8xNTM2 IiAqLwotKyAgICAxMjAwLCAgICAvKiAibW9kcF8yMDQ4IiAqLwotKyAgICAxMjAxLCAgICAvKiAi bW9kcF8zMDcyIiAqLwotKyAgICAxMjAyLCAgICAvKiAibW9kcF80MDk2IiAqLwotKyAgICAxMjAz LCAgICAvKiAibW9kcF82MTQ0IiAqLwotKyAgICAxMjA0LCAgICAvKiAibW9kcF84MTkyIiAqLwot ICAgICAgMTM2LCAgICAvKiAibXNDVExTaWduIiAqLwotICAgICAgMTM1LCAgICAvKiAibXNDb2Rl Q29tIiAqLwotICAgICAgMTM0LCAgICAvKiAibXNDb2RlSW5kIiAqLwotQEAgLTM0NzUsNyArMzQ4 Nyw3IEBAIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgc25fb2Jqc1tOVU1fU04KLSAgICAgMTA5 MywgICAgLyogIng1MDlFeHRBZG1pc3Npb24iICovCi0gfTsKLSAKLS0jZGVmaW5lIE5VTV9MTiAx MTkwCi0rI2RlZmluZSBOVU1fTE4gMTE5NgotIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgbG5f b2Jqc1tOVU1fTE5dID0gewotICAgICAgMzYzLCAgICAvKiAiQUQgVGltZSBTdGFtcGluZyIgKi8K LSAgICAgIDQwNSwgICAgLyogIkFOU0kgWDkuNjIiICovCi1AQCAtNDMxMyw2ICs0MzI1LDEyIEBA IHN0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgbG5fb2Jqc1tOVU1fTE4KLSAgICAgIDUwNiwgICAg LyogIm1pbWUtbWhzLWJvZGllcyIgKi8KLSAgICAgIDUwNSwgICAgLyogIm1pbWUtbWhzLWhlYWRp bmdzIiAqLwotICAgICAgNDg4LCAgICAvKiAibW9iaWxlVGVsZXBob25lTnVtYmVyIiAqLwotKyAg ICAxMTk5LCAgICAvKiAibW9kcF8xNTM2IiAqLwotKyAgICAxMjAwLCAgICAvKiAibW9kcF8yMDQ4 IiAqLwotKyAgICAxMjAxLCAgICAvKiAibW9kcF8zMDcyIiAqLwotKyAgICAxMjAyLCAgICAvKiAi bW9kcF80MDk2IiAqLwotKyAgICAxMjAzLCAgICAvKiAibW9kcF82MTQ0IiAqLwotKyAgICAxMjA0 LCAgICAvKiAibW9kcF84MTkyIiAqLwotICAgICAgNDgxLCAgICAvKiAiblNSZWNvcmQiICovCi0g ICAgICAxNzMsICAgIC8qICJuYW1lIiAqLwotICAgICAgNjgxLCAgICAvKiAib25CYXNpcyIgKi8K LWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9vYmplY3RzL29iamVjdHMudHh0LmZpcHMt ZGggb3BlbnNzbC0xLjEuMWovY3J5cHRvL29iamVjdHMvb2JqZWN0cy50eHQKLS0tLSBvcGVuc3Ns LTEuMS4xai9jcnlwdG8vb2JqZWN0cy9vYmplY3RzLnR4dC5maXBzLWRoCTIwMjEtMDMtMDMgMTQ6 MjM6MjcuMzk1MDkyMzUwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL29iamVjdHMv b2JqZWN0cy50eHQJMjAyMS0wMy0wMyAxNDoyMzoyNy40MDYwOTI0NDQgKzAxMDAKLUBAIC0xNjU3 LDYgKzE2NTcsMTMgQEAgaWQtcGtpbml0IDUgICAgICAgICAgICAgICAgICAgICA6IHBrSW5pdAot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IGZmZGhlNDA5NgotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICA6IGZmZGhlNjE0NAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6 IGZmZGhlODE5MgotKyMgTklEcyBmb3IgUkZDMzUyNiBESCBwYXJhbWV0ZXJzCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICAgIDogbW9kcF8xNTM2Ci0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDogbW9kcF8yMDQ4Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbW9kcF8zMDcy Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbW9kcF80MDk2Ci0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDogbW9kcF82MTQ0Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAg IDogbW9kcF84MTkyCi0gCi0gIyBPSURzIGZvciBEU1RVLTQxNDUvRFNUVS03NTY0IChodHRwOi8v emFrb24yLnJhZGEuZ292LnVhL2xhd3Mvc2hvdy96MDQyMy0xNykKLSAKLWRpZmYgLXVwIG9wZW5z c2wtMS4xLjFqL2NyeXB0by9vYmplY3RzL29ial9tYWMubnVtLmZpcHMtZGggb3BlbnNzbC0xLjEu MWovY3J5cHRvL29iamVjdHMvb2JqX21hYy5udW0KLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8v b2JqZWN0cy9vYmpfbWFjLm51bS5maXBzLWRoCTIwMjEtMDMtMDMgMTQ6MjM6MjcuMzk1MDkyMzUw ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL29iamVjdHMvb2JqX21hYy5udW0JMjAy MS0wMy0wMyAxNDoyMzoyNy40MDYwOTI0NDQgKzAxMDAKLUBAIC0xMTk2LDMgKzExOTYsOSBAQCBz c2hrZGYJCTExOTUKLSBrYmtkZgkJMTE5NgotIGtyYjVrZGYJCTExOTcKLSBzc2tkZgkJMTE5OAot K21vZHBfMTUzNgkJMTE5OQotK21vZHBfMjA0OAkJMTIwMAotK21vZHBfMzA3MgkJMTIwMQotK21v ZHBfNDA5NgkJMTIwMgotK21vZHBfNjE0NAkJMTIwMwotK21vZHBfODE5MgkJMTIwNAotZGlmZiAt dXAgb3BlbnNzbC0xLjEuMWovZG9jL21hbjMvREhfbmV3X2J5X25pZC5wb2QuZmlwcy1kaCBvcGVu c3NsLTEuMS4xai9kb2MvbWFuMy9ESF9uZXdfYnlfbmlkLnBvZAotLS0tIG9wZW5zc2wtMS4xLjFq L2RvYy9tYW4zL0RIX25ld19ieV9uaWQucG9kLmZpcHMtZGgJMjAyMS0wMi0xNiAxNjoyNDowMS4w MDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9kb2MvbWFuMy9ESF9uZXdfYnlfbmlk LnBvZAkyMDIxLTAzLTAzIDE0OjIzOjI3LjQwNjA5MjQ0NCArMDEwMAotQEAgLTgsMTMgKzgsMTUg QEAgREhfbmV3X2J5X25pZCwgREhfZ2V0X25pZCAtIGdldCBvciBmaW5kCi0gCi0gICNpbmNsdWRl IDxvcGVuc3NsL2RoLmg+Ci0gIERIICpESF9uZXdfYnlfbmlkKGludCBuaWQpOwotLSBpbnQgKkRI X2dldF9uaWQoY29uc3QgREggKmRoKTsKLSsgaW50IERIX2dldF9uaWQoY29uc3QgREggKmRoKTsK LSAKLSA9aGVhZDEgREVTQ1JJUFRJT04KLSAKLSBESF9uZXdfYnlfbmlkKCkgY3JlYXRlcyBhbmQg cmV0dXJucyBhIERIIHN0cnVjdHVyZSBjb250YWluaW5nIG5hbWVkIHBhcmFtZXRlcnMKLSBCPG5p ZD4uIEN1cnJlbnRseSBCPG5pZD4gbXVzdCBiZSBCPE5JRF9mZmRoZTIwNDg+LCBCPE5JRF9mZmRo ZTMwNzI+LAotLUI8TklEX2ZmZGhlNDA5Nj4sIEI8TklEX2ZmZGhlNjE0ND4gb3IgQjxOSURfZmZk aGU4MTkyPi4KLStCPE5JRF9mZmRoZTQwOTY+LCBCPE5JRF9mZmRoZTYxNDQ+LCBCPE5JRF9mZmRo ZTgxOTI+LAotK0I8TklEX21vZHBfMTUzNj4sIEI8TklEX21vZHBfMjA0OD4sIEI8TklEX21vZHBf MzA3Mj4sCi0rQjxOSURfbW9kcF80MDk2PiwgQjxOSURfbW9kcF82MTQ0PiBvciBCPE5JRF9tb2Rw XzgxOTI+LgotIAotIERIX2dldF9uaWQoKSBkZXRlcm1pbmVzIGlmIHRoZSBwYXJhbWV0ZXJzIGNv bnRhaW5lZCBpbiBCPGRoPiBtYXRjaAotIGFueSBuYW1lZCBzZXQuIEl0IHJldHVybnMgdGhlIE5J RCBjb3JyZXNwb25kaW5nIHRvIHRoZSBtYXRjaGluZyBwYXJhbWV0ZXJzIG9yCi1kaWZmIC11cCBv cGVuc3NsLTEuMS4xai9kb2MvbWFuMy9FVlBfUEtFWV9DVFhfY3RybC5wb2QuZmlwcy1kaCBvcGVu c3NsLTEuMS4xai9kb2MvbWFuMy9FVlBfUEtFWV9DVFhfY3RybC5wb2QKLS0tLSBvcGVuc3NsLTEu MS4xai9kb2MvbWFuMy9FVlBfUEtFWV9DVFhfY3RybC5wb2QuZmlwcy1kaAkyMDIxLTAyLTE2IDE2 OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2RvYy9tYW4zL0VWUF9Q S0VZX0NUWF9jdHJsLnBvZAkyMDIxLTAzLTAzIDE0OjIzOjI3LjQwNjA5MjQ0NCArMDEwMAotQEAg LTI5NCwxMCArMjk0LDExIEBAIFRoZSBFVlBfUEtFWV9DVFhfc2V0X2RoX3BhZCgpIG1hY3JvIHNl dHMKLSBJZiBCPHBhZD4gaXMgemVybyAodGhlIGRlZmF1bHQpIHRoZW4gbm8gcGFkZGluZyBpcyBw ZXJmb3JtZWQuCi0gCi0gRVZQX1BLRVlfQ1RYX3NldF9kaF9uaWQoKSBzZXRzIHRoZSBESCBwYXJh bWV0ZXJzIHRvIHZhbHVlcyBjb3JyZXNwb25kaW5nIHRvCi0tQjxuaWQ+IGFzIGRlZmluZWQgaW4g UkZDNzkxOS4gVGhlIEI8bmlkPiBwYXJhbWV0ZXIgbXVzdCBiZSBCPE5JRF9mZmRoZTIwNDg+LAot LUI8TklEX2ZmZGhlMzA3Mj4sIEI8TklEX2ZmZGhlNDA5Nj4sIEI8TklEX2ZmZGhlNjE0ND4sIEI8 TklEX2ZmZGhlODE5Mj4KLS1vciBCPE5JRF91bmRlZj4gdG8gY2xlYXIgdGhlIHN0b3JlZCB2YWx1 ZS4gVGhpcyBtYWNybyBjYW4gYmUgY2FsbGVkIGR1cmluZwotLXBhcmFtZXRlciBvciBrZXkgZ2Vu ZXJhdGlvbi4KLStJPG5pZD4gYXMgZGVmaW5lZCBpbiBSRkM3OTE5IG9yIFJGQzM1MjYuIFRoZSBJ PG5pZD4gcGFyYW1ldGVyIG11c3QgYmUKLStCPE5JRF9mZmRoZTIwNDg+LCBCPE5JRF9mZmRoZTMw NzI+LCBCPE5JRF9mZmRoZTQwOTY+LCBCPE5JRF9mZmRoZTYxNDQ+LAotK0I8TklEX2ZmZGhlODE5 Mj4sIEI8TklEX21vZHBfMTUzNj4sIEI8TklEX21vZHBfMjA0OD4sIEI8TklEX21vZHBfMzA3Mj4s Ci0rQjxOSURfbW9kcF80MDk2PiwgQjxOSURfbW9kcF82MTQ0PiwgQjxOSURfbW9kcF84MTkyPiBv ciBCPE5JRF91bmRlZj4gdG8gY2xlYXIKLSt0aGUgc3RvcmVkIHZhbHVlLiBUaGlzIG1hY3JvIGNh biBiZSBjYWxsZWQgZHVyaW5nIHBhcmFtZXRlciBvciBrZXkgZ2VuZXJhdGlvbi4KLSBUaGUgbmlk IHBhcmFtZXRlciBhbmQgdGhlIHJmYzUxMTQgcGFyYW1ldGVyIGFyZSBtdXR1YWxseSBleGNsdXNp dmUuCi0gCi0gVGhlIEVWUF9QS0VZX0NUWF9zZXRfZGhfcmZjNTExNCgpIGFuZCBFVlBfUEtFWV9D VFhfc2V0X2RoeF9yZmM1MTE0KCkgbWFjcm9zIGFyZQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWov aW5jbHVkZS9jcnlwdG8vYm5fZGguaC5maXBzLWRoIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvY3J5 cHRvL2JuX2RoLmgKLS0tLSBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL2NyeXB0by9ibl9kaC5oLmZp cHMtZGgJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEu MS4xai9pbmNsdWRlL2NyeXB0by9ibl9kaC5oCTIwMjEtMDMtMDMgMTQ6MjM6MjcuNDA2MDkyNDQ0 ICswMTAwCi1AQCAtMSw3ICsxLDcgQEAKLSAvKgotLSAqIENvcHlyaWdodCAyMDE1LTIwMTYgVGhl IE9wZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgotKyAqIENvcHly aWdodCAyMDE1LTIwMjAgVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJl c2VydmVkLgotICAqCi0tICogTGljZW5zZWQgdW5kZXIgdGhlIE9wZW5TU0wgbGljZW5zZSAodGhl ICJMaWNlbnNlIikuICBZb3UgbWF5IG5vdCB1c2UKLSsgKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBh Y2hlIExpY2Vuc2UgMi4wICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBtYXkgbm90IHVzZQotICAqIHRo aXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiAgWW91IGNhbiBv YnRhaW4gYSBjb3B5Ci0gICogaW4gdGhlIGZpbGUgTElDRU5TRSBpbiB0aGUgc291cmNlIGRpc3Ry aWJ1dGlvbiBvciBhdAotICAqIGh0dHBzOi8vd3d3Lm9wZW5zc2wub3JnL3NvdXJjZS9saWNlbnNl Lmh0bWwKLUBAIC05LDE2ICs5LDM1IEBACi0gCi0gI2RlZmluZSBkZWNsYXJlX2RoX2JuKHgpIFwK LSAgICAgZXh0ZXJuIGNvbnN0IEJJR05VTSBfYmlnbnVtX2RoIyN4IyNfcDsgICAgICAgICAgICAg IFwKLSsgICAgZXh0ZXJuIGNvbnN0IEJJR05VTSBfYmlnbnVtX2RoIyN4IyNfcTsgICAgICAgICAg ICAgIFwKLSAgICAgZXh0ZXJuIGNvbnN0IEJJR05VTSBfYmlnbnVtX2RoIyN4IyNfZzsgICAgICAg ICAgICAgIFwKLS0gICAgZXh0ZXJuIGNvbnN0IEJJR05VTSBfYmlnbnVtX2RoIyN4IyNfcTsKLSAK LSBkZWNsYXJlX2RoX2JuKDEwMjRfMTYwKQotIGRlY2xhcmVfZGhfYm4oMjA0OF8yMjQpCi0gZGVj bGFyZV9kaF9ibigyMDQ4XzI1NikKLSAKLStleHRlcm4gY29uc3QgQklHTlVNIF9iaWdudW1fY29u c3RfMjsKLSsKLSBleHRlcm4gY29uc3QgQklHTlVNIF9iaWdudW1fZmZkaGUyMDQ4X3A7Ci0gZXh0 ZXJuIGNvbnN0IEJJR05VTSBfYmlnbnVtX2ZmZGhlMzA3Ml9wOwotIGV4dGVybiBjb25zdCBCSUdO VU0gX2JpZ251bV9mZmRoZTQwOTZfcDsKLSBleHRlcm4gY29uc3QgQklHTlVNIF9iaWdudW1fZmZk aGU2MTQ0X3A7Ci0gZXh0ZXJuIGNvbnN0IEJJR05VTSBfYmlnbnVtX2ZmZGhlODE5Ml9wOwotLWV4 dGVybiBjb25zdCBCSUdOVU0gX2JpZ251bV9jb25zdF8yOwotK2V4dGVybiBjb25zdCBCSUdOVU0g X2JpZ251bV9mZmRoZTIwNDhfcTsKLStleHRlcm4gY29uc3QgQklHTlVNIF9iaWdudW1fZmZkaGUz MDcyX3E7Ci0rZXh0ZXJuIGNvbnN0IEJJR05VTSBfYmlnbnVtX2ZmZGhlNDA5Nl9xOwotK2V4dGVy biBjb25zdCBCSUdOVU0gX2JpZ251bV9mZmRoZTYxNDRfcTsKLStleHRlcm4gY29uc3QgQklHTlVN IF9iaWdudW1fZmZkaGU4MTkyX3E7Ci0rCi0rZXh0ZXJuIGNvbnN0IEJJR05VTSBfYmlnbnVtX21v ZHBfMTUzNl9wOwotK2V4dGVybiBjb25zdCBCSUdOVU0gX2JpZ251bV9tb2RwXzIwNDhfcDsKLStl eHRlcm4gY29uc3QgQklHTlVNIF9iaWdudW1fbW9kcF8zMDcyX3A7Ci0rZXh0ZXJuIGNvbnN0IEJJ R05VTSBfYmlnbnVtX21vZHBfNDA5Nl9wOwotK2V4dGVybiBjb25zdCBCSUdOVU0gX2JpZ251bV9t b2RwXzYxNDRfcDsKLStleHRlcm4gY29uc3QgQklHTlVNIF9iaWdudW1fbW9kcF84MTkyX3A7Ci0r ZXh0ZXJuIGNvbnN0IEJJR05VTSBfYmlnbnVtX21vZHBfMTUzNl9xOwotK2V4dGVybiBjb25zdCBC SUdOVU0gX2JpZ251bV9tb2RwXzIwNDhfcTsKLStleHRlcm4gY29uc3QgQklHTlVNIF9iaWdudW1f bW9kcF8zMDcyX3E7Ci0rZXh0ZXJuIGNvbnN0IEJJR05VTSBfYmlnbnVtX21vZHBfNDA5Nl9xOwot K2V4dGVybiBjb25zdCBCSUdOVU0gX2JpZ251bV9tb2RwXzYxNDRfcTsKLStleHRlcm4gY29uc3Qg QklHTlVNIF9iaWdudW1fbW9kcF84MTkyX3E7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9pbmNs dWRlL29wZW5zc2wvb2JqX21hYy5oLmZpcHMtZGggb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVu c3NsL29ial9tYWMuaAotLS0tIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9vYmpfbWFj LmguZmlwcy1kaAkyMDIxLTAzLTAzIDE0OjIzOjI3LjM5NjA5MjM1OCArMDEwMAotKysrIG9wZW5z c2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9vYmpfbWFjLmgJMjAyMS0wMy0wMyAxNDoyMzoyNy40 MDcwOTI0NTMgKzAxMDAKLUBAIC01MTE1LDYgKzUxMTUsMjQgQEAKLSAjZGVmaW5lIFNOX2ZmZGhl ODE5MiAgICAgICAgICAgICJmZmRoZTgxOTIiCi0gI2RlZmluZSBOSURfZmZkaGU4MTkyICAgICAg ICAgICAxMTMwCi0gCi0rI2RlZmluZSBTTl9tb2RwXzE1MzYgICAgICAgICAgICAibW9kcF8xNTM2 IgotKyNkZWZpbmUgTklEX21vZHBfMTUzNiAgICAgICAgICAgMTE5OQotKwotKyNkZWZpbmUgU05f bW9kcF8yMDQ4ICAgICAgICAgICAgIm1vZHBfMjA0OCIKLSsjZGVmaW5lIE5JRF9tb2RwXzIwNDgg ICAgICAgICAgIDEyMDAKLSsKLSsjZGVmaW5lIFNOX21vZHBfMzA3MiAgICAgICAgICAgICJtb2Rw XzMwNzIiCi0rI2RlZmluZSBOSURfbW9kcF8zMDcyICAgICAgICAgICAxMjAxCi0rCi0rI2RlZmlu ZSBTTl9tb2RwXzQwOTYgICAgICAgICAgICAibW9kcF80MDk2IgotKyNkZWZpbmUgTklEX21vZHBf NDA5NiAgICAgICAgICAgMTIwMgotKwotKyNkZWZpbmUgU05fbW9kcF82MTQ0ICAgICAgICAgICAg Im1vZHBfNjE0NCIKLSsjZGVmaW5lIE5JRF9tb2RwXzYxNDQgICAgICAgICAgIDEyMDMKLSsKLSsj ZGVmaW5lIFNOX21vZHBfODE5MiAgICAgICAgICAgICJtb2RwXzgxOTIiCi0rI2RlZmluZSBOSURf bW9kcF84MTkyICAgICAgICAgICAxMjA0Ci0rCi0gI2RlZmluZSBTTl9JU09fVUEgICAgICAgICAg ICAgICAiSVNPLVVBIgotICNkZWZpbmUgTklEX0lTT19VQSAgICAgICAgICAgICAgMTE1MAotICNk ZWZpbmUgT0JKX0lTT19VQSAgICAgICAgICAgICAgT0JKX21lbWJlcl9ib2R5LDgwNEwKLWRpZmYg LXVwIG9wZW5zc2wtMS4xLjFqL3NzbC9zM19saWIuYy5maXBzLWRoIG9wZW5zc2wtMS4xLjFqL3Nz bC9zM19saWIuYwotLS0tIG9wZW5zc2wtMS4xLjFqL3NzbC9zM19saWIuYy5maXBzLWRoCTIwMjEt MDMtMDMgMTQ6MjM6MjcuMzU0MDkxOTk3ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovc3NsL3Mz X2xpYi5jCTIwMjEtMDMtMDMgMTQ6MjM6MjcuNDA3MDkyNDUzICswMTAwCi1AQCAtNDg0OSwxMyAr NDg0OSw1MSBAQCBpbnQgc3NsX2Rlcml2ZShTU0wgKnMsIEVWUF9QS0VZICpwcml2a2V5Ci0gRVZQ X1BLRVkgKnNzbF9kaF90b19wa2V5KERIICpkaCkKLSB7Ci0gICAgIEVWUF9QS0VZICpyZXQ7Ci0r ICAgIERIICpkaHAgPSBOVUxMOwotKwotICAgICBpZiAoZGggPT0gTlVMTCkKLSAgICAgICAgIHJl dHVybiBOVUxMOwotKwotKyAgICBpZiAoRklQU19tb2RlKCkgJiYgREhfZ2V0X25pZChkaCkgPT0g TklEX3VuZGVmKSB7Ci0rICAgICAgICBpbnQgYml0cyA9IERIX2JpdHMoZGgpOwotKyAgICAgICAg QklHTlVNICpwLCAqZzsKLSsKLSsgICAgICAgIGRocCA9IERIX25ldygpOwotKyAgICAgICAgaWYg KGRocCA9PSBOVUxMKQotKyAgICAgICAgICAgIHJldHVybiBOVUxMOwotKyAgICAgICAgZyA9IEJO X25ldygpOwotKyAgICAgICAgaWYgKGcgPT0gTlVMTCB8fCAhQk5fc2V0X3dvcmQoZywgMikpIHsK LSsgICAgICAgICAgICBESF9mcmVlKGRocCk7Ci0rICAgICAgICAgICAgQk5fZnJlZShnKTsKLSsg ICAgICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAgICAgIH0KLSsKLSsgICAgICAgIGlmIChiaXRz ID49IDcwMDApCi0rICAgICAgICAgICAgcCA9IEJOX2dldF9yZmMzNTI2X3ByaW1lXzgxOTIoTlVM TCk7Ci0rICAgICAgICBlbHNlIGlmIChiaXRzID49IDUwMDApCi0rICAgICAgICAgICAgcCA9IEJO X2dldF9yZmMzNTI2X3ByaW1lXzYxNDQoTlVMTCk7Ci0rICAgICAgICBlbHNlIGlmIChiaXRzID49 IDM4MDApCi0rICAgICAgICAgICAgcCA9IEJOX2dldF9yZmMzNTI2X3ByaW1lXzQwOTYoTlVMTCk7 Ci0rICAgICAgICBlbHNlIGlmIChiaXRzID49IDI1MDApCi0rICAgICAgICAgICAgcCA9IEJOX2dl dF9yZmMzNTI2X3ByaW1lXzMwNzIoTlVMTCk7Ci0rICAgICAgICBlbHNlCi0rICAgICAgICAgICAg cCA9IEJOX2dldF9yZmMzNTI2X3ByaW1lXzIwNDgoTlVMTCk7Ci0rICAgICAgICBpZiAocCA9PSBO VUxMIHx8ICFESF9zZXQwX3BxZyhkaHAsIHAsIE5VTEwsIGcpKSB7Ci0rICAgICAgICAgICAgREhf ZnJlZShkaHApOwotKyAgICAgICAgICAgIEJOX2ZyZWUocCk7Ci0rICAgICAgICAgICAgQk5fZnJl ZShnKTsKLSsgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAgICAgIH0KLSsgICAgICAgIGRo ID0gZGhwOwotKyAgICB9Ci0rCi0gICAgIHJldCA9IEVWUF9QS0VZX25ldygpOwotICAgICBpZiAo RVZQX1BLRVlfc2V0MV9ESChyZXQsIGRoKSA8PSAwKSB7Ci0rICAgICAgICBESF9mcmVlKGRocCk7 Ci0gICAgICAgICBFVlBfUEtFWV9mcmVlKHJldCk7Ci0gICAgICAgICByZXR1cm4gTlVMTDsKLSAg ICAgfQotKyAgICBESF9mcmVlKGRocCk7Ci0gICAgIHJldHVybiByZXQ7Ci0gfQotICNlbmRpZgot ZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovc3NsL3QxX2xpYi5jLmZpcHMtZGggb3BlbnNzbC0xLjEu MWovc3NsL3QxX2xpYi5jCi0tLS0gb3BlbnNzbC0xLjEuMWovc3NsL3QxX2xpYi5jLmZpcHMtZGgJ MjAyMS0wMy0wMyAxNDoyMzoyNy40MDEwOTI0MDEgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9z c2wvdDFfbGliLmMJMjAyMS0wMy0wMyAxNDoyMzoyNy40MDcwOTI0NTMgKzAxMDAKLUBAIC0yNTQy LDcgKzI1NDIsNyBAQCBESCAqc3NsX2dldF9hdXRvX2RoKFNTTCAqcykKLSAgICAgICAgIHAgPSBC Tl9nZXRfcmZjMzUyNl9wcmltZV80MDk2KE5VTEwpOwotICAgICBlbHNlIGlmIChkaF9zZWNiaXRz ID49IDEyOCkKLSAgICAgICAgIHAgPSBCTl9nZXRfcmZjMzUyNl9wcmltZV8zMDcyKE5VTEwpOwot LSAgICBlbHNlIGlmIChkaF9zZWNiaXRzID49IDExMikKLSsgICAgZWxzZSBpZiAoZGhfc2VjYml0 cyA+PSAxMTIgfHwgRklQU19tb2RlKCkpCi0gICAgICAgICBwID0gQk5fZ2V0X3JmYzM1MjZfcHJp bWVfMjA0OChOVUxMKTsKLSAgICAgZWxzZQotICAgICAgICAgcCA9IEJOX2dldF9yZmMyNDA5X3By aW1lXzEwMjQoTlVMTCk7CgpkaWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1maXBzLWRyYmctc2Vs ZnRlc3QucGF0Y2ggYi9vcGVuc3NsLTEuMS4xLWZpcHMtZHJiZy1zZWxmdGVzdC5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjgwMGMwNi4uMDAwMDAwMAotLS0gYS9vcGVuc3Ns LTEuMS4xLWZpcHMtZHJiZy1zZWxmdGVzdC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDU4NyAr MCwwIEBACi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9maXBzX3Bvc3QuYy5k cmJnLXNlbGZ0ZXN0IG9wZW5zc2wtMS4xLjFnL2NyeXB0by9maXBzL2ZpcHNfcG9zdC5jCi0tLS0g b3BlbnNzbC0xLjEuMWcvY3J5cHRvL2ZpcHMvZmlwc19wb3N0LmMuZHJiZy1zZWxmdGVzdAkyMDIw LTA0LTIzIDEzOjMzOjEyLjUwMDYyNDE1MSArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2NyeXB0 by9maXBzL2ZpcHNfcG9zdC5jCTIwMjAtMDQtMjMgMTM6MzM6MTIuNjE4NjIxOTI1ICswMjAwCi1A QCAtNjcsMTIgKzY3LDE4IEBACi0gCi0gIyBpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSAjIGlu Y2x1ZGUgImNyeXB0by9maXBzLmgiCi0rIyBpbmNsdWRlICJjcnlwdG8vcmFuZC5oIgotICMgaW5j bHVkZSAiZmlwc19sb2NsLmgiCi0gCi0gLyogUnVuIGFsbCBzZWxmdGVzdHMgKi8KLSBpbnQgRklQ U19zZWxmdGVzdCh2b2lkKQotIHsKLSAgICAgaW50IHJ2ID0gMTsKLSsgICAgaWYgKCFyYW5kX2Ry Ymdfc2VsZnRlc3QoKSkgewotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19TRUxGVEVTVCwg RklQU19SX1RFU1RfRkFJTFVSRSk7Ci0rICAgICAgICBFUlJfYWRkX2Vycm9yX2RhdGEoMiwgIlR5 cGU9IiwgInJhbmRfZHJiZ19zZWxmdGVzdCIpOwotKyAgICAgICAgcnYgPSAwOwotKyAgICB9Ci0g ICAgIGlmICghRklQU19zZWxmdGVzdF9kcmJnKCkpCi0gICAgICAgICBydiA9IDA7Ci0gICAgIGlm ICghRklQU19zZWxmdGVzdF9zaGExKCkpCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8v cmFuZC9idWlsZC5pbmZvLmRyYmctc2VsZnRlc3Qgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3JhbmQv YnVpbGQuaW5mbwotLS0tIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9yYW5kL2J1aWxkLmluZm8uZHJi Zy1zZWxmdGVzdAkyMDIwLTA0LTIzIDEzOjMzOjEyLjYxOTYyMTkwNyArMDIwMAotKysrIG9wZW5z c2wtMS4xLjFnL2NyeXB0by9yYW5kL2J1aWxkLmluZm8JMjAyMC0wNC0yMyAxMzozNDoxMC44NTc1 MjM0OTcgKzAyMDAKLUBAIC0xLDYgKzEsNiBAQAotIExJQlM9Li4vLi4vbGliY3J5cHRvCi0gU09V UkNFWy4uLy4uL2xpYmNyeXB0b109XAotICAgICAgICAgcmFuZGZpbGUuYyByYW5kX2xpYi5jIHJh bmRfZXJyLmMgcmFuZF9jcm5nX3Rlc3QuYyByYW5kX2VnZC5jIFwKLS0gICAgICAgIHJhbmRfd2lu LmMgcmFuZF91bml4LmMgcmFuZF92bXMuYyBkcmJnX2xpYi5jIGRyYmdfY3RyLmMKLSsgICAgICAg IHJhbmRfd2luLmMgcmFuZF91bml4LmMgcmFuZF92bXMuYyBkcmJnX2xpYi5jIGRyYmdfY3RyLmMg ZHJiZ19zZWxmdGVzdC5jCi0gCi0gSU5DTFVERVtkcmJnX2N0ci5vXT0uLi9tb2RlcwotZGlmZiAt dXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3JhbmQvZHJiZ19zZWxmdGVzdC5jLmRyYmctc2VsZnRl c3Qgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3JhbmQvZHJiZ19zZWxmdGVzdC5jCi0tLS0gb3BlbnNz bC0xLjEuMWcvY3J5cHRvL3JhbmQvZHJiZ19zZWxmdGVzdC5jLmRyYmctc2VsZnRlc3QJMjAyMC0w NC0yMyAxMzozMzoxMi42MTk2MjE5MDcgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8v cmFuZC9kcmJnX3NlbGZ0ZXN0LmMJMjAyMC0wNC0yMyAxMzozMzoxMi42MTk2MjE5MDcgKzAyMDAK LUBAIC0wLDAgKzEsNTM3IEBACi0rLyoKLSsgKiBDb3B5cmlnaHQgMjAxNy0yMDE5IFRoZSBPcGVu U1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC4KLSsgKgotKyAqIExpY2Vu c2VkIHVuZGVyIHRoZSBPcGVuU1NMIGxpY2Vuc2UgKHRoZSAiTGljZW5zZSIpLiAgWW91IG1heSBu b3QgdXNlCi0rICogdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vu c2UuICBZb3UgY2FuIG9idGFpbiBhIGNvcHkKLSsgKiBpbiB0aGUgZmlsZSBMSUNFTlNFIGluIHRo ZSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9yIGF0Ci0rICogaHR0cHM6Ly93d3cub3BlbnNzbC5vcmcv c291cmNlL2xpY2Vuc2UuaHRtbAotKyAqLwotKwotKyNpbmNsdWRlIDxzdHJpbmcuaD4KLSsjaW5j bHVkZSA8c3RkZGVmLmg+Ci0rI2luY2x1ZGUgImludGVybmFsL25lbGVtLmgiCi0rI2luY2x1ZGUg PG9wZW5zc2wvY3J5cHRvLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZXJyLmg+Ci0rI2luY2x1ZGUg PG9wZW5zc2wvcmFuZF9kcmJnLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvb2JqX21hYy5oPgotKyNp bmNsdWRlICJpbnRlcm5hbC90aHJlYWRfb25jZS5oIgotKyNpbmNsdWRlICJjcnlwdG8vcmFuZC5o IgotKwotK3R5cGVkZWYgc3RydWN0IHRlc3RfY3R4X3N0IHsKLSsgICAgY29uc3QgdW5zaWduZWQg Y2hhciAqZW50cm9weTsKLSsgICAgc2l6ZV90IGVudHJvcHlsZW47Ci0rICAgIGludCBlbnRyb3B5 Y250OwotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpub25jZTsKLSsgICAgc2l6ZV90IG5vbmNl bGVuOwotKyAgICBpbnQgbm9uY2VjbnQ7Ci0rfSBURVNUX0NUWDsKLSsKLStzdGF0aWMgaW50IGFw cF9kYXRhX2luZGV4ID0gLTE7Ci0rc3RhdGljIENSWVBUT19PTkNFIGdldF9pbmRleF9vbmNlID0g Q1JZUFRPX09OQ0VfU1RBVElDX0lOSVQ7Ci0rREVGSU5FX1JVTl9PTkNFX1NUQVRJQyhkcmJnX2Fw cF9kYXRhX2luZGV4X2luaXQpCi0rewotKyAgICBhcHBfZGF0YV9pbmRleCA9IFJBTkRfRFJCR19n ZXRfZXhfbmV3X2luZGV4KDBMLCBOVUxMLCBOVUxMLCBOVUxMLCBOVUxMKTsKLSsKLSsgICAgcmV0 dXJuIDE7Ci0rfQotKwotK2VudW0gZHJiZ19rYXRfdHlwZSB7Ci0rICAgIE5PX1JFU0VFRCwKLSsg ICAgUFJfRkFMU0UsCi0rICAgIFBSX1RSVUUKLSt9OwotKwotK2VudW0gZHJiZ19kZiB7Ci0rICAg IFVTRV9ERiwKLSsgICAgTk9fREYsCi0rICAgIE5BCi0rfTsKLSsKLStzdHJ1Y3QgZHJiZ19rYXRf bm9fcmVzZWVkIHsKLSsgICAgc2l6ZV90IGNvdW50OwotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFy ICplbnRyb3B5aW47Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKm5vbmNlOwotKyAgICBjb25z dCB1bnNpZ25lZCBjaGFyICpwZXJzc3RyOwotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICphZGRp bjE7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmFkZGluMjsKLSsgICAgY29uc3QgdW5zaWdu ZWQgY2hhciAqcmV0Ynl0ZXM7Ci0rfTsKLSsKLStzdHJ1Y3QgZHJiZ19rYXRfcHJfZmFsc2Ugewot KyAgICBzaXplX3QgY291bnQ7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmVudHJvcHlpbjsK LSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqbm9uY2U7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNo YXIgKnBlcnNzdHI7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmVudHJvcHlpbnJlc2VlZDsK LSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWRkaW5yZXNlZWQ7Ci0rICAgIGNvbnN0IHVuc2ln bmVkIGNoYXIgKmFkZGluMTsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWRkaW4yOwotKyAg ICBjb25zdCB1bnNpZ25lZCBjaGFyICpyZXRieXRlczsKLSt9OwotKwotK3N0cnVjdCBkcmJnX2th dF9wcl90cnVlIHsKLSsgICAgc2l6ZV90IGNvdW50OwotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFy ICplbnRyb3B5aW47Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKm5vbmNlOwotKyAgICBjb25z dCB1bnNpZ25lZCBjaGFyICpwZXJzc3RyOwotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICplbnRy b3B5aW5wcjE7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmFkZGluMTsKLSsgICAgY29uc3Qg dW5zaWduZWQgY2hhciAqZW50cm9weWlucHIyOwotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICph ZGRpbjI7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnJldGJ5dGVzOwotK307Ci0rCi0rc3Ry dWN0IGRyYmdfa2F0IHsKLSsgICAgZW51bSBkcmJnX2thdF90eXBlIHR5cGU7Ci0rICAgIGVudW0g ZHJiZ19kZiBkZjsKLSsgICAgaW50IG5pZDsKLSsKLSsgICAgc2l6ZV90IGVudHJvcHlpbmxlbjsK LSsgICAgc2l6ZV90IG5vbmNlbGVuOwotKyAgICBzaXplX3QgcGVyc3N0cmxlbjsKLSsgICAgc2l6 ZV90IGFkZGlubGVuOwotKyAgICBzaXplX3QgcmV0Ynl0ZXNsZW47Ci0rCi0rICAgIGNvbnN0IHZv aWQgKnQ7Ci0rfTsKLSsKLSsvKgotKyAqIEV4Y2VycHQgZnJvbSB0ZXN0L2RyYmdfY2F2c19kYXRh LmMKLSsgKiBEUkJHIHRlc3QgdmVjdG9ycyBmcm9tOgotKyAqIGh0dHBzOi8vY3NyYy5uaXN0Lmdv di9wcm9qZWN0cy9jcnlwdG9ncmFwaGljLWFsZ29yaXRobS12YWxpZGF0aW9uLXByb2dyYW0vCi0r ICovCi0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIga2F0MTMwOF9lbnRyb3B5aW5bXSA9 IHsKLSsgICAgMHg3YywgMHg1ZCwgMHg5MCwgMHg3MCwgMHgzYiwgMHg4YSwgMHhjNywgMHgwZiwg MHgyMywgMHg3MywgMHgyNCwgMHg5YywKLSsgICAgMHhhNywgMHgxNSwgMHg0MSwgMHg3MSwgMHg3 YSwgMHgzMSwgMHhlYSwgMHgzMiwgMHhmYywgMHgyOCwgMHgwZCwgMHhkNywKLSsgICAgMHg1Yiwg MHgwOSwgMHgwMSwgMHg5OCwgMHgxYiwgMHhlMiwgMHhhNSwgMHg1MywgMHhkOSwgMHgwNSwgMHgz MiwgMHg5NywKLSsgICAgMHhlYywgMHhiZSwgMHg4NiwgMHhmZCwgMHgxYywgMHgxYywgMHg3MSwg MHg0YywgMHg1MiwgMHgyOSwgMHg5ZSwgMHg1MiwKLSt9OwotK3N0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIGthdDEzMDhfbm9uY2VbXSA9IHswfTsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh ciBrYXQxMzA4X3BlcnNzdHJbXSA9IHsKLSsgICAgMHhkYywgMHgwNywgMHgyZiwgMHg2OCwgMHhm YSwgMHg3NywgMHgwMywgMHgyMywgMHg0MiwgMHhiMCwgMHhmNSwgMHhhMiwKLSsgICAgMHhkOSwg MHhhZCwgMHhhMSwgMHhkMCwgMHhhZCwgMHhhMiwgMHgxNCwgMHhiNCwgMHhkMCwgMHg4ZSwgMHhm YiwgMHgzOSwKLSsgICAgMHhkZCwgMHhjMiwgMHhhYywgMHhmYiwgMHg5OCwgMHhkZiwgMHg3Ziwg MHhjZSwgMHg0YywgMHg3NSwgMHg1NiwgMHg0NSwKLSsgICAgMHhjZCwgMHg4NiwgMHg5MywgMHg3 NCwgMHg5MCwgMHg2ZSwgMHhmNiwgMHg5ZSwgMHg4NSwgMHg3ZSwgMHhmYiwgMHhjMywKLSt9Owot K3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGthdDEzMDhfYWRkaW4wW10gPSB7Ci0rICAgIDB4 NTIsIDB4MjUsIDB4YzQsIDB4MmYsIDB4MDMsIDB4Y2UsIDB4MjksIDB4NzEsIDB4YzUsIDB4MGIs IDB4YzMsIDB4NGUsCi0rICAgIDB4YWQsIDB4OGQsIDB4NmYsIDB4MTcsIDB4ODIsIDB4ZTEsIDB4 ZjMsIDB4ZmQsIDB4ZmQsIDB4OWIsIDB4OTQsIDB4OWEsCi0rICAgIDB4MWQsIDB4YWMsIDB4ZDAs IDB4ZDQsIDB4M2YsIDB4MmIsIDB4ZTMsIDB4YWIsIDB4N2MsIDB4M2QsIDB4M2UsIDB4NWEsCi0r ICAgIDB4NjgsIDB4YmIsIDB4YTQsIDB4NzQsIDB4NjgsIDB4MWEsIDB4YzYsIDB4MjcsIDB4ZmYs IDB4ZTAsIDB4YzAsIDB4NmMsCi0rfTsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBrYXQx MzA4X2FkZGluMVtdID0gewotKyAgICAweGRjLCAweDkxLCAweGQ3LCAweGI3LCAweGI5LCAweDk0 LCAweDc5LCAweDBmLCAweDA2LCAweGM0LCAweDcwLCAweDE5LAotKyAgICAweDMzLCAweDI1LCAw eDdjLCAweDk2LCAweDAxLCAweGEwLCAweDYyLCAweGIwLCAweDUwLCAweGU2LCAweGMwLCAweDNh LAotKyAgICAweDU2LCAweDhmLCAweGM1LCAweDUwLCAweDQ4LCAweGM2LCAweGY0LCAweDQ5LCAw eGU1LCAweDcwLCAweDE2LCAweDJlLAotKyAgICAweGFlLCAweGYyLCAweDk5LCAweGI0LCAweDJk LCAweDcwLCAweDE4LCAweDE2LCAweGNkLCAweGUwLCAweDI0LCAweGU0LAotK307Ci0rc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIga2F0MTMwOF9yZXRiaXRzW10gPSB7Ci0rICAgIDB4ZGUsIDB4 ZjgsIDB4OTEsIDB4MWIsIDB4ZjEsIDB4ZTEsIDB4YTksIDB4OTcsIDB4ZDgsIDB4NjEsIDB4ODQs IDB4ZTIsCi0rICAgIDB4ZGIsIDB4ODMsIDB4M2UsIDB4NjAsIDB4NDUsIDB4Y2QsIDB4YzgsIDB4 NjYsIDB4OTMsIDB4MjgsIDB4YzgsIDB4OTIsCi0rICAgIDB4YmMsIDB4MjUsIDB4YWUsIDB4ZTgs IDB4YjAsIDB4ZWQsIDB4ZWQsIDB4MTYsIDB4M2QsIDB4YTUsIDB4ZjksIDB4MGYsCi0rICAgIDB4 YjMsIDB4NzIsIDB4MDgsIDB4ODQsIDB4YWMsIDB4M2MsIDB4M2IsIDB4YWEsIDB4NWYsIDB4Zjks IDB4N2QsIDB4NjMsCi0rICAgIDB4M2UsIDB4ZGUsIDB4NTksIDB4MzcsIDB4MGUsIDB4NDAsIDB4 MTIsIDB4MmIsIDB4YmMsIDB4NmMsIDB4OTYsIDB4NTMsCi0rICAgIDB4MjYsIDB4MzIsIDB4ZDAs IDB4YjgsCi0rfTsKLStzdGF0aWMgY29uc3Qgc3RydWN0IGRyYmdfa2F0X25vX3Jlc2VlZCBrYXQx MzA4X3QgPSB7Ci0rICAgIDIsIGthdDEzMDhfZW50cm9weWluLCBrYXQxMzA4X25vbmNlLCBrYXQx MzA4X3BlcnNzdHIsCi0rICAgIGthdDEzMDhfYWRkaW4wLCBrYXQxMzA4X2FkZGluMSwga2F0MTMw OF9yZXRiaXRzCi0rfTsKLStzdGF0aWMgY29uc3Qgc3RydWN0IGRyYmdfa2F0IGthdDEzMDggPSB7 Ci0rICAgIE5PX1JFU0VFRCwgTk9fREYsIE5JRF9hZXNfMjU2X2N0ciwgNDgsIDAsIDQ4LCA0OCwg NjQsICZrYXQxMzA4X3QKLSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGthdDE0 NjVfZW50cm9weWluW10gPSB7Ci0rICAgIDB4YzksIDB4OTYsIDB4M2EsIDB4MTUsIDB4NTEsIDB4 NzYsIDB4NGYsIDB4ZTAsIDB4NDUsIDB4ODIsIDB4OGEsIDB4NjQsCi0rICAgIDB4ODcsIDB4YmUs IDB4YWEsIDB4YzAsCi0rfTsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBrYXQxNDY1X25v bmNlW10gPSB7Ci0rICAgIDB4MDgsIDB4Y2QsIDB4NjksIDB4MzksIDB4ZjgsIDB4NTgsIDB4OWEs IDB4ODUsCi0rfTsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBrYXQxNDY1X3BlcnNzdHJb XSA9IHswfTsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBrYXQxNDY1X2VudHJvcHlpbnJl c2VlZFtdID0gewotKyAgICAweDE2LCAweGNjLCAweDM1LCAweDE1LCAweGIxLCAweDE3LCAweGY1 LCAweDMzLCAweDgwLCAweDlhLCAweDgwLCAweGM1LAotKyAgICAweDFmLCAweDRiLCAweDdiLCAw eDUxLAotK307Ci0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIga2F0MTQ2NV9hZGRpbnJlc2Vl ZFtdID0gewotKyAgICAweGY1LCAweDNkLCAweGYxLCAweDJlLCAweGRiLCAweDI4LCAweDFjLCAw eDAwLCAweDdiLCAweGNiLCAweGI2LCAweDEyLAotKyAgICAweDYxLCAweDlmLCAweDI2LCAweDVm LAotK307Ci0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIga2F0MTQ2NV9hZGRpbjBbXSA9IHsK LSsgICAgMHhlMiwgMHg2NywgMHgwNiwgMHg2MiwgMHgwOSwgMHhhNywgMHhjZiwgMHhkNiwgMHg4 NCwgMHg4YywgMHgyMCwgMHhmNiwKLSsgICAgMHgxMCwgMHg1YSwgMHg3MywgMHg5YywKLSt9Owot K3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGthdDE0NjVfYWRkaW4xW10gPSB7Ci0rICAgIDB4 MjYsIDB4ZmEsIDB4NTAsIDB4ZTEsIDB4YjMsIDB4Y2IsIDB4NjUsIDB4ZWQsIDB4YmMsIDB4NmQs IDB4ZGEsIDB4MTgsCi0rICAgIDB4NDcsIDB4OTksIDB4MWYsIDB4ZWIsCi0rfTsKLStzdGF0aWMg Y29uc3QgdW5zaWduZWQgY2hhciBrYXQxNDY1X3JldGJpdHNbXSA9IHsKLSsgICAgMHhmOSwgMHg0 NywgMHhjNiwgMHhiMCwgMHg1OCwgMHhhOCwgMHg2NiwgMHg4YSwgMHhmNSwgMHgyYiwgMHgyYSwg MHg2ZCwKLSsgICAgMHg0ZSwgMHgyNCwgMHg2ZiwgMHg2NSwgMHhiZiwgMHg1MSwgMHgyMiwgMHhi ZiwgMHhlOCwgMHg4ZCwgMHg2YywgMHhlYiwKLSsgICAgMHhmOSwgMHg2OCwgMHg3ZiwgMHhlZCwg MHgzYiwgMHhkZCwgMHg2YiwgMHhkNSwgMHgyOCwgMHg0NywgMHg1NiwgMHg1MiwKLSsgICAgMHhk YSwgMHg1MCwgMHhmMCwgMHg5MCwgMHg3MywgMHg5NSwgMHgwNiwgMHg1OCwgMHhhZiwgMHgwOCwg MHg5OCwgMHg2ZSwKLSsgICAgMHgyNCwgMHgxOCwgMHhmZCwgMHgyZiwgMHg0OCwgMHg3MiwgMHg1 NywgMHhkNiwgMHg1OSwgMHhhYiwgMHhlOSwgMHg0MSwKLSsgICAgMHg1OCwgMHhkYiwgMHgyNywg MHhiYSwKLSt9OwotK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJiZ19rYXRfcHJfZmFsc2Uga2F0MTQ2 NV90ID0gewotKyAgICA5LCBrYXQxNDY1X2VudHJvcHlpbiwga2F0MTQ2NV9ub25jZSwga2F0MTQ2 NV9wZXJzc3RyLAotKyAgICBrYXQxNDY1X2VudHJvcHlpbnJlc2VlZCwga2F0MTQ2NV9hZGRpbnJl c2VlZCwga2F0MTQ2NV9hZGRpbjAsCi0rICAgIGthdDE0NjVfYWRkaW4xLCBrYXQxNDY1X3JldGJp dHMKLSt9OwotK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJiZ19rYXQga2F0MTQ2NSA9IHsKLSsgICAg UFJfRkFMU0UsIFVTRV9ERiwgTklEX2Flc18xMjhfY3RyLCAxNiwgOCwgMCwgMTYsIDY0LCAma2F0 MTQ2NV90Ci0rfTsKLSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBrYXQzMTQ2X2VudHJv cHlpbltdID0gewotKyAgICAweGQ3LCAweDA4LCAweDQyLCAweDgyLCAweGMyLCAweGQyLCAweGQx LCAweGRlLCAweDAxLCAweGI0LCAweDM2LCAweGIzLAotKyAgICAweDdmLCAweGJkLCAweGQzLCAw eGRkLCAweGIzLCAweGM0LCAweDMxLCAweDRmLCAweDhmLCAweGE3LCAweDEwLCAweGY0LAotK307 Ci0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIga2F0MzE0Nl9ub25jZVtdID0gewotKyAgICAw eDdiLCAweDllLCAweGNkLCAweDQ5LCAweDRmLCAweDQ2LCAweGEwLCAweDA4LCAweDMyLCAweGZm LCAweDJlLCAweGMzLAotKyAgICAweDUwLCAweDg2LCAweGNhLCAweGNhLAotK307Ci0rc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIga2F0MzE0Nl9wZXJzc3RyW10gPSB7MH07Ci0rc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIga2F0MzE0Nl9lbnRyb3B5aW5wcjFbXSA9IHsKLSsgICAgMHg2OCwg MHhkMCwgMHg3YiwgMHhhNCwgMHhlNywgMHgyMiwgMHgxOSwgMHhlNiwgMHhiNiwgMHg0NiwgMHg2 YSwgMHhkYSwKLSsgICAgMHg4ZSwgMHg2NywgMHhlYSwgMHg2MywgMHgzZiwgMHhhZiwgMHgyZiwg MHg2YywgMHg5ZCwgMHg1ZSwgMHg0OCwgMHgxNSwKLSt9OwotK3N0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIGthdDMxNDZfYWRkaW5wcjFbXSA9IHsKLSsgICAgMHg3MCwgMHgwZiwgMHg1NCwgMHhm NCwgMHg1MywgMHhkZSwgMHhjYSwgMHg2MSwgMHg1YywgMHg0OSwgMHg1MSwgMHhkMSwKLSsgICAg MHg0MSwgMHhjNCwgMHhmMSwgMHgyZiwgMHg2NSwgMHhmYiwgMHg3ZSwgMHhiYywgMHg5YiwgMHgx NCwgMHhiYSwgMHg5MCwKLSsgICAgMHgwNSwgMHgzMywgMHg3ZSwgMHg2NCwgMHhiNywgMHgyYiwg MHhhZiwgMHg5OSwKLSt9OwotK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGthdDMxNDZfZW50 cm9weWlucHIyW10gPSB7Ci0rICAgIDB4ZWIsIDB4NzcsIDB4YjAsIDB4ZTksIDB4MmQsIDB4MzEs IDB4YzgsIDB4NjYsIDB4YzUsIDB4YzQsIDB4YTcsIDB4ZjcsCi0rICAgIDB4NmMsIDB4YjIsIDB4 NzQsIDB4MzYsIDB4NGIsIDB4MjUsIDB4NzgsIDB4MDQsIDB4ZDgsIDB4ZDcsIDB4ZDIsIDB4MzQs Ci0rfTsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBrYXQzMTQ2X2FkZGlucHIyW10gPSB7 Ci0rICAgIDB4MDUsIDB4Y2QsIDB4MmEsIDB4OTcsIDB4NWEsIDB4NWQsIDB4ZmIsIDB4OTgsIDB4 YzEsIDB4ZjEsIDB4MDAsIDB4MGMsCi0rICAgIDB4ZWQsIDB4ZTYsIDB4MmEsIDB4YmEsIDB4ZjAs IDB4ODksIDB4MWYsIDB4NWEsIDB4NGYsIDB4ZDcsIDB4NDgsIDB4YjMsCi0rICAgIDB4MjQsIDB4 YzAsIDB4OGEsIDB4M2QsIDB4NjAsIDB4NTksIDB4NWQsIDB4YjYsCi0rfTsKLStzdGF0aWMgY29u c3QgdW5zaWduZWQgY2hhciBrYXQzMTQ2X3JldGJpdHNbXSA9IHsKLSsgICAgMHgyOSwgMHg5NCwg MHhhNCwgMHhhOCwgMHgxNywgMHgzZSwgMHg2MiwgMHgyZiwgMHg5NCwgMHhkZCwgMHg0MCwgMHgx ZiwKLSsgICAgMHhlMywgMHg3ZSwgMHg3NywgMHhkNCwgMHgzOCwgMHhiYywgMHgwZSwgMHg0OSwg MHg0NiwgMHhmNiwgMHgwZSwgMHgyOCwKLSsgICAgMHg5MSwgMHhjNiwgMHg5YywgMHhjNCwgMHhh NiwgMHhhMSwgMHhmOCwgMHg5YSwgMHg2NCwgMHg1ZSwgMHg5OSwgMHg3NiwKLSsgICAgMHhkMCwg MHgyZCwgMHhlZSwgMHhkZSwgMHhlMSwgMHgyYywgMHg5MywgMHgyOSwgMHg0YiwgMHgxMiwgMHhj ZiwgMHg4NywKLSsgICAgMHgwMywgMHg5OCwgMHhiOSwgMHg3NCwgMHg0MSwgMHhkYiwgMHgzYSwg MHg0OSwgMHg5ZiwgMHg5MiwgMHhkMCwgMHg0NSwKLSsgICAgMHhkNCwgMHgzMCwgMHg3MywgMHhi YiwKLSt9OwotK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJiZ19rYXRfcHJfdHJ1ZSBrYXQzMTQ2X3Qg PSB7Ci0rICAgIDEwLCBrYXQzMTQ2X2VudHJvcHlpbiwga2F0MzE0Nl9ub25jZSwga2F0MzE0Nl9w ZXJzc3RyLAotKyAgICBrYXQzMTQ2X2VudHJvcHlpbnByMSwga2F0MzE0Nl9hZGRpbnByMSwga2F0 MzE0Nl9lbnRyb3B5aW5wcjIsCi0rICAgIGthdDMxNDZfYWRkaW5wcjIsIGthdDMxNDZfcmV0Yml0 cwotK307Ci0rc3RhdGljIGNvbnN0IHN0cnVjdCBkcmJnX2thdCBrYXQzMTQ2ID0gewotKyAgICBQ Ul9UUlVFLCBVU0VfREYsIE5JRF9hZXNfMTkyX2N0ciwgMjQsIDE2LCAwLCAzMiwgNjQsICZrYXQz MTQ2X3QKLSt9OwotKwotK3N0YXRpYyBjb25zdCBzdHJ1Y3QgZHJiZ19rYXQgKmRyYmdfdGVzdFtd ID0geyAma2F0MTMwOCwgJmthdDE0NjUsICZrYXQzMTQ2IH07Ci0rCi0rc3RhdGljIGNvbnN0IHNp emVfdCBkcmJnX3Rlc3RfbmVsZW0gPSBPU1NMX05FTEVNKGRyYmdfdGVzdCk7Ci0rCi0rc3RhdGlj IHNpemVfdCBrYXRfZW50cm9weShSQU5EX0RSQkcgKmRyYmcsIHVuc2lnbmVkIGNoYXIgKipwb3V0 LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGVudHJvcHksIHNpemVfdCBtaW5fbGVu LCBzaXplX3QgbWF4X2xlbiwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBwcmVkaWN0 aW9uX3Jlc2lzdGFuY2UpCi0rewotKyAgICBURVNUX0NUWCAqdCA9IChURVNUX0NUWCAqKVJBTkRf RFJCR19nZXRfZXhfZGF0YShkcmJnLCBhcHBfZGF0YV9pbmRleCk7Ci0rCi0rICAgIHQtPmVudHJv cHljbnQrKzsKLSsgICAgKnBvdXQgPSAodW5zaWduZWQgY2hhciAqKXQtPmVudHJvcHk7Ci0rICAg IHJldHVybiB0LT5lbnRyb3B5bGVuOwotK30KLSsKLStzdGF0aWMgc2l6ZV90IGthdF9ub25jZShS QU5EX0RSQkcgKmRyYmcsIHVuc2lnbmVkIGNoYXIgKipwb3V0LAotKyAgICAgICAgICAgICAgICAg ICAgICAgIGludCBlbnRyb3B5LCBzaXplX3QgbWluX2xlbiwgc2l6ZV90IG1heF9sZW4pCi0rewot KyAgICBURVNUX0NUWCAqdCA9IChURVNUX0NUWCAqKVJBTkRfRFJCR19nZXRfZXhfZGF0YShkcmJn LCBhcHBfZGF0YV9pbmRleCk7Ci0rCi0rICAgIHQtPm5vbmNlY250Kys7Ci0rICAgICpwb3V0ID0g KHVuc2lnbmVkIGNoYXIgKil0LT5ub25jZTsKLSsgICAgcmV0dXJuIHQtPm5vbmNlbGVuOwotK30K LSsKLSsvKgotKyAqIERvIGEgc2luZ2xlIE5PX1JFU0VFRCBLQVQ6Ci0rICoKLSsgKiBJbnN0YW50 aWF0ZQotKyAqIEdlbmVyYXRlIFJhbmRvbSBCaXRzIChwcj1mYWxzZSkKLSsgKiBHZW5lcmF0ZSBS YW5kb20gQml0cyAocHI9ZmFsc2UpCi0rICogVW5pbnN0YW50aWF0ZQotKyAqCi0rICogUmV0dXJu IDAgb24gZmFpbHVyZS4KLSsgKi8KLStzdGF0aWMgaW50IHNpbmdsZV9rYXRfbm9fcmVzZWVkKGNv bnN0IHN0cnVjdCBkcmJnX2thdCAqdGQpCi0rewotKyAgICBzdHJ1Y3QgZHJiZ19rYXRfbm9fcmVz ZWVkICpkYXRhID0gKHN0cnVjdCBkcmJnX2thdF9ub19yZXNlZWQgKil0ZC0+dDsKLSsgICAgUkFO RF9EUkJHICpkcmJnID0gTlVMTDsKLSsgICAgdW5zaWduZWQgY2hhciAqYnVmZiA9IE5VTEw7Ci0r ICAgIHVuc2lnbmVkIGludCBmbGFncyA9IDA7Ci0rICAgIGludCBmYWlsdXJlcyA9IDA7Ci0rICAg IFRFU1RfQ1RYIHQ7Ci0rCi0rICAgIGlmICh0ZC0+ZGYgIT0gVVNFX0RGKQotKyAgICAgICAgZmxh Z3MgfD0gUkFORF9EUkJHX0ZMQUdfQ1RSX05PX0RGOwotKwotKyAgICBpZiAoKGRyYmcgPSBSQU5E X0RSQkdfbmV3KHRkLT5uaWQsIGZsYWdzLCBOVUxMKSkgPT0gTlVMTCkKLSsgICAgICAgIHJldHVy biAwOwotKwotKyAgICBpZiAoIVJBTkRfRFJCR19zZXRfY2FsbGJhY2tzKGRyYmcsIGthdF9lbnRy b3B5LCBOVUxMLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGthdF9ub25jZSwg TlVMTCkpIHsKLSsgICAgICAgIGZhaWx1cmVzKys7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAg fQotKyAgICBtZW1zZXQoJnQsIDAsIHNpemVvZih0KSk7Ci0rICAgIHQuZW50cm9weSA9IGRhdGEt PmVudHJvcHlpbjsKLSsgICAgdC5lbnRyb3B5bGVuID0gdGQtPmVudHJvcHlpbmxlbjsKLSsgICAg dC5ub25jZSA9IGRhdGEtPm5vbmNlOwotKyAgICB0Lm5vbmNlbGVuID0gdGQtPm5vbmNlbGVuOwot KyAgICBSQU5EX0RSQkdfc2V0X2V4X2RhdGEoZHJiZywgYXBwX2RhdGFfaW5kZXgsICZ0KTsKLSsK LSsgICAgYnVmZiA9IE9QRU5TU0xfbWFsbG9jKHRkLT5yZXRieXRlc2xlbik7Ci0rICAgIGlmIChi dWZmID09IE5VTEwpIHsKLSsgICAgICAgIGZhaWx1cmVzKys7Ci0rICAgICAgICBnb3RvIGVycjsK LSsgICAgfQotKwotKyAgICBpZiAoIVJBTkRfRFJCR19pbnN0YW50aWF0ZShkcmJnLCBkYXRhLT5w ZXJzc3RyLCB0ZC0+cGVyc3N0cmxlbikKLSsgICAgICAgIHx8ICFSQU5EX0RSQkdfZ2VuZXJhdGUo ZHJiZywgYnVmZiwgdGQtPnJldGJ5dGVzbGVuLCAwLAotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBkYXRhLT5hZGRpbjEsIHRkLT5hZGRpbmxlbikKLSsgICAgICAgIHx8ICFSQU5EX0RS QkdfZ2VuZXJhdGUoZHJiZywgYnVmZiwgdGQtPnJldGJ5dGVzbGVuLCAwLAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBkYXRhLT5hZGRpbjIsIHRkLT5hZGRpbmxlbikKLSsgICAgICAg IHx8IG1lbWNtcChkYXRhLT5yZXRieXRlcywgYnVmZiwKLSsgICAgICAgICAgICAgICAgICB0ZC0+ cmV0Ynl0ZXNsZW4pICE9IDApCi0rICAgICAgICBmYWlsdXJlcysrOwotKwotK2VycjoKLSsgICAg T1BFTlNTTF9mcmVlKGJ1ZmYpOwotKyAgICBSQU5EX0RSQkdfdW5pbnN0YW50aWF0ZShkcmJnKTsK LSsgICAgUkFORF9EUkJHX2ZyZWUoZHJiZyk7Ci0rICAgIHJldHVybiBmYWlsdXJlcyA9PSAwOwot K30KLSsKLSsvKi0KLSsgKiBEbyBhIHNpbmdsZSBQUl9GQUxTRSBLQVQ6Ci0rICoKLSsgKiBJbnN0 YW50aWF0ZQotKyAqIFJlc2VlZAotKyAqIEdlbmVyYXRlIFJhbmRvbSBCaXRzIChwcj1mYWxzZSkK LSsgKiBHZW5lcmF0ZSBSYW5kb20gQml0cyAocHI9ZmFsc2UpCi0rICogVW5pbnN0YW50aWF0ZQot KyAqCi0rICogUmV0dXJuIDAgb24gZmFpbHVyZS4KLSsgKi8KLStzdGF0aWMgaW50IHNpbmdsZV9r YXRfcHJfZmFsc2UoY29uc3Qgc3RydWN0IGRyYmdfa2F0ICp0ZCkKLSt7Ci0rICAgIHN0cnVjdCBk cmJnX2thdF9wcl9mYWxzZSAqZGF0YSA9IChzdHJ1Y3QgZHJiZ19rYXRfcHJfZmFsc2UgKil0ZC0+ dDsKLSsgICAgUkFORF9EUkJHICpkcmJnID0gTlVMTDsKLSsgICAgdW5zaWduZWQgY2hhciAqYnVm ZiA9IE5VTEw7Ci0rICAgIHVuc2lnbmVkIGludCBmbGFncyA9IDA7Ci0rICAgIGludCBmYWlsdXJl cyA9IDA7Ci0rICAgIFRFU1RfQ1RYIHQ7Ci0rCi0rICAgIGlmICh0ZC0+ZGYgIT0gVVNFX0RGKQot KyAgICAgICAgZmxhZ3MgfD0gUkFORF9EUkJHX0ZMQUdfQ1RSX05PX0RGOwotKwotKyAgICBpZiAo KGRyYmcgPSBSQU5EX0RSQkdfbmV3KHRkLT5uaWQsIGZsYWdzLCBOVUxMKSkgPT0gTlVMTCkKLSsg ICAgICAgIHJldHVybiAwOwotKwotKyAgICBpZiAoIVJBTkRfRFJCR19zZXRfY2FsbGJhY2tzKGRy YmcsIGthdF9lbnRyb3B5LCBOVUxMLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGthdF9ub25jZSwgTlVMTCkpIHsKLSsgICAgICAgIGZhaWx1cmVzKys7Ci0rICAgICAgICBnb3Rv IGVycjsKLSsgICAgfQotKyAgICBtZW1zZXQoJnQsIDAsIHNpemVvZih0KSk7Ci0rICAgIHQuZW50 cm9weSA9IGRhdGEtPmVudHJvcHlpbjsKLSsgICAgdC5lbnRyb3B5bGVuID0gdGQtPmVudHJvcHlp bmxlbjsKLSsgICAgdC5ub25jZSA9IGRhdGEtPm5vbmNlOwotKyAgICB0Lm5vbmNlbGVuID0gdGQt Pm5vbmNlbGVuOwotKyAgICBSQU5EX0RSQkdfc2V0X2V4X2RhdGEoZHJiZywgYXBwX2RhdGFfaW5k ZXgsICZ0KTsKLSsKLSsgICAgYnVmZiA9IE9QRU5TU0xfbWFsbG9jKHRkLT5yZXRieXRlc2xlbik7 Ci0rICAgIGlmIChidWZmID09IE5VTEwpIHsKLSsgICAgICAgIGZhaWx1cmVzKys7Ci0rICAgICAg ICBnb3RvIGVycjsKLSsgICAgfQotKwotKyAgICBpZiAoIVJBTkRfRFJCR19pbnN0YW50aWF0ZShk cmJnLCBkYXRhLT5wZXJzc3RyLCB0ZC0+cGVyc3N0cmxlbikpCi0rICAgICAgICBmYWlsdXJlcysr OwotKwotKyAgICB0LmVudHJvcHkgPSBkYXRhLT5lbnRyb3B5aW5yZXNlZWQ7Ci0rICAgIHQuZW50 cm9weWxlbiA9IHRkLT5lbnRyb3B5aW5sZW47Ci0rCi0rICAgIGlmICghUkFORF9EUkJHX3Jlc2Vl ZChkcmJnLCBkYXRhLT5hZGRpbnJlc2VlZCwgdGQtPmFkZGlubGVuLCAwKQotKyAgICAgICAgfHwg IVJBTkRfRFJCR19nZW5lcmF0ZShkcmJnLCBidWZmLCB0ZC0+cmV0Ynl0ZXNsZW4sIDAsCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmFkZGluMSwgdGQtPmFkZGlubGVuKQot KyAgICAgICAgfHwgIVJBTkRfRFJCR19nZW5lcmF0ZShkcmJnLCBidWZmLCB0ZC0+cmV0Ynl0ZXNs ZW4sIDAsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtPmFkZGluMiwgdGQt PmFkZGlubGVuKQotKyAgICAgICAgfHwgbWVtY21wKGRhdGEtPnJldGJ5dGVzLCBidWZmLAotKyAg ICAgICAgICAgICAgICAgIHRkLT5yZXRieXRlc2xlbikgIT0gMCkKLSsgICAgICAgIGZhaWx1cmVz Kys7Ci0rCi0rZXJyOgotKyAgICBPUEVOU1NMX2ZyZWUoYnVmZik7Ci0rICAgIFJBTkRfRFJCR191 bmluc3RhbnRpYXRlKGRyYmcpOwotKyAgICBSQU5EX0RSQkdfZnJlZShkcmJnKTsKLSsgICAgcmV0 dXJuIGZhaWx1cmVzID09IDA7Ci0rfQotKwotKy8qLQotKyAqIERvIGEgc2luZ2xlIFBSX1RSVUUg S0FUOgotKyAqCi0rICogSW5zdGFudGlhdGUKLSsgKiBHZW5lcmF0ZSBSYW5kb20gQml0cyAocHI9 dHJ1ZSkKLSsgKiBHZW5lcmF0ZSBSYW5kb20gQml0cyAocHI9dHJ1ZSkKLSsgKiBVbmluc3RhbnRp YXRlCi0rICoKLSsgKiBSZXR1cm4gMCBvbiBmYWlsdXJlLgotKyAqLwotK3N0YXRpYyBpbnQgc2lu Z2xlX2thdF9wcl90cnVlKGNvbnN0IHN0cnVjdCBkcmJnX2thdCAqdGQpCi0rewotKyAgICBzdHJ1 Y3QgZHJiZ19rYXRfcHJfdHJ1ZSAqZGF0YSA9IChzdHJ1Y3QgZHJiZ19rYXRfcHJfdHJ1ZSAqKXRk LT50OwotKyAgICBSQU5EX0RSQkcgKmRyYmcgPSBOVUxMOwotKyAgICB1bnNpZ25lZCBjaGFyICpi dWZmID0gTlVMTDsKLSsgICAgdW5zaWduZWQgaW50IGZsYWdzID0gMDsKLSsgICAgaW50IGZhaWx1 cmVzID0gMDsKLSsgICAgVEVTVF9DVFggdDsKLSsKLSsgICAgaWYgKHRkLT5kZiAhPSBVU0VfREYp Ci0rICAgICAgICBmbGFncyB8PSBSQU5EX0RSQkdfRkxBR19DVFJfTk9fREY7Ci0rCi0rICAgIGlm ICgoZHJiZyA9IFJBTkRfRFJCR19uZXcodGQtPm5pZCwgZmxhZ3MsIE5VTEwpKSA9PSBOVUxMKQot KyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIGlmICghUkFORF9EUkJHX3NldF9jYWxsYmFja3Mo ZHJiZywga2F0X2VudHJvcHksIE5VTEwsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAga2F0X25vbmNlLCBOVUxMKSkgewotKyAgICAgICAgZmFpbHVyZXMrKzsKLSsgICAgICAgIGdv dG8gZXJyOwotKyAgICB9Ci0rICAgIG1lbXNldCgmdCwgMCwgc2l6ZW9mKHQpKTsKLSsgICAgdC5u b25jZSA9IGRhdGEtPm5vbmNlOwotKyAgICB0Lm5vbmNlbGVuID0gdGQtPm5vbmNlbGVuOwotKyAg ICB0LmVudHJvcHkgPSBkYXRhLT5lbnRyb3B5aW47Ci0rICAgIHQuZW50cm9weWxlbiA9IHRkLT5l bnRyb3B5aW5sZW47Ci0rICAgIFJBTkRfRFJCR19zZXRfZXhfZGF0YShkcmJnLCBhcHBfZGF0YV9p bmRleCwgJnQpOwotKwotKyAgICBidWZmID0gT1BFTlNTTF9tYWxsb2ModGQtPnJldGJ5dGVzbGVu KTsKLSsgICAgaWYgKGJ1ZmYgPT0gTlVMTCkgewotKyAgICAgICAgZmFpbHVyZXMrKzsKLSsgICAg ICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIGlmICghUkFORF9EUkJHX2luc3RhbnRpYXRl KGRyYmcsIGRhdGEtPnBlcnNzdHIsIHRkLT5wZXJzc3RybGVuKSkKLSsgICAgICAgIGZhaWx1cmVz Kys7Ci0rCi0rICAgIHQuZW50cm9weSA9IGRhdGEtPmVudHJvcHlpbnByMTsKLSsgICAgdC5lbnRy b3B5bGVuID0gdGQtPmVudHJvcHlpbmxlbjsKLSsKLSsgICAgaWYgKCFSQU5EX0RSQkdfZ2VuZXJh dGUoZHJiZywgYnVmZiwgdGQtPnJldGJ5dGVzbGVuLCAxLAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICBkYXRhLT5hZGRpbjEsIHRkLT5hZGRpbmxlbikpCi0rICAgICAgICBmYWlsdXJlcysr OwotKwotKyAgICB0LmVudHJvcHkgPSBkYXRhLT5lbnRyb3B5aW5wcjI7Ci0rICAgIHQuZW50cm9w eWxlbiA9IHRkLT5lbnRyb3B5aW5sZW47Ci0rCi0rICAgIGlmICghUkFORF9EUkJHX2dlbmVyYXRl KGRyYmcsIGJ1ZmYsIHRkLT5yZXRieXRlc2xlbiwgMSwKLSsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZGF0YS0+YWRkaW4yLCB0ZC0+YWRkaW5sZW4pCi0rICAgICAgICB8fCBtZW1jbXAoZGF0 YS0+cmV0Ynl0ZXMsIGJ1ZmYsCi0rICAgICAgICAgICAgICAgICAgdGQtPnJldGJ5dGVzbGVuKSAh PSAwKQotKyAgICAgICAgZmFpbHVyZXMrKzsKLSsKLStlcnI6Ci0rICAgIE9QRU5TU0xfZnJlZShi dWZmKTsKLSsgICAgUkFORF9EUkJHX3VuaW5zdGFudGlhdGUoZHJiZyk7Ci0rICAgIFJBTkRfRFJC R19mcmVlKGRyYmcpOwotKyAgICByZXR1cm4gZmFpbHVyZXMgPT0gMDsKLSt9Ci0rCi0rc3RhdGlj IGludCB0ZXN0X2thdHMoaW50IGkpCi0rewotKyAgICBjb25zdCBzdHJ1Y3QgZHJiZ19rYXQgKnRk ID0gZHJiZ190ZXN0W2ldOwotKyAgICBpbnQgcnYgPSAwOwotKwotKyAgICBzd2l0Y2ggKHRkLT50 eXBlKSB7Ci0rICAgIGNhc2UgTk9fUkVTRUVEOgotKyAgICAgICAgaWYgKCFzaW5nbGVfa2F0X25v X3Jlc2VlZCh0ZCkpCi0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICBicmVhazsKLSsg ICAgY2FzZSBQUl9GQUxTRToKLSsgICAgICAgIGlmICghc2luZ2xlX2thdF9wcl9mYWxzZSh0ZCkp Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICBicmVhazsKLSsgICAgY2FzZSBQUl9U UlVFOgotKyAgICAgICAgaWYgKCFzaW5nbGVfa2F0X3ByX3RydWUodGQpKQotKyAgICAgICAgICAg IGdvdG8gZXJyOwotKyAgICAgICAgYnJlYWs7Ci0rICAgIGRlZmF1bHQ6CS8qIGNhbnQgaGFwcGVu ICovCi0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBydiA9IDE7Ci0rZXJyOgotKyAg ICByZXR1cm4gcnY7Ci0rfQotKwotKy8qLQotKyAqIERvIG9uZSBleHBlY3RlZC1lcnJvciB0ZXN0 OgotKyAqCi0rICogSW5zdGFudGlhdGUgd2l0aCBubyBlbnRyb3B5IHN1cHBsaWVkCi0rICoKLSsg KiBSZXR1cm4gMCBvbiBmYWlsdXJlLgotKyAqLwotK3N0YXRpYyBpbnQgdGVzdF9kcmJnX3Nhbml0 eShjb25zdCBzdHJ1Y3QgZHJiZ19rYXQgKnRkKQotK3sKLSsgICAgc3RydWN0IGRyYmdfa2F0X3By X2ZhbHNlICpkYXRhID0gKHN0cnVjdCBkcmJnX2thdF9wcl9mYWxzZSAqKXRkLT50OwotKyAgICBS QU5EX0RSQkcgKmRyYmcgPSBOVUxMOwotKyAgICB1bnNpZ25lZCBpbnQgZmxhZ3MgPSAwOwotKyAg ICBpbnQgZmFpbHVyZXMgPSAwOwotKyAgICBURVNUX0NUWCB0OwotKwotKyAgICBpZiAodGQtPmRm ICE9IFVTRV9ERikKLSsgICAgICAgIGZsYWdzIHw9IFJBTkRfRFJCR19GTEFHX0NUUl9OT19ERjsK LSsKLSsgICAgaWYgKChkcmJnID0gUkFORF9EUkJHX25ldyh0ZC0+bmlkLCBmbGFncywgTlVMTCkp ID09IE5VTEwpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgaWYgKCFSQU5EX0RSQkdfc2V0 X2NhbGxiYWNrcyhkcmJnLCBrYXRfZW50cm9weSwgTlVMTCwKLSsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBrYXRfbm9uY2UsIE5VTEwpKSB7Ci0rICAgICAgICBmYWlsdXJlcysrOwot KyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgbWVtc2V0KCZ0LCAwLCBzaXplb2YodCkp OwotKyAgICB0LmVudHJvcHkgPSBkYXRhLT5lbnRyb3B5aW47Ci0rICAgIHQuZW50cm9weWxlbiA9 IDA7ICAgICAvKiBObyBlbnRyb3B5ICovCi0rICAgIHQubm9uY2UgPSBkYXRhLT5ub25jZTsKLSsg ICAgdC5ub25jZWxlbiA9IHRkLT5ub25jZWxlbjsKLSsgICAgUkFORF9EUkJHX3NldF9leF9kYXRh KGRyYmcsIGFwcF9kYXRhX2luZGV4LCAmdCk7Ci0rCi0rICAgIEVSUl9zZXRfbWFyaygpOwotKyAg ICAvKiBUaGlzIG11c3QgZmFpbC4gKi8KLSsgICAgaWYgKFJBTkRfRFJCR19pbnN0YW50aWF0ZShk cmJnLCBkYXRhLT5wZXJzc3RyLCB0ZC0+cGVyc3N0cmxlbikpCi0rICAgICAgICBmYWlsdXJlcysr OwotKyAgICBSQU5EX0RSQkdfdW5pbnN0YW50aWF0ZShkcmJnKTsKLSsgICAgRVJSX3BvcF90b19t YXJrKCk7Ci0rCi0rZXJyOgotKyAgICBSQU5EX0RSQkdfZnJlZShkcmJnKTsKLSsgICAgcmV0dXJu IGZhaWx1cmVzID09IDA7Ci0rfQotKwotKwotK2ludCByYW5kX2RyYmdfc2VsZnRlc3Qodm9pZCkK LSt7Ci0rICAgIGludCBpOwotKwotKyAgICBpZiAoIVJVTl9PTkNFKCZnZXRfaW5kZXhfb25jZSwg ZHJiZ19hcHBfZGF0YV9pbmRleF9pbml0KSkKLSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICBm b3IgKGkgPSAwOyBpIDwgZHJiZ190ZXN0X25lbGVtOyBpKyspIHsKLSsgICAgICAgIGlmICh0ZXN0 X2thdHMoaSkgPD0gMCkKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKwotKyAgICBp ZiAodGVzdF9kcmJnX3Nhbml0eSgma2F0MTQ2NSkgPD0gMCkKLSsgICAgICAgIHJldHVybiAwOwot KwotKyAgICByZXR1cm4gMTsKLSt9Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9pbmNsdWRlL2Ny eXB0by9yYW5kLmguZHJiZy1zZWxmdGVzdCBvcGVuc3NsLTEuMS4xZy9pbmNsdWRlL2NyeXB0by9y YW5kLmgKLS0tLSBvcGVuc3NsLTEuMS4xZy9pbmNsdWRlL2NyeXB0by9yYW5kLmguZHJiZy1zZWxm dGVzdAkyMDIwLTA0LTIzIDEzOjMzOjEyLjU4NzYyMjUxMCArMDIwMAotKysrIG9wZW5zc2wtMS4x LjFnL2luY2x1ZGUvY3J5cHRvL3JhbmQuaAkyMDIwLTA0LTIzIDEzOjMzOjEyLjYxOTYyMTkwNyAr MDIwMAotQEAgLTE0MCw0ICsxNDAsOSBAQCB2b2lkIHJhbmRfcG9vbF9jbGVhbnVwKHZvaWQpOwot ICAqLwotIHZvaWQgcmFuZF9wb29sX2tlZXBfcmFuZG9tX2RldmljZXNfb3BlbihpbnQga2VlcCk7 Ci0gCi0rLyoKLSsgKiBQZXJmb3JtIHRoZSBEUkJHIEtBVCBzZWxmdGVzdHMKLSsgKi8KLStpbnQg cmFuZF9kcmJnX3NlbGZ0ZXN0KHZvaWQpOwotKwotICNlbmRpZgoKZGlmZiAtLWdpdCBhL29wZW5z c2wtMS4xLjEtZmlwcy1wb3N0LXJhbmQucGF0Y2ggYi9vcGVuc3NsLTEuMS4xLWZpcHMtcG9zdC1y YW5kLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMjdkYzU1Li4wMDAwMDAw Ci0tLSBhL29wZW5zc2wtMS4xLjEtZmlwcy1wb3N0LXJhbmQucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSwxODkgKzAsMCBAQAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWkvY3J5cHRvL2ZpcHMvZmlw cy5jLmZpcHMtcG9zdC1yYW5kIG9wZW5zc2wtMS4xLjFpL2NyeXB0by9maXBzL2ZpcHMuYwotLS0t IG9wZW5zc2wtMS4xLjFpL2NyeXB0by9maXBzL2ZpcHMuYy5maXBzLXBvc3QtcmFuZAkyMDIwLTEy LTA5IDEwOjI2OjQxLjYzNDEwNjMyOCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFpL2NyeXB0by9m aXBzL2ZpcHMuYwkyMDIwLTEyLTA5IDEwOjI2OjQxLjY1MjEwNjQ3NSArMDEwMAotQEAgLTY4LDYg KzY4LDcgQEAKLSAKLSAjIGluY2x1ZGUgPG9wZW5zc2wvZmlwcy5oPgotICMgaW5jbHVkZSAiaW50 ZXJuYWwvdGhyZWFkX29uY2UuaCIKLSsjIGluY2x1ZGUgImNyeXB0by9yYW5kLmgiCi0gCi0gIyBp Zm5kZWYgUEFUSF9NQVgKLSAjICBkZWZpbmUgUEFUSF9NQVggMTAyNAotQEAgLTc2LDYgKzc3LDcg QEAKLSBzdGF0aWMgaW50IGZpcHNfc2VsZnRlc3RfZmFpbCA9IDA7Ci0gc3RhdGljIGludCBmaXBz X21vZGUgPSAwOwotIHN0YXRpYyBpbnQgZmlwc19zdGFydGVkID0gMDsKLStzdGF0aWMgaW50IGZp cHNfcG9zdCA9IDA7Ci0gCi0gc3RhdGljIGludCBmaXBzX2lzX293bmluZ190aHJlYWQodm9pZCk7 Ci0gc3RhdGljIGludCBmaXBzX3NldF9vd25pbmdfdGhyZWFkKHZvaWQpOwotQEAgLTE1OCw2ICsx NjAsMTEgQEAgdm9pZCBmaXBzX3NldF9zZWxmdGVzdF9mYWlsKHZvaWQpCi0gICAgIGZpcHNfc2Vs ZnRlc3RfZmFpbCA9IDE7Ci0gfQotIAotK2ludCBmaXBzX2luX3Bvc3Qodm9pZCkKLSt7Ci0rICAg IHJldHVybiBmaXBzX3Bvc3Q7Ci0rfQotKwotIC8qIHdlIGltcGxlbWVudCB3aGF0IGxpYmZpcHNj aGVjayBkb2VzIG91cnNlbHZlcyAqLwotIAotIHN0YXRpYyBpbnQKLUBAIC00NDUsNiArNDUyLDgg QEAgaW50IEZJUFNfbW9kdWxlX21vZGVfc2V0KGludCBvbm9mZikKLSAgICAgICAgIH0KLSAjIGVu ZGlmCi0gCi0rICAgICAgICBmaXBzX3Bvc3QgPSAxOwotKwotICAgICAgICAgaWYgKCFGSVBTX3Nl bGZ0ZXN0KCkpIHsKLSAgICAgICAgICAgICBmaXBzX3NlbGZ0ZXN0X2ZhaWwgPSAxOwotICAgICAg ICAgICAgIHJldCA9IDA7Ci1AQCAtNDU5LDcgKzQ2OCwxMiBAQCBpbnQgRklQU19tb2R1bGVfbW9k ZV9zZXQoaW50IG9ub2ZmKQotICAgICAgICAgICAgIGdvdG8gZW5kOwotICAgICAgICAgfQotIAot KyAgICAgICAgZmlwc19wb3N0ID0gMDsKLSsKLSAgICAgICAgIGZpcHNfc2V0X21vZGUob25vZmYp OwotKyAgICAgICAgLyogZm9yY2UgUk5HIHJlc2VlZCB3aXRoIGVudHJvcHkgZnJvbSBnZXRyYW5k b20oKSBvbiBuZXh0IGNhbGwgKi8KLSsgICAgICAgIHJhbmRfZm9yY2VfcmVzZWVkKCk7Ci0rCi0g ICAgICAgICByZXQgPSAxOwotICAgICAgICAgZ290byBlbmQ7Ci0gICAgIH0KLWRpZmYgLXVwIG9w ZW5zc2wtMS4xLjFpL2NyeXB0by9yYW5kL2RyYmdfbGliLmMuZmlwcy1wb3N0LXJhbmQgb3BlbnNz bC0xLjEuMWkvY3J5cHRvL3JhbmQvZHJiZ19saWIuYwotLS0tIG9wZW5zc2wtMS4xLjFpL2NyeXB0 by9yYW5kL2RyYmdfbGliLmMuZmlwcy1wb3N0LXJhbmQJMjAyMC0xMi0wOCAxNDoyMDo1OS4wMDAw MDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xaS9jcnlwdG8vcmFuZC9kcmJnX2xpYi5jCTIw MjAtMTItMDkgMTA6MjY6NDEuNjUyMTA2NDc1ICswMTAwCi1AQCAtMTAwNSw2ICsxMDA1LDIwIEBA IHNpemVfdCByYW5kX2RyYmdfc2VlZGxlbihSQU5EX0RSQkcgKmRyYmcKLSAgICAgcmV0dXJuIG1p bl9lbnRyb3B5ID4gbWluX2VudHJvcHlsZW4gPyBtaW5fZW50cm9weSA6IG1pbl9lbnRyb3B5bGVu OwotIH0KLSAKLSt2b2lkIHJhbmRfZm9yY2VfcmVzZWVkKHZvaWQpCi0rewotKyAgICBSQU5EX0RS QkcgKmRyYmc7Ci0rCi0rICAgIGRyYmcgPSBSQU5EX0RSQkdfZ2V0MF9tYXN0ZXIoKTsKLSsgICAg ZHJiZy0+Zm9ya19pZCA9IDA7Ci0rCi0rICAgIGRyYmcgPSBSQU5EX0RSQkdfZ2V0MF9wcml2YXRl KCk7Ci0rICAgIGRyYmctPmZvcmtfaWQgPSAwOwotKwotKyAgICBkcmJnID0gUkFORF9EUkJHX2dl dDBfcHVibGljKCk7Ci0rICAgIGRyYmctPmZvcmtfaWQgPSAwOwotK30KLSsKLSAvKiBJbXBsZW1l bnRzIHRoZSBkZWZhdWx0IE9wZW5TU0wgUkFORF9hZGQoKSBtZXRob2QgKi8KLSBzdGF0aWMgaW50 IGRyYmdfYWRkKGNvbnN0IHZvaWQgKmJ1ZiwgaW50IG51bSwgZG91YmxlIHJhbmRvbW5lc3MpCi0g ewotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWkvY3J5cHRvL3JhbmQvcmFuZF91bml4LmMuZmlwcy1w b3N0LXJhbmQgb3BlbnNzbC0xLjEuMWkvY3J5cHRvL3JhbmQvcmFuZF91bml4LmMKLS0tLSBvcGVu c3NsLTEuMS4xaS9jcnlwdG8vcmFuZC9yYW5kX3VuaXguYy5maXBzLXBvc3QtcmFuZAkyMDIwLTEy LTA4IDE0OjIwOjU5LjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFpL2NyeXB0by9y YW5kL3JhbmRfdW5peC5jCTIwMjAtMTItMDkgMTA6MzY6NTkuNTMxMjIxOTAzICswMTAwCi1AQCAt MTcsMTAgKzE3LDEyIEBACi0gI2luY2x1ZGUgPG9wZW5zc2wvY3J5cHRvLmg+Ci0gI2luY2x1ZGUg InJhbmRfbG9jYWwuaCIKLSAjaW5jbHVkZSAiY3J5cHRvL3JhbmQuaCIKLSsjaW5jbHVkZSAiY3J5 cHRvL2ZpcHMuaCIKLSAjaW5jbHVkZSA8c3RkaW8uaD4KLSAjaW5jbHVkZSAiaW50ZXJuYWwvZHNv LmgiCi0gI2lmZGVmIF9fbGludXgKLSAjIGluY2x1ZGUgPHN5cy9zeXNjYWxsLmg+Ci0rIyBpbmNs dWRlIDxzeXMvcmFuZG9tLmg+Ci0gIyBpZmRlZiBERVZSQU5ET01fV0FJVAotICMgIGluY2x1ZGUg PHN5cy9zaG0uaD4KLSAjICBpbmNsdWRlIDxzeXMvdXRzbmFtZS5oPgotQEAgLTM0NCw3ICszNDYs NyBAQCBzdGF0aWMgc3NpemVfdCBzeXNjdGxfcmFuZG9tKGNoYXIgKmJ1ZiwKLSAgKiBzeXNjYWxs X3JhbmRvbSgpOiBUcnkgdG8gZ2V0IHJhbmRvbSBkYXRhIHVzaW5nIGEgc3lzdGVtIGNhbGwKLSAg KiByZXR1cm5zIHRoZSBudW1iZXIgb2YgYnl0ZXMgcmV0dXJuZWQgaW4gYnVmLCBvciA8IDAgb24g ZXJyb3IuCi0gICovCi0tc3RhdGljIHNzaXplX3Qgc3lzY2FsbF9yYW5kb20odm9pZCAqYnVmLCBz aXplX3QgYnVmbGVuKQotK3N0YXRpYyBzc2l6ZV90IHN5c2NhbGxfcmFuZG9tKHZvaWQgKmJ1Ziwg c2l6ZV90IGJ1ZmxlbiwgaW50IG5vbmJsb2NrKQotIHsKLSAgICAgLyoKLSAgICAgICogTm90ZTog J2J1ZmxlbicgZXF1YWxzIHRoZSBzaXplIG9mIHRoZSBidWZmZXIgd2hpY2ggaXMgdXNlZCBieSB0 aGUKLUBAIC0zNjksNiArMzcxLDcgQEAgc3RhdGljIHNzaXplX3Qgc3lzY2FsbF9yYW5kb20odm9p ZCAqYnVmLAotICAgICAgKiBOb3RlOiBTb21ldGltZXMgZ2V0ZW50cm9weSgpIGNhbiBiZSBwcm92 aWRlZCBidXQgbm90IGltcGxlbWVudGVkCi0gICAgICAqIGludGVybmFsbHkuIFNvIHdlIG5lZWQg dG8gY2hlY2sgZXJybm8gZm9yIEVOT1NZUwotICAgICAgKi8KLSsjICBpZiAwCi0gIyAgaWYgZGVm aW5lZChfX0dOVUNfXykgJiYgX19HTlVDX18+PTIgJiYgZGVmaW5lZChfX0VMRl9fKSAmJiAhZGVm aW5lZChfX2hwdXgpCi0gICAgIGV4dGVybiBpbnQgZ2V0ZW50cm9weSh2b2lkICpidWZmZXIsIHNp emVfdCBsZW5ndGgpIF9fYXR0cmlidXRlX18oKHdlYWspKTsKLSAKLUBAIC0zOTQsMTAgKzM5Nywx MCBAQCBzdGF0aWMgc3NpemVfdCBzeXNjYWxsX3JhbmRvbSh2b2lkICpidWYsCi0gICAgIGlmIChw X2dldGVudHJvcHkucCAhPSBOVUxMKQotICAgICAgICAgcmV0dXJuIHBfZ2V0ZW50cm9weS5mKGJ1 ZiwgYnVmbGVuKSA9PSAwID8gKHNzaXplX3QpYnVmbGVuIDogLTE7Ci0gIyAgZW5kaWYKLS0KLSsj ICBlbmRpZgotICAgICAvKiBMaW51eCBzdXBwb3J0cyB0aGlzIHNpbmNlIHZlcnNpb24gMy4xNyAq LwotLSMgIGlmIGRlZmluZWQoX19saW51eCkgJiYgZGVmaW5lZChfX05SX2dldHJhbmRvbSkKLS0g ICAgcmV0dXJuIHN5c2NhbGwoX19OUl9nZXRyYW5kb20sIGJ1ZiwgYnVmbGVuLCAwKTsKLSsjICBp ZiBkZWZpbmVkKF9fbGludXgpICYmIGRlZmluZWQoU1lTX2dldHJhbmRvbSkKLSsgICAgcmV0dXJu IHN5c2NhbGwoU1lTX2dldHJhbmRvbSwgYnVmLCBidWZsZW4sIG5vbmJsb2NrP0dSTkRfTk9OQkxP Q0s6MCk7Ci0gIyAgZWxpZiAoZGVmaW5lZChfX0ZyZWVCU0RfXykgfHwgZGVmaW5lZChfX05ldEJT RF9fKSkgJiYgZGVmaW5lZChLRVJOX0FSTkQpCi0gICAgIHJldHVybiBzeXNjdGxfcmFuZG9tKGJ1 ZiwgYnVmbGVuKTsKLSAjICBlbHNlCi1AQCAtNjMzLDYgKzYzNiw5IEBAIHNpemVfdCByYW5kX3Bv b2xfYWNxdWlyZV9lbnRyb3B5KFJBTkRfUE8KLSAgICAgc2l6ZV90IGVudHJvcHlfYXZhaWxhYmxl OwotIAotICMgICBpZiBkZWZpbmVkKE9QRU5TU0xfUkFORF9TRUVEX0dFVFJBTkRPTSkKLSsgICAg aW50IGluX3Bvc3Q7Ci0rCi0rICAgIGZvciAoaW5fcG9zdCA9IGZpcHNfaW5fcG9zdCgpOyBpbl9w b3N0ID49IDA7IC0taW5fcG9zdCkgewotICAgICB7Ci0gICAgICAgICBzaXplX3QgYnl0ZXNfbmVl ZGVkOwotICAgICAgICAgdW5zaWduZWQgY2hhciAqYnVmZmVyOwotQEAgLTY0Myw3ICs2NDksNyBA QCBzaXplX3QgcmFuZF9wb29sX2FjcXVpcmVfZW50cm9weShSQU5EX1BPCi0gICAgICAgICBieXRl c19uZWVkZWQgPSByYW5kX3Bvb2xfYnl0ZXNfbmVlZGVkKHBvb2wsIDEgLyplbnRyb3B5X2ZhY3Rv ciovKTsKLSAgICAgICAgIHdoaWxlIChieXRlc19uZWVkZWQgIT0gMCAmJiBhdHRlbXB0cy0tID4g MCkgewotICAgICAgICAgICAgIGJ1ZmZlciA9IHJhbmRfcG9vbF9hZGRfYmVnaW4ocG9vbCwgYnl0 ZXNfbmVlZGVkKTsKLS0gICAgICAgICAgICBieXRlcyA9IHN5c2NhbGxfcmFuZG9tKGJ1ZmZlciwg Ynl0ZXNfbmVlZGVkKTsKLSsgICAgICAgICAgICBieXRlcyA9IHN5c2NhbGxfcmFuZG9tKGJ1ZmZl ciwgYnl0ZXNfbmVlZGVkLCBpbl9wb3N0KTsKLSAgICAgICAgICAgICBpZiAoYnl0ZXMgPiAwKSB7 Ci0gICAgICAgICAgICAgICAgIHJhbmRfcG9vbF9hZGRfZW5kKHBvb2wsIGJ5dGVzLCA4ICogYnl0 ZXMpOwotICAgICAgICAgICAgICAgICBieXRlc19uZWVkZWQgLT0gYnl0ZXM7Ci1AQCAtNjc4LDgg KzY4NCwxMCBAQCBzaXplX3QgcmFuZF9wb29sX2FjcXVpcmVfZW50cm9weShSQU5EX1BPCi0gICAg ICAgICAgICAgaW50IGF0dGVtcHRzID0gMzsKLSAgICAgICAgICAgICBjb25zdCBpbnQgZmQgPSBn ZXRfcmFuZG9tX2RldmljZShpKTsKLSAKLS0gICAgICAgICAgICBpZiAoZmQgPT0gLTEpCi0rICAg ICAgICAgICAgaWYgKGZkID09IC0xKSB7Ci0rICAgICAgICAgICAgICAgIE9QRU5TU0xfc2hvd2Zh dGFsKCJSYW5kb20gZGV2aWNlICVzIGNhbm5vdCBiZSBvcGVuZWQuXG4iLCByYW5kb21fZGV2aWNl X3BhdGhzW2ldKTsKLSAgICAgICAgICAgICAgICAgY29udGludWU7Ci0rICAgICAgICAgICAgfQot IAotICAgICAgICAgICAgIHdoaWxlIChieXRlc19uZWVkZWQgIT0gMCAmJiBhdHRlbXB0cy0tID4g MCkgewotICAgICAgICAgICAgICAgICBidWZmZXIgPSByYW5kX3Bvb2xfYWRkX2JlZ2luKHBvb2ws IGJ5dGVzX25lZWRlZCk7Ci1AQCAtNzQyLDcgKzc1MCw5IEBAIHNpemVfdCByYW5kX3Bvb2xfYWNx dWlyZV9lbnRyb3B5KFJBTkRfUE8KLSAgICAgICAgICAgICByZXR1cm4gZW50cm9weV9hdmFpbGFi bGU7Ci0gICAgIH0KLSAjICAgZW5kaWYKLS0KLSsjICAgaWZkZWYgT1BFTlNTTF9SQU5EX1NFRURf R0VUUkFORE9NCi0rICAgIH0KLSsjICAgZW5kaWYKLSAgICAgcmV0dXJuIHJhbmRfcG9vbF9lbnRy b3B5X2F2YWlsYWJsZShwb29sKTsKLSAjICBlbmRpZgotIH0KLWRpZmYgLXVwIG9wZW5zc2wtMS4x LjFpL2luY2x1ZGUvY3J5cHRvL2ZpcHMuaC5maXBzLXBvc3QtcmFuZCBvcGVuc3NsLTEuMS4xaS9p bmNsdWRlL2NyeXB0by9maXBzLmgKLS0tLSBvcGVuc3NsLTEuMS4xaS9pbmNsdWRlL2NyeXB0by9m aXBzLmguZmlwcy1wb3N0LXJhbmQJMjAyMC0xMi0wOSAxMDoyNjo0MS42MzkxMDYzNjkgKzAxMDAK LSsrKyBvcGVuc3NsLTEuMS4xaS9pbmNsdWRlL2NyeXB0by9maXBzLmgJMjAyMC0xMi0wOSAxMDoy Njo0MS42NTcxMDY1MTYgKzAxMDAKLUBAIC03Nyw2ICs3Nyw4IEBAIGludCBGSVBTX3NlbGZ0ZXN0 X2htYWModm9pZCk7Ci0gaW50IEZJUFNfc2VsZnRlc3RfZHJiZyh2b2lkKTsKLSBpbnQgRklQU19z ZWxmdGVzdF9jbWFjKHZvaWQpOwotIAotK2ludCBmaXBzX2luX3Bvc3Qodm9pZCk7Ci0rCi0gaW50 IGZpcHNfcGtleV9zaWduYXR1cmVfdGVzdChFVlBfUEtFWSAqcGtleSwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICp0YnMsIGludCB0YnNsZW4s Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAq a2F0LAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWkvaW5jbHVkZS9jcnlwdG8vcmFuZC5oLmZpcHMt cG9zdC1yYW5kIG9wZW5zc2wtMS4xLjFpL2luY2x1ZGUvY3J5cHRvL3JhbmQuaAotLS0tIG9wZW5z c2wtMS4xLjFpL2luY2x1ZGUvY3J5cHRvL3JhbmQuaC5maXBzLXBvc3QtcmFuZAkyMDIwLTEyLTA4 IDE0OjIwOjU5LjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFpL2luY2x1ZGUvY3J5 cHRvL3JhbmQuaAkyMDIwLTEyLTA5IDEwOjI2OjQxLjY1NzEwNjUxNiArMDEwMAotQEAgLTI0LDYg KzI0LDcgQEAKLSB0eXBlZGVmIHN0cnVjdCByYW5kX3Bvb2xfc3QgUkFORF9QT09MOwotIAotIHZv aWQgcmFuZF9jbGVhbnVwX2ludCh2b2lkKTsKLSt2b2lkIHJhbmRfZm9yY2VfcmVzZWVkKHZvaWQp OwotIHZvaWQgcmFuZF9kcmJnX2NsZWFudXBfaW50KHZvaWQpOwotIHZvaWQgZHJiZ19kZWxldGVf dGhyZWFkX3N0YXRlKHZvaWQpOwotIAoKZGlmZiAtLWdpdCBhL29wZW5zc2wtMS4xLjEtZmlwcy5w YXRjaCBiL29wZW5zc2wtMS4xLjEtZmlwcy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggYWEzZDMzZC4uMDAwMDAwMAotLS0gYS9vcGVuc3NsLTEuMS4xLWZpcHMucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSwxMTYzNSArMCwwIEBACi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9h cHBzL3BrY3MxMi5jLmZpcHMgb3BlbnNzbC0xLjEuMWovYXBwcy9wa2NzMTIuYwotLS0tIG9wZW5z c2wtMS4xLjFqL2FwcHMvcGtjczEyLmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAw MCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2FwcHMvcGtjczEyLmMJMjAyMS0wMy0wMyAxMjo1 Nzo0Mi4xOTQ3MzQ0ODQgKzAxMDAKLUBAIC0xMjMsNyArMTIzLDcgQEAgaW50IHBrY3MxMl9tYWlu KGludCBhcmdjLCBjaGFyICoqYXJndikKLSAgICAgaW50IGV4cG9ydF9jZXJ0ID0gMCwgb3B0aW9u cyA9IDAsIGNoYWluID0gMCwgdHdvcGFzcyA9IDAsIGtleXR5cGUgPSAwOwotICAgICBpbnQgaXRl ciA9IFBLQ1MxMl9ERUZBVUxUX0lURVIsIG1hY2l0ZXIgPSBQS0NTMTJfREVGQVVMVF9JVEVSOwot ICNpZm5kZWYgT1BFTlNTTF9OT19SQzIKLS0gICAgaW50IGNlcnRfcGJlID0gTklEX3BiZV9XaXRo U0hBMUFuZDQwQml0UkMyX0NCQzsKLSsgICAgaW50IGNlcnRfcGJlID0gRklQU19tb2RlKCkgPyBO SURfcGJlX1dpdGhTSEExQW5kM19LZXlfVHJpcGxlREVTX0NCQyA6IE5JRF9wYmVfV2l0aFNIQTFB bmQ0MEJpdFJDMl9DQkM7Ci0gI2Vsc2UKLSAgICAgaW50IGNlcnRfcGJlID0gTklEX3BiZV9XaXRo U0hBMUFuZDNfS2V5X1RyaXBsZURFU19DQkM7Ci0gI2VuZGlmCi1kaWZmIC11cCBvcGVuc3NsLTEu MS4xai9hcHBzL3NwZWVkLmMuZmlwcyBvcGVuc3NsLTEuMS4xai9hcHBzL3NwZWVkLmMKLS0tLSBv cGVuc3NsLTEuMS4xai9hcHBzL3NwZWVkLmMuZmlwcwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE4NTcz NDQwOSArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2FwcHMvc3BlZWQuYwkyMDIxLTAzLTAzIDEy OjU3OjQyLjE5NTczNDQ5MiArMDEwMAotQEAgLTE1OTMsNyArMTU5Myw4IEBAIGludCBzcGVlZF9t YWluKGludCBhcmdjLCBjaGFyICoqYXJndikKLSAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAg ICAgIGlmIChzdHJjbXAoKmFyZ3YsICJyc2EiKSA9PSAwKSB7Ci0gICAgICAgICAgICAgZm9yIChs b29wID0gMDsgbG9vcCA8IE9TU0xfTkVMRU0ocnNhX2RvaXQpOyBsb29wKyspCi0tICAgICAgICAg ICAgICAgIHJzYV9kb2l0W2xvb3BdID0gMTsKLSsJCWlmICghRklQU19tb2RlKCkgfHwgbG9vcCAh PSBSX1JTQV81MTIpCi0rICAgICAgICAgICAgICAgICAgICByc2FfZG9pdFtsb29wXSA9IDE7Ci0g ICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICB9Ci0gICAgICAgICBpZiAoZm91bmQoKmFy Z3YsIHJzYV9jaG9pY2VzLCAmaSkpIHsKLUBAIC0xNjAzLDcgKzE2MDQsOSBAQCBpbnQgc3BlZWRf bWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpCi0gI2VuZGlmCi0gI2lmbmRlZiBPUEVOU1NMX05P X0RTQQotICAgICAgICAgaWYgKHN0cmNtcCgqYXJndiwgImRzYSIpID09IDApIHsKLS0gICAgICAg ICAgICBkc2FfZG9pdFtSX0RTQV81MTJdID0gZHNhX2RvaXRbUl9EU0FfMTAyNF0gPQotKyAgICAg ICAgICAgIGlmICghRklQU19tb2RlKCkpCi0rICAgICAgICAgICAgICAgIGRzYV9kb2l0W1JfRFNB XzUxMl0gPSAxOwotKyAgICAgICAgICAgIGRzYV9kb2l0W1JfRFNBXzEwMjRdID0KLSAgICAgICAg ICAgICAgICAgZHNhX2RvaXRbUl9EU0FfMjA0OF0gPSAxOwotICAgICAgICAgICAgIGNvbnRpbnVl OwotICAgICAgICAgfQotQEAgLTE2MzQsMTkgKzE2MzcsMjEgQEAgaW50IHNwZWVkX21haW4oaW50 IGFyZ2MsIGNoYXIgKiphcmd2KQotICAgICAgICAgfQotICAgICAgICAgaWYgKHN0cmNtcCgqYXJn diwgImVjZGgiKSA9PSAwKSB7Ci0gICAgICAgICAgICAgZm9yIChsb29wID0gMDsgbG9vcCA8IE9T U0xfTkVMRU0oZWNkaF9kb2l0KTsgbG9vcCsrKQotLSAgICAgICAgICAgICAgICBlY2RoX2RvaXRb bG9vcF0gPSAxOwotKyAgICAgICAgICAgICAgICBpZighRklQU19tb2RlKCkgfHwgKGxvb3AgIT0g Ul9FQ19YMjU1MTkgJiYgbG9vcCAhPSBSX0VDX1g0NDgpKQotKyAgICAgICAgICAgICAgICAgICAg ZWNkaF9kb2l0W2xvb3BdID0gMTsKLSAgICAgICAgICAgICBjb250aW51ZTsKLSAgICAgICAgIH0K LSAgICAgICAgIGlmIChmb3VuZCgqYXJndiwgZWNkaF9jaG9pY2VzLCAmaSkpIHsKLS0gICAgICAg ICAgICBlY2RoX2RvaXRbaV0gPSAyOwotKyAgICAgICAgICAgIGlmKCFGSVBTX21vZGUoKSB8fCAo aSAhPSBSX0VDX1gyNTUxOSAmJiBpICE9IFJfRUNfWDQ0OCkpCi0rICAgICAgICAgICAgICAgIGVj ZGhfZG9pdFtpXSA9IDI7Ci0gICAgICAgICAgICAgY29udGludWU7Ci0gICAgICAgICB9Ci0tICAg ICAgICBpZiAoc3RyY21wKCphcmd2LCAiZWRkc2EiKSA9PSAwKSB7Ci0rICAgICAgICBpZiAoIUZJ UFNfbW9kZSgpICYmIHN0cmNtcCgqYXJndiwgImVkZHNhIikgPT0gMCkgewotICAgICAgICAgICAg IGZvciAobG9vcCA9IDA7IGxvb3AgPCBPU1NMX05FTEVNKGVkZHNhX2RvaXQpOyBsb29wKyspCi0g ICAgICAgICAgICAgICAgIGVkZHNhX2RvaXRbbG9vcF0gPSAxOwotICAgICAgICAgICAgIGNvbnRp bnVlOwotICAgICAgICAgfQotLSAgICAgICAgaWYgKGZvdW5kKCphcmd2LCBlZGRzYV9jaG9pY2Vz LCAmaSkpIHsKLSsgICAgICAgIGlmICghRklQU19tb2RlKCkgJiYgZm91bmQoKmFyZ3YsIGVkZHNh X2Nob2ljZXMsICZpKSkgewotICAgICAgICAgICAgIGVkZHNhX2RvaXRbaV0gPSAyOwotICAgICAg ICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgfQotQEAgLTE3MzUsMjMgKzE3NDAsMzEgQEAgaW50 IHNwZWVkX21haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQotICAgICAvKiBObyBwYXJhbWV0ZXJz OyB0dXJuIG9uIGV2ZXJ5dGhpbmcuICovCi0gICAgIGlmICgoYXJnYyA9PSAwKSAmJiAhZG9pdFtE X0VWUF0pIHsKLSAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBBTEdPUl9OVU07IGkrKykKLS0gICAg ICAgICAgICBpZiAoaSAhPSBEX0VWUCkKLSsgICAgICAgICAgICBpZiAoaSAhPSBEX0VWUCAmJgot KyAgICAgICAgICAgICAgICAoIUZJUFNfbW9kZSgpIHx8IChpICE9IERfV0hJUkxQT09MICYmCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgIT0gRF9NRDIgJiYgaSAhPSBEX01E NCAmJgotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpICE9IERfTUQ1ICYmIGkg IT0gRF9NREMyICYmCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkgIT0gRF9S TUQxNjApKSkKLSAgICAgICAgICAgICAgICAgZG9pdFtpXSA9IDE7Ci0gI2lmbmRlZiBPUEVOU1NM X05PX1JTQQotICAgICAgICAgZm9yIChpID0gMDsgaSA8IFJTQV9OVU07IGkrKykKLS0gICAgICAg ICAgICByc2FfZG9pdFtpXSA9IDE7Ci0rICAgICAgICAgICAgaWYgKCFGSVBTX21vZGUoKSB8fCBp ICE9IFJfUlNBXzUxMikKLSsgICAgICAgICAgICAgICAgcnNhX2RvaXRbaV0gPSAxOwotICNlbmRp ZgotICNpZm5kZWYgT1BFTlNTTF9OT19EU0EKLSAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBEU0Ff TlVNOyBpKyspCi0tICAgICAgICAgICAgZHNhX2RvaXRbaV0gPSAxOwotKyAgICAgICAgICAgIGlm ICghRklQU19tb2RlKCkgfHwgaSAhPSBSX0RTQV81MTIpCi0rICAgICAgICAgICAgICAgIGRzYV9k b2l0W2ldID0gMTsKLSAjZW5kaWYKLSAjaWZuZGVmIE9QRU5TU0xfTk9fRUMKLSAgICAgICAgIGZv ciAobG9vcCA9IDA7IGxvb3AgPCBPU1NMX05FTEVNKGVjZHNhX2RvaXQpOyBsb29wKyspCi0gICAg ICAgICAgICAgZWNkc2FfZG9pdFtsb29wXSA9IDE7Ci0gICAgICAgICBmb3IgKGxvb3AgPSAwOyBs b29wIDwgT1NTTF9ORUxFTShlY2RoX2RvaXQpOyBsb29wKyspCi0tICAgICAgICAgICAgZWNkaF9k b2l0W2xvb3BdID0gMTsKLS0gICAgICAgIGZvciAobG9vcCA9IDA7IGxvb3AgPCBPU1NMX05FTEVN KGVkZHNhX2RvaXQpOyBsb29wKyspCi0tICAgICAgICAgICAgZWRkc2FfZG9pdFtsb29wXSA9IDE7 Ci0rICAgICAgICAgICAgaWYoIUZJUFNfbW9kZSgpIHx8IChsb29wICE9IFJfRUNfWDI1NTE5ICYm IGxvb3AgIT0gUl9FQ19YNDQ4KSkKLSsgICAgICAgICAgICAgICAgZWNkaF9kb2l0W2xvb3BdID0g MTsKLSsgICAgICAgIGlmICghRklQU19tb2RlKCkpCi0rICAgICAgICAgICAgZm9yIChsb29wID0g MDsgbG9vcCA8IE9TU0xfTkVMRU0oZWRkc2FfZG9pdCk7IGxvb3ArKykKLSsgICAgICAgICAgICAg ICAgZWRkc2FfZG9pdFtsb29wXSA9IDE7Ci0gI2VuZGlmCi0gICAgIH0KLSAgICAgZm9yIChpID0g MDsgaSA8IEFMR09SX05VTTsgaSsrKQotQEAgLTE3OTksMzAgKzE4MTIsNDYgQEAgaW50IHNwZWVk X21haW4oaW50IGFyZ2MsIGNoYXIgKiphcmd2KQotICAgICBBRVNfc2V0X2VuY3J5cHRfa2V5KGtl eTI0LCAxOTIsICZhZXNfa3MyKTsKLSAgICAgQUVTX3NldF9lbmNyeXB0X2tleShrZXkzMiwgMjU2 LCAmYWVzX2tzMyk7Ci0gI2lmbmRlZiBPUEVOU1NMX05PX0NBTUVMTElBCi0tICAgIENhbWVsbGlh X3NldF9rZXkoa2V5MTYsIDEyOCwgJmNhbWVsbGlhX2tzMSk7Ci0tICAgIENhbWVsbGlhX3NldF9r ZXkoY2tleTI0LCAxOTIsICZjYW1lbGxpYV9rczIpOwotLSAgICBDYW1lbGxpYV9zZXRfa2V5KGNr ZXkzMiwgMjU2LCAmY2FtZWxsaWFfa3MzKTsKLSsgICAgaWYgKGRvaXRbRF9DQkNfMTI4X0NNTF0g fHwgZG9pdFtEX0NCQ18xOTJfQ01MXSB8fCBkb2l0W0RfQ0JDXzI1Nl9DTUxdKSB7Ci0rICAgICAg ICBDYW1lbGxpYV9zZXRfa2V5KGtleTE2LCAxMjgsICZjYW1lbGxpYV9rczEpOwotKyAgICAgICAg Q2FtZWxsaWFfc2V0X2tleShja2V5MjQsIDE5MiwgJmNhbWVsbGlhX2tzMik7Ci0rICAgICAgICBD YW1lbGxpYV9zZXRfa2V5KGNrZXkzMiwgMjU2LCAmY2FtZWxsaWFfa3MzKTsKLSsgICAgfQotICNl bmRpZgotICNpZm5kZWYgT1BFTlNTTF9OT19JREVBCi0tICAgIElERUFfc2V0X2VuY3J5cHRfa2V5 KGtleTE2LCAmaWRlYV9rcyk7Ci0rICAgIGlmIChkb2l0W0RfQ0JDX0lERUFdKSB7Ci0rICAgICAg ICBJREVBX3NldF9lbmNyeXB0X2tleShrZXkxNiwgJmlkZWFfa3MpOwotKyAgICB9Ci0gI2VuZGlm Ci0gI2lmbmRlZiBPUEVOU1NMX05PX1NFRUQKLS0gICAgU0VFRF9zZXRfa2V5KGtleTE2LCAmc2Vl ZF9rcyk7Ci0rICAgIGlmIChkb2l0W0RfQ0JDX1NFRURdKSB7Ci0rICAgICAgICBTRUVEX3NldF9r ZXkoa2V5MTYsICZzZWVkX2tzKTsKLSsgICAgfQotICNlbmRpZgotICNpZm5kZWYgT1BFTlNTTF9O T19SQzQKLS0gICAgUkM0X3NldF9rZXkoJnJjNF9rcywgMTYsIGtleTE2KTsKLSsgICBpZiAoZG9p dFtEX1JDNF0pIHsKLSsgICAgICAgIFJDNF9zZXRfa2V5KCZyYzRfa3MsIDE2LCBrZXkxNik7Ci0r ICAgIH0KLSAjZW5kaWYKLSAjaWZuZGVmIE9QRU5TU0xfTk9fUkMyCi0tICAgIFJDMl9zZXRfa2V5 KCZyYzJfa3MsIDE2LCBrZXkxNiwgMTI4KTsKLSsgICAgaWYgKGRvaXRbRF9DQkNfUkMyXSkgewot KyAgICAgICAgUkMyX3NldF9rZXkoJnJjMl9rcywgMTYsIGtleTE2LCAxMjgpOwotKyAgICB9Ci0g I2VuZGlmCi0gI2lmbmRlZiBPUEVOU1NMX05PX1JDNQotLSAgICBSQzVfMzJfc2V0X2tleSgmcmM1 X2tzLCAxNiwga2V5MTYsIDEyKTsKLSsgICAgaWYgKGRvaXRbRF9DQkNfUkM1XSkgewotKyAgICAg ICAgUkM1XzMyX3NldF9rZXkoJnJjNV9rcywgMTYsIGtleTE2LCAxMik7Ci0rICAgIH0KLSAjZW5k aWYKLSAjaWZuZGVmIE9QRU5TU0xfTk9fQkYKLS0gICAgQkZfc2V0X2tleSgmYmZfa3MsIDE2LCBr ZXkxNik7Ci0rICAgIGlmIChkb2l0W0RfQ0JDX0JGXSkgewotKyAgICAgICAgQkZfc2V0X2tleSgm YmZfa3MsIDE2LCBrZXkxNik7Ci0rICAgIH0KLSAjZW5kaWYKLSAjaWZuZGVmIE9QRU5TU0xfTk9f Q0FTVAotLSAgICBDQVNUX3NldF9rZXkoJmNhc3Rfa3MsIDE2LCBrZXkxNik7Ci0rICAgIGlmIChk b2l0W0RfQ0JDX0NBU1RdKSB7Ci0rICAgICAgICBDQVNUX3NldF9rZXkoJmNhc3Rfa3MsIDE2LCBr ZXkxNik7Ci0rICAgIH0KLSAjZW5kaWYKLSAjaWZuZGVmIFNJR0FMUk0KLSAjIGlmbmRlZiBPUEVO U1NMX05PX0RFUwotQEAgLTIxMjAsNiArMjE0OSw3IEBAIGludCBzcGVlZF9tYWluKGludCBhcmdj LCBjaGFyICoqYXJndikKLSAKLSAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBsb29wYXJnc19sZW47 IGkrKykgewotICAgICAgICAgICAgIGxvb3BhcmdzW2ldLmhjdHggPSBITUFDX0NUWF9uZXcoKTsK LSsgICAgICAgICAgICBITUFDX0NUWF9zZXRfZmxhZ3MobG9vcGFyZ3NbaV0uaGN0eCwgRVZQX01E X0NUWF9GTEFHX05PTl9GSVBTX0FMTE9XKTsKLSAgICAgICAgICAgICBpZiAobG9vcGFyZ3NbaV0u aGN0eCA9PSBOVUxMKSB7Ci0gICAgICAgICAgICAgICAgIEJJT19wcmludGYoYmlvX2VyciwgIkhN QUMgbWFsbG9jIGZhaWx1cmUsIGV4aXRpbmcuLi4iKTsKLSAgICAgICAgICAgICAgICAgZXhpdCgx KTsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL0NvbmZpZ3VyZS5maXBzIG9wZW5zc2wtMS4xLjFq L0NvbmZpZ3VyZQotLS0tIG9wZW5zc2wtMS4xLjFqL0NvbmZpZ3VyZS5maXBzCTIwMjEtMDMtMDMg MTI6NTc6NDIuMTkyNzM0NDY3ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovQ29uZmlndXJlCTIw MjEtMDMtMDMgMTI6NTc6NDIuMTk1NzM0NDkyICswMTAwCi1AQCAtMzI5LDcgKzMyOSw3IEBAICRj b25maWd7c2RpcnN9ID0gWwotICAgICAibWQyIiwgIm1kNCIsICJtZDUiLCAic2hhIiwgIm1kYzIi LCAiaG1hYyIsICJyaXBlbWQiLCAid2hybHBvb2wiLCAicG9seTEzMDUiLCAiYmxha2UyIiwgInNp cGhhc2giLCAic20zIiwKLSAgICAgImRlcyIsICJhZXMiLCAicmMyIiwgInJjNCIsICJyYzUiLCAi aWRlYSIsICJhcmlhIiwgImJmIiwgImNhc3QiLCAiY2FtZWxsaWEiLCAic2VlZCIsICJzbTQiLCAi Y2hhY2hhIiwgIm1vZGVzIiwKLSAgICAgImJuIiwgImVjIiwgInJzYSIsICJkc2EiLCAiZGgiLCAi c20yIiwgImRzbyIsICJlbmdpbmUiLAotLSAgICAiYnVmZmVyIiwgImJpbyIsICJzdGFjayIsICJs aGFzaCIsICJyYW5kIiwgImVyciIsCi0rICAgICJidWZmZXIiLCAiYmlvIiwgInN0YWNrIiwgImxo YXNoIiwgInJhbmQiLCAiZXJyIiwgImZpcHMiLAotICAgICAiZXZwIiwgImFzbjEiLCAicGVtIiwg Ing1MDkiLCAieDUwOXYzIiwgImNvbmYiLCAidHh0X2RiIiwgInBrY3M3IiwgInBrY3MxMiIsICJj b21wIiwgIm9jc3AiLCAidWkiLAotICAgICAiY21zIiwgInRzIiwgInNycCIsICJjbWFjIiwgImN0 IiwgImFzeW5jIiwgImtkZiIsICJzdG9yZSIKLSAgICAgXTsKLWRpZmYgLXVwIG9wZW5zc2wtMS4x LjFqL2NyeXB0by9jbWFjL2NtX3BtZXRoLmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vY21h Yy9jbV9wbWV0aC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2NtYWMvY21fcG1ldGguYy5m aXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEu MWovY3J5cHRvL2NtYWMvY21fcG1ldGguYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE5NTczNDQ5MiAr MDEwMAotQEAgLTEyOSw3ICsxMjksNyBAQCBzdGF0aWMgaW50IHBrZXlfY21hY19jdHJsX3N0cihF VlBfUEtFWV9DCi0gCi0gY29uc3QgRVZQX1BLRVlfTUVUSE9EIGNtYWNfcGtleV9tZXRoID0gewot ICAgICBFVlBfUEtFWV9DTUFDLAotLSAgICBFVlBfUEtFWV9GTEFHX1NJR0NUWF9DVVNUT00sCi0r ICAgIEVWUF9QS0VZX0ZMQUdfU0lHQ1RYX0NVU1RPTSB8IEVWUF9QS0VZX0ZMQUdfRklQUywKLSAg ICAgcGtleV9jbWFjX2luaXQsCi0gICAgIHBrZXlfY21hY19jb3B5LAotICAgICBwa2V5X2NtYWNf Y2xlYW51cCwKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9lcnIuYy5maXBz IG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9lcnIuYwotLS0tIG9wZW5zc2wtMS4xLjFqL2Ny eXB0by9kaC9kaF9lcnIuYy5maXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAw Ci0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2RoL2RoX2Vyci5jCTIwMjEtMDMtMDMgMTI6NTc6 NDIuMTk1NzM0NDkyICswMTAwCi1AQCAtMjUsNiArMjUsOSBAQCBzdGF0aWMgY29uc3QgRVJSX1NU UklOR19EQVRBIERIX3N0cl9mdW5jCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0RILCBESF9GX0RI X0NNU19TRVRfUEVFUktFWSwgMCksICJkaF9jbXNfc2V0X3BlZXJrZXkifSwKLSAgICAge0VSUl9Q QUNLKEVSUl9MSUJfREgsIERIX0ZfREhfQ01TX1NFVF9TSEFSRURfSU5GTywgMCksCi0gICAgICAi ZGhfY21zX3NldF9zaGFyZWRfaW5mbyJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9ESCwgREhf Rl9ESF9DT01QVVRFX0tFWSwgMCksICJESF9jb21wdXRlX2tleSJ9LAotKyAgICB7RVJSX1BBQ0so RVJSX0xJQl9ESCwgREhfRl9ESF9HRU5FUkFURV9LRVksIDApLCAiREhfZ2VuZXJhdGVfa2V5In0s Ci0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0RILCBESF9GX0RIX0dFTkVSQVRFX1BBUkFNRVRFUlNf RVgsIDApLCAiREhfZ2VuZXJhdGVfcGFyYW1ldGVyc19leCJ9LAotICAgICB7RVJSX1BBQ0soRVJS X0xJQl9ESCwgREhfRl9ESF9NRVRIX0RVUCwgMCksICJESF9tZXRoX2R1cCJ9LAotICAgICB7RVJS X1BBQ0soRVJSX0xJQl9ESCwgREhfRl9ESF9NRVRIX05FVywgMCksICJESF9tZXRoX25ldyJ9LAot ICAgICB7RVJSX1BBQ0soRVJSX0xJQl9ESCwgREhfRl9ESF9NRVRIX1NFVDFfTkFNRSwgMCksICJE SF9tZXRoX3NldDFfbmFtZSJ9LAotQEAgLTcyLDEyICs3NSwxNCBAQCBzdGF0aWMgY29uc3QgRVJS X1NUUklOR19EQVRBIERIX3N0cl9yZWFzCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0RILCAwLCBE SF9SX0lOVkFMSURfUFVCS0VZKSwgImludmFsaWQgcHVibGljIGtleSJ9LAotICAgICB7RVJSX1BB Q0soRVJSX0xJQl9ESCwgMCwgREhfUl9LREZfUEFSQU1FVEVSX0VSUk9SKSwgImtkZiBwYXJhbWV0 ZXIgZXJyb3IifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfREgsIDAsIERIX1JfS0VZU19OT1Rf U0VUKSwgImtleXMgbm90IHNldCJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9ESCwgMCwgREhf Ul9LRVlfU0laRV9UT09fU01BTEwpLCAia2V5IHNpemUgdG9vIHNtYWxsIn0sCi0gICAgIHtFUlJf UEFDSyhFUlJfTElCX0RILCAwLCBESF9SX01JU1NJTkdfUFVCS0VZKSwgIm1pc3NpbmcgcHVia2V5 In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0RILCAwLCBESF9SX01PRFVMVVNfVE9PX0xBUkdF KSwgIm1vZHVsdXMgdG9vIGxhcmdlIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0RILCAwLCBE SF9SX05PVF9TVUlUQUJMRV9HRU5FUkFUT1IpLAotICAgICAibm90IHN1aXRhYmxlIGdlbmVyYXRv ciJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9ESCwgMCwgREhfUl9OT19QQVJBTUVURVJTX1NF VCksICJubyBwYXJhbWV0ZXJzIHNldCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9ESCwgMCwg REhfUl9OT19QUklWQVRFX1ZBTFVFKSwgIm5vIHByaXZhdGUgdmFsdWUifSwKLSsgICAge0VSUl9Q QUNLKEVSUl9MSUJfREgsIDAsIERIX1JfTk9OX0ZJUFNfTUVUSE9EKSwgIm5vbiBGSVBTIG1ldGhv ZCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9ESCwgMCwgREhfUl9QQVJBTUVURVJfRU5DT0RJ TkdfRVJST1IpLAotICAgICAicGFyYW1ldGVyIGVuY29kaW5nIGVycm9yIn0sCi0gICAgIHtFUlJf UEFDSyhFUlJfTElCX0RILCAwLCBESF9SX1BFRVJfS0VZX0VSUk9SKSwgInBlZXIga2V5IGVycm9y In0sCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZGgvZGhfZ2VuLmMuZmlwcyBvcGVu c3NsLTEuMS4xai9jcnlwdG8vZGgvZGhfZ2VuLmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8v ZGgvZGhfZ2VuLmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysr IG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9nZW4uYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE5 NTczNDQ5MiArMDEwMAotQEAgLTE2LDYgKzE2LDkgQEAKLSAjaW5jbHVkZSAiaW50ZXJuYWwvY3J5 cHRsaWIuaCIKLSAjaW5jbHVkZSA8b3BlbnNzbC9ibi5oPgotICNpbmNsdWRlICJkaF9sb2NhbC5o IgotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsjIGluY2x1ZGUgPG9wZW5zc2wvZmlwcy5oPgotKyNl bmRpZgotIAotIHN0YXRpYyBpbnQgZGhfYnVpbHRpbl9nZW5wYXJhbXMoREggKnJldCwgaW50IHBy aW1lX2xlbiwgaW50IGdlbmVyYXRvciwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEJOX0dFTkNCICpjYik7Ci1AQCAtMjMsNiArMjYsMTMgQEAgc3RhdGljIGludCBkaF9idWlsdGlu X2dlbnBhcmFtcyhESCAqcmV0LAotIGludCBESF9nZW5lcmF0ZV9wYXJhbWV0ZXJzX2V4KERIICpy ZXQsIGludCBwcmltZV9sZW4sIGludCBnZW5lcmF0b3IsCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgQk5fR0VOQ0IgKmNiKQotIHsKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rICAgIGlm IChGSVBTX21vZGUoKSAmJiAhKHJldC0+bWV0aC0+ZmxhZ3MgJiBESF9GTEFHX0ZJUFNfTUVUSE9E KQotKyAgICAgICAgJiYgIShyZXQtPmZsYWdzICYgREhfRkxBR19OT05fRklQU19BTExPVykpIHsK LSsgICAgICAgIERIZXJyKERIX0ZfREhfR0VORVJBVEVfUEFSQU1FVEVSU19FWCwgREhfUl9OT05f RklQU19NRVRIT0QpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsjZW5kaWYKLSAgICAg aWYgKHJldC0+bWV0aC0+Z2VuZXJhdGVfcGFyYW1zKQotICAgICAgICAgcmV0dXJuIHJldC0+bWV0 aC0+Z2VuZXJhdGVfcGFyYW1zKHJldCwgcHJpbWVfbGVuLCBnZW5lcmF0b3IsIGNiKTsKLSAgICAg cmV0dXJuIGRoX2J1aWx0aW5fZ2VucGFyYW1zKHJldCwgcHJpbWVfbGVuLCBnZW5lcmF0b3IsIGNi KTsKLUBAIC02NSw2ICs3NSwxOCBAQCBzdGF0aWMgaW50IGRoX2J1aWx0aW5fZ2VucGFyYW1zKERI ICpyZXQsCi0gICAgIGludCBnLCBvayA9IC0xOwotICAgICBCTl9DVFggKmN0eCA9IE5VTEw7Ci0g Ci0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyAgICBpZiAoRklQU19zZWxmdGVzdF9mYWlsZWQoKSkg ewotKyAgICAgICAgRklQU2VycihGSVBTX0ZfREhfQlVJTFRJTl9HRU5QQVJBTVMsIEZJUFNfUl9G SVBTX1NFTEZURVNUX0ZBSUxFRCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKwotKyAg ICBpZiAoRklQU19tb2RlKCkgJiYgKHByaW1lX2xlbiA8IE9QRU5TU0xfREhfRklQU19NSU5fTU9E VUxVU19CSVRTX0dFTikpIHsKLSsgICAgICAgIERIZXJyKERIX0ZfREhfQlVJTFRJTl9HRU5QQVJB TVMsIERIX1JfS0VZX1NJWkVfVE9PX1NNQUxMKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9 Ci0rI2VuZGlmCi0rCi0gICAgIGN0eCA9IEJOX0NUWF9uZXcoKTsKLSAgICAgaWYgKGN0eCA9PSBO VUxMKQotICAgICAgICAgZ290byBlcnI7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8v ZGgvZGhfa2V5LmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZGgvZGhfa2V5LmMKLS0tLSBv cGVuc3NsLTEuMS4xai9jcnlwdG8vZGgvZGhfa2V5LmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAx LjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9rZXkuYwky MDIxLTAzLTAzIDEzOjAyOjQ1Ljk2MzI0NzU5NiArMDEwMAotQEAgLTExLDYgKzExLDkgQEAKLSAj aW5jbHVkZSAiaW50ZXJuYWwvY3J5cHRsaWIuaCIKLSAjaW5jbHVkZSAiZGhfbG9jYWwuaCIKLSAj aW5jbHVkZSAiY3J5cHRvL2JuLmgiCi0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyMgaW5jbHVkZSA8 b3BlbnNzbC9maXBzLmg+Ci0rI2VuZGlmCi0gCi0gc3RhdGljIGludCBnZW5lcmF0ZV9rZXkoREgg KmRoKTsKLSBzdGF0aWMgaW50IGNvbXB1dGVfa2V5KHVuc2lnbmVkIGNoYXIgKmtleSwgY29uc3Qg QklHTlVNICpwdWJfa2V5LCBESCAqZGgpOwotQEAgLTM0LDYgKzM3LDEzIEBAIGludCBESF9jb21w dXRlX2tleSh1bnNpZ25lZCBjaGFyICprZXksIGMKLSAgICAgaW50IHJldCA9IDAsIGk7Ci0gICAg IHZvbGF0aWxlIHNpemVfdCBucGFkID0gMCwgbWFzayA9IDE7Ci0gCi0rI2lmZGVmIE9QRU5TU0xf RklQUwotKyAgICBpZiAoRklQU19tb2RlKCkgJiYgIShkaC0+bWV0aC0+ZmxhZ3MgJiBESF9GTEFH X0ZJUFNfTUVUSE9EKQotKyAgICAgICAgJiYgIShkaC0+ZmxhZ3MgJiBESF9GTEFHX05PTl9GSVBT X0FMTE9XKSkgewotKyAgICAgICAgREhlcnIoREhfRl9ESF9DT01QVVRFX0tFWSwgREhfUl9OT05f RklQU19NRVRIT0QpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsjZW5kaWYKLSAgICAg LyogY29tcHV0ZSB0aGUga2V5OyByZXQgaXMgY29uc3RhbnQgdW5sZXNzIGNvbXB1dGVfa2V5IGlz IGV4dGVybmFsICovCi0gICAgIGlmICgocmV0ID0gZGgtPm1ldGgtPmNvbXB1dGVfa2V5KGtleSwg cHViX2tleSwgZGgpKSA8PSAwKQotICAgICAgICAgcmV0dXJuIHJldDsKLUBAIC0xMDksNiArMTE5 LDE0IEBAIHN0YXRpYyBpbnQgZ2VuZXJhdGVfa2V5KERIICpkaCkKLSAgICAgQk5fTU9OVF9DVFgg Km1vbnQgPSBOVUxMOwotICAgICBCSUdOVU0gKnB1Yl9rZXkgPSBOVUxMLCAqcHJpdl9rZXkgPSBO VUxMOwotIAotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgaWYgKEZJUFNfbW9kZSgpCi0rICAg ICAgICAmJiAoQk5fbnVtX2JpdHMoZGgtPnApIDwgT1BFTlNTTF9ESF9GSVBTX01JTl9NT0RVTFVT X0JJVFMpKSB7Ci0rICAgICAgICBESGVycihESF9GX0dFTkVSQVRFX0tFWSwgREhfUl9LRVlfU0la RV9UT09fU01BTEwpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsjZW5kaWYKLSsKLSAg ICAgaWYgKEJOX251bV9iaXRzKGRoLT5wKSA+IE9QRU5TU0xfREhfTUFYX01PRFVMVVNfQklUUykg ewotICAgICAgICAgREhlcnIoREhfRl9HRU5FUkFURV9LRVksIERIX1JfTU9EVUxVU19UT09fTEFS R0UpOwotICAgICAgICAgcmV0dXJuIDA7Ci1AQCAtMjA2LDYgKzIyNCwxMyBAQCBzdGF0aWMgaW50 IGNvbXB1dGVfa2V5KHVuc2lnbmVkIGNoYXIgKmtlCi0gICAgICAgICBESGVycihESF9GX0NPTVBV VEVfS0VZLCBESF9SX01PRFVMVVNfVE9PX0xBUkdFKTsKLSAgICAgICAgIGdvdG8gZXJyOwotICAg ICB9Ci0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyAgICBpZiAoRklQU19tb2RlKCkKLSsgICAgICAg ICYmIChCTl9udW1fYml0cyhkaC0+cCkgPCBPUEVOU1NMX0RIX0ZJUFNfTUlOX01PRFVMVVNfQklU UykpIHsKLSsgICAgICAgIERIZXJyKERIX0ZfQ09NUFVURV9LRVksIERIX1JfS0VZX1NJWkVfVE9P X1NNQUxMKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rI2VuZGlmCi0gCi0gICAgIGN0 eCA9IEJOX0NUWF9uZXcoKTsKLSAgICAgaWYgKGN0eCA9PSBOVUxMKQotQEAgLTI1NSw2ICsyODAs OSBAQCBzdGF0aWMgaW50IGRoX2JuX21vZF9leHAoY29uc3QgREggKmRoLCBCCi0gCi0gc3RhdGlj IGludCBkaF9pbml0KERIICpkaCkKLSB7Ci0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyAgICBGSVBT X3NlbGZ0ZXN0X2NoZWNrKCk7Ci0rI2VuZGlmCi0gICAgIGRoLT5mbGFncyB8PSBESF9GTEFHX0NB Q0hFX01PTlRfUDsKLSAgICAgcmV0dXJuIDE7Ci0gfQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWov Y3J5cHRvL2RoL2RoX3BtZXRoLmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZGgvZGhfcG1l dGguYwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kaC9kaF9wbWV0aC5jLmZpcHMJMjAyMS0w Mi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8v ZGgvZGhfcG1ldGguYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE5NjczNDUwMCArMDEwMAotQEAgLTQ4 MCw3ICs0ODAsNyBAQCBzdGF0aWMgaW50IHBrZXlfZGhfZGVyaXZlKEVWUF9QS0VZX0NUWCAqCi0g Ci0gY29uc3QgRVZQX1BLRVlfTUVUSE9EIGRoX3BrZXlfbWV0aCA9IHsKLSAgICAgRVZQX1BLRVlf REgsCi0tICAgIDAsCi0rICAgIEVWUF9QS0VZX0ZMQUdfRklQUywKLSAgICAgcGtleV9kaF9pbml0 LAotICAgICBwa2V5X2RoX2NvcHksCi0gICAgIHBrZXlfZGhfY2xlYW51cCwKLUBAIC01MTQsNyAr NTE0LDcgQEAgY29uc3QgRVZQX1BLRVlfTUVUSE9EIGRoX3BrZXlfbWV0aCA9IHsKLSAKLSBjb25z dCBFVlBfUEtFWV9NRVRIT0QgZGh4X3BrZXlfbWV0aCA9IHsKLSAgICAgRVZQX1BLRVlfREhYLAot LSAgICAwLAotKyAgICBFVlBfUEtFWV9GTEFHX0ZJUFMsCi0gICAgIHBrZXlfZGhfaW5pdCwKLSAg ICAgcGtleV9kaF9jb3B5LAotICAgICBwa2V5X2RoX2NsZWFudXAsCi1kaWZmIC11cCBvcGVuc3Ns LTEuMS4xai9jcnlwdG8vZHNhL2RzYV9lcnIuYy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9k c2EvZHNhX2Vyci5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2RzYS9kc2FfZXJyLmMuZmlw cwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFq L2NyeXB0by9kc2EvZHNhX2Vyci5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk2NzM0NTAwICswMTAw Ci1AQCAtMTYsMTIgKzE2LDE1IEBACi0gc3RhdGljIGNvbnN0IEVSUl9TVFJJTkdfREFUQSBEU0Ff c3RyX2Z1bmN0c1tdID0gewotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9EU0EsIERTQV9GX0RTQVBB UkFNU19QUklOVCwgMCksICJEU0FwYXJhbXNfcHJpbnQifSwKLSAgICAge0VSUl9QQUNLKEVSUl9M SUJfRFNBLCBEU0FfRl9EU0FQQVJBTVNfUFJJTlRfRlAsIDApLCAiRFNBcGFyYW1zX3ByaW50X2Zw In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0RTQSwgRFNBX0ZfRFNBX0JVSUxUSU5fS0VZR0VO LCAwKSwgImRzYV9idWlsdGluX2tleWdlbiJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9EU0Es IERTQV9GX0RTQV9CVUlMVElOX1BBUkFNR0VOLCAwKSwKLSAgICAgICJkc2FfYnVpbHRpbl9wYXJh bWdlbiJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9EU0EsIERTQV9GX0RTQV9CVUlMVElOX1BB UkFNR0VOMiwgMCksCi0gICAgICAiZHNhX2J1aWx0aW5fcGFyYW1nZW4yIn0sCi0gICAgIHtFUlJf UEFDSyhFUlJfTElCX0RTQSwgRFNBX0ZfRFNBX0RPX1NJR04sIDApLCAiRFNBX2RvX3NpZ24ifSwK LSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRFNBLCBEU0FfRl9EU0FfRE9fVkVSSUZZLCAwKSwgIkRT QV9kb192ZXJpZnkifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfRFNBLCBEU0FfRl9EU0FfR0VO RVJBVEVfS0VZLCAwKSwgIkRTQV9nZW5lcmF0ZV9rZXkifSwKLSsgICAge0VSUl9QQUNLKEVSUl9M SUJfRFNBLCBEU0FfRl9EU0FfR0VORVJBVEVfUEFSQU1FVEVSU19FWCwgMCksICJEU0FfZ2VuZXJh dGVfcGFyYW1ldGVyc19leCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9EU0EsIERTQV9GX0RT QV9NRVRIX0RVUCwgMCksICJEU0FfbWV0aF9kdXAifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJf RFNBLCBEU0FfRl9EU0FfTUVUSF9ORVcsIDApLCAiRFNBX21ldGhfbmV3In0sCi0gICAgIHtFUlJf UEFDSyhFUlJfTElCX0RTQSwgRFNBX0ZfRFNBX01FVEhfU0VUMV9OQU1FLCAwKSwgIkRTQV9tZXRo X3NldDFfbmFtZSJ9LAotQEAgLTUxLDExICs1NCwxNCBAQCBzdGF0aWMgY29uc3QgRVJSX1NUUklO R19EQVRBIERTQV9zdHJfcmVhCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0RTQSwgMCwgRFNBX1Jf SU5WQUxJRF9ESUdFU1RfVFlQRSksCi0gICAgICJpbnZhbGlkIGRpZ2VzdCB0eXBlIn0sCi0gICAg IHtFUlJfUEFDSyhFUlJfTElCX0RTQSwgMCwgRFNBX1JfSU5WQUxJRF9QQVJBTUVURVJTKSwgImlu dmFsaWQgcGFyYW1ldGVycyJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9EU0EsIDAsIERTQV9S X0tFWV9TSVpFX0lOVkFMSUQpLCAia2V5IHNpemUgaW52YWxpZCJ9LAotKyAgICB7RVJSX1BBQ0so RVJSX0xJQl9EU0EsIDAsIERTQV9SX0tFWV9TSVpFX1RPT19TTUFMTCksICJrZXkgc2l6ZSB0b28g c21hbGwifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRFNBLCAwLCBEU0FfUl9NSVNTSU5HX1BB UkFNRVRFUlMpLCAibWlzc2luZyBwYXJhbWV0ZXJzIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElC X0RTQSwgMCwgRFNBX1JfTUlTU0lOR19QUklWQVRFX0tFWSksCi0gICAgICJtaXNzaW5nIHByaXZh dGUga2V5In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0RTQSwgMCwgRFNBX1JfTU9EVUxVU19U T09fTEFSR0UpLCAibW9kdWx1cyB0b28gbGFyZ2UifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJf RFNBLCAwLCBEU0FfUl9OT19QQVJBTUVURVJTX1NFVCksICJubyBwYXJhbWV0ZXJzIHNldCJ9LAot KyAgICB7RVJSX1BBQ0soRVJSX0xJQl9EU0EsIDAsIERTQV9SX05PTl9GSVBTX0RTQV9NRVRIT0Qp LCAibm9uIEZJUFMgRFNBIG1ldGhvZCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9EU0EsIDAs IERTQV9SX1BBUkFNRVRFUl9FTkNPRElOR19FUlJPUiksCi0gICAgICJwYXJhbWV0ZXIgZW5jb2Rp bmcgZXJyb3IifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRFNBLCAwLCBEU0FfUl9RX05PVF9Q UklNRSksICJxIG5vdCBwcmltZSJ9LAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2Rz YS9kc2FfZ2VuLmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZHNhL2RzYV9nZW4uYwotLS0t IG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kc2EvZHNhX2dlbi5jLmZpcHMJMjAyMS0wMi0xNiAxNjoy NDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZHNhL2RzYV9n ZW4uYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE5NjczNDUwMCArMDEwMAotQEAgLTIyLDEyICsyMiwy MiBAQAotICNpbmNsdWRlIDxvcGVuc3NsL3JhbmQuaD4KLSAjaW5jbHVkZSA8b3BlbnNzbC9zaGEu aD4KLSAjaW5jbHVkZSAiZHNhX2xvY2FsLmgiCi0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyMgaW5j bHVkZSA8b3BlbnNzbC9maXBzLmg+Ci0rI2VuZGlmCi0gCi0gaW50IERTQV9nZW5lcmF0ZV9wYXJh bWV0ZXJzX2V4KERTQSAqcmV0LCBpbnQgYml0cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqc2VlZF9pbiwgaW50IHNlZWRfbGVuLAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgKmNvdW50ZXJfcmV0LCB1bnNpZ25lZCBsb25n ICpoX3JldCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQk5fR0VOQ0IgKmNiKQot IHsKLSsjIGlmZGVmIE9QRU5TU0xfRklQUwotKyAgICBpZiAoRklQU19tb2RlKCkgJiYgIShyZXQt Pm1ldGgtPmZsYWdzICYgRFNBX0ZMQUdfRklQU19NRVRIT0QpCi0rICAgICAgICAmJiAhKHJldC0+ ZmxhZ3MgJiBEU0FfRkxBR19OT05fRklQU19BTExPVykpIHsKLSsgICAgICAgIERTQWVycihEU0Ff Rl9EU0FfR0VORVJBVEVfUEFSQU1FVEVSU19FWCwgRFNBX1JfTk9OX0ZJUFNfRFNBX01FVEhPRCk7 Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKyMgZW5kaWYKLSAgICAgaWYgKHJldC0+bWV0 aC0+ZHNhX3BhcmFtZ2VuKQotICAgICAgICAgcmV0dXJuIHJldC0+bWV0aC0+ZHNhX3BhcmFtZ2Vu KHJldCwgYml0cywgc2VlZF9pbiwgc2VlZF9sZW4sCi0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY291bnRlcl9yZXQsIGhfcmV0LCBjYik7Ci1AQCAtMzUsOSArNDUsMTUg QEAgaW50IERTQV9nZW5lcmF0ZV9wYXJhbWV0ZXJzX2V4KERTQSAqcmV0LAotICAgICAgICAgY29u c3QgRVZQX01EICpldnBtZCA9IGJpdHMgPj0gMjA0OCA/IEVWUF9zaGEyNTYoKSA6IEVWUF9zaGEx KCk7Ci0gICAgICAgICBzaXplX3QgcWJpdHMgPSBFVlBfTURfc2l6ZShldnBtZCkgKiA4OwotIAot KyMgaWZkZWYgT1BFTlNTTF9GSVBTCi0rICAgICAgICByZXR1cm4gZHNhX2J1aWx0aW5fcGFyYW1n ZW4yKHJldCwgYml0cywgcWJpdHMsIGV2cG1kLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg c2VlZF9pbiwgc2VlZF9sZW4sIC0xLCBOVUxMLCBjb3VudGVyX3JldCwKLSsgICAgICAgICAgICAg ICAgICAgICAgICAgIGhfcmV0LCBjYik7Ci0rIyBlbHNlCi0gICAgICAgICByZXR1cm4gZHNhX2J1 aWx0aW5fcGFyYW1nZW4ocmV0LCBiaXRzLCBxYml0cywgZXZwbWQsCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc2VlZF9pbiwgc2VlZF9sZW4sIE5VTEwsIGNvdW50ZXJfcmV0 LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhfcmV0LCBjYik7Ci0rIyBl bmRpZgotICAgICB9Ci0gfQotIAotQEAgLTMwOSw3ICszMjUsNyBAQCBpbnQgZHNhX2J1aWx0aW5f cGFyYW1nZW4yKERTQSAqcmV0LCBzaXplCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQg KmNvdW50ZXJfcmV0LCB1bnNpZ25lZCBsb25nICpoX3JldCwKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgIEJOX0dFTkNCICpjYikKLSB7Ci0tICAgIGludCBvayA9IC0xOwotKyAgICBpbnQgb2sg PSAwOwotICAgICB1bnNpZ25lZCBjaGFyICpzZWVkID0gTlVMTCwgKnNlZWRfdG1wID0gTlVMTDsK LSAgICAgdW5zaWduZWQgY2hhciBtZFtFVlBfTUFYX01EX1NJWkVdOwotICAgICBpbnQgbWRzaXpl OwotQEAgLTMzMiw2ICszNDgsMjAgQEAgaW50IGRzYV9idWlsdGluX3BhcmFtZ2VuMihEU0EgKnJl dCwgc2l6ZQotICAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAKLSsjIGlmZGVmIE9QRU5TU0xf RklQUwotKyAgICBpZiAoRklQU19zZWxmdGVzdF9mYWlsZWQoKSkgewotKyAgICAgICAgRklQU2Vy cihGSVBTX0ZfRFNBX0JVSUxUSU5fUEFSQU1HRU4yLCBGSVBTX1JfRklQU19TRUxGVEVTVF9GQUlM RUQpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsKLSsgICAgaWYgKEZJUFNfbW9kZSgp ICYmCi0rICAgICAgICAoTCAhPSAyMDQ4IHx8IE4gIT0gMjI0KSAmJiAoTCAhPSAyMDQ4IHx8IE4g IT0gMjU2KSAmJgotKyAgICAgICAgKEwgIT0gMzA3MiB8fCBOICE9IDI1NikpIHsKLSsgICAgICAg IERTQWVycihEU0FfRl9EU0FfQlVJTFRJTl9QQVJBTUdFTjIsIERTQV9SX0tFWV9TSVpFX0lOVkFM SUQpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsjIGVuZGlmCi0rCi0gICAgIGlmIChl dnBtZCA9PSBOVUxMKSB7Ci0gICAgICAgICBpZiAoTiA9PSAxNjApCi0gICAgICAgICAgICAgZXZw bWQgPSBFVlBfc2hhMSgpOwotQEAgLTQzMiw5ICs0NjIsMTAgQEAgaW50IGRzYV9idWlsdGluX3Bh cmFtZ2VuMihEU0EgKnJldCwgc2l6ZQotICAgICAgICAgICAgICAgICBnb3RvIGVycjsKLSAgICAg ICAgICAgICAvKiBQcm92aWRlZCBzZWVkIGRpZG4ndCBwcm9kdWNlIGEgcHJpbWU6IGVycm9yICov Ci0gICAgICAgICAgICAgaWYgKHNlZWRfaW4pIHsKLS0gICAgICAgICAgICAgICAgb2sgPSAwOwot LSAgICAgICAgICAgICAgICBEU0FlcnIoRFNBX0ZfRFNBX0JVSUxUSU5fUEFSQU1HRU4yLCBEU0Ff Ul9RX05PVF9QUklNRSk7Ci0tICAgICAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgICAg ICAgICAvKiBEaWZmZXJlbnQgc2VlZF9vdXQgd2lsbCBpbmRpY2F0ZSB0aGF0IHNlZWRfaW4KLSsg ICAgICAgICAgICAgICAgICogZGlkIG5vdCBnZW5lcmF0ZSBwcmltZXMuCi0rICAgICAgICAgICAg ICAgICAqLwotKyAgICAgICAgICAgICAgICBzZWVkX2luID0gTlVMTDsKLSAgICAgICAgICAgICB9 Ci0gCi0gICAgICAgICAgICAgLyogZG8gYSBjYWxsYmFjayBjYWxsICovCi1AQCAtNTIwLDExICs1 NTEsMTQgQEAgaW50IGRzYV9idWlsdGluX3BhcmFtZ2VuMihEU0EgKnJldCwgc2l6ZQotICAgICAg ICAgICAgIGlmIChjb3VudGVyID49IChpbnQpKDQgKiBMKSkKLSAgICAgICAgICAgICAgICAgYnJl YWs7Ci0gICAgICAgICB9Ci0rI2lmIDAKLSsgICAgICAgIC8qIENhbm5vdCBoYXBwZW4gKi8KLSAg ICAgICAgIGlmIChzZWVkX2luKSB7Ci0gICAgICAgICAgICAgb2sgPSAwOwotICAgICAgICAgICAg IERTQWVycihEU0FfRl9EU0FfQlVJTFRJTl9QQVJBTUdFTjIsIERTQV9SX0lOVkFMSURfUEFSQU1F VEVSUyk7Ci0gICAgICAgICAgICAgZ290byBlcnI7Ci0gICAgICAgICB9Ci0rI2VuZGlmCi0gICAg IH0KLSAgZW5kOgotICAgICBpZiAoIUJOX0dFTkNCX2NhbGwoY2IsIDIsIDEpKQotQEAgLTU5NSw3 ICs2MjksNyBAQCBpbnQgZHNhX2J1aWx0aW5fcGFyYW1nZW4yKERTQSAqcmV0LCBzaXplCi0gICAg ICAgICBCTl9mcmVlKHJldC0+Zyk7Ci0gICAgICAgICByZXQtPmcgPSBCTl9kdXAoZyk7Ci0gICAg ICAgICBpZiAocmV0LT5wID09IE5VTEwgfHwgcmV0LT5xID09IE5VTEwgfHwgcmV0LT5nID09IE5V TEwpIHsKLS0gICAgICAgICAgICBvayA9IC0xOwotKyAgICAgICAgICAgIG9rID0gMDsKLSAgICAg ICAgICAgICBnb3RvIGVycjsKLSAgICAgICAgIH0KLSAgICAgICAgIGlmIChjb3VudGVyX3JldCAh PSBOVUxMKQotQEAgLTYxMiwzICs2NDYsNTMgQEAgaW50IGRzYV9idWlsdGluX3BhcmFtZ2VuMihE U0EgKnJldCwgc2l6ZQotICAgICBFVlBfTURfQ1RYX2ZyZWUobWN0eCk7Ci0gICAgIHJldHVybiBv azsKLSB9Ci0rCi0rI2lmZGVmIE9QRU5TU0xfRklQUwotKwotK2ludCBGSVBTX2RzYV9idWlsdGlu X3BhcmFtZ2VuMihEU0EgKnJldCwgc2l6ZV90IEwsIHNpemVfdCBOLAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBjb25zdCBFVlBfTUQgKmV2cG1kLCBjb25zdCB1bnNpZ25lZCBjaGFy ICpzZWVkX2luLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3Qgc2VlZF9s ZW4sIGludCBpZHgsIHVuc2lnbmVkIGNoYXIgKnNlZWRfb3V0LAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBpbnQgKmNvdW50ZXJfcmV0LCB1bnNpZ25lZCBsb25nICpoX3JldCwKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQk5fR0VOQ0IgKmNiKQotK3sKLSsgICAgcmV0 dXJuIGRzYV9idWlsdGluX3BhcmFtZ2VuMihyZXQsIEwsIE4sIGV2cG1kLCBzZWVkX2luLCBzZWVk X2xlbiwKLSsgICAgICAgIGlkeCwgc2VlZF9vdXQsIGNvdW50ZXJfcmV0LCBoX3JldCwgY2IpOwot K30KLSsKLStpbnQgRklQU19kc2FfcGFyYW1nZW5fY2hlY2tfZyhEU0EgKmRzYSkKLSt7Ci0rICAg IEJOX0NUWCAqY3R4OwotKyAgICBCSUdOVU0gKnRtcDsKLSsgICAgQk5fTU9OVF9DVFggKm1vbnQg PSBOVUxMOwotKyAgICBpbnQgcnYgPSAtMTsKLSsKLSsgICAgY3R4ID0gQk5fQ1RYX25ldygpOwot KyAgICBpZiAoY3R4ID09IE5VTEwpCi0rICAgICAgICByZXR1cm4gLTE7Ci0rICAgIGlmIChCTl9j bXAoZHNhLT5nLCBCTl92YWx1ZV9vbmUoKSkgPD0gMCkKLSsgICAgICAgIHJldHVybiAwOwotKyAg ICBpZiAoQk5fY21wKGRzYS0+ZywgZHNhLT5wKSA+PSAwKQotKyAgICAgICAgcmV0dXJuIDA7Ci0r ICAgIEJOX0NUWF9zdGFydChjdHgpOwotKyAgICB0bXAgPSBCTl9DVFhfZ2V0KGN0eCk7Ci0rICAg IGlmICh0bXAgPT0gTlVMTCkKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICBpZiAoKG1vbnQ9Qk5f TU9OVF9DVFhfbmV3KCkpID09IE5VTEwpCi0rICAgICAgICBnb3RvIGVycjsKLSsgICAgaWYgKCFC Tl9NT05UX0NUWF9zZXQobW9udCxkc2EtPnAsY3R4KSkKLSsgICAgICAgIGdvdG8gZXJyOwotKyAg ICAvKiBXb3JrIG91dCBnXnEgbW9kIHAgKi8KLSsgICAgaWYgKCFCTl9tb2RfZXhwX21vbnQodG1w LGRzYS0+Zyxkc2EtPnEsIGRzYS0+cCwgY3R4LCBtb250KSkKLSsgICAgICAgIGdvdG8gZXJyOwot KyAgICBpZiAoIUJOX2NtcCh0bXAsIEJOX3ZhbHVlX29uZSgpKSkKLSsgICAgICAgIHJ2ID0gMTsK LSsgICAgZWxzZQotKyAgICAgICAgcnYgPSAwOwotKyBlcnI6Ci0rICAgIEJOX0NUWF9lbmQoY3R4 KTsKLSsgICAgQk5fTU9OVF9DVFhfZnJlZShtb250KTsKLSsgICAgQk5fQ1RYX2ZyZWUoY3R4KTsK LSsgICAgcmV0dXJuIHJ2OwotK30KLSsKLSsjZW5kaWYKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFq L2NyeXB0by9kc2EvZHNhX2tleS5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2RzYS9kc2Ff a2V5LmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZHNhL2RzYV9rZXkuYy5maXBzCTIwMjEt MDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRv L2RzYS9kc2Ffa2V5LmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTY3MzQ1MDAgKzAxMDAKLUBAIC0x MywxMCArMTMsNDkgQEAKLSAjaW5jbHVkZSA8b3BlbnNzbC9ibi5oPgotICNpbmNsdWRlICJkc2Ff bG9jYWwuaCIKLSAKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rIyBpbmNsdWRlIDxvcGVuc3NsL2Zp cHMuaD4KLSsjIGluY2x1ZGUgImNyeXB0by9maXBzLmgiCi0rCi0rc3RhdGljIGludCBmaXBzX2No ZWNrX2RzYShEU0EgKmRzYSkKLSt7Ci0rICAgIEVWUF9QS0VZICpwazsKLSsgICAgdW5zaWduZWQg Y2hhciB0YnNbXSA9ICJEU0EgUGFpcndpc2UgQ2hlY2sgRGF0YSI7Ci0rICAgIGludCByZXQgPSAw OwotKwotKyAgICBpZiAoKHBrID0gRVZQX1BLRVlfbmV3KCkpID09IE5VTEwpCi0rICAgICAgICBn b3RvIGVycjsKLSsKLSsgICAgRVZQX1BLRVlfc2V0MV9EU0EocGssIGRzYSk7Ci0rCi0rICAgIGlm IChmaXBzX3BrZXlfc2lnbmF0dXJlX3Rlc3QocGssIHRicywgLTEsIE5VTEwsIDAsIE5VTEwsIDAs IE5VTEwpKQotKyAgICAgICAgcmV0ID0gMTsKLSsKLSsgZXJyOgotKyAgICBpZiAocmV0ID09IDAp IHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfQ0hFQ0tfRFNBLCBGSVBTX1JfUEFJUldJ U0VfVEVTVF9GQUlMRUQpOwotKyAgICAgICAgZmlwc19zZXRfc2VsZnRlc3RfZmFpbCgpOwotKyAg ICB9Ci0rCi0rICAgIGlmIChwaykKLSsgICAgICAgIEVWUF9QS0VZX2ZyZWUocGspOwotKwotKyAg ICByZXR1cm4gcmV0OwotK30KLSsKLSsjZW5kaWYKLSsKLSBzdGF0aWMgaW50IGRzYV9idWlsdGlu X2tleWdlbihEU0EgKmRzYSk7Ci0gCi0gaW50IERTQV9nZW5lcmF0ZV9rZXkoRFNBICpkc2EpCi0g ewotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgaWYgKEZJUFNfbW9kZSgpICYmICEoZHNhLT5t ZXRoLT5mbGFncyAmIERTQV9GTEFHX0ZJUFNfTUVUSE9EKQotKyAgICAgICAgJiYgIShkc2EtPmZs YWdzICYgRFNBX0ZMQUdfTk9OX0ZJUFNfQUxMT1cpKSB7Ci0rICAgICAgICBEU0FlcnIoRFNBX0Zf RFNBX0dFTkVSQVRFX0tFWSwgRFNBX1JfTk9OX0ZJUFNfRFNBX01FVEhPRCk7Ci0rICAgICAgICBy ZXR1cm4gMDsKLSsgICAgfQotKyNlbmRpZgotICAgICBpZiAoZHNhLT5tZXRoLT5kc2Ffa2V5Z2Vu KQotICAgICAgICAgcmV0dXJuIGRzYS0+bWV0aC0+ZHNhX2tleWdlbihkc2EpOwotICAgICByZXR1 cm4gZHNhX2J1aWx0aW5fa2V5Z2VuKGRzYSk7Ci1AQCAtMjgsNiArNjcsMTQgQEAgc3RhdGljIGlu dCBkc2FfYnVpbHRpbl9rZXlnZW4oRFNBICpkc2EpCi0gICAgIEJOX0NUWCAqY3R4ID0gTlVMTDsK LSAgICAgQklHTlVNICpwdWJfa2V5ID0gTlVMTCwgKnByaXZfa2V5ID0gTlVMTDsKLSAKLSsjaWZk ZWYgT1BFTlNTTF9GSVBTCi0rICAgIGlmIChGSVBTX21vZGUoKSAmJiAhKGRzYS0+ZmxhZ3MgJiBE U0FfRkxBR19OT05fRklQU19BTExPVykKLSsgICAgICAgICYmIChCTl9udW1fYml0cyhkc2EtPnAp IDwgT1BFTlNTTF9EU0FfRklQU19NSU5fTU9EVUxVU19CSVRTX0dFTikpIHsKLSsgICAgICAgIERT QWVycihEU0FfRl9EU0FfQlVJTFRJTl9LRVlHRU4sIERTQV9SX0tFWV9TSVpFX1RPT19TTUFMTCk7 Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyNlbmRpZgotKwotICAgICBpZiAoKGN0eCA9 IEJOX0NUWF9uZXcoKSkgPT0gTlVMTCkKLSAgICAgICAgIGdvdG8gZXJyOwotIAotQEAgLTY1LDYg KzExMiwxMyBAQCBzdGF0aWMgaW50IGRzYV9idWlsdGluX2tleWdlbihEU0EgKmRzYSkKLSAKLSAg ICAgZHNhLT5wcml2X2tleSA9IHByaXZfa2V5OwotICAgICBkc2EtPnB1Yl9rZXkgPSBwdWJfa2V5 OwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgaWYgKEZJUFNfbW9kZSgpICYmICFmaXBzX2No ZWNrX2RzYShkc2EpKSB7Ci0rICAgICAgICBkc2EtPnB1Yl9rZXkgPSBOVUxMOwotKyAgICAgICAg ZHNhLT5wcml2X2tleSA9IE5VTEw7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyNlbmRp ZgotICAgICBvayA9IDE7Ci0gCi0gIGVycjoKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0 by9kc2EvZHNhX29zc2wuYy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kc2EvZHNhX29zc2wu YwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kc2EvZHNhX29zc2wuYy5maXBzCTIwMjEtMDIt MTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2Rz YS9kc2Ffb3NzbC5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk2NzM0NTAwICswMTAwCi1AQCAtMTQs NiArMTQsOSBAQAotICNpbmNsdWRlIDxvcGVuc3NsL3NoYS5oPgotICNpbmNsdWRlICJkc2FfbG9j YWwuaCIKLSAjaW5jbHVkZSA8b3BlbnNzbC9hc24xLmg+Ci0rI2lmZGVmIE9QRU5TU0xfRklQUwot KyMgaW5jbHVkZSA8b3BlbnNzbC9maXBzLmg+Ci0rI2VuZGlmCi0gCi0gc3RhdGljIERTQV9TSUcg KmRzYV9kb19zaWduKGNvbnN0IHVuc2lnbmVkIGNoYXIgKmRnc3QsIGludCBkbGVuLCBEU0EgKmRz YSk7Ci0gc3RhdGljIGludCBkc2Ffc2lnbl9zZXR1cF9ub19kaWdlc3QoRFNBICpkc2EsIEJOX0NU WCAqY3R4X2luLCBCSUdOVU0gKipraW52cCwKLUBAIC03Nyw2ICs4MCwxOSBAQCBzdGF0aWMgRFNB X1NJRyAqZHNhX2RvX3NpZ24oY29uc3QgdW5zaWduCi0gICAgICAgICBnb3RvIGVycjsKLSAgICAg fQotIAotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgaWYgKEZJUFNfc2VsZnRlc3RfZmFpbGVk KCkpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0RTQV9ET19TSUdOLCBGSVBTX1JfRklQU19T RUxGVEVTVF9GQUlMRUQpOwotKyAgICAgICAgcmV0dXJuIE5VTEw7Ci0rICAgIH0KLSsKLSsgICAg aWYgKEZJUFNfbW9kZSgpICYmICEoZHNhLT5mbGFncyAmIERTQV9GTEFHX05PTl9GSVBTX0FMTE9X KQotKyAgICAgICAgJiYgKEJOX251bV9iaXRzKGRzYS0+cCkgPCBPUEVOU1NMX0RTQV9GSVBTX01J Tl9NT0RVTFVTX0JJVFMpKSB7Ci0rICAgICAgICBEU0FlcnIoRFNBX0ZfRFNBX0RPX1NJR04sIERT QV9SX0tFWV9TSVpFX1RPT19TTUFMTCk7Ci0rICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAgfQot KyNlbmRpZgotKwotICAgICByZXQgPSBEU0FfU0lHX25ldygpOwotICAgICBpZiAocmV0ID09IE5V TEwpCi0gICAgICAgICBnb3RvIGVycjsKLUBAIC0zMTUsNiArMzMxLDE4IEBAIHN0YXRpYyBpbnQg ZHNhX2RvX3ZlcmlmeShjb25zdCB1bnNpZ25lZAotICAgICAgICAgRFNBZXJyKERTQV9GX0RTQV9E T19WRVJJRlksIERTQV9SX0JBRF9RX1ZBTFVFKTsKLSAgICAgICAgIHJldHVybiAtMTsKLSAgICAg fQotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgaWYgKEZJUFNfc2VsZnRlc3RfZmFpbGVkKCkp IHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0RTQV9ET19WRVJJRlksIEZJUFNfUl9GSVBTX1NF TEZURVNUX0ZBSUxFRCk7Ci0rICAgICAgICByZXR1cm4gLTE7Ci0rICAgIH0KLSsKLSsgICAgaWYg KEZJUFNfbW9kZSgpICYmICEoZHNhLT5mbGFncyAmIERTQV9GTEFHX05PTl9GSVBTX0FMTE9XKQot KyAgICAgICAgJiYgKEJOX251bV9iaXRzKGRzYS0+cCkgPCBPUEVOU1NMX0RTQV9GSVBTX01JTl9N T0RVTFVTX0JJVFMpKSB7Ci0rICAgICAgICBEU0FlcnIoRFNBX0ZfRFNBX0RPX1ZFUklGWSwgRFNB X1JfS0VZX1NJWkVfVE9PX1NNQUxMKTsKLSsgICAgICAgIHJldHVybiAtMTsKLSsgICAgfQotKyNl bmRpZgotIAotICAgICBpZiAoQk5fbnVtX2JpdHMoZHNhLT5wKSA+IE9QRU5TU0xfRFNBX01BWF9N T0RVTFVTX0JJVFMpIHsKLSAgICAgICAgIERTQWVycihEU0FfRl9EU0FfRE9fVkVSSUZZLCBEU0Ff Ul9NT0RVTFVTX1RPT19MQVJHRSk7Ci1AQCAtNDAzLDYgKzQzMSw5IEBAIHN0YXRpYyBpbnQgZHNh X2RvX3ZlcmlmeShjb25zdCB1bnNpZ25lZAotIAotIHN0YXRpYyBpbnQgZHNhX2luaXQoRFNBICpk c2EpCi0gewotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgRklQU19zZWxmdGVzdF9jaGVjaygp OwotKyNlbmRpZgotICAgICBkc2EtPmZsYWdzIHw9IERTQV9GTEFHX0NBQ0hFX01PTlRfUDsKLSAg ICAgcmV0dXJuIDE7Ci0gfQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2RzYS9kc2Ff cG1ldGguYy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9kc2EvZHNhX3BtZXRoLmMKLS0tLSBv cGVuc3NsLTEuMS4xai9jcnlwdG8vZHNhL2RzYV9wbWV0aC5jLmZpcHMJMjAyMS0wMi0xNiAxNjoy NDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZHNhL2RzYV9w bWV0aC5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk2NzM0NTAwICswMTAwCi1AQCAtMjExLDggKzIx MSw4IEBAIHN0YXRpYyBpbnQgcGtleV9kc2FfcGFyYW1nZW4oRVZQX1BLRVlfQ1QKLSAgICAgICAg IEJOX0dFTkNCX2ZyZWUocGNiKTsKLSAgICAgICAgIHJldHVybiAwOwotICAgICB9Ci0tICAgIHJl dCA9IGRzYV9idWlsdGluX3BhcmFtZ2VuKGRzYSwgZGN0eC0+bmJpdHMsIGRjdHgtPnFiaXRzLCBk Y3R4LT5wbWQsCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIDAsIE5VTEws IE5VTEwsIE5VTEwsIHBjYik7Ci0rICAgIHJldCA9IGRzYV9idWlsdGluX3BhcmFtZ2VuMihkc2Es IGRjdHgtPm5iaXRzLCBkY3R4LT5xYml0cywgZGN0eC0+cG1kLAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAwLCAtMSwgTlVMTCwgTlVMTCwgTlVMTCwgcGNiKTsKLSAgICAg Qk5fR0VOQ0JfZnJlZShwY2IpOwotICAgICBpZiAocmV0KQotICAgICAgICAgRVZQX1BLRVlfYXNz aWduX0RTQShwa2V5LCBkc2EpOwotQEAgLTI0MSw3ICsyNDEsNyBAQCBzdGF0aWMgaW50IHBrZXlf ZHNhX2tleWdlbihFVlBfUEtFWV9DVFgKLSAKLSBjb25zdCBFVlBfUEtFWV9NRVRIT0QgZHNhX3Br ZXlfbWV0aCA9IHsKLSAgICAgRVZQX1BLRVlfRFNBLAotLSAgICBFVlBfUEtFWV9GTEFHX0FVVE9B UkdMRU4sCi0rICAgIEVWUF9QS0VZX0ZMQUdfQVVUT0FSR0xFTiB8IEVWUF9QS0VZX0ZMQUdfRklQ UywKLSAgICAgcGtleV9kc2FfaW5pdCwKLSAgICAgcGtleV9kc2FfY29weSwKLSAgICAgcGtleV9k c2FfY2xlYW51cCwKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9lYy9lY2RoX29zc2wu Yy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9lYy9lY2RoX29zc2wuYwotLS0tIG9wZW5zc2wt MS4xLjFqL2NyeXB0by9lYy9lY2RoX29zc2wuYy5maXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAw MDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2VjL2VjZGhfb3NzbC5jCTIw MjEtMDMtMDMgMTI6NTc6NDIuMTk2NzM0NTAwICswMTAwCi1AQCAtMTksOSArMTksMjAgQEAKLSAj aW5jbHVkZSA8b3BlbnNzbC9lYy5oPgotICNpbmNsdWRlICJlY19sb2NhbC5oIgotIAotKyNpZmRl ZiBPUEVOU1NMX0ZJUFMKLSsjIGluY2x1ZGUgPG9wZW5zc2wvZmlwcy5oPgotKyNlbmRpZgotKwot IGludCBvc3NsX2VjZGhfY29tcHV0ZV9rZXkodW5zaWduZWQgY2hhciAqKnBzZWMsIHNpemVfdCAq cHNlY2xlbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVDX1BPSU5UICpwdWJf a2V5LCBjb25zdCBFQ19LRVkgKmVjZGgpCi0gewotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAg aWYgKEZJUFNfc2VsZnRlc3RfZmFpbGVkKCkpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0VD REhfQ09NUFVURV9LRVksIEZJUFNfUl9GSVBTX1NFTEZURVNUX0ZBSUxFRCk7Ci0rICAgICAgICBy ZXR1cm4gLTE7Ci0rICAgIH0KLSsjZW5kaWYKLSsKLSAgICAgaWYgKGVjZGgtPmdyb3VwLT5tZXRo LT5lY2RoX2NvbXB1dGVfa2V5ID09IE5VTEwpIHsKLSAgICAgICAgIEVDZXJyKEVDX0ZfT1NTTF9F Q0RIX0NPTVBVVEVfS0VZLCBFQ19SX0NVUlZFX0RPRVNfTk9UX1NVUFBPUlRfRUNESCk7Ci0gICAg ICAgICByZXR1cm4gMDsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9lYy9lY2RzYV9v c3NsLmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZWMvZWNkc2Ffb3NzbC5jCi0tLS0gb3Bl bnNzbC0xLjEuMWovY3J5cHRvL2VjL2VjZHNhX29zc2wuYy5maXBzCTIwMjEtMDItMTYgMTY6MjQ6 MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2VjL2VjZHNhX29z c2wuYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE5NjczNDUwMCArMDEwMAotQEAgLTE0LDYgKzE0LDEw IEBACi0gI2luY2x1ZGUgImNyeXB0by9ibi5oIgotICNpbmNsdWRlICJlY19sb2NhbC5oIgotIAot KyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsjIGluY2x1ZGUgPG9wZW5zc2wvZmlwcy5oPgotKyNlbmRp ZgotKwotIGludCBvc3NsX2VjZHNhX3NpZ24oaW50IHR5cGUsIGNvbnN0IHVuc2lnbmVkIGNoYXIg KmRnc3QsIGludCBkbGVuLAotICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqc2ln LCB1bnNpZ25lZCBpbnQgKnNpZ2xlbiwKLSAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEJJR05V TSAqa2ludiwgY29uc3QgQklHTlVNICpyLCBFQ19LRVkgKmVja2V5KQotQEAgLTE2Myw2ICsxNjcs MTMgQEAgRUNEU0FfU0lHICpvc3NsX2VjZHNhX3NpZ25fc2lnKGNvbnN0IHVucwotICAgICBFQ0RT QV9TSUcgKnJldDsKLSAgICAgY29uc3QgQklHTlVNICpwcml2X2tleTsKLSAKLSsjaWZkZWYgT1BF TlNTTF9GSVBTCi0rICAgIGlmIChGSVBTX3NlbGZ0ZXN0X2ZhaWxlZCgpKSB7Ci0rICAgICAgICBG SVBTZXJyKEZJUFNfRl9PU1NMX0VDRFNBX1NJR05fU0lHLCBGSVBTX1JfRklQU19TRUxGVEVTVF9G QUlMRUQpOwotKyAgICAgICAgcmV0dXJuIE5VTEw7Ci0rICAgIH0KLSsjZW5kaWYKLSsKLSAgICAg Z3JvdXAgPSBFQ19LRVlfZ2V0MF9ncm91cChlY2tleSk7Ci0gICAgIHByaXZfa2V5ID0gRUNfS0VZ X2dldDBfcHJpdmF0ZV9rZXkoZWNrZXkpOwotIAotQEAgLTMyNSw2ICszMzYsMTMgQEAgaW50IG9z c2xfZWNkc2FfdmVyaWZ5X3NpZyhjb25zdCB1bnNpZ25lZAotICAgICBjb25zdCBFQ19HUk9VUCAq Z3JvdXA7Ci0gICAgIGNvbnN0IEVDX1BPSU5UICpwdWJfa2V5OwotIAotKyNpZmRlZiBPUEVOU1NM X0ZJUFMKLSsgICAgaWYgKEZJUFNfc2VsZnRlc3RfZmFpbGVkKCkpIHsKLSsgICAgICAgIEZJUFNl cnIoRklQU19GX09TU0xfRUNEU0FfVkVSSUZZX1NJRywgRklQU19SX0ZJUFNfU0VMRlRFU1RfRkFJ TEVEKTsKLSsgICAgICAgIHJldHVybiAtMTsKLSsgICAgfQotKyNlbmRpZgotKwotICAgICAvKiBj aGVjayBpbnB1dCB2YWx1ZXMgKi8KLSAgICAgaWYgKGVja2V5ID09IE5VTEwgfHwgKGdyb3VwID0g RUNfS0VZX2dldDBfZ3JvdXAoZWNrZXkpKSA9PSBOVUxMIHx8Ci0gICAgICAgICAocHViX2tleSA9 IEVDX0tFWV9nZXQwX3B1YmxpY19rZXkoZWNrZXkpKSA9PSBOVUxMIHx8IHNpZyA9PSBOVUxMKSB7 Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZWMvZWNfa2V5LmMuZmlwcyBvcGVuc3Ns LTEuMS4xai9jcnlwdG8vZWMvZWNfa2V5LmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZWMv ZWNfa2V5LmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9w ZW5zc2wtMS4xLjFqL2NyeXB0by9lYy9lY19rZXkuYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE5Njcz NDUwMCArMDEwMAotQEAgLTE3OSwxNCArMTc5LDYyIEBAIEVOR0lORSAqRUNfS0VZX2dldDBfZW5n aW5lKGNvbnN0IEVDX0tFWQotICAgICByZXR1cm4gZWNrZXktPmVuZ2luZTsKLSB9Ci0gCi0rI2lm ZGVmIE9QRU5TU0xfRklQUwotKwotKyMgaW5jbHVkZSA8b3BlbnNzbC9maXBzLmg+Ci0rIyBpbmNs dWRlICJjcnlwdG8vZmlwcy5oIgotKwotK3N0YXRpYyBpbnQgZmlwc19jaGVja19lYyhFQ19LRVkg KmtleSkKLSt7Ci0rICAgIEVWUF9QS0VZICpwazsKLSsgICAgdW5zaWduZWQgY2hhciB0YnNbXSA9 ICJFQ0RTQSBQYWlyd2lzZSBDaGVjayBEYXRhIjsKLSsgICAgaW50IHJldCA9IDA7Ci0rCi0rICAg IGlmICghRUNfS0VZX2Nhbl9zaWduKGtleSkpIC8qIG5vIHRlc3QgZm9yIG5vbi1zaWduaW5nIGtl eXMgKi8KLSsgICAgICAgIHJldHVybiAxOwotKwotKyAgICBpZiAoKHBrID0gRVZQX1BLRVlfbmV3 KCkpID09IE5VTEwpCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgRVZQX1BLRVlfc2V0MV9F Q19LRVkocGssIGtleSk7Ci0rCi0rICAgIGlmIChmaXBzX3BrZXlfc2lnbmF0dXJlX3Rlc3QocGss IHRicywgLTEsIE5VTEwsIDAsIE5VTEwsIDAsIE5VTEwpKQotKyAgICAgICAgcmV0ID0gMTsKLSsK LSsgZXJyOgotKyAgICBpZiAocmV0ID09IDApIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJ UFNfQ0hFQ0tfRUMsIEZJUFNfUl9QQUlSV0lTRV9URVNUX0ZBSUxFRCk7Ci0rICAgICAgICBmaXBz X3NldF9zZWxmdGVzdF9mYWlsKCk7Ci0rICAgIH0KLSsgICAgaWYgKHBrKQotKyAgICAgICAgRVZQ X1BLRVlfZnJlZShwayk7Ci0rICAgIHJldHVybiByZXQ7Ci0rfQotKwotKyNlbmRpZgotKwotIGlu dCBFQ19LRVlfZ2VuZXJhdGVfa2V5KEVDX0tFWSAqZWNrZXkpCi0gewotKyNpZmRlZiBPUEVOU1NM X0ZJUFMKLSsgICAgaWYgKEZJUFNfc2VsZnRlc3RfZmFpbGVkKCkpIHsKLSsgICAgICAgIEVDZXJy KEVDX0ZfRUNfS0VZX0dFTkVSQVRFX0tFWSwgRUNfUl9OT1RfSU5JVElBTElaRUQpOwotKyAgICAg ICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsjZW5kaWYKLSAgICAgaWYgKGVja2V5ID09IE5VTEwgfHwg ZWNrZXktPmdyb3VwID09IE5VTEwpIHsKLSAgICAgICAgIEVDZXJyKEVDX0ZfRUNfS0VZX0dFTkVS QVRFX0tFWSwgRVJSX1JfUEFTU0VEX05VTExfUEFSQU1FVEVSKTsKLSAgICAgICAgIHJldHVybiAw OwotICAgICB9Ci0tICAgIGlmIChlY2tleS0+bWV0aC0+a2V5Z2VuICE9IE5VTEwpCi0tICAgICAg ICByZXR1cm4gZWNrZXktPm1ldGgtPmtleWdlbihlY2tleSk7Ci0rICAgIGlmIChlY2tleS0+bWV0 aC0+a2V5Z2VuICE9IE5VTEwpIHsKLSsgICAgICAgIGludCBydiA9IGVja2V5LT5tZXRoLT5rZXln ZW4oZWNrZXkpOwotKwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgICAgIGlmIChydiA+IDAg JiYgRklQU19tb2RlKCkpIHsKLSsgICAgICAgICAgICBydiA9IGZpcHNfY2hlY2tfZWMoZWNrZXkp OwotKyAgICAgICAgfQotKyNlbmRpZgotKyAgICAgICAgcmV0dXJuIHJ2OwotKyAgICB9Ci0gICAg IEVDZXJyKEVDX0ZfRUNfS0VZX0dFTkVSQVRFX0tFWSwgRUNfUl9PUEVSQVRJT05fTk9UX1NVUFBP UlRFRCk7Ci0gICAgIHJldHVybiAwOwotIH0KLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0 by9lYy9lY19wbWV0aC5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2VjL2VjX3BtZXRoLmMK LS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZWMvZWNfcG1ldGguYy5maXBzCTIwMjEtMDItMTYg MTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2VjL2Vj X3BtZXRoLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTc3MzQ1MDkgKzAxMDAKLUBAIC00MzgsNyAr NDM4LDcgQEAgc3RhdGljIGludCBwa2V5X2VjX2tleWdlbihFVlBfUEtFWV9DVFggKgotIAotIGNv bnN0IEVWUF9QS0VZX01FVEhPRCBlY19wa2V5X21ldGggPSB7Ci0gICAgIEVWUF9QS0VZX0VDLAot LSAgICAwLAotKyAgICBFVlBfUEtFWV9GTEFHX0ZJUFMsCi0gICAgIHBrZXlfZWNfaW5pdCwKLSAg ICAgcGtleV9lY19jb3B5LAotICAgICBwa2V5X2VjX2NsZWFudXAsCi1kaWZmIC11cCBvcGVuc3Ns LTEuMS4xai9jcnlwdG8vZXZwL2RpZ2VzdC5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2 cC9kaWdlc3QuYwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZGlnZXN0LmMuZmlwcwky MDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2Ny eXB0by9ldnAvZGlnZXN0LmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTc3MzQ1MDkgKzAxMDAKLUBA IC0xNCw2ICsxNCw5IEBACi0gI2luY2x1ZGUgPG9wZW5zc2wvZW5naW5lLmg+Ci0gI2luY2x1ZGUg ImNyeXB0by9ldnAuaCIKLSAjaW5jbHVkZSAiZXZwX2xvY2FsLmgiCi0rI2lmZGVmIE9QRU5TU0xf RklQUwotKyMgaW5jbHVkZSA8b3BlbnNzbC9maXBzLmg+Ci0rI2VuZGlmCi0gCi0gLyogVGhpcyBj YWxsIGZyZWVzIHJlc291cmNlcyBhc3NvY2lhdGVkIHdpdGggdGhlIGNvbnRleHQgKi8KLSBpbnQg RVZQX01EX0NUWF9yZXNldChFVlBfTURfQ1RYICpjdHgpCi1AQCAtNjYsNiArNjksMTIgQEAgaW50 IEVWUF9EaWdlc3RJbml0KEVWUF9NRF9DVFggKmN0eCwgY29ucwotIGludCBFVlBfRGlnZXN0SW5p dF9leChFVlBfTURfQ1RYICpjdHgsIGNvbnN0IEVWUF9NRCAqdHlwZSwgRU5HSU5FICppbXBsKQot IHsKLSAgICAgRVZQX01EX0NUWF9jbGVhcl9mbGFncyhjdHgsIEVWUF9NRF9DVFhfRkxBR19DTEVB TkVEKTsKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rICAgIGlmIChGSVBTX3NlbGZ0ZXN0X2ZhaWxl ZCgpKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9FVlBfRElHRVNUSU5JVF9FWCwgRklQU19S X0ZJUFNfU0VMRlRFU1RfRkFJTEVEKTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rI2Vu ZGlmCi0gI2lmbmRlZiBPUEVOU1NMX05PX0VOR0lORQotICAgICAvKgotICAgICAgKiBXaGV0aGVy IGl0J3MgbmljZSBvciBub3QsICJJbml0cyIgY2FuIGJlIHVzZWQgb24gIkZpbmFsIidkIGNvbnRl eHRzIHNvCi1AQCAtMTE5LDYgKzEyOCwxNSBAQCBpbnQgRVZQX0RpZ2VzdEluaXRfZXgoRVZQX01E X0NUWCAqY3R4LCBjCi0gICAgIH0KLSAjZW5kaWYKLSAgICAgaWYgKGN0eC0+ZGlnZXN0ICE9IHR5 cGUpIHsKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rICAgICAgICBpZiAoRklQU19tb2RlKCkpIHsK LSsgICAgICAgICAgICBpZiAoISh0eXBlLT5mbGFncyAmIEVWUF9NRF9GTEFHX0ZJUFMpCi0rICAg ICAgICAgICAgICAgICYmICEoY3R4LT5mbGFncyAmIEVWUF9NRF9DVFhfRkxBR19OT05fRklQU19B TExPVykpIHsKLSsgICAgICAgICAgICAgICAgRVZQZXJyKEVWUF9GX0VWUF9ESUdFU1RJTklUX0VY LCBFVlBfUl9ESVNBQkxFRF9GT1JfRklQUyk7Ci0rICAgICAgICAgICAgICAgIHJldHVybiAwOwot KyAgICAgICAgICAgIH0KLSsgICAgICAgIH0KLSsjZW5kaWYKLSAgICAgICAgIGlmIChjdHgtPmRp Z2VzdCAmJiBjdHgtPmRpZ2VzdC0+Y3R4X3NpemUpIHsKLSAgICAgICAgICAgICBPUEVOU1NMX2Ns ZWFyX2ZyZWUoY3R4LT5tZF9kYXRhLCBjdHgtPmRpZ2VzdC0+Y3R4X3NpemUpOwotICAgICAgICAg ICAgIGN0eC0+bWRfZGF0YSA9IE5VTEw7Ci1AQCAtMTUwLDYgKzE2OCwxMCBAQCBpbnQgRVZQX0Rp Z2VzdEluaXRfZXgoRVZQX01EX0NUWCAqY3R4LCBjCi0gCi0gaW50IEVWUF9EaWdlc3RVcGRhdGUo RVZQX01EX0NUWCAqY3R4LCBjb25zdCB2b2lkICpkYXRhLCBzaXplX3QgY291bnQpCi0gewotKyNp ZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgRklQU19zZWxmdGVzdF9jaGVjaygpOwotKyNlbmRpZgot KwotICAgICBpZiAoY291bnQgPT0gMCkKLSAgICAgICAgIHJldHVybiAxOwotIAotQEAgLTE3MCw2 ICsxOTIsOSBAQCBpbnQgRVZQX0RpZ2VzdEZpbmFsX2V4KEVWUF9NRF9DVFggKmN0eCwKLSB7Ci0g ICAgIGludCByZXQ7Ci0gCi0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyAgICBGSVBTX3NlbGZ0ZXN0 X2NoZWNrKCk7Ci0rI2VuZGlmCi0gICAgIE9QRU5TU0xfYXNzZXJ0KGN0eC0+ZGlnZXN0LT5tZF9z aXplIDw9IEVWUF9NQVhfTURfU0laRSk7Ci0gICAgIHJldCA9IGN0eC0+ZGlnZXN0LT5maW5hbChj dHgsIG1kKTsKLSAgICAgaWYgKHNpemUgIT0gTlVMTCkKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFq L2NyeXB0by9ldnAvZV9hZXMuYy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZV9hZXMu YwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZV9hZXMuYy5maXBzCTIwMjEtMDItMTYg MTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9l X2Flcy5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk3NzM0NTA5ICswMTAwCi1AQCAtMzk3LDcgKzM5 Nyw3IEBAIHN0YXRpYyBpbnQgYWVzbmlfeHRzX2luaXRfa2V5KEVWUF9DSVBIRVIKLSAgICAgICAg ICAqIFRoaXMgYWRkcmVzc2VzIFJvZ2F3YXkncyB2dWxuZXJhYmlsaXR5LgotICAgICAgICAgICog U2VlIGNvbW1lbnQgaW4gYWVzX3h0c19pbml0X2tleSgpIGJlbG93LgotICAgICAgICAgICovCi0t ICAgICAgICBpZiAoZW5jICYmIENSWVBUT19tZW1jbXAoa2V5LCBrZXkgKyBieXRlcywgYnl0ZXMp ID09IDApIHsKLSsgICAgICAgIGlmIChDUllQVE9fbWVtY21wKGtleSwga2V5ICsgYnl0ZXMsIGJ5 dGVzKSA9PSAwKSB7Ci0gICAgICAgICAgICAgRVZQZXJyKEVWUF9GX0FFU05JX1hUU19JTklUX0tF WSwgRVZQX1JfWFRTX0RVUExJQ0FURURfS0VZUyk7Ci0gICAgICAgICAgICAgcmV0dXJuIDA7Ci0g ICAgICAgICB9Ci1AQCAtODE3LDcgKzgxNyw3IEBAIHN0YXRpYyBpbnQgYWVzX3Q0X3h0c19pbml0 X2tleShFVlBfQ0lQSEUKLSAgICAgICAgICAqIFRoaXMgYWRkcmVzc2VzIFJvZ2F3YXkncyB2dWxu ZXJhYmlsaXR5LgotICAgICAgICAgICogU2VlIGNvbW1lbnQgaW4gYWVzX3h0c19pbml0X2tleSgp IGJlbG93LgotICAgICAgICAgICovCi0tICAgICAgICBpZiAoZW5jICYmIENSWVBUT19tZW1jbXAo a2V5LCBrZXkgKyBieXRlcywgYnl0ZXMpID09IDApIHsKLSsgICAgICAgIGlmIChDUllQVE9fbWVt Y21wKGtleSwga2V5ICsgYnl0ZXMsIGJ5dGVzKSA9PSAwKSB7Ci0gICAgICAgICAgICAgRVZQZXJy KEVWUF9GX0FFU19UNF9YVFNfSU5JVF9LRVksIEVWUF9SX1hUU19EVVBMSUNBVEVEX0tFWVMpOwot ICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgfQotQEAgLTI4MzMsOSArMjgzMyw5IEBA IHN0YXRpYyBpbnQgYWVzX2N0cl9jaXBoZXIoRVZQX0NJUEhFUl9DVFgKLSAgICAgcmV0dXJuIDE7 Ci0gfQotIAotLUJMT0NLX0NJUEhFUl9nZW5lcmljX3BhY2soTklEX2FlcywgMTI4LCAwKQotLSAg ICBCTE9DS19DSVBIRVJfZ2VuZXJpY19wYWNrKE5JRF9hZXMsIDE5MiwgMCkKLS0gICAgQkxPQ0tf Q0lQSEVSX2dlbmVyaWNfcGFjayhOSURfYWVzLCAyNTYsIDApCi0rQkxPQ0tfQ0lQSEVSX2dlbmVy aWNfcGFjayhOSURfYWVzLCAxMjgsIEVWUF9DSVBIX0ZMQUdfRklQUykKLSsgICAgQkxPQ0tfQ0lQ SEVSX2dlbmVyaWNfcGFjayhOSURfYWVzLCAxOTIsIEVWUF9DSVBIX0ZMQUdfRklQUykKLSsgICAg QkxPQ0tfQ0lQSEVSX2dlbmVyaWNfcGFjayhOSURfYWVzLCAyNTYsIEVWUF9DSVBIX0ZMQUdfRklQ UykKLSAKLSBzdGF0aWMgaW50IGFlc19nY21fY2xlYW51cChFVlBfQ0lQSEVSX0NUWCAqYykKLSB7 Ci1AQCAtMjg2OSw2ICsyODY5LDExIEBAIHN0YXRpYyBpbnQgYWVzX2djbV9jdHJsKEVWUF9DSVBI RVJfQ1RYICoKLSAgICAgY2FzZSBFVlBfQ1RSTF9BRUFEX1NFVF9JVkxFTjoKLSAgICAgICAgIGlm IChhcmcgPD0gMCkKLSAgICAgICAgICAgICByZXR1cm4gMDsKLSsjIGlmZGVmIE9QRU5TU0xfRklQ UwotKyAgICAgICAgaWYgKEZJUFNfbW9kZSgpICYmICEoYy0+ZmxhZ3MgJiBFVlBfQ0lQSF9GTEFH X05PTl9GSVBTX0FMTE9XKQotKyAgICAgICAgICAgICYmIGFyZyA8IDEyKQotKyAgICAgICAgICAg IHJldHVybiAwOwotKyMgZW5kaWYKLSAgICAgICAgIC8qIEFsbG9jYXRlIG1lbW9yeSBmb3IgSVYg aWYgbmVlZGVkICovCi0gICAgICAgICBpZiAoKGFyZyA+IEVWUF9NQVhfSVZfTEVOR1RIKSAmJiAo YXJnID4gZ2N0eC0+aXZsZW4pKSB7Ci0gICAgICAgICAgICAgaWYgKGdjdHgtPml2ICE9IGMtPml2 KQotQEAgLTMzMTgsMTEgKzMzMjMsMTQgQEAgc3RhdGljIGludCBhZXNfZ2NtX2NpcGhlcihFVlBf Q0lQSEVSX0NUWAotICAgICAgICAgICAgICAgICB8IEVWUF9DSVBIX0NVU1RPTV9DT1BZIHwgRVZQ X0NJUEhfQ1VTVE9NX0lWX0xFTkdUSCkKLSAKLSBCTE9DS19DSVBIRVJfY3VzdG9tKE5JRF9hZXMs IDEyOCwgMSwgMTIsIGdjbSwgR0NNLAotLSAgICAgICAgICAgICAgICAgICAgRVZQX0NJUEhfRkxB R19BRUFEX0NJUEhFUiB8IENVU1RPTV9GTEFHUykKLSsgICAgICAgICAgICAgICAgICAgIEVWUF9D SVBIX0ZMQUdfRklQUyB8IEVWUF9DSVBIX0ZMQUdfQUVBRF9DSVBIRVIgfAotKyAgICAgICAgICAg ICAgICAgICAgQ1VTVE9NX0ZMQUdTKQotICAgICBCTE9DS19DSVBIRVJfY3VzdG9tKE5JRF9hZXMs IDE5MiwgMSwgMTIsIGdjbSwgR0NNLAotLSAgICAgICAgICAgICAgICAgICAgRVZQX0NJUEhfRkxB R19BRUFEX0NJUEhFUiB8IENVU1RPTV9GTEFHUykKLSsgICAgICAgICAgICAgICAgICAgIEVWUF9D SVBIX0ZMQUdfRklQUyB8IEVWUF9DSVBIX0ZMQUdfQUVBRF9DSVBIRVIgfAotKyAgICAgICAgICAg ICAgICAgICAgQ1VTVE9NX0ZMQUdTKQotICAgICBCTE9DS19DSVBIRVJfY3VzdG9tKE5JRF9hZXMs IDI1NiwgMSwgMTIsIGdjbSwgR0NNLAotLSAgICAgICAgICAgICAgICAgICAgRVZQX0NJUEhfRkxB R19BRUFEX0NJUEhFUiB8IENVU1RPTV9GTEFHUykKLSsgICAgICAgICAgICAgICAgICAgIEVWUF9D SVBIX0ZMQUdfRklQUyB8IEVWUF9DSVBIX0ZMQUdfQUVBRF9DSVBIRVIgfAotKyAgICAgICAgICAg ICAgICAgICAgQ1VTVE9NX0ZMQUdTKQotIAotIHN0YXRpYyBpbnQgYWVzX3h0c19jdHJsKEVWUF9D SVBIRVJfQ1RYICpjLCBpbnQgdHlwZSwgaW50IGFyZywgdm9pZCAqcHRyKQotIHsKLUBAIC0zMzgw LDcgKzMzODgsNyBAQCBzdGF0aWMgaW50IGFlc194dHNfaW5pdF9rZXkoRVZQX0NJUEhFUl9DCi0g ICAgICAgICAgICAgICogICAgICAgQkVGT1JFIHVzaW5nIHRoZSBrZXlzIGluIHRoZSBYVFMtQUVT IGFsZ29yaXRobSB0byBwcm9jZXNzCi0gICAgICAgICAgICAgICogICAgICAgZGF0YSB3aXRoIHRo ZW0uIgotICAgICAgICAgICAgICAqLwotLSAgICAgICAgICAgIGlmIChlbmMgJiYgQ1JZUFRPX21l bWNtcChrZXksIGtleSArIGJ5dGVzLCBieXRlcykgPT0gMCkgewotKyAgICAgICAgICAgIGlmIChD UllQVE9fbWVtY21wKGtleSwga2V5ICsgYnl0ZXMsIGJ5dGVzKSA9PSAwKSB7Ci0gICAgICAgICAg ICAgICAgIEVWUGVycihFVlBfRl9BRVNfWFRTX0lOSVRfS0VZLCBFVlBfUl9YVFNfRFVQTElDQVRF RF9LRVlTKTsKLSAgICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICAgICAgfQotQEAg LTM0ODQsNiArMzQ5MiwxNCBAQCBzdGF0aWMgaW50IGFlc194dHNfY2lwaGVyKEVWUF9DSVBIRVJf Q1RYCi0gICAgICAgICByZXR1cm4gMDsKLSAgICAgaWYgKCFvdXQgfHwgIWluIHx8IGxlbiA8IEFF U19CTE9DS19TSVpFKQotICAgICAgICAgcmV0dXJuIDA7Ci0rIyBpZmRlZiBPUEVOU1NMX0ZJUFMK LSsgICAgLyogUmVxdWlyZW1lbnQgb2YgU1A4MDAtMzhFICovCi0rICAgIGlmIChGSVBTX21vZGUo KSAmJiAhKGN0eC0+ZmxhZ3MgJiBFVlBfQ0lQSF9GTEFHX05PTl9GSVBTX0FMTE9XKSAmJgotKyAg ICAgICAgKGxlbiA+ICgxVUwgPDwgMjApICogMTYpKSB7Ci0rICAgICAgICBFVlBlcnIoRVZQX0Zf QUVTX1hUU19DSVBIRVIsIEVWUF9SX1RPT19MQVJHRSk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsg ICAgfQotKyMgZW5kaWYKLSAgICAgaWYgKHhjdHgtPnN0cmVhbSkKLSAgICAgICAgICgqeGN0eC0+ c3RyZWFtKSAoaW4sIG91dCwgbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICB4Y3R4LT54 dHMua2V5MSwgeGN0eC0+eHRzLmtleTIsCi1AQCAtMzUwMSw4ICszNTE3LDEwIEBAIHN0YXRpYyBp bnQgYWVzX3h0c19jaXBoZXIoRVZQX0NJUEhFUl9DVFgKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgfCBFVlBfQ0lQSF9BTFdBWVNfQ0FMTF9JTklUIHwgRVZQX0NJUEhfQ1RSTF9JTklUIFwKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgfCBFVlBfQ0lQSF9DVVNUT01fQ09QWSkKLSAKLS1CTE9D S19DSVBIRVJfY3VzdG9tKE5JRF9hZXMsIDEyOCwgMSwgMTYsIHh0cywgWFRTLCBYVFNfRkxBR1Mp Ci0tICAgIEJMT0NLX0NJUEhFUl9jdXN0b20oTklEX2FlcywgMjU2LCAxLCAxNiwgeHRzLCBYVFMs IFhUU19GTEFHUykKLStCTE9DS19DSVBIRVJfY3VzdG9tKE5JRF9hZXMsIDEyOCwgMSwgMTYsIHh0 cywgWFRTLAotKyAgICAgICAgICAgICAgICAgICAgRVZQX0NJUEhfRkxBR19GSVBTIHwgWFRTX0ZM QUdTKQotKyAgICBCTE9DS19DSVBIRVJfY3VzdG9tKE5JRF9hZXMsIDI1NiwgMSwgMTYsIHh0cywg WFRTLAotKyAgICAgICAgICAgICAgICAgICAgRVZQX0NJUEhfRkxBR19GSVBTIHwgWFRTX0ZMQUdT KQotIAotIHN0YXRpYyBpbnQgYWVzX2NjbV9jdHJsKEVWUF9DSVBIRVJfQ1RYICpjLCBpbnQgdHlw ZSwgaW50IGFyZywgdm9pZCAqcHRyKQotIHsKLUBAIC0zNzcyLDExICszNzkwLDExIEBAIHN0YXRp YyBpbnQgYWVzX2NjbV9jaXBoZXIoRVZQX0NJUEhFUl9DVFgKLSAjZGVmaW5lIGFlc19jY21fY2xl YW51cCBOVUxMCi0gCi0gQkxPQ0tfQ0lQSEVSX2N1c3RvbShOSURfYWVzLCAxMjgsIDEsIDEyLCBj Y20sIENDTSwKLS0gICAgICAgICAgICAgICAgICAgIEVWUF9DSVBIX0ZMQUdfQUVBRF9DSVBIRVIg fCBDVVNUT01fRkxBR1MpCi0rICAgICAgICAgICAgICAgICAgICBFVlBfQ0lQSF9GTEFHX0ZJUFMg fCBFVlBfQ0lQSF9GTEFHX0FFQURfQ0lQSEVSIHwgQ1VTVE9NX0ZMQUdTKQotICAgICBCTE9DS19D SVBIRVJfY3VzdG9tKE5JRF9hZXMsIDE5MiwgMSwgMTIsIGNjbSwgQ0NNLAotLSAgICAgICAgICAg ICAgICAgICAgICAgIEVWUF9DSVBIX0ZMQUdfQUVBRF9DSVBIRVIgfCBDVVNUT01fRkxBR1MpCi0r ICAgICAgICAgICAgICAgICAgICAgICAgRVZQX0NJUEhfRkxBR19GSVBTIHwgRVZQX0NJUEhfRkxB R19BRUFEX0NJUEhFUiB8IENVU1RPTV9GTEFHUykKLSAgICAgQkxPQ0tfQ0lQSEVSX2N1c3RvbShO SURfYWVzLCAyNTYsIDEsIDEyLCBjY20sIENDTSwKLS0gICAgICAgICAgICAgICAgICAgICAgICBF VlBfQ0lQSF9GTEFHX0FFQURfQ0lQSEVSIHwgQ1VTVE9NX0ZMQUdTKQotKyAgICAgICAgICAgICAg ICAgICAgICAgIEVWUF9DSVBIX0ZMQUdfRklQUyB8IEVWUF9DSVBIX0ZMQUdfQUVBRF9DSVBIRVIg fCBDVVNUT01fRkxBR1MpCi0gCi0gdHlwZWRlZiBzdHJ1Y3QgewotICAgICB1bmlvbiB7Ci1AQCAt Mzg2OSw3ICszODg3LDcgQEAgc3RhdGljIGludCBhZXNfd3JhcF9jaXBoZXIoRVZQX0NJUEhFUl9D VAotICAgICByZXR1cm4gcnYgPyAoaW50KXJ2IDogLTE7Ci0gfQotIAotLSNkZWZpbmUgV1JBUF9G TEFHUyAgICAgIChFVlBfQ0lQSF9XUkFQX01PREUgXAotKyNkZWZpbmUgV1JBUF9GTEFHUyAgICAg IChFVlBfQ0lQSF9XUkFQX01PREUgfCBFVlBfQ0lQSF9GTEFHX0ZJUFMgXAotICAgICAgICAgICAg ICAgICB8IEVWUF9DSVBIX0NVU1RPTV9JViB8IEVWUF9DSVBIX0ZMQUdfQ1VTVE9NX0NJUEhFUiBc Ci0gICAgICAgICAgICAgICAgIHwgRVZQX0NJUEhfQUxXQVlTX0NBTExfSU5JVCB8IEVWUF9DSVBI X0ZMQUdfREVGQVVMVF9BU04xKQotIAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2 cC9lX2RlczMuYy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZV9kZXMzLmMKLS0tLSBv cGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL2VfZGVzMy5jLmZpcHMJMjAyMS0wMi0xNiAxNjoyNDow MS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL2VfZGVzMy5j CTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk3NzM0NTA5ICswMTAwCi1AQCAtMjExLDE2ICsyMTEsMTkg QEAgQkxPQ0tfQ0lQSEVSX2RlZnMoZGVzX2VkZSwgREVTX0VERV9LRVksCi0gIyBkZWZpbmUgZGVz X2VkZTNfY2JjX2NpcGhlciBkZXNfZWRlX2NiY19jaXBoZXIKLSAjIGRlZmluZSBkZXNfZWRlM19l Y2JfY2lwaGVyIGRlc19lZGVfZWNiX2NpcGhlcgotICAgICBCTE9DS19DSVBIRVJfZGVmcyhkZXNf ZWRlMywgREVTX0VERV9LRVksIE5JRF9kZXNfZWRlMywgOCwgMjQsIDgsIDY0LAotLSAgICAgICAg ICAgICAgICAgIEVWUF9DSVBIX1JBTkRfS0VZIHwgRVZQX0NJUEhfRkxBR19ERUZBVUxUX0FTTjEs Ci0tICAgICAgICAgICAgICAgICAgZGVzX2VkZTNfaW5pdF9rZXksIE5VTEwsIE5VTEwsIE5VTEws IGRlczNfY3RybCkKLSsgICAgICAgICAgICAgICAgICBFVlBfQ0lQSF9SQU5EX0tFWSB8IEVWUF9D SVBIX0ZMQUdfRklQUyB8Ci0rICAgICAgICAgICAgICAgICAgRVZQX0NJUEhfRkxBR19ERUZBVUxU X0FTTjEsIGRlc19lZGUzX2luaXRfa2V5LCBOVUxMLCBOVUxMLCBOVUxMLAotKyAgICAgICAgICAg ICAgICAgIGRlczNfY3RybCkKLSAKLSAgICAgQkxPQ0tfQ0lQSEVSX2RlZl9jZmIoZGVzX2VkZTMs IERFU19FREVfS0VZLCBOSURfZGVzX2VkZTMsIDI0LCA4LCAxLAotLSAgICAgICAgICAgICAgICAg ICAgIEVWUF9DSVBIX1JBTkRfS0VZIHwgRVZQX0NJUEhfRkxBR19ERUZBVUxUX0FTTjEsCi0tICAg ICAgICAgICAgICAgICAgICAgZGVzX2VkZTNfaW5pdF9rZXksIE5VTEwsIE5VTEwsIE5VTEwsIGRl czNfY3RybCkKLSsgICAgICAgICAgICAgICAgICAgICBFVlBfQ0lQSF9SQU5EX0tFWSB8IEVWUF9D SVBIX0ZMQUdfRklQUyB8Ci0rICAgICAgICAgICAgICAgICAgICAgRVZQX0NJUEhfRkxBR19ERUZB VUxUX0FTTjEsIGRlc19lZGUzX2luaXRfa2V5LCBOVUxMLCBOVUxMLAotKyAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIGRlczNfY3RybCkKLSAKLSAgICAgQkxPQ0tfQ0lQSEVSX2RlZl9jZmIoZGVz X2VkZTMsIERFU19FREVfS0VZLCBOSURfZGVzX2VkZTMsIDI0LCA4LCA4LAotLSAgICAgICAgICAg ICAgICAgICAgIEVWUF9DSVBIX1JBTkRfS0VZIHwgRVZQX0NJUEhfRkxBR19ERUZBVUxUX0FTTjEs Ci0tICAgICAgICAgICAgICAgICAgICAgZGVzX2VkZTNfaW5pdF9rZXksIE5VTEwsIE5VTEwsIE5V TEwsIGRlczNfY3RybCkKLSsgICAgICAgICAgICAgICAgICAgICBFVlBfQ0lQSF9SQU5EX0tFWSB8 IEVWUF9DSVBIX0ZMQUdfRklQUyB8Ci0rICAgICAgICAgICAgICAgICAgICAgRVZQX0NJUEhfRkxB R19ERUZBVUxUX0FTTjEsIGRlc19lZGUzX2luaXRfa2V5LCBOVUxMLCBOVUxMLAotKyAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIGRlczNfY3RybCkKLSAKLSBzdGF0aWMgaW50IGRlc19lZGVfaW5p dF9rZXkoRVZQX0NJUEhFUl9DVFggKmN0eCwgY29uc3QgdW5zaWduZWQgY2hhciAqa2V5LAotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICppdiwgaW50IGVu YykKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZV9udWxsLmMuZmlwcyBvcGVu c3NsLTEuMS4xai9jcnlwdG8vZXZwL2VfbnVsbC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRv L2V2cC9lX251bGwuYy5maXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0r Kysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9lX251bGwuYwkyMDIxLTAzLTAzIDEyOjU3OjQy LjE5NzczNDUwOSArMDEwMAotQEAgLTE5LDcgKzE5LDggQEAgc3RhdGljIGludCBudWxsX2NpcGhl cihFVlBfQ0lQSEVSX0NUWCAqYwotICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWdu ZWQgY2hhciAqaW4sIHNpemVfdCBpbmwpOwotIHN0YXRpYyBjb25zdCBFVlBfQ0lQSEVSIG5fY2lw aGVyID0gewotICAgICBOSURfdW5kZWYsCi0tICAgIDEsIDAsIDAsIDAsCi0rICAgIDEsIDAsIDAs Ci0rICAgIEVWUF9DSVBIX0ZMQUdfRklQUywKLSAgICAgbnVsbF9pbml0X2tleSwKLSAgICAgbnVs bF9jaXBoZXIsCi0gICAgIE5VTEwsCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZw L2V2cF9lbmMuYy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZXZwX2VuYy5jCi0tLS0g b3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9ldnBfZW5jLmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0 OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvZXZwX2Vu Yy5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk3NzM0NTA5ICswMTAwCi1AQCAtMTgsOSArMTgsMTgg QEAKLSAjaW5jbHVkZSA8b3BlbnNzbC9lbmdpbmUuaD4KLSAjaW5jbHVkZSAiY3J5cHRvL2V2cC5o IgotICNpbmNsdWRlICJldnBfbG9jYWwuaCIKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rIyBpbmNs dWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSsjZW5kaWYKLSAKLSBpbnQgRVZQX0NJUEhFUl9DVFhfcmVz ZXQoRVZQX0NJUEhFUl9DVFggKmMpCi0gewotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgaWYg KEZJUFNfc2VsZnRlc3RfZmFpbGVkKCkpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0VWUF9D SVBIRVJfQ1RYX1JFU0VULCBGSVBTX1JfRklQU19TRUxGVEVTVF9GQUlMRUQpOwotKyAgICAgICAg cmV0dXJuIDA7Ci0rICAgIH0KLSsjZW5kaWYKLSAgICAgaWYgKGMgPT0gTlVMTCkKLSAgICAgICAg IHJldHVybiAxOwotICAgICBpZiAoYy0+Y2lwaGVyICE9IE5VTEwpIHsKLUBAIC00MCw2ICs0OSwx MiBAQCBpbnQgRVZQX0NJUEhFUl9DVFhfcmVzZXQoRVZQX0NJUEhFUl9DVFgKLSAKLSBFVlBfQ0lQ SEVSX0NUWCAqRVZQX0NJUEhFUl9DVFhfbmV3KHZvaWQpCi0gewotKyNpZmRlZiBPUEVOU1NMX0ZJ UFMKLSsgICAgaWYgKEZJUFNfc2VsZnRlc3RfZmFpbGVkKCkpIHsKLSsgICAgICAgIEZJUFNlcnIo RklQU19GX0VWUF9DSVBIRVJfQ1RYX05FVywgRklQU19SX0ZJUFNfU0VMRlRFU1RfRkFJTEVEKTsK LSsgICAgICAgIHJldHVybiBOVUxMOwotKyAgICB9Ci0rI2VuZGlmCi0gICAgIHJldHVybiBPUEVO U1NMX3phbGxvYyhzaXplb2YoRVZQX0NJUEhFUl9DVFgpKTsKLSB9Ci0gCi1AQCAtNjgsNiArODMs MTIgQEAgaW50IEVWUF9DaXBoZXJJbml0X2V4KEVWUF9DSVBIRVJfQ1RYICpjdAotICAgICAgICAg ICAgIGVuYyA9IDE7Ci0gICAgICAgICBjdHgtPmVuY3J5cHQgPSBlbmM7Ci0gICAgIH0KLSsjaWZk ZWYgT1BFTlNTTF9GSVBTCi0rICAgIGlmIChGSVBTX3NlbGZ0ZXN0X2ZhaWxlZCgpKSB7Ci0rICAg ICAgICBGSVBTZXJyKEZJUFNfRl9FVlBfQ0lQSEVSSU5JVF9FWCwgRklQU19SX0ZJUFNfU0VMRlRF U1RfRkFJTEVEKTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rI2VuZGlmCi0gI2lmbmRl ZiBPUEVOU1NMX05PX0VOR0lORQotICAgICAvKgotICAgICAgKiBXaGV0aGVyIGl0J3MgbmljZSBv ciBub3QsICJJbml0cyIgY2FuIGJlIHVzZWQgb24gIkZpbmFsIidkIGNvbnRleHRzIHNvCi1AQCAt MTM3LDcgKzE1OCw3IEBAIGludCBFVlBfQ2lwaGVySW5pdF9leChFVlBfQ0lQSEVSX0NUWCAqY3QK LSAgICAgICAgIH0KLSAgICAgICAgIGN0eC0+a2V5X2xlbiA9IGNpcGhlci0+a2V5X2xlbjsKLSAg ICAgICAgIC8qIFByZXNlcnZlIHdyYXAgZW5hYmxlIGZsYWcsIHplcm8gZXZlcnl0aGluZyBlbHNl ICovCi0tICAgICAgICBjdHgtPmZsYWdzICY9IEVWUF9DSVBIRVJfQ1RYX0ZMQUdfV1JBUF9BTExP VzsKLSsgICAgICAgIGN0eC0+ZmxhZ3MgJj0gRVZQX0NJUEhFUl9DVFhfRkxBR19XUkFQX0FMTE9X IHwgRVZQX0NJUEhfRkxBR19OT05fRklQU19BTExPVzsKLSAgICAgICAgIGlmIChjdHgtPmNpcGhl ci0+ZmxhZ3MgJiBFVlBfQ0lQSF9DVFJMX0lOSVQpIHsKLSAgICAgICAgICAgICBpZiAoIUVWUF9D SVBIRVJfQ1RYX2N0cmwoY3R4LCBFVlBfQ1RSTF9JTklULCAwLCBOVUxMKSkgewotICAgICAgICAg ICAgICAgICBjdHgtPmNpcGhlciA9IE5VTEw7Ci1AQCAtMTk2LDYgKzIxNywxOCBAQCBpbnQgRVZQ X0NpcGhlckluaXRfZXgoRVZQX0NJUEhFUl9DVFggKmN0Ci0gICAgICAgICAgICAgcmV0dXJuIDA7 Ci0gICAgICAgICB9Ci0gICAgIH0KLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rICAgIC8qIEFmdGVy ICdrZXknIGlzIHNldCBubyBmdXJ0aGVyIHBhcmFtZXRlcnMgY2hhbmdlcyBhcmUgcGVybWlzc2li bGUuCi0rICAgICAqIFNvIG9ubHkgY2hlY2sgZm9yIG5vbiBGSVBTIGVuYWJsaW5nIGF0IHRoaXMg cG9pbnQuCi0rICAgICAqLwotKyAgICBpZiAoa2V5ICYmIEZJUFNfbW9kZSgpKSB7Ci0rICAgICAg ICBpZiAoIShjdHgtPmNpcGhlci0+ZmxhZ3MgJiBFVlBfQ0lQSF9GTEFHX0ZJUFMpCi0rICAgICAg ICAgICAgJiAhKGN0eC0+ZmxhZ3MgJiBFVlBfQ0lQSF9GTEFHX05PTl9GSVBTX0FMTE9XKSkgewot KyAgICAgICAgICAgIEVWUGVycihFVlBfRl9FVlBfQ0lQSEVSSU5JVF9FWCwgRVZQX1JfRElTQUJM RURfRk9SX0ZJUFMpOwotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgfQotKyAgICB9 Ci0rI2VuZGlmCi0gCi0gICAgIGlmIChrZXkgfHwgKGN0eC0+Y2lwaGVyLT5mbGFncyAmIEVWUF9D SVBIX0FMV0FZU19DQUxMX0lOSVQpKSB7Ci0gICAgICAgICBpZiAoIWN0eC0+Y2lwaGVyLT5pbml0 KGN0eCwga2V5LCBpdiwgZW5jKSkKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAv ZXZwX2Vyci5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9ldnBfZXJyLmMKLS0tLSBv cGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL2V2cF9lcnIuYy5maXBzCTIwMjEtMDItMTYgMTY6MjQ6 MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9ldnBfZXJy LmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTg3MzQ1MTcgKzAxMDAKLUBAIC0yMyw2ICsyMyw3IEBA IHN0YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEgRVZQX3N0cl9mdW4KLSAgICAge0VSUl9QQUNL KEVSUl9MSUJfRVZQLCBFVlBfRl9BRVNfVDRfWFRTX0lOSVRfS0VZLCAwKSwKLSAgICAgICJhZXNf dDRfeHRzX2luaXRfa2V5In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0VWUCwgRVZQX0ZfQUVT X1dSQVBfQ0lQSEVSLCAwKSwgImFlc193cmFwX2NpcGhlciJ9LAotKyAgICB7RVJSX1BBQ0soRVJS X0xJQl9FVlAsIEVWUF9GX0FFU19YVFNfQ0lQSEVSLCAwKSwgImFlc194dHNfY2lwaGVyIn0sCi0g ICAgIHtFUlJfUEFDSyhFUlJfTElCX0VWUCwgRVZQX0ZfQUVTX1hUU19JTklUX0tFWSwgMCksICJh ZXNfeHRzX2luaXRfa2V5In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0VWUCwgRVZQX0ZfQUxH X01PRFVMRV9JTklULCAwKSwgImFsZ19tb2R1bGVfaW5pdCJ9LAotICAgICB7RVJSX1BBQ0soRVJS X0xJQl9FVlAsIEVWUF9GX0FSSUFfQ0NNX0lOSVRfS0VZLCAwKSwgImFyaWFfY2NtX2luaXRfa2V5 In0sCi1AQCAtMTg2LDYgKzE4Nyw3IEBAIHN0YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEgRVZQ X3N0cl9yZWEKLSAgICAgImRpZmZlcmVudCBrZXkgdHlwZXMifSwKLSAgICAge0VSUl9QQUNLKEVS Ul9MSUJfRVZQLCAwLCBFVlBfUl9ESUZGRVJFTlRfUEFSQU1FVEVSUyksCi0gICAgICJkaWZmZXJl bnQgcGFyYW1ldGVycyJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9FVlAsIDAsIEVWUF9SX0RJ U0FCTEVEX0ZPUl9GSVBTKSwgImRpc2FibGVkIGZvciBGSVBTIn0sCi0gICAgIHtFUlJfUEFDSyhF UlJfTElCX0VWUCwgMCwgRVZQX1JfRVJST1JfTE9BRElOR19TRUNUSU9OKSwKLSAgICAgImVycm9y IGxvYWRpbmcgc2VjdGlvbiJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9FVlAsIDAsIEVWUF9S X0VSUk9SX1NFVFRJTkdfRklQU19NT0RFKSwKLUBAIC0yNTEsNiArMjUzLDcgQEAgc3RhdGljIGNv bnN0IEVSUl9TVFJJTkdfREFUQSBFVlBfc3RyX3JlYQotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9F VlAsIDAsIEVWUF9SX1BSSVZBVEVfS0VZX0VOQ09ERV9FUlJPUiksCi0gICAgICJwcml2YXRlIGtl eSBlbmNvZGUgZXJyb3IifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCAwLCBFVlBfUl9Q VUJMSUNfS0VZX05PVF9SU0EpLCAicHVibGljIGtleSBub3QgcnNhIn0sCi0rICAgIHtFUlJfUEFD SyhFUlJfTElCX0VWUCwgMCwgRVZQX1JfVE9PX0xBUkdFKSwgInRvbyBsYXJnZSJ9LAotICAgICB7 RVJSX1BBQ0soRVJSX0xJQl9FVlAsIDAsIEVWUF9SX1VOS05PV05fQ0lQSEVSKSwgInVua25vd24g Y2lwaGVyIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0VWUCwgMCwgRVZQX1JfVU5LTk9XTl9E SUdFU1QpLCAidW5rbm93biBkaWdlc3QifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCAw LCBFVlBfUl9VTktOT1dOX09QVElPTiksICJ1bmtub3duIG9wdGlvbiJ9LAotQEAgLTI3Niw2ICsy NzksOCBAQCBzdGF0aWMgY29uc3QgRVJSX1NUUklOR19EQVRBIEVWUF9zdHJfcmVhCi0gICAgICJ3 cmFwIG1vZGUgbm90IGFsbG93ZWQifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCAwLCBF VlBfUl9XUk9OR19GSU5BTF9CTE9DS19MRU5HVEgpLAotICAgICAid3JvbmcgZmluYWwgYmxvY2sg bGVuZ3RoIn0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0VWUCwgMCwgRVZQX1JfWFRTX0RBVEFf VU5JVF9JU19UT09fTEFSR0UpLAotKyAgICAieHRzIGRhdGEgdW5pdCBpcyB0b28gbGFyZ2UifSwK LSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRVZQLCAwLCBFVlBfUl9YVFNfRFVQTElDQVRFRF9LRVlT KSwKLSAgICAgInh0cyBkdXBsaWNhdGVkIGtleXMifSwKLSAgICAgezAsIE5VTEx9Ci1kaWZmIC11 cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL2V2cF9saWIuYy5maXBzIG9wZW5zc2wtMS4xLjFq L2NyeXB0by9ldnAvZXZwX2xpYi5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9ldnBf bGliLmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5z c2wtMS4xLjFqL2NyeXB0by9ldnAvZXZwX2xpYi5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk4NzM0 NTE3ICswMTAwCi1AQCAtMTkyLDYgKzE5Miw5IEBAIGludCBFVlBfQ0lQSEVSX2ltcGxfY3R4X3Np emUoY29uc3QgRVZQX0MKLSBpbnQgRVZQX0NpcGhlcihFVlBfQ0lQSEVSX0NUWCAqY3R4LCB1bnNp Z25lZCBjaGFyICpvdXQsCi0gICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqaW4s IHVuc2lnbmVkIGludCBpbmwpCi0gewotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgRklQU19z ZWxmdGVzdF9jaGVjaygpOwotKyNlbmRpZgotICAgICByZXR1cm4gY3R4LT5jaXBoZXItPmRvX2Np cGhlcihjdHgsIG91dCwgaW4sIGlubCk7Ci0gfQotIAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWov Y3J5cHRvL2V2cC9tX3NoYTEuYy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvbV9zaGEx LmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZwL21fc2hhMS5jLmZpcHMJMjAyMS0wMi0x NiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZXZw L21fc2hhMS5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk4NzM0NTE3ICswMTAwCi1AQCAtOTUsNyAr OTUsNyBAQCBzdGF0aWMgY29uc3QgRVZQX01EIHNoYTFfbWQgPSB7Ci0gICAgIE5JRF9zaGExLAot ICAgICBOSURfc2hhMVdpdGhSU0FFbmNyeXB0aW9uLAotICAgICBTSEFfRElHRVNUX0xFTkdUSCwK LS0gICAgRVZQX01EX0ZMQUdfRElHQUxHSURfQUJTRU5ULAotKyAgICBFVlBfTURfRkxBR19ESUdB TEdJRF9BQlNFTlQgfCBFVlBfTURfRkxBR19GSVBTLAotICAgICBpbml0LAotICAgICB1cGRhdGUs Ci0gICAgIGZpbmFsLAotQEAgLTE0NSw3ICsxNDUsNyBAQCBzdGF0aWMgY29uc3QgRVZQX01EIHNo YTIyNF9tZCA9IHsKLSAgICAgTklEX3NoYTIyNCwKLSAgICAgTklEX3NoYTIyNFdpdGhSU0FFbmNy eXB0aW9uLAotICAgICBTSEEyMjRfRElHRVNUX0xFTkdUSCwKLS0gICAgRVZQX01EX0ZMQUdfRElH QUxHSURfQUJTRU5ULAotKyAgICBFVlBfTURfRkxBR19ESUdBTEdJRF9BQlNFTlQgfCBFVlBfTURf RkxBR19GSVBTLAotICAgICBpbml0MjI0LAotICAgICB1cGRhdGUyMjQsCi0gICAgIGZpbmFsMjI0 LAotQEAgLTE2NCw3ICsxNjQsNyBAQCBzdGF0aWMgY29uc3QgRVZQX01EIHNoYTI1Nl9tZCA9IHsK LSAgICAgTklEX3NoYTI1NiwKLSAgICAgTklEX3NoYTI1NldpdGhSU0FFbmNyeXB0aW9uLAotICAg ICBTSEEyNTZfRElHRVNUX0xFTkdUSCwKLS0gICAgRVZQX01EX0ZMQUdfRElHQUxHSURfQUJTRU5U LAotKyAgICBFVlBfTURfRkxBR19ESUdBTEdJRF9BQlNFTlQgfCBFVlBfTURfRkxBR19GSVBTLAot ICAgICBpbml0MjU2LAotICAgICB1cGRhdGUyNTYsCi0gICAgIGZpbmFsMjU2LAotQEAgLTIyNCw3 ICsyMjQsNyBAQCBzdGF0aWMgY29uc3QgRVZQX01EIHNoYTUxMl8yMjRfbWQgPSB7Ci0gICAgIE5J RF9zaGE1MTJfMjI0LAotICAgICBOSURfc2hhNTEyXzIyNFdpdGhSU0FFbmNyeXB0aW9uLAotICAg ICBTSEEyMjRfRElHRVNUX0xFTkdUSCwKLS0gICAgRVZQX01EX0ZMQUdfRElHQUxHSURfQUJTRU5U LAotKyAgICBFVlBfTURfRkxBR19ESUdBTEdJRF9BQlNFTlQgfCBFVlBfTURfRkxBR19GSVBTLAot ICAgICBpbml0NTEyXzIyNCwKLSAgICAgdXBkYXRlNTEyLAotICAgICBmaW5hbDUxMiwKLUBAIC0y NDMsNyArMjQzLDcgQEAgc3RhdGljIGNvbnN0IEVWUF9NRCBzaGE1MTJfMjU2X21kID0gewotICAg ICBOSURfc2hhNTEyXzI1NiwKLSAgICAgTklEX3NoYTUxMl8yNTZXaXRoUlNBRW5jcnlwdGlvbiwK LSAgICAgU0hBMjU2X0RJR0VTVF9MRU5HVEgsCi0tICAgIEVWUF9NRF9GTEFHX0RJR0FMR0lEX0FC U0VOVCwKLSsgICAgRVZQX01EX0ZMQUdfRElHQUxHSURfQUJTRU5UIHwgRVZQX01EX0ZMQUdfRklQ UywKLSAgICAgaW5pdDUxMl8yNTYsCi0gICAgIHVwZGF0ZTUxMiwKLSAgICAgZmluYWw1MTIsCi1A QCAtMjYyLDcgKzI2Miw3IEBAIHN0YXRpYyBjb25zdCBFVlBfTUQgc2hhMzg0X21kID0gewotICAg ICBOSURfc2hhMzg0LAotICAgICBOSURfc2hhMzg0V2l0aFJTQUVuY3J5cHRpb24sCi0gICAgIFNI QTM4NF9ESUdFU1RfTEVOR1RILAotLSAgICBFVlBfTURfRkxBR19ESUdBTEdJRF9BQlNFTlQsCi0r ICAgIEVWUF9NRF9GTEFHX0RJR0FMR0lEX0FCU0VOVCB8IEVWUF9NRF9GTEFHX0ZJUFMsCi0gICAg IGluaXQzODQsCi0gICAgIHVwZGF0ZTM4NCwKLSAgICAgZmluYWwzODQsCi1AQCAtMjgxLDcgKzI4 MSw3IEBAIHN0YXRpYyBjb25zdCBFVlBfTUQgc2hhNTEyX21kID0gewotICAgICBOSURfc2hhNTEy LAotICAgICBOSURfc2hhNTEyV2l0aFJTQUVuY3J5cHRpb24sCi0gICAgIFNIQTUxMl9ESUdFU1Rf TEVOR1RILAotLSAgICBFVlBfTURfRkxBR19ESUdBTEdJRF9BQlNFTlQsCi0rICAgIEVWUF9NRF9G TEFHX0RJR0FMR0lEX0FCU0VOVCB8IEVWUF9NRF9GTEFHX0ZJUFMsCi0gICAgIGluaXQ1MTIsCi0g ICAgIHVwZGF0ZTUxMiwKLSAgICAgZmluYWw1MTIsCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9j cnlwdG8vZXZwL21fc2hhMy5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9tX3NoYTMu YwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvbV9zaGEzLmMuZmlwcwkyMDIxLTAyLTE2 IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAv bV9zaGEzLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTg3MzQ1MTcgKzAxMDAKLUBAIC0yOTUsNyAr Mjk1LDcgQEAgY29uc3QgRVZQX01EICpFVlBfc2hhM18jI2JpdGxlbih2b2lkKQotICAgICAgICAg TklEX3NoYTNfIyNiaXRsZW4sICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAg TklEX1JTQV9TSEEzXyMjYml0bGVuLCAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAg Yml0bGVuIC8gOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotLSAgICAgICAg RVZQX01EX0ZMQUdfRElHQUxHSURfQUJTRU5ULCAgICAgICAgICAgICAgICAgXAotKyAgICAgICAg RVZQX01EX0ZMQUdfRElHQUxHSURfQUJTRU5UIHwgRVZQX01EX0ZMQUdfRklQUywgXAotICAgICAg ICAgczM5MHhfc2hhM19pbml0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAg ICAgczM5MHhfc2hhM191cGRhdGUsICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAg ICAgczM5MHhfc2hhM19maW5hbCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotQEAgLTMw OCw3ICszMDgsNyBAQCBjb25zdCBFVlBfTUQgKkVWUF9zaGEzXyMjYml0bGVuKHZvaWQpCi0gICAg ICAgICBOSURfc2hhM18jI2JpdGxlbiwgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAg ICAgICBOSURfUlNBX1NIQTNfIyNiaXRsZW4sICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAg ICAgICBiaXRsZW4gLyA4LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0tICAg ICAgICBFVlBfTURfRkxBR19ESUdBTEdJRF9BQlNFTlQsICAgICAgICAgICAgICAgICBcCi0rICAg ICAgICBFVlBfTURfRkxBR19ESUdBTEdJRF9BQlNFTlQgfCBFVlBfTURfRkxBR19GSVBTLCBcCi0g ICAgICAgICBzaGEzX2luaXQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0g ICAgICAgICBzaGEzX3VwZGF0ZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0g ICAgICAgICBzaGEzX2ZpbmFsLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi1A QCAtMzI5LDcgKzMyOSw3IEBAIGNvbnN0IEVWUF9NRCAqRVZQX3NoYWtlIyNiaXRsZW4odm9pZCkK LSAgICAgICAgIE5JRF9zaGFrZSMjYml0bGVuLCAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK LSAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK LSAgICAgICAgIGJpdGxlbiAvIDgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK LS0gICAgICAgIEVWUF9NRF9GTEFHX1hPRiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK LSsgICAgICAgIEVWUF9NRF9GTEFHX1hPRiB8IEVWUF9NRF9GTEFHX0ZJUFMsICAgICAgICAgIFwK LSAgICAgICAgIHMzOTB4X3NoYWtlX2luaXQsICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK LSAgICAgICAgIHMzOTB4X3NoYTNfdXBkYXRlLCAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK LSAgICAgICAgIHMzOTB4X3NoYWtlX2ZpbmFsLCAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK LUBAIC0zNDMsNyArMzQzLDcgQEAgY29uc3QgRVZQX01EICpFVlBfc2hha2UjI2JpdGxlbih2b2lk KQotICAgICAgICAgTklEX3NoYWtlIyNiaXRsZW4sICAgICAgICAgICAgICAgICAgICAgICAgICAg XAotICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAotICAgICAgICAgYml0bGVuIC8gOCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAotLSAgICAgICAgRVZQX01EX0ZMQUdfWE9GLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAotKyAgICAgICAgRVZQX01EX0ZMQUdfWE9GIHwgRVZQX01EX0ZMQUdfRklQUywgICAgICAgICAg XAotICAgICAgICAgc2hha2VfaW5pdCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAotICAgICAgICAgc2hhM191cGRhdGUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAotICAgICAgICAgc2hhM19maW5hbCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAotQEAgLTM2Nyw3ICszNjcsNyBAQCBjb25zdCBFVlBfTUQgKkVWUF9zaGEzXyMjYml0bGVuKHZv aWQpCi0gICAgICAgICBOSURfc2hhM18jI2JpdGxlbiwgICAgICAgICAgICAgICAgICAgICAgXAot ICAgICAgICAgTklEX1JTQV9TSEEzXyMjYml0bGVuLCAgICAgICAgICAgICAgICAgIFwKLSAgICAg ICAgIGJpdGxlbiAvIDgsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0tICAgICAgICBF VlBfTURfRkxBR19ESUdBTEdJRF9BQlNFTlQsICAgICAgICAgICAgXAotKyAgICAgICAgRVZQX01E X0ZMQUdfRElHQUxHSURfQUJTRU5UIHwgRVZQX01EX0ZMQUdfRklQUywgXAotICAgICAgICAgc2hh M19pbml0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgIHNoYTNfdXBk YXRlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICAgICBzaGEzX2ZpbmFsLCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotQEAgLTM4Niw3ICszODYsNyBAQCBjb25zdCBF VlBfTUQgKkVWUF9zaGFrZSMjYml0bGVuKHZvaWQpCi0gICAgICAgICBOSURfc2hha2UjI2JpdGxl biwgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAgMCwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwKLSAgICAgICAgIGJpdGxlbiAvIDgsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcCi0tICAgICAgICBFVlBfTURfRkxBR19YT0YsICAgICAgICAgICAgICAg ICAgICAgICAgXAotKyAgICAgICAgRVZQX01EX0ZMQUdfWE9GIHwgRVZQX01EX0ZMQUdfRklQUywg ICAgIFwKLSAgICAgICAgIHNoYWtlX2luaXQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBc Ci0gICAgICAgICBzaGEzX3VwZGF0ZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAg ICAgICAgc2hhM19maW5hbCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKLWRpZmYgLXVw IG9wZW5zc2wtMS4xLjFqL2NyeXB0by9ldnAvcG1ldGhfbGliLmMuZmlwcyBvcGVuc3NsLTEuMS4x ai9jcnlwdG8vZXZwL3BtZXRoX2xpYi5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9w bWV0aF9saWIuYy5maXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysg b3BlbnNzbC0xLjEuMWovY3J5cHRvL2V2cC9wbWV0aF9saWIuYwkyMDIxLTAzLTAzIDEyOjU3OjQy LjE5ODczNDUxNyArMDEwMAotQEAgLTEzMSw3ICsxMzEsMTUgQEAgc3RhdGljIEVWUF9QS0VZX0NU WCAqaW50X2N0eF9uZXcoRVZQX1BLRQotICAgICAgICAgcG1ldGggPSBFTkdJTkVfZ2V0X3BrZXlf bWV0aChlLCBpZCk7Ci0gICAgIGVsc2UKLSAjZW5kaWYKLSsgICAgewotICAgICAgICAgcG1ldGgg PSBFVlBfUEtFWV9tZXRoX2ZpbmQoaWQpOwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgICAg IGlmIChwbWV0aCAmJiAhKHBtZXRoLT5mbGFncyAmIEVWUF9QS0VZX0ZMQUdfRklQUykgJiYgRklQ U19tb2RlKCkpIHsKLSsgICAgICAgICAgICBFVlBlcnIoRVZQX0ZfSU5UX0NUWF9ORVcsIEVWUF9S X0RJU0FCTEVEX0ZPUl9GSVBTKTsKLSsgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAgICAg IH0KLSsjZW5kaWYKLSsgICAgfQotIAotICAgICBpZiAocG1ldGggPT0gTlVMTCkgewotICNpZm5k ZWYgT1BFTlNTTF9OT19FTkdJTkUKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBz L2J1aWxkLmluZm8uZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9idWlsZC5pbmZvCi0t LS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvYnVpbGQuaW5mby5maXBzCTIwMjEtMDMtMDMg MTI6NTc6NDIuMTk4NzM0NTE3ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMv YnVpbGQuaW5mbwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE5ODczNDUxNyArMDEwMAotQEAgLTAsMCAr MSwxNSBAQAotK0xJQlM9Li4vLi4vbGliY3J5cHRvCi0rU09VUkNFWy4uLy4uL2xpYmNyeXB0b109 XAotKyAgICAgICAgZmlwc19hZXNfc2VsZnRlc3QuYyBmaXBzX2Rlc19zZWxmdGVzdC5jIGZpcHNf aG1hY19zZWxmdGVzdC5jIFwKLSsgICAgICAgIGZpcHNfcnNhX3NlbGZ0ZXN0LmMgZmlwc19zaGFf c2VsZnRlc3QuYyBmaXBzLmMgZmlwc19kc2Ffc2VsZnRlc3QuYyBcCi0rICAgICAgICBmaXBzX3Bv c3QuYyBmaXBzX2RyYmdfY3RyLmMgZmlwc19kcmJnX2hhc2guYyBmaXBzX2RyYmdfaG1hYy5jIFwK LSsgICAgICAgIGZpcHNfZHJiZ19saWIuYyBmaXBzX2RyYmdfcmFuZC5jIGZpcHNfZHJiZ19zZWxm dGVzdC5jIGZpcHNfcmFuZF9saWIuYyBcCi0rICAgICAgICBmaXBzX2NtYWNfc2VsZnRlc3QuYyBm aXBzX2VjZGhfc2VsZnRlc3QuYyBmaXBzX2VjZHNhX3NlbGZ0ZXN0LmMgXAotKyAgICAgICAgZmlw c19kaF9zZWxmdGVzdC5jIGZpcHNfZXJzLmMKLSsKLStQUk9HUkFNU19OT19JTlNUPVwKLSsgICAg ICAgICAgZmlwc19zdGFuZGFsb25lX2htYWMKLSsKLStTT1VSQ0VbZmlwc19zdGFuZGFsb25lX2ht YWNdPWZpcHNfc3RhbmRhbG9uZV9obWFjLmMKLStJTkNMVURFW2ZpcHNfc3RhbmRhbG9uZV9obWFj XT0uLi8uLi9pbmNsdWRlCi0rREVQRU5EW2ZpcHNfc3RhbmRhbG9uZV9obWFjXT0uLi8uLi9saWJj cnlwdG8KLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfYWVzX3NlbGZ0 ZXN0LmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX2Flc19zZWxmdGVzdC5j Ci0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19hZXNfc2VsZnRlc3QuYy5maXBz CTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk4NzM0NTE3ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWov Y3J5cHRvL2ZpcHMvZmlwc19hZXNfc2VsZnRlc3QuYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE5ODcz NDUxNyArMDEwMAotQEAgLTAsMCArMSwzNzIgQEAKLSsvKiA9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotKyAqIENvcHly aWdodCAoYykgMjAwMyBUaGUgT3BlblNTTCBQcm9qZWN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4K LSsgKgotKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y bXMsIHdpdGggb3Igd2l0aG91dAotKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92 aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotKyAqIGFyZSBtZXQ6Ci0rICoKLSsg KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl IGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5v dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l ciBpbgotKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv dmlkZWQgd2l0aCB0aGUKLSsgKiAgICBkaXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBBbGwgYWR2 ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMKLSsg KiAgICBzb2Z0d2FyZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnbWVudDoK LSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUg T3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0LiAo aHR0cDovL3d3dy5vcGVuc3NsLm9yZy8pIgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJPcGVuU1NM IFRvb2xraXQiIGFuZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRvCi0rICog ICAgZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl IHdpdGhvdXQKLSsgKiAgICBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0dGVuIHBl cm1pc3Npb24sIHBsZWFzZSBjb250YWN0Ci0rICogICAgb3BlbnNzbC1jb3JlQG9wZW5zc2wub3Jn LgotKyAqCi0rICogNS4gUHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgbWF5IG5v dCBiZSBjYWxsZWQgIk9wZW5TU0wiCi0rICogICAgbm9yIG1heSAiT3BlblNTTCIgYXBwZWFyIGlu IHRoZWlyIG5hbWVzIHdpdGhvdXQgcHJpb3Igd3JpdHRlbgotKyAqICAgIHBlcm1pc3Npb24gb2Yg dGhlIE9wZW5TU0wgUHJvamVjdC4KLSsgKgotKyAqIDYuIFJlZGlzdHJpYnV0aW9ucyBvZiBhbnkg Zm9ybSB3aGF0c29ldmVyIG11c3QgcmV0YWluIHRoZSBmb2xsb3dpbmcKLSsgKiAgICBhY2tub3ds ZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3Bl ZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBU b29sa2l0IChodHRwOi8vd3d3Lm9wZW5zc2wub3JnLykiCi0rICoKLSsgKiBUSElTIFNPRlRXQVJF IElTIFBST1ZJREVEIEJZIFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycnIEFORCBBTlkKLSsg KiBFWFBSRVNTRUQgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN SVRFRCBUTywgVEhFCi0rICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0rICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g IElOIE5PIEVWRU5UIFNIQUxMIFRIRSBPcGVuU1NMIFBST0pFQ1QgT1IKLSsgKiBJVFMgQ09OVFJJ QlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0r ICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO RywgQlVUCi0rICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P RFMgT1IgU0VSVklDRVM7Ci0rICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV U0lORVNTIElOVEVSUlVQVElPTikKLSsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0rICogU1RSSUNUIExJQUJJTElU WSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotKyAqIEFSSVNJ TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFE VklTRUQKLSsgKiBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0rICoKLSsgKi8K LSsKLSsjaW5jbHVkZSA8c3RyaW5nLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZXJyLmg+Ci0rI2lm ZGVmIE9QRU5TU0xfRklQUwotKyMgaW5jbHVkZSA8b3BlbnNzbC9maXBzLmg+Ci0rIyBpbmNsdWRl ICJjcnlwdG8vZmlwcy5oIgotKyNlbmRpZgotKwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLStzdGF0 aWMgY29uc3Qgc3RydWN0IHsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciBrZXlbMTZdOwotKyAg ICBjb25zdCB1bnNpZ25lZCBjaGFyIHBsYWludGV4dFsxNl07Ci0rICAgIGNvbnN0IHVuc2lnbmVk IGNoYXIgY2lwaGVydGV4dFsxNl07Ci0rfSB0ZXN0c1tdID0gewotKyAgICB7Ci0rICAgICAgICB7 Ci0rICAgICAgICAweDAwLCAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2LCAweDA3 LAotKyAgICAgICAgICAgICAgICAweDA4LCAweDA5LCAweDBBLCAweDBCLCAweDBDLCAweDBELCAw eDBFLCAweDBGfSwgewotKyAgICAgICAgMHgwMCwgMHgxMSwgMHgyMiwgMHgzMywgMHg0NCwgMHg1 NSwgMHg2NiwgMHg3NywKLSsgICAgICAgICAgICAgICAgMHg4OCwgMHg5OSwgMHhBQSwgMHhCQiwg MHhDQywgMHhERCwgMHhFRSwgMHhGRn0sIHsKLSsweDY5LCAweEM0LCAweEUwLCAweEQ4LCAweDZB LCAweDdCLCAweDA0LCAweDMwLAotKyAgICAgICAgICAgICAgICAweEQ4LCAweENELCAweEI3LCAw eDgwLCAweDcwLCAweEI0LCAweEM1LCAweDVBfSx9LH07Ci0rCi0raW50IEZJUFNfc2VsZnRlc3Rf YWVzKCkKLSt7Ci0rICAgIGludCBuOwotKyAgICBpbnQgcmV0ID0gMDsKLSsgICAgRVZQX0NJUEhF Ul9DVFggKmN0eDsKLSsKLSsgICAgY3R4ID0gRVZQX0NJUEhFUl9DVFhfbmV3KCk7Ci0rICAgIGlm IChjdHggPT0gTlVMTCkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBmb3IgKG4gPSAwOyBu IDwgMTsgKytuKSB7Ci0rICAgICAgICB1bnNpZ25lZCBjaGFyIGtleVsxNl07Ci0rCi0rICAgICAg ICBtZW1jcHkoa2V5LCB0ZXN0c1tuXS5rZXksIHNpemVvZihrZXkpKTsKLSsgICAgICAgIGlmIChm aXBzX2NpcGhlcl90ZXN0KGN0eCwgRVZQX2Flc18xMjhfZWNiKCksCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBrZXksIE5VTEwsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 ZXN0c1tuXS5wbGFpbnRleHQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0c1tu XS5jaXBoZXJ0ZXh0LCAxNikgPD0gMCkKLSsgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgfQot KyAgICByZXQgPSAxOwotKyBlcnI6Ci0rICAgIEVWUF9DSVBIRVJfQ1RYX2ZyZWUoY3R4KTsKLSsg ICAgaWYgKHJldCA9PSAwKQotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19TRUxGVEVTVF9B RVMsIEZJUFNfUl9TRUxGVEVTVF9GQUlMRUQpOwotKyAgICByZXR1cm4gcmV0OwotK30KLSsKLSsv KiBBRVMtQ0NNIHRlc3QgZGF0YSBmcm9tIE5JU1QgcHVibGljIHRlc3QgdmVjdG9ycyAqLwotKwot K3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGNjbV9rZXlbXSA9IHsKLSsgICAgMHhjZSwgMHhi MCwgMHgwOSwgMHhhZSwgMHhhNCwgMHg0NSwgMHg0NCwgMHg1MSwgMHhmZSwgMHhhZCwgMHhmMCwg MHhlNiwKLSsgICAgMHhiMywgMHg2ZiwgMHg0NSwgMHg1NSwgMHg1ZCwgMHhkMCwgMHg0NywgMHgy MywgMHhiYSwgMHhhNCwgMHg0OCwgMHhlOAotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgY2NtX25vbmNlW10gPSB7Ci0rICAgIDB4NzYsIDB4NDAsIDB4NDMsIDB4YzQsIDB4OTQs IDB4NjAsIDB4YjcKLSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGNjbV9hZGF0 YVtdID0gewotKyAgICAweDZlLCAweDgwLCAweGRkLCAweDdmLCAweDFiLCAweGFkLCAweGYzLCAw eGExLCAweGM5LCAweGFiLCAweDI1LCAweGM3LAotKyAgICAweDVmLCAweDEwLCAweGJkLCAweGU3 LCAweDhjLCAweDIzLCAweGZhLCAweDBlLCAweGI4LCAweGY5LCAweGFhLCAweGE1LAotKyAgICAw eDNhLCAweGRlLCAweGZiLCAweGY0LCAweGNiLCAweGY3LCAweDhmLCAweGU0Ci0rfTsKLSsKLStz dGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBjY21fcHRbXSA9IHsKLSsgICAgMHhjOCwgMHhkMiwg MHg3NSwgMHhmOSwgMHgxOSwgMHhlMSwgMHg3ZCwgMHg3ZiwgMHhlNiwgMHg5YywgMHgyYSwgMHgx ZiwKLSsgICAgMHg1OCwgMHg5MywgMHg5ZCwgMHhmZSwgMHg0ZCwgMHg0MCwgMHgzNywgMHg5MSwg MHhiNSwgMHhkZiwgMHgxMywgMHgxMAotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo YXIgY2NtX2N0W10gPSB7Ci0rICAgIDB4OGEsIDB4MGYsIDB4M2QsIDB4ODIsIDB4MjksIDB4ZTQs IDB4OGUsIDB4NzQsIDB4ODcsIDB4ZmQsIDB4OTUsIDB4YTIsCi0rICAgIDB4OGEsIDB4ZDMsIDB4 OTIsIDB4YzgsIDB4MGIsIDB4MzYsIDB4ODEsIDB4ZDQsIDB4ZmIsIDB4YzcsIDB4YmIsIDB4ZmQK LSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGNjbV90YWdbXSA9IHsKLSsgICAg MHgyZCwgMHhkNiwgMHhlZiwgMHgxYywgMHg0NSwgMHhkNCwgMHhjYywgMHhiNywgMHgyMywgMHhk YywgMHgwNywgMHg0NCwKLSsgICAgMHgxNCwgMHhkYiwgMHg1MCwgMHg2ZAotK307Ci0rCi0raW50 IEZJUFNfc2VsZnRlc3RfYWVzX2NjbSh2b2lkKQotK3sKLSsgICAgaW50IHJldCA9IDA7Ci0rICAg IHVuc2lnbmVkIGNoYXIgb3V0WzEyOF0sIHRhZ1sxNl07Ci0rICAgIEVWUF9DSVBIRVJfQ1RYICpj dHg7Ci0rCi0rICAgIGN0eCA9IEVWUF9DSVBIRVJfQ1RYX25ldygpOwotKyAgICBpZiAoY3R4ID09 IE5VTEwpCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgbWVtc2V0KG91dCwgMCwgc2l6ZW9m KG91dCkpOwotKyAgICBpZiAoIUVWUF9DaXBoZXJJbml0X2V4KGN0eCwgRVZQX2Flc18xOTJfY2Nt KCksIE5VTEwsIE5VTEwsIE5VTEwsIDEpKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGlmICgh RVZQX0NJUEhFUl9DVFhfY3RybChjdHgsIEVWUF9DVFJMX0NDTV9TRVRfSVZMRU4sCi0rICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YoY2NtX25vbmNlKSwgTlVMTCkpCi0rICAgICAg ICBnb3RvIGVycjsKLSsgICAgaWYgKCFFVlBfQ0lQSEVSX0NUWF9jdHJsKGN0eCwgRVZQX0NUUkxf Q0NNX1NFVF9UQUcsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YoY2NtX3Rh ZyksIE5VTEwpKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGlmICghRVZQX0NpcGhlckluaXRf ZXgoY3R4LCBOVUxMLCBOVUxMLCBjY21fa2V5LCBjY21fbm9uY2UsIDEpKQotKyAgICAgICAgZ290 byBlcnI7Ci0rICAgIGlmIChFVlBfQ2lwaGVyKGN0eCwgTlVMTCwgTlVMTCwgc2l6ZW9mKGNjbV9w dCkpICE9IHNpemVvZihjY21fcHQpKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGlmIChFVlBf Q2lwaGVyKGN0eCwgTlVMTCwgY2NtX2FkYXRhLCBzaXplb2YoY2NtX2FkYXRhKSkgPCAwKQotKyAg ICAgICAgZ290byBlcnI7Ci0rICAgIGlmIChFVlBfQ2lwaGVyKGN0eCwgb3V0LCBjY21fcHQsIHNp emVvZihjY21fcHQpKSAhPSBzaXplb2YoY2NtX2N0KSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwot KyAgICBpZiAoIUVWUF9DSVBIRVJfQ1RYX2N0cmwoY3R4LCBFVlBfQ1RSTF9DQ01fR0VUX1RBRywg MTYsIHRhZykpCi0rICAgICAgICBnb3RvIGVycjsKLSsgICAgaWYgKG1lbWNtcCh0YWcsIGNjbV90 YWcsIHNpemVvZihjY21fdGFnKSkKLSsgICAgICAgIHx8IG1lbWNtcChvdXQsIGNjbV9jdCwgc2l6 ZW9mKGNjbV9jdCkpKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIG1lbXNldChvdXQsIDAs IHNpemVvZihvdXQpKTsKLSsKLSsgICAgaWYgKCFFVlBfQ2lwaGVySW5pdF9leChjdHgsIEVWUF9h ZXNfMTkyX2NjbSgpLCBOVUxMLCBOVUxMLCBOVUxMLCAwKSkKLSsgICAgICAgIGdvdG8gZXJyOwot KyAgICBpZiAoIUVWUF9DSVBIRVJfQ1RYX2N0cmwoY3R4LCBFVlBfQ1RSTF9DQ01fU0VUX0lWTEVO LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKGNjbV9ub25jZSksIE5VTEwp KQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGlmICghRVZQX0NJUEhFUl9DVFhfY3RybChjdHgs IEVWUF9DVFJMX0NDTV9TRVRfVEFHLCAxNiwgdGFnKSkKLSsgICAgICAgIGdvdG8gZXJyOwotKyAg ICBpZiAoIUVWUF9DaXBoZXJJbml0X2V4KGN0eCwgTlVMTCwgTlVMTCwgY2NtX2tleSwgY2NtX25v bmNlLCAwKSkKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICBpZiAoRVZQX0NpcGhlcihjdHgsIE5V TEwsIE5VTEwsIHNpemVvZihjY21fY3QpKSAhPSBzaXplb2YoY2NtX2N0KSkKLSsgICAgICAgIGdv dG8gZXJyOwotKyAgICBpZiAoRVZQX0NpcGhlcihjdHgsIE5VTEwsIGNjbV9hZGF0YSwgc2l6ZW9m KGNjbV9hZGF0YSkpIDwgMCkKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICBpZiAoRVZQX0NpcGhl cihjdHgsIG91dCwgY2NtX2N0LCBzaXplb2YoY2NtX2N0KSkgIT0gc2l6ZW9mKGNjbV9wdCkpCi0r ICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgaWYgKG1lbWNtcChvdXQsIGNjbV9wdCwgc2l6ZW9m KGNjbV9wdCkpKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIHJldCA9IDE7Ci0rCi0rIGVy cjoKLSsgICAgRVZQX0NJUEhFUl9DVFhfZnJlZShjdHgpOwotKwotKyAgICBpZiAocmV0ID09IDAp IHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfU0VMRlRFU1RfQUVTX0NDTSwgRklQU19S X1NFTEZURVNUX0ZBSUxFRCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfSBlbHNlCi0rICAg ICAgICByZXR1cm4gcmV0OwotKwotK30KLSsKLSsvKiBBRVMtR0NNIHRlc3QgZGF0YSBmcm9tIE5J U1QgcHVibGljIHRlc3QgdmVjdG9ycyAqLwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFy IGdjbV9rZXlbXSA9IHsKLSsgICAgMHhlZSwgMHhiYywgMHgxZiwgMHg1NywgMHg0OCwgMHg3Ziwg MHg1MSwgMHg5MiwgMHgxYywgMHgwNCwgMHg2NSwgMHg2NiwKLSsgICAgMHg1ZiwgMHg4YSwgMHhl NiwgMHhkMSwgMHg2NSwgMHg4YiwgMHhiMiwgMHg2ZCwgMHhlNiwgMHhmOCwgMHhhMCwgMHg2OSwK LSsgICAgMHhhMywgMHg1MiwgMHgwMiwgMHg5MywgMHhhNSwgMHg3MiwgMHgwNywgMHg4ZgotK307 Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgZ2NtX2l2W10gPSB7Ci0rICAgIDB4OTks IDB4YWEsIDB4M2UsIDB4NjgsIDB4ZWQsIDB4ODEsIDB4NzMsIDB4YTAsIDB4ZWUsIDB4ZDAsIDB4 NjYsIDB4ODQKLSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGdjbV9wdFtdID0g ewotKyAgICAweGY1LCAweDZlLCAweDg3LCAweDA1LCAweDViLCAweGMzLCAweDJkLCAweDBlLCAw eGViLCAweDMxLCAweGIyLCAweGVhLAotKyAgICAweGNjLCAweDJiLCAweGYyLCAweGE1Ci0rfTsK LSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBnY21fYWFkW10gPSB7Ci0rICAgIDB4NGQs IDB4MjMsIDB4YzMsIDB4Y2UsIDB4YzMsIDB4MzQsIDB4YjQsIDB4OWIsIDB4ZGIsIDB4MzcsIDB4 MGMsIDB4NDMsCi0rICAgIDB4N2YsIDB4ZWMsIDB4NzgsIDB4ZGUKLSt9OwotKwotK3N0YXRpYyBj b25zdCB1bnNpZ25lZCBjaGFyIGdjbV9jdFtdID0gewotKyAgICAweGY3LCAweDI2LCAweDQ0LCAw eDEzLCAweGE4LCAweDRjLCAweDBlLCAweDdjLCAweGQ1LCAweDM2LCAweDg2LCAweDdlLAotKyAg ICAweGI5LCAweGYyLCAweDE3LCAweDM2Ci0rfTsKLSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQg Y2hhciBnY21fdGFnW10gPSB7Ci0rICAgIDB4NjcsIDB4YmEsIDB4MDUsIDB4MTAsIDB4MjYsIDB4 MmEsIDB4ZTQsIDB4ODcsIDB4ZDcsIDB4MzcsIDB4ZWUsIDB4NjIsCi0rICAgIDB4OTgsIDB4Zjcs IDB4N2UsIDB4MGMKLSt9OwotKwotK2ludCBGSVBTX3NlbGZ0ZXN0X2Flc19nY20odm9pZCkKLSt7 Ci0rICAgIGludCByZXQgPSAwOwotKyAgICB1bnNpZ25lZCBjaGFyIG91dFsxMjhdLCB0YWdbMTZd OwotKyAgICBFVlBfQ0lQSEVSX0NUWCAqY3R4OwotKwotKyAgICBjdHggPSBFVlBfQ0lQSEVSX0NU WF9uZXcoKTsKLSsgICAgaWYgKGN0eCA9PSBOVUxMKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0r ICAgIG1lbXNldChvdXQsIDAsIHNpemVvZihvdXQpKTsKLSsgICAgbWVtc2V0KHRhZywgMCwgc2l6 ZW9mKHRhZykpOwotKyAgICBpZiAoIUVWUF9DaXBoZXJJbml0X2V4KGN0eCwgRVZQX2Flc18yNTZf Z2NtKCksIE5VTEwsIE5VTEwsIE5VTEwsIDEpKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGlm ICghRVZQX0NJUEhFUl9DVFhfY3RybChjdHgsIEVWUF9DVFJMX0dDTV9TRVRfSVZMRU4sCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YoZ2NtX2l2KSwgTlVMTCkpCi0rICAgICAg ICBnb3RvIGVycjsKLSsgICAgaWYgKCFFVlBfQ2lwaGVySW5pdF9leChjdHgsIE5VTEwsIE5VTEws IGdjbV9rZXksIGdjbV9pdiwgMSkpCi0rICAgICAgICBnb3RvIGVycjsKLSsgICAgaWYgKEVWUF9D aXBoZXIoY3R4LCBOVUxMLCBnY21fYWFkLCBzaXplb2YoZ2NtX2FhZCkpIDwgMCkKLSsgICAgICAg IGdvdG8gZXJyOwotKyAgICBpZiAoRVZQX0NpcGhlcihjdHgsIG91dCwgZ2NtX3B0LCBzaXplb2Yo Z2NtX3B0KSkgIT0gc2l6ZW9mKGdjbV9jdCkpCi0rICAgICAgICBnb3RvIGVycjsKLSsgICAgaWYg KEVWUF9DaXBoZXIoY3R4LCBOVUxMLCBOVUxMLCAwKSA8IDApCi0rICAgICAgICBnb3RvIGVycjsK LSsKLSsgICAgaWYgKCFFVlBfQ0lQSEVSX0NUWF9jdHJsKGN0eCwgRVZQX0NUUkxfR0NNX0dFVF9U QUcsIDE2LCB0YWcpKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIGlmIChtZW1jbXAodGFn LCBnY21fdGFnLCAxNikgfHwgbWVtY21wKG91dCwgZ2NtX2N0LCAxNikpCi0rICAgICAgICBnb3Rv IGVycjsKLSsKLSsgICAgbWVtc2V0KG91dCwgMCwgc2l6ZW9mKG91dCkpOwotKwotKyAgICBpZiAo IUVWUF9DaXBoZXJJbml0X2V4KGN0eCwgRVZQX2Flc18yNTZfZ2NtKCksIE5VTEwsIE5VTEwsIE5V TEwsIDApKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGlmICghRVZQX0NJUEhFUl9DVFhfY3Ry bChjdHgsIEVWUF9DVFJMX0dDTV9TRVRfSVZMRU4sCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBzaXplb2YoZ2NtX2l2KSwgTlVMTCkpCi0rICAgICAgICBnb3RvIGVycjsKLSsgICAgaWYg KCFFVlBfQ0lQSEVSX0NUWF9jdHJsKGN0eCwgRVZQX0NUUkxfR0NNX1NFVF9UQUcsIDE2LCB0YWcp KQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGlmICghRVZQX0NpcGhlckluaXRfZXgoY3R4LCBO VUxMLCBOVUxMLCBnY21fa2V5LCBnY21faXYsIDApKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAg IGlmIChFVlBfQ2lwaGVyKGN0eCwgTlVMTCwgZ2NtX2FhZCwgc2l6ZW9mKGdjbV9hYWQpKSA8IDAp Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgaWYgKEVWUF9DaXBoZXIoY3R4LCBvdXQsIGdjbV9j dCwgc2l6ZW9mKGdjbV9jdCkpICE9IHNpemVvZihnY21fcHQpKQotKyAgICAgICAgZ290byBlcnI7 Ci0rICAgIGlmIChFVlBfQ2lwaGVyKGN0eCwgTlVMTCwgTlVMTCwgMCkgPCAwKQotKyAgICAgICAg Z290byBlcnI7Ci0rCi0rICAgIGlmIChtZW1jbXAob3V0LCBnY21fcHQsIDE2KSkKLSsgICAgICAg IGdvdG8gZXJyOwotKwotKyAgICByZXQgPSAxOwotKwotKyBlcnI6Ci0rICAgIEVWUF9DSVBIRVJf Q1RYX2ZyZWUoY3R4KTsKLSsKLSsgICAgaWYgKHJldCA9PSAwKSB7Ci0rICAgICAgICBGSVBTZXJy KEZJUFNfRl9GSVBTX1NFTEZURVNUX0FFU19HQ00sIEZJUFNfUl9TRUxGVEVTVF9GQUlMRUQpOwot KyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0gZWxzZQotKyAgICAgICAgcmV0dXJuIHJldDsKLSsK LSt9Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgWFRTXzEyOF9rZXlbXSA9IHsKLSsg ICAgMHhhMSwgMHhiOSwgMHgwYywgMHhiYSwgMHgzZiwgMHgwNiwgMHhhYywgMHgzNSwgMHgzYiwg MHgyYywgMHgzNCwgMHgzOCwKLSsgICAgMHg3NiwgMHgwOCwgMHgxNywgMHg2MiwgMHgwOSwgMHgw OSwgMHgyMywgMHgwMiwgMHg2ZSwgMHg5MSwgMHg3NywgMHgxOCwKLSsgICAgMHgxNSwgMHhmMiwg MHg5ZCwgMHhhYiwgMHgwMSwgMHg5MywgMHgyZiwgMHgyZgotK307Ci0rCi0rc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgWFRTXzEyOF9pW10gPSB7Ci0rICAgIDB4NGYsIDB4YWUsIDB4ZjcsIDB4 MTEsIDB4N2MsIDB4ZGEsIDB4NTksIDB4YzYsIDB4NmUsIDB4NGIsIDB4OTIsIDB4MDEsCi0rICAg IDB4M2UsIDB4NzYsIDB4OGEsIDB4ZDUKLSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIFhUU18xMjhfcHRbXSA9IHsKLSsgICAgMHhlYiwgMHhhYiwgMHhjZSwgMHg5NSwgMHhiMSwg MHg0ZCwgMHgzYywgMHg4ZCwgMHg2ZiwgMHhiMywgMHg1MCwgMHgzOSwKLSsgICAgMHgwNywgMHg5 MCwgMHgzMSwgMHgxYwotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgWFRTXzEy OF9jdFtdID0gewotKyAgICAweDc3LCAweDhhLCAweGU4LCAweGI0LCAweDNjLCAweGI5LCAweDhk LCAweDVhLCAweDgyLCAweDUwLCAweDgxLCAweGQ1LAotKyAgICAweGJlLCAweDQ3LCAweDFjLCAw eDYzCi0rfTsKLSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBYVFNfMjU2X2tleVtdID0g ewotKyAgICAweDFlLCAweGE2LCAweDYxLCAweGM1LCAweDhkLCAweDk0LCAweDNhLCAweDBlLCAw eDQ4LCAweDAxLCAweGU0LCAweDJmLAotKyAgICAweDRiLCAweDA5LCAweDQ3LCAweDE0LCAweDll LCAweDdmLCAweDlmLCAweDhlLCAweDNlLCAweDY4LCAweGQwLCAweGM3LAotKyAgICAweDUwLCAw eDUyLCAweDEwLCAweGJkLCAweDMxLCAweDFhLCAweDBlLCAweDdjLCAweGQ2LCAweGUxLCAweDNm LCAweGZkLAotKyAgICAweGYyLCAweDQxLCAweDhkLCAweDhkLCAweDE5LCAweDExLCAweGMwLCAw eDA0LCAweGNkLCAweGE1LCAweDhkLCAweGEzLAotKyAgICAweGQ2LCAweDE5LCAweGI3LCAweGUy LCAweGI5LCAweDE0LCAweDFlLCAweDU4LCAweDMxLCAweDhlLCAweGVhLCAweDM5LAotKyAgICAw eDJjLCAweGY0LCAweDFiLCAweDA4Ci0rfTsKLSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh ciBYVFNfMjU2X2lbXSA9IHsKLSsgICAgMHhhZCwgMHhmOCwgMHhkOSwgMHgyNiwgMHgyNywgMHg0 NiwgMHg0YSwgMHhkMiwgMHhmMCwgMHg0MiwgMHg4ZSwgMHg4NCwKLSsgICAgMHhhOSwgMHhmOCwg MHg3NSwgMHg2NAotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgWFRTXzI1Nl9w dFtdID0gewotKyAgICAweDJlLCAweGVkLCAweGVhLCAweDUyLCAweGNkLCAweDgyLCAweDE1LCAw eGUxLCAweGFjLCAweGM2LCAweDQ3LCAweGU4LAotKyAgICAweDEwLCAweGJiLCAweGMzLCAweDY0 LCAweDJlLCAweDg3LCAweDI4LCAweDdmLCAweDhkLCAweDJlLCAweDU3LCAweGUzLAotKyAgICAw eDZjLCAweDBhLCAweDI0LCAweGZiLCAweGMxLCAweDJhLCAweDIwLCAweDJlCi0rfTsKLSsKLStz dGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBYVFNfMjU2X2N0W10gPSB7Ci0rICAgIDB4Y2IsIDB4 YWEsIDB4ZDAsIDB4ZTIsIDB4ZjYsIDB4Y2UsIDB4YTMsIDB4ZjUsIDB4MGIsIDB4MzcsIDB4Zjks IDB4MzQsCi0rICAgIDB4ZDQsIDB4NmEsIDB4OWIsIDB4MTMsIDB4MGIsIDB4OWQsIDB4NTQsIDB4 ZjAsIDB4N2UsIDB4MzQsIDB4ZjMsIDB4NmEsCi0rICAgIDB4ZjcsIDB4OTMsIDB4ZTgsIDB4NmYs IDB4NzMsIDB4YzYsIDB4ZDcsIDB4ZGIKLSt9OwotKwotK2ludCBGSVBTX3NlbGZ0ZXN0X2Flc194 dHMoKQotK3sKLSsgICAgaW50IHJldCA9IDE7Ci0rICAgIEVWUF9DSVBIRVJfQ1RYICpjdHg7Ci0r Ci0rICAgIGN0eCA9IEVWUF9DSVBIRVJfQ1RYX25ldygpOwotKyAgICBpZiAoY3R4ID09IE5VTEwp Ci0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgaWYgKGZpcHNfY2lwaGVyX3Rlc3QoY3R4LCBF VlBfYWVzXzEyOF94dHMoKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgWFRTXzEyOF9rZXks IFhUU18xMjhfaSwgWFRTXzEyOF9wdCwgWFRTXzEyOF9jdCwKLSsgICAgICAgICAgICAgICAgICAg ICAgICAgc2l6ZW9mKFhUU18xMjhfcHQpKSA8PSAwKQotKyAgICAgICAgcmV0ID0gMDsKLSsKLSsg ICAgaWYgKGZpcHNfY2lwaGVyX3Rlc3QoY3R4LCBFVlBfYWVzXzI1Nl94dHMoKSwKLSsgICAgICAg ICAgICAgICAgICAgICAgICAgWFRTXzI1Nl9rZXksIFhUU18yNTZfaSwgWFRTXzI1Nl9wdCwgWFRT XzI1Nl9jdCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKFhUU18yNTZfcHQpKSA8 PSAwKQotKyAgICAgICAgcmV0ID0gMDsKLSsKLSsgICAgRVZQX0NJUEhFUl9DVFhfZnJlZShjdHgp OwotKwotKyBlcnI6Ci0rICAgIGlmIChyZXQgPT0gMCkKLSsgICAgICAgIEZJUFNlcnIoRklQU19G X0ZJUFNfU0VMRlRFU1RfQUVTX1hUUywgRklQU19SX1NFTEZURVNUX0ZBSUxFRCk7Ci0rICAgIHJl dHVybiByZXQ7Ci0rfQotKwotKyNlbmRpZgotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRv L2ZpcHMvZmlwcy5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwcy5jCi0tLS0g b3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwcy5jLmZpcHMJMjAyMS0wMy0wMyAxMjo1Nzo0 Mi4xOTg3MzQ1MTcgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzLmMJ MjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTg3MzQ1MTcgKzAxMDAKLUBAIC0wLDAgKzEsNTI2IEBACi0r LyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMDMgVGhlIE9wZW5TU0wgUHJvamVj dC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0rICoKLSsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSsgKiBtb2RpZmlj YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv bnMKLSsgKiBhcmUgbWV0OgotKyAqCi0rICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsgKiAgICBub3RpY2UsIHRoaXMg bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuIAotKyAqCi0r ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh Ym92ZSBjb3B5cmlnaHQKLSsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSsgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBh bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0rICogICAgZGlzdHJpYnV0 aW9uLgotKyAqCi0rICogMy4gQWxsIGFkdmVydGlzaW5nIG1hdGVyaWFscyBtZW50aW9uaW5nIGZl YXR1cmVzIG9yIHVzZSBvZiB0aGlzCi0rICogICAgc29mdHdhcmUgbXVzdCBkaXNwbGF5IHRoZSBm b2xsb3dpbmcgYWNrbm93bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBz b2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVjdAotKyAqICAgIGZvciB1c2Ug aW4gdGhlIE9wZW5TU0wgVG9vbGtpdC4gKGh0dHA6Ly93d3cub3BlbnNzbC5vcmcvKSIKLSsgKgot KyAqIDQuIFRoZSBuYW1lcyAiT3BlblNTTCBUb29sa2l0IiBhbmQgIk9wZW5TU0wgUHJvamVjdCIg bXVzdCBub3QgYmUgdXNlZCB0bwotKyAqICAgIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBk ZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0Ci0rICogICAgcHJpb3Igd3JpdHRlbiBw ZXJtaXNzaW9uLiBGb3Igd3JpdHRlbiBwZXJtaXNzaW9uLCBwbGVhc2UgY29udGFjdAotKyAqICAg IG9wZW5zc2wtY29yZUBvcGVuc3NsLm9yZy4KLSsgKgotKyAqIDUuIFByb2R1Y3RzIGRlcml2ZWQg ZnJvbSB0aGlzIHNvZnR3YXJlIG1heSBub3QgYmUgY2FsbGVkICJPcGVuU1NMIgotKyAqICAgIG5v ciBtYXkgIk9wZW5TU0wiIGFwcGVhciBpbiB0aGVpciBuYW1lcyB3aXRob3V0IHByaW9yIHdyaXR0 ZW4KLSsgKiAgICBwZXJtaXNzaW9uIG9mIHRoZSBPcGVuU1NMIFByb2plY3QuCi0rICoKLSsgKiA2 LiBSZWRpc3RyaWJ1dGlvbnMgb2YgYW55IGZvcm0gd2hhdHNvZXZlciBtdXN0IHJldGFpbiB0aGUg Zm9sbG93aW5nCi0rICogICAgYWNrbm93bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMgcHJvZHVjdCBp bmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVjdAotKyAqICAg IGZvciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtpdCAoaHR0cDovL3d3dy5vcGVuc3NsLm9yZy8p IgotKyAqCi0rICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgT3BlblNTTCBQUk9K RUNUIGBgQVMgSVMnJyBBTkQgQU5ZCi0rICogRVhQUkVTU0VEIE9SIElNUExJRUQgV0FSUkFOVElF UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotKyAqIElNUExJRUQgV0FSUkFO VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotKyAq IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgT3BlblNTTCBQ Uk9KRUNUIE9SCi0rICogSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs IElORElSRUNULCBJTkNJREVOVEFMLAotKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VR VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotKyAqIE5PVCBMSU1JVEVEIFRPLCBQUk9D VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotKyAqIExPU1MgT0YgVVNF LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0rICogSE9XRVZF UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS QUNULAotKyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF IE9SIE9USEVSV0lTRSkKLSsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0Yg VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VECi0rICogT0YgVEhFIFBPU1NJQklMSVRZIE9G IFNVQ0ggREFNQUdFLgotKyAqCi0rICovCi0rCi0rI2RlZmluZSBfR05VX1NPVVJDRQotKwotKyNp bmNsdWRlIDxvcGVuc3NsL3JhbmQuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9maXBzX3JhbmQuaD4K LSsjaW5jbHVkZSA8b3BlbnNzbC9lcnIuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9iaW8uaD4KLSsj aW5jbHVkZSA8b3BlbnNzbC9obWFjLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvcnNhLmg+Ci0rI2lu Y2x1ZGUgPHN0cmluZy5oPgotKyNpbmNsdWRlIDxsaW1pdHMuaD4KLSsjaW5jbHVkZSA8ZGxmY24u aD4KLSsjaW5jbHVkZSA8c3RkaW8uaD4KLSsjaW5jbHVkZSA8c3RkbGliLmg+Ci0rI2luY2x1ZGUg PHVuaXN0ZC5oPgotKyNpbmNsdWRlIDxlcnJuby5oPgotKyNpbmNsdWRlICJmaXBzX2xvY2wuaCIK LSsKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rCi0rIyBpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4K LSsjIGluY2x1ZGUgImludGVybmFsL3RocmVhZF9vbmNlLmgiCi0rCi0rIyBpZm5kZWYgUEFUSF9N QVgKLSsjICBkZWZpbmUgUEFUSF9NQVggMTAyNAotKyMgZW5kaWYKLSsKLStzdGF0aWMgaW50IGZp cHNfc2VsZnRlc3RfZmFpbCA9IDA7Ci0rc3RhdGljIGludCBmaXBzX21vZGUgPSAwOwotK3N0YXRp YyBpbnQgZmlwc19zdGFydGVkID0gMDsKLSsKLStzdGF0aWMgaW50IGZpcHNfaXNfb3duaW5nX3Ro cmVhZCh2b2lkKTsKLStzdGF0aWMgaW50IGZpcHNfc2V0X293bmluZ190aHJlYWQodm9pZCk7Ci0r c3RhdGljIGludCBmaXBzX2NsZWFyX293bmluZ190aHJlYWQodm9pZCk7Ci0rCi0rc3RhdGljIENS WVBUT19SV0xPQ0sgKmZpcHNfbG9jayA9IE5VTEw7Ci0rc3RhdGljIENSWVBUT19SV0xPQ0sgKmZp cHNfb3duaW5nX2xvY2sgPSBOVUxMOwotK3N0YXRpYyBDUllQVE9fT05DRSBmaXBzX2xvY2tfaW5p dCA9IENSWVBUT19PTkNFX1NUQVRJQ19JTklUOwotKwotK0RFRklORV9SVU5fT05DRV9TVEFUSUMo ZG9fZmlwc19sb2NrX2luaXQpCi0rewotKyAgICBmaXBzX2xvY2sgPSBDUllQVE9fVEhSRUFEX2xv Y2tfbmV3KCk7Ci0rICAgIGZpcHNfb3duaW5nX2xvY2sgPSBDUllQVE9fVEhSRUFEX2xvY2tfbmV3 KCk7Ci0rICAgIHJldHVybiBmaXBzX2xvY2sgIT0gTlVMTCAmJiBmaXBzX293bmluZ19sb2NrICE9 IE5VTEw7Ci0rfQotKwotKyMgZGVmaW5lIGZpcHNfd19sb2NrKCkgICBDUllQVE9fVEhSRUFEX3dy aXRlX2xvY2soZmlwc19sb2NrKQotKyMgZGVmaW5lIGZpcHNfd191bmxvY2soKSBDUllQVE9fVEhS RUFEX3VubG9jayhmaXBzX2xvY2spCi0rIyBkZWZpbmUgZmlwc19yX2xvY2soKSAgIENSWVBUT19U SFJFQURfcmVhZF9sb2NrKGZpcHNfbG9jaykKLSsjIGRlZmluZSBmaXBzX3JfdW5sb2NrKCkgQ1JZ UFRPX1RIUkVBRF91bmxvY2soZmlwc19sb2NrKQotKwotK3N0YXRpYyB2b2lkIGZpcHNfc2V0X21v ZGUoaW50IG9ub2ZmKQotK3sKLSsgICAgaW50IG93bmluZ190aHJlYWQgPSBmaXBzX2lzX293bmlu Z190aHJlYWQoKTsKLSsKLSsgICAgaWYgKGZpcHNfc3RhcnRlZCkgewotKyAgICAgICAgaWYgKCFv d25pbmdfdGhyZWFkKQotKyAgICAgICAgICAgIGZpcHNfd19sb2NrKCk7Ci0rICAgICAgICBmaXBz X21vZGUgPSBvbm9mZjsKLSsgICAgICAgIGlmICghb3duaW5nX3RocmVhZCkKLSsgICAgICAgICAg ICBmaXBzX3dfdW5sb2NrKCk7Ci0rICAgIH0KLSt9Ci0rCi0raW50IEZJUFNfbW9kdWxlX21vZGUo dm9pZCkKLSt7Ci0rICAgIGludCByZXQgPSAwOwotKyAgICBpbnQgb3duaW5nX3RocmVhZCA9IGZp cHNfaXNfb3duaW5nX3RocmVhZCgpOwotKwotKyAgICBpZiAoZmlwc19zdGFydGVkKSB7Ci0rICAg ICAgICBpZiAoIW93bmluZ190aHJlYWQpCi0rICAgICAgICAgICAgZmlwc19yX2xvY2soKTsKLSsg ICAgICAgIHJldCA9IGZpcHNfbW9kZTsKLSsgICAgICAgIGlmICghb3duaW5nX3RocmVhZCkKLSsg ICAgICAgICAgICBmaXBzX3JfdW5sb2NrKCk7Ci0rICAgIH0KLSsgICAgcmV0dXJuIHJldDsKLSt9 Ci0rCi0rLyoganVzdCBhIGNvbXBhdCBzeW1ib2wgLSByZXR1cm4gTlVMTCAqLwotK2ludCBGSVBT X3NlbGZ0ZXN0X2ZhaWxlZCh2b2lkKQotK3sKLSsgICAgaW50IHJldCA9IDA7Ci0rICAgIGlmIChm aXBzX3N0YXJ0ZWQpIHsKLSsgICAgICAgIGludCBvd25pbmdfdGhyZWFkID0gZmlwc19pc19vd25p bmdfdGhyZWFkKCk7Ci0rCi0rICAgICAgICBpZiAoIW93bmluZ190aHJlYWQpCi0rICAgICAgICAg ICAgZmlwc19yX2xvY2soKTsKLSsgICAgICAgIHJldCA9IGZpcHNfc2VsZnRlc3RfZmFpbDsKLSsg ICAgICAgIGlmICghb3duaW5nX3RocmVhZCkKLSsgICAgICAgICAgICBmaXBzX3JfdW5sb2NrKCk7 Ci0rICAgIH0KLSsgICAgcmV0dXJuIHJldDsKLSt9Ci0rCi0rLyogU2VsZnRlc3QgZmFpbHVyZSBm YXRhbCBleGl0IHJvdXRpbmUuIFRoaXMgd2lsbCBiZSBjYWxsZWQKLSsgKiBkdXJpbmcgKmFueSog Y3J5cHRvZ3JhcGhpYyBvcGVyYXRpb24uIEl0IGhhcyB0aGUgbWluaW11bQotKyAqIG92ZXJoZWFk IHBvc3NpYmxlIHRvIGF2b2lkIHRvbyBiaWcgYSBwZXJmb3JtYW5jZSBoaXQuCi0rICovCi0rCi0r dm9pZCBGSVBTX3NlbGZ0ZXN0X2NoZWNrKHZvaWQpCi0rewotKyAgICBpZiAoZmlwc19zZWxmdGVz dF9mYWlsKSB7Ci0rICAgICAgICBPcGVuU1NMRGllKF9fRklMRV9fLCBfX0xJTkVfXywgIkZBVEFM IEZJUFMgU0VMRlRFU1QgRkFJTFVSRSIpOwotKyAgICB9Ci0rfQotKwotK3ZvaWQgZmlwc19zZXRf c2VsZnRlc3RfZmFpbCh2b2lkKQotK3sKLSsgICAgZmlwc19zZWxmdGVzdF9mYWlsID0gMTsKLSt9 Ci0rCi0rLyogd2UgaW1wbGVtZW50IHdoYXQgbGliZmlwc2NoZWNrIGRvZXMgb3Vyc2VsdmVzICov Ci0rCi0rc3RhdGljIGludAotK2dldF9saWJyYXJ5X3BhdGgoY29uc3QgY2hhciAqbGlibmFtZSwg Y29uc3QgY2hhciAqc3ltYm9sbmFtZSwgY2hhciAqcGF0aCwKLSsgICAgICAgICAgICAgICAgIHNp emVfdCBwYXRobGVuKQotK3sKLSsgICAgRGxfaW5mbyBpbmZvOwotKyAgICB2b2lkICpkbCwgKnN5 bTsKLSsgICAgaW50IHJ2ID0gLTE7Ci0rCi0rICAgIGRsID0gZGxvcGVuKGxpYm5hbWUsIFJUTERf TEFaWSk7Ci0rICAgIGlmIChkbCA9PSBOVUxMKSB7Ci0rICAgICAgICByZXR1cm4gLTE7Ci0rICAg IH0KLSsKLSsgICAgc3ltID0gZGxzeW0oZGwsIHN5bWJvbG5hbWUpOwotKwotKyAgICBpZiAoc3lt ICE9IE5VTEwgJiYgZGxhZGRyKHN5bSwgJmluZm8pKSB7Ci0rICAgICAgICBzdHJuY3B5KHBhdGgs IGluZm8uZGxpX2ZuYW1lLCBwYXRobGVuIC0gMSk7Ci0rICAgICAgICBwYXRoW3BhdGhsZW4gLSAx XSA9ICdcMCc7Ci0rICAgICAgICBydiA9IDA7Ci0rICAgIH0KLSsKLSsgICAgZGxjbG9zZShkbCk7 Ci0rCi0rICAgIHJldHVybiBydjsKLSt9Ci0rCi0rc3RhdGljIGNvbnN0IGNoYXIgY29udltdID0g IjAxMjM0NTY3ODlhYmNkZWYiOwotKwotK3N0YXRpYyBjaGFyICpiaW4yaGV4KHZvaWQgKmJ1Ziwg c2l6ZV90IGxlbikKLSt7Ci0rICAgIGNoYXIgKmhleCwgKnA7Ci0rICAgIHVuc2lnbmVkIGNoYXIg KnNyYyA9IGJ1ZjsKLSsKLSsgICAgaGV4ID0gbWFsbG9jKGxlbiAqIDIgKyAxKTsKLSsgICAgaWYg KGhleCA9PSBOVUxMKQotKyAgICAgICAgcmV0dXJuIE5VTEw7Ci0rCi0rICAgIHAgPSBoZXg7Ci0r Ci0rICAgIHdoaWxlIChsZW4gPiAwKSB7Ci0rICAgICAgICB1bnNpZ25lZCBjOwotKwotKyAgICAg ICAgYyA9ICpzcmM7Ci0rICAgICAgICBzcmMrKzsKLSsKLSsgICAgICAgICpwID0gY29udltjID4+ IDRdOwotKyAgICAgICAgKytwOwotKyAgICAgICAgKnAgPSBjb252W2MgJiAweDBmXTsKLSsgICAg ICAgICsrcDsKLSsgICAgICAgIC0tbGVuOwotKyAgICB9Ci0rICAgICpwID0gJ1wwJzsKLSsgICAg cmV0dXJuIGhleDsKLSt9Ci0rCi0rIyBkZWZpbmUgSE1BQ19QUkVGSVggIi4iCi0rIyBpZm5kZWYg SE1BQ19TVUZGSVgKLSsjICBkZWZpbmUgSE1BQ19TVUZGSVggIi5obWFjIgotKyMgZW5kaWYKLSsj IGRlZmluZSBSRUFEX0JVRkZFUl9MRU5HVEggMTYzODQKLSsKLStzdGF0aWMgY2hhciAqbWFrZV9o bWFjX3BhdGgoY29uc3QgY2hhciAqb3JpZ3BhdGgpCi0rewotKyAgICBjaGFyICpwYXRoLCAqcDsK LSsgICAgY29uc3QgY2hhciAqZm47Ci0rCi0rICAgIHBhdGggPQotKyAgICAgICAgbWFsbG9jKHNp emVvZihITUFDX1BSRUZJWCkgKyBzaXplb2YoSE1BQ19TVUZGSVgpICsgc3RybGVuKG9yaWdwYXRo KSk7Ci0rICAgIGlmIChwYXRoID09IE5VTEwpIHsKLSsgICAgICAgIHJldHVybiBOVUxMOwotKyAg ICB9Ci0rCi0rICAgIGZuID0gc3RycmNocihvcmlncGF0aCwgJy8nKTsKLSsgICAgaWYgKGZuID09 IE5VTEwpIHsKLSsgICAgICAgIGZuID0gb3JpZ3BhdGg7Ci0rICAgIH0gZWxzZSB7Ci0rICAgICAg ICArK2ZuOwotKyAgICB9Ci0rCi0rICAgIHN0cm5jcHkocGF0aCwgb3JpZ3BhdGgsIGZuIC0gb3Jp Z3BhdGgpOwotKyAgICBwID0gcGF0aCArIChmbiAtIG9yaWdwYXRoKTsKLSsgICAgcCA9IHN0cGNw eShwLCBITUFDX1BSRUZJWCk7Ci0rICAgIHAgPSBzdHBjcHkocCwgZm4pOwotKyAgICBwID0gc3Rw Y3B5KHAsIEhNQUNfU1VGRklYKTsKLSsKLSsgICAgcmV0dXJuIHBhdGg7Ci0rfQotKwotK3N0YXRp YyBjb25zdCBjaGFyIGhtYWNrZXlbXSA9ICJvcmJvRGVKSVRJVGVqc2lycEFET05pdmlycFVrdmFy UCI7Ci0rCi0rc3RhdGljIGludCBjb21wdXRlX2ZpbGVfaG1hYyhjb25zdCBjaGFyICpwYXRoLCB2 b2lkICoqYnVmLCBzaXplX3QgKmhtYWNsZW4pCi0rewotKyAgICBGSUxFICpmID0gTlVMTDsKLSsg ICAgaW50IHJ2ID0gLTE7Ci0rICAgIHVuc2lnbmVkIGNoYXIgcmJ1ZltSRUFEX0JVRkZFUl9MRU5H VEhdOwotKyAgICBzaXplX3QgbGVuOwotKyAgICB1bnNpZ25lZCBpbnQgaGxlbjsKLSsgICAgSE1B Q19DVFggKmM7Ci0rCi0rICAgIGMgPSBITUFDX0NUWF9uZXcoKTsKLSsgICAgaWYgKGMgPT0gTlVM TCkKLSsgICAgICAgIHJldHVybiBydjsKLSsKLSsgICAgZiA9IGZvcGVuKHBhdGgsICJyIik7Ci0r Ci0rICAgIGlmIChmID09IE5VTEwpIHsKLSsgICAgICAgIGdvdG8gZW5kOwotKyAgICB9Ci0rCi0r ICAgIGlmIChITUFDX0luaXRfZXgoYywgaG1hY2tleSwgc2l6ZW9mKGhtYWNrZXkpIC0gMSwgRVZQ X3NoYTI1NigpLCBOVUxMKSA8PSAwKSB7Ci0rICAgICAgICBnb3RvIGVuZDsKLSsgICAgfQotKwot KyAgICB3aGlsZSAoKGxlbiA9IGZyZWFkKHJidWYsIDEsIHNpemVvZihyYnVmKSwgZikpICE9IDAp IHsKLSsgICAgICAgIGlmIChITUFDX1VwZGF0ZShjLCByYnVmLCBsZW4pIDw9IDApIHsKLSsgICAg ICAgICAgICBnb3RvIGVuZDsKLSsgICAgICAgIH0KLSsgICAgfQotKwotKyAgICBsZW4gPSBzaXpl b2YocmJ1Zik7Ci0rICAgIC8qIHJldXNlIHJidWYgZm9yIGhtYWMgKi8KLSsgICAgaWYgKEhNQUNf RmluYWwoYywgcmJ1ZiwgJmhsZW4pIDw9IDApIHsKLSsgICAgICAgIGdvdG8gZW5kOwotKyAgICB9 Ci0rCi0rICAgICpidWYgPSBtYWxsb2MoaGxlbik7Ci0rICAgIGlmICgqYnVmID09IE5VTEwpIHsK LSsgICAgICAgIGdvdG8gZW5kOwotKyAgICB9Ci0rCi0rICAgICpobWFjbGVuID0gaGxlbjsKLSsK LSsgICAgbWVtY3B5KCpidWYsIHJidWYsIGhsZW4pOwotKwotKyAgICBydiA9IDA7Ci0rIGVuZDoK LSsgICAgSE1BQ19DVFhfZnJlZShjKTsKLSsKLSsgICAgaWYgKGYpCi0rICAgICAgICBmY2xvc2Uo Zik7Ci0rCi0rICAgIHJldHVybiBydjsKLSt9Ci0rCi0rc3RhdGljIGludCBGSVBTQ0hFQ0tfdmVy aWZ5KGNvbnN0IGNoYXIgKnBhdGgpCi0rewotKyAgICBpbnQgcnYgPSAwOwotKyAgICBGSUxFICpo ZjsKLSsgICAgY2hhciAqaG1hY3BhdGgsICpwOwotKyAgICBjaGFyICpobWFjID0gTlVMTDsKLSsg ICAgc2l6ZV90IG47Ci0rCi0rICAgIGhtYWNwYXRoID0gbWFrZV9obWFjX3BhdGgocGF0aCk7Ci0r ICAgIGlmIChobWFjcGF0aCA9PSBOVUxMKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIGhm ID0gZm9wZW4oaG1hY3BhdGgsICJyIik7Ci0rICAgIGlmIChoZiA9PSBOVUxMKSB7Ci0rICAgICAg ICBmcmVlKGhtYWNwYXRoKTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rCi0rICAgIGlm IChnZXRsaW5lKCZobWFjLCAmbiwgaGYpID4gMCkgewotKyAgICAgICAgdm9pZCAqYnVmOwotKyAg ICAgICAgc2l6ZV90IGhtYWNsZW47Ci0rICAgICAgICBjaGFyICpoZXg7Ci0rCi0rICAgICAgICBp ZiAoKHAgPSBzdHJjaHIoaG1hYywgJ1xuJykpICE9IE5VTEwpCi0rICAgICAgICAgICAgKnAgPSAn XDAnOwotKwotKyAgICAgICAgaWYgKGNvbXB1dGVfZmlsZV9obWFjKHBhdGgsICZidWYsICZobWFj bGVuKSA8IDApIHsKLSsgICAgICAgICAgICBydiA9IC00OwotKyAgICAgICAgICAgIGdvdG8gZW5k OwotKyAgICAgICAgfQotKwotKyAgICAgICAgaWYgKChoZXggPSBiaW4yaGV4KGJ1ZiwgaG1hY2xl bikpID09IE5VTEwpIHsKLSsgICAgICAgICAgICBmcmVlKGJ1Zik7Ci0rICAgICAgICAgICAgcnYg PSAtNTsKLSsgICAgICAgICAgICBnb3RvIGVuZDsKLSsgICAgICAgIH0KLSsKLSsgICAgICAgIGlm IChzdHJjbXAoaGV4LCBobWFjKSAhPSAwKSB7Ci0rICAgICAgICAgICAgcnYgPSAtMTsKLSsgICAg ICAgIH0KLSsgICAgICAgIGZyZWUoYnVmKTsKLSsgICAgICAgIGZyZWUoaGV4KTsKLSsgICAgfSBl bHNlIHsKLSsgICAgICAgIHJ2ID0gLTE7Ci0rICAgIH0KLSsKLSsgZW5kOgotKyAgICBmcmVlKGht YWMpOwotKyAgICBmcmVlKGhtYWNwYXRoKTsKLSsgICAgZmNsb3NlKGhmKTsKLSsKLSsgICAgaWYg KHJ2IDwgMCkKLSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICAvKiBjaGVjayBzdWNjZXNzZnVs ICovCi0rICAgIHJldHVybiAxOwotK30KLSsKLStzdGF0aWMgaW50IHZlcmlmeV9jaGVja3N1bXMo dm9pZCkKLSt7Ci0rICAgIGludCBydjsKLSsgICAgY2hhciBwYXRoW1BBVEhfTUFYICsgMV07Ci0r ICAgIGNoYXIgKnA7Ci0rCi0rICAgIC8qIHdlIG5lZWQgdG8gYXZvaWQgZGxvcGVuaW5nIGxpYnNz bCwgYXNzdW1lIGJvdGggbGliY3J5cHRvIGFuZCBsaWJzc2wKLSsgICAgICAgYXJlIGluIHRoZSBz YW1lIGRpcmVjdG9yeSAqLwotKwotKyAgICBydiA9IGdldF9saWJyYXJ5X3BhdGgoImxpYmNyeXB0 by5zby4iIFNITElCX1ZFUlNJT05fTlVNQkVSLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg IkZJUFNfbW9kZV9zZXQiLCBwYXRoLCBzaXplb2YocGF0aCkpOwotKyAgICBpZiAocnYgPCAwKQot KyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIHJ2ID0gRklQU0NIRUNLX3ZlcmlmeShwYXRoKTsK LSsgICAgaWYgKCFydikKLSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICAvKiByZXBsYWNlIGxp YmNyeXB0byB3aXRoIGxpYnNzbCAqLwotKyAgICB3aGlsZSAoKHAgPSBzdHJzdHIocGF0aCwgImxp YmNyeXB0by5zbyIpKSAhPSBOVUxMKSB7Ci0rICAgICAgICBwID0gc3RwY3B5KHAsICJsaWJzc2wi KTsKLSsgICAgICAgIG1lbW1vdmUocCwgcCArIDMsIHN0cmxlbihwICsgMikpOwotKyAgICB9Ci0r Ci0rICAgIHJ2ID0gRklQU0NIRUNLX3ZlcmlmeShwYXRoKTsKLSsgICAgaWYgKCFydikKLSsgICAg ICAgIHJldHVybiAwOwotKyAgICByZXR1cm4gMTsKLSt9Ci0rCi0rIyBpZm5kZWYgRklQU19NT0RV TEVfUEFUSAotKyMgIGRlZmluZSBGSVBTX01PRFVMRV9QQVRIICIvZXRjL3N5c3RlbS1maXBzIgot KyMgZW5kaWYKLSsKLStpbnQgRklQU19tb2R1bGVfaW5zdGFsbGVkKHZvaWQpCi0rewotKyAgICBp bnQgcnY7Ci0rICAgIHJ2ID0gYWNjZXNzKEZJUFNfTU9EVUxFX1BBVEgsIEZfT0spOwotKyAgICBp ZiAocnYgPCAwICYmIGVycm5vICE9IEVOT0VOVCkKLSsgICAgICAgIHJ2ID0gMDsKLSsKLSsgICAg LyogSW5zdGFsbGVkID09IHRydWUgKi8KLSsgICAgcmV0dXJuICFydiB8fCBGSVBTX21vZHVsZV9t b2RlKCk7Ci0rfQotKwotK2ludCBGSVBTX21vZHVsZV9tb2RlX3NldChpbnQgb25vZmYpCi0rewot KyAgICBpbnQgcmV0ID0gMDsKLSsKLSsgICAgaWYgKCFSVU5fT05DRSgmZmlwc19sb2NrX2luaXQs IGRvX2ZpcHNfbG9ja19pbml0KSkKLSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICBmaXBzX3df bG9jaygpOwotKyAgICBmaXBzX3N0YXJ0ZWQgPSAxOwotKyAgICBmaXBzX3NldF9vd25pbmdfdGhy ZWFkKCk7Ci0rCi0rICAgIGlmIChvbm9mZikgewotKwotKyAgICAgICAgZmlwc19zZWxmdGVzdF9m YWlsID0gMDsKLSsKLSsgICAgICAgIC8qIERvbid0IGdvIGludG8gRklQUyBtb2RlIHR3aWNlLCBq dXN0IHNvIHdlIGNhbiBkbyBhdXRvbWFnaWMKLSsgICAgICAgICAgIHNlZWRpbmcgKi8KLSsgICAg ICAgIGlmIChGSVBTX21vZHVsZV9tb2RlKCkpIHsKLSsgICAgICAgICAgICBGSVBTZXJyKEZJUFNf Rl9GSVBTX01PRFVMRV9NT0RFX1NFVCwKLSsgICAgICAgICAgICAgICAgICAgIEZJUFNfUl9GSVBT X01PREVfQUxSRUFEWV9TRVQpOwotKyAgICAgICAgICAgIGZpcHNfc2VsZnRlc3RfZmFpbCA9IDE7 Ci0rICAgICAgICAgICAgcmV0ID0gMDsKLSsgICAgICAgICAgICBnb3RvIGVuZDsKLSsgICAgICAg IH0KLSsjIGlmZGVmIE9QRU5TU0xfSUEzMl9TU0UyCi0rICAgICAgICB7Ci0rICAgICAgICAgICAg ZXh0ZXJuIHVuc2lnbmVkIGludCBPUEVOU1NMX2lhMzJjYXBfUFsyXTsKLSsgICAgICAgICAgICBp ZiAoKE9QRU5TU0xfaWEzMmNhcF9QWzBdICYgKDEgPDwgMjUgfCAxIDw8IDI2KSkgIT0KLSsgICAg ICAgICAgICAgICAgKDEgPDwgMjUgfCAxIDw8IDI2KSkgewotKyAgICAgICAgICAgICAgICBGSVBT ZXJyKEZJUFNfRl9GSVBTX01PRFVMRV9NT0RFX1NFVCwKLSsgICAgICAgICAgICAgICAgICAgICAg ICBGSVBTX1JfVU5TVVBQT1JURURfUExBVEZPUk0pOwotKyAgICAgICAgICAgICAgICBmaXBzX3Nl bGZ0ZXN0X2ZhaWwgPSAxOwotKyAgICAgICAgICAgICAgICByZXQgPSAwOwotKyAgICAgICAgICAg ICAgICBnb3RvIGVuZDsKLSsgICAgICAgICAgICB9Ci0rICAgICAgICB9Ci0rIyBlbmRpZgotKwot KyAgICAgICAgaWYgKCFGSVBTX3NlbGZ0ZXN0KCkpIHsKLSsgICAgICAgICAgICBmaXBzX3NlbGZ0 ZXN0X2ZhaWwgPSAxOwotKyAgICAgICAgICAgIHJldCA9IDA7Ci0rICAgICAgICAgICAgZ290byBl bmQ7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBpZiAoIXZlcmlmeV9jaGVja3N1bXMoKSkgewot KyAgICAgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfTU9EVUxFX01PREVfU0VULAotKyAgICAg ICAgICAgICAgICAgICAgRklQU19SX0ZJTkdFUlBSSU5UX0RPRVNfTk9UX01BVENIKTsKLSsgICAg ICAgICAgICBmaXBzX3NlbGZ0ZXN0X2ZhaWwgPSAxOwotKyAgICAgICAgICAgIHJldCA9IDA7Ci0r ICAgICAgICAgICAgZ290byBlbmQ7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBmaXBzX3NldF9t b2RlKG9ub2ZmKTsKLSsgICAgICAgIHJldCA9IDE7Ci0rICAgICAgICBnb3RvIGVuZDsKLSsgICAg fQotKyAgICBmaXBzX3NldF9tb2RlKDApOwotKyAgICBmaXBzX3NlbGZ0ZXN0X2ZhaWwgPSAwOwot KyAgICByZXQgPSAxOwotKyBlbmQ6Ci0rICAgIGZpcHNfY2xlYXJfb3duaW5nX3RocmVhZCgpOwot KyAgICBmaXBzX3dfdW5sb2NrKCk7Ci0rICAgIHJldHVybiByZXQ7Ci0rfQotKwotK3N0YXRpYyBD UllQVE9fVEhSRUFEX0lEIGZpcHNfdGhyZWFkaWQ7Ci0rc3RhdGljIGludCBmaXBzX3RocmVhZF9z ZXQgPSAwOwotKwotK3N0YXRpYyBpbnQgZmlwc19pc19vd25pbmdfdGhyZWFkKHZvaWQpCi0rewot KyAgICBpbnQgcmV0ID0gMDsKLSsKLSsgICAgaWYgKGZpcHNfc3RhcnRlZCkgewotKyAgICAgICAg Q1JZUFRPX1RIUkVBRF9yZWFkX2xvY2soZmlwc19vd25pbmdfbG9jayk7Ci0rICAgICAgICBpZiAo Zmlwc190aHJlYWRfc2V0KSB7Ci0rICAgICAgICAgICAgQ1JZUFRPX1RIUkVBRF9JRCBjdXIgPSBD UllQVE9fVEhSRUFEX2dldF9jdXJyZW50X2lkKCk7Ci0rICAgICAgICAgICAgaWYgKENSWVBUT19U SFJFQURfY29tcGFyZV9pZChmaXBzX3RocmVhZGlkLCBjdXIpKQotKyAgICAgICAgICAgICAgICBy ZXQgPSAxOwotKyAgICAgICAgfQotKyAgICAgICAgQ1JZUFRPX1RIUkVBRF91bmxvY2soZmlwc19v d25pbmdfbG9jayk7Ci0rICAgIH0KLSsgICAgcmV0dXJuIHJldDsKLSt9Ci0rCi0raW50IGZpcHNf c2V0X293bmluZ190aHJlYWQodm9pZCkKLSt7Ci0rICAgIGludCByZXQgPSAwOwotKwotKyAgICBp ZiAoZmlwc19zdGFydGVkKSB7Ci0rICAgICAgICBDUllQVE9fVEhSRUFEX3dyaXRlX2xvY2soZmlw c19vd25pbmdfbG9jayk7Ci0rICAgICAgICBpZiAoIWZpcHNfdGhyZWFkX3NldCkgewotKyAgICAg ICAgICAgIGZpcHNfdGhyZWFkaWQgPSBDUllQVE9fVEhSRUFEX2dldF9jdXJyZW50X2lkKCk7Ci0r ICAgICAgICAgICAgcmV0ID0gMTsKLSsgICAgICAgICAgICBmaXBzX3RocmVhZF9zZXQgPSAxOwot KyAgICAgICAgfQotKyAgICAgICAgQ1JZUFRPX1RIUkVBRF91bmxvY2soZmlwc19vd25pbmdfbG9j ayk7Ci0rICAgIH0KLSsgICAgcmV0dXJuIHJldDsKLSt9Ci0rCi0raW50IGZpcHNfY2xlYXJfb3du aW5nX3RocmVhZCh2b2lkKQotK3sKLSsgICAgaW50IHJldCA9IDA7Ci0rCi0rICAgIGlmIChmaXBz X3N0YXJ0ZWQpIHsKLSsgICAgICAgIENSWVBUT19USFJFQURfd3JpdGVfbG9jayhmaXBzX293bmlu Z19sb2NrKTsKLSsgICAgICAgIGlmIChmaXBzX3RocmVhZF9zZXQpIHsKLSsgICAgICAgICAgICBD UllQVE9fVEhSRUFEX0lEIGN1ciA9IENSWVBUT19USFJFQURfZ2V0X2N1cnJlbnRfaWQoKTsKLSsg ICAgICAgICAgICBpZiAoQ1JZUFRPX1RIUkVBRF9jb21wYXJlX2lkKGZpcHNfdGhyZWFkaWQsIGN1 cikpCi0rICAgICAgICAgICAgICAgIGZpcHNfdGhyZWFkX3NldCA9IDA7Ci0rICAgICAgICB9Ci0r ICAgICAgICBDUllQVE9fVEhSRUFEX3VubG9jayhmaXBzX293bmluZ19sb2NrKTsKLSsgICAgfQot KyAgICByZXR1cm4gcmV0OwotK30KLSsKLSsjZW5kaWYKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFq L2NyeXB0by9maXBzL2ZpcHNfY21hY19zZWxmdGVzdC5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5 cHRvL2ZpcHMvZmlwc19jbWFjX3NlbGZ0ZXN0LmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8v Zmlwcy9maXBzX2NtYWNfc2VsZnRlc3QuYy5maXBzCTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk5NzM0 NTI1ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19jbWFjX3NlbGZ0 ZXN0LmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTk3MzQ1MjUgKzAxMDAKLUBAIC0wLDAgKzEsMTU2 IEBACi0rLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMTEgVGhlIE9wZW5TU0wg UHJvamVjdC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0rICoKLSsgKiBSZWRpc3RyaWJ1dGlvbiBh bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSsgKiBt b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv bmRpdGlvbnMKLSsgKiBhcmUgbWV0OgotKyAqCi0rICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsgKiAgICBub3RpY2Us IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuIAot KyAqCi0rICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSsgKiAgICB0aGUgZG9jdW1lbnRh dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0rICogICAgZGlz dHJpYnV0aW9uLgotKyAqCi0rICogMy4gQWxsIGFkdmVydGlzaW5nIG1hdGVyaWFscyBtZW50aW9u aW5nIGZlYXR1cmVzIG9yIHVzZSBvZiB0aGlzCi0rICogICAgc29mdHdhcmUgbXVzdCBkaXNwbGF5 IHRoZSBmb2xsb3dpbmcgYWNrbm93bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMgcHJvZHVjdCBpbmNs dWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVjdAotKyAqICAgIGZv ciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtpdC4gKGh0dHA6Ly93d3cub3BlbnNzbC5vcmcvKSIK LSsgKgotKyAqIDQuIFRoZSBuYW1lcyAiT3BlblNTTCBUb29sa2l0IiBhbmQgIk9wZW5TU0wgUHJv amVjdCIgbXVzdCBub3QgYmUgdXNlZCB0bwotKyAqICAgIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k dWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0Ci0rICogICAgcHJpb3Igd3Jp dHRlbiBwZXJtaXNzaW9uLiBGb3Igd3JpdHRlbiBwZXJtaXNzaW9uLCBwbGVhc2UgY29udGFjdAot KyAqICAgIG9wZW5zc2wtY29yZUBvcGVuc3NsLm9yZy4KLSsgKgotKyAqIDUuIFByb2R1Y3RzIGRl cml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIG1heSBub3QgYmUgY2FsbGVkICJPcGVuU1NMIgotKyAq ICAgIG5vciBtYXkgIk9wZW5TU0wiIGFwcGVhciBpbiB0aGVpciBuYW1lcyB3aXRob3V0IHByaW9y IHdyaXR0ZW4KLSsgKiAgICBwZXJtaXNzaW9uIG9mIHRoZSBPcGVuU1NMIFByb2plY3QuCi0rICoK LSsgKiA2LiBSZWRpc3RyaWJ1dGlvbnMgb2YgYW55IGZvcm0gd2hhdHNvZXZlciBtdXN0IHJldGFp biB0aGUgZm9sbG93aW5nCi0rICogICAgYWNrbm93bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMgcHJv ZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVjdAot KyAqICAgIGZvciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtpdCAoaHR0cDovL3d3dy5vcGVuc3Ns Lm9yZy8pIgotKyAqCi0rICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgT3BlblNT TCBQUk9KRUNUIGBgQVMgSVMnJyBBTkQgQU5ZCi0rICogRVhQUkVTU0VEIE9SIElNUExJRUQgV0FS UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotKyAqIElNUExJRUQg V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UgotKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgT3Bl blNTTCBQUk9KRUNUIE9SCi0rICogSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotKyAqIE5PVCBMSU1JVEVEIFRP LCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotKyAqIExPU1Mg T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0rICog SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO IENPTlRSQUNULAotKyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM SUdFTkNFIE9SIE9USEVSV0lTRSkKLSsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV U0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VECi0rICogT0YgVEhFIFBPU1NJQklM SVRZIE9GIFNVQ0ggREFNQUdFLgotKyAqCi0rICovCi0rCi0rI2luY2x1ZGUgPHN0cmluZy5oPgot KyNpbmNsdWRlIDxvcGVuc3NsL2Vyci5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSsj aW5jbHVkZSAiY3J5cHRvL2ZpcHMuaCIKLSsjaW5jbHVkZSA8b3BlbnNzbC9jbWFjLmg+Ci0rI2lu Y2x1ZGUgImZpcHNfbG9jbC5oIgotKwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSt0eXBlZGVmIHN0 cnVjdCB7Ci0rICAgIGludCBuaWQ7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIga2V5W0VWUF9N QVhfS0VZX0xFTkdUSF07Ci0rICAgIHNpemVfdCBrZXlzaXplOwotKyAgICBjb25zdCB1bnNpZ25l ZCBjaGFyIG1zZ1s2NF07Ci0rICAgIHNpemVfdCBtc2dzaXplOwotKyAgICBjb25zdCB1bnNpZ25l ZCBjaGFyIG1hY1szMl07Ci0rICAgIHNpemVfdCBtYWNzaXplOwotK30gQ01BQ19LQVQ7Ci0rCi0r LyogZnJvbSBodHRwOi8vY3NyYy5uaXN0Lmdvdi9wdWJsaWNhdGlvbnMvbmlzdHB1YnMvODAwLTM4 Qi9TUF84MDAtMzhCLnBkZiAqLwotK3N0YXRpYyBjb25zdCBDTUFDX0tBVCB2ZWN0b3JbXSA9IHsK LSsgICAge05JRF9hZXNfMTI4X2NiYywgICAgICAgICAgIC8qIENvdW50ID0gMzIgZnJvbSBDTUFD R2VuQUVTMTI4LnR4dCAqLwotKyAgICAgezB4NzcsIDB4YTcsIDB4N2YsIDB4YWYsIDB4MjksIDB4 MGMsIDB4MWYsIDB4YTMsCi0rICAgICAgMHgwYywgMHg2OCwgMHgzZCwgMHhmMSwgMHg2YiwgMHhh NywgMHhhNywgMHg3Yix9LCAxMjgsCi0rICAgICB7MHgwMiwgMHgwNiwgMHg4MywgMHhlMSwgMHhm MCwgMHgzOSwgMHgyZiwgMHg0YywKLSsgICAgICAweGFjLCAweDU0LCAweDMxLCAweDhiLCAweDYw LCAweDI5LCAweDI1LCAweDllLAotKyAgICAgIDB4OWMsIDB4NTUsIDB4M2QsIDB4YmMsIDB4NGIs IDB4NmEsIDB4ZDksIDB4OTgsCi0rICAgICAgMHhlNiwgMHg0ZCwgMHg1OCwgMHhlNCwgMHhlNywg MHhkYywgMHgyZSwgMHgxMyx9LCAyNTYsCi0rICAgICB7MHhmYiwgMHhmZSwgMHhhNCwgMHgxYix9 LCAzMn0sCi0rICAgIHtOSURfYWVzXzE5Ml9jYmMsICAgICAgICAgICAvKiBDb3VudCA9IDIzIGZy b20gQ01BQ0dlbkFFUzE5Mi50eHQgKi8KLSsgICAgIHsweDdiLCAweDMyLCAweDM5LCAweDEzLCAw eDY5LCAweGFhLCAweDRjLCAweGE5LAotKyAgICAgIDB4NzUsIDB4NTgsIDB4MDksIDB4NWIsIDB4 ZTMsIDB4YzMsIDB4ZWMsIDB4ODYsCi0rICAgICAgMHgyYiwgMHhkMCwgMHg1NywgMHhjZSwgMHhm MSwgMHhlMywgMHgyZCwgMHg2Mix9LCAxOTIsCi0rICAgICB7MHgwfSwgMCwKLSsgICAgIHsweGU0 LCAweGQ5LCAweDM0LCAweDBiLCAweDAzLCAweGU2LCAweDdkLCAweGVmLAotKyAgICAgIDB4ZDQs IDB4OTYsIDB4OWMsIDB4YzEsIDB4ZWQsIDB4MzcsIDB4MzUsIDB4ZTYsfSwgMTI4LAotKyAgICAg fSwKLSsgICAge05JRF9hZXNfMjU2X2NiYywgICAgICAgICAgIC8qIENvdW50ID0gMzMgZnJvbSBD TUFDR2VuQUVTMjU2LnR4dCAqLwotKyAgICAgezB4MGIsIDB4MTIsIDB4MmEsIDB4YzgsIDB4ZjMs IDB4NGUsIDB4ZDEsIDB4ZmUsCi0rICAgICAgMHgwOCwgMHgyYSwgMHgzNiwgMHgyNSwgMHhkMSwg MHg1NywgMHg1NiwgMHgxNCwKLSsgICAgICAweDU0LCAweDE2LCAweDdhLCAweGMxLCAweDQ1LCAw eGExLCAweDBiLCAweGJmLAotKyAgICAgIDB4NzcsIDB4YzYsIDB4YTcsIDB4MDUsIDB4OTYsIDB4 ZDUsIDB4NzQsIDB4ZjEsfSwgMjU2LAotKyAgICAgezB4NDksIDB4OGIsIDB4NTMsIDB4ZmQsIDB4 ZWMsIDB4ODcsIDB4ZWQsIDB4Y2IsCi0rICAgICAgMHhmMCwgMHg3MCwgMHg5NywgMHhkYywgMHhj ZCwgMHhlOSwgMHgzYSwgMHgwOCwKLSsgICAgICAweDRiLCAweGFkLCAweDc1LCAweDAxLCAweGEy LCAweDI0LCAweGUzLCAweDg4LAotKyAgICAgIDB4ZGYsIDB4MzQsIDB4OWMsIDB4ZTEsIDB4ODks IDB4NTksIDB4ZmUsIDB4ODQsCi0rICAgICAgMHg4NSwgMHhmOCwgMHhhZCwgMHgxNSwgMHgzNywg MHhmMCwgMHhkOCwgMHg5NiwKLSsgICAgICAweGVhLCAweDczLCAweGJlLCAweGRjLCAweDcyLCAw eDE0LCAweDcxLCAweDNmLH0sIDM4NCwKLSsgICAgIHsweGY2LCAweDJjLCAweDQ2LCAweDMyLCAw eDliLH0sIDQwLAotKyAgICAgfSwKLSsgICAge05JRF9kZXNfZWRlM19jYmMsICAgICAgICAgIC8q IENvdW50ID0gNDEgZnJvbSBDTUFDR2VuVERFUzMucmVxICovCi0rICAgICB7MHg4OSwgMHhiYywg MHhkOSwgMHg1MiwgMHhhOCwgMHhjOCwgMHhhYiwgMHgzNywKLSsgICAgICAweDFhLCAweGY0LCAw eDhhLCAweGM3LCAweGQwLCAweDcwLCAweDg1LCAweGQ1LAotKyAgICAgIDB4ZWYsIDB4ZjcsIDB4 MDIsIDB4ZTYsIDB4ZDYsIDB4MmMsIDB4ZGMsIDB4MjMsfSwgMTkyLAotKyAgICAgezB4ZmEsIDB4 NjIsIDB4MGMsIDB4MWIsIDB4YmUsIDB4OTcsIDB4MzEsIDB4OWUsCi0rICAgICAgMHg5YSwgMHgw YywgMHhmMCwgMHg0OSwgMHgyMSwgMHgyMSwgMHhmNywgMHhhMiwKLSsgICAgICAweDBlLCAweGIw LCAweDhhLCAweDZhLCAweDcwLCAweDlkLCAweGNiLCAweGQwLAotKyAgICAgIDB4MGEsIDB4YWYs IDB4MzgsIDB4ZTQsIDB4ZjksIDB4OWUsIDB4NzUsIDB4NGUsfSwgMjU2LAotKyAgICAgezB4OGYs IDB4NDksIDB4YTEsIDB4YjcsIDB4ZDYsIDB4YWEsIDB4MjIsIDB4NTgsfSwgNjQsCi0rICAgICB9 LAotK307Ci0rCi0raW50IEZJUFNfc2VsZnRlc3RfY21hYygpCi0rewotKyAgICBzaXplX3Qgbiwg b3V0bGVuOwotKyAgICB1bnNpZ25lZCBjaGFyIG91dFszMl07Ci0rICAgIGNvbnN0IEVWUF9DSVBI RVIgKmNpcGhlcjsKLSsgICAgQ01BQ19DVFggKmN0eCA9IENNQUNfQ1RYX25ldygpOwotKyAgICBj b25zdCBDTUFDX0tBVCAqdDsKLSsgICAgaW50IHJ2ID0gMTsKLSsKLSsgICAgZm9yIChuID0gMCwg dCA9IHZlY3RvcjsgbiA8IHNpemVvZih2ZWN0b3IpIC8gc2l6ZW9mKHZlY3RvclswXSk7IG4rKywg dCsrKSB7Ci0rICAgICAgICBjaXBoZXIgPSBFVlBfZ2V0X2NpcGhlcmJ5bmlkKHQtPm5pZCk7Ci0r ICAgICAgICBpZiAoIWNpcGhlcikgewotKyAgICAgICAgICAgIHJ2ID0gLTE7Ci0rICAgICAgICAg ICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rICAgICAgICBpZiAoIUNNQUNfSW5pdChjdHgsIHQt PmtleSwgdC0+a2V5c2l6ZSAvIDgsIGNpcGhlciwgMCkpIHsKLSsgICAgICAgICAgICBydiA9IC0x OwotKyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgfQotKyAgICAgICAgaWYgKCFDTUFD X1VwZGF0ZShjdHgsIHQtPm1zZywgdC0+bXNnc2l6ZSAvIDgpKSB7Ci0rICAgICAgICAgICAgcnYg PSAtMTsKLSsgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgIH0KLSsKLSsgICAgICAgIGlm ICghQ01BQ19GaW5hbChjdHgsIG91dCwgJm91dGxlbikpIHsKLSsgICAgICAgICAgICBydiA9IC0x OwotKyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgfQotKwotKyAgICAgICAgaWYgKG91 dGxlbiA8IHQtPm1hY3NpemUgLyA4IHx8IG1lbWNtcChvdXQsIHQtPm1hYywgdC0+bWFjc2l6ZSAv IDgpKSB7Ci0rICAgICAgICAgICAgcnYgPSAwOwotKyAgICAgICAgfQotKyAgICB9Ci0rCi0rIGVy cjoKLSsgICAgQ01BQ19DVFhfZnJlZShjdHgpOwotKwotKyAgICBpZiAocnYgPT0gLTEpIHsKLSsg ICAgICAgIHJ2ID0gMDsKLSsgICAgfQotKyAgICBpZiAoIXJ2KQotKyAgICAgICAgRklQU2VycihG SVBTX0ZfRklQU19TRUxGVEVTVF9DTUFDLCBGSVBTX1JfU0VMRlRFU1RfRkFJTEVEKTsKLSsKLSsg ICAgcmV0dXJuIHJ2OwotK30KLSsjZW5kaWYKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0 by9maXBzL2ZpcHNfZGVzX3NlbGZ0ZXN0LmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlw cy9maXBzX2Rlc19zZWxmdGVzdC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlw c19kZXNfc2VsZnRlc3QuYy5maXBzCTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk5NzM0NTI1ICswMTAw Ci0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kZXNfc2VsZnRlc3QuYwkyMDIx LTAzLTAzIDEyOjU3OjQyLjE5OTczNDUyNSArMDEwMAotQEAgLTAsMCArMSwxMzMgQEAKLSsvKiA9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQotKyAqIENvcHlyaWdodCAoYykgMjAwMyBUaGUgT3BlblNTTCBQcm9qZWN0LiAg QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSsgKgotKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotKyAqIG1vZGlmaWNhdGlv biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwot KyAqIGFyZSBtZXQ6Ci0rICoKLSsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0 IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0rICoKLSsgKiAy LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl IGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9v ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSsgKiAgICBkaXN0cmlidXRpb24u Ci0rICoKLSsgKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVy ZXMgb3IgdXNlIG9mIHRoaXMKLSsgKiAgICBzb2Z0d2FyZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxv d2luZyBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3 YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0 aGUgT3BlblNTTCBUb29sa2l0LiAoaHR0cDovL3d3dy5vcGVuc3NsLm9yZy8pIgotKyAqCi0rICog NC4gVGhlIG5hbWVzICJPcGVuU1NMIFRvb2xraXQiIGFuZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0 IG5vdCBiZSB1c2VkIHRvCi0rICogICAgZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2 ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQKLSsgKiAgICBwcmlvciB3cml0dGVuIHBlcm1p c3Npb24uIEZvciB3cml0dGVuIHBlcm1pc3Npb24sIHBsZWFzZSBjb250YWN0Ci0rICogICAgb3Bl bnNzbC1jb3JlQG9wZW5zc2wub3JnLgotKyAqCi0rICogNS4gUHJvZHVjdHMgZGVyaXZlZCBmcm9t IHRoaXMgc29mdHdhcmUgbWF5IG5vdCBiZSBjYWxsZWQgIk9wZW5TU0wiCi0rICogICAgbm9yIG1h eSAiT3BlblNTTCIgYXBwZWFyIGluIHRoZWlyIG5hbWVzIHdpdGhvdXQgcHJpb3Igd3JpdHRlbgot KyAqICAgIHBlcm1pc3Npb24gb2YgdGhlIE9wZW5TU0wgUHJvamVjdC4KLSsgKgotKyAqIDYuIFJl ZGlzdHJpYnV0aW9ucyBvZiBhbnkgZm9ybSB3aGF0c29ldmVyIG11c3QgcmV0YWluIHRoZSBmb2xs b3dpbmcKLSsgKiAgICBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1 ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9y IHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0IChodHRwOi8vd3d3Lm9wZW5zc2wub3JnLykiCi0r ICoKLSsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBPcGVuU1NMIFBST0pFQ1Qg YGBBUyBJUycnIEFORCBBTlkKLSsgKiBFWFBSRVNTRUQgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0rICogSU1QTElFRCBXQVJSQU5USUVT IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0rICogUFVS UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBPcGVuU1NMIFBST0pF Q1QgT1IKLSsgKiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E SVJFQ1QsIElOQ0lERU5UQUwsCi0rICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U SUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCi0rICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVN RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0rICogTE9TUyBPRiBVU0UsIERB VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSsgKiBIT1dFVkVSIENB VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs Ci0rICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig T1RIRVJXSVNFKQotKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElT IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQKLSsgKiBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD SCBEQU1BR0UuCi0rICoKLSsgKi8KLSsKLSsjaW5jbHVkZSA8c3RyaW5nLmg+Ci0rI2luY2x1ZGUg PG9wZW5zc2wvZXJyLmg+Ci0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyMgaW5jbHVkZSA8b3BlbnNz bC9maXBzLmg+Ci0rIyBpbmNsdWRlICJjcnlwdG8vZmlwcy5oIgotKyNlbmRpZgotKyNpbmNsdWRl IDxvcGVuc3NsL29wZW5zc2xjb25mLmg+Ci0rCi0rI2lmZGVmIE9QRU5TU0xfRklQUwotKwotK3N0 YXRpYyBjb25zdCBzdHJ1Y3QgewotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyIGtleVsxNl07Ci0r ICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgcGxhaW50ZXh0WzhdOwotKyAgICBjb25zdCB1bnNpZ25l ZCBjaGFyIGNpcGhlcnRleHRbOF07Ci0rfSB0ZXN0czJbXSA9IHsKLSsgICAgewotKyAgICAgICAg ewotKyAgICAgICAgMHg3YywgMHg0ZiwgMHg2ZSwgMHhmNywgMHhhMiwgMHgwNCwgMHgxNiwgMHhl YywKLSsgICAgICAgICAgICAgICAgMHgwYiwgMHg2YiwgMHg3YywgMHg5ZSwgMHg1ZSwgMHgxOSwg MHhhNywgMHhjNH0sIHsKLSsgICAgICAgIDB4MDYsIDB4YTcsIDB4ZDgsIDB4NzksIDB4YWEsIDB4 Y2UsIDB4NjksIDB4ZWZ9LCB7Ci0rICAgICAgICAweDRjLCAweDExLCAweDE3LCAweDU1LCAweGJm LCAweGM0LCAweDRlLCAweGZkfQotKyAgICB9LCB7Ci0rICAgICAgICB7Ci0rICAgICAgICAweDVk LCAweDllLCAweDAxLCAweGQzLCAweDI1LCAweGM3LCAweDNlLCAweDM0LAotKyAgICAgICAgICAg ICAgICAweDAxLCAweDE2LCAweDdjLCAweDg1LCAweDIzLCAweGRmLCAweGUwLCAweDY4fSwgewot KyAgICAgICAgMHg5YywgMHg1MCwgMHgwOSwgMHgwZiwgMHg1ZSwgMHg3ZCwgMHg2OSwgMHg3ZX0s IHsKLSsgICAgMHhkMiwgMHgwYiwgMHgxOCwgMHhkZiwgMHhkOSwgMHgwZCwgMHg5ZSwgMHhmZn0s fQotK307Ci0rCi0rc3RhdGljIGNvbnN0IHN0cnVjdCB7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNo YXIga2V5WzI0XTsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciBwbGFpbnRleHRbOF07Ci0rICAg IGNvbnN0IHVuc2lnbmVkIGNoYXIgY2lwaGVydGV4dFs4XTsKLSt9IHRlc3RzM1tdID0gewotKyAg ICB7Ci0rICAgICAgICB7Ci0rICAgICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAw eDAwLCAweDAwLCAweDAwLAotKyAgICAgICAgICAgICAgICAweEZFLCAweERDLCAweEJBLCAweDk4 LCAweDc2LCAweDU0LCAweDMyLCAweDEwLAotKyAgICAgICAgICAgICAgICAweDEyLCAweDM0LCAw eDU2LCAweDc4LCAweDlhLCAweGJjLCAweGRlLCAweGYwfSwgewotKyAgICAgICAgMHg4ZiwgMHg4 ZiwgMHhiZiwgMHg5YiwgMHg1ZCwgMHg0OCwgMHhiNCwgMHgxY30sIHsKLSsgICAgMHg1OSwgMHg4 YywgMHhlNSwgMHhkMywgMHg2YywgMHhhMiwgMHhlYSwgMHgxYn0sfSwgewotKyAgICAgICAgewot KyAgICAgICAgMHhEQywgMHhCQSwgMHg5OCwgMHg3NiwgMHg1NCwgMHgzMiwgMHgxMCwgMHhGRSwK LSsgICAgICAgICAgICAgICAgMHgwMSwgMHgyMywgMHg0NSwgMHg2NywgMHg4OSwgMHhBQiwgMHhD RCwgMHhFRiwKLSsgICAgICAgICAgICAgICAgMHhFRCwgMHgzOSwgMHhEOSwgMHg1MCwgMHhGQSwg MHg3NCwgMHhCQywgMHhDNH0sIHsKLSsgICAgICAgIDB4MDEsIDB4MjMsIDB4NDUsIDB4NjcsIDB4 ODksIDB4QUIsIDB4Q0QsIDB4RUZ9LCB7Ci0rMHgxMSwgMHgyNSwgMHhiMCwgMHgzNSwgMHhiZSwg MHhhMCwgMHg4MiwgMHg4Nn0sfSx9OwotKwotK2ludCBGSVBTX3NlbGZ0ZXN0X2RlcygpCi0rewot KyAgICBpbnQgbiwgcmV0ID0gMDsKLSsgICAgRVZQX0NJUEhFUl9DVFggKmN0eDsKLSsKLSsgICAg Y3R4ID0gRVZQX0NJUEhFUl9DVFhfbmV3KCk7Ci0rICAgIGlmIChjdHggPT0gTlVMTCkKLSsgICAg ICAgIGdvdG8gZXJyOwotKwotKyAgICAvKiBFbmNyeXB0L2RlY3J5cHQgd2l0aCAyLWtleSAzREVT IGFuZCBjb21wYXJlIHRvIGtub3duIGFuc3dlcnMgKi8KLSsgICAgZm9yIChuID0gMDsgbiA8IDI7 ICsrbikgewotKyAgICAgICAgdW5zaWduZWQgY2hhciBwbGFpbnRleHRbOF07Ci0rCi0rICAgICAg ICBtZW1jcHkocGxhaW50ZXh0LCB0ZXN0czJbbl0ucGxhaW50ZXh0LCBzaXplb2YocGxhaW50ZXh0 KSk7Ci0rICAgICAgICBpZiAoIWZpcHNfY2lwaGVyX3Rlc3QoY3R4LCBFVlBfZGVzX2VkZV9lY2Io KSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0czJbbl0ua2V5LCBOVUxMLAot KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWludGV4dCwgdGVzdHMyW25dLmNpcGhl cnRleHQsIDgpKQotKyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIC8qIEVu Y3J5cHQvZGVjcnlwdCB3aXRoIDNERVMgYW5kIGNvbXBhcmUgdG8ga25vd24gYW5zd2VycyAqLwot KyAgICBmb3IgKG4gPSAwOyBuIDwgMjsgKytuKSB7Ci0rICAgICAgICBpZiAoIWZpcHNfY2lwaGVy X3Rlc3QoY3R4LCBFVlBfZGVzX2VkZTNfZWNiKCksCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdGVzdHMzW25dLmtleSwgTlVMTCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0ZXN0czNbbl0ucGxhaW50ZXh0LCB0ZXN0czNbbl0uY2lwaGVydGV4dCwgOCkpCi0rICAgICAg ICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgcmV0ID0gMTsKLSsgZXJyOgotKyAgICBFVlBf Q0lQSEVSX0NUWF9mcmVlKGN0eCk7Ci0rICAgIGlmIChyZXQgPT0gMCkKLSsgICAgICAgIEZJUFNl cnIoRklQU19GX0ZJUFNfU0VMRlRFU1RfREVTLCBGSVBTX1JfU0VMRlRFU1RfRkFJTEVEKTsKLSsK LSsgICAgcmV0dXJuIHJldDsKLSt9Ci0rI2VuZGlmCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9j cnlwdG8vZmlwcy9maXBzX2RoX3NlbGZ0ZXN0LmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8v Zmlwcy9maXBzX2RoX3NlbGZ0ZXN0LmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9m aXBzX2RoX3NlbGZ0ZXN0LmMuZmlwcwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE5OTczNDUyNSArMDEw MAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfZGhfc2VsZnRlc3QuYwkyMDIx LTAzLTAzIDEyOjU3OjQyLjE5OTczNDUyNSArMDEwMAotQEAgLTAsMCArMSwxODAgQEAKLSsvKiA9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQotKyAqIENvcHlyaWdodCAoYykgMjAxMSBUaGUgT3BlblNTTCBQcm9qZWN0LiAg QWxsIHJpZ2h0cyByZXNlcnZlZC4KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMTMgUmVkIEhhdCwgSW5j LgotKyAqCi0rICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0rICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0rICogYXJlIG1ldDoKLSsgKgot KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv dmUgY29weXJpZ2h0Ci0rICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKLSsgKgotKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0rICogICAg bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp bWVyIGluCi0rICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw cm92aWRlZCB3aXRoIHRoZQotKyAqICAgIGRpc3RyaWJ1dGlvbi4KLSsgKgotKyAqIDMuIEFsbCBh ZHZlcnRpc2luZyBtYXRlcmlhbHMgbWVudGlvbmluZyBmZWF0dXJlcyBvciB1c2Ugb2YgdGhpcwot KyAqICAgIHNvZnR3YXJlIG11c3QgZGlzcGxheSB0aGUgZm9sbG93aW5nIGFja25vd2xlZGdtZW50 OgotKyAqICAgICJUaGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxvcGVkIGJ5IHRo ZSBPcGVuU1NMIFByb2plY3QKLSsgKiAgICBmb3IgdXNlIGluIHRoZSBPcGVuU1NMIFRvb2xraXQu IChodHRwOi8vd3d3Lm9wZW5zc2wub3JnLykiCi0rICoKLSsgKiA0LiBUaGUgbmFtZXMgIk9wZW5T U0wgVG9vbGtpdCIgYW5kICJPcGVuU1NMIFByb2plY3QiIG11c3Qgbm90IGJlIHVzZWQgdG8KLSsg KiAgICBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdh cmUgd2l0aG91dAotKyAqICAgIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gRm9yIHdyaXR0ZW4g cGVybWlzc2lvbiwgcGxlYXNlIGNvbnRhY3QKLSsgKiAgICBvcGVuc3NsLWNvcmVAb3BlbnNzbC5v cmcuCi0rICoKLSsgKiA1LiBQcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSBtYXkg bm90IGJlIGNhbGxlZCAiT3BlblNTTCIKLSsgKiAgICBub3IgbWF5ICJPcGVuU1NMIiBhcHBlYXIg aW4gdGhlaXIgbmFtZXMgd2l0aG91dCBwcmlvciB3cml0dGVuCi0rICogICAgcGVybWlzc2lvbiBv ZiB0aGUgT3BlblNTTCBQcm9qZWN0LgotKyAqCi0rICogNi4gUmVkaXN0cmlidXRpb25zIG9mIGFu eSBmb3JtIHdoYXRzb2V2ZXIgbXVzdCByZXRhaW4gdGhlIGZvbGxvd2luZwotKyAqICAgIGFja25v d2xlZGdtZW50OgotKyAqICAgICJUaGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxv cGVkIGJ5IHRoZSBPcGVuU1NMIFByb2plY3QKLSsgKiAgICBmb3IgdXNlIGluIHRoZSBPcGVuU1NM IFRvb2xraXQgKGh0dHA6Ly93d3cub3BlbnNzbC5vcmcvKSIKLSsgKgotKyAqIFRISVMgU09GVFdB UkUgSVMgUFJPVklERUQgQlkgVEhFIE9wZW5TU0wgUFJPSkVDVCBgYEFTIElTJycgQU5EIEFOWQot KyAqIEVYUFJFU1NFRCBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM SU1JVEVEIFRPLCBUSEUKLSsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSsgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE LiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIE9wZW5TU0wgUFJPSkVDVCBPUgotKyAqIElUUyBDT05U UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwK LSsgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE SU5HLCBCVVQKLSsgKiBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH T09EUyBPUiBTRVJWSUNFUzsKLSsgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1Ig QlVTSU5FU1MgSU5URVJSVVBUSU9OKQotKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF T1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwKLSsgKiBTVFJJQ1QgTElBQklM SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0rICogQVJJ U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg QURWSVNFRAotKyAqIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSsgKgotKyAq LwotKwotKyNpbmNsdWRlIDxzdHJpbmcuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9jcnlwdG8uaD4K LSsjaW5jbHVkZSA8b3BlbnNzbC9kaC5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSsj aW5jbHVkZSA8b3BlbnNzbC9lcnIuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLSsjaW5j bHVkZSA8b3BlbnNzbC9ibi5oPgotKyNpbmNsdWRlICJmaXBzX2xvY2wuaCIKLSsKLSsjaWZkZWYg T1BFTlNTTF9GSVBTCi0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgZGhfdGVzdF8yMDQ4 X3BbXSA9IHsKLSsgICAgMHhBRSwgMHhFQywgMHhFRSwgMHgyMiwgMHhGQSwgMHgzQSwgMHhBNSwg MHgyMiwgMHhDMCwgMHhERSwgMHgwRiwgMHgwOSwKLSsgICAgMHg3RSwgMHgxNywgMHhDMCwgMHgw NSwgMHhGOSwgMHhGMSwgMHhFNywgMHhDNiwgMHg4NywgMHgxNCwgMHg2RCwgMHgxMSwKLSsgICAg MHhFNywgMHhBRSwgMHhFRCwgMHgyRiwgMHg3MiwgMHg1OSwgMHhDNSwgMHhBOSwgMHg5QiwgMHhC OCwgMHgwMiwgMHhBNSwKLSsgICAgMHhGMywgMHg2OSwgMHg3MCwgMHhENiwgMHhERCwgMHg5MCwg MHhGOSwgMHgxOSwgMHg3OSwgMHhCRSwgMHg2MCwgMHg4RiwKLSsgICAgMHgyNSwgMHg5MiwgMHgz MCwgMHgxQywgMHg1MSwgMHg1MSwgMHgzOCwgMHgyNiwgMHg4MiwgMHgyNSwgMHhFNiwgMHhGQywK LSsgICAgMHhFRCwgMHg2NSwgMHg5NiwgMHg4RiwgMHg1NywgMHhFNSwgMHg1MywgMHg4QiwgMHgz OCwgMHg2MywgMHhDNywgMHhDRSwKLSsgICAgMHhCQywgMHgxQiwgMHg0RCwgMHgxOCwgMHgyQSwg MHg1QiwgMHgwNCwgMHgzRiwgMHg2QSwgMHgzQywgMHg5NCwgMHgzOSwKLSsgICAgMHhBRSwgMHgz NiwgMHhENiwgMHg1RSwgMHgwRiwgMHhBMiwgMHhDQywgMHhEMCwgMHhENCwgMHhENSwgMHhDNiwg MHgxRSwKLSsgICAgMHhGNiwgMHhBMCwgMHhGNSwgMHg4OSwgMHg0RSwgMHhCNCwgMHgwQiwgMHhB NCwgMHhCMywgMHgyQiwgMHgzRCwgMHhFMiwKLSsgICAgMHg0RSwgMHhFMSwgMHg0OSwgMHgyNSwg MHg5OSwgMHg1RiwgMHgzMiwgMHgxNiwgMHgzMywgMHgzMiwgMHgxQiwgMHg3QSwKLSsgICAgMHhB NSwgMHg1QywgMHg2QiwgMHgzNCwgMHgwRCwgMHgzOSwgMHg5OSwgMHhEQywgMHhGMCwgMHg3Niwg MHhFNSwgMHg1QSwKLSsgICAgMHhENCwgMHg3MSwgMHgwMCwgMHhFRCwgMHg1QSwgMHg3MywgMHhG QiwgMHhDOCwgMHgwMSwgMHhBRCwgMHg5OSwgMHhDRiwKLSsgICAgMHg5OSwgMHg1MiwgMHg3Qywg MHg5QywgMHg2NCwgMHhDNiwgMHg3NiwgMHg0MCwgMHg1NywgMHhBRiwgMHg1OSwgMHhENywKLSsg ICAgMHgzOCwgMHgwQiwgMHg0MCwgMHhERSwgMHgzMywgMHgwRCwgMHhCOCwgMHg3NiwgMHhFQywg MHhBOSwgMHhEOCwgMHg3MywKLSsgICAgMHhGOCwgMHhFRiwgMHgyNiwgMHg2NiwgMHgwNiwgMHgy NywgMHhERCwgMHg3QywgMHhBNCwgMHgxMCwgMHg5QywgMHhBNiwKLSsgICAgMHhBQSwgMHhGOSwg MHg1MywgMHg2MiwgMHg3MywgMHgxRCwgMHhCQSwgMHgxQywgMHhGMSwgMHg2NywgMHhGNCwgMHgz NSwKLSsgICAgMHhFRCwgMHg2RiwgMHgzNywgMHg5MiwgMHhFOCwgMHg0RiwgMHg2QywgMHhCQSwg MHg1MiwgMHg2RSwgMHhBMSwgMHhFRCwKLSsgICAgMHhEQSwgMHg5RiwgMHg4NSwgMHgxMSwgMHg4 MiwgMHg1MiwgMHg2MiwgMHgwOCwgMHg0NCwgMHhGMSwgMHgzMCwgMHgwMywKLSsgICAgMHhDMywg MHgzOCwgMHgyQywgMHg3OSwgMHhCRCwgMHhENCwgMHg0MywgMHg0NSwgMHhFRSwgMHg4RSwgMHg1 MCwgMHhGQywKLSsgICAgMHgyOSwgMHg0NiwgMHg5QSwgMHhGRSwgMHg1NCwgMHgxQSwgMHgxOSwg MHg4RiwgMHg0QiwgMHg4NCwgMHgwOCwgMHhERSwKLSsgICAgMHgyMCwgMHg2MiwgMHg3MywgMHhD QywgMHhERCwgMHg3RSwgMHhGMCwgMHhFRiwgMHhBMiwgMHhGRCwgMHg4NiwgMHg1OCwKLSsgICAg MHg0QiwgMHhEOCwgMHgzNywgMHhFQgotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo YXIgZGhfdGVzdF8yMDQ4X2dbXSA9IHsKLSsgICAgMHgwMgotK307Ci0rCi0rc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgZGhfdGVzdF8yMDQ4X3B1Yl9rZXlbXSA9IHsKLSsgICAgMHhBMCwgMHgz OSwgMHgxMSwgMHg3NywgMHg5QSwgMHhDMSwgMHgzMCwgMHgxRiwgMHhCRSwgMHg0OCwgMHhBNywg MHhBQSwKLSsgICAgMHhBMCwgMHg4NCwgMHg1NCwgMHg2NCwgMHhBRCwgMHgxQiwgMHg3MCwgMHhG QSwgMHgxMywgMHg1NSwgMHg2MywgMHhEMiwKLSsgICAgMHgxRiwgMHg2MiwgMHgzMiwgMHg5Mywg MHg4RSwgMHhDOSwgMHgzRSwgMHgwOSwgMHhBNywgMHg2NCwgMHhFNCwgMHgxMiwKLSsgICAgMHg2 RSwgMHgxQiwgMHhGMiwgMHg5MiwgMHgzQiwgMHhCOSwgMHhDQiwgMHg1NiwgMHhFQSwgMHgwNywg MHg4OCwgMHhCNSwKLSsgICAgMHhBNiwgMHhCQywgMHgxNiwgMHgxRiwgMHgyNywgMHhGRSwgMHhE OCwgMHhBQSwgMHg0MCwgMHhCMiwgMHhCMCwgMHgyRCwKLSsgICAgMHgzNywgMHg3NiwgMHhBNiwg MHhBNCwgMHg4MiwgMHgyQywgMHgwRSwgMHgyMiwgMHg2NCwgMHg5RCwgMHhDQiwgMHhEMSwKLSsg ICAgMHgwMCwgMHhCNywgMHg4OSwgMHgxNCwgMHg3MiwgMHg0RSwgMHhCRSwgMHg0OCwgMHg0MSwg MHhGOCwgMHhCMiwgMHg1MSwKLSsgICAgMHgxMSwgMHgwOSwgMHg0QiwgMHgyMiwgMHgwMSwgMHgy MywgMHgzOSwgMHg5NiwgMHhFMCwgMHgxNSwgMHhENywgMHg5RiwKLSsgICAgMHg2MCwgMHhEMSwg MHhCNywgMHhBRSwgMHhGRSwgMHg1RiwgMHhEQiwgMHhFNywgMHgwMywgMHgxNywgMHg5NywgMHhB NiwKLSsgICAgMHgxNiwgMHg3NCwgMHhCRCwgMHg1MywgMHg4MSwgMHgxOSwgMHhDNSwgMHg0Nywg MHg1RSwgMHhDRSwgMHg4RCwgMHhFRCwKLSsgICAgMHg0NSwgMHg1RCwgMHgzQywgMHgwMCwgMHhB MCwgMHgwQSwgMHg2OCwgMHg2QSwgMHhFMCwgMHg4RSwgMHgwNiwgMHg0NiwKLSsgICAgMHg2Riwg MHhENywgMHhGOSwgMHhERiwgMHgzMSwgMHg3RSwgMHg3NywgMHg0NCwgMHgwRCwgMHg5OCwgMHhF MCwgMHhDQSwKLSsgICAgMHg5OCwgMHgwOSwgMHg1MiwgMHgwNCwgMHg5MCwgMHhFQSwgMHg2RCwg MHhGNCwgMHgzMCwgMHg2OSwgMHg4RiwgMHhCMSwKLSsgICAgMHg5QiwgMHhDMSwgMHg0MywgMHhE QiwgMHhENSwgMHg4RCwgMHhDOCwgMHg4RSwgMHhCNiwgMHgwQiwgMHgwNSwgMHhCRSwKLSsgICAg MHgwRSwgMHhDNSwgMHg5OSwgMHhDOCwgMHg2RSwgMHg0RSwgMHhGMywgMHhDQiwgMHhDMywgMHg1 RSwgMHg5QiwgMHg1MywKLSsgICAgMHhGNywgMHgwNiwgMHgxQywgMHg0RiwgMHhDNywgMHhCOCwg MHg2RSwgMHgzMCwgMHgxOCwgMHhDQSwgMHg5QiwgMHhCOSwKLSsgICAgMHhCQywgMHg1RiwgMHgx NywgMHg3MiwgMHgyOSwgMHg1QSwgMHhFNSwgMHhEOSwgMHg5NiwgMHhCNywgMHgwQiwgMHhGMywK LSsgICAgMHgyRCwgMHg4QywgMHhGMSwgMHhFMSwgMHgwRSwgMHgwRCwgMHg3NCwgMHhENSwgMHg5 RCwgMHhGMCwgMHgwNiwgMHhBOSwKLSsgICAgMHhCNCwgMHg5NSwgMHg2MywgMHg3NiwgMHg0Niwg MHg1NSwgMHg0OCwgMHg4MiwgMHgzOSwgMHg5MCwgMHhFRiwgMHg1NiwKLSsgICAgMHg3NSwgMHgz NCwgMHhCOCwgMHgzNCwgMHhDMywgMHgxOCwgMHg2RSwgMHgxRSwgMHhBRCwgMHhFMywgMHg0OCwg MHg3RSwKLSsgICAgMHg5MywgMHgyQywgMHgyMywgMHhFNywgMHhGOCwgMHg5MCwgMHg3MywgMHhC MSwgMHg3NywgMHg4MCwgMHg2NywgMHhBOSwKLSsgICAgMHgzNiwgMHg5RSwgMHhEQSwgMHhEMgot K307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgZGhfdGVzdF8yMDQ4X3ByaXZfa2V5 W10gPSB7Ci0rICAgIDB4MEMsIDB4NEIsIDB4MzAsIDB4ODksIDB4RDEsIDB4QjgsIDB4NjIsIDB4 Q0IsIDB4M0MsIDB4NDMsIDB4NjQsIDB4OTEsCi0rICAgIDB4RjAsIDB4OTEsIDB4NTQsIDB4NzAs IDB4QzUsIDB4MjcsIDB4OTYsIDB4RTMsIDB4QUMsIDB4QkUsIDB4RTgsIDB4MDAsCi0rICAgIDB4 RUMsIDB4NTUsIDB4RjYsIDB4Q0MKLSt9OwotKwotK2ludCBGSVBTX3NlbGZ0ZXN0X2RoKCkKLSt7 Ci0rICAgIERIICpkaCA9IE5VTEw7Ci0rICAgIGludCByZXQgPSAwOwotKyAgICB2b2lkICpwdWJf a2V5X2JpbiA9IE5VTEw7Ci0rICAgIGludCBsZW47Ci0rICAgIEJJR05VTSAqcCA9IE5VTEwsICpn ID0gTlVMTCwgKnByaXZfa2V5ID0gTlVMTCwgKnRtcF9wdWJfa2V5ID0gTlVMTDsKLSsgICAgY29u c3QgQklHTlVNICpwdWJfa2V5OwotKwotKyAgICBmaXBzX2xvYWRfa2V5X2NvbXBvbmVudChwLCBk aF90ZXN0XzIwNDgpOwotKyAgICBmaXBzX2xvYWRfa2V5X2NvbXBvbmVudChnLCBkaF90ZXN0XzIw NDgpOwotKyAgICAvKiBub3RlIHRoYXQgdGhlIHByaXZhdGUga2V5IGlzIG11Y2ggc2hvcnRlciB0 aGFuIG5vcm1hbGx5IHVzZWQKLSsgICAgICogYnV0IHN0aWxsIGcgKiogcHJpdl9rZXkgPiBwCi0r ICAgICAqLwotKyAgICBmaXBzX2xvYWRfa2V5X2NvbXBvbmVudChwcml2X2tleSwgZGhfdGVzdF8y MDQ4KTsKLSsgICAgaWYgKCh0bXBfcHViX2tleSA9IEJOX25ldygpKSA9PSBOVUxMKQotKyAgICAg ICAgZ290byBlcnI7Ci0rCi0rICAgIGRoID0gREhfbmV3KCk7Ci0rCi0rICAgIGlmIChkaCA9PSBO VUxMKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIERIX3NldDBfcHFnKGRoLCBwLCBOVUxM LCBnKTsKLSsgICAgREhfc2V0MF9rZXkoZGgsIHRtcF9wdWJfa2V5LCBwcml2X2tleSk7Ci0rCi0r ICAgIGlmIChESF9nZW5lcmF0ZV9rZXkoZGgpIDw9IDApCi0rICAgICAgICBnb3RvIGVycjsKLSsK LSsgICAgREhfZ2V0MF9rZXkoZGgsICZwdWJfa2V5LCBOVUxMKTsKLSsKLSsgICAgaWYgKHB1Yl9r ZXkgPT0gTlVMTCkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBsZW4gPSBCTl9udW1fYnl0 ZXMocHViX2tleSk7Ci0rICAgIGlmICgocHViX2tleV9iaW4gPSBPUEVOU1NMX21hbGxvYyhsZW4p KSA9PSBOVUxMKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIEJOX2JuMmJpbihwdWJfa2V5LCBw dWJfa2V5X2Jpbik7Ci0rCi0rICAgIGlmIChsZW4gIT0gc2l6ZW9mKGRoX3Rlc3RfMjA0OF9wdWJf a2V5KSB8fAotKyAgICAgICAgbWVtY21wKHB1Yl9rZXlfYmluLCBkaF90ZXN0XzIwNDhfcHViX2tl eSwgbGVuKSAhPSAwKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIHJldCA9IDE7Ci0rCi0r IGVycjoKLSsgICAgaWYgKGRoKQotKyAgICAgICAgREhfZnJlZShkaCk7Ci0rICAgIGVsc2Ugewot KyAgICAgICAgQk5fZnJlZShwKTsKLSsgICAgICAgIEJOX2ZyZWUoZyk7Ci0rICAgICAgICBCTl9m cmVlKHByaXZfa2V5KTsKLSsgICAgICAgIEJOX2ZyZWUodG1wX3B1Yl9rZXkpOwotKyAgICB9Ci0r Ci0rICAgIE9QRU5TU0xfZnJlZShwdWJfa2V5X2Jpbik7Ci0rICAgIHJldHVybiByZXQ7Ci0rfQot KyNlbmRpZgotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kcmJnX2N0 ci5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kcmJnX2N0ci5jCi0tLS0g b3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kcmJnX2N0ci5jLmZpcHMJMjAyMS0wMy0w MyAxMjo1Nzo0Mi4xOTk3MzQ1MjUgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlw cy9maXBzX2RyYmdfY3RyLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTk3MzQ1MjUgKzAxMDAKLUBA IC0wLDAgKzEsNDA2IEBACi0rLyogZmlwcy9yYW5kL2ZpcHNfZHJiZ19jdHIuYyAqLwotKy8qIFdy aXR0ZW4gYnkgRHIgU3RlcGhlbiBOIEhlbnNvbiAoc3RldmVAb3BlbnNzbC5vcmcpIGZvciB0aGUg T3BlblNTTAotKyAqIHByb2plY3QuCi0rICovCi0rLyogPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSsgKiBDb3B5cmln aHQgKGMpIDIwMTEgVGhlIE9wZW5TU0wgUHJvamVjdC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0r ICoKLSsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z LCB3aXRoIG9yIHdpdGhvdXQKLSsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSsgKiBhcmUgbWV0OgotKyAqCi0rICog MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj b3B5cmlnaHQKLSsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg Zm9sbG93aW5nIGRpc2NsYWltZXIuIAotKyAqCi0rICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJp bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsgKiAgICBub3Rp Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg aW4KLSsgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp ZGVkIHdpdGggdGhlCi0rICogICAgZGlzdHJpYnV0aW9uLgotKyAqCi0rICogMy4gQWxsIGFkdmVy dGlzaW5nIG1hdGVyaWFscyBtZW50aW9uaW5nIGZlYXR1cmVzIG9yIHVzZSBvZiB0aGlzCi0rICog ICAgc29mdHdhcmUgbXVzdCBkaXNwbGF5IHRoZSBmb2xsb3dpbmcgYWNrbm93bGVkZ21lbnQ6Ci0r ICogICAgIlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhlIE9w ZW5TU0wgUHJvamVjdAotKyAqICAgIGZvciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtpdC4gKGh0 dHA6Ly93d3cuT3BlblNTTC5vcmcvKSIKLSsgKgotKyAqIDQuIFRoZSBuYW1lcyAiT3BlblNTTCBU b29sa2l0IiBhbmQgIk9wZW5TU0wgUHJvamVjdCIgbXVzdCBub3QgYmUgdXNlZCB0bwotKyAqICAg IGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3 aXRob3V0Ci0rICogICAgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLiBGb3Igd3JpdHRlbiBwZXJt aXNzaW9uLCBwbGVhc2UgY29udGFjdAotKyAqICAgIGxpY2Vuc2luZ0BPcGVuU1NMLm9yZy4KLSsg KgotKyAqIDUuIFByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIG1heSBub3QgYmUg Y2FsbGVkICJPcGVuU1NMIgotKyAqICAgIG5vciBtYXkgIk9wZW5TU0wiIGFwcGVhciBpbiB0aGVp ciBuYW1lcyB3aXRob3V0IHByaW9yIHdyaXR0ZW4KLSsgKiAgICBwZXJtaXNzaW9uIG9mIHRoZSBP cGVuU1NMIFByb2plY3QuCi0rICoKLSsgKiA2LiBSZWRpc3RyaWJ1dGlvbnMgb2YgYW55IGZvcm0g d2hhdHNvZXZlciBtdXN0IHJldGFpbiB0aGUgZm9sbG93aW5nCi0rICogICAgYWNrbm93bGVkZ21l bnQ6Ci0rICogICAgIlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkg dGhlIE9wZW5TU0wgUHJvamVjdAotKyAqICAgIGZvciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtp dCAoaHR0cDovL3d3dy5PcGVuU1NMLm9yZy8pIgotKyAqCi0rICogVEhJUyBTT0ZUV0FSRSBJUyBQ Uk9WSURFRCBCWSBUSEUgT3BlblNTTCBQUk9KRUNUIGBgQVMgSVMnJyBBTkQgQU5ZCi0rICogRVhQ UkVTU0VEIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg VE8sIFRIRQotKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ VE5FU1MgRk9SIEEgUEFSVElDVUxBUgotKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBO TyBFVkVOVCBTSEFMTCBUSEUgT3BlblNTTCBQUk9KRUNUIE9SCi0rICogSVRTIENPTlRSSUJVVE9S UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotKyAqIFNQ RUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJV VAotKyAqIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S IFNFUlZJQ0VTOwotKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT UyBJTlRFUlJVUFRJT04pCi0rICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg TElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULAotKyAqIFNUUklDVCBMSUFCSUxJVFksIE9S IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSsgKiBBUklTSU5HIElO IEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE Ci0rICogT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotKyAqID09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci0rICovCi0rCi0rI2luY2x1ZGUgPHN0ZGxpYi5oPgotKyNpbmNsdWRlIDxzdHJpbmcuaD4KLSsj aW5jbHVkZSA8b3BlbnNzbC9jcnlwdG8uaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9maXBzLmg+Ci0r I2luY2x1ZGUgPG9wZW5zc2wvZmlwc19yYW5kLmg+Ci0rI2luY2x1ZGUgImZpcHNfcmFuZF9sY2wu aCIKLSsKLStzdGF0aWMgdm9pZCBpbmNfMTI4KERSQkdfQ1RSX0NUWCAqIGNjdHgpCi0rewotKyAg ICBpbnQgaTsKLSsgICAgdW5zaWduZWQgY2hhciBjOwotKyAgICB1bnNpZ25lZCBjaGFyICpwID0g Y2N0eC0+ViArIDE1OwotKyAgICBmb3IgKGkgPSAwOyBpIDwgMTY7IGkrKykgewotKyAgICAgICAg YyA9ICpwOwotKyAgICAgICAgYysrOwotKyAgICAgICAgKnAgPSBjOwotKyAgICAgICAgaWYgKGMp Ci0rICAgICAgICAgICAgcmV0dXJuOwotKyAgICAgICAgcC0tOwotKyAgICB9Ci0rfQotKwotK3N0 YXRpYyB2b2lkIGN0cl9YT1IoRFJCR19DVFJfQ1RYICogY2N0eCwgY29uc3QgdW5zaWduZWQgY2hh ciAqaW4sCi0rICAgICAgICAgICAgICAgICAgICBzaXplX3QgaW5sZW4pCi0rewotKyAgICBzaXpl X3QgaSwgbjsKLSsgICAgLyogQW55IHplcm8gcGFkZGluZyB3aWxsIGhhdmUgbm8gZWZmZWN0IG9u IHRoZSByZXN1bHQgYXMgd2UKLSsgICAgICogYXJlIFhPUmluZy4gU28ganVzdCBwcm9jZXNzIGhv d2V2ZXIgbXVjaCBpbnB1dCB3ZSBoYXZlLgotKyAgICAgKi8KLSsKLSsgICAgaWYgKCFpbiB8fCAh aW5sZW4pCi0rICAgICAgICByZXR1cm47Ci0rCi0rICAgIGlmIChpbmxlbiA8IGNjdHgtPmtleWxl bikKLSsgICAgICAgIG4gPSBpbmxlbjsKLSsgICAgZWxzZQotKyAgICAgICAgbiA9IGNjdHgtPmtl eWxlbjsKLSsKLSsgICAgZm9yIChpID0gMDsgaSA8IG47IGkrKykKLSsgICAgICAgIGNjdHgtPktb aV0gXj0gaW5baV07Ci0rICAgIGlmIChpbmxlbiA8PSBjY3R4LT5rZXlsZW4pCi0rICAgICAgICBy ZXR1cm47Ci0rCi0rICAgIG4gPSBpbmxlbiAtIGNjdHgtPmtleWxlbjsKLSsgICAgLyogU2hvdWxk IG5ldmVyIGhhcHBlbiAqLwotKyAgICBpZiAobiA+IDE2KQotKyAgICAgICAgbiA9IDE2OwotKyAg ICBmb3IgKGkgPSAwOyBpIDwgMTY7IGkrKykKLSsgICAgICAgIGNjdHgtPlZbaV0gXj0gaW5baSAr IGNjdHgtPmtleWxlbl07Ci0rfQotKwotKy8qIFByb2Nlc3MgYSBjb21wbGV0ZSBibG9jayB1c2lu ZyBCQ0MgYWxnb3JpdGhtIG9mIFNQUCA4MDAtOTAgMTAuNC4zICovCi0rCi0rc3RhdGljIHZvaWQg Y3RyX0JDQ19ibG9jayhEUkJHX0NUUl9DVFggKiBjY3R4LCB1bnNpZ25lZCBjaGFyICpvdXQsCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICppbikKLSt7Ci0r ICAgIGludCBpOwotKyAgICBmb3IgKGkgPSAwOyBpIDwgMTY7IGkrKykKLSsgICAgICAgIG91dFtp XSBePSBpbltpXTsKLSsgICAgQUVTX2VuY3J5cHQob3V0LCBvdXQsICZjY3R4LT5kZl9rcyk7Ci0r I2lmIDAKLSsgICAgZnByaW50ZihzdGRlcnIsICJCQ0MgaW4rb3V0XG4iKTsKLSsgICAgQklPX2R1 bXBfZnAoc3RkZXJyLCBpbiwgMTYpOwotKyAgICBCSU9fZHVtcF9mcChzdGRlcnIsIG91dCwgMTYp OwotKyNlbmRpZgotK30KLSsKLSsvKiBIYW5kbGUgc2V2ZXJhbCBCQ0Mgb3BlcmF0aW9ucyBmb3Ig YXMgbXVjaCBkYXRhIGFzIHdlIG5lZWQgZm9yIEsgYW5kIFggKi8KLStzdGF0aWMgdm9pZCBjdHJf QkNDX2Jsb2NrcyhEUkJHX0NUUl9DVFggKiBjY3R4LCBjb25zdCB1bnNpZ25lZCBjaGFyICppbikK LSt7Ci0rICAgIGN0cl9CQ0NfYmxvY2soY2N0eCwgY2N0eC0+S1gsIGluKTsKLSsgICAgY3RyX0JD Q19ibG9jayhjY3R4LCBjY3R4LT5LWCArIDE2LCBpbik7Ci0rICAgIGlmIChjY3R4LT5rZXlsZW4g IT0gMTYpCi0rICAgICAgICBjdHJfQkNDX2Jsb2NrKGNjdHgsIGNjdHgtPktYICsgMzIsIGluKTsK LSt9Ci0rCi0rLyogSW5pdGlhbGlzZSBCQ0MgYmxvY2tzOiB0aGVzZSBoYXZlIHRoZSB2YWx1ZSAw LDEsMiBpbiBsZWZ0bW9zdCBwb3NpdGlvbnM6Ci0rICogc2VlIDEwLjQuMiBzdGFnZSA3LgotKyAq LwotK3N0YXRpYyB2b2lkIGN0cl9CQ0NfaW5pdChEUkJHX0NUUl9DVFggKiBjY3R4KQotK3sKLSsg ICAgbWVtc2V0KGNjdHgtPktYLCAwLCA0OCk7Ci0rICAgIG1lbXNldChjY3R4LT5ibHRtcCwgMCwg MTYpOwotKyAgICBjdHJfQkNDX2Jsb2NrKGNjdHgsIGNjdHgtPktYLCBjY3R4LT5ibHRtcCk7Ci0r ICAgIGNjdHgtPmJsdG1wWzNdID0gMTsKLSsgICAgY3RyX0JDQ19ibG9jayhjY3R4LCBjY3R4LT5L WCArIDE2LCBjY3R4LT5ibHRtcCk7Ci0rICAgIGlmIChjY3R4LT5rZXlsZW4gIT0gMTYpIHsKLSsg ICAgICAgIGNjdHgtPmJsdG1wWzNdID0gMjsKLSsgICAgICAgIGN0cl9CQ0NfYmxvY2soY2N0eCwg Y2N0eC0+S1ggKyAzMiwgY2N0eC0+Ymx0bXApOwotKyAgICB9Ci0rfQotKwotKy8qIFByb2Nlc3Mg c2V2ZXJhbCBibG9ja3MgaW50byBCQ0MgYWxnb3JpdGhtLCBzb21lIHBvc3NpYmx5IHBhcnRpYWwg Ki8KLStzdGF0aWMgdm9pZCBjdHJfQkNDX3VwZGF0ZShEUkJHX0NUUl9DVFggKiBjY3R4LAotKyAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmluLCBzaXplX3Qg aW5sZW4pCi0rewotKyAgICBpZiAoIWluIHx8ICFpbmxlbikKLSsgICAgICAgIHJldHVybjsKLSsg ICAgLyogSWYgd2UgaGF2ZSBwYXJ0aWFsIGJsb2NrIGhhbmRsZSBpdCBmaXJzdCAqLwotKyAgICBp ZiAoY2N0eC0+Ymx0bXBfcG9zKSB7Ci0rICAgICAgICBzaXplX3QgbGVmdCA9IDE2IC0gY2N0eC0+ Ymx0bXBfcG9zOwotKyAgICAgICAgLyogSWYgd2Ugbm93IGhhdmUgYSBjb21wbGV0ZSBibG9jayBw cm9jZXNzIGl0ICovCi0rICAgICAgICBpZiAoaW5sZW4gPj0gbGVmdCkgewotKyAgICAgICAgICAg IG1lbWNweShjY3R4LT5ibHRtcCArIGNjdHgtPmJsdG1wX3BvcywgaW4sIGxlZnQpOwotKyAgICAg ICAgICAgIGN0cl9CQ0NfYmxvY2tzKGNjdHgsIGNjdHgtPmJsdG1wKTsKLSsgICAgICAgICAgICBj Y3R4LT5ibHRtcF9wb3MgPSAwOwotKyAgICAgICAgICAgIGlubGVuIC09IGxlZnQ7Ci0rICAgICAg ICAgICAgaW4gKz0gbGVmdDsKLSsgICAgICAgIH0KLSsgICAgfQotKyAgICAvKiBQcm9jZXNzIHpl cm8gb3IgbW9yZSBjb21wbGV0ZSBibG9ja3MgKi8KLSsgICAgd2hpbGUgKGlubGVuID49IDE2KSB7 Ci0rICAgICAgICBjdHJfQkNDX2Jsb2NrcyhjY3R4LCBpbik7Ci0rICAgICAgICBpbiArPSAxNjsK LSsgICAgICAgIGlubGVuIC09IDE2OwotKyAgICB9Ci0rICAgIC8qIENvcHkgYW55IHJlbWFpbmlu ZyBwYXJ0aWFsIGJsb2NrIHRvIHRoZSB0ZW1wb3JhcnkgYnVmZmVyICovCi0rICAgIGlmIChpbmxl biA+IDApIHsKLSsgICAgICAgIG1lbWNweShjY3R4LT5ibHRtcCArIGNjdHgtPmJsdG1wX3Bvcywg aW4sIGlubGVuKTsKLSsgICAgICAgIGNjdHgtPmJsdG1wX3BvcyArPSBpbmxlbjsKLSsgICAgfQot K30KLSsKLStzdGF0aWMgdm9pZCBjdHJfQkNDX2ZpbmFsKERSQkdfQ1RSX0NUWCAqIGNjdHgpCi0r ewotKyAgICBpZiAoY2N0eC0+Ymx0bXBfcG9zKSB7Ci0rICAgICAgICBtZW1zZXQoY2N0eC0+Ymx0 bXAgKyBjY3R4LT5ibHRtcF9wb3MsIDAsIDE2IC0gY2N0eC0+Ymx0bXBfcG9zKTsKLSsgICAgICAg IGN0cl9CQ0NfYmxvY2tzKGNjdHgsIGNjdHgtPmJsdG1wKTsKLSsgICAgfQotK30KLSsKLStzdGF0 aWMgdm9pZCBjdHJfZGYoRFJCR19DVFJfQ1RYICogY2N0eCwKLSsgICAgICAgICAgICAgICAgICAg Y29uc3QgdW5zaWduZWQgY2hhciAqaW4xLCBzaXplX3QgaW4xbGVuLAotKyAgICAgICAgICAgICAg ICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICppbjIsIHNpemVfdCBpbjJsZW4sCi0rICAgICAgICAg ICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmluMywgc2l6ZV90IGluM2xlbikKLSt7Ci0r ICAgIHNpemVfdCBpbmxlbjsKLSsgICAgdW5zaWduZWQgY2hhciAqcCA9IGNjdHgtPmJsdG1wOwot KyAgICBzdGF0aWMgdW5zaWduZWQgY2hhciBjODAgPSAweDgwOwotKwotKyAgICBjdHJfQkNDX2lu aXQoY2N0eCk7Ci0rICAgIGlmICghaW4xKQotKyAgICAgICAgaW4xbGVuID0gMDsKLSsgICAgaWYg KCFpbjIpCi0rICAgICAgICBpbjJsZW4gPSAwOwotKyAgICBpZiAoIWluMykKLSsgICAgICAgIGlu M2xlbiA9IDA7Ci0rICAgIGlubGVuID0gaW4xbGVuICsgaW4ybGVuICsgaW4zbGVuOwotKyAgICAv KiBJbml0aWFsaXNlIEx8fE4gaW4gdGVtcG9yYXJ5IGJsb2NrICovCi0rICAgICpwKysgPSAoaW5s ZW4gPj4gMjQpICYgMHhmZjsKLSsgICAgKnArKyA9IChpbmxlbiA+PiAxNikgJiAweGZmOwotKyAg ICAqcCsrID0gKGlubGVuID4+IDgpICYgMHhmZjsKLSsgICAgKnArKyA9IGlubGVuICYgMHhmZjsK LSsgICAgLyogTkIga2V5bGVuIGlzIGF0IG1vc3QgMzIgYnl0ZXMgKi8KLSsgICAgKnArKyA9IDA7 Ci0rICAgICpwKysgPSAwOwotKyAgICAqcCsrID0gMDsKLSsgICAgKnAgPSAodW5zaWduZWQgY2hh cikoKGNjdHgtPmtleWxlbiArIDE2KSAmIDB4ZmYpOwotKyAgICBjY3R4LT5ibHRtcF9wb3MgPSA4 OwotKyAgICBjdHJfQkNDX3VwZGF0ZShjY3R4LCBpbjEsIGluMWxlbik7Ci0rICAgIGN0cl9CQ0Nf dXBkYXRlKGNjdHgsIGluMiwgaW4ybGVuKTsKLSsgICAgY3RyX0JDQ191cGRhdGUoY2N0eCwgaW4z LCBpbjNsZW4pOwotKyAgICBjdHJfQkNDX3VwZGF0ZShjY3R4LCAmYzgwLCAxKTsKLSsgICAgY3Ry X0JDQ19maW5hbChjY3R4KTsKLSsgICAgLyogU2V0IHVwIGtleSBLICovCi0rICAgIEFFU19zZXRf ZW5jcnlwdF9rZXkoY2N0eC0+S1gsIGNjdHgtPmtleWxlbiAqIDgsICZjY3R4LT5kZl9reGtzKTsK LSsgICAgLyogWCBmb2xsb3dzIGtleSBLICovCi0rICAgIEFFU19lbmNyeXB0KGNjdHgtPktYICsg Y2N0eC0+a2V5bGVuLCBjY3R4LT5LWCwgJmNjdHgtPmRmX2t4a3MpOwotKyAgICBBRVNfZW5jcnlw dChjY3R4LT5LWCwgY2N0eC0+S1ggKyAxNiwgJmNjdHgtPmRmX2t4a3MpOwotKyAgICBpZiAoY2N0 eC0+a2V5bGVuICE9IDE2KQotKyAgICAgICAgQUVTX2VuY3J5cHQoY2N0eC0+S1ggKyAxNiwgY2N0 eC0+S1ggKyAzMiwgJmNjdHgtPmRmX2t4a3MpOwotKyNpZiAwCi0rICAgIGZwcmludGYoc3RkZXJy LCAiT3V0cHV0IG9mIGN0cl9kZjpcbiIpOwotKyAgICBCSU9fZHVtcF9mcChzdGRlcnIsIGNjdHgt PktYLCBjY3R4LT5rZXlsZW4gKyAxNik7Ci0rI2VuZGlmCi0rfQotKwotKy8qIE5CIHRoZSBuby1k ZiAgVXBkYXRlIGluIFNQODAwLTkwIHNwZWNpZmllcyBhIGNvbnN0YW50IGlucHV0IGxlbmd0aAot KyAqIG9mIHNlZWRsZW4sIGhvd2V2ZXIgb3RoZXIgdXNlcyBvZiB0aGlzIGFsZ29yaXRobSBwYWQg dGhlIGlucHV0IHdpdGgKLSsgKiB6ZXJvZXMgaWYgbmVjZXNzYXJ5IGFuZCBoYXZlIHVwIHRvIHR3 byBwYXJhbWV0ZXJzIFhPUmVkIHRvZ2V0aGVyLAotKyAqIGhhbmRsZSBib3RoIGNhc2VzIGluIHRo aXMgZnVuY3Rpb24gaW5zdGVhZC4KLSsgKi8KLSsKLStzdGF0aWMgdm9pZCBjdHJfVXBkYXRlKERS QkdfQ1RYICpkY3R4LAotKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hh ciAqaW4xLCBzaXplX3QgaW4xbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5z aWduZWQgY2hhciAqaW4yLCBzaXplX3QgaW4ybGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgdW5zaWduZWQgY2hhciAqbm9uY2UsIHNpemVfdCBub25jZWxlbikKLSt7Ci0rICAgIERS QkdfQ1RSX0NUWCAqY2N0eCA9ICZkY3R4LT5kLmN0cjsKLSsgICAgLyoga3MgaXMgYWxyZWFkeSBz ZXR1cCBmb3IgY29ycmVjdCBrZXkgKi8KLSsgICAgaW5jXzEyOChjY3R4KTsKLSsgICAgQUVTX2Vu Y3J5cHQoY2N0eC0+ViwgY2N0eC0+SywgJmNjdHgtPmtzKTsKLSsgICAgLyogSWYga2V5bGVuIGxv bmdlciB0aGFuIDEyOCBiaXRzIG5lZWQgZXh0cmEgZW5jcnlwdCAqLwotKyAgICBpZiAoY2N0eC0+ a2V5bGVuICE9IDE2KSB7Ci0rICAgICAgICBpbmNfMTI4KGNjdHgpOwotKyAgICAgICAgQUVTX2Vu Y3J5cHQoY2N0eC0+ViwgY2N0eC0+SyArIDE2LCAmY2N0eC0+a3MpOwotKyAgICB9Ci0rICAgIGlu Y18xMjgoY2N0eCk7Ci0rICAgIEFFU19lbmNyeXB0KGNjdHgtPlYsIGNjdHgtPlYsICZjY3R4LT5r cyk7Ci0rICAgIC8qIElmIDE5MiBiaXQga2V5IHBhcnQgb2YgViBpcyBvbiBlbmQgb2YgSyAqLwot KyAgICBpZiAoY2N0eC0+a2V5bGVuID09IDI0KSB7Ci0rICAgICAgICBtZW1jcHkoY2N0eC0+ViAr IDgsIGNjdHgtPlYsIDgpOwotKyAgICAgICAgbWVtY3B5KGNjdHgtPlYsIGNjdHgtPksgKyAyNCwg OCk7Ci0rICAgIH0KLSsKLSsgICAgaWYgKGRjdHgtPnhmbGFncyAmIERSQkdfRkxBR19DVFJfVVNF X0RGKSB7Ci0rICAgICAgICAvKiBJZiBubyBpbnB1dCByZXVzZSBleGlzdGluZyBkZXJpdmVkIHZh bHVlICovCi0rICAgICAgICBpZiAoaW4xIHx8IG5vbmNlIHx8IGluMikKLSsgICAgICAgICAgICBj dHJfZGYoY2N0eCwgaW4xLCBpbjFsZW4sIG5vbmNlLCBub25jZWxlbiwgaW4yLCBpbjJsZW4pOwot KyAgICAgICAgLyogSWYgdGhpcyBhIHJldXNlIGlucHV0IGluMWxlbiAhPSAwICovCi0rICAgICAg ICBpZiAoaW4xbGVuKQotKyAgICAgICAgICAgIGN0cl9YT1IoY2N0eCwgY2N0eC0+S1gsIGRjdHgt PnNlZWRsZW4pOwotKyAgICB9IGVsc2UgewotKyAgICAgICAgY3RyX1hPUihjY3R4LCBpbjEsIGlu MWxlbik7Ci0rICAgICAgICBjdHJfWE9SKGNjdHgsIGluMiwgaW4ybGVuKTsKLSsgICAgfQotKwot KyAgICBBRVNfc2V0X2VuY3J5cHRfa2V5KGNjdHgtPkssIGRjdHgtPnN0cmVuZ3RoLCAmY2N0eC0+ a3MpOwotKyNpZiAwCi0rICAgIGZwcmludGYoc3RkZXJyLCAiSytWIGFmdGVyIHVwZGF0ZSBpczpc biIpOwotKyAgICBCSU9fZHVtcF9mcChzdGRlcnIsIGNjdHgtPkssIGNjdHgtPmtleWxlbik7Ci0r ICAgIEJJT19kdW1wX2ZwKHN0ZGVyciwgY2N0eC0+ViwgMTYpOwotKyNlbmRpZgotK30KLSsKLStz dGF0aWMgaW50IGRyYmdfY3RyX2luc3RhbnRpYXRlKERSQkdfQ1RYICpkY3R4LAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqZW50LCBzaXplX3Qg ZW50bGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQg Y2hhciAqbm9uY2UsIHNpemVfdCBub25jZWxlbiwKLSsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnBlcnMsIHNpemVfdCBwZXJzbGVuKQotK3sKLSsg ICAgRFJCR19DVFJfQ1RYICpjY3R4ID0gJmRjdHgtPmQuY3RyOwotKyAgICBtZW1zZXQoY2N0eC0+ SywgMCwgc2l6ZW9mKGNjdHgtPkspKTsKLSsgICAgbWVtc2V0KGNjdHgtPlYsIDAsIHNpemVvZihj Y3R4LT5WKSk7Ci0rICAgIEFFU19zZXRfZW5jcnlwdF9rZXkoY2N0eC0+SywgZGN0eC0+c3RyZW5n dGgsICZjY3R4LT5rcyk7Ci0rICAgIGN0cl9VcGRhdGUoZGN0eCwgZW50LCBlbnRsZW4sIHBlcnMs IHBlcnNsZW4sIG5vbmNlLCBub25jZWxlbik7Ci0rICAgIHJldHVybiAxOwotK30KLSsKLStzdGF0 aWMgaW50IGRyYmdfY3RyX3Jlc2VlZChEUkJHX0NUWCAqZGN0eCwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICplbnQsIHNpemVfdCBlbnRsZW4sCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWRpbiwgc2l6ZV90 IGFkaW5sZW4pCi0rewotKyAgICBjdHJfVXBkYXRlKGRjdHgsIGVudCwgZW50bGVuLCBhZGluLCBh ZGlubGVuLCBOVUxMLCAwKTsKLSsgICAgcmV0dXJuIDE7Ci0rfQotKwotK3N0YXRpYyBpbnQgZHJi Z19jdHJfZ2VuZXJhdGUoRFJCR19DVFggKmRjdHgsCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB1bnNpZ25lZCBjaGFyICpvdXQsIHNpemVfdCBvdXRsZW4sCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICphZGluLCBzaXplX3QgYWRpbmxlbikK LSt7Ci0rICAgIERSQkdfQ1RSX0NUWCAqY2N0eCA9ICZkY3R4LT5kLmN0cjsKLSsgICAgaWYgKGFk aW4gJiYgYWRpbmxlbikgewotKyAgICAgICAgY3RyX1VwZGF0ZShkY3R4LCBhZGluLCBhZGlubGVu LCBOVUxMLCAwLCBOVUxMLCAwKTsKLSsgICAgICAgIC8qIFRoaXMgbWVhbnMgd2UgcmV1c2UgZGVy aXZlZCB2YWx1ZSAqLwotKyAgICAgICAgaWYgKGRjdHgtPnhmbGFncyAmIERSQkdfRkxBR19DVFJf VVNFX0RGKSB7Ci0rICAgICAgICAgICAgYWRpbiA9IE5VTEw7Ci0rICAgICAgICAgICAgYWRpbmxl biA9IDE7Ci0rICAgICAgICB9Ci0rICAgIH0gZWxzZQotKyAgICAgICAgYWRpbmxlbiA9IDA7Ci0r Ci0rICAgIGZvciAoOzspIHsKLSsgICAgICAgIGluY18xMjgoY2N0eCk7Ci0rICAgICAgICBpZiAo b3V0bGVuIDwgMTYpIHsKLSsgICAgICAgICAgICAvKiBVc2UgSyBhcyB0ZW1wIHNwYWNlIGFzIGl0 IHdpbGwgYmUgdXBkYXRlZCAqLwotKyAgICAgICAgICAgIEFFU19lbmNyeXB0KGNjdHgtPlYsIGNj dHgtPkssICZjY3R4LT5rcyk7Ci0rICAgICAgICAgICAgbWVtY3B5KG91dCwgY2N0eC0+Sywgb3V0 bGVuKTsKLSsgICAgICAgICAgICBicmVhazsKLSsgICAgICAgIH0KLSsgICAgICAgIEFFU19lbmNy eXB0KGNjdHgtPlYsIG91dCwgJmNjdHgtPmtzKTsKLSsgICAgICAgIG91dCArPSAxNjsKLSsgICAg ICAgIG91dGxlbiAtPSAxNjsKLSsgICAgICAgIGlmIChvdXRsZW4gPT0gMCkKLSsgICAgICAgICAg ICBicmVhazsKLSsgICAgfQotKwotKyAgICBjdHJfVXBkYXRlKGRjdHgsIGFkaW4sIGFkaW5sZW4s IE5VTEwsIDAsIE5VTEwsIDApOwotKwotKyAgICByZXR1cm4gMTsKLSsKLSt9Ci0rCi0rc3RhdGlj IGludCBkcmJnX2N0cl91bmluc3RhbnRpYXRlKERSQkdfQ1RYICpkY3R4KQotK3sKLSsgICAgbWVt c2V0KCZkY3R4LT5kLmN0ciwgMCwgc2l6ZW9mKERSQkdfQ1RSX0NUWCkpOwotKyAgICByZXR1cm4g MTsKLSt9Ci0rCi0raW50IGZpcHNfZHJiZ19jdHJfaW5pdChEUkJHX0NUWCAqZGN0eCkKLSt7Ci0r ICAgIERSQkdfQ1RSX0NUWCAqY2N0eCA9ICZkY3R4LT5kLmN0cjsKLSsKLSsgICAgc2l6ZV90IGtl eWxlbjsKLSsKLSsgICAgc3dpdGNoIChkY3R4LT50eXBlKSB7Ci0rICAgIGNhc2UgTklEX2Flc18x MjhfY3RyOgotKyAgICAgICAga2V5bGVuID0gMTY7Ci0rICAgICAgICBicmVhazsKLSsKLSsgICAg Y2FzZSBOSURfYWVzXzE5Ml9jdHI6Ci0rICAgICAgICBrZXlsZW4gPSAyNDsKLSsgICAgICAgIGJy ZWFrOwotKwotKyAgICBjYXNlIE5JRF9hZXNfMjU2X2N0cjoKLSsgICAgICAgIGtleWxlbiA9IDMy OwotKyAgICAgICAgYnJlYWs7Ci0rCi0rICAgIGRlZmF1bHQ6Ci0rICAgICAgICByZXR1cm4gLTI7 Ci0rICAgIH0KLSsKLSsgICAgZGN0eC0+aW5zdGFudGlhdGUgPSBkcmJnX2N0cl9pbnN0YW50aWF0 ZTsKLSsgICAgZGN0eC0+cmVzZWVkID0gZHJiZ19jdHJfcmVzZWVkOwotKyAgICBkY3R4LT5nZW5l cmF0ZSA9IGRyYmdfY3RyX2dlbmVyYXRlOwotKyAgICBkY3R4LT51bmluc3RhbnRpYXRlID0gZHJi Z19jdHJfdW5pbnN0YW50aWF0ZTsKLSsKLSsgICAgY2N0eC0+a2V5bGVuID0ga2V5bGVuOwotKyAg ICBkY3R4LT5zdHJlbmd0aCA9IGtleWxlbiAqIDg7Ci0rICAgIGRjdHgtPmJsb2NrbGVuZ3RoID0g MTY7Ci0rICAgIGRjdHgtPnNlZWRsZW4gPSBrZXlsZW4gKyAxNjsKLSsKLSsgICAgaWYgKGRjdHgt PnhmbGFncyAmIERSQkdfRkxBR19DVFJfVVNFX0RGKSB7Ci0rICAgICAgICAvKiBkZiBpbml0aWFs aXNhdGlvbiAqLwotKyAgICAgICAgc3RhdGljIHVuc2lnbmVkIGNoYXIgZGZfa2V5WzMyXSA9IHsK LSsgICAgICAgICAgICAweDAwLCAweDAxLCAweDAyLCAweDAzLCAweDA0LCAweDA1LCAweDA2LCAw eDA3LAotKyAgICAgICAgICAgIDB4MDgsIDB4MDksIDB4MGEsIDB4MGIsIDB4MGMsIDB4MGQsIDB4 MGUsIDB4MGYsCi0rICAgICAgICAgICAgMHgxMCwgMHgxMSwgMHgxMiwgMHgxMywgMHgxNCwgMHgx NSwgMHgxNiwgMHgxNywKLSsgICAgICAgICAgICAweDE4LCAweDE5LCAweDFhLCAweDFiLCAweDFj LCAweDFkLCAweDFlLCAweDFmCi0rICAgICAgICB9OwotKyAgICAgICAgLyogU2V0IGtleSBzY2hl ZHVsZSBmb3IgZGZfa2V5ICovCi0rICAgICAgICBBRVNfc2V0X2VuY3J5cHRfa2V5KGRmX2tleSwg ZGN0eC0+c3RyZW5ndGgsICZjY3R4LT5kZl9rcyk7Ci0rCi0rICAgICAgICBkY3R4LT5taW5fZW50 cm9weSA9IGNjdHgtPmtleWxlbjsKLSsgICAgICAgIGRjdHgtPm1heF9lbnRyb3B5ID0gRFJCR19N QVhfTEVOR1RIOwotKyAgICAgICAgZGN0eC0+bWluX25vbmNlID0gZGN0eC0+bWluX2VudHJvcHkg LyAyOwotKyAgICAgICAgZGN0eC0+bWF4X25vbmNlID0gRFJCR19NQVhfTEVOR1RIOwotKyAgICAg ICAgZGN0eC0+bWF4X3BlcnMgPSBEUkJHX01BWF9MRU5HVEg7Ci0rICAgICAgICBkY3R4LT5tYXhf YWRpbiA9IERSQkdfTUFYX0xFTkdUSDsKLSsgICAgfSBlbHNlIHsKLSsgICAgICAgIGRjdHgtPm1p bl9lbnRyb3B5ID0gZGN0eC0+c2VlZGxlbjsKLSsgICAgICAgIGRjdHgtPm1heF9lbnRyb3B5ID0g ZGN0eC0+c2VlZGxlbjsKLSsgICAgICAgIC8qIE5vbmNlIG5vdCB1c2VkICovCi0rICAgICAgICBk Y3R4LT5taW5fbm9uY2UgPSAwOwotKyAgICAgICAgZGN0eC0+bWF4X25vbmNlID0gMDsKLSsgICAg ICAgIGRjdHgtPm1heF9wZXJzID0gZGN0eC0+c2VlZGxlbjsKLSsgICAgICAgIGRjdHgtPm1heF9h ZGluID0gZGN0eC0+c2VlZGxlbjsKLSsgICAgfQotKwotKyAgICBkY3R4LT5tYXhfcmVxdWVzdCA9 IDEgPDwgMTY7Ci0rICAgIGRjdHgtPnJlc2VlZF9pbnRlcnZhbCA9IDEgPDwgMjQ7Ci0rCi0rICAg IHJldHVybiAxOwotK30KLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNf ZHJiZ19oYXNoLmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX2RyYmdfaGFz aC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kcmJnX2hhc2guYy5maXBz CTIwMjEtMDMtMDMgMTI6NTc6NDIuMTk5NzM0NTI1ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWov Y3J5cHRvL2ZpcHMvZmlwc19kcmJnX2hhc2guYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjE5OTczNDUy NSArMDEwMAotQEAgLTAsMCArMSwzNTQgQEAKLSsvKiBmaXBzL3JhbmQvZmlwc19kcmJnX2hhc2gu YyAqLwotKy8qIFdyaXR0ZW4gYnkgRHIgU3RlcGhlbiBOIEhlbnNvbiAoc3RldmVAb3BlbnNzbC5v cmcpIGZvciB0aGUgT3BlblNTTAotKyAqIHByb2plY3QuCi0rICovCi0rLyogPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LSsgKiBDb3B5cmlnaHQgKGMpIDIwMTEgVGhlIE9wZW5TU0wgUHJvamVjdC4gIEFsbCByaWdodHMg cmVzZXJ2ZWQuCi0rICoKLSsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJt aXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSsgKiBhcmUgbWV0 OgotKyAqCi0rICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWlu IHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuIAotKyAqCi0rICogMi4gUmVkaXN0cmli dXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQK LSsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n IGRpc2NsYWltZXIgaW4KLSsgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0 ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0rICogICAgZGlzdHJpYnV0aW9uLgotKyAqCi0rICog My4gQWxsIGFkdmVydGlzaW5nIG1hdGVyaWFscyBtZW50aW9uaW5nIGZlYXR1cmVzIG9yIHVzZSBv ZiB0aGlzCi0rICogICAgc29mdHdhcmUgbXVzdCBkaXNwbGF5IHRoZSBmb2xsb3dpbmcgYWNrbm93 bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9w ZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVjdAotKyAqICAgIGZvciB1c2UgaW4gdGhlIE9wZW5TU0wg VG9vbGtpdC4gKGh0dHA6Ly93d3cuT3BlblNTTC5vcmcvKSIKLSsgKgotKyAqIDQuIFRoZSBuYW1l cyAiT3BlblNTTCBUb29sa2l0IiBhbmQgIk9wZW5TU0wgUHJvamVjdCIgbXVzdCBub3QgYmUgdXNl ZCB0bwotKyAqICAgIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp cyBzb2Z0d2FyZSB3aXRob3V0Ci0rICogICAgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLiBGb3Ig d3JpdHRlbiBwZXJtaXNzaW9uLCBwbGVhc2UgY29udGFjdAotKyAqICAgIGxpY2Vuc2luZ0BPcGVu U1NMLm9yZy4KLSsgKgotKyAqIDUuIFByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl IG1heSBub3QgYmUgY2FsbGVkICJPcGVuU1NMIgotKyAqICAgIG5vciBtYXkgIk9wZW5TU0wiIGFw cGVhciBpbiB0aGVpciBuYW1lcyB3aXRob3V0IHByaW9yIHdyaXR0ZW4KLSsgKiAgICBwZXJtaXNz aW9uIG9mIHRoZSBPcGVuU1NMIFByb2plY3QuCi0rICoKLSsgKiA2LiBSZWRpc3RyaWJ1dGlvbnMg b2YgYW55IGZvcm0gd2hhdHNvZXZlciBtdXN0IHJldGFpbiB0aGUgZm9sbG93aW5nCi0rICogICAg YWNrbm93bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBk ZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVjdAotKyAqICAgIGZvciB1c2UgaW4gdGhlIE9w ZW5TU0wgVG9vbGtpdCAoaHR0cDovL3d3dy5PcGVuU1NMLm9yZy8pIgotKyAqCi0rICogVEhJUyBT T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgT3BlblNTTCBQUk9KRUNUIGBgQVMgSVMnJyBBTkQg QU5ZCi0rICogRVhQUkVTU0VEIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg Tk9UIExJTUlURUQgVE8sIFRIRQotKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotKyAqIFBVUlBPU0UgQVJFIERJU0NM QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgT3BlblNTTCBQUk9KRUNUIE9SCi0rICogSVRT IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO VEFMLAotKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ TkNMVURJTkcsIEJVVAotKyAqIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0rICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULAotKyAqIFNUUklDVCBM SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSsg KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF TiBJRiBBRFZJU0VECi0rICogT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotKyAq ID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09Ci0rICovCi0rCi0rI2RlZmluZSBPUEVOU1NMX0ZJUFNBUEkKLSsKLSsjaW5j bHVkZSA8c3RkbGliLmg+Ci0rI2luY2x1ZGUgPHN0cmluZy5oPgotKyNpbmNsdWRlIDxvcGVuc3Ns L2NyeXB0by5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSsjaW5jbHVkZSAiY3J5cHRv L2ZpcHMuaCIKLSsjaW5jbHVkZSA8b3BlbnNzbC9maXBzX3JhbmQuaD4KLSsjaW5jbHVkZSAiZmlw c19yYW5kX2xjbC5oIgotKwotKy8qIFRoaXMgaXMgSGFzaF9kZiBmcm9tIFNQIDgwMC05MCAxMC40 LjEgKi8KLSsKLStzdGF0aWMgaW50IGhhc2hfZGYoRFJCR19DVFggKmRjdHgsIHVuc2lnbmVkIGNo YXIgKm91dCwKLSsgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqaW4xLCBz aXplX3QgaW4xbGVuLAotKyAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpp bjIsIHNpemVfdCBpbjJsZW4sCi0rICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNo YXIgKmluMywgc2l6ZV90IGluM2xlbiwKLSsgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWdu ZWQgY2hhciAqaW40LCBzaXplX3QgaW40bGVuKQotK3sKLSsgICAgRVZQX01EX0NUWCAqbWN0eCA9 IGRjdHgtPmQuaGFzaC5tY3R4OwotKyAgICB1bnNpZ25lZCBjaGFyICp2dG1wID0gZGN0eC0+ZC5o YXNoLnZ0bXA7Ci0rICAgIHVuc2lnbmVkIGNoYXIgdG1wWzZdOwotKyAgICAvKiBTdGFuZGFyZCBv bmx5IGV2ZXIgbmVlZHMgc2VlZGxlbiBieXRlcyB3aGljaCBpcyBhbHdheXMgbGVzcyB0aGFuCi0r ICAgICAqIG1heGltdW0gcGVybWl0dGVkIHNvIG5vIG5lZWQgdG8gY2hlY2sgbGVuZ3RoLgotKyAg ICAgKi8KLSsgICAgc2l6ZV90IG91dGxlbiA9IGRjdHgtPnNlZWRsZW47Ci0rICAgIHRtcFswXSA9 IDE7Ci0rICAgIHRtcFsxXSA9ICgob3V0bGVuICogOCkgPj4gMjQpICYgMHhmZjsKLSsgICAgdG1w WzJdID0gKChvdXRsZW4gKiA4KSA+PiAxNikgJiAweGZmOwotKyAgICB0bXBbM10gPSAoKG91dGxl biAqIDgpID4+IDgpICYgMHhmZjsKLSsgICAgdG1wWzRdID0gKG91dGxlbiAqIDgpICYgMHhmZjsK LSsgICAgaWYgKCFpbjEpIHsKLSsgICAgICAgIHRtcFs1XSA9ICh1bnNpZ25lZCBjaGFyKWluMWxl bjsKLSsgICAgICAgIGluMSA9IHRtcCArIDU7Ci0rICAgICAgICBpbjFsZW4gPSAxOwotKyAgICB9 Ci0rICAgIGZvciAoOzspIHsKLSsgICAgICAgIGlmICghRklQU19kaWdlc3Rpbml0KG1jdHgsIGRj dHgtPmQuaGFzaC5tZCkpCi0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICBpZiAoIUZJ UFNfZGlnZXN0dXBkYXRlKG1jdHgsIHRtcCwgNSkpCi0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0r ICAgICAgICBpZiAoaW4xICYmICFGSVBTX2RpZ2VzdHVwZGF0ZShtY3R4LCBpbjEsIGluMWxlbikp Ci0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICBpZiAoaW4yICYmICFGSVBTX2RpZ2Vz dHVwZGF0ZShtY3R4LCBpbjIsIGluMmxlbikpCi0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAg ICAgICBpZiAoaW4zICYmICFGSVBTX2RpZ2VzdHVwZGF0ZShtY3R4LCBpbjMsIGluM2xlbikpCi0r ICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICBpZiAoaW40ICYmICFGSVBTX2RpZ2VzdHVw ZGF0ZShtY3R4LCBpbjQsIGluNGxlbikpCi0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAg ICBpZiAob3V0bGVuIDwgZGN0eC0+YmxvY2tsZW5ndGgpIHsKLSsgICAgICAgICAgICBpZiAoIUZJ UFNfZGlnZXN0ZmluYWwobWN0eCwgdnRtcCwgTlVMTCkpCi0rICAgICAgICAgICAgICAgIHJldHVy biAwOwotKyAgICAgICAgICAgIG1lbWNweShvdXQsIHZ0bXAsIG91dGxlbik7Ci0rICAgICAgICAg ICAgT1BFTlNTTF9jbGVhbnNlKHZ0bXAsIGRjdHgtPmJsb2NrbGVuZ3RoKTsKLSsgICAgICAgICAg ICByZXR1cm4gMTsKLSsgICAgICAgIH0gZWxzZSBpZiAoIUZJUFNfZGlnZXN0ZmluYWwobWN0eCwg b3V0LCBOVUxMKSkKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgICAgIG91dGxlbiAt PSBkY3R4LT5ibG9ja2xlbmd0aDsKLSsgICAgICAgIGlmIChvdXRsZW4gPT0gMCkKLSsgICAgICAg ICAgICByZXR1cm4gMTsKLSsgICAgICAgIHRtcFswXSsrOwotKyAgICAgICAgb3V0ICs9IGRjdHgt PmJsb2NrbGVuZ3RoOwotKyAgICB9Ci0rfQotKwotKy8qIEFkZCBhbiB1bnNpZ25lZCBidWZmZXIg dG8gdGhlIGJ1ZiB2YWx1ZSwgc3RvcmluZyB0aGUgcmVzdWx0IGluIGJ1Zi4gRm9yCi0rICogdGhp cyBhbGdvcml0aG0gdGhlIGxlbmd0aCBvZiBpbnB1dCBuZXZlciBleGNlZWRzIHRoZSBzZWVkIGxl bmd0aC4KLSsgKi8KLSsKLStzdGF0aWMgdm9pZCBjdHhfYWRkX2J1ZihEUkJHX0NUWCAqZGN0eCwg dW5zaWduZWQgY2hhciAqYnVmLAotKyAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNo YXIgKmluLCBzaXplX3QgaW5sZW4pCi0rewotKyAgICBzaXplX3QgaSA9IGlubGVuOwotKyAgICBj b25zdCB1bnNpZ25lZCBjaGFyICpxOwotKyAgICB1bnNpZ25lZCBjaGFyIGMsICpwOwotKyAgICBw ID0gYnVmICsgZGN0eC0+c2VlZGxlbjsKLSsgICAgcSA9IGluICsgaW5sZW47Ci0rCi0rICAgIE9Q RU5TU0xfYXNzZXJ0KGkgPD0gZGN0eC0+c2VlZGxlbik7Ci0rCi0rICAgIC8qIFNwZWNpYWwgY2Fz ZTogemVybyBsZW5ndGgsIGp1c3QgaW5jcmVtZW50IGJ1ZmZlciAqLwotKyAgICBpZiAoaSkKLSsg ICAgICAgIGMgPSAwOwotKyAgICBlbHNlCi0rICAgICAgICBjID0gMTsKLSsKLSsgICAgd2hpbGUg KGkpIHsKLSsgICAgICAgIGludCByOwotKyAgICAgICAgcC0tOwotKyAgICAgICAgcS0tOwotKyAg ICAgICAgciA9ICpwICsgKnEgKyBjOwotKyAgICAgICAgLyogQ2FycnkgKi8KLSsgICAgICAgIGlm IChyID4gMHhmZikKLSsgICAgICAgICAgICBjID0gMTsKLSsgICAgICAgIGVsc2UKLSsgICAgICAg ICAgICBjID0gMDsKLSsgICAgICAgICpwID0gciAmIDB4ZmY7Ci0rICAgICAgICBpLS07Ci0rICAg IH0KLSsKLSsgICAgaSA9IGRjdHgtPnNlZWRsZW4gLSBpbmxlbjsKLSsKLSsgICAgLyogSWYgbm90 IGFkZGluZyB3aG9sZSBidWZmZXIgaGFuZGxlIGZpbmFsIGNhcnJpZXMgKi8KLSsgICAgaWYgKGMg JiYgaSkgewotKyAgICAgICAgZG8gewotKyAgICAgICAgICAgIHAtLTsKLSsgICAgICAgICAgICBj ID0gKnA7Ci0rICAgICAgICAgICAgYysrOwotKyAgICAgICAgICAgICpwID0gYzsKLSsgICAgICAg ICAgICBpZiAoYykKLSsgICAgICAgICAgICAgICAgcmV0dXJuOwotKyAgICAgICAgfSB3aGlsZSAo aS0tKTsKLSsgICAgfQotK30KLSsKLSsvKiBGaW5hbGlzZSBhbmQgYWRkIGhhc2ggdG8gViAqLwot KwotK3N0YXRpYyBpbnQgY3R4X2FkZF9tZChEUkJHX0NUWCAqZGN0eCkKLSt7Ci0rICAgIGlmICgh RklQU19kaWdlc3RmaW5hbChkY3R4LT5kLmhhc2gubWN0eCwgZGN0eC0+ZC5oYXNoLnZ0bXAsIE5V TEwpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIGN0eF9hZGRfYnVmKGRjdHgsIGRjdHgtPmQu aGFzaC5WLCBkY3R4LT5kLmhhc2gudnRtcCwgZGN0eC0+YmxvY2tsZW5ndGgpOwotKyAgICByZXR1 cm4gMTsKLSt9Ci0rCi0rc3RhdGljIGludCBoYXNoX2dlbihEUkJHX0NUWCAqZGN0eCwgdW5zaWdu ZWQgY2hhciAqb3V0LCBzaXplX3Qgb3V0bGVuKQotK3sKLSsgICAgRFJCR19IQVNIX0NUWCAqaGN0 eCA9ICZkY3R4LT5kLmhhc2g7Ci0rICAgIGlmIChvdXRsZW4gPT0gMCkKLSsgICAgICAgIHJldHVy biAxOwotKyAgICBtZW1jcHkoaGN0eC0+dnRtcCwgaGN0eC0+ViwgZGN0eC0+c2VlZGxlbik7Ci0r ICAgIGZvciAoOzspIHsKLSsgICAgICAgIEZJUFNfZGlnZXN0aW5pdChoY3R4LT5tY3R4LCBoY3R4 LT5tZCk7Ci0rICAgICAgICBGSVBTX2RpZ2VzdHVwZGF0ZShoY3R4LT5tY3R4LCBoY3R4LT52dG1w LCBkY3R4LT5zZWVkbGVuKTsKLSsgICAgICAgIGlmIChvdXRsZW4gPCBkY3R4LT5ibG9ja2xlbmd0 aCkgewotKyAgICAgICAgICAgIEZJUFNfZGlnZXN0ZmluYWwoaGN0eC0+bWN0eCwgaGN0eC0+dnRt cCwgTlVMTCk7Ci0rICAgICAgICAgICAgbWVtY3B5KG91dCwgaGN0eC0+dnRtcCwgb3V0bGVuKTsK LSsgICAgICAgICAgICByZXR1cm4gMTsKLSsgICAgICAgIH0gZWxzZSB7Ci0rICAgICAgICAgICAg RklQU19kaWdlc3RmaW5hbChoY3R4LT5tY3R4LCBvdXQsIE5VTEwpOwotKyAgICAgICAgICAgIG91 dGxlbiAtPSBkY3R4LT5ibG9ja2xlbmd0aDsKLSsgICAgICAgICAgICBpZiAob3V0bGVuID09IDAp Ci0rICAgICAgICAgICAgICAgIHJldHVybiAxOwotKyAgICAgICAgICAgIG91dCArPSBkY3R4LT5i bG9ja2xlbmd0aDsKLSsgICAgICAgIH0KLSsgICAgICAgIGN0eF9hZGRfYnVmKGRjdHgsIGhjdHgt PnZ0bXAsIE5VTEwsIDApOwotKyAgICB9Ci0rfQotKwotK3N0YXRpYyBpbnQgZHJiZ19oYXNoX2lu c3RhbnRpYXRlKERSQkdfQ1RYICpkY3R4LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmVudCwgc2l6ZV90IGVudF9sZW4sCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqbm9uY2UsIHNpemVf dCBub25jZV9sZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5z aWduZWQgY2hhciAqcHN0ciwgc2l6ZV90IHBzdHJfbGVuKQotK3sKLSsgICAgRFJCR19IQVNIX0NU WCAqaGN0eCA9ICZkY3R4LT5kLmhhc2g7Ci0rICAgIGlmICghaGFzaF9kZihkY3R4LCBoY3R4LT5W LAotKyAgICAgICAgICAgICAgICAgZW50LCBlbnRfbGVuLCBub25jZSwgbm9uY2VfbGVuLCBwc3Ry LCBwc3RyX2xlbiwgTlVMTCwgMCkpCi0rICAgICAgICByZXR1cm4gMDsKLSsgICAgaWYgKCFoYXNo X2RmKGRjdHgsIGhjdHgtPkMsCi0rICAgICAgICAgICAgICAgICBOVUxMLCAwLCBoY3R4LT5WLCBk Y3R4LT5zZWVkbGVuLCBOVUxMLCAwLCBOVUxMLCAwKSkKLSsgICAgICAgIHJldHVybiAwOwotKwot KyNpZmRlZiBIQVNIX0RSQkdfVFJBQ0UKLSsgICAgZnByaW50ZihzdGRlcnIsICJWK0MgYWZ0ZXIg aW5zdGFudGlhdGU6XG4iKTsKLSsgICAgaGV4cHJpbnQoc3RkZXJyLCBoY3R4LT5WLCBkY3R4LT5z ZWVkbGVuKTsKLSsgICAgaGV4cHJpbnQoc3RkZXJyLCBoY3R4LT5DLCBkY3R4LT5zZWVkbGVuKTsK LSsjZW5kaWYKLSsgICAgcmV0dXJuIDE7Ci0rfQotKwotK3N0YXRpYyBpbnQgZHJiZ19oYXNoX3Jl c2VlZChEUkJHX0NUWCAqZGN0eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg dW5zaWduZWQgY2hhciAqZW50LCBzaXplX3QgZW50X2xlbiwKLSsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWRpbiwgc2l6ZV90IGFkaW5fbGVuKQotK3sK LSsgICAgRFJCR19IQVNIX0NUWCAqaGN0eCA9ICZkY3R4LT5kLmhhc2g7Ci0rICAgIC8qIFYgYWJv dXQgdG8gYmUgdXBkYXRlZCBzbyB1c2UgQyBhcyBvdXRwdXQgaW5zdGVhZCAqLwotKyAgICBpZiAo IWhhc2hfZGYoZGN0eCwgaGN0eC0+QywKLSsgICAgICAgICAgICAgICAgIE5VTEwsIDEsIGhjdHgt PlYsIGRjdHgtPnNlZWRsZW4sCi0rICAgICAgICAgICAgICAgICBlbnQsIGVudF9sZW4sIGFkaW4s IGFkaW5fbGVuKSkKLSsgICAgICAgIHJldHVybiAwOwotKyAgICBtZW1jcHkoaGN0eC0+ViwgaGN0 eC0+QywgZGN0eC0+c2VlZGxlbik7Ci0rICAgIGlmICghaGFzaF9kZihkY3R4LCBoY3R4LT5DLCBO VUxMLCAwLAotKyAgICAgICAgICAgICAgICAgaGN0eC0+ViwgZGN0eC0+c2VlZGxlbiwgTlVMTCwg MCwgTlVMTCwgMCkpCi0rICAgICAgICByZXR1cm4gMDsKLSsjaWZkZWYgSEFTSF9EUkJHX1RSQUNF Ci0rICAgIGZwcmludGYoc3RkZXJyLCAiVitDIGFmdGVyIHJlc2VlZDpcbiIpOwotKyAgICBoZXhw cmludChzdGRlcnIsIGhjdHgtPlYsIGRjdHgtPnNlZWRsZW4pOwotKyAgICBoZXhwcmludChzdGRl cnIsIGhjdHgtPkMsIGRjdHgtPnNlZWRsZW4pOwotKyNlbmRpZgotKyAgICByZXR1cm4gMTsKLSt9 Ci0rCi0rc3RhdGljIGludCBkcmJnX2hhc2hfZ2VuZXJhdGUoRFJCR19DVFggKmRjdHgsCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqb3V0LCBzaXplX3Qgb3V0 bGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIg KmFkaW4sIHNpemVfdCBhZGluX2xlbikKLSt7Ci0rICAgIERSQkdfSEFTSF9DVFggKmhjdHggPSAm ZGN0eC0+ZC5oYXNoOwotKyAgICBFVlBfTURfQ1RYICptY3R4ID0gaGN0eC0+bWN0eDsKLSsgICAg dW5zaWduZWQgY2hhciB0bXBbNF07Ci0rICAgIGlmIChhZGluICYmIGFkaW5fbGVuKSB7Ci0rICAg ICAgICB0bXBbMF0gPSAyOwotKyAgICAgICAgaWYgKCFGSVBTX2RpZ2VzdGluaXQobWN0eCwgaGN0 eC0+bWQpKQotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgaWYgKCFFVlBfRGlnZXN0 VXBkYXRlKG1jdHgsIHRtcCwgMSkpCi0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICBp ZiAoIUVWUF9EaWdlc3RVcGRhdGUobWN0eCwgaGN0eC0+ViwgZGN0eC0+c2VlZGxlbikpCi0rICAg ICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICBpZiAoIUVWUF9EaWdlc3RVcGRhdGUobWN0eCwg YWRpbiwgYWRpbl9sZW4pKQotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgaWYgKCFj dHhfYWRkX21kKGRjdHgpKQotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rICAgIGlm ICghaGFzaF9nZW4oZGN0eCwgb3V0LCBvdXRsZW4pKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0r ICAgIHRtcFswXSA9IDM7Ci0rICAgIGlmICghRklQU19kaWdlc3Rpbml0KG1jdHgsIGhjdHgtPm1k KSkKLSsgICAgICAgIHJldHVybiAwOwotKyAgICBpZiAoIUVWUF9EaWdlc3RVcGRhdGUobWN0eCwg dG1wLCAxKSkKLSsgICAgICAgIHJldHVybiAwOwotKyAgICBpZiAoIUVWUF9EaWdlc3RVcGRhdGUo bWN0eCwgaGN0eC0+ViwgZGN0eC0+c2VlZGxlbikpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsg ICAgaWYgKCFjdHhfYWRkX21kKGRjdHgpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIGN0 eF9hZGRfYnVmKGRjdHgsIGhjdHgtPlYsIGhjdHgtPkMsIGRjdHgtPnNlZWRsZW4pOwotKwotKyAg ICB0bXBbMF0gPSAoZGN0eC0+cmVzZWVkX2NvdW50ZXIgPj4gMjQpICYgMHhmZjsKLSsgICAgdG1w WzFdID0gKGRjdHgtPnJlc2VlZF9jb3VudGVyID4+IDE2KSAmIDB4ZmY7Ci0rICAgIHRtcFsyXSA9 IChkY3R4LT5yZXNlZWRfY291bnRlciA+PiA4KSAmIDB4ZmY7Ci0rICAgIHRtcFszXSA9IGRjdHgt PnJlc2VlZF9jb3VudGVyICYgMHhmZjsKLSsgICAgY3R4X2FkZF9idWYoZGN0eCwgaGN0eC0+Viwg dG1wLCA0KTsKLSsjaWZkZWYgSEFTSF9EUkJHX1RSQUNFCi0rICAgIGZwcmludGYoc3RkZXJyLCAi VitDIGFmdGVyIGdlbmVyYXRlOlxuIik7Ci0rICAgIGhleHByaW50KHN0ZGVyciwgaGN0eC0+Viwg ZGN0eC0+c2VlZGxlbik7Ci0rICAgIGhleHByaW50KHN0ZGVyciwgaGN0eC0+QywgZGN0eC0+c2Vl ZGxlbik7Ci0rI2VuZGlmCi0rICAgIHJldHVybiAxOwotK30KLSsKLStzdGF0aWMgaW50IGRyYmdf aGFzaF91bmluc3RhbnRpYXRlKERSQkdfQ1RYICpkY3R4KQotK3sKLSsgICAgRVZQX01EX0NUWF9m cmVlKGRjdHgtPmQuaGFzaC5tY3R4KTsKLSsgICAgT1BFTlNTTF9jbGVhbnNlKCZkY3R4LT5kLmhh c2gsIHNpemVvZihEUkJHX0hBU0hfQ1RYKSk7Ci0rICAgIHJldHVybiAxOwotK30KLSsKLStpbnQg Zmlwc19kcmJnX2hhc2hfaW5pdChEUkJHX0NUWCAqZGN0eCkKLSt7Ci0rICAgIGNvbnN0IEVWUF9N RCAqbWQ7Ci0rICAgIERSQkdfSEFTSF9DVFggKmhjdHggPSAmZGN0eC0+ZC5oYXNoOwotKyAgICBt ZCA9IEVWUF9nZXRfZGlnZXN0YnluaWQoZGN0eC0+dHlwZSk7Ci0rICAgIGlmICghbWQpCi0rICAg ICAgICByZXR1cm4gLTI7Ci0rICAgIHN3aXRjaCAoZGN0eC0+dHlwZSkgewotKyAgICBjYXNlIE5J RF9zaGExOgotKyAgICAgICAgZGN0eC0+c3RyZW5ndGggPSAxMjg7Ci0rICAgICAgICBicmVhazsK LSsKLSsgICAgY2FzZSBOSURfc2hhMjI0OgotKyAgICAgICAgZGN0eC0+c3RyZW5ndGggPSAxOTI7 Ci0rICAgICAgICBicmVhazsKLSsKLSsgICAgZGVmYXVsdDoKLSsgICAgICAgIGRjdHgtPnN0cmVu Z3RoID0gMjU2OwotKyAgICAgICAgYnJlYWs7Ci0rICAgIH0KLSsKLSsgICAgZGN0eC0+aW5zdGFu dGlhdGUgPSBkcmJnX2hhc2hfaW5zdGFudGlhdGU7Ci0rICAgIGRjdHgtPnJlc2VlZCA9IGRyYmdf aGFzaF9yZXNlZWQ7Ci0rICAgIGRjdHgtPmdlbmVyYXRlID0gZHJiZ19oYXNoX2dlbmVyYXRlOwot KyAgICBkY3R4LT51bmluc3RhbnRpYXRlID0gZHJiZ19oYXNoX3VuaW5zdGFudGlhdGU7Ci0rCi0r ICAgIGRjdHgtPmQuaGFzaC5tZCA9IG1kOwotKyAgICBoY3R4LT5tY3R4ID0gRVZQX01EX0NUWF9u ZXcoKTsKLSsgICAgaWYgKGhjdHgtPm1jdHggPT0gTlVMTCkKLSsgICAgICAgIHJldHVybiAtMTsK LSsKLSsgICAgLyogVGhlc2UgYXJlIHRha2VuIGZyb20gU1AgODAwLTkwIDEwLjEgdGFibGUgMiAq LwotKwotKyAgICBkY3R4LT5ibG9ja2xlbmd0aCA9IEVWUF9NRF9zaXplKG1kKTsKLSsgICAgaWYg KGRjdHgtPmJsb2NrbGVuZ3RoID4gMzIpCi0rICAgICAgICBkY3R4LT5zZWVkbGVuID0gMTExOwot KyAgICBlbHNlCi0rICAgICAgICBkY3R4LT5zZWVkbGVuID0gNTU7Ci0rCi0rICAgIGRjdHgtPm1p bl9lbnRyb3B5ID0gZGN0eC0+c3RyZW5ndGggLyA4OwotKyAgICBkY3R4LT5tYXhfZW50cm9weSA9 IERSQkdfTUFYX0xFTkdUSDsKLSsKLSsgICAgZGN0eC0+bWluX25vbmNlID0gZGN0eC0+bWluX2Vu dHJvcHkgLyAyOwotKyAgICBkY3R4LT5tYXhfbm9uY2UgPSBEUkJHX01BWF9MRU5HVEg7Ci0rCi0r ICAgIGRjdHgtPm1heF9wZXJzID0gRFJCR19NQVhfTEVOR1RIOwotKyAgICBkY3R4LT5tYXhfYWRp biA9IERSQkdfTUFYX0xFTkdUSDsKLSsKLSsgICAgZGN0eC0+bWF4X3JlcXVlc3QgPSAxIDw8IDE2 OwotKyAgICBkY3R4LT5yZXNlZWRfaW50ZXJ2YWwgPSAxIDw8IDI0OwotKwotKyAgICByZXR1cm4g MTsKLSt9Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX2RyYmdfaG1h Yy5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kcmJnX2htYWMuYwotLS0t IG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfZHJiZ19obWFjLmMuZmlwcwkyMDIxLTAz LTAzIDEyOjU3OjQyLjE5OTczNDUyNSArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9m aXBzL2ZpcHNfZHJiZ19obWFjLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTk3MzQ1MjUgKzAxMDAK LUBAIC0wLDAgKzEsMjYyIEBACi0rLyogZmlwcy9yYW5kL2ZpcHNfZHJiZ19obWFjLmMgKi8KLSsv KiBXcml0dGVuIGJ5IERyIFN0ZXBoZW4gTiBIZW5zb24gKHN0ZXZlQG9wZW5zc2wub3JnKSBmb3Ig dGhlIE9wZW5TU0wKLSsgKiBwcm9qZWN0LgotKyAqLwotKy8qID09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0rICogQ29w eXJpZ2h0IChjKSAyMDExIFRoZSBPcGVuU1NMIFByb2plY3QuICBBbGwgcmlnaHRzIHJlc2VydmVk LgotKyAqCi0rICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm b3Jtcywgd2l0aCBvciB3aXRob3V0Ci0rICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0rICogYXJlIG1ldDoKLSsgKgot KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv dmUgY29weXJpZ2h0Ci0rICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKLSsgKgotKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBp biBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0rICogICAg bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp bWVyIGluCi0rICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw cm92aWRlZCB3aXRoIHRoZQotKyAqICAgIGRpc3RyaWJ1dGlvbi4KLSsgKgotKyAqIDMuIEFsbCBh ZHZlcnRpc2luZyBtYXRlcmlhbHMgbWVudGlvbmluZyBmZWF0dXJlcyBvciB1c2Ugb2YgdGhpcwot KyAqICAgIHNvZnR3YXJlIG11c3QgZGlzcGxheSB0aGUgZm9sbG93aW5nIGFja25vd2xlZGdtZW50 OgotKyAqICAgICJUaGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxvcGVkIGJ5IHRo ZSBPcGVuU1NMIFByb2plY3QKLSsgKiAgICBmb3IgdXNlIGluIHRoZSBPcGVuU1NMIFRvb2xraXQu IChodHRwOi8vd3d3Lk9wZW5TU0wub3JnLykiCi0rICoKLSsgKiA0LiBUaGUgbmFtZXMgIk9wZW5T U0wgVG9vbGtpdCIgYW5kICJPcGVuU1NMIFByb2plY3QiIG11c3Qgbm90IGJlIHVzZWQgdG8KLSsg KiAgICBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdh cmUgd2l0aG91dAotKyAqICAgIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gRm9yIHdyaXR0ZW4g cGVybWlzc2lvbiwgcGxlYXNlIGNvbnRhY3QKLSsgKiAgICBsaWNlbnNpbmdAT3BlblNTTC5vcmcu Ci0rICoKLSsgKiA1LiBQcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSBtYXkgbm90 IGJlIGNhbGxlZCAiT3BlblNTTCIKLSsgKiAgICBub3IgbWF5ICJPcGVuU1NMIiBhcHBlYXIgaW4g dGhlaXIgbmFtZXMgd2l0aG91dCBwcmlvciB3cml0dGVuCi0rICogICAgcGVybWlzc2lvbiBvZiB0 aGUgT3BlblNTTCBQcm9qZWN0LgotKyAqCi0rICogNi4gUmVkaXN0cmlidXRpb25zIG9mIGFueSBm b3JtIHdoYXRzb2V2ZXIgbXVzdCByZXRhaW4gdGhlIGZvbGxvd2luZwotKyAqICAgIGFja25vd2xl ZGdtZW50OgotKyAqICAgICJUaGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxvcGVk IGJ5IHRoZSBPcGVuU1NMIFByb2plY3QKLSsgKiAgICBmb3IgdXNlIGluIHRoZSBPcGVuU1NMIFRv b2xraXQgKGh0dHA6Ly93d3cuT3BlblNTTC5vcmcvKSIKLSsgKgotKyAqIFRISVMgU09GVFdBUkUg SVMgUFJPVklERUQgQlkgVEhFIE9wZW5TU0wgUFJPSkVDVCBgYEFTIElTJycgQU5EIEFOWQotKyAq IEVYUFJFU1NFRCBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J VEVEIFRPLCBUSEUKLSsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSsgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAg SU4gTk8gRVZFTlQgU0hBTEwgVEhFIE9wZW5TU0wgUFJPSkVDVCBPUgotKyAqIElUUyBDT05UUklC VVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSsg KiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5H LCBCVVQKLSsgKiBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E UyBPUiBTRVJWSUNFUzsKLSsgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT SU5FU1MgSU5URVJSVVBUSU9OKQotKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwKLSsgKiBTVFJJQ1QgTElBQklMSVRZ LCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0rICogQVJJU0lO RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW SVNFRAotKyAqIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSsgKiA9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQotKyAqLwotKwotKyNpbmNsdWRlIDxzdGRsaWIuaD4KLSsjaW5jbHVkZSA8c3RyaW5nLmg+ Ci0rI2luY2x1ZGUgPG9wZW5zc2wvY3J5cHRvLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZXZwLmg+ Ci0rI2luY2x1ZGUgPG9wZW5zc2wvaG1hYy5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2Flcy5oPgot KyNpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9maXBzX3JhbmQu aD4KLSsjaW5jbHVkZSAiZmlwc19yYW5kX2xjbC5oIgotKwotK3N0YXRpYyBpbnQgZHJiZ19obWFj X3VwZGF0ZShEUkJHX0NUWCAqZGN0eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u c3QgdW5zaWduZWQgY2hhciAqaW4xLCBzaXplX3QgaW4xbGVuLAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICppbjIsIHNpemVfdCBpbjJsZW4sCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmluMywgc2l6ZV90 IGluM2xlbikKLSt7Ci0rICAgIHN0YXRpYyB1bnNpZ25lZCBjaGFyIGMwID0gMCwgYzEgPSAxOwot KyAgICBEUkJHX0hNQUNfQ1RYICpobWFjID0gJmRjdHgtPmQuaG1hYzsKLSsgICAgSE1BQ19DVFgg KmhjdHggPSBobWFjLT5oY3R4OwotKwotKyAgICBpZiAoIUhNQUNfSW5pdF9leChoY3R4LCBobWFj LT5LLCBkY3R4LT5ibG9ja2xlbmd0aCwgaG1hYy0+bWQsIE5VTEwpKQotKyAgICAgICAgcmV0dXJu IDA7Ci0rICAgIGlmICghSE1BQ19VcGRhdGUoaGN0eCwgaG1hYy0+ViwgZGN0eC0+YmxvY2tsZW5n dGgpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIGlmICghSE1BQ19VcGRhdGUoaGN0eCwgJmMw LCAxKSkKLSsgICAgICAgIHJldHVybiAwOwotKyAgICBpZiAoaW4xbGVuICYmICFITUFDX1VwZGF0 ZShoY3R4LCBpbjEsIGluMWxlbikpCi0rICAgICAgICByZXR1cm4gMDsKLSsgICAgaWYgKGluMmxl biAmJiAhSE1BQ19VcGRhdGUoaGN0eCwgaW4yLCBpbjJsZW4pKQotKyAgICAgICAgcmV0dXJuIDA7 Ci0rICAgIGlmIChpbjNsZW4gJiYgIUhNQUNfVXBkYXRlKGhjdHgsIGluMywgaW4zbGVuKSkKLSsg ICAgICAgIHJldHVybiAwOwotKwotKyAgICBpZiAoIUhNQUNfRmluYWwoaGN0eCwgaG1hYy0+Sywg TlVMTCkpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgaWYgKCFITUFDX0luaXRfZXgoaGN0 eCwgaG1hYy0+SywgZGN0eC0+YmxvY2tsZW5ndGgsIGhtYWMtPm1kLCBOVUxMKSkKLSsgICAgICAg IHJldHVybiAwOwotKyAgICBpZiAoIUhNQUNfVXBkYXRlKGhjdHgsIGhtYWMtPlYsIGRjdHgtPmJs b2NrbGVuZ3RoKSkKLSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICBpZiAoIUhNQUNfRmluYWwo aGN0eCwgaG1hYy0+ViwgTlVMTCkpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgaWYgKCFp bjFsZW4gJiYgIWluMmxlbiAmJiAhaW4zbGVuKQotKyAgICAgICAgcmV0dXJuIDE7Ci0rCi0rICAg IGlmICghSE1BQ19Jbml0X2V4KGhjdHgsIGhtYWMtPkssIGRjdHgtPmJsb2NrbGVuZ3RoLCBobWFj LT5tZCwgTlVMTCkpCi0rICAgICAgICByZXR1cm4gMDsKLSsgICAgaWYgKCFITUFDX1VwZGF0ZSho Y3R4LCBobWFjLT5WLCBkY3R4LT5ibG9ja2xlbmd0aCkpCi0rICAgICAgICByZXR1cm4gMDsKLSsg ICAgaWYgKCFITUFDX1VwZGF0ZShoY3R4LCAmYzEsIDEpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0r ICAgIGlmIChpbjFsZW4gJiYgIUhNQUNfVXBkYXRlKGhjdHgsIGluMSwgaW4xbGVuKSkKLSsgICAg ICAgIHJldHVybiAwOwotKyAgICBpZiAoaW4ybGVuICYmICFITUFDX1VwZGF0ZShoY3R4LCBpbjIs IGluMmxlbikpCi0rICAgICAgICByZXR1cm4gMDsKLSsgICAgaWYgKGluM2xlbiAmJiAhSE1BQ19V cGRhdGUoaGN0eCwgaW4zLCBpbjNsZW4pKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIGlm ICghSE1BQ19GaW5hbChoY3R4LCBobWFjLT5LLCBOVUxMKSkKLSsgICAgICAgIHJldHVybiAwOwot KwotKyAgICBpZiAoIUhNQUNfSW5pdF9leChoY3R4LCBobWFjLT5LLCBkY3R4LT5ibG9ja2xlbmd0 aCwgaG1hYy0+bWQsIE5VTEwpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIGlmICghSE1BQ19V cGRhdGUoaGN0eCwgaG1hYy0+ViwgZGN0eC0+YmxvY2tsZW5ndGgpKQotKyAgICAgICAgcmV0dXJu IDA7Ci0rCi0rICAgIGlmICghSE1BQ19GaW5hbChoY3R4LCBobWFjLT5WLCBOVUxMKSkKLSsgICAg ICAgIHJldHVybiAwOwotKwotKyAgICByZXR1cm4gMTsKLSsKLSt9Ci0rCi0rc3RhdGljIGludCBk cmJnX2htYWNfaW5zdGFudGlhdGUoRFJCR19DVFggKmRjdHgsCi0rICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqZW50LCBzaXplX3QgZW50X2xlbiwK LSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpu b25jZSwgc2l6ZV90IG5vbmNlX2xlbiwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCB1bnNpZ25lZCBjaGFyICpwc3RyLCBzaXplX3QgcHN0cl9sZW4pCi0rewotKyAgICBE UkJHX0hNQUNfQ1RYICpobWFjID0gJmRjdHgtPmQuaG1hYzsKLSsgICAgbWVtc2V0KGhtYWMtPkss IDAsIGRjdHgtPmJsb2NrbGVuZ3RoKTsKLSsgICAgbWVtc2V0KGhtYWMtPlYsIDEsIGRjdHgtPmJs b2NrbGVuZ3RoKTsKLSsgICAgaWYgKCFkcmJnX2htYWNfdXBkYXRlKGRjdHgsCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICBlbnQsIGVudF9sZW4sIG5vbmNlLCBub25jZV9sZW4sIHBzdHIsIHBz dHJfbGVuKSkKLSsgICAgICAgIHJldHVybiAwOwotKwotKyNpZmRlZiBITUFDX0RSQkdfVFJBQ0UK LSsgICAgZnByaW50ZihzdGRlcnIsICJLK1YgYWZ0ZXIgaW5zdGFudGlhdGU6XG4iKTsKLSsgICAg aGV4cHJpbnQoc3RkZXJyLCBobWFjLT5LLCBobWFjLT5ibG9ja2xlbmd0aCk7Ci0rICAgIGhleHBy aW50KHN0ZGVyciwgaG1hYy0+ViwgaG1hYy0+YmxvY2tsZW5ndGgpOwotKyNlbmRpZgotKyAgICBy ZXR1cm4gMTsKLSt9Ci0rCi0rc3RhdGljIGludCBkcmJnX2htYWNfcmVzZWVkKERSQkdfQ1RYICpk Y3R4LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpl bnQsIHNpemVfdCBlbnRfbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1 bnNpZ25lZCBjaGFyICphZGluLCBzaXplX3QgYWRpbl9sZW4pCi0rewotKyAgICBpZiAoIWRyYmdf aG1hY191cGRhdGUoZGN0eCwgZW50LCBlbnRfbGVuLCBhZGluLCBhZGluX2xlbiwgTlVMTCwgMCkp Ci0rICAgICAgICByZXR1cm4gMDsKLSsKLSsjaWZkZWYgSE1BQ19EUkJHX1RSQUNFCi0rICAgIHsK LSsgICAgICAgIERSQkdfSE1BQ19DVFggKmhtYWMgPSAmZGN0eC0+ZC5obWFjOwotKyAgICAgICAg ZnByaW50ZihzdGRlcnIsICJLK1YgYWZ0ZXIgcmVzZWVkOlxuIik7Ci0rICAgICAgICBoZXhwcmlu dChzdGRlcnIsIGhtYWMtPkssIGhtYWMtPmJsb2NrbGVuZ3RoKTsKLSsgICAgICAgIGhleHByaW50 KHN0ZGVyciwgaG1hYy0+ViwgaG1hYy0+YmxvY2tsZW5ndGgpOwotKyAgICB9Ci0rI2VuZGlmCi0r ICAgIHJldHVybiAxOwotK30KLSsKLStzdGF0aWMgaW50IGRyYmdfaG1hY19nZW5lcmF0ZShEUkJH X0NUWCAqZGN0eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFy ICpvdXQsIHNpemVfdCBvdXRsZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u c3QgdW5zaWduZWQgY2hhciAqYWRpbiwgc2l6ZV90IGFkaW5fbGVuKQotK3sKLSsgICAgRFJCR19I TUFDX0NUWCAqaG1hYyA9ICZkY3R4LT5kLmhtYWM7Ci0rICAgIEhNQUNfQ1RYICpoY3R4ID0gaG1h Yy0+aGN0eDsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqVnRtcCA9IGhtYWMtPlY7Ci0rICAg IGlmIChhZGluX2xlbiAmJiAhZHJiZ19obWFjX3VwZGF0ZShkY3R4LCBhZGluLCBhZGluX2xlbiwg TlVMTCwgMCwgTlVMTCwgMCkpCi0rICAgICAgICByZXR1cm4gMDsKLSsgICAgZm9yICg7Oykgewot KyAgICAgICAgaWYgKCFITUFDX0luaXRfZXgoaGN0eCwgaG1hYy0+SywgZGN0eC0+YmxvY2tsZW5n dGgsIGhtYWMtPm1kLCBOVUxMKSkKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsgICAgICAgIGlm ICghSE1BQ19VcGRhdGUoaGN0eCwgVnRtcCwgZGN0eC0+YmxvY2tsZW5ndGgpKQotKyAgICAgICAg ICAgIHJldHVybiAwOwotKyAgICAgICAgaWYgKG91dGxlbiA+IGRjdHgtPmJsb2NrbGVuZ3RoKSB7 Ci0rICAgICAgICAgICAgaWYgKCFITUFDX0ZpbmFsKGhjdHgsIG91dCwgTlVMTCkpCi0rICAgICAg ICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgICAgIFZ0bXAgPSBvdXQ7Ci0rICAgICAgICB9 IGVsc2UgewotKyAgICAgICAgICAgIGlmICghSE1BQ19GaW5hbChoY3R4LCBobWFjLT5WLCBOVUxM KSkKLSsgICAgICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICAgICAgbWVtY3B5KG91dCwg aG1hYy0+Viwgb3V0bGVuKTsKLSsgICAgICAgICAgICBicmVhazsKLSsgICAgICAgIH0KLSsgICAg ICAgIG91dCArPSBkY3R4LT5ibG9ja2xlbmd0aDsKLSsgICAgICAgIG91dGxlbiAtPSBkY3R4LT5i bG9ja2xlbmd0aDsKLSsgICAgfQotKyAgICBpZiAoIWRyYmdfaG1hY191cGRhdGUoZGN0eCwgYWRp biwgYWRpbl9sZW4sIE5VTEwsIDAsIE5VTEwsIDApKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0r ICAgIHJldHVybiAxOwotK30KLSsKLStzdGF0aWMgaW50IGRyYmdfaG1hY191bmluc3RhbnRpYXRl KERSQkdfQ1RYICpkY3R4KQotK3sKLSsgICAgSE1BQ19DVFhfZnJlZShkY3R4LT5kLmhtYWMuaGN0 eCk7Ci0rICAgIE9QRU5TU0xfY2xlYW5zZSgmZGN0eC0+ZC5obWFjLCBzaXplb2YoRFJCR19ITUFD X0NUWCkpOwotKyAgICByZXR1cm4gMTsKLSt9Ci0rCi0raW50IGZpcHNfZHJiZ19obWFjX2luaXQo RFJCR19DVFggKmRjdHgpCi0rewotKyAgICBjb25zdCBFVlBfTUQgKm1kID0gTlVMTDsKLSsgICAg RFJCR19ITUFDX0NUWCAqaGN0eCA9ICZkY3R4LT5kLmhtYWM7Ci0rICAgIGRjdHgtPnN0cmVuZ3Ro ID0gMjU2OwotKyAgICBzd2l0Y2ggKGRjdHgtPnR5cGUpIHsKLSsgICAgY2FzZSBOSURfaG1hY1dp dGhTSEExOgotKyAgICAgICAgbWQgPSBFVlBfc2hhMSgpOwotKyAgICAgICAgZGN0eC0+c3RyZW5n dGggPSAxMjg7Ci0rICAgICAgICBicmVhazsKLSsKLSsgICAgY2FzZSBOSURfaG1hY1dpdGhTSEEy MjQ6Ci0rICAgICAgICBtZCA9IEVWUF9zaGEyMjQoKTsKLSsgICAgICAgIGRjdHgtPnN0cmVuZ3Ro ID0gMTkyOwotKyAgICAgICAgYnJlYWs7Ci0rCi0rICAgIGNhc2UgTklEX2htYWNXaXRoU0hBMjU2 OgotKyAgICAgICAgbWQgPSBFVlBfc2hhMjU2KCk7Ci0rICAgICAgICBicmVhazsKLSsKLSsgICAg Y2FzZSBOSURfaG1hY1dpdGhTSEEzODQ6Ci0rICAgICAgICBtZCA9IEVWUF9zaGEzODQoKTsKLSsg ICAgICAgIGJyZWFrOwotKwotKyAgICBjYXNlIE5JRF9obWFjV2l0aFNIQTUxMjoKLSsgICAgICAg IG1kID0gRVZQX3NoYTUxMigpOwotKyAgICAgICAgYnJlYWs7Ci0rCi0rICAgIGRlZmF1bHQ6Ci0r ICAgICAgICBkY3R4LT5zdHJlbmd0aCA9IDA7Ci0rICAgICAgICByZXR1cm4gLTI7Ci0rICAgIH0K LSsgICAgZGN0eC0+aW5zdGFudGlhdGUgPSBkcmJnX2htYWNfaW5zdGFudGlhdGU7Ci0rICAgIGRj dHgtPnJlc2VlZCA9IGRyYmdfaG1hY19yZXNlZWQ7Ci0rICAgIGRjdHgtPmdlbmVyYXRlID0gZHJi Z19obWFjX2dlbmVyYXRlOwotKyAgICBkY3R4LT51bmluc3RhbnRpYXRlID0gZHJiZ19obWFjX3Vu aW5zdGFudGlhdGU7Ci0rICAgIGhjdHgtPmhjdHggPSBITUFDX0NUWF9uZXcoKTsKLSsgICAgaWYg KGhjdHgtPmhjdHggPT0gTlVMTCkKLSsgICAgICAgIHJldHVybiAtMTsKLSsgICAgaGN0eC0+bWQg PSBtZDsKLSsgICAgZGN0eC0+YmxvY2tsZW5ndGggPSBNX0VWUF9NRF9zaXplKG1kKTsKLSsgICAg ZGN0eC0+c2VlZGxlbiA9IE1fRVZQX01EX3NpemUobWQpOwotKwotKyAgICBkY3R4LT5taW5fZW50 cm9weSA9IGRjdHgtPnN0cmVuZ3RoIC8gODsKLSsgICAgZGN0eC0+bWF4X2VudHJvcHkgPSBEUkJH X01BWF9MRU5HVEg7Ci0rCi0rICAgIGRjdHgtPm1pbl9ub25jZSA9IGRjdHgtPm1pbl9lbnRyb3B5 IC8gMjsKLSsgICAgZGN0eC0+bWF4X25vbmNlID0gRFJCR19NQVhfTEVOR1RIOwotKwotKyAgICBk Y3R4LT5tYXhfcGVycyA9IERSQkdfTUFYX0xFTkdUSDsKLSsgICAgZGN0eC0+bWF4X2FkaW4gPSBE UkJHX01BWF9MRU5HVEg7Ci0rCi0rICAgIGRjdHgtPm1heF9yZXF1ZXN0ID0gMSA8PCAxNjsKLSsg ICAgZGN0eC0+cmVzZWVkX2ludGVydmFsID0gMSA8PCAyNDsKLSsKLSsgICAgcmV0dXJuIDE7Ci0r fQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kcmJnX2xpYi5jLmZp cHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kcmJnX2xpYi5jCi0tLS0gb3BlbnNz bC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kcmJnX2xpYi5jLmZpcHMJMjAyMS0wMy0wMyAxMjo1 Nzo0Mi4xOTk3MzQ1MjUgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBz X2RyYmdfbGliLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTk3MzQ1MjUgKzAxMDAKLUBAIC0wLDAg KzEsNTI4IEBACi0rLyogV3JpdHRlbiBieSBEciBTdGVwaGVuIE4gSGVuc29uIChzdGV2ZUBvcGVu c3NsLm9yZykgZm9yIHRoZSBPcGVuU1NMCi0rICogcHJvamVjdC4KLSsgKi8KLSsvKiA9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQotKyAqIENvcHlyaWdodCAoYykgMjAxMSBUaGUgT3BlblNTTCBQcm9qZWN0LiAgQWxsIHJp Z2h0cyByZXNlcnZlZC4KLSsgKgotKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotKyAqIG1vZGlmaWNhdGlvbiwgYXJl IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotKyAqIGFy ZSBtZXQ6Ci0rICoKLSsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0rICoKLSsgKiAyLiBSZWRp c3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHly aWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs b3dpbmcgZGlzY2xhaW1lciBpbgotKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSsgKiAgICBkaXN0cmlidXRpb24uCi0rICoK LSsgKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3Ig dXNlIG9mIHRoaXMKLSsgKiAgICBzb2Z0d2FyZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBh Y2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRl dmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3Bl blNTTCBUb29sa2l0LiAoaHR0cDovL3d3dy5PcGVuU1NMLm9yZy8pIgotKyAqCi0rICogNC4gVGhl IG5hbWVzICJPcGVuU1NMIFRvb2xraXQiIGFuZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0IG5vdCBi ZSB1c2VkIHRvCi0rICogICAgZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJv bSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQKLSsgKiAgICBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24u IEZvciB3cml0dGVuIHBlcm1pc3Npb24sIHBsZWFzZSBjb250YWN0Ci0rICogICAgbGljZW5zaW5n QE9wZW5TU0wub3JnLgotKyAqCi0rICogNS4gUHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29m dHdhcmUgbWF5IG5vdCBiZSBjYWxsZWQgIk9wZW5TU0wiCi0rICogICAgbm9yIG1heSAiT3BlblNT TCIgYXBwZWFyIGluIHRoZWlyIG5hbWVzIHdpdGhvdXQgcHJpb3Igd3JpdHRlbgotKyAqICAgIHBl cm1pc3Npb24gb2YgdGhlIE9wZW5TU0wgUHJvamVjdC4KLSsgKgotKyAqIDYuIFJlZGlzdHJpYnV0 aW9ucyBvZiBhbnkgZm9ybSB3aGF0c29ldmVyIG11c3QgcmV0YWluIHRoZSBmb2xsb3dpbmcKLSsg KiAgICBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3 YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0 aGUgT3BlblNTTCBUb29sa2l0IChodHRwOi8vd3d3Lk9wZW5TU0wub3JnLykiCi0rICoKLSsgKiBU SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycn IEFORCBBTlkKLSsgKiBFWFBSRVNTRUQgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcs IEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0rICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0rICogUFVSUE9TRSBBUkUg RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBPcGVuU1NMIFBST0pFQ1QgT1IKLSsg KiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElO Q0lERU5UQUwsCi0rICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH RVMgKElOQ0xVRElORywgQlVUCi0rICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNV QlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0rICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSsgKiBIT1dFVkVSIENBVVNFRCBBTkQg T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0rICogU1RS SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF KQotKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJF LCBFVkVOIElGIEFEVklTRUQKLSsgKiBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu Ci0rICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0KLSsgKi8KLSsKLSsjaW5jbHVkZSA8c3RyaW5nLmg+Ci0rI2luY2x1 ZGUgPG9wZW5zc2wvY3J5cHRvLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZXJyLmg+Ci0rI2luY2x1 ZGUgPG9wZW5zc2wvZmlwcy5oPgotKyNpbmNsdWRlICJjcnlwdG8vZmlwcy5oIgotKyNpbmNsdWRl IDxvcGVuc3NsL2ZpcHNfcmFuZC5oPgotKyNpbmNsdWRlICJmaXBzX2xvY2wuaCIKLSsjaW5jbHVk ZSAiZmlwc19yYW5kX2xjbC5oIgotKwotKy8qIFN1cHBvcnQgZnJhbWV3b3JrIGZvciBTUDgwMC05 MCBEUkJHcyAqLwotKwotK2ludCBGSVBTX2RyYmdfaW5pdChEUkJHX0NUWCAqZGN0eCwgaW50IHR5 cGUsIHVuc2lnbmVkIGludCBmbGFncykKLSt7Ci0rICAgIGludCBydjsKLSsgICAgbWVtc2V0KGRj dHgsIDAsIHNpemVvZihEUkJHX0NUWCkpOwotKyAgICBkY3R4LT5zdGF0dXMgPSBEUkJHX1NUQVRV U19VTklOSVRJQUxJU0VEOwotKyAgICBkY3R4LT54ZmxhZ3MgPSBmbGFnczsKLSsgICAgZGN0eC0+ dHlwZSA9IHR5cGU7Ci0rCi0rICAgIGRjdHgtPmlmbGFncyA9IDA7Ci0rICAgIGRjdHgtPmVudHJv cHlfYmxvY2tsZW4gPSAwOwotKyAgICBkY3R4LT5oZWFsdGhfY2hlY2tfY250ID0gMDsKLSsgICAg ZGN0eC0+aGVhbHRoX2NoZWNrX2ludGVydmFsID0gRFJCR19IRUFMVEhfSU5URVJWQUw7Ci0rCi0r ICAgIHJ2ID0gZmlwc19kcmJnX2hhc2hfaW5pdChkY3R4KTsKLSsKLSsgICAgaWYgKHJ2ID09IC0y KQotKyAgICAgICAgcnYgPSBmaXBzX2RyYmdfY3RyX2luaXQoZGN0eCk7Ci0rICAgIGlmIChydiA9 PSAtMikKLSsgICAgICAgIHJ2ID0gZmlwc19kcmJnX2htYWNfaW5pdChkY3R4KTsKLSsKLSsgICAg aWYgKHJ2IDw9IDApIHsKLSsgICAgICAgIGlmIChydiA9PSAtMikKLSsgICAgICAgICAgICBGSVBT ZXJyKEZJUFNfRl9GSVBTX0RSQkdfSU5JVCwgRklQU19SX1VOU1VQUE9SVEVEX0RSQkdfVFlQRSk7 Ci0rICAgICAgICBlbHNlCi0rICAgICAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19EUkJHX0lO SVQsIEZJUFNfUl9FUlJPUl9JTklUSUFMSVNJTkdfRFJCRyk7Ci0rICAgIH0KLSsKLSsgICAgLyog SWYgbm90IGluIHRlc3QgbW9kZSBydW4gc2VsZnRlc3RzIG9uIERSQkcgb2YgdGhlIHNhbWUgdHlw ZSAqLwotKwotKyAgICBpZiAoIShkY3R4LT54ZmxhZ3MgJiBEUkJHX0ZMQUdfVEVTVCkpIHsKLSsg ICAgICAgIGlmICghRklQU19kcmJnX2hlYWx0aF9jaGVjayhkY3R4KSkgewotKyAgICAgICAgICAg IEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19JTklULCBGSVBTX1JfU0VMRlRFU1RfRkFJTFVSRSk7 Ci0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICB9Ci0rICAgIH0KLSsKLSsgICAgcmV0 dXJuIHJ2OwotK30KLSsKLStEUkJHX0NUWCAqRklQU19kcmJnX25ldyhpbnQgdHlwZSwgdW5zaWdu ZWQgaW50IGZsYWdzKQotK3sKLSsgICAgRFJCR19DVFggKmRjdHg7Ci0rICAgIGRjdHggPSBPUEVO U1NMX21hbGxvYyhzaXplb2YoRFJCR19DVFgpKTsKLSsgICAgaWYgKCFkY3R4KSB7Ci0rICAgICAg ICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdfTkVXLCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7Ci0r ICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAgfQotKwotKyAgICBpZiAodHlwZSA9PSAwKSB7Ci0r ICAgICAgICBtZW1zZXQoZGN0eCwgMCwgc2l6ZW9mKERSQkdfQ1RYKSk7Ci0rICAgICAgICBkY3R4 LT50eXBlID0gMDsKLSsgICAgICAgIGRjdHgtPnN0YXR1cyA9IERSQkdfU1RBVFVTX1VOSU5JVElB TElTRUQ7Ci0rICAgICAgICByZXR1cm4gZGN0eDsKLSsgICAgfQotKwotKyAgICBpZiAoRklQU19k cmJnX2luaXQoZGN0eCwgdHlwZSwgZmxhZ3MpIDw9IDApIHsKLSsgICAgICAgIE9QRU5TU0xfZnJl ZShkY3R4KTsKLSsgICAgICAgIHJldHVybiBOVUxMOwotKyAgICB9Ci0rCi0rICAgIHJldHVybiBk Y3R4OwotK30KLSsKLSt2b2lkIEZJUFNfZHJiZ19mcmVlKERSQkdfQ1RYICpkY3R4KQotK3sKLSsg ICAgaWYgKGRjdHgtPnVuaW5zdGFudGlhdGUpCi0rICAgICAgICBkY3R4LT51bmluc3RhbnRpYXRl KGRjdHgpOwotKyAgICAvKiBEb24ndCBmcmVlIHVwIGRlZmF1bHQgRFJCRyAqLwotKyAgICBpZiAo ZGN0eCA9PSBGSVBTX2dldF9kZWZhdWx0X2RyYmcoKSkgewotKyAgICAgICAgbWVtc2V0KGRjdHgs IDAsIHNpemVvZihEUkJHX0NUWCkpOwotKyAgICAgICAgZGN0eC0+dHlwZSA9IDA7Ci0rICAgICAg ICBkY3R4LT5zdGF0dXMgPSBEUkJHX1NUQVRVU19VTklOSVRJQUxJU0VEOwotKyAgICB9IGVsc2Ug ewotKyAgICAgICAgT1BFTlNTTF9jbGVhbnNlKCZkY3R4LT5kLCBzaXplb2YoZGN0eC0+ZCkpOwot KyAgICAgICAgT1BFTlNTTF9mcmVlKGRjdHgpOwotKyAgICB9Ci0rfQotKwotK3N0YXRpYyBzaXpl X3QgZmlwc19nZXRfZW50cm9weShEUkJHX0NUWCAqZGN0eCwgdW5zaWduZWQgY2hhciAqKnBvdXQs Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBlbnRyb3B5LCBzaXplX3QgbWlu X2xlbiwgc2l6ZV90IG1heF9sZW4pCi0rewotKyAgICB1bnNpZ25lZCBjaGFyICp0b3V0LCAqcDsK LSsgICAgc2l6ZV90IGJsID0gZGN0eC0+ZW50cm9weV9ibG9ja2xlbiwgcnY7Ci0rICAgIGlmICgh ZGN0eC0+Z2V0X2VudHJvcHkpCi0rICAgICAgICByZXR1cm4gMDsKLSsgICAgaWYgKGRjdHgtPnhm bGFncyAmIERSQkdfRkxBR19URVNUIHx8ICFibCkKLSsgICAgICAgIHJldHVybiBkY3R4LT5nZXRf ZW50cm9weShkY3R4LCBwb3V0LCBlbnRyb3B5LCBtaW5fbGVuLCBtYXhfbGVuKTsKLSsgICAgcnYg PSBkY3R4LT5nZXRfZW50cm9weShkY3R4LCAmdG91dCwgZW50cm9weSArIGJsLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgIG1pbl9sZW4gKyBibCwgbWF4X2xlbiArIGJsKTsKLSsgICAgaWYg KHRvdXQgPT0gTlVMTCkKLSsgICAgICAgIHJldHVybiAwOwotKyAgICAqcG91dCA9IHRvdXQgKyBi bDsKLSsgICAgaWYgKHJ2IDwgKG1pbl9sZW4gKyBibCkgfHwgKHJ2ICUgYmwpKQotKyAgICAgICAg cmV0dXJuIDA7Ci0rICAgIC8qIENvbXBhcmUgY29uc2VjdXRpdmUgYmxvY2tzIGZvciBjb250aW51 b3VzIFBSTkcgdGVzdCAqLwotKyAgICBmb3IgKHAgPSB0b3V0OyBwIDwgdG91dCArIHJ2IC0gYmw7 IHAgKz0gYmwpIHsKLSsgICAgICAgIGlmICghbWVtY21wKHAsIHAgKyBibCwgYmwpKSB7Ci0rICAg ICAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19HRVRfRU5UUk9QWSwgRklQU19SX0VOVFJPUFlf U09VUkNFX1NUVUNLKTsKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsgICAgICAgIH0KLSsgICAg fQotKyAgICBydiAtPSBibDsKLSsgICAgaWYgKHJ2ID4gbWF4X2xlbikKLSsgICAgICAgIHJldHVy biBtYXhfbGVuOwotKyAgICByZXR1cm4gcnY7Ci0rfQotKwotK3N0YXRpYyB2b2lkIGZpcHNfY2xl YW51cF9lbnRyb3B5KERSQkdfQ1RYICpkY3R4LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHVuc2lnbmVkIGNoYXIgKm91dCwgc2l6ZV90IG9sZW4pCi0rewotKyAgICBzaXplX3Qg Ymw7Ci0rICAgIGlmIChkY3R4LT54ZmxhZ3MgJiBEUkJHX0ZMQUdfVEVTVCkKLSsgICAgICAgIGJs ID0gMDsKLSsgICAgZWxzZQotKyAgICAgICAgYmwgPSBkY3R4LT5lbnRyb3B5X2Jsb2NrbGVuOwot KyAgICAvKiBDYWxsIGNsZWFudXAgd2l0aCBvcmlnaW5hbCBhcmd1bWVudHMgKi8KLSsgICAgZGN0 eC0+Y2xlYW51cF9lbnRyb3B5KGRjdHgsIG91dCAtIGJsLCBvbGVuICsgYmwpOwotK30KLSsKLStp bnQgRklQU19kcmJnX2luc3RhbnRpYXRlKERSQkdfQ1RYICpkY3R4LAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcGVycywgc2l6ZV90IHBlcnNsZW4pCi0r ewotKyAgICBzaXplX3QgZW50bGVuID0gMCwgbm9uY2VsZW4gPSAwOwotKyAgICB1bnNpZ25lZCBj aGFyICpub25jZSA9IE5VTEwsICplbnRyb3B5ID0gTlVMTDsKLSsKLSsjaWYgMAotKyAgICAvKiBQ dXQgaGVyZSBzbyBlcnJvciBzY3JpcHQgcGlja3MgdGhlbSB1cCAqLwotKyAgICBGSVBTZXJyKEZJ UFNfRl9GSVBTX0RSQkdfSU5TVEFOVElBVEUsCi0rICAgICAgICAgICAgRklQU19SX1BFUlNPTkFM SVNBVElPTl9TVFJJTkdfVE9PX0xPTkcpOwotKyAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdf SU5TVEFOVElBVEUsIEZJUFNfUl9JTl9FUlJPUl9TVEFURSk7Ci0rICAgIEZJUFNlcnIoRklQU19G X0ZJUFNfRFJCR19JTlNUQU5USUFURSwgRklQU19SX0FMUkVBRFlfSU5TVEFOVElBVEVEKTsKLSsg ICAgRklQU2VycihGSVBTX0ZfRklQU19EUkJHX0lOU1RBTlRJQVRFLCBGSVBTX1JfRVJST1JfUkVU UklFVklOR19FTlRST1BZKTsKLSsgICAgRklQU2VycihGSVBTX0ZfRklQU19EUkJHX0lOU1RBTlRJ QVRFLCBGSVBTX1JfRVJST1JfUkVUUklFVklOR19OT05DRSk7Ci0rICAgIEZJUFNlcnIoRklQU19G X0ZJUFNfRFJCR19JTlNUQU5USUFURSwgRklQU19SX0lOU1RBTlRJQVRFX0VSUk9SKTsKLSsgICAg RklQU2VycihGSVBTX0ZfRklQU19EUkJHX0lOU1RBTlRJQVRFLCBGSVBTX1JfRFJCR19OT1RfSU5J VElBTElTRUQpOwotKyNlbmRpZgotKwotKyAgICBpbnQgciA9IDA7Ci0rCi0rICAgIGlmIChwZXJz bGVuID4gZGN0eC0+bWF4X3BlcnMpIHsKLSsgICAgICAgIHIgPSBGSVBTX1JfUEVSU09OQUxJU0FU SU9OX1NUUklOR19UT09fTE9ORzsKLSsgICAgICAgIGdvdG8gZW5kOwotKyAgICB9Ci0rCi0rICAg IGlmICghZGN0eC0+aW5zdGFudGlhdGUpIHsKLSsgICAgICAgIHIgPSBGSVBTX1JfRFJCR19OT1Rf SU5JVElBTElTRUQ7Ci0rICAgICAgICBnb3RvIGVuZDsKLSsgICAgfQotKwotKyAgICBpZiAoZGN0 eC0+c3RhdHVzICE9IERSQkdfU1RBVFVTX1VOSU5JVElBTElTRUQpIHsKLSsgICAgICAgIGlmIChk Y3R4LT5zdGF0dXMgPT0gRFJCR19TVEFUVVNfRVJST1IpCi0rICAgICAgICAgICAgciA9IEZJUFNf Ul9JTl9FUlJPUl9TVEFURTsKLSsgICAgICAgIGVsc2UKLSsgICAgICAgICAgICByID0gRklQU19S X0FMUkVBRFlfSU5TVEFOVElBVEVEOwotKyAgICAgICAgZ290byBlbmQ7Ci0rICAgIH0KLSsKLSsg ICAgZGN0eC0+c3RhdHVzID0gRFJCR19TVEFUVVNfRVJST1I7Ci0rCi0rICAgIGVudGxlbiA9IGZp cHNfZ2V0X2VudHJvcHkoZGN0eCwgJmVudHJvcHksIGRjdHgtPnN0cmVuZ3RoLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGRjdHgtPm1pbl9lbnRyb3B5LCBkY3R4LT5tYXhfZW50cm9w eSk7Ci0rCi0rICAgIGlmIChlbnRsZW4gPCBkY3R4LT5taW5fZW50cm9weSB8fCBlbnRsZW4gPiBk Y3R4LT5tYXhfZW50cm9weSkgewotKyAgICAgICAgciA9IEZJUFNfUl9FUlJPUl9SRVRSSUVWSU5H X0VOVFJPUFk7Ci0rICAgICAgICBnb3RvIGVuZDsKLSsgICAgfQotKwotKyAgICBpZiAoZGN0eC0+ bWF4X25vbmNlID4gMCAmJiBkY3R4LT5nZXRfbm9uY2UpIHsKLSsgICAgICAgIG5vbmNlbGVuID0g ZGN0eC0+Z2V0X25vbmNlKGRjdHgsICZub25jZSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGRjdHgtPnN0cmVuZ3RoIC8gMiwKLSsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGRjdHgtPm1pbl9ub25jZSwgZGN0eC0+bWF4X25vbmNlKTsKLSsKLSsgICAgICAg IGlmIChub25jZWxlbiA8IGRjdHgtPm1pbl9ub25jZSB8fCBub25jZWxlbiA+IGRjdHgtPm1heF9u b25jZSkgewotKyAgICAgICAgICAgIHIgPSBGSVBTX1JfRVJST1JfUkVUUklFVklOR19OT05DRTsK LSsgICAgICAgICAgICBnb3RvIGVuZDsKLSsgICAgICAgIH0KLSsKLSsgICAgfQotKwotKyAgICBp ZiAoIWRjdHgtPmluc3RhbnRpYXRlKGRjdHgsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ZW50cm9weSwgZW50bGVuLCBub25jZSwgbm9uY2VsZW4sIHBlcnMsIHBlcnNsZW4pKSB7Ci0rICAg ICAgICByID0gRklQU19SX0VSUk9SX0lOU1RBTlRJQVRJTkdfRFJCRzsKLSsgICAgICAgIGdvdG8g ZW5kOwotKyAgICB9Ci0rCi0rICAgIGRjdHgtPnN0YXR1cyA9IERSQkdfU1RBVFVTX1JFQURZOwot KyAgICBpZiAoIShkY3R4LT5pZmxhZ3MgJiBEUkJHX0NVU1RPTV9SRVNFRUQpKQotKyAgICAgICAg ZGN0eC0+cmVzZWVkX2NvdW50ZXIgPSAxOwotKwotKyBlbmQ6Ci0rCi0rICAgIGlmIChlbnRyb3B5 ICYmIGRjdHgtPmNsZWFudXBfZW50cm9weSkKLSsgICAgICAgIGZpcHNfY2xlYW51cF9lbnRyb3B5 KGRjdHgsIGVudHJvcHksIGVudGxlbik7Ci0rCi0rICAgIGlmIChub25jZSAmJiBkY3R4LT5jbGVh bnVwX25vbmNlKQotKyAgICAgICAgZGN0eC0+Y2xlYW51cF9ub25jZShkY3R4LCBub25jZSwgbm9u Y2VsZW4pOwotKwotKyAgICBpZiAoZGN0eC0+c3RhdHVzID09IERSQkdfU1RBVFVTX1JFQURZKQot KyAgICAgICAgcmV0dXJuIDE7Ci0rCi0rICAgIGlmIChyICYmICEoZGN0eC0+aWZsYWdzICYgRFJC R19GTEFHX05PRVJSKSkKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19JTlNUQU5U SUFURSwgcik7Ci0rCi0rICAgIHJldHVybiAwOwotKwotK30KLSsKLStzdGF0aWMgaW50IGRyYmdf cmVzZWVkKERSQkdfQ1RYICpkY3R4LAotKyAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5z aWduZWQgY2hhciAqYWRpbiwgc2l6ZV90IGFkaW5sZW4sIGludCBoY2hlY2spCi0rewotKyAgICB1 bnNpZ25lZCBjaGFyICplbnRyb3B5ID0gTlVMTDsKLSsgICAgc2l6ZV90IGVudGxlbiA9IDA7Ci0r ICAgIGludCByID0gMDsKLSsKLSsjaWYgMAotKyAgICBGSVBTZXJyKEZJUFNfRl9EUkJHX1JFU0VF RCwgRklQU19SX05PVF9JTlNUQU5USUFURUQpOwotKyAgICBGSVBTZXJyKEZJUFNfRl9EUkJHX1JF U0VFRCwgRklQU19SX0FERElUSU9OQUxfSU5QVVRfVE9PX0xPTkcpOwotKyNlbmRpZgotKyAgICBp ZiAoZGN0eC0+c3RhdHVzICE9IERSQkdfU1RBVFVTX1JFQURZCi0rICAgICAgICAmJiBkY3R4LT5z dGF0dXMgIT0gRFJCR19TVEFUVVNfUkVTRUVEKSB7Ci0rICAgICAgICBpZiAoZGN0eC0+c3RhdHVz ID09IERSQkdfU1RBVFVTX0VSUk9SKQotKyAgICAgICAgICAgIHIgPSBGSVBTX1JfSU5fRVJST1Jf U1RBVEU7Ci0rICAgICAgICBlbHNlIGlmIChkY3R4LT5zdGF0dXMgPT0gRFJCR19TVEFUVVNfVU5J TklUSUFMSVNFRCkKLSsgICAgICAgICAgICByID0gRklQU19SX05PVF9JTlNUQU5USUFURUQ7Ci0r ICAgICAgICBnb3RvIGVuZDsKLSsgICAgfQotKwotKyAgICBpZiAoIWFkaW4pCi0rICAgICAgICBh ZGlubGVuID0gMDsKLSsgICAgZWxzZSBpZiAoYWRpbmxlbiA+IGRjdHgtPm1heF9hZGluKSB7Ci0r ICAgICAgICByID0gRklQU19SX0FERElUSU9OQUxfSU5QVVRfVE9PX0xPTkc7Ci0rICAgICAgICBn b3RvIGVuZDsKLSsgICAgfQotKwotKyAgICBkY3R4LT5zdGF0dXMgPSBEUkJHX1NUQVRVU19FUlJP UjsKLSsgICAgLyogUGVmb3JtIGhlYWx0aCBjaGVjayBvbiBhbGwgcmVzZWVkIG9wZXJhdGlvbnMg aWYgbm90IGEgcHJlZGljdGlvbgotKyAgICAgKiByZXNpc3RhbmNlIHJlcXVlc3QgYW5kIG5vdCBp biB0ZXN0IG1vZGUuCi0rICAgICAqLwotKyAgICBpZiAoaGNoZWNrICYmICEoZGN0eC0+eGZsYWdz ICYgRFJCR19GTEFHX1RFU1QpKSB7Ci0rICAgICAgICBpZiAoIUZJUFNfZHJiZ19oZWFsdGhfY2hl Y2soZGN0eCkpIHsKLSsgICAgICAgICAgICByID0gRklQU19SX1NFTEZURVNUX0ZBSUxVUkU7Ci0r ICAgICAgICAgICAgZ290byBlbmQ7Ci0rICAgICAgICB9Ci0rICAgIH0KLSsKLSsgICAgZW50bGVu ID0gZmlwc19nZXRfZW50cm9weShkY3R4LCAmZW50cm9weSwgZGN0eC0+c3RyZW5ndGgsCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZGN0eC0+bWluX2VudHJvcHksIGRjdHgtPm1heF9l bnRyb3B5KTsKLSsKLSsgICAgaWYgKGVudGxlbiA8IGRjdHgtPm1pbl9lbnRyb3B5IHx8IGVudGxl biA+IGRjdHgtPm1heF9lbnRyb3B5KSB7Ci0rICAgICAgICByID0gRklQU19SX0VSUk9SX1JFVFJJ RVZJTkdfRU5UUk9QWTsKLSsgICAgICAgIGdvdG8gZW5kOwotKyAgICB9Ci0rCi0rICAgIGlmICgh ZGN0eC0+cmVzZWVkKGRjdHgsIGVudHJvcHksIGVudGxlbiwgYWRpbiwgYWRpbmxlbikpCi0rICAg ICAgICBnb3RvIGVuZDsKLSsKLSsgICAgZGN0eC0+c3RhdHVzID0gRFJCR19TVEFUVVNfUkVBRFk7 Ci0rICAgIGlmICghKGRjdHgtPmlmbGFncyAmIERSQkdfQ1VTVE9NX1JFU0VFRCkpCi0rICAgICAg ICBkY3R4LT5yZXNlZWRfY291bnRlciA9IDE7Ci0rIGVuZDoKLSsKLSsgICAgaWYgKGVudHJvcHkg JiYgZGN0eC0+Y2xlYW51cF9lbnRyb3B5KQotKyAgICAgICAgZmlwc19jbGVhbnVwX2VudHJvcHko ZGN0eCwgZW50cm9weSwgZW50bGVuKTsKLSsKLSsgICAgaWYgKGRjdHgtPnN0YXR1cyA9PSBEUkJH X1NUQVRVU19SRUFEWSkKLSsgICAgICAgIHJldHVybiAxOwotKwotKyAgICBpZiAociAmJiAhKGRj dHgtPmlmbGFncyAmIERSQkdfRkxBR19OT0VSUikpCi0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9E UkJHX1JFU0VFRCwgcik7Ci0rCi0rICAgIHJldHVybiAwOwotK30KLSsKLStpbnQgRklQU19kcmJn X3Jlc2VlZChEUkJHX0NUWCAqZGN0eCwKLSsgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNp Z25lZCBjaGFyICphZGluLCBzaXplX3QgYWRpbmxlbikKLSt7Ci0rICAgIHJldHVybiBkcmJnX3Jl c2VlZChkY3R4LCBhZGluLCBhZGlubGVuLCAxKTsKLSt9Ci0rCi0rc3RhdGljIGludCBmaXBzX2Ry YmdfY2hlY2soRFJCR19DVFggKmRjdHgpCi0rewotKyAgICBpZiAoZGN0eC0+eGZsYWdzICYgRFJC R19GTEFHX1RFU1QpCi0rICAgICAgICByZXR1cm4gMTsKLSsgICAgZGN0eC0+aGVhbHRoX2NoZWNr X2NudCsrOwotKyAgICBpZiAoZGN0eC0+aGVhbHRoX2NoZWNrX2NudCA+PSBkY3R4LT5oZWFsdGhf Y2hlY2tfaW50ZXJ2YWwpIHsKLSsgICAgICAgIGlmICghRklQU19kcmJnX2hlYWx0aF9jaGVjayhk Y3R4KSkgewotKyAgICAgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19DSEVDSywgRklQ U19SX1NFTEZURVNUX0ZBSUxVUkUpOwotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAg fQotKyAgICB9Ci0rICAgIHJldHVybiAxOwotK30KLSsKLStpbnQgRklQU19kcmJnX2dlbmVyYXRl KERSQkdfQ1RYICpkY3R4LCB1bnNpZ25lZCBjaGFyICpvdXQsIHNpemVfdCBvdXRsZW4sCi0rICAg ICAgICAgICAgICAgICAgICAgICBpbnQgcHJlZGljdGlvbl9yZXNpc3RhbmNlLAotKyAgICAgICAg ICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWRpbiwgc2l6ZV90IGFkaW5sZW4p Ci0rewotKyAgICBpbnQgciA9IDA7Ci0rCi0rICAgIGlmIChGSVBTX3NlbGZ0ZXN0X2ZhaWxlZCgp KSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdfR0VORVJBVEUsIEZJUFNfUl9T RUxGVEVTVF9GQUlMRUQpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsKLSsgICAgaWYg KCFmaXBzX2RyYmdfY2hlY2soZGN0eCkpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgaWYg KGRjdHgtPnN0YXR1cyAhPSBEUkJHX1NUQVRVU19SRUFEWQotKyAgICAgICAgJiYgZGN0eC0+c3Rh dHVzICE9IERSQkdfU1RBVFVTX1JFU0VFRCkgewotKyAgICAgICAgaWYgKGRjdHgtPnN0YXR1cyA9 PSBEUkJHX1NUQVRVU19FUlJPUikKLSsgICAgICAgICAgICByID0gRklQU19SX0lOX0VSUk9SX1NU QVRFOwotKyAgICAgICAgZWxzZSBpZiAoZGN0eC0+c3RhdHVzID09IERSQkdfU1RBVFVTX1VOSU5J VElBTElTRUQpCi0rICAgICAgICAgICAgciA9IEZJUFNfUl9OT1RfSU5TVEFOVElBVEVEOwotKyAg ICAgICAgZ290byBlbmQ7Ci0rICAgIH0KLSsKLSsgICAgaWYgKG91dGxlbiA+IGRjdHgtPm1heF9y ZXF1ZXN0KSB7Ci0rICAgICAgICByID0gRklQU19SX1JFUVVFU1RfVE9PX0xBUkdFX0ZPUl9EUkJH OwotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsKLSsgICAgaWYgKGFkaW5sZW4gPiBkY3R4 LT5tYXhfYWRpbikgewotKyAgICAgICAgciA9IEZJUFNfUl9BRERJVElPTkFMX0lOUFVUX1RPT19M T05HOwotKyAgICAgICAgZ290byBlbmQ7Ci0rICAgIH0KLSsKLSsgICAgaWYgKGRjdHgtPmlmbGFn cyAmIERSQkdfQ1VTVE9NX1JFU0VFRCkKLSsgICAgICAgIGRjdHgtPmdlbmVyYXRlKGRjdHgsIE5V TEwsIG91dGxlbiwgTlVMTCwgMCk7Ci0rICAgIGVsc2UgaWYgKGRjdHgtPnJlc2VlZF9jb3VudGVy ID49IGRjdHgtPnJlc2VlZF9pbnRlcnZhbCkKLSsgICAgICAgIGRjdHgtPnN0YXR1cyA9IERSQkdf U1RBVFVTX1JFU0VFRDsKLSsKLSsgICAgaWYgKGRjdHgtPnN0YXR1cyA9PSBEUkJHX1NUQVRVU19S RVNFRUQgfHwgcHJlZGljdGlvbl9yZXNpc3RhbmNlKSB7Ci0rICAgICAgICAvKiBJZiBwcmVkaWN0 aW9uIHJlc2lzdGFuY2UgcmVxdWVzdCBkb24ndCBkbyBoZWFsdGggY2hlY2sgKi8KLSsgICAgICAg IGludCBoY2hlY2sgPSBwcmVkaWN0aW9uX3Jlc2lzdGFuY2UgPyAwIDogMTsKLSsKLSsgICAgICAg IGlmICghZHJiZ19yZXNlZWQoZGN0eCwgYWRpbiwgYWRpbmxlbiwgaGNoZWNrKSkgewotKyAgICAg ICAgICAgIHIgPSBGSVBTX1JfUkVTRUVEX0VSUk9SOwotKyAgICAgICAgICAgIGdvdG8gZW5kOwot KyAgICAgICAgfQotKyAgICAgICAgYWRpbiA9IE5VTEw7Ci0rICAgICAgICBhZGlubGVuID0gMDsK LSsgICAgfQotKwotKyAgICBpZiAoIWRjdHgtPmdlbmVyYXRlKGRjdHgsIG91dCwgb3V0bGVuLCBh ZGluLCBhZGlubGVuKSkgewotKyAgICAgICAgciA9IEZJUFNfUl9HRU5FUkFURV9FUlJPUjsKLSsg ICAgICAgIGRjdHgtPnN0YXR1cyA9IERSQkdfU1RBVFVTX0VSUk9SOwotKyAgICAgICAgZ290byBl bmQ7Ci0rICAgIH0KLSsgICAgaWYgKCEoZGN0eC0+aWZsYWdzICYgRFJCR19DVVNUT01fUkVTRUVE KSkgewotKyAgICAgICAgaWYgKGRjdHgtPnJlc2VlZF9jb3VudGVyID49IGRjdHgtPnJlc2VlZF9p bnRlcnZhbCkKLSsgICAgICAgICAgICBkY3R4LT5zdGF0dXMgPSBEUkJHX1NUQVRVU19SRVNFRUQ7 Ci0rICAgICAgICBlbHNlCi0rICAgICAgICAgICAgZGN0eC0+cmVzZWVkX2NvdW50ZXIrKzsKLSsg ICAgfQotKwotKyBlbmQ6Ci0rICAgIGlmIChyKSB7Ci0rICAgICAgICBpZiAoIShkY3R4LT5pZmxh Z3MgJiBEUkJHX0ZMQUdfTk9FUlIpKQotKyAgICAgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNf RFJCR19HRU5FUkFURSwgcik7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKwotKyAgICBy ZXR1cm4gMTsKLSt9Ci0rCi0raW50IEZJUFNfZHJiZ191bmluc3RhbnRpYXRlKERSQkdfQ1RYICpk Y3R4KQotK3sKLSsgICAgaW50IHJ2OwotKyAgICBpZiAoIWRjdHgtPnVuaW5zdGFudGlhdGUpCi0r ICAgICAgICBydiA9IDE7Ci0rICAgIGVsc2UKLSsgICAgICAgIHJ2ID0gZGN0eC0+dW5pbnN0YW50 aWF0ZShkY3R4KTsKLSsgICAgLyogQWx0aG91Z2ggd2UnZCBsaWtlIHRvIGNsZWFuc2UgaGVyZSB3 ZSBjYW4ndCBiZWNhdXNlIHdlIGhhdmUgdG8KLSsgICAgICogdGVzdCB0aGUgdW5pbnN0YW50aWF0 ZSByZWFsbHkgemVyb2VzIHRoZSBkYXRhLgotKyAgICAgKi8KLSsgICAgbWVtc2V0KCZkY3R4LT5k LCAwLCBzaXplb2YoZGN0eC0+ZCkpOwotKyAgICBkY3R4LT5zdGF0dXMgPSBEUkJHX1NUQVRVU19V TklOSVRJQUxJU0VEOwotKyAgICAvKiBJZiBtZXRob2QgaGFzIHByb2JsZW1zIHVuaW5zdGFudGlh dGluZywgcmV0dXJuIGVycm9yICovCi0rICAgIHJldHVybiBydjsKLSt9Ci0rCi0raW50IEZJUFNf ZHJiZ19zZXRfY2FsbGJhY2tzKERSQkdfQ1RYICpkY3R4LAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICBzaXplX3QgKCpnZXRfZW50cm9weSkgKERSQkdfQ1RYICpjdHgsCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAq KnBvdXQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgaW50IGVudHJvcHksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2l6ZV90IG1pbl9sZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IG1heF9sZW4pLAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICB2b2lkICgqY2xlYW51cF9lbnRyb3B5KSAoRFJCR19DVFggKmN0eCwKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2ln bmVkIGNoYXIgKm91dCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHNpemVfdCBvbGVuKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAg c2l6ZV90IGVudHJvcHlfYmxvY2tsZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNp emVfdCAoKmdldF9ub25jZSkgKERSQkdfQ1RYICpjdHgsCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKipwb3V0LAotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZW50cm9weSwg c2l6ZV90IG1pbl9sZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHNpemVfdCBtYXhfbGVuKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAg dm9pZCAoKmNsZWFudXBfbm9uY2UpIChEUkJHX0NUWCAqY3R4LAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKm91dCwKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3Qg b2xlbikpCi0rewotKyAgICBpZiAoZGN0eC0+c3RhdHVzICE9IERSQkdfU1RBVFVTX1VOSU5JVElB TElTRUQpCi0rICAgICAgICByZXR1cm4gMDsKLSsgICAgZGN0eC0+ZW50cm9weV9ibG9ja2xlbiA9 IGVudHJvcHlfYmxvY2tsZW47Ci0rICAgIGRjdHgtPmdldF9lbnRyb3B5ID0gZ2V0X2VudHJvcHk7 Ci0rICAgIGRjdHgtPmNsZWFudXBfZW50cm9weSA9IGNsZWFudXBfZW50cm9weTsKLSsgICAgZGN0 eC0+Z2V0X25vbmNlID0gZ2V0X25vbmNlOwotKyAgICBkY3R4LT5jbGVhbnVwX25vbmNlID0gY2xl YW51cF9ub25jZTsKLSsgICAgcmV0dXJuIDE7Ci0rfQotKwotK2ludCBGSVBTX2RyYmdfc2V0X3Jh bmRfY2FsbGJhY2tzKERSQkdfQ1RYICpkY3R4LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHNpemVfdCAoKmdldF9hZGluKSAoRFJCR19DVFggKmN0eCwKLSsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKipw b3V0KSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICgqY2xlYW51cF9h ZGluKSAoRFJCR19DVFggKmN0eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqb3V0LAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3Qgb2xlbiksCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICgqcmFuZF9zZWVkX2NiKSAoRFJC R19DVFggKmN0eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCB2b2lkICpidWYsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG51bSksCi0rICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgaW50ICgqcmFuZF9hZGRfY2IpIChEUkJHX0NUWCAqY3R4LAotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdm9p ZCAqYnVmLCBpbnQgbnVtLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZG91YmxlIGVudHJvcHkpKQotK3sKLSsgICAgaWYgKGRjdHgtPnN0YXR1 cyAhPSBEUkJHX1NUQVRVU19VTklOSVRJQUxJU0VEKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAg IGRjdHgtPmdldF9hZGluID0gZ2V0X2FkaW47Ci0rICAgIGRjdHgtPmNsZWFudXBfYWRpbiA9IGNs ZWFudXBfYWRpbjsKLSsgICAgZGN0eC0+cmFuZF9zZWVkX2NiID0gcmFuZF9zZWVkX2NiOwotKyAg ICBkY3R4LT5yYW5kX2FkZF9jYiA9IHJhbmRfYWRkX2NiOwotKyAgICByZXR1cm4gMTsKLSt9Ci0r Ci0rdm9pZCAqRklQU19kcmJnX2dldF9hcHBfZGF0YShEUkJHX0NUWCAqZGN0eCkKLSt7Ci0rICAg IHJldHVybiBkY3R4LT5hcHBfZGF0YTsKLSt9Ci0rCi0rdm9pZCBGSVBTX2RyYmdfc2V0X2FwcF9k YXRhKERSQkdfQ1RYICpkY3R4LCB2b2lkICphcHBfZGF0YSkKLSt7Ci0rICAgIGRjdHgtPmFwcF9k YXRhID0gYXBwX2RhdGE7Ci0rfQotKwotK3NpemVfdCBGSVBTX2RyYmdfZ2V0X2Jsb2NrbGVuZ3Ro KERSQkdfQ1RYICpkY3R4KQotK3sKLSsgICAgcmV0dXJuIGRjdHgtPmJsb2NrbGVuZ3RoOwotK30K LSsKLStpbnQgRklQU19kcmJnX2dldF9zdHJlbmd0aChEUkJHX0NUWCAqZGN0eCkKLSt7Ci0rICAg IHJldHVybiBkY3R4LT5zdHJlbmd0aDsKLSt9Ci0rCi0rdm9pZCBGSVBTX2RyYmdfc2V0X2NoZWNr X2ludGVydmFsKERSQkdfQ1RYICpkY3R4LCBpbnQgaW50ZXJ2YWwpCi0rewotKyAgICBkY3R4LT5o ZWFsdGhfY2hlY2tfaW50ZXJ2YWwgPSBpbnRlcnZhbDsKLSt9Ci0rCi0rdm9pZCBGSVBTX2RyYmdf c2V0X3Jlc2VlZF9pbnRlcnZhbChEUkJHX0NUWCAqZGN0eCwgaW50IGludGVydmFsKQotK3sKLSsg ICAgZGN0eC0+cmVzZWVkX2ludGVydmFsID0gaW50ZXJ2YWw7Ci0rfQotKwotK3ZvaWQgRklQU19k cmJnX3N0aWNrKGludCBvbm9mZikKLSt7Ci0rICAgIC8qIEp1c3QgYmFja3dhcmRzIGNvbXBhdGli aWxpdHkgQVBJIGNhbGwgd2l0aCBubyBlZmZlY3QuICovCi0rfQotZGlmZiAtdXAgb3BlbnNzbC0x LjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kcmJnX3JhbmQuYy5maXBzIG9wZW5zc2wtMS4xLjFqL2Ny eXB0by9maXBzL2ZpcHNfZHJiZ19yYW5kLmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlw cy9maXBzX2RyYmdfcmFuZC5jLmZpcHMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTk3MzQ1MjUgKzAx MDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX2RyYmdfcmFuZC5jCTIwMjEt MDMtMDMgMTI6NTc6NDIuMTk5NzM0NTI1ICswMTAwCi1AQCAtMCwwICsxLDE4NSBAQAotKy8qIGZp cHMvcmFuZC9maXBzX2RyYmdfcmFuZC5jICovCi0rLyogV3JpdHRlbiBieSBEciBTdGVwaGVuIE4g SGVuc29uIChzdGV2ZUBvcGVuc3NsLm9yZykgZm9yIHRoZSBPcGVuU1NMCi0rICogcHJvamVjdC4K LSsgKi8KLSsvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotKyAqIENvcHlyaWdodCAoYykgMjAxMSBUaGUgT3BlblNT TCBQcm9qZWN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSsgKgotKyAqIFJlZGlzdHJpYnV0aW9u IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotKyAq IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg Y29uZGl0aW9ucwotKyAqIGFyZSBtZXQ6Ci0rICoKLSsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGlj ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4g Ci0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1 Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotKyAqICAgIHRoZSBkb2N1bWVu dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSsgKiAgICBk aXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRp b25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMKLSsgKiAgICBzb2Z0d2FyZSBtdXN0IGRpc3Bs YXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGlu Y2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAg Zm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0LiAoaHR0cDovL3d3dy5PcGVuU1NMLm9yZy8p IgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJPcGVuU1NMIFRvb2xraXQiIGFuZCAiT3BlblNTTCBQ cm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRvCi0rICogICAgZW5kb3JzZSBvciBwcm9tb3RlIHBy b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQKLSsgKiAgICBwcmlvciB3 cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0dGVuIHBlcm1pc3Npb24sIHBsZWFzZSBjb250YWN0 Ci0rICogICAgbGljZW5zaW5nQE9wZW5TU0wub3JnLgotKyAqCi0rICogNS4gUHJvZHVjdHMgZGVy aXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgbWF5IG5vdCBiZSBjYWxsZWQgIk9wZW5TU0wiCi0rICog ICAgbm9yIG1heSAiT3BlblNTTCIgYXBwZWFyIGluIHRoZWlyIG5hbWVzIHdpdGhvdXQgcHJpb3Ig d3JpdHRlbgotKyAqICAgIHBlcm1pc3Npb24gb2YgdGhlIE9wZW5TU0wgUHJvamVjdC4KLSsgKgot KyAqIDYuIFJlZGlzdHJpYnV0aW9ucyBvZiBhbnkgZm9ybSB3aGF0c29ldmVyIG11c3QgcmV0YWlu IHRoZSBmb2xsb3dpbmcKLSsgKiAgICBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9k dWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0r ICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0IChodHRwOi8vd3d3Lk9wZW5TU0wu b3JnLykiCi0rICoKLSsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBPcGVuU1NM IFBST0pFQ1QgYGBBUyBJUycnIEFORCBBTlkKLSsgKiBFWFBSRVNTRUQgT1IgSU1QTElFRCBXQVJS QU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0rICogSU1QTElFRCBX QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS Ci0rICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBPcGVu U1NMIFBST0pFQ1QgT1IKLSsgKiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0rICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBD T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCi0rICogTk9UIExJTUlURUQgVE8s IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0rICogTE9TUyBP RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSsgKiBI T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4g Q09OVFJBQ1QsCi0rICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJ R0VOQ0UgT1IgT1RIRVJXSVNFKQotKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQKLSsgKiBPRiBUSEUgUE9TU0lCSUxJ VFkgT0YgU1VDSCBEQU1BR0UuCi0rICogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSsgKi8KLSsKLSsjaW5jbHVkZSA8 c3RyaW5nLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvY3J5cHRvLmg+Ci0rI2luY2x1ZGUgImludGVy bmFsL3RocmVhZF9vbmNlLmgiCi0rI2luY2x1ZGUgPG9wZW5zc2wvZXJyLmg+Ci0rI2luY2x1ZGUg PG9wZW5zc2wvcmFuZC5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSsjaW5jbHVkZSA8 b3BlbnNzbC9maXBzX3JhbmQuaD4KLSsjaW5jbHVkZSAiZmlwc19yYW5kX2xjbC5oIgotKwotKy8q IE1hcHBpbmcgb2YgU1A4MDAtOTAgRFJCR3MgdG8gT3BlblNTTCBSQU5EX01FVEhPRCAqLwotKwot Ky8qIFNpbmNlIHdlIG9ubHkgaGF2ZSBvbmUgZ2xvYmFsIFBSTkcgdXNlZCBhdCBhbnkgdGltZSBp biBPcGVuU1NMIHVzZSBhIGdsb2JhbAotKyAqIHZhcmlhYmxlIHRvIHN0b3JlIGNvbnRleHQuCi0r ICovCi0rCi0rc3RhdGljIERSQkdfQ1RYIG9zc2xfZGN0eDsKLSsKLStzdGF0aWMgQ1JZUFRPX1JX TE9DSyAqZmlwc19yYW5kX2xvY2sgPSBOVUxMOwotK3N0YXRpYyBDUllQVE9fT05DRSBmaXBzX3Jh bmRfbG9ja19pbml0ID0gQ1JZUFRPX09OQ0VfU1RBVElDX0lOSVQ7Ci0rCi0rREVGSU5FX1JVTl9P TkNFX1NUQVRJQyhkb19maXBzX3JhbmRfbG9ja19pbml0KQotK3sKLSsgICAgZmlwc19yYW5kX2xv Y2sgPSBDUllQVE9fVEhSRUFEX2xvY2tfbmV3KCk7Ci0rICAgIHJldHVybiBmaXBzX3JhbmRfbG9j ayAhPSBOVUxMOwotK30KLSsKLStEUkJHX0NUWCAqRklQU19nZXRfZGVmYXVsdF9kcmJnKHZvaWQp Ci0rewotKyAgICBpZiAoIVJVTl9PTkNFKCZmaXBzX3JhbmRfbG9ja19pbml0LCBkb19maXBzX3Jh bmRfbG9ja19pbml0KSkKLSsgICAgICAgIHJldHVybiBOVUxMOwotKyAgICByZXR1cm4gJm9zc2xf ZGN0eDsKLSt9Ci0rCi0rc3RhdGljIGludCBmaXBzX2RyYmdfYnl0ZXModW5zaWduZWQgY2hhciAq b3V0LCBpbnQgY291bnQpCi0rewotKyAgICBEUkJHX0NUWCAqZGN0eCA9ICZvc3NsX2RjdHg7Ci0r ICAgIGludCBydiA9IDA7Ci0rICAgIHVuc2lnbmVkIGNoYXIgKmFkaW4gPSBOVUxMOwotKyAgICBz aXplX3QgYWRpbmxlbiA9IDA7Ci0rICAgIENSWVBUT19USFJFQURfd3JpdGVfbG9jayhmaXBzX3Jh bmRfbG9jayk7Ci0rICAgIGRvIHsKLSsgICAgICAgIHNpemVfdCByY250OwotKyAgICAgICAgaWYg KGNvdW50ID4gKGludClkY3R4LT5tYXhfcmVxdWVzdCkKLSsgICAgICAgICAgICByY250ID0gZGN0 eC0+bWF4X3JlcXVlc3Q7Ci0rICAgICAgICBlbHNlCi0rICAgICAgICAgICAgcmNudCA9IGNvdW50 OwotKyAgICAgICAgaWYgKGRjdHgtPmdldF9hZGluKSB7Ci0rICAgICAgICAgICAgYWRpbmxlbiA9 IGRjdHgtPmdldF9hZGluKGRjdHgsICZhZGluKTsKLSsgICAgICAgICAgICBpZiAoYWRpbmxlbiAm JiAhYWRpbikgewotKyAgICAgICAgICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdfQllU RVMsCi0rICAgICAgICAgICAgICAgICAgICAgICAgRklQU19SX0VSUk9SX1JFVFJJRVZJTkdfQURE SVRJT05BTF9JTlBVVCk7Ci0rICAgICAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgICAg IH0KLSsgICAgICAgIH0KLSsgICAgICAgIHJ2ID0gRklQU19kcmJnX2dlbmVyYXRlKGRjdHgsIG91 dCwgcmNudCwgMCwgYWRpbiwgYWRpbmxlbik7Ci0rICAgICAgICBpZiAoYWRpbikgewotKyAgICAg ICAgICAgIGlmIChkY3R4LT5jbGVhbnVwX2FkaW4pCi0rICAgICAgICAgICAgICAgIGRjdHgtPmNs ZWFudXBfYWRpbihkY3R4LCBhZGluLCBhZGlubGVuKTsKLSsgICAgICAgICAgICBhZGluID0gTlVM TDsKLSsgICAgICAgIH0KLSsgICAgICAgIGlmICghcnYpCi0rICAgICAgICAgICAgZ290byBlcnI7 Ci0rICAgICAgICBvdXQgKz0gcmNudDsKLSsgICAgICAgIGNvdW50IC09IHJjbnQ7Ci0rICAgIH0K LSsgICAgd2hpbGUgKGNvdW50KTsKLSsgICAgcnYgPSAxOwotKyBlcnI6Ci0rICAgIENSWVBUT19U SFJFQURfdW5sb2NrKGZpcHNfcmFuZF9sb2NrKTsKLSsgICAgcmV0dXJuIHJ2OwotK30KLSsKLStz dGF0aWMgaW50IGZpcHNfZHJiZ19wc2V1ZG8odW5zaWduZWQgY2hhciAqb3V0LCBpbnQgY291bnQp Ci0rewotKyAgICBpZiAoZmlwc19kcmJnX2J5dGVzKG91dCwgY291bnQpIDw9IDApCi0rICAgICAg ICByZXR1cm4gLTE7Ci0rICAgIHJldHVybiAxOwotK30KLSsKLStzdGF0aWMgaW50IGZpcHNfZHJi Z19zdGF0dXModm9pZCkKLSt7Ci0rICAgIERSQkdfQ1RYICpkY3R4ID0gJm9zc2xfZGN0eDsKLSsg ICAgaW50IHJ2OwotKyAgICBDUllQVE9fVEhSRUFEX3JlYWRfbG9jayhmaXBzX3JhbmRfbG9jayk7 Ci0rICAgIHJ2ID0gZGN0eC0+c3RhdHVzID09IERSQkdfU1RBVFVTX1JFQURZID8gMSA6IDA7Ci0r ICAgIENSWVBUT19USFJFQURfdW5sb2NrKGZpcHNfcmFuZF9sb2NrKTsKLSsgICAgcmV0dXJuIHJ2 OwotK30KLSsKLStzdGF0aWMgdm9pZCBmaXBzX2RyYmdfY2xlYW51cCh2b2lkKQotK3sKLSsgICAg RFJCR19DVFggKmRjdHggPSAmb3NzbF9kY3R4OwotKyAgICBDUllQVE9fVEhSRUFEX3dyaXRlX2xv Y2soZmlwc19yYW5kX2xvY2spOwotKyAgICBGSVBTX2RyYmdfdW5pbnN0YW50aWF0ZShkY3R4KTsK LSsgICAgQ1JZUFRPX1RIUkVBRF91bmxvY2soZmlwc19yYW5kX2xvY2spOwotK30KLSsKLStzdGF0 aWMgaW50IGZpcHNfZHJiZ19zZWVkKGNvbnN0IHZvaWQgKnNlZWQsIGludCBzZWVkbGVuKQotK3sK LSsgICAgRFJCR19DVFggKmRjdHggPSAmb3NzbF9kY3R4OwotKyAgICBpbnQgcmV0ID0gMTsKLSsg ICAgQ1JZUFRPX1RIUkVBRF93cml0ZV9sb2NrKGZpcHNfcmFuZF9sb2NrKTsKLSsgICAgaWYgKGRj dHgtPnJhbmRfc2VlZF9jYikKLSsgICAgICAgIHJldCA9IGRjdHgtPnJhbmRfc2VlZF9jYihkY3R4 LCBzZWVkLCBzZWVkbGVuKTsKLSsgICAgQ1JZUFRPX1RIUkVBRF91bmxvY2soZmlwc19yYW5kX2xv Y2spOwotKyAgICByZXR1cm4gcmV0OwotK30KLSsKLStzdGF0aWMgaW50IGZpcHNfZHJiZ19hZGQo Y29uc3Qgdm9pZCAqc2VlZCwgaW50IHNlZWRsZW4sIGRvdWJsZSBhZGRfZW50cm9weSkKLSt7Ci0r ICAgIERSQkdfQ1RYICpkY3R4ID0gJm9zc2xfZGN0eDsKLSsgICAgaW50IHJldCA9IDE7Ci0rICAg IENSWVBUT19USFJFQURfd3JpdGVfbG9jayhmaXBzX3JhbmRfbG9jayk7Ci0rICAgIGlmIChkY3R4 LT5yYW5kX2FkZF9jYikKLSsgICAgICAgIHJldCA9IGRjdHgtPnJhbmRfYWRkX2NiKGRjdHgsIHNl ZWQsIHNlZWRsZW4sIGFkZF9lbnRyb3B5KTsKLSsgICAgQ1JZUFRPX1RIUkVBRF91bmxvY2soZmlw c19yYW5kX2xvY2spOwotKyAgICByZXR1cm4gcmV0OwotK30KLSsKLStzdGF0aWMgY29uc3QgUkFO RF9NRVRIT0QgcmFuZF9kcmJnX21ldGggPSB7Ci0rICAgIGZpcHNfZHJiZ19zZWVkLAotKyAgICBm aXBzX2RyYmdfYnl0ZXMsCi0rICAgIGZpcHNfZHJiZ19jbGVhbnVwLAotKyAgICBmaXBzX2RyYmdf YWRkLAotKyAgICBmaXBzX2RyYmdfcHNldWRvLAotKyAgICBmaXBzX2RyYmdfc3RhdHVzCi0rfTsK LSsKLStjb25zdCBSQU5EX01FVEhPRCAqRklQU19kcmJnX21ldGhvZCh2b2lkKQotK3sKLSsgICAg cmV0dXJuICZyYW5kX2RyYmdfbWV0aDsKLSt9Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlw dG8vZmlwcy9maXBzX2RyYmdfc2VsZnRlc3QuYy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9m aXBzL2ZpcHNfZHJiZ19zZWxmdGVzdC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMv Zmlwc19kcmJnX3NlbGZ0ZXN0LmMuZmlwcwkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwMDczNDUzNCAr MDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfZHJiZ19zZWxmdGVzdC5j CTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAwNzM0NTM0ICswMTAwCi1AQCAtMCwwICsxLDgyOCBAQAot Ky8qIGZpcHMvcmFuZC9maXBzX2RyYmdfc2VsZnRlc3QuYyAqLwotKy8qIFdyaXR0ZW4gYnkgRHIg U3RlcGhlbiBOIEhlbnNvbiAoc3RldmVAb3BlbnNzbC5vcmcpIGZvciB0aGUgT3BlblNTTAotKyAq IHByb2plY3QuCi0rICovCi0rLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMTEg VGhlIE9wZW5TU0wgUHJvamVjdC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0rICoKLSsgKiBSZWRp c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp dGhvdXQKLSsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUg Zm9sbG93aW5nIGNvbmRpdGlvbnMKLSsgKiBhcmUgbWV0OgotKyAqCi0rICogMS4gUmVkaXN0cmli dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsg KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp c2NsYWltZXIuIAotKyAqCi0rICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11 c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsgKiAgICBub3RpY2UsIHRoaXMgbGlz dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSsgKiAgICB0 aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl Ci0rICogICAgZGlzdHJpYnV0aW9uLgotKyAqCi0rICogMy4gQWxsIGFkdmVydGlzaW5nIG1hdGVy aWFscyBtZW50aW9uaW5nIGZlYXR1cmVzIG9yIHVzZSBvZiB0aGlzCi0rICogICAgc29mdHdhcmUg bXVzdCBkaXNwbGF5IHRoZSBmb2xsb3dpbmcgYWNrbm93bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMg cHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVj dAotKyAqICAgIGZvciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtpdC4gKGh0dHA6Ly93d3cuT3Bl blNTTC5vcmcvKSIKLSsgKgotKyAqIDQuIFRoZSBuYW1lcyAiT3BlblNTTCBUb29sa2l0IiBhbmQg Ik9wZW5TU0wgUHJvamVjdCIgbXVzdCBub3QgYmUgdXNlZCB0bwotKyAqICAgIGVuZG9yc2Ugb3Ig cHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0Ci0rICog ICAgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLiBGb3Igd3JpdHRlbiBwZXJtaXNzaW9uLCBwbGVh c2UgY29udGFjdAotKyAqICAgIGxpY2Vuc2luZ0BPcGVuU1NMLm9yZy4KLSsgKgotKyAqIDUuIFBy b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIG1heSBub3QgYmUgY2FsbGVkICJPcGVu U1NMIgotKyAqICAgIG5vciBtYXkgIk9wZW5TU0wiIGFwcGVhciBpbiB0aGVpciBuYW1lcyB3aXRo b3V0IHByaW9yIHdyaXR0ZW4KLSsgKiAgICBwZXJtaXNzaW9uIG9mIHRoZSBPcGVuU1NMIFByb2pl Y3QuCi0rICoKLSsgKiA2LiBSZWRpc3RyaWJ1dGlvbnMgb2YgYW55IGZvcm0gd2hhdHNvZXZlciBt dXN0IHJldGFpbiB0aGUgZm9sbG93aW5nCi0rICogICAgYWNrbm93bGVkZ21lbnQ6Ci0rICogICAg IlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wg UHJvamVjdAotKyAqICAgIGZvciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtpdCAoaHR0cDovL3d3 dy5PcGVuU1NMLm9yZy8pIgotKyAqCi0rICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU SEUgT3BlblNTTCBQUk9KRUNUIGBgQVMgSVMnJyBBTkQgQU5ZCi0rICogRVhQUkVTU0VEIE9SIElN UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotKyAq IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg UEFSVElDVUxBUgotKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM TCBUSEUgT3BlblNTTCBQUk9KRUNUIE9SCi0rICogSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotKyAqIFNQRUNJQUwsIEVYRU1Q TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotKyAqIE5PVCBM SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwot KyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ T04pCi0rICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX SEVUSEVSIElOIENPTlRSQUNULAotKyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VECi0rICogT0YgVEhF IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotKyAqID09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0rICovCi0rCi0r I2luY2x1ZGUgPHN0cmluZy5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2NyeXB0by5oPgotKyNpbmNs dWRlIDxvcGVuc3NsL2Vyci5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSsjaW5jbHVk ZSA8b3BlbnNzbC9maXBzX3JhbmQuaD4KLSsjaW5jbHVkZSAiZmlwc19yYW5kX2xjbC5oIgotKyNp bmNsdWRlICJmaXBzX2xvY2wuaCIKLSsKLSsjaW5jbHVkZSAiZmlwc19kcmJnX3NlbGZ0ZXN0Lmgi Ci0rCi0rdHlwZWRlZiBzdHJ1Y3QgewotKyAgICBpbnQgcG9zdDsKLSsgICAgaW50IG5pZDsKLSsg ICAgdW5zaWduZWQgaW50IGZsYWdzOwotKwotKyAgICAvKiBLQVQgZGF0YSBmb3Igbm8gUFIgKi8K LSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqZW50OwotKyAgICBzaXplX3QgZW50bGVuOwotKyAg ICBjb25zdCB1bnNpZ25lZCBjaGFyICpub25jZTsKLSsgICAgc2l6ZV90IG5vbmNlbGVuOwotKyAg ICBjb25zdCB1bnNpZ25lZCBjaGFyICpwZXJzOwotKyAgICBzaXplX3QgcGVyc2xlbjsKLSsgICAg Y29uc3QgdW5zaWduZWQgY2hhciAqYWRpbjsKLSsgICAgc2l6ZV90IGFkaW5sZW47Ci0rICAgIGNv bnN0IHVuc2lnbmVkIGNoYXIgKmVudHJlc2VlZDsKLSsgICAgc2l6ZV90IGVudHJlc2VlZGxlbjsK LSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWRpbnJlc2VlZDsKLSsgICAgc2l6ZV90IGFkaW5y ZXNlZWRsZW47Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmFkaW4yOwotKyAgICBzaXplX3Qg YWRpbjJsZW47Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmthdDsKLSsgICAgc2l6ZV90IGth dGxlbjsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqa2F0MjsKLSsgICAgc2l6ZV90IGthdDJs ZW47Ci0rCi0rICAgIC8qIEtBVCBkYXRhIGZvciBQUiAqLwotKyAgICBjb25zdCB1bnNpZ25lZCBj aGFyICplbnRfcHI7Ci0rICAgIHNpemVfdCBlbnRsZW5fcHI7Ci0rICAgIGNvbnN0IHVuc2lnbmVk IGNoYXIgKm5vbmNlX3ByOwotKyAgICBzaXplX3Qgbm9uY2VsZW5fcHI7Ci0rICAgIGNvbnN0IHVu c2lnbmVkIGNoYXIgKnBlcnNfcHI7Ci0rICAgIHNpemVfdCBwZXJzbGVuX3ByOwotKyAgICBjb25z dCB1bnNpZ25lZCBjaGFyICphZGluX3ByOwotKyAgICBzaXplX3QgYWRpbmxlbl9wcjsKLSsgICAg Y29uc3QgdW5zaWduZWQgY2hhciAqZW50cHJfcHI7Ci0rICAgIHNpemVfdCBlbnRwcmxlbl9wcjsK LSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWRpbmdfcHI7Ci0rICAgIHNpemVfdCBhZGluZ2xl bl9wcjsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqZW50Z19wcjsKLSsgICAgc2l6ZV90IGVu dGdsZW5fcHI7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmthdF9wcjsKLSsgICAgc2l6ZV90 IGthdGxlbl9wcjsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqa2F0Ml9wcjsKLSsgICAgc2l6 ZV90IGthdDJsZW5fcHI7Ci0rCi0rfSBEUkJHX1NFTEZURVNUX0RBVEE7Ci0rCi0rI2RlZmluZSBt YWtlX2RyYmdfdGVzdF9kYXRhKG5pZCwgZmxhZywgcHIsIHApIHtwLCBuaWQsIGZsYWcgfCBEUkJH X0ZMQUdfVEVTVCwgXAotKyAgICAgICAgcHIjI19lbnRyb3B5aW5wdXQsIHNpemVvZihwciMjX2Vu dHJvcHlpbnB1dCksIFwKLSsgICAgICAgIHByIyNfbm9uY2UsIHNpemVvZihwciMjX25vbmNlKSwg XAotKyAgICAgICAgcHIjI19wZXJzb25hbGl6YXRpb25zdHJpbmcsIHNpemVvZihwciMjX3BlcnNv bmFsaXphdGlvbnN0cmluZyksIFwKLSsgICAgICAgIHByIyNfYWRkaXRpb25hbGlucHV0LCBzaXpl b2YocHIjI19hZGRpdGlvbmFsaW5wdXQpLCBcCi0rICAgICAgICBwciMjX2VudHJvcHlpbnB1dHJl c2VlZCwgc2l6ZW9mKHByIyNfZW50cm9weWlucHV0cmVzZWVkKSwgXAotKyAgICAgICAgcHIjI19h ZGRpdGlvbmFsaW5wdXRyZXNlZWQsIHNpemVvZihwciMjX2FkZGl0aW9uYWxpbnB1dHJlc2VlZCks IFwKLSsgICAgICAgIHByIyNfYWRkaXRpb25hbGlucHV0Miwgc2l6ZW9mKHByIyNfYWRkaXRpb25h bGlucHV0MiksIFwKLSsgICAgICAgIHByIyNfaW50X3JldHVybmVkYml0cywgc2l6ZW9mKHByIyNf aW50X3JldHVybmVkYml0cyksIFwKLSsgICAgICAgIHByIyNfcmV0dXJuZWRiaXRzLCBzaXplb2Yo cHIjI19yZXR1cm5lZGJpdHMpLCBcCi0rICAgICAgICBwciMjX3ByX2VudHJvcHlpbnB1dCwgc2l6 ZW9mKHByIyNfcHJfZW50cm9weWlucHV0KSwgXAotKyAgICAgICAgcHIjI19wcl9ub25jZSwgc2l6 ZW9mKHByIyNfcHJfbm9uY2UpLCBcCi0rICAgICAgICBwciMjX3ByX3BlcnNvbmFsaXphdGlvbnN0 cmluZywgc2l6ZW9mKHByIyNfcHJfcGVyc29uYWxpemF0aW9uc3RyaW5nKSwgXAotKyAgICAgICAg cHIjI19wcl9hZGRpdGlvbmFsaW5wdXQsIHNpemVvZihwciMjX3ByX2FkZGl0aW9uYWxpbnB1dCks IFwKLSsgICAgICAgIHByIyNfcHJfZW50cm9weWlucHV0cHIsIHNpemVvZihwciMjX3ByX2VudHJv cHlpbnB1dHByKSwgXAotKyAgICAgICAgcHIjI19wcl9hZGRpdGlvbmFsaW5wdXQyLCBzaXplb2Yo cHIjI19wcl9hZGRpdGlvbmFsaW5wdXQyKSwgXAotKyAgICAgICAgcHIjI19wcl9lbnRyb3B5aW5w dXRwcjIsIHNpemVvZihwciMjX3ByX2VudHJvcHlpbnB1dHByMiksIFwKLSsgICAgICAgIHByIyNf cHJfaW50X3JldHVybmVkYml0cywgc2l6ZW9mKHByIyNfcHJfaW50X3JldHVybmVkYml0cyksIFwK LSsgICAgICAgIHByIyNfcHJfcmV0dXJuZWRiaXRzLCBzaXplb2YocHIjI19wcl9yZXR1cm5lZGJp dHMpLCBcCi0rICAgICAgICB9Ci0rCi0rI2RlZmluZSBtYWtlX2RyYmdfdGVzdF9kYXRhX2RmKG5p ZCwgcHIsIHApIFwKLSsgICAgICAgIG1ha2VfZHJiZ190ZXN0X2RhdGEobmlkLCBEUkJHX0ZMQUdf Q1RSX1VTRV9ERiwgcHIsIHApCi0rCi0rI2RlZmluZSBtYWtlX2RyYmdfdGVzdF9kYXRhX2VjKGN1 cnZlLCBtZCwgcHIsIHApIFwKLSsgICAgICAgIG1ha2VfZHJiZ190ZXN0X2RhdGEoKGN1cnZlIDw8 IDE2KSB8IG1kICwgMCwgcHIsIHApCi0rCi0rc3RhdGljIERSQkdfU0VMRlRFU1RfREFUQSBkcmJn X3Rlc3RbXSA9IHsKLSsgICAgbWFrZV9kcmJnX3Rlc3RfZGF0YV9kZihOSURfYWVzXzEyOF9jdHIs IGFlc18xMjhfdXNlX2RmLCAwKSwKLSsgICAgbWFrZV9kcmJnX3Rlc3RfZGF0YV9kZihOSURfYWVz XzE5Ml9jdHIsIGFlc18xOTJfdXNlX2RmLCAwKSwKLSsgICAgbWFrZV9kcmJnX3Rlc3RfZGF0YV9k ZihOSURfYWVzXzI1Nl9jdHIsIGFlc18yNTZfdXNlX2RmLCAxKSwKLSsgICAgbWFrZV9kcmJnX3Rl c3RfZGF0YShOSURfYWVzXzEyOF9jdHIsIDAsIGFlc18xMjhfbm9fZGYsIDApLAotKyAgICBtYWtl X2RyYmdfdGVzdF9kYXRhKE5JRF9hZXNfMTkyX2N0ciwgMCwgYWVzXzE5Ml9ub19kZiwgMCksCi0r ICAgIG1ha2VfZHJiZ190ZXN0X2RhdGEoTklEX2Flc18yNTZfY3RyLCAwLCBhZXNfMjU2X25vX2Rm LCAxKSwKLSsgICAgbWFrZV9kcmJnX3Rlc3RfZGF0YShOSURfc2hhMSwgMCwgc2hhMSwgMCksCi0r ICAgIG1ha2VfZHJiZ190ZXN0X2RhdGEoTklEX3NoYTIyNCwgMCwgc2hhMjI0LCAwKSwKLSsgICAg bWFrZV9kcmJnX3Rlc3RfZGF0YShOSURfc2hhMjU2LCAwLCBzaGEyNTYsIDEpLAotKyAgICBtYWtl X2RyYmdfdGVzdF9kYXRhKE5JRF9zaGEzODQsIDAsIHNoYTM4NCwgMCksCi0rICAgIG1ha2VfZHJi Z190ZXN0X2RhdGEoTklEX3NoYTUxMiwgMCwgc2hhNTEyLCAwKSwKLSsgICAgbWFrZV9kcmJnX3Rl c3RfZGF0YShOSURfaG1hY1dpdGhTSEExLCAwLCBobWFjX3NoYTEsIDApLAotKyAgICBtYWtlX2Ry YmdfdGVzdF9kYXRhKE5JRF9obWFjV2l0aFNIQTIyNCwgMCwgaG1hY19zaGEyMjQsIDApLAotKyAg ICBtYWtlX2RyYmdfdGVzdF9kYXRhKE5JRF9obWFjV2l0aFNIQTI1NiwgMCwgaG1hY19zaGEyNTYs IDEpLAotKyAgICBtYWtlX2RyYmdfdGVzdF9kYXRhKE5JRF9obWFjV2l0aFNIQTM4NCwgMCwgaG1h Y19zaGEzODQsIDApLAotKyAgICBtYWtlX2RyYmdfdGVzdF9kYXRhKE5JRF9obWFjV2l0aFNIQTUx MiwgMCwgaG1hY19zaGE1MTIsIDApLAotKyAgICB7MCwgMCwgMH0KLSt9OwotKwotK3R5cGVkZWYg c3RydWN0IHsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqZW50OwotKyAgICBzaXplX3QgZW50 bGVuOwotKyAgICBpbnQgZW50Y250OwotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpub25jZTsK LSsgICAgc2l6ZV90IG5vbmNlbGVuOwotKyAgICBpbnQgbm9uY2VjbnQ7Ci0rfSBURVNUX0VOVDsK LSsKLStzdGF0aWMgc2l6ZV90IHRlc3RfZW50cm9weShEUkJHX0NUWCAqZGN0eCwgdW5zaWduZWQg Y2hhciAqKnBvdXQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGVudHJvcHksIHNp emVfdCBtaW5fbGVuLCBzaXplX3QgbWF4X2xlbikKLSt7Ci0rICAgIFRFU1RfRU5UICp0ID0gRklQ U19kcmJnX2dldF9hcHBfZGF0YShkY3R4KTsKLSsgICAgKnBvdXQgPSAodW5zaWduZWQgY2hhciAq KXQtPmVudDsKLSsgICAgdC0+ZW50Y250Kys7Ci0rICAgIHJldHVybiB0LT5lbnRsZW47Ci0rfQot KwotK3N0YXRpYyBzaXplX3QgdGVzdF9ub25jZShEUkJHX0NUWCAqZGN0eCwgdW5zaWduZWQgY2hh ciAqKnBvdXQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgIGludCBlbnRyb3B5LCBzaXplX3Qg bWluX2xlbiwgc2l6ZV90IG1heF9sZW4pCi0rewotKyAgICBURVNUX0VOVCAqdCA9IEZJUFNfZHJi Z19nZXRfYXBwX2RhdGEoZGN0eCk7Ci0rICAgICpwb3V0ID0gKHVuc2lnbmVkIGNoYXIgKil0LT5u b25jZTsKLSsgICAgdC0+bm9uY2VjbnQrKzsKLSsgICAgcmV0dXJuIHQtPm5vbmNlbGVuOwotK30K LSsKLStzdGF0aWMgaW50IGZpcHNfZHJiZ19zaW5nbGVfa2F0KERSQkdfQ1RYICpkY3R4LCBEUkJH X1NFTEZURVNUX0RBVEEgKiB0ZCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlu dCBxdWljaykKLSt7Ci0rICAgIFRFU1RfRU5UIHQ7Ci0rICAgIGludCBydiA9IDA7Ci0rICAgIHNp emVfdCBhZGlubGVuOwotKyAgICB1bnNpZ25lZCBjaGFyIHJhbmRvdXRbMTAyNF07Ci0rCi0rICAg IC8qIEluaXRpYWwgdGVzdCB3aXRob3V0IFBSICovCi0rCi0rICAgIC8qIEluc3RhbnRpYXRlIERS Qkcgd2l0aCB0ZXN0IGVudHJvcHksIG5vbmNlIGFuZCBwZXJzb25hbGlzYXRpb24KLSsgICAgICog c3RyaW5nLgotKyAgICAgKi8KLSsKLSsgICAgaWYgKCFGSVBTX2RyYmdfaW5pdChkY3R4LCB0ZC0+ bmlkLCB0ZC0+ZmxhZ3MpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIGlmICghRklQU19kcmJn X3NldF9jYWxsYmFja3MoZGN0eCwgdGVzdF9lbnRyb3B5LCAwLCAwLCB0ZXN0X25vbmNlLCAwKSkK LSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICBGSVBTX2RyYmdfc2V0X2FwcF9kYXRhKGRjdHgs ICZ0KTsKLSsKLSsgICAgdC5lbnQgPSB0ZC0+ZW50OwotKyAgICB0LmVudGxlbiA9IHRkLT5lbnRs ZW47Ci0rICAgIHQubm9uY2UgPSB0ZC0+bm9uY2U7Ci0rICAgIHQubm9uY2VsZW4gPSB0ZC0+bm9u Y2VsZW47Ci0rICAgIHQuZW50Y250ID0gMDsKLSsgICAgdC5ub25jZWNudCA9IDA7Ci0rCi0rICAg IGlmICghRklQU19kcmJnX2luc3RhbnRpYXRlKGRjdHgsIHRkLT5wZXJzLCB0ZC0+cGVyc2xlbikp Ci0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgLyogTm90ZSBmb3IgQ1RSIHdpdGhvdXQgREYg c29tZSBhZGRpdGlvbmFsIGlucHV0IHZhbHVlcwotKyAgICAgKiBpZ25vcmUgYnl0ZXMgYWZ0ZXIg dGhlIGtleWxlbmd0aDogc28gcmVkdWNlIGFkaW5sZW4KLSsgICAgICogdG8gaGFsZiB0byBlbnN1 cmUgaW52YWxpZCBkYXRhIGlzIGZlZCBpbi4KLSsgICAgICovCi0rICAgIGlmICghZmlwc19wb3N0 X2NvcnJ1cHQoRklQU19URVNUX0RSQkcsIGRjdHgtPnR5cGUsICZkY3R4LT5pZmxhZ3MpKQotKyAg ICAgICAgYWRpbmxlbiA9IHRkLT5hZGlubGVuIC8gMjsKLSsgICAgZWxzZQotKyAgICAgICAgYWRp bmxlbiA9IHRkLT5hZGlubGVuOwotKwotKyAgICAvKiBHZW5lcmF0ZSB3aXRoIG5vIFBSIGFuZCB2 ZXJpZnkgb3V0cHV0IG1hdGNoZXMgZXhwZWN0ZWQgZGF0YSAqLwotKyAgICBpZiAoIUZJUFNfZHJi Z19nZW5lcmF0ZShkY3R4LCByYW5kb3V0LCB0ZC0+a2F0bGVuLCAwLCB0ZC0+YWRpbiwgYWRpbmxl bikpCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgaWYgKG1lbWNtcChyYW5kb3V0LCB0ZC0+ a2F0LCB0ZC0+a2F0bGVuKSkgewotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19EUkJHX1NJ TkdMRV9LQVQsIEZJUFNfUl9OT1BSX1RFU1QxX0ZBSUxVUkUpOwotKyAgICAgICAgZ290byBlcnIy OwotKyAgICB9Ci0rICAgIC8qIElmIGFiYnJldmlhdGVkIFBPU1QgZW5kIG9mIHRlc3QgKi8KLSsg ICAgaWYgKHF1aWNrKSB7Ci0rICAgICAgICBydiA9IDE7Ci0rICAgICAgICBnb3RvIGVycjsKLSsg ICAgfQotKyAgICAvKiBSZXNlZWQgRFJCRyB3aXRoIHRlc3QgZW50cm9weSBhbmQgYWRkaXRpb25h bCBpbnB1dCAqLwotKyAgICB0LmVudCA9IHRkLT5lbnRyZXNlZWQ7Ci0rICAgIHQuZW50bGVuID0g dGQtPmVudHJlc2VlZGxlbjsKLSsKLSsgICAgaWYgKCFGSVBTX2RyYmdfcmVzZWVkKGRjdHgsIHRk LT5hZGlucmVzZWVkLCB0ZC0+YWRpbnJlc2VlZGxlbikpCi0rICAgICAgICBnb3RvIGVycjsKLSsK LSsgICAgLyogR2VuZXJhdGUgd2l0aCBubyBQUiBhbmQgdmVyaWZ5IG91dHB1dCBtYXRjaGVzIGV4 cGVjdGVkIGRhdGEgKi8KLSsgICAgaWYgKCFGSVBTX2RyYmdfZ2VuZXJhdGUoZGN0eCwgcmFuZG91 dCwgdGQtPmthdDJsZW4sIDAsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRkLT5hZGlu MiwgdGQtPmFkaW4ybGVuKSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBpZiAobWVtY21w KHJhbmRvdXQsIHRkLT5rYXQyLCB0ZC0+a2F0MmxlbikpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQ U19GX0ZJUFNfRFJCR19TSU5HTEVfS0FULCBGSVBTX1JfTk9QUl9URVNUMl9GQUlMVVJFKTsKLSsg ICAgICAgIGdvdG8gZXJyMjsKLSsgICAgfQotKwotKyAgICBGSVBTX2RyYmdfdW5pbnN0YW50aWF0 ZShkY3R4KTsKLSsKLSsgICAgLyogTm93IHRlc3Qgd2l0aCBQUiAqLwotKwotKyAgICAvKiBJbnN0 YW50aWF0ZSBEUkJHIHdpdGggdGVzdCBlbnRyb3B5LCBub25jZSBhbmQgcGVyc29uYWxpc2F0aW9u Ci0rICAgICAqIHN0cmluZy4KLSsgICAgICovCi0rICAgIGlmICghRklQU19kcmJnX2luaXQoZGN0 eCwgdGQtPm5pZCwgdGQtPmZsYWdzKSkKLSsgICAgICAgIHJldHVybiAwOwotKyAgICBpZiAoIUZJ UFNfZHJiZ19zZXRfY2FsbGJhY2tzKGRjdHgsIHRlc3RfZW50cm9weSwgMCwgMCwgdGVzdF9ub25j ZSwgMCkpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgRklQU19kcmJnX3NldF9hcHBfZGF0 YShkY3R4LCAmdCk7Ci0rCi0rICAgIHQuZW50ID0gdGQtPmVudF9wcjsKLSsgICAgdC5lbnRsZW4g PSB0ZC0+ZW50bGVuX3ByOwotKyAgICB0Lm5vbmNlID0gdGQtPm5vbmNlX3ByOwotKyAgICB0Lm5v bmNlbGVuID0gdGQtPm5vbmNlbGVuX3ByOwotKyAgICB0LmVudGNudCA9IDA7Ci0rICAgIHQubm9u Y2VjbnQgPSAwOwotKwotKyAgICBpZiAoIUZJUFNfZHJiZ19pbnN0YW50aWF0ZShkY3R4LCB0ZC0+ cGVyc19wciwgdGQtPnBlcnNsZW5fcHIpKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIC8q IE5vdyBnZW5lcmF0ZSB3aXRoIFBSOiB3ZSBuZWVkIHRvIHN1cHBseSBlbnRyb3B5IGFzIHRoaXMg d2lsbAotKyAgICAgKiBwZXJmb3JtIGEgcmVzZWVkIG9wZXJhdGlvbi4gQ2hlY2sgb3V0cHV0IG1h dGNoZXMgZXhwZWN0ZWQgdmFsdWUuCi0rICAgICAqLwotKwotKyAgICB0LmVudCA9IHRkLT5lbnRw cl9wcjsKLSsgICAgdC5lbnRsZW4gPSB0ZC0+ZW50cHJsZW5fcHI7Ci0rCi0rICAgIC8qIE5vdGUg Zm9yIENUUiB3aXRob3V0IERGIHNvbWUgYWRkaXRpb25hbCBpbnB1dCB2YWx1ZXMKLSsgICAgICog aWdub3JlIGJ5dGVzIGFmdGVyIHRoZSBrZXlsZW5ndGg6IHNvIHJlZHVjZSBhZGlubGVuCi0rICAg ICAqIHRvIGhhbGYgdG8gZW5zdXJlIGludmFsaWQgZGF0YSBpcyBmZWQgaW4uCi0rICAgICAqLwot KyAgICBpZiAoIWZpcHNfcG9zdF9jb3JydXB0KEZJUFNfVEVTVF9EUkJHLCBkY3R4LT50eXBlLCAm ZGN0eC0+aWZsYWdzKSkKLSsgICAgICAgIGFkaW5sZW4gPSB0ZC0+YWRpbmxlbl9wciAvIDI7Ci0r ICAgIGVsc2UKLSsgICAgICAgIGFkaW5sZW4gPSB0ZC0+YWRpbmxlbl9wcjsKLSsgICAgaWYgKCFG SVBTX2RyYmdfZ2VuZXJhdGUoZGN0eCwgcmFuZG91dCwgdGQtPmthdGxlbl9wciwgMSwKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdGQtPmFkaW5fcHIsIGFkaW5sZW4pKQotKyAgICAgICAg Z290byBlcnI7Ci0rCi0rICAgIGlmIChtZW1jbXAocmFuZG91dCwgdGQtPmthdF9wciwgdGQtPmth dGxlbl9wcikpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19TSU5HTEVfS0FU LCBGSVBTX1JfUFJfVEVTVDFfRkFJTFVSRSk7Ci0rICAgICAgICBnb3RvIGVycjI7Ci0rICAgIH0K LSsKLSsgICAgLyogTm93IGdlbmVyYXRlIGFnYWluIHdpdGggUFI6IHN1cHBseSBuZXcgZW50cm9w eSBhZ2Fpbi4KLSsgICAgICogQ2hlY2sgb3V0cHV0IG1hdGNoZXMgZXhwZWN0ZWQgdmFsdWUuCi0r ICAgICAqLwotKwotKyAgICB0LmVudCA9IHRkLT5lbnRnX3ByOwotKyAgICB0LmVudGxlbiA9IHRk LT5lbnRnbGVuX3ByOwotKwotKyAgICBpZiAoIUZJUFNfZHJiZ19nZW5lcmF0ZShkY3R4LCByYW5k b3V0LCB0ZC0+a2F0Mmxlbl9wciwgMSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGQt PmFkaW5nX3ByLCB0ZC0+YWRpbmdsZW5fcHIpKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAg IGlmIChtZW1jbXAocmFuZG91dCwgdGQtPmthdDJfcHIsIHRkLT5rYXQybGVuX3ByKSkgewotKyAg ICAgICAgRklQU2VycihGSVBTX0ZfRklQU19EUkJHX1NJTkdMRV9LQVQsIEZJUFNfUl9QUl9URVNU Ml9GQUlMVVJFKTsKLSsgICAgICAgIGdvdG8gZXJyMjsKLSsgICAgfQotKyAgICAvKiBBbGwgT0ss IHRlc3QgY29tcGxldGUgKi8KLSsgICAgcnYgPSAxOwotKwotKyBlcnI6Ci0rICAgIGlmIChydiA9 PSAwKQotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19EUkJHX1NJTkdMRV9LQVQsIEZJUFNf Ul9TRUxGVEVTVF9GQUlMRUQpOwotKyBlcnIyOgotKyAgICBGSVBTX2RyYmdfdW5pbnN0YW50aWF0 ZShkY3R4KTsKLSsKLSsgICAgcmV0dXJuIHJ2OwotKwotK30KLSsKLSsvKiBJbml0aWFsaXNlIGEg RFJCRyBiYXNlZCBvbiBzZWxmdGVzdCBkYXRhICovCi0rCi0rc3RhdGljIGludCBkb19kcmJnX2lu aXQoRFJCR19DVFggKmRjdHgsIERSQkdfU0VMRlRFU1RfREFUQSAqIHRkLCBURVNUX0VOVCAqIHQp Ci0rewotKwotKyAgICBpZiAoIUZJUFNfZHJiZ19pbml0KGRjdHgsIHRkLT5uaWQsIHRkLT5mbGFn cykpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgaWYgKCFGSVBTX2RyYmdfc2V0X2NhbGxi YWNrcyhkY3R4LCB0ZXN0X2VudHJvcHksIDAsIDAsIHRlc3Rfbm9uY2UsIDApKQotKyAgICAgICAg cmV0dXJuIDA7Ci0rCi0rICAgIEZJUFNfZHJiZ19zZXRfYXBwX2RhdGEoZGN0eCwgdCk7Ci0rCi0r ICAgIHQtPmVudCA9IHRkLT5lbnQ7Ci0rICAgIHQtPmVudGxlbiA9IHRkLT5lbnRsZW47Ci0rICAg IHQtPm5vbmNlID0gdGQtPm5vbmNlOwotKyAgICB0LT5ub25jZWxlbiA9IHRkLT5ub25jZWxlbjsK LSsgICAgdC0+ZW50Y250ID0gMDsKLSsgICAgdC0+bm9uY2VjbnQgPSAwOwotKyAgICByZXR1cm4g MTsKLSt9Ci0rCi0rLyogSW5pdGlhbGlzZSBhbmQgaW5zdGFudGlhdGUgRFJCRyBiYXNlZCBvbiBz ZWxmdGVzdCBkYXRhICovCi0rc3RhdGljIGludCBkb19kcmJnX2luc3RhbnRpYXRlKERSQkdfQ1RY ICpkY3R4LCBEUkJHX1NFTEZURVNUX0RBVEEgKiB0ZCwKLSsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgVEVTVF9FTlQgKiB0KQotK3sKLSsgICAgaWYgKCFkb19kcmJnX2luaXQoZGN0eCwg dGQsIHQpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIGlmICghRklQU19kcmJnX2luc3RhbnRp YXRlKGRjdHgsIHRkLT5wZXJzLCB0ZC0+cGVyc2xlbikpCi0rICAgICAgICByZXR1cm4gMDsKLSsK LSsgICAgcmV0dXJuIDE7Ci0rfQotKwotKy8qIFRoaXMgZnVuY3Rpb24gcGVyZm9ybXMgZXh0ZW5z aXZlIGVycm9yIGNoZWNraW5nIGFzIHJlcXVpcmVkIGJ5IFNQODAwLTkwLgotKyAqIEluZHVjZSBz ZXZlcmFsIGZhaWx1cmUgbW9kZXMgYW5kIGNoZWNrIGFuIGVycm9yIGNvbmRpdGlvbiBpcyBzZXQu Ci0rICogVGhpcyBmdW5jdGlvbiBhbG9uZyB3aXRoIGZpcHNfZHJiZ19zaW5nbGVfa2F0IHBlZm9y bXMgdGhlIGhlYWx0aCBjaGVja2luZwotKyAqIG9wZXJhdGlvbi4KLSsgKi8KLSsKLStzdGF0aWMg aW50IGZpcHNfZHJiZ19lcnJvcl9jaGVjayhEUkJHX0NUWCAqZGN0eCwgRFJCR19TRUxGVEVTVF9E QVRBICogdGQpCi0rewotKyAgICB1bnNpZ25lZCBjaGFyIHJhbmRvdXRbMTAyNF07Ci0rICAgIFRF U1RfRU5UIHQ7Ci0rICAgIHNpemVfdCBpOwotKyAgICB1bnNpZ25lZCBpbnQgcmVzZWVkX2NvdW50 ZXJfdG1wOwotKyAgICB1bnNpZ25lZCBjaGFyICpwID0gKHVuc2lnbmVkIGNoYXIgKilkY3R4Owot KwotKyAgICAvKiBJbml0aWFsaXNlIERSQkcgKi8KLSsKLSsgICAgaWYgKCFkb19kcmJnX2luaXQo ZGN0eCwgdGQsICZ0KSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICAvKiBEb24ndCByZXBv cnQgaW5kdWNlZCBlcnJvcnMgKi8KLSsgICAgZGN0eC0+aWZsYWdzIHw9IERSQkdfRkxBR19OT0VS UjsKLSsKLSsgICAgLyogUGVyc29uYWxpc2F0aW9uIHN0cmluZyB0ZXN0cyAqLwotKwotKyAgICAv KiBUZXN0IGRldGVjdGlvbiBvZiB0b28gbGFyZ2UgcGVyc29ubGlzYXRpb24gc3RyaW5nICovCi0r Ci0rICAgIGlmIChGSVBTX2RyYmdfaW5zdGFudGlhdGUoZGN0eCwgdGQtPnBlcnMsIGRjdHgtPm1h eF9wZXJzICsgMSkgPiAwKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdfRVJS T1JfQ0hFQ0ssCi0rICAgICAgICAgICAgICAgIEZJUFNfUl9QRVJTT05BTElTQVRJT05fRVJST1Jf VU5ERVRFQ1RFRCk7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKwotKyAgICAvKiBFbnRy b3B5IHNvdXJjZSB0ZXN0cyAqLwotKwotKyAgICAvKiBUZXN0IGVudHJvcHkgc291cmNlIGZhaWx1 cmUgZGV0ZWNpb246IGkuZS4gcmV0dXJucyBubyBkYXRhICovCi0rCi0rICAgIHQuZW50bGVuID0g MDsKLSsKLSsgICAgaWYgKEZJUFNfZHJiZ19pbnN0YW50aWF0ZShkY3R4LCB0ZC0+cGVycywgdGQt PnBlcnNsZW4pID4gMCkgewotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19EUkJHX0VSUk9S X0NIRUNLLAotKyAgICAgICAgICAgICAgICBGSVBTX1JfRU5UUk9QWV9FUlJPUl9VTkRFVEVDVEVE KTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIC8qIFRyeSB0byBnZW5lcmF0 ZSBvdXRwdXQgZnJvbSB1bmluc3RhbnRpYXRlZCBEUkJHICovCi0rICAgIGlmIChGSVBTX2RyYmdf Z2VuZXJhdGUoZGN0eCwgcmFuZG91dCwgdGQtPmthdGxlbiwgMCwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICB0ZC0+YWRpbiwgdGQtPmFkaW5sZW4pKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJ UFNfRl9GSVBTX0RSQkdfRVJST1JfQ0hFQ0ssCi0rICAgICAgICAgICAgICAgIEZJUFNfUl9HRU5F UkFURV9FUlJPUl9VTkRFVEVDVEVEKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0r ICAgIGRjdHgtPmlmbGFncyAmPSB+RFJCR19GTEFHX05PRVJSOwotKyAgICBpZiAoIUZJUFNfZHJi Z191bmluc3RhbnRpYXRlKGRjdHgpKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RS QkdfRVJST1JfQ0hFQ0ssIEZJUFNfUl9VTklOU1RBTlRJQVRFX0VSUk9SKTsKLSsgICAgICAgIGdv dG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIGlmICghZG9fZHJiZ19pbml0KGRjdHgsIHRkLCAmdCkp Ci0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgZGN0eC0+aWZsYWdzIHw9IERSQkdfRkxBR19O T0VSUjsKLSsKLSsgICAgLyogVGVzdCBpbnN1ZmZpY2llbnQgZW50cm9weSAqLwotKwotKyAgICB0 LmVudGxlbiA9IGRjdHgtPm1pbl9lbnRyb3B5IC0gMTsKLSsKLSsgICAgaWYgKEZJUFNfZHJiZ19p bnN0YW50aWF0ZShkY3R4LCB0ZC0+cGVycywgdGQtPnBlcnNsZW4pID4gMCkgewotKyAgICAgICAg RklQU2VycihGSVBTX0ZfRklQU19EUkJHX0VSUk9SX0NIRUNLLAotKyAgICAgICAgICAgICAgICBG SVBTX1JfRU5UUk9QWV9FUlJPUl9VTkRFVEVDVEVEKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAg ICB9Ci0rCi0rICAgIGRjdHgtPmlmbGFncyAmPSB+RFJCR19GTEFHX05PRVJSOwotKyAgICBpZiAo IUZJUFNfZHJiZ191bmluc3RhbnRpYXRlKGRjdHgpKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNf Rl9GSVBTX0RSQkdfRVJST1JfQ0hFQ0ssIEZJUFNfUl9VTklOU1RBTlRJQVRFX0VSUk9SKTsKLSsg ICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIC8qIFRlc3QgdG9vIG11Y2ggZW50cm9w eSAqLwotKwotKyAgICBpZiAoIWRvX2RyYmdfaW5pdChkY3R4LCB0ZCwgJnQpKQotKyAgICAgICAg Z290byBlcnI7Ci0rCi0rICAgIGRjdHgtPmlmbGFncyB8PSBEUkJHX0ZMQUdfTk9FUlI7Ci0rCi0r ICAgIHQuZW50bGVuID0gZGN0eC0+bWF4X2VudHJvcHkgKyAxOwotKwotKyAgICBpZiAoRklQU19k cmJnX2luc3RhbnRpYXRlKGRjdHgsIHRkLT5wZXJzLCB0ZC0+cGVyc2xlbikgPiAwKSB7Ci0rICAg ICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdfRVJST1JfQ0hFQ0ssCi0rICAgICAgICAgICAg ICAgIEZJUFNfUl9FTlRST1BZX0VSUk9SX1VOREVURUNURUQpOwotKyAgICAgICAgZ290byBlcnI7 Ci0rICAgIH0KLSsKLSsgICAgZGN0eC0+aWZsYWdzICY9IH5EUkJHX0ZMQUdfTk9FUlI7Ci0rICAg IGlmICghRklQU19kcmJnX3VuaW5zdGFudGlhdGUoZGN0eCkpIHsKLSsgICAgICAgIEZJUFNlcnIo RklQU19GX0ZJUFNfRFJCR19FUlJPUl9DSEVDSywgRklQU19SX1VOSU5TVEFOVElBVEVfRVJST1Ip OwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsKLSsgICAgLyogTm9uY2UgdGVzdHMgKi8K LSsKLSsgICAgLyogVGVzdCB0b28gc21hbGwgbm9uY2UgKi8KLSsKLSsgICAgaWYgKGRjdHgtPm1p bl9ub25jZSkgewotKwotKyAgICAgICAgaWYgKCFkb19kcmJnX2luaXQoZGN0eCwgdGQsICZ0KSkK LSsgICAgICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgICAgIGRjdHgtPmlmbGFncyB8PSBEUkJH X0ZMQUdfTk9FUlI7Ci0rCi0rICAgICAgICB0Lm5vbmNlbGVuID0gZGN0eC0+bWluX25vbmNlIC0g MTsKLSsKLSsgICAgICAgIGlmIChGSVBTX2RyYmdfaW5zdGFudGlhdGUoZGN0eCwgdGQtPnBlcnMs IHRkLT5wZXJzbGVuKSA+IDApIHsKLSsgICAgICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RS QkdfRVJST1JfQ0hFQ0ssCi0rICAgICAgICAgICAgICAgICAgICBGSVBTX1JfTk9OQ0VfRVJST1Jf VU5ERVRFQ1RFRCk7Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rCi0rICAg ICAgICBkY3R4LT5pZmxhZ3MgJj0gfkRSQkdfRkxBR19OT0VSUjsKLSsgICAgICAgIGlmICghRklQ U19kcmJnX3VuaW5zdGFudGlhdGUoZGN0eCkpIHsKLSsgICAgICAgICAgICBGSVBTZXJyKEZJUFNf Rl9GSVBTX0RSQkdfRVJST1JfQ0hFQ0ssIEZJUFNfUl9VTklOU1RBTlRJQVRFX0VSUk9SKTsKLSsg ICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgIH0KLSsKLSsgICAgfQotKwotKyAgICAvKiBU ZXN0IHRvbyBsYXJnZSBub25jZSAqLwotKwotKyAgICBpZiAoZGN0eC0+bWF4X25vbmNlKSB7Ci0r Ci0rICAgICAgICBpZiAoIWRvX2RyYmdfaW5pdChkY3R4LCB0ZCwgJnQpKQotKyAgICAgICAgICAg IGdvdG8gZXJyOwotKwotKyAgICAgICAgZGN0eC0+aWZsYWdzIHw9IERSQkdfRkxBR19OT0VSUjsK LSsKLSsgICAgICAgIHQubm9uY2VsZW4gPSBkY3R4LT5tYXhfbm9uY2UgKyAxOwotKwotKyAgICAg ICAgaWYgKEZJUFNfZHJiZ19pbnN0YW50aWF0ZShkY3R4LCB0ZC0+cGVycywgdGQtPnBlcnNsZW4p ID4gMCkgewotKyAgICAgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19FUlJPUl9DSEVD SywKLSsgICAgICAgICAgICAgICAgICAgIEZJUFNfUl9OT05DRV9FUlJPUl9VTkRFVEVDVEVEKTsK LSsgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgIH0KLSsKLSsgICAgICAgIGRjdHgtPmlm bGFncyAmPSB+RFJCR19GTEFHX05PRVJSOwotKyAgICAgICAgaWYgKCFGSVBTX2RyYmdfdW5pbnN0 YW50aWF0ZShkY3R4KSkgewotKyAgICAgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19F UlJPUl9DSEVDSywgRklQU19SX1VOSU5TVEFOVElBVEVfRVJST1IpOwotKyAgICAgICAgICAgIGdv dG8gZXJyOwotKyAgICAgICAgfQotKwotKyAgICB9Ci0rCi0rICAgIC8qIEluc3RhbnRpYXRlIHdp dGggdmFsaWQgZGF0YS4gKi8KLSsgICAgaWYgKCFkb19kcmJnX2luc3RhbnRpYXRlKGRjdHgsIHRk LCAmdCkpCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgLyogQ2hlY2sgZ2VuZXJhdGlvbiBp cyBub3cgT0sgKi8KLSsgICAgaWYgKCFGSVBTX2RyYmdfZ2VuZXJhdGUoZGN0eCwgcmFuZG91dCwg dGQtPmthdGxlbiwgMCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGQtPmFkaW4sIHRk LT5hZGlubGVuKSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBkY3R4LT5pZmxhZ3MgfD0g RFJCR19GTEFHX05PRVJSOwotKwotKyAgICAvKiBSZXF1ZXN0IHRvbyBtdWNoIGRhdGEgZm9yIG9u ZSByZXF1ZXN0ICovCi0rICAgIGlmIChGSVBTX2RyYmdfZ2VuZXJhdGUoZGN0eCwgcmFuZG91dCwg ZGN0eC0+bWF4X3JlcXVlc3QgKyAxLCAwLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHRk LT5hZGluLCB0ZC0+YWRpbmxlbikpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJC R19FUlJPUl9DSEVDSywKLSsgICAgICAgICAgICAgICAgRklQU19SX1JFUVVFU1RfTEVOR1RIX0VS Uk9SX1VOREVURUNURUQpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsKLSsgICAgLyog VHJ5IHRvbyBsYXJnZSBhZGRpdGlvbmFsIGlucHV0ICovCi0rICAgIGlmIChGSVBTX2RyYmdfZ2Vu ZXJhdGUoZGN0eCwgcmFuZG91dCwgdGQtPmthdGxlbiwgMCwKLSsgICAgICAgICAgICAgICAgICAg ICAgICAgICB0ZC0+YWRpbiwgZGN0eC0+bWF4X2FkaW4gKyAxKSkgewotKyAgICAgICAgRklQU2Vy cihGSVBTX0ZfRklQU19EUkJHX0VSUk9SX0NIRUNLLAotKyAgICAgICAgICAgICAgICBGSVBTX1Jf QURESVRJT05BTF9JTlBVVF9FUlJPUl9VTkRFVEVDVEVEKTsKLSsgICAgICAgIGdvdG8gZXJyOwot KyAgICB9Ci0rCi0rICAgIC8qIENoZWNrIHByZWRpY3Rpb24gcmVzaXN0YW5jZSByZXF1ZXN0IGZh aWxzIGlmIGVudHJvcHkgc291cmNlCi0rICAgICAqIGZhaWx1cmUuCi0rICAgICAqLwotKwotKyAg ICB0LmVudGxlbiA9IDA7Ci0rCi0rICAgIGlmIChGSVBTX2RyYmdfZ2VuZXJhdGUoZGN0eCwgcmFu ZG91dCwgdGQtPmthdGxlbiwgMSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZC0+YWRp biwgdGQtPmFkaW5sZW4pKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdfRVJS T1JfQ0hFQ0ssCi0rICAgICAgICAgICAgICAgIEZJUFNfUl9FTlRST1BZX0VSUk9SX1VOREVURUNU RUQpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsKLSsgICAgZGN0eC0+aWZsYWdzICY9 IH5EUkJHX0ZMQUdfTk9FUlI7Ci0rICAgIGlmICghRklQU19kcmJnX3VuaW5zdGFudGlhdGUoZGN0 eCkpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19FUlJPUl9DSEVDSywgRklQ U19SX1VOSU5TVEFOVElBVEVfRVJST1IpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsK LSsgICAgLyogSW5zdGFudGlhdGUgYWdhaW4gd2l0aCB2YWxpZCBkYXRhICovCi0rCi0rICAgIGlm ICghZG9fZHJiZ19pbnN0YW50aWF0ZShkY3R4LCB0ZCwgJnQpKQotKyAgICAgICAgZ290byBlcnI7 Ci0rICAgIC8qIFRlc3QgcmVzZWVkIGNvdW50ZXIgd29ya3MgKi8KLSsgICAgLyogU2F2ZSBpbml0 aWFsIHJlc2VlZCBjb3VudGVyICovCi0rICAgIHJlc2VlZF9jb3VudGVyX3RtcCA9IGRjdHgtPnJl c2VlZF9jb3VudGVyOwotKyAgICAvKiBTZXQgcmVzZWVkIGNvdW50ZXIgdG8gYmV5b25kIGludGVy dmFsICovCi0rICAgIGRjdHgtPnJlc2VlZF9jb3VudGVyID0gZGN0eC0+cmVzZWVkX2ludGVydmFs OwotKwotKyAgICAvKiBHZW5lcmF0ZSBvdXRwdXQgYW5kIGNoZWNrIGVudHJvcHkgaGFzIGJlZW4g cmVxdWVzdGVkIGZvciByZXNlZWQgKi8KLSsgICAgdC5lbnRjbnQgPSAwOwotKyAgICBpZiAoIUZJ UFNfZHJiZ19nZW5lcmF0ZShkY3R4LCByYW5kb3V0LCB0ZC0+a2F0bGVuLCAwLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0ZC0+YWRpbiwgdGQtPmFkaW5sZW4pKQotKyAgICAgICAgZ290 byBlcnI7Ci0rICAgIGlmICh0LmVudGNudCAhPSAxKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNf Rl9GSVBTX0RSQkdfRVJST1JfQ0hFQ0ssCi0rICAgICAgICAgICAgICAgIEZJUFNfUl9FTlRST1BZ X05PVF9SRVFVRVNURURfRk9SX1JFU0VFRCk7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQot KyAgICAvKiBDaGVjayByZXNlZWQgY291bnRlciBoYXMgYmVlbiByZXNldCAqLwotKyAgICBpZiAo ZGN0eC0+cmVzZWVkX2NvdW50ZXIgIT0gcmVzZWVkX2NvdW50ZXJfdG1wICsgMSkgewotKyAgICAg ICAgRklQU2VycihGSVBTX0ZfRklQU19EUkJHX0VSUk9SX0NIRUNLLCBGSVBTX1JfUkVTRUVEX0NP VU5URVJfRVJST1IpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsKLSsgICAgZGN0eC0+ aWZsYWdzICY9IH5EUkJHX0ZMQUdfTk9FUlI7Ci0rICAgIGlmICghRklQU19kcmJnX3VuaW5zdGFu dGlhdGUoZGN0eCkpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19FUlJPUl9D SEVDSywgRklQU19SX1VOSU5TVEFOVElBVEVfRVJST1IpOwotKyAgICAgICAgZ290byBlcnI7Ci0r ICAgIH0KLSsKLSsgICAgLyogQ2hlY2sgcHJlZGljdGlvbiByZXNpc3RhbmNlIHJlcXVlc3QgZmFp bHMgaWYgZW50cm9weSBzb3VyY2UKLSsgICAgICogZmFpbHVyZS4KLSsgICAgICovCi0rCi0rICAg IHQuZW50bGVuID0gMDsKLSsKLSsgICAgZGN0eC0+aWZsYWdzIHw9IERSQkdfRkxBR19OT0VSUjsK LSsgICAgaWYgKEZJUFNfZHJiZ19nZW5lcmF0ZShkY3R4LCByYW5kb3V0LCB0ZC0+a2F0bGVuLCAx LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHRkLT5hZGluLCB0ZC0+YWRpbmxlbikpIHsK LSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19FUlJPUl9DSEVDSywKLSsgICAgICAg ICAgICAgICAgRklQU19SX0VOVFJPUFlfRVJST1JfVU5ERVRFQ1RFRCk7Ci0rICAgICAgICBnb3Rv IGVycjsKLSsgICAgfQotKwotKyAgICBkY3R4LT5pZmxhZ3MgJj0gfkRSQkdfRkxBR19OT0VSUjsK LSsKLSsgICAgaWYgKCFGSVBTX2RyYmdfdW5pbnN0YW50aWF0ZShkY3R4KSkgewotKyAgICAgICAg RklQU2VycihGSVBTX0ZfRklQU19EUkJHX0VSUk9SX0NIRUNLLCBGSVBTX1JfVU5JTlNUQU5USUFU RV9FUlJPUik7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKwotKyAgICBpZiAoIWRvX2Ry YmdfaW5zdGFudGlhdGUoZGN0eCwgdGQsICZ0KSkKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICAv KiBUZXN0IHJlc2VlZCBjb3VudGVyIHdvcmtzICovCi0rICAgIC8qIFNhdmUgaW5pdGlhbCByZXNl ZWQgY291bnRlciAqLwotKyAgICByZXNlZWRfY291bnRlcl90bXAgPSBkY3R4LT5yZXNlZWRfY291 bnRlcjsKLSsgICAgLyogU2V0IHJlc2VlZCBjb3VudGVyIHRvIGJleW9uZCBpbnRlcnZhbCAqLwot KyAgICBkY3R4LT5yZXNlZWRfY291bnRlciA9IGRjdHgtPnJlc2VlZF9pbnRlcnZhbDsKLSsKLSsg ICAgLyogR2VuZXJhdGUgb3V0cHV0IGFuZCBjaGVjayBlbnRyb3B5IGhhcyBiZWVuIHJlcXVlc3Rl ZCBmb3IgcmVzZWVkICovCi0rICAgIHQuZW50Y250ID0gMDsKLSsgICAgaWYgKCFGSVBTX2RyYmdf Z2VuZXJhdGUoZGN0eCwgcmFuZG91dCwgdGQtPmthdGxlbiwgMCwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgdGQtPmFkaW4sIHRkLT5hZGlubGVuKSkKLSsgICAgICAgIGdvdG8gZXJyOwot KyAgICBpZiAodC5lbnRjbnQgIT0gMSkgewotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19E UkJHX0VSUk9SX0NIRUNLLAotKyAgICAgICAgICAgICAgICBGSVBTX1JfRU5UUk9QWV9OT1RfUkVR VUVTVEVEX0ZPUl9SRVNFRUQpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgLyog Q2hlY2sgcmVzZWVkIGNvdW50ZXIgaGFzIGJlZW4gcmVzZXQgKi8KLSsgICAgaWYgKGRjdHgtPnJl c2VlZF9jb3VudGVyICE9IHJlc2VlZF9jb3VudGVyX3RtcCArIDEpIHsKLSsgICAgICAgIEZJUFNl cnIoRklQU19GX0ZJUFNfRFJCR19FUlJPUl9DSEVDSywgRklQU19SX1JFU0VFRF9DT1VOVEVSX0VS Uk9SKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIGRjdHgtPmlmbGFncyAm PSB+RFJCR19GTEFHX05PRVJSOwotKyAgICBpZiAoIUZJUFNfZHJiZ191bmluc3RhbnRpYXRlKGRj dHgpKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdfRVJST1JfQ0hFQ0ssIEZJ UFNfUl9VTklOU1RBTlRJQVRFX0VSUk9SKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0r Ci0rICAgIC8qIEV4cGxpY2l0IHJlc2VlZCB0ZXN0cyAqLwotKwotKyAgICAvKiBUZXN0IGV4cGxp Y2l0IHJlc2VlZCB3aXRoIHRvbyBsYXJnZSBhZGRpdGlvbmFsIGlucHV0ICovCi0rICAgIGlmICgh ZG9fZHJiZ19pbml0KGRjdHgsIHRkLCAmdCkpCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAg ZGN0eC0+aWZsYWdzIHw9IERSQkdfRkxBR19OT0VSUjsKLSsKLSsgICAgaWYgKEZJUFNfZHJiZ19y ZXNlZWQoZGN0eCwgdGQtPmFkaW4sIGRjdHgtPm1heF9hZGluICsgMSkgPiAwKSB7Ci0rICAgICAg ICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdfRVJST1JfQ0hFQ0ssCi0rICAgICAgICAgICAgICAg IEZJUFNfUl9BRERJVElPTkFMX0lOUFVUX0VSUk9SX1VOREVURUNURUQpOwotKyAgICAgICAgZ290 byBlcnI7Ci0rICAgIH0KLSsKLSsgICAgLyogVGVzdCBleHBsaWNpdCByZXNlZWQgd2l0aCBlbnRy b3B5IHNvdXJjZSBmYWlsdXJlICovCi0rCi0rICAgIHQuZW50bGVuID0gMDsKLSsKLSsgICAgaWYg KEZJUFNfZHJiZ19yZXNlZWQoZGN0eCwgdGQtPmFkaW4sIHRkLT5hZGlubGVuKSA+IDApIHsKLSsg ICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19FUlJPUl9DSEVDSywKLSsgICAgICAgICAg ICAgICAgRklQU19SX0VOVFJPUFlfRVJST1JfVU5ERVRFQ1RFRCk7Ci0rICAgICAgICBnb3RvIGVy cjsKLSsgICAgfQotKwotKyAgICBpZiAoIUZJUFNfZHJiZ191bmluc3RhbnRpYXRlKGRjdHgpKSB7 Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdfRVJST1JfQ0hFQ0ssIEZJUFNfUl9V TklOU1RBTlRJQVRFX0VSUk9SKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAg IC8qIFRlc3QgZXhwbGljaXQgcmVzZWVkIHdpdGggdG9vIG11Y2ggZW50cm9weSAqLwotKwotKyAg ICBpZiAoIWRvX2RyYmdfaW5pdChkY3R4LCB0ZCwgJnQpKQotKyAgICAgICAgZ290byBlcnI7Ci0r Ci0rICAgIGRjdHgtPmlmbGFncyB8PSBEUkJHX0ZMQUdfTk9FUlI7Ci0rCi0rICAgIHQuZW50bGVu ID0gZGN0eC0+bWF4X2VudHJvcHkgKyAxOwotKwotKyAgICBpZiAoRklQU19kcmJnX3Jlc2VlZChk Y3R4LCB0ZC0+YWRpbiwgdGQtPmFkaW5sZW4pID4gMCkgewotKyAgICAgICAgRklQU2VycihGSVBT X0ZfRklQU19EUkJHX0VSUk9SX0NIRUNLLAotKyAgICAgICAgICAgICAgICBGSVBTX1JfRU5UUk9Q WV9FUlJPUl9VTkRFVEVDVEVEKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAg IGlmICghRklQU19kcmJnX3VuaW5zdGFudGlhdGUoZGN0eCkpIHsKLSsgICAgICAgIEZJUFNlcnIo RklQU19GX0ZJUFNfRFJCR19FUlJPUl9DSEVDSywgRklQU19SX1VOSU5TVEFOVElBVEVfRVJST1Ip OwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsKLSsgICAgLyogVGVzdCBleHBsaWNpdCBy ZXNlZWQgd2l0aCB0b28gbGl0dGxlIGVudHJvcHkgKi8KLSsKLSsgICAgaWYgKCFkb19kcmJnX2lu aXQoZGN0eCwgdGQsICZ0KSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBkY3R4LT5pZmxh Z3MgfD0gRFJCR19GTEFHX05PRVJSOwotKwotKyAgICB0LmVudGxlbiA9IGRjdHgtPm1pbl9lbnRy b3B5IC0gMTsKLSsKLSsgICAgaWYgKEZJUFNfZHJiZ19yZXNlZWQoZGN0eCwgdGQtPmFkaW4sIHRk LT5hZGlubGVuKSA+IDApIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19FUlJP Ul9DSEVDSywKLSsgICAgICAgICAgICAgICAgRklQU19SX0VOVFJPUFlfRVJST1JfVU5ERVRFQ1RF RCk7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKwotKyAgICBpZiAoIUZJUFNfZHJiZ191 bmluc3RhbnRpYXRlKGRjdHgpKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0RSQkdf RVJST1JfQ0hFQ0ssIEZJUFNfUl9VTklOU1RBTlRJQVRFX0VSUk9SKTsKLSsgICAgICAgIGdvdG8g ZXJyOwotKyAgICB9Ci0rCi0rICAgIHAgPSAodW5zaWduZWQgY2hhciAqKSZkY3R4LT5kOwotKyAg ICAvKiBTdGFuZGFyZCBzYXlzIHdlIGhhdmUgdG8gY2hlY2sgdW5pbnN0YW50aWF0ZSByZWFsbHkg emVyb2VzCi0rICAgICAqIHRoZSBkYXRhLi4uCi0rICAgICAqLwotKyAgICBmb3IgKGkgPSAwOyBp IDwgc2l6ZW9mKGRjdHgtPmQpOyBpKyspIHsKLSsgICAgICAgIGlmICgqcCAhPSAwKSB7Ci0rICAg ICAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19EUkJHX0VSUk9SX0NIRUNLLAotKyAgICAgICAg ICAgICAgICAgICAgRklQU19SX1VOSU5TVEFOVElBVEVfWkVST0lTRV9FUlJPUik7Ci0rICAgICAg ICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rICAgICAgICBwKys7Ci0rICAgIH0KLSsKLSsg ICAgcmV0dXJuIDE7Ci0rCi0rIGVycjoKLSsgICAgLyogQSByZWFsIGVycm9yIGFzIG9wcG9zZWQg dG8gYW4gaW5kdWNlZCBvbmU6IHVuZGVybHlpbmcgZnVuY3Rpb24gd2lsbAotKyAgICAgKiBpbmRp Y2F0ZSB0aGUgZXJyb3IuCi0rICAgICAqLwotKyAgICBpZiAoIShkY3R4LT5pZmxhZ3MgJiBEUkJH X0ZMQUdfTk9FUlIpKQotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19EUkJHX0VSUk9SX0NI RUNLLCBGSVBTX1JfRlVOQ1RJT05fRVJST1IpOwotKyAgICBGSVBTX2RyYmdfdW5pbnN0YW50aWF0 ZShkY3R4KTsKLSsgICAgcmV0dXJuIDA7Ci0rCi0rfQotKwotK2ludCBmaXBzX2RyYmdfa2F0KERS QkdfQ1RYICpkY3R4LCBpbnQgbmlkLCB1bnNpZ25lZCBpbnQgZmxhZ3MpCi0rewotKyAgICBEUkJH X1NFTEZURVNUX0RBVEEgKnRkOwotKyAgICBmbGFncyB8PSBEUkJHX0ZMQUdfVEVTVDsKLSsgICAg Zm9yICh0ZCA9IGRyYmdfdGVzdDsgdGQtPm5pZCAhPSAwOyB0ZCsrKSB7Ci0rICAgICAgICBpZiAo dGQtPm5pZCA9PSBuaWQgJiYgdGQtPmZsYWdzID09IGZsYWdzKSB7Ci0rICAgICAgICAgICAgaWYg KCFmaXBzX2RyYmdfc2luZ2xlX2thdChkY3R4LCB0ZCwgMCkpCi0rICAgICAgICAgICAgICAgIHJl dHVybiAwOwotKyAgICAgICAgICAgIHJldHVybiBmaXBzX2RyYmdfZXJyb3JfY2hlY2soZGN0eCwg dGQpOwotKyAgICAgICAgfQotKyAgICB9Ci0rICAgIHJldHVybiAwOwotK30KLSsKLStpbnQgRklQ U19kcmJnX2hlYWx0aF9jaGVjayhEUkJHX0NUWCAqZGN0eCkKLSt7Ci0rICAgIGludCBydjsKLSsg ICAgRFJCR19DVFggKnRjdHggPSBOVUxMOwotKyAgICB0Y3R4ID0gRklQU19kcmJnX25ldygwLCAw KTsKLSsgICAgZmlwc19wb3N0X3N0YXJ0ZWQoRklQU19URVNUX0RSQkcsIGRjdHgtPnR5cGUsICZk Y3R4LT54ZmxhZ3MpOwotKyAgICBpZiAoIXRjdHgpCi0rICAgICAgICByZXR1cm4gMDsKLSsgICAg cnYgPSBmaXBzX2RyYmdfa2F0KHRjdHgsIGRjdHgtPnR5cGUsIGRjdHgtPnhmbGFncyk7Ci0rICAg IGlmICh0Y3R4KQotKyAgICAgICAgRklQU19kcmJnX2ZyZWUodGN0eCk7Ci0rICAgIGlmIChydikK LSsgICAgICAgIGZpcHNfcG9zdF9zdWNjZXNzKEZJUFNfVEVTVF9EUkJHLCBkY3R4LT50eXBlLCAm ZGN0eC0+eGZsYWdzKTsKLSsgICAgZWxzZQotKyAgICAgICAgZmlwc19wb3N0X2ZhaWxlZChGSVBT X1RFU1RfRFJCRywgZGN0eC0+dHlwZSwgJmRjdHgtPnhmbGFncyk7Ci0rICAgIGlmICghcnYpCi0r ICAgICAgICBkY3R4LT5zdGF0dXMgPSBEUkJHX1NUQVRVU19FUlJPUjsKLSsgICAgZWxzZQotKyAg ICAgICAgZGN0eC0+aGVhbHRoX2NoZWNrX2NudCA9IDA7Ci0rICAgIHJldHVybiBydjsKLSt9Ci0r Ci0raW50IEZJUFNfc2VsZnRlc3RfZHJiZyh2b2lkKQotK3sKLSsgICAgRFJCR19DVFggKmRjdHg7 Ci0rICAgIERSQkdfU0VMRlRFU1RfREFUQSAqdGQ7Ci0rICAgIGludCBydiA9IDE7Ci0rICAgIGRj dHggPSBGSVBTX2RyYmdfbmV3KDAsIDApOwotKyAgICBpZiAoIWRjdHgpCi0rICAgICAgICByZXR1 cm4gMDsKLSsgICAgZm9yICh0ZCA9IGRyYmdfdGVzdDsgdGQtPm5pZCAhPSAwOyB0ZCsrKSB7Ci0r ICAgICAgICBpZiAodGQtPnBvc3QgIT0gMSkKLSsgICAgICAgICAgICBjb250aW51ZTsKLSsgICAg ICAgIGlmICghZmlwc19wb3N0X3N0YXJ0ZWQoRklQU19URVNUX0RSQkcsIHRkLT5uaWQsICZ0ZC0+ ZmxhZ3MpKQotKyAgICAgICAgICAgIHJldHVybiAxOwotKyAgICAgICAgaWYgKCFmaXBzX2RyYmdf c2luZ2xlX2thdChkY3R4LCB0ZCwgMSkpIHsKLSsgICAgICAgICAgICBmaXBzX3Bvc3RfZmFpbGVk KEZJUFNfVEVTVF9EUkJHLCB0ZC0+bmlkLCAmdGQtPmZsYWdzKTsKLSsgICAgICAgICAgICBydiA9 IDA7Ci0rICAgICAgICAgICAgY29udGludWU7Ci0rICAgICAgICB9Ci0rICAgICAgICBpZiAoIWZp cHNfcG9zdF9zdWNjZXNzKEZJUFNfVEVTVF9EUkJHLCB0ZC0+bmlkLCAmdGQtPmZsYWdzKSkKLSsg ICAgICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKyAgICBGSVBTX2RyYmdfZnJlZShkY3R4KTsK LSsgICAgcmV0dXJuIHJ2OwotK30KLSsKLStpbnQgRklQU19zZWxmdGVzdF9kcmJnX2FsbCh2b2lk KQotK3sKLSsgICAgRFJCR19DVFggKmRjdHg7Ci0rICAgIERSQkdfU0VMRlRFU1RfREFUQSAqdGQ7 Ci0rICAgIGludCBydiA9IDE7Ci0rICAgIGRjdHggPSBGSVBTX2RyYmdfbmV3KDAsIDApOwotKyAg ICBpZiAoIWRjdHgpCi0rICAgICAgICByZXR1cm4gMDsKLSsgICAgZm9yICh0ZCA9IGRyYmdfdGVz dDsgdGQtPm5pZCAhPSAwOyB0ZCsrKSB7Ci0rICAgICAgICBpZiAoIWZpcHNfcG9zdF9zdGFydGVk KEZJUFNfVEVTVF9EUkJHLCB0ZC0+bmlkLCAmdGQtPmZsYWdzKSkKLSsgICAgICAgICAgICByZXR1 cm4gMTsKLSsgICAgICAgIGlmICghZmlwc19kcmJnX3NpbmdsZV9rYXQoZGN0eCwgdGQsIDApKSB7 Ci0rICAgICAgICAgICAgZmlwc19wb3N0X2ZhaWxlZChGSVBTX1RFU1RfRFJCRywgdGQtPm5pZCwg JnRkLT5mbGFncyk7Ci0rICAgICAgICAgICAgcnYgPSAwOwotKyAgICAgICAgICAgIGNvbnRpbnVl OwotKyAgICAgICAgfQotKyAgICAgICAgaWYgKCFmaXBzX2RyYmdfZXJyb3JfY2hlY2soZGN0eCwg dGQpKSB7Ci0rICAgICAgICAgICAgZmlwc19wb3N0X2ZhaWxlZChGSVBTX1RFU1RfRFJCRywgdGQt Pm5pZCwgJnRkLT5mbGFncyk7Ci0rICAgICAgICAgICAgcnYgPSAwOwotKyAgICAgICAgICAgIGNv bnRpbnVlOwotKyAgICAgICAgfQotKyAgICAgICAgaWYgKCFmaXBzX3Bvc3Rfc3VjY2VzcyhGSVBT X1RFU1RfRFJCRywgdGQtPm5pZCwgJnRkLT5mbGFncykpCi0rICAgICAgICAgICAgcmV0dXJuIDA7 Ci0rICAgIH0KLSsgICAgRklQU19kcmJnX2ZyZWUoZGN0eCk7Ci0rICAgIHJldHVybiBydjsKLSt9 Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX2RyYmdfc2VsZnRlc3Qu aC5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfZHJiZ19zZWxmdGVzdC5oCi0t LS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kcmJnX3NlbGZ0ZXN0LmguZmlwcwky MDIxLTAzLTAzIDEyOjU3OjQyLjIwMDczNDUzNCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2Ny eXB0by9maXBzL2ZpcHNfZHJiZ19zZWxmdGVzdC5oCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAwNzM0 NTM0ICswMTAwCi1AQCAtMCwwICsxLDE3OTEgQEAKLSsvKiA9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotKyAqIENvcHly aWdodCAoYykgMjAxMSBUaGUgT3BlblNTTCBQcm9qZWN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4K LSsgKgotKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y bXMsIHdpdGggb3Igd2l0aG91dAotKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92 aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotKyAqIGFyZSBtZXQ6Ci0rICoKLSsg KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl IGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5v dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l ciBpbgotKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv dmlkZWQgd2l0aCB0aGUKLSsgKiAgICBkaXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBBbGwgYWR2 ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMKLSsg KiAgICBzb2Z0d2FyZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnbWVudDoK LSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUg T3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0LiAo aHR0cDovL3d3dy5vcGVuc3NsLm9yZy8pIgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJPcGVuU1NM IFRvb2xraXQiIGFuZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRvCi0rICog ICAgZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl IHdpdGhvdXQKLSsgKiAgICBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0dGVuIHBl cm1pc3Npb24sIHBsZWFzZSBjb250YWN0Ci0rICogICAgb3BlbnNzbC1jb3JlLm9yZy4KLSsgKgot KyAqIDUuIFByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIG1heSBub3QgYmUgY2Fs bGVkICJPcGVuU1NMIgotKyAqICAgIG5vciBtYXkgIk9wZW5TU0wiIGFwcGVhciBpbiB0aGVpciBu YW1lcyB3aXRob3V0IHByaW9yIHdyaXR0ZW4KLSsgKiAgICBwZXJtaXNzaW9uIG9mIHRoZSBPcGVu U1NMIFByb2plY3QuCi0rICoKLSsgKiA2LiBSZWRpc3RyaWJ1dGlvbnMgb2YgYW55IGZvcm0gd2hh dHNvZXZlciBtdXN0IHJldGFpbiB0aGUgZm9sbG93aW5nCi0rICogICAgYWNrbm93bGVkZ21lbnQ6 Ci0rICogICAgIlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhl IE9wZW5TU0wgUHJvamVjdAotKyAqICAgIGZvciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtpdCAo aHR0cDovL3d3dy5vcGVuc3NsLm9yZy8pIgotKyAqCi0rICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W SURFRCBCWSBUSEUgT3BlblNTTCBQUk9KRUNUIGBgQVMgSVMnJyBBTkQgQU5ZCi0rICogRVhQUkVT U0VEIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s IFRIRQotKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F U1MgRk9SIEEgUEFSVElDVUxBUgotKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBF VkVOVCBTSEFMTCBUSEUgT3BlblNTTCBQUk9KRUNUIE9SCi0rICogSVRTIENPTlRSSUJVVE9SUyBC RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotKyAqIFNQRUNJ QUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAot KyAqIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF UlZJQ0VTOwotKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ TlRFUlJVUFRJT04pCi0rICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB QklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULAotKyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSsgKiBBUklTSU5HIElOIEFO WSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VECi0r ICogT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotKyAqCi0rICovCi0rCi0rLyog U2VsZnRlc3QgYW5kIGhlYWx0aCBjaGVjayBkYXRhIGZvciB0aGUgU1A4MDAtOTAgRFJCRyAqLwot KwotKyNkZWZpbmUgX19maXBzX2NvbnN0c2VnCi0rCi0rLyogQUVTLTEyOCB1c2UgZGYgUFIgICov Ci0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xMjhfdXNl X2RmX3ByX2VudHJvcHlpbnB1dFtdID0gewotKyAgICAweDYxLCAweDUyLCAweDdjLCAweGUzLCAw eDIzLCAweDdkLCAweDBhLCAweDA3LCAweDEwLCAweDBjLCAweDUwLCAweDMzLAotKyAgICAweGM4 LCAweGRiLCAweGZmLCAweDEyCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF91c2VfZGZfcHJfbm9uY2VbXSA9IHsKLSsgICAgMHg1MSwg MHgwZCwgMHg4NSwgMHg3NywgMHhlZCwgMHgyMiwgMHg5NywgMHgyOAotK307Ci0rCi0rX19maXBz X2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xMjhfdXNlX2Rm X3ByX3BlcnNvbmFsaXphdGlvbnN0cmluZ1tdID0gewotKyAgICAweDU5LCAweDlmLCAweGJiLCAw eGNkLCAweGQ1LCAweDI1LCAweDY5LCAweGI1LCAweGNiLCAweGI1LCAweDAzLCAweGZlLAotKyAg ICAweGQ3LCAweGQ3LCAweDAxLCAweDY3Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcKLSsgICAg c3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF91c2VfZGZfcHJfYWRkaXRpb25hbGlu cHV0W10gPSB7Ci0rICAgIDB4ZWYsIDB4ODgsIDB4NzYsIDB4MDEsIDB4YWYsIDB4M2MsIDB4ZmUs IDB4OGIsIDB4YWYsIDB4MjYsIDB4MDYsIDB4OWUsCi0rICAgIDB4OWEsIDB4NDcsIDB4MDgsIDB4 NzYKLSt9OwotKwotK19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQg Y2hhciBhZXNfMTI4X3VzZV9kZl9wcl9lbnRyb3B5aW5wdXRwcltdID0gewotKyAgICAweGUyLCAw eDc2LCAweGY5LCAweGY2LCAweDNhLCAweGJhLCAweDEwLCAweDlmLCAweGJmLCAweDQ3LCAweDBl LCAweDUxLAotKyAgICAweDA5LCAweGZiLCAweGEzLCAweGI2Ci0rfTsKLSsKLStfX2ZpcHNfY29u c3RzZWcKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF91c2VfZGZfcHJf aW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAweGQ0LCAweDk4LCAweDhhLCAweDQ2LCAweDgw LCAweDRjLCAweGRiLCAweGEzLCAweDU5LCAweDAyLCAweDU3LCAweDUyLAotKyAgICAweDY2LCAw eDFjLCAweGVhLCAweDViCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcKLSsgICAgc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF91c2VfZGZfcHJfYWRkaXRpb25hbGlucHV0MltdID0g ewotKyAgICAweDg4LCAweDhjLCAweDkxLCAweGQ2LCAweGJlLCAweDU2LCAweDZlLCAweDA4LCAw eDlhLCAweDYyLCAweDJiLCAweDExLAotKyAgICAweDNmLCAweDVlLCAweDMxLCAweDA2Ci0rfTsK LSsKLStfX2ZpcHNfY29uc3RzZWcKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVz XzEyOF91c2VfZGZfcHJfZW50cm9weWlucHV0cHIyW10gPSB7Ci0rICAgIDB4YzAsIDB4NWMsIDB4 NmIsIDB4OTgsIDB4MDEsIDB4MGQsIDB4NTgsIDB4MTgsIDB4NTEsIDB4MTgsIDB4OTYsIDB4YWUs Ci0rICAgIDB4YTcsIDB4ZTMsIDB4YTgsIDB4NjcKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBz dGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTI4X3VzZV9kZl9wcl9yZXR1cm5lZGJpdHNb XSA9IHsKLSsgICAgMHhjZiwgMHgwMSwgMHhhYywgMHgyMiwgMHgzMSwgMHgwNiwgMHg4ZSwgMHhm YywgMHhjZSwgMHg1NiwgMHhlYSwgMHgyNCwKLSsgICAgMHgwZiwgMHgzOCwgMHg0MywgMHhjNgot K307Ci0rCi0rLyogQUVTLTEyOCB1c2UgZGYgTm8gUFIgICovCi0rX19maXBzX2NvbnN0c2VnIHN0 YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xMjhfdXNlX2RmX2VudHJvcHlpbnB1dFtdID0g ewotKyAgICAweDFmLCAweDhlLCAweDM0LCAweDgyLCAweDBjLCAweGI3LCAweGJlLCAweGM1LCAw eDAxLCAweDNlLCAweGQwLCAweGEzLAotKyAgICAweDlkLCAweDdkLCAweDFjLCAweDliCi0rfTsK LSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF91 c2VfZGZfbm9uY2VbXSA9IHsKLSsgICAgMHhkNSwgMHg0ZCwgMHhiZCwgMHg0YSwgMHg5MywgMHg3 ZiwgMHhiOCwgMHg5NgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25z dCB1bnNpZ25lZCBjaGFyIGFlc18xMjhfdXNlX2RmX3BlcnNvbmFsaXphdGlvbnN0cmluZ1tdID0g ewotKyAgICAweGFiLCAweGQ2LCAweDNmLCAweDA0LCAweGZlLCAweDI3LCAweDZiLCAweDJkLCAw eGQ3LCAweGMzLCAweDFjLCAweGYzLAotKyAgICAweDM4LCAweDY2LCAweGJhLCAweDFiCi0rfTsK LSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF91 c2VfZGZfYWRkaXRpb25hbGlucHV0W10gPSB7Ci0rICAgIDB4ZmUsIDB4ZjQsIDB4MDksIDB4YTgs IDB4YjcsIDB4NzMsIDB4MjcsIDB4OWMsIDB4NWYsIDB4YTcsIDB4ZWEsIDB4NDYsCi0rICAgIDB4 YjUsIDB4ZTIsIDB4YjIsIDB4NDEKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29u c3QgdW5zaWduZWQgY2hhciBhZXNfMTI4X3VzZV9kZl9pbnRfcmV0dXJuZWRiaXRzW10gPSB7Ci0r ICAgIDB4NDIsIDB4ZTQsIDB4NGUsIDB4N2IsIDB4MjcsIDB4ZGQsIDB4Y2IsIDB4YmMsIDB4MGEs IDB4Y2YsIDB4YTYsIDB4NjcsCi0rICAgIDB4ZTcsIDB4NTcsIDB4MTEsIDB4YjQKLSt9OwotKwot K19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTI4 X3VzZV9kZl9lbnRyb3B5aW5wdXRyZXNlZWRbXSA9IHsKLSsgICAgMHgxNCwgMHgyNiwgMHg2OSwg MHhkOSwgMHhmMywgMHg2NSwgMHgwMywgMHhkNiwgMHg2YiwgMHhiOSwgMHg0NCwgMHgwYiwKLSsg ICAgMHhjNywgMHhjNCwgMHg5ZSwgMHgzOQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAg IHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xMjhfdXNlX2RmX2FkZGl0aW9uYWxpbnB1 dHJlc2VlZFtdID0gewotKyAgICAweDU1LCAweDJlLCAweDYwLCAweDlhLCAweDA1LCAweDcyLCAw eDhhLCAweGE4LCAweGVmLCAweDIyLCAweDgxLCAweDVhLAotKyAgICAweGM4LCAweDkzLCAweGZh LCAweDg0Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo YXIgYWVzXzEyOF91c2VfZGZfYWRkaXRpb25hbGlucHV0MltdID0gewotKyAgICAweDNjLCAweDQw LCAweGM4LCAweGM0LCAweDE2LCAweDBjLCAweDIxLCAweGE0LCAweDM3LCAweDJjLCAweDhmLCAw eGE1LAotKyAgICAweDA2LCAweDBjLCAweDE1LCAweDJjCi0rfTsKLSsKLStfX2ZpcHNfY29uc3Rz ZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF91c2VfZGZfcmV0dXJuZWRiaXRz W10gPSB7Ci0rICAgIDB4ZTEsIDB4M2UsIDB4OTksIDB4OTgsIDB4ODYsIDB4NjcsIDB4MGIsIDB4 NjMsIDB4N2IsIDB4YmUsIDB4M2YsIDB4ODgsCi0rICAgIDB4NDYsIDB4ODEsIDB4YzcsIDB4MTkK LSt9OwotKwotKy8qIEFFUy0xOTIgdXNlIGRmIFBSICAqLwotK19fZmlwc19jb25zdHNlZyBzdGF0 aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTkyX3VzZV9kZl9wcl9lbnRyb3B5aW5wdXRbXSA9 IHsKLSsgICAgMHgyYiwgMHg0ZSwgMHg4YiwgMHhlMSwgMHhmMSwgMHgzNCwgMHg4MCwgMHg1Niwg MHg4MSwgMHhmOSwgMHg3NCwgMHhlYywKLSsgICAgMHgxNywgMHg0NCwgMHgyYSwgMHhmMSwgMHgx NCwgMHhiMCwgMHhiZiwgMHg5NywgMHgzOSwgMHhiNywgMHgwNCwgMHg3ZAotK307Ci0rCi0rX19m aXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xOTJfdXNlX2RmX3By X25vbmNlW10gPSB7Ci0rICAgIDB4ZDYsIDB4OWQsIDB4ZWIsIDB4MTQsIDB4NGUsIDB4NmMsIDB4 MzAsIDB4MWUsIDB4MzksIDB4NTUsIDB4NzMsIDB4ZDAsCi0rICAgIDB4ZDEsIDB4ODAsIDB4Nzgs IDB4ZmEKLSt9OwotKwotK19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWdu ZWQgY2hhciBhZXNfMTkyX3VzZV9kZl9wcl9wZXJzb25hbGl6YXRpb25zdHJpbmdbXSA9IHsKLSsg ICAgMHhmYywgMHg0MywgMHg0YSwgMHhmOCwgMHg5YSwgMHg1NSwgMHhiMywgMHg1MywgMHg4Mywg MHhlMiwgMHgxOCwgMHgxNiwKLSsgICAgMHgwYywgMHhkYywgMHhjZCwgMHg1ZSwgMHg0ZiwgMHhh MCwgMHgwMywgMHgwMSwgMHgyYiwgMHg5ZiwgMHhlNCwgMHhkNSwKLSsgICAgMHg3ZCwgMHg0OSwg MHhmMCwgMHg0MSwgMHg5ZSwgMHgzZCwgMHg5OSwgMHgwNAotK307Ci0rCi0rX19maXBzX2NvbnN0 c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xOTJfdXNlX2RmX3ByX2Fk ZGl0aW9uYWxpbnB1dFtdID0gewotKyAgICAweDVlLCAweDlmLCAweDQ5LCAweDZmLCAweDIxLCAw eDhiLCAweDFkLCAweDMyLCAweGQ1LCAweDg0LCAweDVjLCAweGFjLAotKyAgICAweGFmLCAweGRm LCAweGU0LCAweDc5LCAweDllLCAweGFmLCAweGE5LCAweDgyLCAweGQwLCAweGY4LCAweDRmLCAw eGNiLAotKyAgICAweDY5LCAweDEwLCAweDBhLCAweDdlLCAweDgxLCAweDU3LCAweGI1LCAweDM2 Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo YXIgYWVzXzE5Ml91c2VfZGZfcHJfZW50cm9weWlucHV0cHJbXSA9IHsKLSsgICAgMHhkNCwgMHg4 MSwgMHgwYywgMHhkNywgMHg2NiwgMHgzOSwgMHhlYywgMHg0MiwgMHg1MywgMHg4NywgMHg0MSwg MHhhNSwKLSsgICAgMHgxZSwgMHg3ZCwgMHg4MCwgMHg5MSwgMHg4ZSwgMHhiYiwgMHhlZCwgMHhh YywgMHgxNCwgMHgwMiwgMHgxYSwgMHhkNQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAg IHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xOTJfdXNlX2RmX3ByX2ludF9yZXR1cm5l ZGJpdHNbXSA9IHsKLSsgICAgMHhkZiwgMHgxZCwgMHgzOSwgMHg0NSwgMHg3YywgMHg5YiwgMHhj NiwgMHgyYiwgMHg3ZCwgMHg4YywgMHg5MywgMHhlOSwKLSsgICAgMHgxOSwgMHgzMCwgMHg2Yiwg MHg2NwotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIGFlc18xOTJfdXNlX2RmX3ByX2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHgw MCwgMHg3MSwgMHgyNywgMHg0ZSwgMHhkMywgMHgxNCwgMHhmMSwgMHgyMCwgMHg3ZiwgMHg0YSwg MHg0MSwgMHgzMiwKLSsgICAgMHgyYSwgMHg5NywgMHgxMSwgMHg0MywgMHg4ZiwgMHg0YSwgMHgx NSwgMHg3YiwgMHg5YiwgMHg1MSwgMHg3OSwgMHhkYSwKLSsgICAgMHg0OSwgMHgzZCwgMHhkZSwg MHhlOCwgMHhiYywgMHg5MywgMHg5MSwgMHg5OQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0r ICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xOTJfdXNlX2RmX3ByX2VudHJvcHlp bnB1dHByMltdID0gewotKyAgICAweDkwLCAweGVlLCAweDc2LCAweGExLCAweDQ1LCAweDhkLCAw eGI3LCAweDQwLCAweGIwLCAweDExLCAweGJmLCAweGQwLAotKyAgICAweDY1LCAweGQ3LCAweDNj LCAweDdjLCAweDRmLCAweDIwLCAweDNmLCAweDRlLCAweDExLCAweDlkLCAweGIzLCAweDVlCi0r fTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzE5 Ml91c2VfZGZfcHJfcmV0dXJuZWRiaXRzW10gPSB7Ci0rICAgIDB4MjQsIDB4M2IsIDB4MjAsIDB4 YTQsIDB4MzcsIDB4NjYsIDB4YmEsIDB4NzIsIDB4MzksIDB4M2YsIDB4Y2YsIDB4M2MsCi0rICAg IDB4N2UsIDB4MWEsIDB4MmIsIDB4ODMKLSt9OwotKwotKy8qIEFFUy0xOTIgdXNlIGRmIE5vIFBS ICAqLwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTky X3VzZV9kZl9lbnRyb3B5aW5wdXRbXSA9IHsKLSsgICAgMHg4ZCwgMHg3NCwgMHhhNCwgMHg1MCwg MHgxYSwgMHgwMiwgMHg2OCwgMHgwYywgMHgyYSwgMHg2OSwgMHhjNCwgMHg4MiwKLSsgICAgMHgz YiwgMHhiYiwgMHhkYSwgMHgwZSwgMHg3ZiwgMHg3NywgMHhhMywgMHgxNywgMHg3OCwgMHg1Nywg MHhiMiwgMHg3YgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIGFlc18xOTJfdXNlX2RmX25vbmNlW10gPSB7Ci0rICAgIDB4NzUsIDB4ZDUsIDB4MWYs IDB4YWMsIDB4YTQsIDB4OGQsIDB4NDIsIDB4NzgsIDB4ZDcsIDB4NjksIDB4ODYsIDB4OWQsCi0r ICAgIDB4NzcsIDB4ZDcsIDB4NDEsIDB4MGUKLSt9OwotKwotK19fZmlwc19jb25zdHNlZwotKyAg ICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTkyX3VzZV9kZl9wZXJzb25hbGl6YXRp b25zdHJpbmdbXSA9IHsKLSsgICAgMHg0ZSwgMHgzMywgMHg0MSwgMHgzYywgMHg5YywgMHhjMiwg MHhkMiwgMHg1MywgMHhhZiwgMHg5MCwgMHhlYSwgMHhjZiwKLSsgICAgMHgxOSwgMHg1MCwgMHgx ZSwgMHhlNiwgMHg2ZiwgMHg2MywgMHhjOCwgMHgzMiwgMHgyMiwgMHhkYywgMHgwNywgMHg2NSwK LSsgICAgMHg5YywgMHhkMywgMHhmOCwgMHgzMCwgMHg5ZSwgMHhlZCwgMHgzNSwgMHg3MAotK307 Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xOTJf dXNlX2RmX2FkZGl0aW9uYWxpbnB1dFtdID0gewotKyAgICAweDVkLCAweDhiLCAweDhjLCAweGMx LCAweGRmLCAweDBlLCAweDAyLCAweDc4LCAweGZiLCAweDE5LCAweGI4LCAweDY5LAotKyAgICAw eDc4LCAweDRlLCAweDljLCAweDUyLCAweGJjLCAweGM3LCAweDIwLCAweGM5LCAweGU2LCAweDVl LCAweDc3LCAweDIyLAotKyAgICAweDI4LCAweDNkLCAweDBjLCAweDllLCAweDY4LCAweGE4LCAw eDQ1LCAweGQ3Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgYWVzXzE5Ml91c2VfZGZfaW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAweGQ1LCAw eGU3LCAweDA4LCAweGM1LCAweDE5LCAweDk5LCAweGQ1LCAweDMxLCAweDAzLCAweDBhLCAweDc0 LCAweGI2LAotKyAgICAweGI3LCAweGVkLCAweGU5LCAweGVhCi0rfTsKLSsKLStfX2ZpcHNfY29u c3RzZWcKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzE5Ml91c2VfZGZfZW50 cm9weWlucHV0cmVzZWVkW10gPSB7Ci0rICAgIDB4OWMsIDB4MjYsIDB4ZGEsIDB4ZjEsIDB4YWMs IDB4ZDksIDB4NWEsIDB4ZDYsIDB4YTgsIDB4NjUsIDB4ZjUsIDB4MDIsCi0rICAgIDB4OGYsIDB4 ZGMsIDB4YTIsIDB4MDksIDB4NTQsIDB4YTYsIDB4ZTIsIDB4YTQsIDB4ZGUsIDB4MzIsIDB4ZTAs IDB4MDEKLSt9OwotKwotK19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWdu ZWQgY2hhciBhZXNfMTkyX3VzZV9kZl9hZGRpdGlvbmFsaW5wdXRyZXNlZWRbXSA9IHsKLSsgICAg MHg5YiwgMHg5MCwgMHhiMCwgMHgzYSwgMHgwZSwgMHgzYSwgMHg4MCwgMHgwNywgMHg0YSwgMHhm NCwgMHhkYSwgMHg3NiwKLSsgICAgMHgyOCwgMHgzMCwgMHgzYywgMHhlZSwgMHg1NCwgMHgxYiwg MHg5NCwgMHg1OSwgMHg1MSwgMHg0MywgMHg1NiwgMHg3NywKLSsgICAgMHhhZiwgMHg4OCwgMHhk ZCwgMHg2MywgMHg4OSwgMHg0NywgMHgwNiwgMHg2NQotK307Ci0rCi0rX19maXBzX2NvbnN0c2Vn IHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xOTJfdXNlX2RmX2FkZGl0aW9uYWxpbnB1 dDJbXSA9IHsKLSsgICAgMHgzYywgMHgxMSwgMHg2NCwgMHg3YSwgMHg5NiwgMHhmNSwgMHhkOCwg MHhiOCwgMHhhZSwgMHhkNiwgMHg3MCwgMHg0ZSwKLSsgICAgMHgxNiwgMHg5NiwgMHhkZSwgMHhl OSwgMHg2MiwgMHhiYywgMHhlZSwgMHgyOCwgMHgyZiwgMHgyNiwgMHhhNiwgMHhmMCwKLSsgICAg MHg1NiwgMHhlZiwgMHhhMywgMHhmMSwgMHg2YiwgMHhhMSwgMHhiMSwgMHg3NwotK307Ci0rCi0r X19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xOTJfdXNlX2Rm X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDBiLCAweGUyLCAweDU2LCAweDAzLCAweDFlLCAw eGRiLCAweDJjLCAweDZkLCAweDdmLCAweDFiLCAweDE1LCAweDU4LAotKyAgICAweDFhLCAweGY5 LCAweDEzLCAweDI4Ci0rfTsKLSsKLSsvKiBBRVMtMjU2IHVzZSBkZiBQUiAgKi8KLStfX2ZpcHNf Y29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzI1Nl91c2VfZGZfcHJfZW50 cm9weWlucHV0W10gPSB7Ci0rICAgIDB4NjEsIDB4NjgsIDB4ZmMsIDB4MWEsIDB4ZjAsIDB4YjUs IDB4OTUsIDB4NmIsIDB4ODUsIDB4MDksIDB4OWIsIDB4NzQsCi0rICAgIDB4M2YsIDB4MTMsIDB4 NzgsIDB4NDksIDB4M2IsIDB4ODUsIDB4ZWMsIDB4OTMsIDB4MTMsIDB4M2IsIDB4YTksIDB4NGYs Ci0rICAgIDB4OTYsIDB4YWIsIDB4MmMsIDB4ZTQsIDB4YzgsIDB4OGYsIDB4ZGQsIDB4NmEKLSt9 OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMjU2 X3VzZV9kZl9wcl9ub25jZVtdID0gewotKyAgICAweGFkLCAweGQyLCAweGJiLCAweGJhLCAweGI3 LCAweDY1LCAweDg5LCAweGMzLCAweDIxLCAweDZjLCAweDU1LCAweDMzLAotKyAgICAweDJiLCAw eDM2LCAweGZmLCAweGE0Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcKLSsgICAgc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIgYWVzXzI1Nl91c2VfZGZfcHJfcGVyc29uYWxpemF0aW9uc3RyaW5n W10gPSB7Ci0rICAgIDB4NmUsIDB4Y2EsIDB4ZTcsIDB4MjAsIDB4NzIsIDB4ZDMsIDB4ODQsIDB4 NWEsIDB4MzIsIDB4ZDMsIDB4NGIsIDB4MjQsCi0rICAgIDB4NzIsIDB4YzQsIDB4NjMsIDB4MmIs IDB4OWQsIDB4MTIsIDB4MjQsIDB4MGMsIDB4MjMsIDB4MjYsIDB4OGUsIDB4ODMsCi0rICAgIDB4 MTYsIDB4MzcsIDB4MGIsIDB4ZDEsIDB4MDYsIDB4NGYsIDB4NjgsIDB4NmQKLSt9OwotKwotK19f Zmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMjU2X3Vz ZV9kZl9wcl9hZGRpdGlvbmFsaW5wdXRbXSA9IHsKLSsgICAgMHg3ZSwgMHgwOCwgMHg0YSwgMHhi YiwgMHhlMywgMHgyMSwgMHg3YywgMHhjOSwgMHgyMywgMHhkMiwgMHhmOCwgMHhiMCwKLSsgICAg MHg3MywgMHg5OCwgMHhiYSwgMHg4NCwgMHg3NCwgMHgyMywgMHhhYiwgMHgwNiwgMHg4YSwgMHhl MiwgMHgyMiwgMHhkMywKLSsgICAgMHg3YiwgMHhjZSwgMHg5YiwgMHhkMiwgMHg0YSwgMHg3Niwg MHhiOCwgMHhkZQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1 bnNpZ25lZCBjaGFyIGFlc18yNTZfdXNlX2RmX3ByX2VudHJvcHlpbnB1dHByW10gPSB7Ci0rICAg IDB4MGIsIDB4MjMsIDB4YWYsIDB4ZGYsIDB4ZjEsIDB4NjIsIDB4ZDcsIDB4ZDMsIDB4NDMsIDB4 OTcsIDB4ZjgsIDB4NzcsCi0rICAgIDB4MDQsIDB4YTgsIDB4NDIsIDB4MjAsIDB4YmQsIDB4ZjYs IDB4MGYsIDB4YzEsIDB4MTcsIDB4MmYsIDB4OWYsIDB4NTQsCi0rICAgIDB4YmIsIDB4NTYsIDB4 MTcsIDB4ODYsIDB4NjgsIDB4MGUsIDB4YmEsIDB4YTkKLSt9OwotKwotK19fZmlwc19jb25zdHNl ZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMjU2X3VzZV9kZl9wcl9pbnRf cmV0dXJuZWRiaXRzW10gPSB7Ci0rICAgIDB4MzEsIDB4OGUsIDB4YWQsIDB4YWYsIDB4NDAsIDB4 ZWIsIDB4NmIsIDB4NzQsIDB4MzEsIDB4NDYsIDB4ODAsIDB4YzcsCi0rICAgIDB4MTcsIDB4YWIs IDB4M2MsIDB4N2EKLSt9OwotKwotK19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3Qg dW5zaWduZWQgY2hhciBhZXNfMjU2X3VzZV9kZl9wcl9hZGRpdGlvbmFsaW5wdXQyW10gPSB7Ci0r ICAgIDB4OTQsIDB4NmIsIDB4YzksIDB4OWYsIDB4YWIsIDB4OGQsIDB4YzUsIDB4ZWMsIDB4NzEs IDB4ODgsIDB4MWQsIDB4MDAsCi0rICAgIDB4OGMsIDB4ODksIDB4NjgsIDB4ZTQsIDB4YzgsIDB4 MDcsIDB4NzcsIDB4MzYsIDB4MTcsIDB4NmQsIDB4NzksIDB4NzgsCi0rICAgIDB4YzcsIDB4MDYs IDB4NGUsIDB4OTksIDB4MDQsIDB4MjgsIDB4MjksIDB4YzMKLSt9OwotKwotK19fZmlwc19jb25z dHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMjU2X3VzZV9kZl9wcl9l bnRyb3B5aW5wdXRwcjJbXSA9IHsKLSsgICAgMHhiZiwgMHg2YywgMHg1OSwgMHgyYSwgMHgwZCwg MHg0NCwgMHgwZiwgMHhhZSwgMHg5YSwgMHg1ZSwgMHgwMywgMHg3MywKLSsgICAgMHhkOCwgMHhh NiwgMHhlMSwgMHhjZiwgMHgyNSwgMHg2MSwgMHgzOCwgMHgyNCwgMHg4NiwgMHg5ZSwgMHg1Mywg MHhlOCwKLSsgICAgMHhhNCwgMHhkZiwgMHg1NiwgMHhmNCwgMHgwNiwgMHgwNywgMHg5YywgMHgw ZgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFl c18yNTZfdXNlX2RmX3ByX3JldHVybmVkYml0c1tdID0gewotKyAgICAweDIyLCAweDRhLCAweGI0 LCAweGI4LCAweGI2LCAweGVlLCAweDdkLCAweGIxLCAweDllLCAweGM5LCAweGY5LCAweGEwLAot KyAgICAweGQ5LCAweGUyLCAweDk3LCAweDAwCi0rfTsKLSsKLSsvKiBBRVMtMjU2IHVzZSBkZiBO byBQUiAgKi8KLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVz XzI1Nl91c2VfZGZfZW50cm9weWlucHV0W10gPSB7Ci0rICAgIDB4YTUsIDB4M2UsIDB4MzcsIDB4 MTAsIDB4MTcsIDB4NDMsIDB4OTEsIDB4OTMsIDB4NTksIDB4MWUsIDB4NDcsIDB4NTAsCi0rICAg IDB4ODcsIDB4YWEsIDB4ZGQsIDB4ZDUsIDB4YzEsIDB4YzMsIDB4ODYsIDB4Y2QsIDB4Y2EsIDB4 MGQsIDB4ZGIsIDB4NjgsCi0rICAgIDB4ZTAsIDB4MDIsIDB4ZDgsIDB4MGYsIDB4ZGMsIDB4NDAs IDB4MWEsIDB4NDcKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWdu ZWQgY2hhciBhZXNfMjU2X3VzZV9kZl9ub25jZVtdID0gewotKyAgICAweGE5LCAweDRkLCAweGE1 LCAweDVhLCAweGZkLCAweGM1LCAweDBjLCAweGU1LCAweDFjLCAweDlhLCAweDNiLCAweDhhLAot KyAgICAweDRjLCAweDQ0LCAweDg0LCAweDQwCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcKLSsg ICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzI1Nl91c2VfZGZfcGVyc29uYWxpemF0 aW9uc3RyaW5nW10gPSB7Ci0rICAgIDB4OGIsIDB4NTIsIDB4YTIsIDB4NGEsIDB4OTMsIDB4YzMs IDB4NGUsIDB4YTcsIDB4MWUsIDB4MWMsIDB4YTcsIDB4MDUsCi0rICAgIDB4ZWIsIDB4ODIsIDB4 OWIsIDB4YTYsIDB4NWQsIDB4ZTQsIDB4ZDQsIDB4ZTAsIDB4N2YsIDB4YTMsIDB4ZDgsIDB4NmIs Ci0rICAgIDB4MzcsIDB4ODQsIDB4NWYsIDB4ZjEsIDB4YzcsIDB4ZDUsIDB4ZjYsIDB4ZDIKLSt9 OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMjU2 X3VzZV9kZl9hZGRpdGlvbmFsaW5wdXRbXSA9IHsKLSsgICAgMHgyMCwgMHhmNCwgMHgyMiwgMHhl ZCwgMHhmOCwgMHg1YywgMHhhMSwgMHg2YSwgMHgwMSwgMHhjZiwgMHhiZSwgMHg1ZiwKLSsgICAg MHg4ZCwgMHg2YywgMHg5NCwgMHg3ZiwgMHhhZSwgMHgxMiwgMHhhOCwgMHg1NywgMHhkYiwgMHgy YSwgMHhhOSwgMHhiZiwKLSsgICAgMHhjNywgMHhiMywgMHg2NSwgMHg4MSwgMHg4MCwgMHg4ZCwg MHgwZCwgMHg0NgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIGFlc18yNTZfdXNlX2RmX2ludF9yZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHg0ZSwg MHg0NCwgMHhmZCwgMHhmMywgMHg5ZSwgMHgyOSwgMHhhMiwgMHhiOCwgMHgwZiwgMHg1ZCwgMHg2 YywgMHhlMSwKLSsgICAgMHgyOCwgMHgwYywgMHgzYiwgMHhjMQotK307Ci0rCi0rX19maXBzX2Nv bnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18yNTZfdXNlX2RmX2Vu dHJvcHlpbnB1dHJlc2VlZFtdID0gewotKyAgICAweGRkLCAweDQwLCAweGU1LCAweDk4LCAweDdi LCAweDI3LCAweDE2LCAweDczLCAweDE1LCAweDY4LCAweGQyLCAweDc2LAotKyAgICAweGJmLCAw eDBjLCAweDY3LCAweDE1LCAweDc1LCAweDc5LCAweDAzLCAweGQzLCAweGRlLCAweGRlLCAweDkx LCAweDQ2LAotKyAgICAweDQyLCAweGRkLCAweGQ0LCAweDY3LCAweGM4LCAweDc5LCAweGM4LCAw eDFlCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgYWVzXzI1Nl91c2VfZGZfYWRkaXRpb25hbGlucHV0cmVzZWVkW10gPSB7Ci0rICAgIDB4 N2YsIDB4ZDgsIDB4MWYsIDB4YmQsIDB4MmEsIDB4YjUsIDB4MWMsIDB4MTEsIDB4NWQsIDB4ODMs IDB4NGUsIDB4OTksCi0rICAgIDB4ZjYsIDB4NWMsIDB4YTUsIDB4NDAsIDB4MjAsIDB4ZWQsIDB4 MzgsIDB4OGUsIDB4ZDUsIDB4OWUsIDB4ZTAsIDB4NzUsCi0rICAgIDB4OTMsIDB4ZmUsIDB4MTIs IDB4NWUsIDB4NWQsIDB4NzMsIDB4ZmIsIDB4NzUKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBz dGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMjU2X3VzZV9kZl9hZGRpdGlvbmFsaW5wdXQy W10gPSB7Ci0rICAgIDB4Y2QsIDB4MmMsIDB4ZmYsIDB4MTQsIDB4NjksIDB4M2UsIDB4NGMsIDB4 OWUsIDB4ZmQsIDB4ZmUsIDB4MjYsIDB4MGQsCi0rICAgIDB4ZTksIDB4ODYsIDB4MDAsIDB4NDks IDB4MzAsIDB4YmEsIDB4YjEsIDB4YzYsIDB4NTAsIDB4NTcsIDB4NzcsIDB4MmEsCi0rICAgIDB4 NjIsIDB4MzksIDB4MmMsIDB4M2IsIDB4NzQsIDB4ZWIsIDB4YzksIDB4MGQKLSt9OwotKwotK19f Zmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMjU2X3VzZV9kZl9y ZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHg0ZiwgMHg3OCwgMHhiZSwgMHhiOSwgMHg0ZCwgMHg5 NywgMHg4YywgMHhlOSwgMHhkMCwgMHg5NywgMHhmZSwgMHhhZCwKLSsgICAgMHhmYSwgMHhmZCwg MHgzNSwgMHg1ZQotK307Ci0rCi0rLyogQUVTLTEyOCBubyBkZiBQUiAgKi8KLStfX2ZpcHNfY29u c3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF9ub19kZl9wcl9lbnRyb3B5 aW5wdXRbXSA9IHsKLSsgICAgMHg5YSwgMHgyNSwgMHg2NSwgMHgxMCwgMHg2NywgMHhkNSwgMHhi NiwgMHg2YiwgMHg3MCwgMHhhMSwgMHhiMywgMHhhNCwKLSsgICAgMHg0MywgMHg5NSwgMHg4MCwg MHhjMCwgMHg4NCwgMHgwYSwgMHg3OSwgMHhiMCwgMHg4OCwgMHg3NCwgMHhmMiwgMHhiZiwKLSsg ICAgMHgzMSwgMHg2YywgMHgzMywgMHgzOCwgMHgwYiwgMHgwMCwgMHhiMiwgMHg1YQotK307Ci0r Ci0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xMjhfbm9f ZGZfcHJfbm9uY2VbXSA9IHsKLSsgICAgMHg3OCwgMHg0NywgMHg2YiwgMHhmNywgMHg5MCwgMHg4 ZSwgMHg4NywgMHhmMQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25z dCB1bnNpZ25lZCBjaGFyIGFlc18xMjhfbm9fZGZfcHJfcGVyc29uYWxpemF0aW9uc3RyaW5nW10g PSB7Ci0rICAgIDB4ZjcsIDB4MjIsIDB4MWQsIDB4M2EsIDB4YmUsIDB4MWQsIDB4Y2EsIDB4MzIs IDB4MWIsIDB4YmQsIDB4ODcsIDB4MGMsCi0rICAgIDB4NTEsIDB4MjQsIDB4MTksIDB4ZWUsIDB4 YTMsIDB4MjMsIDB4MDksIDB4NjMsIDB4MzMsIDB4M2QsIDB4YTgsIDB4MGMsCi0rICAgIDB4MWMs IDB4ZmEsIDB4NDIsIDB4ODksIDB4Y2MsIDB4NmYsIDB4YTAsIDB4YTgKLSt9OwotKwotK19fZmlw c19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTI4X25vX2Rm X3ByX2FkZGl0aW9uYWxpbnB1dFtdID0gewotKyAgICAweGM5LCAweGUwLCAweDgwLCAweGJmLCAw eDhjLCAweDQ1LCAweDU4LCAweDM5LCAweGZmLCAweDAwLCAweGFiLCAweDAyLAotKyAgICAweDRj LCAweDNlLCAweDNhLCAweDk1LCAweDliLCAweDgwLCAweGE4LCAweDIxLCAweDJhLCAweGVlLCAw eGJhLCAweDczLAotKyAgICAweGIxLCAweGQ5LCAweGNmLCAweDI4LCAweGY2LCAweDhmLCAweDli LCAweDEyCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo YXIgYWVzXzEyOF9ub19kZl9wcl9lbnRyb3B5aW5wdXRwcltdID0gewotKyAgICAweDRjLCAweGE4 LCAweGM1LCAweGYwLCAweDU5LCAweDllLCAweGE2LCAweDhkLCAweDI2LCAweDUzLCAweGQ3LCAw eDhhLAotKyAgICAweGE5LCAweGQ4LCAweGY3LCAweGVkLCAweGIyLCAweGY5LCAweDEyLCAweDQy LCAweGUxLCAweGU1LCAweGJkLCAweGU3LAotKyAgICAweGU3LCAweDFkLCAweDc0LCAweDk5LCAw eDAwLCAweDlkLCAweDMxLCAweDNlCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcKLSsgICAgc3Rh dGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF9ub19kZl9wcl9pbnRfcmV0dXJuZWRiaXRz W10gPSB7Ci0rICAgIDB4ZTIsIDB4YWMsIDB4MjAsIDB4ZjAsIDB4ODAsIDB4ZTcsIDB4YmMsIDB4 N2UsIDB4OWMsIDB4N2IsIDB4NjUsIDB4NzEsCi0rICAgIDB4YWYsIDB4MTksIDB4MzIsIDB4MTYK LSt9OwotKwotK19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh ciBhZXNfMTI4X25vX2RmX3ByX2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHgzMiwgMHg3 ZiwgMHgzOCwgMHg4YiwgMHg3MywgMHgwYSwgMHg3OCwgMHg4MywgMHhkYywgMHgzMCwgMHhiZSwg MHg5ZiwKLSsgICAgMHgxMCwgMHgxZiwgMHhmNSwgMHgxZiwgMHhjYSwgMHgwMCwgMHhiNSwgMHgw ZCwgMHhkNiwgMHg5ZCwgMHg2MCwgMHg4MywKLSsgICAgMHg1MSwgMHg1NCwgMHg3ZCwgMHgzOCwg MHgyMywgMHgzYSwgMHg1MiwgMHg1MAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0 YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xMjhfbm9fZGZfcHJfZW50cm9weWlucHV0cHIy W10gPSB7Ci0rICAgIDB4MTgsIDB4NjEsIDB4NTMsIDB4NTYsIDB4ZWQsIDB4ZWQsIDB4ZDcsIDB4 MjAsIDB4ZmIsIDB4NzEsIDB4MDQsIDB4N2EsCi0rICAgIDB4YjIsIDB4YWMsIDB4YzEsIDB4Mjgs IDB4Y2QsIDB4ZjIsIDB4YzIsIDB4ZmMsIDB4YWEsIDB4YjEsIDB4MDYsIDB4MDcsCi0rICAgIDB4 ZTksIDB4NDYsIDB4OTUsIDB4MDIsIDB4NDgsIDB4MDEsIDB4NzgsIDB4ZjkKLSt9OwotKwotK19f Zmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTI4X25vX2RmX3By X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDI5LCAweGM4LCAweDFiLCAweDE1LCAweGIxLCAw eGQxLCAweGMyLCAweGY2LCAweDcxLCAweDg2LCAweDY4LCAweDMzLAotKyAgICAweDU3LCAweDgy LCAweDMzLCAweGFmCi0rfTsKLSsKLSsvKiBBRVMtMTI4IG5vIGRmIE5vIFBSICAqLwotK19fZmlw c19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTI4X25vX2RmX2VudHJv cHlpbnB1dFtdID0gewotKyAgICAweGM5LCAweGM1LCAweDc5LCAweGJjLCAweGU4LCAweGM1LCAw eDE5LCAweGQ4LCAweGJjLCAweDY2LCAweDczLCAweDY3LAotKyAgICAweGY2LCAweGQzLCAweDcy LCAweGFhLCAweGE2LCAweDE2LCAweGI4LCAweDUwLCAweGI3LCAweDQ3LCAweDNhLCAweDQyLAot KyAgICAweGFiLCAweGY0LCAweDE2LCAweGIyLCAweDk2LCAweGQyLCAweGI2LCAweDYwCi0rfTsK LSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF9u b19kZl9ub25jZVtdID0gewotKyAgICAweDVmLCAweGJmLCAweDk3LCAweDBjLCAweDRiLCAweGE0 LCAweDg3LCAweDEzCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcKLSsgICAgc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgYWVzXzEyOF9ub19kZl9wZXJzb25hbGl6YXRpb25zdHJpbmdbXSA9IHsK LSsgICAgMHhjZSwgMHhmYiwgMHg3YiwgMHgzZiwgMHhkNCwgMHg2YiwgMHgyOSwgMHgwZCwgMHg2 OSwgMHgwNiwgMHhmZiwgMHhiYiwKLSsgICAgMHhmMiwgMHhlNSwgMHhjNiwgMHg2YywgMHgwYSwg MHgxMCwgMHhhMCwgMHhjZiwgMHgxYSwgMHg0OCwgMHhjNywgMHg4YiwKLSsgICAgMHgzYywgMHgx NiwgMHg4OCwgMHhlZCwgMHg1MCwgMHgxMywgMHg4MSwgMHhjZQotK307Ci0rCi0rX19maXBzX2Nv bnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xMjhfbm9fZGZfYWRkaXRpb25h bGlucHV0W10gPSB7Ci0rICAgIDB4NGIsIDB4MjIsIDB4NDYsIDB4MTgsIDB4MDIsIDB4N2IsIDB4 ZDIsIDB4MWIsIDB4MjIsIDB4NDIsIDB4N2MsIDB4MzcsCi0rICAgIDB4ZDksIDB4ZjYsIDB4ZTgs IDB4OWIsIDB4MTIsIDB4MzAsIDB4NWYsIDB4ZTksIDB4OTAsIDB4ZTgsIDB4MDgsIDB4MjQsCi0r ICAgIDB4NGYsIDB4MDYsIDB4NjYsIDB4ZGIsIDB4MTksIDB4MmIsIDB4MTMsIDB4OTUKLSt9Owot KwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTI4X25v X2RmX2ludF9yZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHgyZSwgMHg5NiwgMHg3MCwgMHg2NCwg MHhmYSwgMHhkZiwgMHhkZiwgMHg1NywgMHhiNSwgMHg4MiwgMHhlZSwgMHhkNiwKLSsgICAgMHhl ZCwgMHgzZSwgMHg2NSwgMHhjMgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRp YyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xMjhfbm9fZGZfZW50cm9weWlucHV0cmVzZWVkW10g PSB7Ci0rICAgIDB4MjYsIDB4YzAsIDB4NzIsIDB4MTYsIDB4M2EsIDB4NGIsIDB4YjcsIDB4OTks IDB4ZDQsIDB4MDcsIDB4YWYsIDB4NjYsCi0rICAgIDB4NjIsIDB4MzYsIDB4OTYsIDB4YTQsIDB4 NTEsIDB4MTcsIDB4ZmEsIDB4MDcsIDB4OGIsIDB4MTcsIDB4NWUsIDB4YTEsCi0rICAgIDB4MmYs IDB4M2MsIDB4MTAsIDB4ZTcsIDB4OTAsIDB4ZDAsIDB4NDYsIDB4MDAKLSt9OwotKwotK19fZmlw c19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTI4X25vX2Rm X2FkZGl0aW9uYWxpbnB1dHJlc2VlZFtdID0gewotKyAgICAweDgzLCAweDM5LCAweDM3LCAweDdi LCAweDAyLCAweDA2LCAweGQyLCAweDEyLCAweDEzLCAweDhkLCAweDhiLCAweGYyLAotKyAgICAw eGYwLCAweGY2LCAweDI2LCAweGViLCAweGE0LCAweDIyLCAweDdiLCAweGMyLCAweGU3LCAweGJh LCAweDc5LCAweGU0LAotKyAgICAweDNiLCAweDc3LCAweDVkLCAweDRkLCAweDQ3LCAweGIyLCAw eDJkLCAweGI0Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgYWVzXzEyOF9ub19kZl9hZGRpdGlvbmFsaW5wdXQyW10gPSB7Ci0rICAgIDB4MGIsIDB4 YjksIDB4NjcsIDB4MzcsIDB4ZGIsIDB4ODMsIDB4ZGYsIDB4Y2EsIDB4ODEsIDB4OGIsIDB4Zjks IDB4M2YsCi0rICAgIDB4ZjEsIDB4MTEsIDB4MWIsIDB4MmYsIDB4ZjAsIDB4NjEsIDB4YTYsIDB4 ZGYsIDB4YmEsIDB4YTMsIDB4YjEsIDB4YWMsCi0rICAgIDB4ZDMsIDB4ZTYsIDB4MDksIDB4Yjgs IDB4MmMsIDB4NmEsIDB4NjcsIDB4ZDYKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMg Y29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTI4X25vX2RmX3JldHVybmVkYml0c1tdID0gewotKyAg ICAweDFlLCAweGE3LCAweGE0LCAweGU0LCAweGUxLCAweGE2LCAweDdjLCAweDY5LCAweDlhLCAw eDQ0LCAweDZjLCAweDM2LAotKyAgICAweDgxLCAweDM3LCAweDE5LCAweGQ0Ci0rfTsKLSsKLSsv KiBBRVMtMTkyIG5vIGRmIFBSICAqLwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5z aWduZWQgY2hhciBhZXNfMTkyX25vX2RmX3ByX2VudHJvcHlpbnB1dFtdID0gewotKyAgICAweDlk LCAweDJjLCAweGQyLCAweDU1LCAweDY2LCAweGVhLCAweGUwLCAweGJlLCAweDE4LCAweGI3LCAw eDc2LCAweGU3LAotKyAgICAweDczLCAweDM1LCAweGQ4LCAweDFmLCAweGFkLCAweDNhLCAweGUz LCAweDgxLCAweDBlLCAweDkyLCAweGQwLCAweDYxLAotKyAgICAweGM5LCAweDEyLCAweDI2LCAw eGY2LCAweDFjLCAweGRmLCAweGZlLCAweDQ3LCAweGFhLCAweGZlLCAweDdkLCAweDVhLAotKyAg ICAweDE3LCAweDFmLCAweDhkLCAweDlhCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzE5Ml9ub19kZl9wcl9ub25jZVtdID0gewotKyAgICAw eDQ0LCAweDgyLCAweGVkLCAweGU4LCAweDRjLCAweDI4LCAweDVhLCAweDE0LCAweGZmLCAweDg4 LCAweDhkLCAweDE5LAotKyAgICAweDYxLCAweDVjLCAweGVlLCAweDBmCi0rfTsKLSsKLStfX2Zp cHNfY29uc3RzZWcKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzE5Ml9ub19k Zl9wcl9wZXJzb25hbGl6YXRpb25zdHJpbmdbXSA9IHsKLSsgICAgMHg0NywgMHhkNywgMHg5Yiwg MHg5OSwgMHhhYSwgMHhjYiwgMHhlNywgMHhkMiwgMHg1NywgMHg2NiwgMHgyYywgMHhlMSwKLSsg ICAgMHg3OCwgMHhkNiwgMHgyYywgMHhlYSwgMHhhMywgMHgyMywgMHg1ZiwgMHgyYSwgMHhjMSwg MHgzYSwgMHhmMCwgMHhhNCwKLSsgICAgMHgyMCwgMHgzYiwgMHhmYSwgMHgwNywgMHhkNSwgMHgw NSwgMHgwMiwgMHhlNCwgMHg1NywgMHgwMSwgMHhiNiwgMHgxMCwKLSsgICAgMHg1NywgMHgyZSwg MHhlNywgMHg1NQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1 bnNpZ25lZCBjaGFyIGFlc18xOTJfbm9fZGZfcHJfYWRkaXRpb25hbGlucHV0W10gPSB7Ci0rICAg IDB4NGIsIDB4NzQsIDB4MGIsIDB4NDAsIDB4Y2UsIDB4NmIsIDB4YzIsIDB4NmEsIDB4MjQsIDB4 YjQsIDB4ZjMsIDB4YWQsCi0rICAgIDB4N2EsIDB4YTUsIDB4N2EsIDB4YTIsIDB4MTUsIDB4ZTIs IDB4YzgsIDB4NjEsIDB4MTUsIDB4YzYsIDB4YjcsIDB4ODUsCi0rICAgIDB4NjksIDB4MTEsIDB4 YWQsIDB4N2IsIDB4MTQsIDB4ZDIsIDB4ZjYsIDB4MTIsIDB4YTEsIDB4OTUsIDB4NWQsIDB4M2Ys Ci0rICAgIDB4ZTIsIDB4ZDAsIDB4MGMsIDB4MmYKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBz dGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTkyX25vX2RmX3ByX2VudHJvcHlpbnB1dHBy W10gPSB7Ci0rICAgIDB4MGMsIDB4OWMsIDB4YWQsIDB4MDUsIDB4ZWUsIDB4YWUsIDB4NDgsIDB4 MjMsIDB4ODksIDB4NTksIDB4YTEsIDB4OTQsCi0rICAgIDB4ZDcsIDB4ZDgsIDB4NzUsIDB4ZDUs IDB4NTQsIDB4OTMsIDB4YzcsIDB4NGEsIDB4ZDksIDB4MjYsIDB4ZGUsIDB4ZWIsCi0rICAgIDB4 YmEsIDB4YjAsIDB4N2UsIDB4MzAsIDB4MWQsIDB4NWYsIDB4NjksIDB4NDAsIDB4OWMsIDB4M2Is IDB4MTcsIDB4NTgsCi0rICAgIDB4MWQsIDB4MzAsIDB4YjMsIDB4NzgKLSt9OwotKwotK19fZmlw c19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTkyX25vX2Rm X3ByX2ludF9yZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHhmNywgMHg5MywgMHhiMCwgMHg2ZCwg MHg3NywgMHg4MywgMHhkNSwgMHgzOCwgMHgwMSwgMHhlMSwgMHg1MiwgMHg0MCwKLSsgICAgMHg3 ZSwgMHgzZSwgMHgwYywgMHgyNgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRp YyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xOTJfbm9fZGZfcHJfYWRkaXRpb25hbGlucHV0Mltd ID0gewotKyAgICAweGJjLCAweDRiLCAweDM3LCAweDQ0LCAweDFjLCAweGM1LCAweDQ1LCAweDVm LCAweDhmLCAweDUxLCAweDYyLCAweDhhLAotKyAgICAweDg1LCAweDMwLCAweDFkLCAweDdjLCAw eGU0LCAweGNmLCAweGY3LCAweDQ0LCAweGNlLCAweDMyLCAweDNlLCAweDU3LAotKyAgICAweDk1 LCAweGE0LCAweDJhLCAweGRmLCAweGZkLCAweDllLCAweDM4LCAweDQxLCAweGIzLCAweGY2LCAw eGM1LCAweGVlLAotKyAgICAweDBjLCAweDRiLCAweGVlLCAweDZlCi0rfTsKLSsKLStfX2ZpcHNf Y29uc3RzZWcKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzE5Ml9ub19kZl9w cl9lbnRyb3B5aW5wdXRwcjJbXSA9IHsKLSsgICAgMHhlYywgMHhhZiwgMHhmNiwgMHg0ZiwgMHhi MSwgMHhhMCwgMHg1NCwgMHhiNSwgMHg1YiwgMHhlMywgMHg0NiwgMHhiMCwKLSsgICAgMHg3Niwg MHg1YSwgMHg3YywgMHgzZiwgMHg3YiwgMHg5NCwgMHg2OSwgMHgyMSwgMHg1MSwgMHgwMiwgMHhl NSwgMHg5ZiwKLSsgICAgMHgwNCwgMHg1OSwgMHgwMiwgMHg5OCwgMHhjNiwgMHg0MywgMHgyYywg MHhjYywgMHgyNiwgMHg0YywgMHg4NywgMHg2YiwKLSsgICAgMHg4ZSwgMHgwYSwgMHg4MywgMHhk ZgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFl c18xOTJfbm9fZGZfcHJfcmV0dXJuZWRiaXRzW10gPSB7Ci0rICAgIDB4NzQsIDB4NDUsIDB4ZmIs IDB4NTMsIDB4ODQsIDB4OTYsIDB4YmUsIDB4ZmYsIDB4MTUsIDB4Y2MsIDB4NDEsIDB4OTEsCi0r ICAgIDB4YjksIDB4YTEsIDB4MjEsIDB4NjgKLSt9OwotKwotKy8qIEFFUy0xOTIgbm8gZGYgTm8g UFIgICovCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18x OTJfbm9fZGZfZW50cm9weWlucHV0W10gPSB7Ci0rICAgIDB4M2MsIDB4N2QsIDB4YjUsIDB4ZTAs IDB4NTQsIDB4ZDksIDB4NmUsIDB4OGMsIDB4YTksIDB4ODYsIDB4Y2UsIDB4NGUsCi0rICAgIDB4 NmIsIDB4YWYsIDB4ZWIsIDB4MmYsIDB4ZTcsIDB4NzUsIDB4ZTAsIDB4OGIsIDB4YTQsIDB4M2Is IDB4MDcsIDB4ZmUsCi0rICAgIDB4YmUsIDB4MzMsIDB4NzUsIDB4OTMsIDB4ODAsIDB4MjcsIDB4 YjUsIDB4MjksIDB4NDcsIDB4OGIsIDB4YzcsIDB4MjgsCi0rICAgIDB4OTQsIDB4YzMsIDB4NTks IDB4NjMKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh ciBhZXNfMTkyX25vX2RmX25vbmNlW10gPSB7Ci0rICAgIDB4NDMsIDB4ZjEsIDB4N2QsIDB4Yjgs IDB4YzMsIDB4ZmUsIDB4ZDAsIDB4MjMsIDB4NmIsIDB4YjQsIDB4OTIsIDB4ZGIsCi0rICAgIDB4 MjksIDB4ZmQsIDB4NDUsIDB4NzEKLSt9OwotKwotK19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0 aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMTkyX25vX2RmX3BlcnNvbmFsaXphdGlvbnN0cmlu Z1tdID0gewotKyAgICAweDlmLCAweDI0LCAweDI5LCAweDk5LCAweDllLCAweDAxLCAweGFiLCAw eGU5LCAweDE5LCAweGQ4LCAweDIzLCAweDA4LAotKyAgICAweGI3LCAweGQ2LCAweDdlLCAweDhj LCAweGMwLCAweDllLCAweDdmLCAweDZlLCAweDViLCAweDMzLCAweDIwLCAweDk2LAotKyAgICAw eDBiLCAweDIzLCAweDJjLCAweGE1LCAweDZhLCAweGY4LCAweDFiLCAweDA0LCAweDI2LCAweGRi LCAweDJlLCAweDJiLAotKyAgICAweDNiLCAweDg4LCAweGNlLCAweDM1Ci0rfTsKLSsKLStfX2Zp cHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzE5Ml9ub19kZl9hZGRp dGlvbmFsaW5wdXRbXSA9IHsKLSsgICAgMHg5NCwgMHhlOSwgMHg3YywgMHgzZCwgMHhhNywgMHhk YiwgMHg2MCwgMHg4MywgMHgxZiwgMHg5OCwgMHgzZiwgMHgwYiwKLSsgICAgMHg4OCwgMHg1OSwg MHg1NywgMHg1MSwgMHg4OCwgMHg5ZiwgMHg3NiwgMHg0OSwgMHg5ZiwgMHhhNiwgMHhkYSwgMHg3 MSwKLSsgICAgMHgxZCwgMHgwZCwgMHg0NywgMHgxNiwgMHg2MywgMHhjNSwgMHg2OCwgMHhlNCwg MHg1ZCwgMHgzOSwgMHg2OSwgMHhiMywKLSsgICAgMHgzZSwgMHhiZSwgMHhkNCwgMHg4ZQotK307 Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xOTJf bm9fZGZfaW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAweGY5LCAweGQ3LCAweGFkLCAweDY5 LCAweGFiLCAweDhmLCAweDIzLCAweDU2LCAweDcwLCAweDE3LCAweDRmLCAweDJhLAotKyAgICAw eDQ1LCAweGU3LCAweDRhLCAweGM1Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcKLSsgICAgc3Rh dGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzE5Ml9ub19kZl9lbnRyb3B5aW5wdXRyZXNlZWRb XSA9IHsKLSsgICAgMHhhNiwgMHg3MSwgMHg2YSwgMHgzZCwgMHhiYSwgMHhkMSwgMHhlOCwgMHg2 NiwgMHhhNiwgMHhlZiwgMHhiMiwgMHgwZSwKLSsgICAgMHhhOCwgMHg5YywgMHhhYSwgMHg0ZSwg MHhhZiwgMHgxNywgMHg4OSwgMHg1MCwgMHgwMCwgMHhkYSwgMHhhMSwgMHhiMSwKLSsgICAgMHgw YiwgMHhhNCwgMHhkOSwgMHgzNSwgMHg4OSwgMHhjOCwgMHhlNSwgMHhiMCwgMHhkOSwgMHhiNywg MHhjNCwgMHgzMywKLSsgICAgMHg5YiwgMHhjYiwgMHg3ZSwgMHg3NQotK307Ci0rCi0rX19maXBz X2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18xOTJfbm9fZGZf YWRkaXRpb25hbGlucHV0cmVzZWVkW10gPSB7Ci0rICAgIDB4MjcsIDB4MjEsIDB4ZmMsIDB4YzIs IDB4YmQsIDB4ZjMsIDB4M2MsIDB4Y2UsIDB4YzMsIDB4Y2EsIDB4YzEsIDB4MDEsCi0rICAgIDB4 ZTAsIDB4ZmYsIDB4OTMsIDB4MTIsIDB4N2QsIDB4NTQsIDB4NDIsIDB4ZTMsIDB4OWYsIDB4MDMs IDB4ZGYsIDB4MjcsCi0rICAgIDB4MDQsIDB4MDcsIDB4M2MsIDB4NTMsIDB4N2YsIDB4YTgsIDB4 NjYsIDB4YzgsIDB4OTcsIDB4NGIsIDB4NjEsIDB4NDAsCi0rICAgIDB4NWQsIDB4N2EsIDB4MjUs IDB4NzkKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh ciBhZXNfMTkyX25vX2RmX2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHgyZCwgMHg4ZSwg MHgxNiwgMHg1ZCwgMHgwYiwgMHg5ZiwgMHhlYiwgMHhhYSwgMHhkNiwgMHhlYywgMHgyOCwgMHg3 MSwKLSsgICAgMHg3YywgMHgwYiwgMHhjMSwgMHgxZCwgMHhkNCwgMHg0NCwgMHgxOSwgMHg0Nywg MHhmZCwgMHgxZCwgMHg3YywgMHhlNSwKLSsgICAgMHhmMywgMHgyNywgMHhlMSwgMHhiNiwgMHg3 MiwgMHgwYSwgMHhlMCwgMHhlYywgMHgwZSwgMHhjZCwgMHhlZiwgMHgxYSwKLSsgICAgMHg5MSwg MHg2YSwgMHhlMywgMHg1ZgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1 bnNpZ25lZCBjaGFyIGFlc18xOTJfbm9fZGZfcmV0dXJuZWRiaXRzW10gPSB7Ci0rICAgIDB4ZTUs IDB4ZGEsIDB4YjgsIDB4ZTAsIDB4NjMsIDB4NTksIDB4NWEsIDB4Y2MsIDB4M2QsIDB4ZGMsIDB4 OWYsIDB4ZTgsCi0rICAgIDB4NjYsIDB4NjcsIDB4MmMsIDB4OTIKLSt9OwotKwotKy8qIEFFUy0y NTYgbm8gZGYgUFIgICovCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIGFlc18yNTZfbm9fZGZfcHJfZW50cm9weWlucHV0W10gPSB7Ci0rICAgIDB4MTUsIDB4Yzcs IDB4NWQsIDB4Y2IsIDB4NDEsIDB4NGIsIDB4MTYsIDB4MDEsIDB4M2EsIDB4ZDEsIDB4NDQsIDB4 ZTgsCi0rICAgIDB4MjIsIDB4MzIsIDB4YzYsIDB4OWMsIDB4M2YsIDB4ZTcsIDB4NDMsIDB4ZjUs IDB4OWEsIDB4ZDMsIDB4ZWEsIDB4ZjIsCi0rICAgIDB4ZDcsIDB4NGUsIDB4NmUsIDB4NmEsIDB4 NTUsIDB4NzMsIDB4NDAsIDB4ZWYsIDB4ODksIDB4YWQsIDB4MGQsIDB4MDMsCi0rICAgIDB4OTYs IDB4N2UsIDB4NzgsIDB4ODEsIDB4MmYsIDB4OTEsIDB4MWIsIDB4NDQsIDB4YjAsIDB4MDIsIDB4 YmEsIDB4MWMKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQg Y2hhciBhZXNfMjU2X25vX2RmX3ByX25vbmNlW10gPSB7Ci0rICAgIDB4ZGMsIDB4ZTQsIDB4ZDQs IDB4MjcsIDB4N2EsIDB4OTAsIDB4ZDcsIDB4OTksIDB4NDMsIDB4YTEsIDB4M2MsIDB4MzAsCi0r ICAgIDB4Y2MsIDB4NGIsIDB4ZWUsIDB4MmUKLSt9OwotKwotK19fZmlwc19jb25zdHNlZwotKyAg ICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMjU2X25vX2RmX3ByX3BlcnNvbmFsaXph dGlvbnN0cmluZ1tdID0gewotKyAgICAweGUzLCAweGU2LCAweGI5LCAweDExLCAweGU0LCAweDdh LCAweGE0LCAweDQwLCAweDZiLCAweGY4LCAweDczLCAweGY3LAotKyAgICAweDdlLCAweGVjLCAw eGM3LCAweGI5LCAweDk3LCAweGJmLCAweGY4LCAweDI1LCAweDdiLCAweGJlLCAweDExLCAweDli LAotKyAgICAweDViLCAweDZhLCAweDBjLCAweDJlLCAweDJiLCAweDAxLCAweDUxLCAweGNkLCAw eDQxLCAweDRiLCAweDZiLCAweGFjLAotKyAgICAweDMxLCAweGE4LCAweDBiLCAweGY3LCAweGU2 LCAweDU5LCAweDQyLCAweGI4LCAweDAzLCAweDBjLCAweGY4LCAweDA2Ci0rfTsKLSsKLStfX2Zp cHNfY29uc3RzZWcKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzI1Nl9ub19k Zl9wcl9hZGRpdGlvbmFsaW5wdXRbXSA9IHsKLSsgICAgMHg2YSwgMHg5ZiwgMHgwMCwgMHg5MSwg MHhhZSwgMHhmZSwgMHhjZiwgMHg4NCwgMHg5OSwgMHhjZSwgMHhiMSwgMHg0MCwKLSsgICAgMHg2 ZCwgMHg1ZCwgMHgzMywgMHgyOCwgMHg4NCwgMHhmNCwgMHg4YywgMHg2MywgMHg0YywgMHg3ZSwg MHhiZCwgMHgyYywKLSsgICAgMHg4MCwgMHg3NiwgMHhlZSwgMHg1YSwgMHhhYSwgMHgxNSwgMHgw NywgMHgzMSwgMHhkOCwgMHhiYiwgMHg4YywgMHg2OSwKLSsgICAgMHg5ZCwgMHg5ZCwgMHhiYywg MHg3ZSwgMHg0OSwgMHhhZSwgMHhlYywgMHgzOSwgMHg2YiwgMHhkMSwgMHgxZiwgMHg3ZQotK307 Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18yNTZf bm9fZGZfcHJfZW50cm9weWlucHV0cHJbXSA9IHsKLSsgICAgMHhmMywgMHhiOSwgMHg3NSwgMHg5 YywgMHhiZCwgMHg4OCwgMHhlYSwgMHhhMiwgMHg1MCwgMHhhZCwgMHhkNiwgMHgxNiwKLSsgICAg MHgxYSwgMHgxMiwgMHgzYywgMHg4NiwgMHg2OCwgMHhhZiwgMHg2ZiwgMHhiZSwgMHgxOSwgMHhm MiwgMHhlZSwgMHhjYywKLSsgICAgMHhhNSwgMHg3MCwgMHg4NCwgMHg1MywgMHg1MCwgMHhjYiwg MHg5ZiwgMHgxNCwgMHhhOSwgMHhlNSwgMHhlZSwgMHhiOSwKLSsgICAgMHg0OCwgMHg0NSwgMHg0 MCwgMHhlMiwgMHhjNywgMHhjOSwgMHg5YSwgMHg3NCwgMHhmZiwgMHg4YywgMHg5OSwgMHgxZgot K307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFy IGFlc18yNTZfbm9fZGZfcHJfaW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDJlLCAweGYy LCAweDQ1LCAweDRjLCAweDYyLCAweDJlLCAweDBhLCAweGI5LCAweDZiLCAweGEyLCAweGZkLCAw eDU2LAotKyAgICAweDc5LCAweDYwLCAweDkzLCAweGNmCi0rfTsKLSsKLStfX2ZpcHNfY29uc3Rz ZWcKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzI1Nl9ub19kZl9wcl9hZGRp dGlvbmFsaW5wdXQyW10gPSB7Ci0rICAgIDB4YWYsIDB4NjksIDB4MjAsIDB4ZTksIDB4M2IsIDB4 MzcsIDB4OWQsIDB4M2YsIDB4YjQsIDB4ODAsIDB4MDIsIDB4N2EsCi0rICAgIDB4MjUsIDB4N2Qs IDB4YjgsIDB4ZGUsIDB4NzEsIDB4YzUsIDB4MDYsIDB4MGMsIDB4YjQsIDB4ZTIsIDB4OGYsIDB4 MzUsCi0rICAgIDB4ZDgsIDB4MTQsIDB4MGQsIDB4N2YsIDB4NzYsIDB4NjMsIDB4NGUsIDB4YjUs IDB4ZWUsIDB4ZTksIDB4NmYsIDB4MzQsCi0rICAgIDB4YzcsIDB4NWYsIDB4NTYsIDB4MTQsIDB4 NGEsIDB4ZTgsIDB4NzMsIDB4OTUsIDB4NWIsIDB4MWMsIDB4YjksIDB4Y2IKLSt9OwotKwotK19f Zmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMjU2X25v X2RmX3ByX2VudHJvcHlpbnB1dHByMltdID0gewotKyAgICAweGU1LCAweGIwLCAweDJlLCAweDdl LCAweDUyLCAweDMwLCAweGUzLCAweDYzLCAweDgyLCAweGI2LCAweDQ0LCAweGQzLAotKyAgICAw eDI1LCAweDE5LCAweDA1LCAweDI0LCAweDlhLCAweDlmLCAweDVmLCAweDI3LCAweDZhLCAweDI5 LCAweGFiLCAweGZhLAotKyAgICAweDA3LCAweGEyLCAweDQyLCAweDBmLCAweGM1LCAweGE4LCAw eDk0LCAweDdjLCAweDE3LCAweDdiLCAweDg1LCAweDgzLAotKyAgICAweDBjLCAweDI1LCAweDBl LCAweDYzLCAweDBiLCAweGU5LCAweDEyLCAweDYwLCAweGNkLCAweGVmLCAweDgwLCAweDBmCi0r fTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzI1 Nl9ub19kZl9wcl9yZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHg1ZSwgMHhmMiwgMHgyNiwgMHhl ZiwgMHg5ZiwgMHg1OCwgMHg1ZCwgMHhkNSwgMHg0YSwgMHgxMCwgMHhmZSwgMHhhNywKLSsgICAg MHgyZCwgMHg1ZiwgMHg0YSwgMHg0NgotK307Ci0rCi0rLyogQUVTLTI1NiBubyBkZiBObyBQUiAg Ki8KLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgYWVzXzI1Nl9u b19kZl9lbnRyb3B5aW5wdXRbXSA9IHsKLSsgICAgMHhmYiwgMHhjZiwgMHgxYiwgMHg2MSwgMHgx NiwgMHg4OSwgMHg3OCwgMHgyMywgMHhmNSwgMHhkOCwgMHg5NiwgMHhlMywKLSsgICAgMHg0ZSwg MHg2NCwgMHgwYiwgMHgyOSwgMHg5YSwgMHgzZiwgMHhmOCwgMHhhNSwgMHhlZCwgMHhmMiwgMHhm ZSwgMHhkYiwKLSsgICAgMHgxNiwgMHhjYSwgMHg3ZiwgMHgxMCwgMHhmYSwgMHg1ZSwgMHgxOCwg MHg3NiwgMHgyYywgMHg2MywgMHg1ZSwgMHg5NiwKLSsgICAgMHhjZiwgMHhiMywgMHhkNiwgMHhm YywgMHhhZiwgMHg5OSwgMHgzOSwgMHgyOCwgMHg5YywgMHg2MSwgMHhlOCwgMHhiMwotK307Ci0r Ci0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGFlc18yNTZfbm9f ZGZfbm9uY2VbXSA9IHsKLSsgICAgMHgxMiwgMHg5NiwgMHhmMCwgMHg1MiwgMHhmMywgMHg4ZCwg MHg4MSwgMHhjZiwgMHhkZSwgMHg4NiwgMHhmMiwgMHg5OSwKLSsgICAgMHg0MywgMHg5NiwgMHhi OSwgMHhmMAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1bnNp Z25lZCBjaGFyIGFlc18yNTZfbm9fZGZfcGVyc29uYWxpemF0aW9uc3RyaW5nW10gPSB7Ci0rICAg IDB4NjMsIDB4MGQsIDB4NzgsIDB4ZjUsIDB4OTAsIDB4OGUsIDB4MzIsIDB4NDcsIDB4YjAsIDB4 NGQsIDB4MzcsIDB4NjAsCi0rICAgIDB4MDksIDB4OTYsIDB4YmMsIDB4YmYsIDB4OTcsIDB4N2Es IDB4NjIsIDB4MTQsIDB4NDUsIDB4YmQsIDB4OGQsIDB4Y2MsCi0rICAgIDB4NjksIDB4ZmIsIDB4 MDMsIDB4ZTEsIDB4ODAsIDB4MWMsIDB4YzcsIDB4ZTIsIDB4MmEsIDB4ZjksIDB4MzcsIDB4M2Ys Ci0rICAgIDB4NjYsIDB4NGQsIDB4NjIsIDB4ZDksIDB4MTAsIDB4ZTAsIDB4YWQsIDB4YzgsIDB4 OWEsIDB4ZjAsIDB4YTgsIDB4NmQKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29u c3QgdW5zaWduZWQgY2hhciBhZXNfMjU2X25vX2RmX2FkZGl0aW9uYWxpbnB1dFtdID0gewotKyAg ICAweDM2LCAweGM2LCAweDEzLCAweDYwLCAweGJiLCAweDE0LCAweGFkLCAweDIyLCAweGIwLCAw eDM4LCAweGFjLCAweGE2LAotKyAgICAweDE4LCAweDE2LCAweDkzLCAweDI1LCAweDg2LCAweGI3 LCAweGRjLCAweGRjLCAweDM2LCAweDk4LCAweDJiLCAweGY5LAotKyAgICAweDY4LCAweDMzLCAw eGQzLCAweGM2LCAweGZmLCAweGNlLCAweDhkLCAweDE1LCAweDU5LCAweDgyLCAweDc2LCAweGVk LAotKyAgICAweDZmLCAweDhkLCAweDQ5LCAweDc0LCAweDJmLCAweGRhLCAweGRjLCAweDFmLCAw eDE3LCAweGQwLCAweGRlLCAweDE3Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIgYWVzXzI1Nl9ub19kZl9pbnRfcmV0dXJuZWRiaXRzW10gPSB7Ci0r ICAgIDB4MTYsIDB4MmYsIDB4OGUsIDB4M2YsIDB4MjEsIDB4N2EsIDB4MWMsIDB4MjAsIDB4NTYs IDB4ZDEsIDB4OTIsIDB4ZjYsCi0rICAgIDB4ZDIsIDB4MjUsIDB4NzUsIDB4MGUKLSt9OwotKwot K19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBhZXNfMjU2 X25vX2RmX2VudHJvcHlpbnB1dHJlc2VlZFtdID0gewotKyAgICAweDkxLCAweDc5LCAweDc2LCAw eGVlLCAweGUwLCAweGNmLCAweDllLCAweGMyLCAweGQ1LCAweGQ0LCAweDIzLCAweDliLAotKyAg ICAweDEyLCAweDhjLCAweDdlLCAweDBhLCAweGI3LCAweGQyLCAweDhiLCAweGQ2LCAweDdjLCAw eGEzLCAweGM2LCAweGU1LAotKyAgICAweDBlLCAweGFhLCAweGM3LCAweDZiLCAweGFlLCAweDBk LCAweGZhLCAweDUzLCAweDA2LCAweDc5LCAweGExLCAweGVkLAotKyAgICAweDRkLCAweDZhLCAw eDBlLCAweGQ4LCAweDlkLCAweGJlLCAweDFiLCAweDMxLCAweDkzLCAweDdiLCAweGVjLCAweGZi Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo YXIgYWVzXzI1Nl9ub19kZl9hZGRpdGlvbmFsaW5wdXRyZXNlZWRbXSA9IHsKLSsgICAgMHhkMiwg MHg0NiwgMHg1MCwgMHgyMiwgMHgxMCwgMHgxNCwgMHg2MywgMHhmNywgMHhlYSwgMHgwZiwgMHhi OSwgMHg3ZSwKLSsgICAgMHgwZCwgMHhlMSwgMHg5NCwgMHgwNywgMHhhZiwgMHgwOSwgMHg0NCwg MHgzMSwgMHhlYSwgMHg2NCwgMHhhNCwgMHgxOCwKLSsgICAgMHg1YiwgMHhmOSwgMHhkOCwgMHhj MiwgMHhmYSwgMHgwMywgMHg0NywgMHhjNSwgMHgzOSwgMHg0MywgMHhkNSwgMHgzYiwKLSsgICAg MHg2MiwgMHg4NiwgMHg2NCwgMHhlYSwgMHgyYywgMHg3MywgMHg4YywgMHhhZSwgMHg5ZCwgMHg5 OCwgMHg5OCwgMHgyOQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNp Z25lZCBjaGFyIGFlc18yNTZfbm9fZGZfYWRkaXRpb25hbGlucHV0MltdID0gewotKyAgICAweDhj LCAweGFiLCAweDE4LCAweGY4LCAweGMzLCAweGVjLCAweDE4LCAweDVjLCAweGIzLCAweDFlLCAw eDlkLCAweGJlLAotKyAgICAweDNmLCAweDAzLCAweGI0LCAweDAwLCAweDk4LCAweDlkLCAweGFl LCAweGViLCAweGY0LCAweDk0LCAweGY4LCAweDQyLAotKyAgICAweDhmLCAweGUzLCAweDM5LCAw eDA3LCAweGUxLCAweGM5LCAweGFkLCAweDBiLCAweDFmLCAweGVkLCAweGMwLCAweGJhLAotKyAg ICAweGY2LCAweGQxLCAweGVjLCAweDI3LCAweDg2LCAweDdiLCAweGQ2LCAweDU1LCAweDliLCAw eDYwLCAweGE1LCAweGM2Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVu c2lnbmVkIGNoYXIgYWVzXzI1Nl9ub19kZl9yZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHhlZiwg MHhkMiwgMHhkOCwgMHg1YywgMHhkYywgMHg2MiwgMHgyNSwgMHg5ZiwgMHhhYSwgMHgxZSwgMHgy YywgMHg2NywKLSsgICAgMHhmNiwgMHgwMiwgMHgzMiwgMHhlMgotK307Ci0rCi0rLyogU0hBLTEg UFIgICovCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTFf cHJfZW50cm9weWlucHV0W10gPSB7Ci0rICAgIDB4ZDIsIDB4MzYsIDB4YTUsIDB4MjcsIDB4MzEs IDB4NzMsIDB4ZGQsIDB4MTEsIDB4NGYsIDB4OTMsIDB4YmQsIDB4ZTIsCi0rICAgIDB4MzEsIDB4 YTUsIDB4OTEsIDB4MTMKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5z aWduZWQgY2hhciBzaGExX3ByX25vbmNlW10gPSB7Ci0rICAgIDB4YjUsIDB4YjMsIDB4NjAsIDB4 ZWYsIDB4ZjcsIDB4NjMsIDB4MzEsIDB4ZjMKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0 aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGExX3ByX3BlcnNvbmFsaXphdGlvbnN0cmluZ1tdID0g ewotKyAgICAweGQ0LCAweGJiLCAweDAyLCAweDEwLCAweGIyLCAweDcxLCAweGRiLCAweDgxLCAw eGQ2LCAweGYwLCAweDQyLCAweDYwLAotKyAgICAweGRhLCAweGVhLCAweDc3LCAweDUyCi0rfTsK LSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMV9wcl9h ZGRpdGlvbmFsaW5wdXRbXSA9IHsKLSsgICAgMHg0ZCwgMHhkMiwgMHg2YywgMHg4NywgMHhmYiwg MHgyYywgMHg0ZiwgMHhhNiwgMHg4ZCwgMHgxNiwgMHg2MywgMHgyMiwKLSsgICAgMHg2YSwgMHg1 MSwgMHhlMywgMHhmOAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNp Z25lZCBjaGFyIHNoYTFfcHJfZW50cm9weWlucHV0cHJbXSA9IHsKLSsgICAgMHhjOSwgMHg4Mywg MHg5ZSwgMHgxNiwgMHhmNiwgMHgxYywgMHgwZiwgMHhiMiwgMHhlYywgMHg2MCwgMHgzMSwgMHhh OSwKLSsgICAgMHhjYiwgMHhhOSwgMHgzNiwgMHg3YQotK307Ci0rCi0rX19maXBzX2NvbnN0c2Vn IHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTFfcHJfaW50X3JldHVybmVkYml0c1tdID0g ewotKyAgICAweGE4LCAweDEzLCAweDRmLCAweGY0LCAweDMxLCAweDAyLCAweDQ0LCAweGUzLCAw eGQzLCAweDNkLCAweDYxLCAweDllLAotKyAgICAweGU1LCAweGM2LCAweDNlLCAweDg5LCAweGI1 LCAweDliLCAweDBmLCAweDM1Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgc2hhMV9wcl9hZGRpdGlvbmFsaW5wdXQyW10gPSB7Ci0rICAgIDB4Zjks IDB4ZTgsIDB4ZDIsIDB4NzIsIDB4MTMsIDB4MzQsIDB4OTUsIDB4NmYsIDB4MTUsIDB4NDksIDB4 NDcsIDB4OTksCi0rICAgIDB4MTYsIDB4MDMsIDB4MTksIDB4NDcKLSt9OwotKwotK19fZmlwc19j b25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGExX3ByX2VudHJvcHlpbnB1dHBy MltdID0gewotKyAgICAweDRlLCAweDhjLCAweDQ5LCAweDliLCAweDRhLCAweDVjLCAweDliLCAw eDljLCAweDNhLCAweGVlLCAweGZiLCAweGQyLAotKyAgICAweGFlLCAweGNkLCAweDhjLCAweGM0 Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hh MV9wcl9yZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHg1MCwgMHhiNCwgMHhiNCwgMHhjZCwgMHg2 OCwgMHg1NywgMHhmYywgMHgyZSwgMHhjMSwgMHg1MiwgMHhjYywgMHhmNiwKLSsgICAgMHg2OCwg MHhhNCwgMHg4MSwgMHhlZCwgMHg3ZSwgMHhlNCwgMHgxZCwgMHg4NwotK307Ci0rCi0rLyogU0hB LTEgTm8gUFIgICovCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFy IHNoYTFfZW50cm9weWlucHV0W10gPSB7Ci0rICAgIDB4YTksIDB4NDcsIDB4MWIsIDB4MjksIDB4 MmQsIDB4MWMsIDB4MDUsIDB4ZGYsIDB4NzYsIDB4ZDAsIDB4NjIsIDB4ZjksCi0rICAgIDB4ZTIs IDB4N2YsIDB4NGMsIDB4N2IKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3Qg dW5zaWduZWQgY2hhciBzaGExX25vbmNlW10gPSB7Ci0rICAgIDB4NTMsIDB4MjMsIDB4MjQsIDB4 ZTMsIDB4ZWMsIDB4MGMsIDB4NTQsIDB4MTQKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0 aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGExX3BlcnNvbmFsaXphdGlvbnN0cmluZ1tdID0gewot KyAgICAweDdhLCAweDg3LCAweGExLCAweGFjLCAweDFjLCAweGZkLCAweGFiLCAweGFlLCAweGY3 LCAweGQ2LCAweGZiLCAweDc2LAotKyAgICAweDI4LCAweGVjLCAweDZkLCAweGNhCi0rfTsKLSsK LStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMV9hZGRpdGlv bmFsaW5wdXRbXSA9IHsKLSsgICAgMHhmYywgMHg5MiwgMHgzNSwgMHhkNiwgMHg3ZSwgMHhiNywg MHgyNCwgMHg2NSwgMHhmZCwgMHgxMiwgMHgyNywgMHgzNSwKLSsgICAgMHhjMCwgMHg3MiwgMHhj YSwgMHgyOAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIHNoYTFfaW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDU3LCAweDg4LCAweDgyLCAw eGU1LCAweDI1LCAweGE1LCAweDJjLCAweDRhLCAweDA2LCAweDIwLCAweDZjLCAweDcyLAotKyAg ICAweDU1LCAweDYxLCAweGRkLCAweDkwLCAweDcxLCAweDlmLCAweDk1LCAweGVhCi0rfTsKLSsK LStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMV9lbnRyb3B5 aW5wdXRyZXNlZWRbXSA9IHsKLSsgICAgMHg2OSwgMHhhNSwgMHg0MCwgMHg2MiwgMHg5OCwgMHg0 NywgMHg1NiwgMHg3MywgMHg0YSwgMHg4ZiwgMHg2MCwgMHg5NiwKLSsgICAgMHhkNiwgMHg5OSwg MHgyNywgMHhlZAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIHNoYTFfYWRkaXRpb25hbGlucHV0cmVzZWVkW10gPSB7Ci0rICAgIDB4ZTUsIDB4NDAs IDB4NGUsIDB4YmQsIDB4NTAsIDB4MDAsIDB4ZjUsIDB4MTUsIDB4YTYsIDB4ZWUsIDB4NDUsIDB4 ZGEsCi0rICAgIDB4ODQsIDB4M2QsIDB4ZDQsIDB4YzAKLSt9OwotKwotK19fZmlwc19jb25zdHNl ZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGExX2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsK LSsgICAgMHgxMSwgMHg1MSwgMHgxNCwgMHhmMCwgMHgwOSwgMHgxYiwgMHg0ZSwgMHg1NiwgMHgw ZCwgMHhlOSwgMHhmNiwgMHgxZSwKLSsgICAgMHg1MiwgMHg2NSwgMHhjZCwgMHg5NgotK307Ci0r Ci0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTFfcmV0dXJu ZWRiaXRzW10gPSB7Ci0rICAgIDB4YTEsIDB4OWMsIDB4OTQsIDB4NmUsIDB4MjksIDB4ZTEsIDB4 MzMsIDB4MGQsIDB4MzIsIDB4ZDYsIDB4YWEsIDB4Y2UsCi0rICAgIDB4NzEsIDB4M2YsIDB4NTIs IDB4NzIsIDB4OGIsIDB4NDIsIDB4YTgsIDB4ZDcKLSt9OwotKwotKy8qIFNIQS0yMjQgUFIgICov Ci0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTIyNF9wcl9l bnRyb3B5aW5wdXRbXSA9IHsKLSsgICAgMHgxMiwgMHg2OSwgMHgzMiwgMHg0ZiwgMHg4MywgMHhh NiwgMHhmNSwgMHgxNCwgMHhlMywgMHg0OSwgMHgzZSwgMHg3NSwKLSsgICAgMHgzZSwgMHhkZSwg MHhhZCwgMHhhMSwgMHgyOSwgMHhjMywgMHhmMywgMHgxOSwgMHgyMCwgMHhiNSwgMHg0YywgMHhk OQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNo YTIyNF9wcl9ub25jZVtdID0gewotKyAgICAweDZhLCAweDc4LCAweGQwLCAweGViLCAweGJiLCAw eDVhLCAweGYwLCAweGVlLCAweGU4LCAweGMzLCAweGJhLCAweDcxCi0rfTsKLSsKLStfX2ZpcHNf Y29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMjI0X3ByX3BlcnNvbmFsaXph dGlvbnN0cmluZ1tdID0gewotKyAgICAweGQ1LCAweGI4LCAweGI2LCAweGJjLCAweGMxLCAweDVi LCAweDYwLCAweDMxLCAweDNjLCAweGY1LCAweGU1LCAweGMwLAotKyAgICAweDhlLCAweDUyLCAw eDdhLCAweGJkLCAweGVhLCAweDQ3LCAweGE5LCAweDVmLCAweDhmLCAweGY5LCAweDhiLCAweGFl Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hh MjI0X3ByX2FkZGl0aW9uYWxpbnB1dFtdID0gewotKyAgICAweDFmLCAweDU1LCAweGVjLCAweGFl LCAweDE2LCAweDEyLCAweDg0LCAweGJhLCAweDg0LCAweDE2LCAweDE5LCAweDg4LAotKyAgICAw eDhlLCAweGI4LCAweDMzLCAweDI1LCAweDU0LCAweGZmLCAweGNhLCAweDc5LCAweGFmLCAweDA3 LCAweDI1LCAweDUwCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2ln bmVkIGNoYXIgc2hhMjI0X3ByX2VudHJvcHlpbnB1dHByW10gPSB7Ci0rICAgIDB4OTIsIDB4YTMs IDB4MzIsIDB4YTgsIDB4OWEsIDB4MGEsIDB4NTgsIDB4N2MsIDB4MWQsIDB4NWEsIDB4N2UsIDB4 ZTEsCi0rICAgIDB4YjIsIDB4NzMsIDB4YWIsIDB4MGUsIDB4MTYsIDB4NzksIDB4MjMsIDB4ZDMs IDB4MjksIDB4ODksIDB4ODEsIDB4ZTEKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMg Y29uc3QgdW5zaWduZWQgY2hhciBzaGEyMjRfcHJfaW50X3JldHVybmVkYml0c1tdID0gewotKyAg ICAweGYzLCAweDM4LCAweDkxLCAweDQwLCAweDM3LCAweDdhLCAweDUxLCAweDcyLCAweDQyLCAw eDc0LCAweDc4LCAweDBhLAotKyAgICAweDY5LCAweGZkLCAweGE2LCAweDQ0LCAweDQzLCAweDQ1 LCAweDZjLCAweDBjLCAweDVhLCAweDE5LCAweGZmLCAweGYxLAotKyAgICAweDU0LCAweDYwLCAw eGVlLCAweDZhCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgc2hhMjI0X3ByX2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHg3NSwgMHhmMywg MHgwNCwgMHgyNSwgMHhkZCwgMHgzNiwgMHhhOCwgMHgzNywgMHg0NiwgMHhhZSwgMHgwYywgMHg1 MiwKLSsgICAgMHgwNSwgMHg3OSwgMHg0YywgMHgyNiwgMHhkYiwgMHhlOSwgMHg3MSwgMHgxNiwg MHg0YywgMHgwYSwgMHhmMiwgMHg2MAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBj b25zdCB1bnNpZ25lZCBjaGFyIHNoYTIyNF9wcl9lbnRyb3B5aW5wdXRwcjJbXSA9IHsKLSsgICAg MHhlYSwgMHhjNSwgMHgwMywgMHgwYSwgMHg0ZiwgMHhiMCwgMHgzOCwgMHg4ZCwgMHgyMywgMHhk NCwgMHhjOCwgMHg3NywKLSsgICAgMHhlMiwgMHg2ZCwgMHg5YywgMHgwYiwgMHg0NCwgMHhmNywg MHgyZCwgMHg1YiwgMHhiZiwgMHg1ZCwgMHgyYSwgMHgxMQotK307Ci0rCi0rX19maXBzX2NvbnN0 c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTIyNF9wcl9yZXR1cm5lZGJpdHNbXSA9 IHsKLSsgICAgMHg2MCwgMHg1MCwgMHgyYiwgMHhlNywgMHg4NiwgMHhkOCwgMHgyNiwgMHg3Mywg MHhlMywgMHgxZCwgMHg5NSwgMHgyMCwKLSsgICAgMHhiMywgMHgyYywgMHgzMiwgMHgxYywgMHhm NSwgMHhjZSwgMHg1NywgMHhhNiwgMHg2NywgMHgyYiwgMHhkYywgMHg0ZSwKLSsgICAgMHhkZCwg MHgxMSwgMHg0YywgMHhjNAotK307Ci0rCi0rLyogU0hBLTIyNCBObyBQUiAgKi8KLStfX2ZpcHNf Y29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMjI0X2VudHJvcHlpbnB1dFtd ID0gewotKyAgICAweGIyLCAweDFjLCAweDc3LCAweDRkLCAweGY2LCAweGQzLCAweGI2LCAweDQw LCAweGI3LCAweDMwLCAweDNlLCAweDI5LAotKyAgICAweGIwLCAweDg1LCAweDFjLCAweGJlLCAw eDRhLCAweGVhLCAweDZiLCAweDVhLCAweGI1LCAweDhhLCAweDk3LCAweGViCi0rfTsKLSsKLStf X2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMjI0X25vbmNlW10g PSB7Ci0rICAgIDB4NDIsIDB4MDIsIDB4MGEsIDB4MWMsIDB4OTgsIDB4OWEsIDB4NzcsIDB4OWUs IDB4OWYsIDB4ODAsIDB4YmEsIDB4ZTAKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMg Y29uc3QgdW5zaWduZWQgY2hhciBzaGEyMjRfcGVyc29uYWxpemF0aW9uc3RyaW5nW10gPSB7Ci0r ICAgIDB4OTgsIDB4YjgsIDB4MDQsIDB4NDEsIDB4ZmMsIDB4YzEsIDB4NWQsIDB4YzUsIDB4ZTks IDB4YjksIDB4MDgsIDB4ZGEsCi0rICAgIDB4ZjksIDB4ZmEsIDB4MGQsIDB4OTAsIDB4Y2UsIDB4 ZGYsIDB4MWQsIDB4MTAsIDB4YTksIDB4OGQsIDB4NTAsIDB4MGMKLSt9OwotKwotK19fZmlwc19j b25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEyMjRfYWRkaXRpb25hbGlucHV0 W10gPSB7Ci0rICAgIDB4OWEsIDB4OGQsIDB4MzksIDB4NDksIDB4NDIsIDB4ZDUsIDB4MGIsIDB4 YWUsIDB4ZTEsIDB4YWYsIDB4YjcsIDB4MDAsCi0rICAgIDB4MDIsIDB4ZmEsIDB4OTYsIDB4YjEs IDB4YTUsIDB4MWQsIDB4MmQsIDB4MjUsIDB4NzgsIDB4ZWUsIDB4ODMsIDB4M2YKLSt9OwotKwot K19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEyMjRfaW50X3Jl dHVybmVkYml0c1tdID0gewotKyAgICAweGU0LCAweGY1LCAweDUzLCAweDc5LCAweDVhLCAweDk3 LCAweDU4LCAweDA2LCAweDA4LCAweGJhLCAweDdiLCAweGZhLAotKyAgICAweGYwLCAweDgzLCAw eDA1LCAweDhjLCAweDIyLCAweGMwLCAweGM5LCAweGRiLCAweDE1LCAweGU3LCAweGRlLCAweDIw LAotKyAgICAweDU1LCAweDIyLCAweDlhLCAweGFkCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcg c3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMjI0X2VudHJvcHlpbnB1dHJlc2VlZFtdID0g ewotKyAgICAweDY3LCAweDA5LCAweDQ4LCAweGFhLCAweDA3LCAweDE2LCAweDk5LCAweDg5LCAw eDdmLCAweDZkLCAweGEwLCAweGU1LAotKyAgICAweDhmLCAweGRmLCAweGJjLCAweGRiLCAweGZl LCAweGU1LCAweDZjLCAweDdhLCAweDk1LCAweDRhLCAweDY2LCAweDE3Ci0rfTsKLSsKLStfX2Zp cHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMjI0X2FkZGl0aW9uYWxp bnB1dHJlc2VlZFtdID0gewotKyAgICAweDBmLCAweDRiLCAweDFjLCAweDZmLCAweGI3LCAweGUz LCAweDQ3LCAweGU1LCAweDVkLCAweDdkLCAweDM4LCAweGQ2LAotKyAgICAweDI4LCAweDliLCAw eGViLCAweDU1LCAweDYzLCAweDA5LCAweDNlLCAweDdjLCAweDU2LCAweGVhLCAweGY4LCAweDE5 Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hh MjI0X2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHgyZCwgMHgyNiwgMHg3YywgMHgzNywg MHhlNCwgMHg3YSwgMHgyOCwgMHg1ZSwgMHg1YSwgMHgzYywgMHhhZiwgMHgzZCwKLSsgICAgMHg1 YSwgMHg4ZSwgMHg1NSwgMHhhMiwgMHgxYSwgMHg2ZSwgMHhjMCwgMHhlNSwgMHhmNiwgMHgyMSwg MHhkMywgMHhmNgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIHNoYTIyNF9yZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHg0ZCwgMHg4MywgMHgzNSwg MHhkZiwgMHg2NywgMHhhOSwgMHhmYywgMHgxNywgMHhkYSwgMHg3MCwgMHhjYywgMHg4YiwKLSsg ICAgMHg3ZiwgMHg3NywgMHhhZSwgMHhhMiwgMHg1ZiwgMHhiOSwgMHg3ZSwgMHg3NCwgMHg0Yywg MHgyNiwgMHhjMSwgMHg3YSwKLSsgICAgMHgzYiwgMHhhNywgMHg1YywgMHg5MwotK307Ci0rCi0r LyogU0hBLTI1NiBQUiAgKi8KLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgc2hhMjU2X3ByX2VudHJvcHlpbnB1dFtdID0gewotKyAgICAweGNlLCAweDQ5LCAweDAw LCAweDdhLCAweDU2LCAweGUzLCAweDY3LCAweDhmLCAweGUxLCAweGI2LCAweGE3LCAweGQ0LAot KyAgICAweDRmLCAweDA4LCAweDdhLCAweDFiLCAweDAxLCAweGY0LCAweGZhLCAweDZiLCAweGVm LCAweGI3LCAweGU1LCAweGViLAotKyAgICAweDA3LCAweDNkLCAweDExLCAweDBkLCAweGM4LCAw eGVhLCAweDJiLCAweGZlCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVu c2lnbmVkIGNoYXIgc2hhMjU2X3ByX25vbmNlW10gPSB7Ci0rICAgIDB4NzMsIDB4NDEsIDB4Yzgs IDB4OTIsIDB4OTQsIDB4ZTIsIDB4YzUsIDB4NWYsIDB4OTMsIDB4ZmQsIDB4MzksIDB4NWQsCi0r ICAgIDB4MmIsIDB4OTEsIDB4NGQsIDB4MzgKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0 aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEyNTZfcHJfcGVyc29uYWxpemF0aW9uc3RyaW5nW10g PSB7Ci0rICAgIDB4NTAsIDB4NmQsIDB4MDEsIDB4MDEsIDB4MDcsIDB4NWEsIDB4ODAsIDB4MzUs IDB4N2EsIDB4NTYsIDB4MWEsIDB4NTYsCi0rICAgIDB4MmYsIDB4OWEsIDB4MGIsIDB4MzUsIDB4 YjIsIDB4YjEsIDB4YzksIDB4ZTUsIDB4Y2EsIDB4NjksIDB4NjEsIDB4NDgsCi0rICAgIDB4ZmYs IDB4ZmIsIDB4MGYsIDB4ZDksIDB4NGIsIDB4NzksIDB4MWQsIDB4YmEKLSt9OwotKwotK19fZmlw c19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEyNTZfcHJfYWRkaXRpb25h bGlucHV0W10gPSB7Ci0rICAgIDB4MjAsIDB4YjgsIDB4ZGYsIDB4NDQsIDB4NzcsIDB4NWEsIDB4 YjgsIDB4ZDMsIDB4YmYsIDB4ZjYsIDB4Y2YsIDB4YWMsCi0rICAgIDB4NWUsIDB4YTYsIDB4OTYs IDB4NjIsIDB4NzMsIDB4NDQsIDB4NDAsIDB4NGEsIDB4MzAsIDB4ZmIsIDB4MzgsIDB4YTUsCi0r ICAgIDB4N2IsIDB4MGQsIDB4ZTQsIDB4MGQsIDB4YzYsIDB4ZTQsIDB4OWEsIDB4MWYKLSt9Owot KwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEyNTZfcHJf ZW50cm9weWlucHV0cHJbXSA9IHsKLSsgICAgMHgwNCwgMHhjNCwgMHg2NSwgMHhmNCwgMHhkMywg MHhiZiwgMHg4MywgMHg0YiwgMHhhYiwgMHhjOCwgMHg0MSwgMHhhOCwKLSsgICAgMHhjMiwgMHhl MCwgMHg0NCwgMHg2MywgMHg3NywgMHg0YywgMHg2ZiwgMHg2YywgMHg0OSwgMHg0NiwgMHhmZiwg MHg5NCwKLSsgICAgMHgxNywgMHhlYSwgMHhlNiwgMHgxYSwgMHg5ZCwgMHg1ZSwgMHg2NiwgMHg3 OAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNo YTI1Nl9wcl9pbnRfcmV0dXJuZWRiaXRzW10gPSB7Ci0rICAgIDB4MDcsIDB4NGQsIDB4YWMsIDB4 OWIsIDB4ODYsIDB4Y2EsIDB4NGEsIDB4YWEsIDB4NmUsIDB4N2EsIDB4MDMsIDB4YTIsCi0rICAg IDB4NWQsIDB4MTAsIDB4ZWEsIDB4MGIsIDB4ZjksIDB4ODMsIDB4Y2MsIDB4ZDEsIDB4ZmMsIDB4 ZTIsIDB4MDcsIDB4YzcsCi0rICAgIDB4MDYsIDB4MzQsIDB4NjAsIDB4NmYsIDB4ODMsIDB4OTQs IDB4OTksIDB4NzYKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWdu ZWQgY2hhciBzaGEyNTZfcHJfYWRkaXRpb25hbGlucHV0MltdID0gewotKyAgICAweDg5LCAweDRl LCAweDQ1LCAweDhjLCAweDExLCAweGY5LCAweGJjLCAweDViLCAweGFjLCAweDc0LCAweDhiLCAw eDRiLAotKyAgICAweDVmLCAweGY3LCAweDE5LCAweGYzLCAweGY1LCAweDI0LCAweDU0LCAweDE0 LCAweGQxLCAweDE1LCAweGIxLCAweDQzLAotKyAgICAweDEyLCAweGE0LCAweDVmLCAweGQ0LCAw eGVjLCAweGZjLCAweGNkLCAweDA5Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIgc2hhMjU2X3ByX2VudHJvcHlpbnB1dHByMltdID0gewotKyAgICAw eDBlLCAweGViLCAweDFmLCAweGQ3LCAweGZjLCAweGQxLCAweDlkLCAweGQ0LCAweDA1LCAweDM2 LCAweDhiLCAweGIyLAotKyAgICAweGZiLCAweGU0LCAweGY0LCAweDUxLCAweDBjLCAweDg3LCAw eDliLCAweDAyLCAweDQ0LCAweGQ1LCAweDkyLCAweDRkLAotKyAgICAweDQ0LCAweGZlLCAweDFh LCAweDAzLCAweDQzLCAweDU2LCAweGJkLCAweDg2Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcg c3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMjU2X3ByX3JldHVybmVkYml0c1tdID0gewot KyAgICAweDAyLCAweGFhLCAweGI2LCAweDFkLCAweDdlLCAweDJhLCAweDQwLCAweDAzLCAweDY5 LCAweDJkLCAweDQ5LCAweGEzLAotKyAgICAweDQxLCAweGU3LCAweDQ0LCAweDBiLCAweGFmLCAw eDdiLCAweDg1LCAweGU0LCAweDVmLCAweDUzLCAweDNiLCAweDY0LAotKyAgICAweGJjLCAweDg5 LCAweGM4LCAweDgyLCAweGQ0LCAweDc4LCAweDM3LCAweGEyCi0rfTsKLSsKLSsvKiBTSEEtMjU2 IE5vIFBSICAqLwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBz aGEyNTZfZW50cm9weWlucHV0W10gPSB7Ci0rICAgIDB4NWIsIDB4MWIsIDB4ZWMsIDB4NGQsIDB4 YTksIDB4MzgsIDB4NzQsIDB4NWEsIDB4MzQsIDB4MGIsIDB4N2IsIDB4YzUsCi0rICAgIDB4ZTUs IDB4ZDcsIDB4NjYsIDB4N2MsIDB4YmMsIDB4ODIsIDB4YjksIDB4MGUsIDB4MmQsIDB4MWYsIDB4 OTIsIDB4ZDcsCi0rICAgIDB4YzEsIDB4YmMsIDB4NjcsIDB4NjksIDB4ZWMsIDB4NmIsIDB4MDMs IDB4M2MKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh ciBzaGEyNTZfbm9uY2VbXSA9IHsKLSsgICAgMHhhNCwgMHgwYywgMHhkOCwgMHg5YywgMHg2MSwg MHhkOCwgMHhjMywgMHg1NCwgMHhmZSwgMHg1MywgMHhjOSwgMHhlNSwKLSsgICAgMHg1ZCwgMHg2 ZiwgMHg2ZCwgMHgzNQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNp Z25lZCBjaGFyIHNoYTI1Nl9wZXJzb25hbGl6YXRpb25zdHJpbmdbXSA9IHsKLSsgICAgMHgyMiwg MHg1ZSwgMHg2MiwgMHg5MywgMHg0MiwgMHg4MywgMHg3OCwgMHgyNCwgMHhkOCwgMHg0MCwgMHg4 YywgMHhkZSwKLSsgICAgMHg2ZiwgMHhmOSwgMHhhNCwgMHg3YSwgMHhjNSwgMHhhNywgMHgzYiwg MHg4OCwgMHhhMywgMHhlZSwgMHg0MiwgMHgyMCwKLSsgICAgMHhmZCwgMHg2MSwgMHg1NiwgMHhj NiwgMHg0YywgMHgxMywgMHg0MSwgMHg5YwotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRp YyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTI1Nl9hZGRpdGlvbmFsaW5wdXRbXSA9IHsKLSsgICAg MHhiZiwgMHg3NCwgMHg1YiwgMHhmNiwgMHhjNSwgMHg2NCwgMHg1ZSwgMHg5OSwgMHgzNCwgMHg4 ZiwgMHhiYywgMHhhNCwKLSsgICAgMHhlMiwgMHhiZCwgMHhkOCwgMHg4NSwgMHgyNiwgMHgzNywg MHhlYSwgMHhiYSwgMHg0ZiwgMHhmMiwgMHg5YSwgMHg5YSwKLSsgICAgMHg2NiwgMHhmYywgMHhk ZiwgMHg2MywgMHgyNiwgMHgyNiwgMHgxOSwgMHg4NwotK307Ci0rCi0rX19maXBzX2NvbnN0c2Vn IHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTI1Nl9pbnRfcmV0dXJuZWRiaXRzW10gPSB7 Ci0rICAgIDB4YjMsIDB4YzYsIDB4MDcsIDB4MDcsIDB4ZDYsIDB4NzUsIDB4ZjYsIDB4MmIsIDB4 ZDYsIDB4MjEsIDB4OTYsIDB4ZjEsCi0rICAgIDB4YWUsIDB4ZGIsIDB4MmIsIDB4YWMsIDB4MjUs IDB4MmEsIDB4YWUsIDB4YWUsIDB4NDEsIDB4NzIsIDB4MDMsIDB4NWUsCi0rICAgIDB4YmYsIDB4 ZDMsIDB4NjQsIDB4YmMsIDB4NTksIDB4ZjksIDB4YzAsIDB4NzYKLSt9OwotKwotK19fZmlwc19j b25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEyNTZfZW50cm9weWlucHV0cmVz ZWVkW10gPSB7Ci0rICAgIDB4YmYsIDB4MjAsIDB4MzMsIDB4NTYsIDB4MjksIDB4YTgsIDB4Mzcs IDB4MDQsIDB4MWYsIDB4NzgsIDB4MzQsIDB4M2QsCi0rICAgIDB4ODEsIDB4MmEsIDB4YzksIDB4 ODYsIDB4YzYsIDB4N2EsIDB4MmYsIDB4ODgsIDB4NWUsIDB4ZDUsIDB4YmUsIDB4MzQsCi0rICAg IDB4NDYsIDB4MjAsIDB4YTQsIDB4MzUsIDB4ZWIsIDB4YzcsIDB4ZTIsIDB4OWQKLSt9OwotKwot K19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEyNTZfYWRkaXRp b25hbGlucHV0cmVzZWVkW10gPSB7Ci0rICAgIDB4OWIsIDB4YWUsIDB4MmQsIDB4MmQsIDB4NjEs IDB4YTQsIDB4ODksIDB4ZWIsIDB4NDMsIDB4NDYsIDB4YTcsIDB4ZGEsCi0rICAgIDB4ZWYsIDB4 NDAsIDB4Y2EsIDB4NGEsIDB4OTksIDB4MTEsIDB4NDEsIDB4ZGMsIDB4NWMsIDB4OTQsIDB4ZTks IDB4YWMsCi0rICAgIDB4ZDQsIDB4ZDAsIDB4ZTYsIDB4YmQsIDB4ZmIsIDB4MDMsIDB4OWMsIDB4 YTgKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBz aGEyNTZfYWRkaXRpb25hbGlucHV0MltdID0gewotKyAgICAweDIzLCAweGFhLCAweDBjLCAweGJk LCAweDI4LCAweDMzLCAweGUyLCAweDUxLCAweGZjLCAweDcxLCAweGQyLCAweDE1LAotKyAgICAw eDFmLCAweDc2LCAweGZkLCAweDBkLCAweGUwLCAweGI3LCAweGI1LCAweDg0LCAweDc1LCAweDVi LCAweGJlLCAweGYzLAotKyAgICAweDVjLCAweGNhLCAweGM1LCAweDMwLCAweGYyLCAweDc1LCAw eDFmLCAweGRhCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgc2hhMjU2X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDkwLCAweDNjLCAweGMxLCAw eDEwLCAweDhjLCAweDEyLCAweDAxLCAweGM2LCAweGE2LCAweDNhLCAweDBmLCAweDRkLAotKyAg ICAweGI2LCAweDNhLCAweDRmLCAweDQxLCAweDljLCAweDYxLCAweDc1LCAweDg0LCAweGU5LCAw eDc0LCAweDc1LCAweGZkLAotKyAgICAweGZlLCAweGYyLCAweDFmLCAweDQzLCAweGQ4LCAweDVl LCAweDI0LCAweGEzCi0rfTsKLSsKLSsvKiBTSEEtMzg0IFBSICAqLwotK19fZmlwc19jb25zdHNl ZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEzODRfcHJfZW50cm9weWlucHV0W10gPSB7 Ci0rICAgIDB4NzEsIDB4OWQsIDB4YjIsIDB4NWEsIDB4NzEsIDB4NmQsIDB4MDQsIDB4ZTksIDB4 MWUsIDB4YzcsIDB4OTIsIDB4MjQsCi0rICAgIDB4NmUsIDB4MTIsIDB4MzMsIDB4YTksIDB4NTIs IDB4NjQsIDB4MzEsIDB4ZWYsIDB4NzEsIDB4ZWIsIDB4MjIsIDB4NTUsCi0rICAgIDB4MjgsIDB4 OTcsIDB4MDYsIDB4NmEsIDB4YzAsIDB4MGMsIDB4YTAsIDB4N2UKLSt9OwotKwotK19fZmlwc19j b25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEzODRfcHJfbm9uY2VbXSA9IHsK LSsgICAgMHhmNSwgMHgwZCwgMHhmYSwgMHhiMCwgMHhlYywgMHg2YSwgMHg3YywgMHhkNiwgMHhi ZCwgMHg5YiwgMHgwNSwgMHhmZCwKLSsgICAgMHgzOCwgMHgzZSwgMHgyZSwgMHg1NgotK307Ci0r Ci0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTM4NF9wcl9w ZXJzb25hbGl6YXRpb25zdHJpbmdbXSA9IHsKLSsgICAgMHg3NCwgMHhhYywgMHg3ZSwgMHg2ZCwg MHhiMSwgMHhhNCwgMHhlNywgMHgyMSwgMHhkMSwgMHgxZSwgMHg2ZSwgMHg5NiwKLSsgICAgMHg2 ZCwgMHg0ZCwgMHg1MywgMHg0NiwgMHg4MiwgMHg5NiwgMHg2ZSwgMHhjZiwgMHhhYSwgMHg4MSwg MHg4ZCwgMHg3ZCwKLSsgICAgMHg5ZSwgMHhlMSwgMHgwZiwgMHgxNSwgMHhlYSwgMHg0MSwgMHhi ZiwgMHhlMwotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIHNoYTM4NF9wcl9hZGRpdGlvbmFsaW5wdXRbXSA9IHsKLSsgICAgMHhkYSwgMHg5NSwgMHhk NCwgMHhkMCwgMHhiOCwgMHgxMSwgMHhkMywgMHg0OSwgMHgyNywgMHg1ZCwgMHhhOSwgMHgzOSwK LSsgICAgMHg2OCwgMHhmMywgMHhhOCwgMHhlOSwgMHg1ZCwgMHgxOSwgMHg4YSwgMHgyYiwgMHg2 NiwgMHhlOCwgMHg2OSwgMHgwNiwKLSsgICAgMHg3YywgMHg5ZSwgMHgwMywgMHhhMSwgMHg4Yiwg MHgyNiwgMHgyZCwgMHg2ZQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1 bnNpZ25lZCBjaGFyIHNoYTM4NF9wcl9lbnRyb3B5aW5wdXRwcltdID0gewotKyAgICAweDQ5LCAw eGRmLCAweDQ0LCAweDAwLCAweGU0LCAweDFjLCAweDc1LCAweDBiLCAweDI2LCAweDVhLCAweDU5 LCAweDY0LAotKyAgICAweDFmLCAweDRlLCAweGIxLCAweGIyLCAweDEzLCAweGYxLCAweDIyLCAw eDRlLCAweGI0LCAweDZkLCAweDlhLCAweGNjLAotKyAgICAweGEwLCAweDQ4LCAweGU2LCAweGNm LCAweDFkLCAweGQxLCAweDkyLCAweDBkCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMzg0X3ByX2ludF9yZXR1cm5lZGJpdHNbXSA9IHsKLSsg ICAgMHhjOCwgMHg1MiwgMHhhZSwgMHhiZiwgMHgwNCwgMHgzYywgMHgyNywgMHhiNywgMHg3OCwg MHgxOCwgMHhhYSwgMHg4ZiwKLSsgICAgMHhmZiwgMHhjZiwgMHhhNCwgMHhmMSwgMHhjYywgMHhl NywgMHg2OCwgMHhmYSwgMHgyMiwgMHhhMiwgMHgxMywgMHg0NSwKLSsgICAgMHhlOCwgMHhkZCwg MHg4NywgMHhlNiwgMHhmMiwgMHg2ZSwgMHhkZCwgMHhjNywgMHg1MiwgMHg5MCwgMHg5ZiwgMHg3 YiwKLSsgICAgMHhmYSwgMHg2MSwgMHgyZCwgMHg5ZCwgMHg5ZSwgMHhjZiwgMHg5OCwgMHhhYywg MHg1MiwgMHg0MCwgMHhjZSwgMHhhZgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBj b25zdCB1bnNpZ25lZCBjaGFyIHNoYTM4NF9wcl9hZGRpdGlvbmFsaW5wdXQyW10gPSB7Ci0rICAg IDB4NjEsIDB4N2MsIDB4MDMsIDB4OWEsIDB4M2UsIDB4NTAsIDB4NTcsIDB4NjAsIDB4YzUsIDB4 ODMsIDB4YzksIDB4YjIsCi0rICAgIDB4ZDEsIDB4ODcsIDB4ODUsIDB4NjYsIDB4OTIsIDB4NWQs IDB4ODQsIDB4MGUsIDB4NTMsIDB4ZmIsIDB4NzAsIDB4MDMsCi0rICAgIDB4NzIsIDB4ZmQsIDB4 YmEsIDB4YWUsIDB4OWMsIDB4OGYsIDB4ZjgsIDB4MTgKLSt9OwotKwotK19fZmlwc19jb25zdHNl ZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEzODRfcHJfZW50cm9weWlucHV0cHIyW10g PSB7Ci0rICAgIDB4ZjgsIDB4ZWIsIDB4ODksIDB4YjEsIDB4OGQsIDB4NzgsIDB4YmUsIDB4MjEs IDB4ZTAsIDB4YmIsIDB4OWQsIDB4YjcsCi0rICAgIDB4OTUsIDB4MGUsIDB4ZDksIDB4NDYsIDB4 MGMsIDB4OGMsIDB4ZTIsIDB4NjMsIDB4YjcsIDB4OWQsIDB4NjcsIDB4OTAsCi0rICAgIDB4YmQs IDB4YzcsIDB4MGIsIDB4YTUsIDB4Y2UsIDB4YjIsIDB4NjUsIDB4ODEKLSt9OwotKwotK19fZmlw c19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEzODRfcHJfcmV0dXJuZWRi aXRzW10gPSB7Ci0rICAgIDB4ZTYsIDB4OWYsIDB4ZmUsIDB4NjgsIDB4ZDYsIDB4YjUsIDB4Nzks IDB4ZjEsIDB4MDYsIDB4NWYsIDB4YTMsIDB4YmIsCi0rICAgIDB4MjMsIDB4ODUsIDB4ZDgsIDB4 ZjAsIDB4MjksIDB4NWEsIDB4NjgsIDB4OWUsIDB4ZjUsIDB4ZjQsIDB4YTYsIDB4MTIsCi0rICAg IDB4ZTAsIDB4OWEsIDB4ZTIsIDB4YWMsIDB4MDAsIDB4MWQsIDB4OTgsIDB4MjYsIDB4ZmMsIDB4 NTMsIDB4OTUsIDB4NTMsCi0rICAgIDB4ZTQsIDB4M2UsIDB4MTcsIDB4ZDUsIDB4MDgsIDB4MGIs IDB4NzAsIDB4M2QsIDB4NjcsIDB4OTksIDB4YWMsIDB4NjYKLSt9OwotKwotKy8qIFNIQS0zODQg Tm8gUFIgICovCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNo YTM4NF9lbnRyb3B5aW5wdXRbXSA9IHsKLSsgICAgMHgwNywgMHgxNSwgMHgyNywgMHgyYSwgMHhh ZiwgMHg3NCwgMHgyNCwgMHgzNywgMHhiYywgMHhkNSwgMHgxNCwgMHg2OSwKLSsgICAgMHhjZSwg MHgxMSwgMHhmZiwgMHhhMiwgMHg2YiwgMHhiOCwgMHgwNSwgMHg2NywgMHgzNCwgMHhmOCwgMHhi ZCwgMHg2ZCwKLSsgICAgMHg2YSwgMHhjYywgMHhjZCwgMHg2MCwgMHhhMywgMHg2OCwgMHhjYSwg MHhmNAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFy IHNoYTM4NF9ub25jZVtdID0gewotKyAgICAweDcwLCAweDE3LCAweGMyLCAweDViLCAweDVkLCAw eDIyLCAweDBiLCAweDA2LCAweDE1LCAweDU0LCAweDc4LCAweDc3LAotKyAgICAweDQ0LCAweGFm LCAweDJmLCAweDA5Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2ln bmVkIGNoYXIgc2hhMzg0X3BlcnNvbmFsaXphdGlvbnN0cmluZ1tdID0gewotKyAgICAweDg5LCAw eDM5LCAweDI4LCAweGIwLCAweDYwLCAweGViLCAweDNkLCAweGRjLCAweDU1LCAweDc1LCAweDg2 LCAweGViLAotKyAgICAweGFlLCAweGEyLCAweDhmLCAweGJjLCAweDFiLCAweDc1LCAweGQ0LCAw eGUxLCAweDBmLCAweGFhLCAweDM4LCAweGNhLAotKyAgICAweDYyLCAweDhiLCAweGNiLCAweDJj LCAweDI2LCAweGY2LCAweGJjLCAweGIxCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMzg0X2FkZGl0aW9uYWxpbnB1dFtdID0gewotKyAgICAw eDMwLCAweDJiLCAweDQyLCAweDM1LCAweGVmLCAweGRhLCAweDQwLCAweDU1LCAweDI4LCAweGM2 LCAweDk1LCAweGZiLAotKyAgICAweDU0LCAweDAxLCAweDYyLCAweGQ3LCAweDg3LCAweDE0LCAw eDQ4LCAweDZkLCAweDkwLCAweDRjLCAweGE5LCAweDAyLAotKyAgICAweDU0LCAweDQwLCAweDIy LCAweGM4LCAweDY2LCAweGE1LCAweDQ4LCAweDQ4Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcg c3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhMzg0X2ludF9yZXR1cm5lZGJpdHNbXSA9IHsK LSsgICAgMHg4MiwgMHhjNCwgMHhhMSwgMHg5YywgMHgyMSwgMHhkMiwgMHhlNywgMHhhNSwgMHhh NiwgMHhmNiwgMHg1ZiwgMHgwNCwKLSsgICAgMHg1YywgMHhjNywgMHgzMSwgMHg5ZCwgMHg4ZCwg MHg1OSwgMHg3NCwgMHg1MCwgMHgxOSwgMHg4OSwgMHgyZiwgMHg2MywKLSsgICAgMHhkNSwgMHhi NywgMHg3ZSwgMHhlYiwgMHgxNSwgMHhlMywgMHg3MCwgMHg4MywgMHhhMSwgMHgyNCwgMHg1OSwg MHhmYSwKLSsgICAgMHgyYywgMHg1NiwgMHhmNiwgMHg4OCwgMHgzYSwgMHg5MiwgMHg5MywgMHhh MSwgMHhmYiwgMHg3OSwgMHhjMSwgMHg3YQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRp YyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTM4NF9lbnRyb3B5aW5wdXRyZXNlZWRbXSA9IHsKLSsg ICAgMHgzOSwgMHhhNiwgMHhlOCwgMHg1YywgMHg4MiwgMHgxNywgMHg3MSwgMHgyNiwgMHg1Nywg MHg0ZiwgMHg5ZiwgMHhjMiwKLSsgICAgMHg1NSwgMHhmZiwgMHg1YywgMHg5YiwgMHg1MywgMHgx YSwgMHhkMSwgMHg1ZiwgMHhiYywgMHg2MiwgMHhlNCwgMHgyNywKLSsgICAgMHgyZCwgMHgzMiwg MHhmMCwgMHhlNCwgMHg1MiwgMHg4YywgMHhjNSwgMHgwYwotK307Ci0rCi0rX19maXBzX2NvbnN0 c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTM4NF9hZGRpdGlvbmFsaW5wdXRyZXNl ZWRbXSA9IHsKLSsgICAgMHg4ZCwgMHhjYiwgMHg4ZCwgMHhjZSwgMHgwOCwgMHhlYSwgMHg4MCwg MHhlOCwgMHg5YiwgMHg2MSwgMHhhOCwgMHgwZiwKLSsgICAgMHhhZiwgMHg0OSwgMHgyMCwgMHg5 ZSwgMHg3NCwgMHhjYiwgMHg1NywgMHg4MCwgMHg0MiwgMHhiMCwgMHg4NCwgMHg1ZSwKLSsgICAg MHgzMCwgMHgyYSwgMHg2NywgMHgwOCwgMHhmNCwgMHhlMywgMHg0MCwgMHgyMgotK307Ci0rCi0r X19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNoYTM4NF9hZGRpdGlv bmFsaW5wdXQyW10gPSB7Ci0rICAgIDB4N2MsIDB4OGYsIDB4YzIsIDB4YWUsIDB4MjIsIDB4NGEs IDB4ZDYsIDB4ZjYsIDB4MDUsIDB4YTQsIDB4N2EsIDB4ZWEsCi0rICAgIDB4YmIsIDB4MjUsIDB4 ZDAsIDB4YjcsIDB4NWEsIDB4ZDYsIDB4Y2YsIDB4OWQsIDB4ZjMsIDB4NmMsIDB4ZTIsIDB4YjIs Ci0rICAgIDB4NGUsIDB4YjQsIDB4YmQsIDB4ZjQsIDB4ZTUsIDB4NDAsIDB4ODAsIDB4OTQKLSt9 OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGEzODRf cmV0dXJuZWRiaXRzW10gPSB7Ci0rICAgIDB4OWUsIDB4N2UsIDB4ZmIsIDB4NTksIDB4YmIsIDB4 YWEsIDB4M2MsIDB4ZjcsIDB4ZTEsIDB4ZjgsIDB4NzYsIDB4ZGQsCi0rICAgIDB4NjMsIDB4NWYs IDB4YWYsIDB4MjMsIDB4ZDYsIDB4NjQsIDB4NjEsIDB4YzAsIDB4OWEsIDB4MDksIDB4NDcsIDB4 YzksCi0rICAgIDB4MzMsIDB4ZGYsIDB4NmQsIDB4NTUsIDB4OTEsIDB4MzQsIDB4NzksIDB4NzAs IDB4YzQsIDB4OTksIDB4NmUsIDB4NTQsCi0rICAgIDB4MDksIDB4NjQsIDB4MjEsIDB4MWEsIDB4 YmQsIDB4MWUsIDB4ODAsIDB4NDAsIDB4MzQsIDB4YWQsIDB4ZmEsIDB4ZDcKLSt9OwotKwotKy8q IFNIQS01MTIgUFIgICovCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIHNoYTUxMl9wcl9lbnRyb3B5aW5wdXRbXSA9IHsKLSsgICAgMHgxMywgMHhmNywgMHg2MSwg MHg3NSwgMHg2NSwgMHgyOCwgMHhhMiwgMHg1OSwgMHgxMywgMHg1YSwgMHg0YSwgMHg0ZiwKLSsg ICAgMHg1NiwgMHg2MCwgMHg4YywgMHg1MywgMHg3ZCwgMHhiMCwgMHhiZCwgMHgwNiwgMHg0Ziwg MHhlZCwgMHhjYywgMHhkMiwKLSsgICAgMHhhMiwgMHhiNSwgMHhmZCwgMHg1YiwgMHgzYSwgMHhh YiwgMHhlYywgMHgyOAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNp Z25lZCBjaGFyIHNoYTUxMl9wcl9ub25jZVtdID0gewotKyAgICAweGJlLCAweGEzLCAweDkxLCAw eDkzLCAweDFkLCAweGMzLCAweDMxLCAweDNhLCAweDIzLCAweDMzLCAweDUwLCAweDY3LAotKyAg ICAweDg4LCAweGM3LCAweGEyLCAweGM0Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhNTEyX3ByX3BlcnNvbmFsaXphdGlvbnN0cmluZ1tdID0g ewotKyAgICAweDFmLCAweDU5LCAweDRkLCAweDdiLCAweGU2LCAweDQ2LCAweDkxLCAweDQ4LCAw eGMxLCAweDI1LCAweGZhLCAweGZmLAotKyAgICAweDg5LCAweDEyLCAweDc3LCAweDM1LCAweGRm LCAweDNlLCAweGY0LCAweDgwLCAweDVmLCAweGQ5LCAweGIwLCAweDA3LAotKyAgICAweDIyLCAw eDQxLCAweGRkLCAweDQ4LCAweDc4LCAweDZiLCAweDc3LCAweDJiCi0rfTsKLSsKLStfX2ZpcHNf Y29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhNTEyX3ByX2FkZGl0aW9uYWxp bnB1dFtdID0gewotKyAgICAweDMwLCAweGZmLCAweDYzLCAweDZmLCAweGFjLCAweGQ5LCAweDg0 LCAweDM5LCAweDZmLCAweGU0LCAweDk5LCAweGNlLAotKyAgICAweDkxLCAweDdkLCAweDdlLCAw eGM4LCAweDU4LCAweGYyLCAweDEyLCAweGMzLCAweGI2LCAweGFkLCAweGRhLCAweDIyLAotKyAg ICAweDA0LCAweGEwLCAweGQyLCAweDIxLCAweGZlLCAweGYyLCAweDk1LCAweDFkCi0rfTsKLSsK LStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhNTEyX3ByX2Vu dHJvcHlpbnB1dHByW10gPSB7Ci0rICAgIDB4NjQsIDB4NTQsIDB4MTMsIDB4ZWMsIDB4NGYsIDB4 NzcsIDB4ZGEsIDB4YjIsIDB4OTIsIDB4MmUsIDB4NTIsIDB4ODAsCi0rICAgIDB4MTEsIDB4MTAs IDB4YzIsIDB4ZjgsIDB4ZTYsIDB4YTcsIDB4Y2QsIDB4NGIsIDB4ZmMsIDB4MzIsIDB4MmUsIDB4 OWUsCi0rICAgIDB4ZWIsIDB4YmIsIDB4YjEsIDB4YmYsIDB4MTUsIDB4NWMsIDB4NzMsIDB4MDgK LSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGE1 MTJfcHJfaW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAweGVmLCAweDFlLCAweGRjLCAweDBh LCAweGE0LCAweDM2LCAweDkxLCAweDljLCAweDNkLCAweDI3LCAweDk3LCAweDUwLAotKyAgICAw eDhkLCAweDM2LCAweDI5LCAweDhkLCAweGNlLCAweDZhLCAweDBjLCAweGY3LCAweDIxLCAweGMw LCAweDkxLCAweGFlLAotKyAgICAweDBjLCAweDk2LCAweDcyLCAweGJkLCAweDUyLCAweDgxLCAw eDU4LCAweGZjLCAweDZkLCAweGU1LCAweGY3LCAweGE1LAotKyAgICAweGZkLCAweDVkLCAweGE3 LCAweDU4LCAweDY4LCAweGM4LCAweDk5LCAweDU4LCAweDhlLCAweGM4LCAweGNlLCAweDk1LAot KyAgICAweDAxLCAweDdkLCAweGZmLCAweGE0LCAweGM4LCAweGY3LCAweDYzLCAweGZlLCAweDVm LCAweDY5LCAweDgzLCAweDUzLAotKyAgICAweGUyLCAweGM2LCAweDhiLCAweGMzCi0rfTsKLSsK LStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhNTEyX3ByX2Fk ZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHhlNiwgMHg5YiwgMHhjNCwgMHg4OCwgMHgzNCwg MHhjYSwgMHhlYSwgMHgyOSwgMHgyZiwgMHg5OCwgMHgwNSwgMHhhNCwKLSsgICAgMHhkMywgMHhj MCwgMHg3YiwgMHgxMSwgMHhlOCwgMHhiYiwgMHg3NSwgMHhmMiwgMHhiZCwgMHgyOSwgMHhiNywg MHg0MCwKLSsgICAgMHgyNSwgMHg3ZiwgMHhjMSwgMHhiNywgMHhiMSwgMHhmMSwgMHgyNSwgMHg2 MQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHNo YTUxMl9wcl9lbnRyb3B5aW5wdXRwcjJbXSA9IHsKLSsgICAgMHgyMywgMHg2ZCwgMHhmZiwgMHhk ZSwgMHhmYiwgMHhkMSwgMHhiYSwgMHgzMywgMHgxOCwgMHhlNiwgMHhiZSwgMHhiNSwKLSsgICAg MHg0OCwgMHg3NywgMHg2ZCwgMHg3ZiwgMHhhNywgMHhlMSwgMHg0ZCwgMHg0OCwgMHgxZSwgMHgz YywgMHhhNywgMHgzNCwKLSsgICAgMHgxYSwgMHhjOCwgMHg2MCwgMHhkYiwgMHg4ZiwgMHg5OSwg MHgxNSwgMHg5OQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIHNoYTUxMl9wcl9yZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHg3MCwgMHgyNywgMHgz MSwgMHhkYiwgMHg5MiwgMHg3MCwgMHgyMSwgMHhmZSwgMHgxNiwgMHhiNiwgMHhjOCwgMHg1MSwK LSsgICAgMHgzNCwgMHg4NywgMHg2NSwgMHhkMCwgMHg0ZSwgMHhmZCwgMHhmZSwgMHg2OCwgMHhl YywgMHhhYywgMHhkYywgMHg5MywKLSsgICAgMHg0MSwgMHgzOCwgMHg5MiwgMHg5MCwgMHhiNCwg MHg5NCwgMHhmOSwgMHgwZCwgMHhhNCwgMHhmNywgMHg0ZSwgMHg4MCwKLSsgICAgMHg5MiwgMHg2 NywgMHg0OCwgMHg0MCwgMHhhNywgMHgwOCwgMHhjNywgMHhiYywgMHg2NiwgMHgwMCwgMHhmZCwg MHhmNywKLSsgICAgMHg0YywgMHg4YiwgMHgxNywgMHg2ZSwgMHhkMSwgMHg4ZiwgMHg5YiwgMHhm MywgMHg2ZiwgMHhmNiwgMHgzNCwgMHhkZCwKLSsgICAgMHg2NywgMHhmNywgMHg2OCwgMHhkZAot K307Ci0rCi0rLyogU0hBLTUxMiBObyBQUiAgKi8KLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIgc2hhNTEyX2VudHJvcHlpbnB1dFtdID0gewotKyAgICAweGI2LCAw eDBiLCAweGI3LCAweGJjLCAweDg0LCAweDU2LCAweGY2LCAweDEyLCAweGFmLCAweDQ1LCAweDY3 LCAweDE3LAotKyAgICAweDdjLCAweGQxLCAweGIyLCAweDc4LCAweDJiLCAweGEwLCAweGYyLCAw eGJlLCAweGI2LCAweDZkLCAweDhiLCAweDU2LAotKyAgICAweGM2LCAweGJjLCAweDRkLCAweGUx LCAweGY3LCAweGJlLCAweGNlLCAweGJkCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhNTEyX25vbmNlW10gPSB7Ci0rICAgIDB4OWQsIDB4ZWQs IDB4YzAsIDB4ZTUsIDB4NWEsIDB4OTgsIDB4NmEsIDB4Y2IsIDB4NTEsIDB4N2QsIDB4NzYsIDB4 MzEsCi0rICAgIDB4NWEsIDB4NjQsIDB4ZjAsIDB4ZjcKLSt9OwotKwotK19fZmlwc19jb25zdHNl ZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGE1MTJfcGVyc29uYWxpemF0aW9uc3RyaW5n W10gPSB7Ci0rICAgIDB4YzIsIDB4NmQsIDB4YTMsIDB4YzMsIDB4MDYsIDB4NzQsIDB4ZTUsIDB4 MDEsIDB4NWMsIDB4MTAsIDB4MTcsIDB4YzcsCi0rICAgIDB4YWYsIDB4ODMsIDB4OWQsIDB4NTks IDB4OGQsIDB4MmQsIDB4MjksIDB4MzgsIDB4YzUsIDB4NTksIDB4NzAsIDB4OGIsCi0rICAgIDB4 NDYsIDB4NDgsIDB4MmQsIDB4Y2YsIDB4MzYsIDB4N2QsIDB4NTksIDB4YzAKLSt9OwotKwotK19f Zmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGE1MTJfYWRkaXRpb25h bGlucHV0W10gPSB7Ci0rICAgIDB4ZWMsIDB4OGMsIDB4ZDQsIDB4ZjcsIDB4NjEsIDB4NmUsIDB4 MGQsIDB4OTUsIDB4NzksIDB4YjcsIDB4MjgsIDB4YWQsCi0rICAgIDB4NWYsIDB4NjksIDB4NzQs IDB4NWYsIDB4MmQsIDB4MzYsIDB4MDYsIDB4OGEsIDB4NmIsIDB4YWMsIDB4NTQsIDB4OTcsCi0r ICAgIDB4YzQsIDB4YTEsIDB4MTIsIDB4ODUsIDB4MGEsIDB4ZGYsIDB4NGIsIDB4MzQKLSt9Owot KwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBzaGE1MTJfaW50 X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDg0LCAweDJmLCAweDFmLCAweDY4LCAweDZhLCAw eGEzLCAweGFkLCAweDFlLCAweGZiLCAweGY0LCAweDE1LCAweGJkLAotKyAgICAweGRlLCAweDM4 LCAweGQ0LCAweDMwLCAweDgwLCAweDUxLCAweGU5LCAweGQzLCAweGM3LCAweDIwLCAweDg4LCAw eGU5LAotKyAgICAweGY1LCAweGNjLCAweGRmLCAweDU3LCAweDVjLCAweDQ3LCAweDJmLCAweDU3 LCAweDNjLCAweDVmLCAweDEzLCAweDU2LAotKyAgICAweGNjLCAweGM1LCAweDRmLCAweDg0LCAw eGY4LCAweDEwLCAweDQxLCAweGQ1LCAweDdlLCAweDU4LCAweDZlLCAweDE5LAotKyAgICAweDE5 LCAweDllLCAweGFmLCAweGMyLCAweDIyLCAweDU4LCAweDQxLCAweDUwLCAweDc5LCAweGMyLCAw eGQ4LCAweDA0LAotKyAgICAweDI4LCAweGQ0LCAweDM5LCAweDlhCi0rfTsKLSsKLStfX2ZpcHNf Y29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhNTEyX2VudHJvcHlpbnB1dHJl c2VlZFtdID0gewotKyAgICAweGZhLCAweDdmLCAweDQ2LCAweDUxLCAweDgzLCAweDYyLCAweDk4 LCAweDE2LCAweDlhLCAweDE5LCAweGEyLCAweDQ5LAotKyAgICAweGE5LCAweGU2LCAweDRhLCAw eGQ4LCAweDg1LCAweGU3LCAweGQ0LCAweDNiLCAweDJjLCAweDgyLCAweGM1LCAweDgyLAotKyAg ICAweGJmLCAweDExLCAweGY5LCAweDllLCAweGJjLCAweGQwLCAweDAxLCAweGVlCi0rfTsKLSsK LStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgc2hhNTEyX2FkZGl0 aW9uYWxpbnB1dHJlc2VlZFtdID0gewotKyAgICAweGI5LCAweDEyLCAweGUwLCAweDRmLCAweGY3 LCAweGE3LCAweGM0LCAweGQ4LCAweGQwLCAweDhlLCAweDk5LCAweDI5LAotKyAgICAweDdjLCAw eDlhLCAweGU5LCAweGNmLCAweGM0LCAweDZjLCAweGY4LCAweGMzLCAweGE3LCAweDQxLCAweDgz LCAweGQ2LAotKyAgICAweDJlLCAweGZhLCAweGI4LCAweDVlLCAweDhlLCAweDZiLCAweDc4LCAw eDIwCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIg c2hhNTEyX2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHhkNywgMHgwNywgMHg1MiwgMHhi OSwgMHg4MywgMHgyYywgMHgwMywgMHg3MSwgMHhlZSwgMHhjOSwgMHhjMCwgMHg4NSwKLSsgICAg MHhlMSwgMHg1NywgMHhiMiwgMHhjZCwgMHgzYSwgMHhmMCwgMHhjOSwgMHgzNCwgMHgyNCwgMHg0 MSwgMHgxYywgMHg0MiwKLSsgICAgMHg5OSwgMHhiMiwgMHg4NCwgMHhlOSwgMHgxNywgMHhkMiwg MHg3NiwgMHg5MgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIHNoYTUxMl9yZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHgzNiwgMHgxNywgMHg1ZCwg MHg5OCwgMHgyYiwgMHg2NSwgMHgyNSwgMHg4ZSwgMHhjOCwgMHgyOSwgMHhkZiwgMHgyNywKLSsg ICAgMHgwNSwgMHgzNiwgMHgyNiwgMHgxMiwgMHg4YSwgMHg2OCwgMHg3NCwgMHgyNywgMHgzNywg MHhkNCwgMHg3ZiwgMHgzMiwKLSsgICAgMHhiMSwgMHgxMiwgMHhkNiwgMHg4NSwgMHg4MywgMHhl YiwgMHgyZSwgMHhhMCwgMHhlZCwgMHg0YiwgMHhiNSwgMHg3YiwKLSsgICAgMHg2ZiwgMHgzOSwg MHgzYywgMHg3MSwgMHg3NywgMHgwMiwgMHgxMiwgMHhjYywgMHgyYywgMHgzYSwgMHg4ZSwgMHg2 MywKLSsgICAgMHhkZiwgMHg0YSwgMHhiZCwgMHg2ZiwgMHg2ZSwgMHgyZSwgMHhlZCwgMHgwYSwg MHg4NSwgMHhhNSwgMHgyZiwgMHhhMiwKLSsgICAgMHg2OCwgMHhkZSwgMHg0MiwgMHhiNQotK307 Ci0rCi0rLyogSE1BQyBTSEEtMSBQUiAgKi8KLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgaG1hY19zaGExX3ByX2VudHJvcHlpbnB1dFtdID0gewotKyAgICAweDI2 LCAweDVmLCAweDM2LCAweDE0LCAweGZmLCAweDNkLCAweDgzLCAweGZhLCAweDczLCAweDVlLCAw eDc1LCAweGRjLAotKyAgICAweDJjLCAweDE4LCAweDE3LCAweDFiCi0rfTsKLSsKLStfX2ZpcHNf Y29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGExX3ByX25vbmNlW10g PSB7Ci0rICAgIDB4YzgsIDB4ZTMsIDB4NTcsIDB4YTUsIDB4N2IsIDB4NzQsIDB4ODYsIDB4NmUK LSt9OwotKwotK19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh ciBobWFjX3NoYTFfcHJfcGVyc29uYWxpemF0aW9uc3RyaW5nW10gPSB7Ci0rICAgIDB4NmUsIDB4 ZGIsIDB4MGQsIDB4ZmUsIDB4N2QsIDB4YWMsIDB4NzksIDB4ZDAsIDB4YTUsIDB4M2EsIDB4NDgs IDB4ODUsCi0rICAgIDB4ODAsIDB4ZTIsIDB4N2YsIDB4MmEKLSt9OwotKwotK19fZmlwc19jb25z dHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTFfcHJfYWRkaXRpb25hbGlu cHV0W10gPSB7Ci0rICAgIDB4MzEsIDB4Y2QsIDB4NWUsIDB4NDMsIDB4ZGMsIDB4ZmIsIDB4N2Es IDB4NzksIDB4Y2EsIDB4ODgsIDB4ZGUsIDB4MWYsCi0rICAgIDB4ZDcsIDB4YmIsIDB4NDIsIDB4 MDkKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBo bWFjX3NoYTFfcHJfZW50cm9weWlucHV0cHJbXSA9IHsKLSsgICAgMHg3YywgMHgyMywgMHg5NSwg MHgzOCwgMHgwMCwgMHg5NSwgMHhjMSwgMHg3OCwgMHgxZiwgMHg4ZiwgMHhkNywgMHg2MywKLSsg ICAgMHgyMywgMHg4NywgMHgyYSwgMHhlZAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRp YyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhMV9wcl9pbnRfcmV0dXJuZWRiaXRzW10gPSB7 Ci0rICAgIDB4YmIsIDB4MzQsIDB4ZTcsIDB4OTMsIDB4YTMsIDB4MDIsIDB4MmMsIDB4NGEsIDB4 ZDAsIDB4ODksIDB4ZGEsIDB4N2YsCi0rICAgIDB4ZWQsIDB4ZjQsIDB4NGMsIDB4ZGUsIDB4MTcs IDB4ZWMsIDB4ZTUsIDB4NmMKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3Qg dW5zaWduZWQgY2hhciBobWFjX3NoYTFfcHJfYWRkaXRpb25hbGlucHV0MltdID0gewotKyAgICAw eDQ5LCAweGJjLCAweDJkLCAweDJjLCAweGI3LCAweDMyLCAweGNiLCAweDIwLCAweGRmLCAweGY1 LCAweDc3LCAweDU4LAotKyAgICAweGEwLCAweDRiLCAweDkzLCAweDZlCi0rfTsKLSsKLStfX2Zp cHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGExX3ByX2VudHJv cHlpbnB1dHByMltdID0gewotKyAgICAweDNjLCAweGFhLCAweGIwLCAweDIxLCAweDQyLCAweGIw LCAweGRkLCAweDM0LCAweGYwLCAweDE2LCAweDdmLCAweDBjLAotKyAgICAweDBmLCAweGZmLCAw eDJlLCAweGFmCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgaG1hY19zaGExX3ByX3JldHVybmVkYml0c1tdID0gewotKyAgICAweDhlLCAweGNiLCAw eGEzLCAweDY0LCAweGIyLCAweGI4LCAweDMzLCAweDZjLCAweDY0LCAweDNiLCAweDc4LCAweDE2 LAotKyAgICAweDk5LCAweDM1LCAweGM4LCAweDMwLCAweGNiLCAweDNlLCAweGEwLCAweGQ4Ci0r fTsKLSsKLSsvKiBITUFDIFNIQS0xIE5vIFBSICAqLwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMg Y29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTFfZW50cm9weWlucHV0W10gPSB7Ci0rICAgIDB4 MzIsIDB4OWEsIDB4MmEsIDB4ODcsIDB4N2IsIDB4ODksIDB4N2MsIDB4ZjYsIDB4Y2IsIDB4OTUs IDB4ZDUsIDB4NDAsCi0rICAgIDB4MTcsIDB4ZmUsIDB4NDcsIDB4NzAKLSt9OwotKwotK19fZmlw c19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTFfbm9uY2VbXSA9 IHsKLSsgICAgMHgxNiwgMHhkOCwgMHhlMCwgMHhjNywgMHg1MiwgMHhjZiwgMHg0YSwgMHgyNQot K307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNf c2hhMV9wZXJzb25hbGl6YXRpb25zdHJpbmdbXSA9IHsKLSsgICAgMHgzNSwgMHgzNSwgMHhhOSwg MHhhNSwgMHg0MCwgMHhiZSwgMHg5YiwgMHhkMSwgMHg1NiwgMHhkZCwgMHg0NCwgMHgwMCwKLSsg ICAgMHg3MiwgMHhmNywgMHhkMywgMHg1ZQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRp YyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhMV9hZGRpdGlvbmFsaW5wdXRbXSA9IHsKLSsg ICAgMHgxYiwgMHgyYywgMHg4NCwgMHgyZCwgMHg0YSwgMHg4OSwgMHg4ZiwgMHg2OSwgMHgxOSwg MHhmMSwgMHhmMywgMHhkYiwKLSsgICAgMHhiYiwgMHhlMywgMHhhYSwgMHhlYQotK307Ci0rCi0r X19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhMV9pbnRf cmV0dXJuZWRiaXRzW10gPSB7Ci0rICAgIDB4Y2YsIDB4ZmEsIDB4N2QsIDB4NzIsIDB4MGYsIDB4 ZTYsIDB4YzcsIDB4OTYsIDB4YTAsIDB4NjksIDB4MzEsIDB4MTEsCi0rICAgIDB4OWIsIDB4MGIs IDB4MWEsIDB4MjAsIDB4MWYsIDB4M2YsIDB4YWEsIDB4ZDEKLSt9OwotKwotK19fZmlwc19jb25z dHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTFfZW50cm9weWlucHV0cmVz ZWVkW10gPSB7Ci0rICAgIDB4OTAsIDB4NzUsIDB4MTUsIDB4MDQsIDB4OTUsIDB4ZjEsIDB4YmEs IDB4ODEsIDB4MGMsIDB4MzcsIDB4OTQsIDB4NmYsCi0rICAgIDB4ODYsIDB4NTIsIDB4NmQsIDB4 OWMKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBo bWFjX3NoYTFfYWRkaXRpb25hbGlucHV0cmVzZWVkW10gPSB7Ci0rICAgIDB4NWIsIDB4NDAsIDB4 YmEsIDB4NWYsIDB4MTcsIDB4NzAsIDB4ZjAsIDB4NGIsIDB4ZGYsIDB4YzksIDB4OTcsIDB4OTIs Ci0rICAgIDB4NzksIDB4YzUsIDB4ODIsIDB4MjgKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBz dGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTFfYWRkaXRpb25hbGlucHV0MltdID0g ewotKyAgICAweDk3LCAweGM4LCAweDgwLCAweDkwLCAweGIzLCAweGFhLCAweDZlLCAweDYwLCAw eGVhLCAweDgzLCAweDdhLCAweGUzLAotKyAgICAweDhhLCAweGNhLCAweGE0LCAweDdmCi0rfTsK LSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEx X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDkwLCAweGJkLCAweDA1LCAweDU2LCAweDZkLCAw eGI1LCAweDIyLCAweGQ1LCAweGI5LCAweDVhLCAweDI5LCAweDJkLAotKyAgICAweGU5LCAweDBi LCAweGUxLCAweGFjLCAweGRlLCAweDI3LCAweDBiLCAweGIwCi0rfTsKLSsKLSsvKiBITUFDIFNI QS0yMjQgUFIgICovCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFy IGhtYWNfc2hhMjI0X3ByX2VudHJvcHlpbnB1dFtdID0gewotKyAgICAweDE3LCAweDMyLCAweDJi LCAweDJlLCAweDZmLCAweDFiLCAweDljLCAweDZkLCAweDMxLCAweGUwLCAweDM0LCAweDA3LAot KyAgICAweGNmLCAweGVkLCAweGY2LCAweGI2LCAweDVhLCAweDc2LCAweDRjLCAweGJjLCAweDYy LCAweDg1LCAweDAxLCAweDkwCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEyMjRfcHJfbm9uY2VbXSA9IHsKLSsgICAgMHgzOCwgMHhi ZiwgMHg1ZiwgMHgyMCwgMHhiMywgMHg2OCwgMHgyZiwgMHg0MywgMHg2MSwgMHgwNSwgMHg4Ziwg MHgyMwotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIGhtYWNfc2hhMjI0X3ByX3BlcnNvbmFsaXphdGlvbnN0cmluZ1tdID0gewotKyAgICAw eGMwLCAweGM5LCAweDQ1LCAweGFjLCAweDhkLCAweDI3LCAweDc3LCAweDA4LCAweDBiLCAweDE3 LCAweDZkLCAweGVkLAotKyAgICAweGMxLCAweDdkLCAweGQ1LCAweDA3LCAweDlkLCAweDZlLCAw eGY4LCAweDIzLCAweDJhLCAweDIyLCAweDEzLCAweGJkCi0rfTsKLSsKLStfX2ZpcHNfY29uc3Rz ZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEyMjRfcHJfYWRkaXRpb25hbGlu cHV0W10gPSB7Ci0rICAgIDB4YTQsIDB4M2MsIDB4ZTcsIDB4M2IsIDB4ZWEsIDB4MTksIDB4NDUs IDB4MzIsIDB4YzIsIDB4ODMsIDB4NmQsIDB4MjEsCi0rICAgIDB4OGEsIDB4YzAsIDB4ZWUsIDB4 NjcsIDB4NDUsIDB4ZGUsIDB4MTMsIDB4N2QsIDB4OWQsIDB4NjEsIDB4MDAsIDB4M2IKLSt9Owot KwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTIy NF9wcl9lbnRyb3B5aW5wdXRwcltdID0gewotKyAgICAweDE1LCAweDA1LCAweDc0LCAweDRhLCAw eDdmLCAweDhkLCAweDVjLCAweDYwLCAweDE2LCAweGU1LCAweDdiLCAweGFkLAotKyAgICAweGY1 LCAweDQxLCAweDhmLCAweDU1LCAweDYwLCAweGM0LCAweDA5LCAweGVlLCAweDFlLCAweDExLCAw eDgxLCAweGFiCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgaG1hY19zaGEyMjRfcHJfaW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDZmLCAw eGY1LCAweDlhLCAweGUyLCAweDU0LCAweDUzLCAweDMwLCAweDNkLCAweDVhLCAweDI3LCAweDI5 LCAweDM4LAotKyAgICAweDI3LCAweGYyLCAweDBkLCAweDA1LCAweGU5LCAweDI2LCAweGNiLCAw eDE2LCAweGMzLCAweDUxLCAweDVmLCAweDEzLAotKyAgICAweDQxLCAweGZlLCAweDk5LCAweGYy Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1h Y19zaGEyMjRfcHJfYWRkaXRpb25hbGlucHV0MltdID0gewotKyAgICAweDczLCAweDgxLCAweDg4 LCAweDg0LCAweDhmLCAweGVkLCAweDZmLCAweDEwLCAweDlmLCAweDkzLCAweGJmLCAweDE3LAot KyAgICAweDM1LCAweDdjLCAweGVmLCAweGQ1LCAweDhkLCAweDI2LCAweGE2LCAweDdhLCAweGU4 LCAweDA5LCAweDM2LCAweDRmCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEyMjRfcHJfZW50cm9weWlucHV0cHIyW10gPSB7Ci0rICAg IDB4ZTYsIDB4Y2YsIDB4Y2YsIDB4N2UsIDB4MTIsIDB4ZTUsIDB4NDMsIDB4ZDIsIDB4MzgsIDB4 ZDgsIDB4MjQsIDB4NmYsCi0rICAgIDB4NWEsIDB4MzcsIDB4NjgsIDB4YmYsIDB4NGYsIDB4YTAs IDB4ZmYsIDB4ZDUsIDB4NjEsIDB4OGEsIDB4OTMsIDB4ZTAKLSt9OwotKwotK19fZmlwc19jb25z dHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTIyNF9wcl9yZXR1cm5lZGJp dHNbXSA9IHsKLSsgICAgMHhhZiwgMHhmOSwgMHhkOCwgMHgxOSwgMHg5MSwgMHgzMCwgMHg4Miwg MHg2ZiwgMHhhOSwgMHgxZSwgMHg5ZCwgMHhkNywKLSsgICAgMHhmMywgMHg1MCwgMHhlMCwgMHhj NywgMHhkNSwgMHg2NCwgMHg5NiwgMHg3ZCwgMHg0YywgMHg0ZCwgMHg3OCwgMHgwMywKLSsgICAg MHg2ZCwgMHhkOCwgMHg5ZSwgMHg3MgotK307Ci0rCi0rLyogSE1BQyBTSEEtMjI0IE5vIFBSICAq LwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTIy NF9lbnRyb3B5aW5wdXRbXSA9IHsKLSsgICAgMHgxMSwgMHg4MiwgMHhmZCwgMHhkOSwgMHg0Miwg MHhmNCwgMHhmYSwgMHhjOCwgMHhmMiwgMHg0MSwgMHhlNiwgMHg1NCwKLSsgICAgMHgwMSwgMHhh ZSwgMHgyMiwgMHg2ZSwgMHhjNiwgMHhhZiwgMHhhZiwgMHhkMCwgMHhhNiwgMHhiMiwgMHhlMiwg MHg2ZAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFy IGhtYWNfc2hhMjI0X25vbmNlW10gPSB7Ci0rICAgIDB4YTksIDB4NDgsIDB4ZDcsIDB4OTIsIDB4 MzksIDB4N2UsIDB4MmEsIDB4ZGMsIDB4MzAsIDB4MWYsIDB4MGUsIDB4MmIKLSt9OwotKwotK19f Zmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTIy NF9wZXJzb25hbGl6YXRpb25zdHJpbmdbXSA9IHsKLSsgICAgMHgxMSwgMHhkNSwgMHhmNCwgMHhi ZCwgMHg2NywgMHg4YywgMHgzMSwgMHhjZiwgMHhhMywgMHgzZiwgMHgxZSwgMHg2YiwKLSsgICAg MHhhOCwgMHgwNywgMHgwMiwgMHgwYiwgMHhjOCwgMHgyZSwgMHg2YywgMHg2NCwgMHg0MSwgMHg1 YiwgMHhjOCwgMHgzNwotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNp Z25lZCBjaGFyIGhtYWNfc2hhMjI0X2FkZGl0aW9uYWxpbnB1dFtdID0gewotKyAgICAweDY4LCAw eDE4LCAweGMyLCAweDA2LCAweGViLCAweDNlLCAweDA0LCAweDk1LCAweDQ0LCAweDVlLCAweGZi LCAweGU2LAotKyAgICAweDQxLCAweGMxLCAweDVjLCAweGNjLCAweDQwLCAweDJmLCAweGI3LCAw eGQyLCAweDBmLCAweGYzLCAweDZiLCAweGU3Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3Rh dGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEyMjRfaW50X3JldHVybmVkYml0c1tdID0g ewotKyAgICAweDdmLCAweDQ1LCAweGM3LCAweDVkLCAweDMyLCAweGU2LCAweDE3LCAweDYwLCAw eGJhLCAweGRjLCAweGI4LCAweDQyLAotKyAgICAweDFiLCAweDljLCAweGYxLCAweGZhLCAweDNi LCAweDRkLCAweDI5LCAweDU0LCAweGM2LCAweDkwLCAweGZmLCAweDVjLAotKyAgICAweGNkLCAw eGQ2LCAweGE5LCAweGNjCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVu c2lnbmVkIGNoYXIgaG1hY19zaGEyMjRfZW50cm9weWlucHV0cmVzZWVkW10gPSB7Ci0rICAgIDB4 YzQsIDB4OGUsIDB4MzcsIDB4OTUsIDB4NjksIDB4NTMsIDB4MjgsIDB4ZDcsIDB4MzcsIDB4YmIs IDB4NzAsIDB4OTUsCi0rICAgIDB4MWMsIDB4MDcsIDB4MWQsIDB4ZDksIDB4YjcsIDB4ZTYsIDB4 MWIsIDB4YmIsIDB4ZmUsIDB4NDEsIDB4ZWIsIDB4YzkKLSt9OwotKwotK19fZmlwc19jb25zdHNl ZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTIyNF9hZGRpdGlvbmFs aW5wdXRyZXNlZWRbXSA9IHsKLSsgICAgMHg1MywgMHgxNywgMHhhMSwgMHg2YSwgMHhmYSwgMHg3 NywgMHg0NywgMHhiMCwgMHg5NSwgMHg1NiwgMHg5YSwgMHgyMCwKLSsgICAgMHg1NywgMHhkZSwg MHg1YywgMHg4OSwgMHg5ZiwgMHg3ZiwgMHhlMiwgMHhkZSwgMHgxNywgMHgzYSwgMHg1MCwgMHgy MwotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGht YWNfc2hhMjI0X2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHgzYSwgMHgzMiwgMHhmOSwg MHg4NSwgMHgwYywgMHhjMSwgMHhlZCwgMHg3NiwgMHgyZCwgMHhkZiwgMHg0MCwgMHhjMywKLSsg ICAgMHgwNiwgMHgyMiwgMHg2NiwgMHhkNCwgMHg5YSwgMHg5YSwgMHhmZiwgMHg1YSwgMHg3ZSwg MHg3YSwgMHhmMywgMHg5NgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1 bnNpZ25lZCBjaGFyIGhtYWNfc2hhMjI0X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDQzLCAw eGI0LCAweDU3LCAweDVjLCAweDM4LCAweDI1LCAweDlkLCAweGFlLCAweGVjLCAweDk2LCAweGQx LCAweDg1LAotKyAgICAweDNhLCAweDg0LCAweDhkLCAweGZlLCAweDY4LCAweGQ1LCAweDBlLCAw eDVjLCAweDhmLCAweDY1LCAweGE1LCAweDRlLAotKyAgICAweDQ1LCAweDg0LCAweGE4LCAweDk0 Ci0rfTsKLSsKLSsvKiBITUFDIFNIQS0yNTYgUFIgICovCi0rX19maXBzX2NvbnN0c2VnIHN0YXRp YyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhMjU2X3ByX2VudHJvcHlpbnB1dFtdID0gewot KyAgICAweDRkLCAweGIwLCAweDQzLCAweGQ4LCAweDM0LCAweDRiLCAweDEwLCAweDcwLCAweGIx LCAweDhiLCAweGVkLCAweGVhLAotKyAgICAweDA3LCAweDkyLCAweDlmLCAweDZjLCAweDc5LCAw eDMxLCAweGFmLCAweDgxLCAweDI5LCAweGViLCAweDZlLCAweGNhLAotKyAgICAweDMyLCAweDQ4 LCAweDI4LCAweGU3LCAweDAyLCAweDVkLCAweGE2LCAweGE2Ci0rfTsKLSsKLStfX2ZpcHNfY29u c3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEyNTZfcHJfbm9uY2VbXSA9 IHsKLSsgICAgMHgzYSwgMHhhZSwgMHgxNSwgMHhhOSwgMHg5OSwgMHhkYywgMHhlNCwgMHg2Nywg MHgzNCwgMHgzYiwgMHg3MCwgMHgxNSwKLSsgICAgMHhhYSwgMHhkMywgMHgzMCwgMHg5YQotK307 Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGht YWNfc2hhMjU2X3ByX3BlcnNvbmFsaXphdGlvbnN0cmluZ1tdID0gewotKyAgICAweDEzLCAweDFk LCAweDI0LCAweDA0LCAweGIwLCAweDE4LCAweDgxLCAweDE1LCAweDIxLCAweDUxLCAweDJhLCAw eDI0LAotKyAgICAweDUyLCAweDYxLCAweGJlLCAweDY0LCAweDgyLCAweDZiLCAweDU1LCAweDJm LCAweGUyLCAweGYxLCAweDQwLCAweDdkLAotKyAgICAweDcxLCAweGQ4LCAweDAxLCAweDg2LCAw eDE1LCAweGI3LCAweDhiLCAweGI1Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEyNTZfcHJfYWRkaXRpb25hbGlucHV0W10gPSB7Ci0r ICAgIDB4OGYsIDB4YTYsIDB4NTQsIDB4NWYsIDB4YjEsIDB4ZDAsIDB4ZDgsIDB4YzMsIDB4ZTcs IDB4MGMsIDB4MTUsIDB4YTksCi0rICAgIDB4MjMsIDB4NmUsIDB4ZmUsIDB4ZmIsIDB4OTMsIDB4 ZjcsIDB4M2EsIDB4YmQsIDB4NTksIDB4MDEsIDB4ZmEsIDB4MTgsCi0rICAgIDB4OGUsIDB4ZTks IDB4MWEsIDB4YTksIDB4NzgsIDB4ZmMsIDB4NzksIDB4MGIKLSt9OwotKwotK19fZmlwc19jb25z dHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTI1Nl9wcl9lbnRyb3B5aW5w dXRwcltdID0gewotKyAgICAweGNmLCAweDI0LCAweGI5LCAweGViLCAweGIzLCAweGQ0LCAweGNk LCAweDE3LCAweDM3LCAweDM4LCAweDc1LCAweDc5LAotKyAgICAweDE1LCAweGNiLCAweDJkLCAw eDc1LCAweDUxLCAweGYxLCAweGNjLCAweGFhLCAweDMyLCAweGE0LCAweGE3LCAweDM2LAotKyAg ICAweDdjLCAweDVjLCAweGU0LCAweDQ3LCAweGYxLCAweDNlLCAweDFkLCAweGU1Ci0rfTsKLSsK LStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEyNTZf cHJfaW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDUyLCAweDQyLCAweGZhLCAweGViLCAw eDg1LCAweGUwLCAweDMwLCAweDIyLCAweDc5LCAweDAwLCAweDE2LCAweGIyLAotKyAgICAweDg4 LCAweDJmLCAweDE0LCAweDZhLCAweGI3LCAweGZjLCAweGI3LCAweDUzLCAweGRjLCAweDRhLCAw eDEyLCAweGVmLAotKyAgICAweDU0LCAweGQ2LCAweDMzLCAweGU5LCAweDIwLCAweGQ2LCAweGZk LCAweDU2Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo YXIgaG1hY19zaGEyNTZfcHJfYWRkaXRpb25hbGlucHV0MltdID0gewotKyAgICAweGY0LCAweGY2 LCAweDQ5LCAweGExLCAweDJkLCAweDY0LCAweDJiLCAweDMwLCAweDU4LCAweGY4LCAweGJkLCAw eGI4LAotKyAgICAweDc1LCAweGViLCAweGJiLCAweDVlLCAweDFjLCAweDliLCAweDgxLCAweDZh LCAweGRhLCAweDE0LCAweDg2LCAweDZlLAotKyAgICAweGQwLCAweGRhLCAweDE4LCAweGI3LCAw eDg4LCAweGZiLCAweDU5LCAweGYzCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEyNTZfcHJfZW50cm9weWlucHV0cHIyW10gPSB7Ci0r ICAgIDB4MjEsIDB4Y2QsIDB4NmUsIDB4NDYsIDB4YWQsIDB4OTksIDB4MDcsIDB4MTcsIDB4YjQs IDB4M2QsIDB4NzYsIDB4MGEsCi0rICAgIDB4ZmYsIDB4NWIsIDB4NTIsIDB4NTAsIDB4NzgsIDB4 ZGYsIDB4MWYsIDB4MjQsIDB4MDYsIDB4MGQsIDB4M2YsIDB4NzQsCi0rICAgIDB4YTksIDB4Yzks IDB4MzcsIDB4Y2YsIDB4ZDgsIDB4MjYsIDB4MjUsIDB4OTEKLSt9OwotKwotK19fZmlwc19jb25z dHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTI1Nl9wcl9yZXR1cm5lZGJp dHNbXSA9IHsKLSsgICAgMHhhNywgMHhhZiwgMHgyZiwgMHgyOSwgMHhlMCwgMHgzYSwgMHg3Miwg MHg5NSwgMHg5NiwgMHgxYywgMHhhOSwgMHhmMCwKLSsgICAgMHg0YSwgMHgxNywgMHg0ZCwgMHg2 NiwgMHgwNiwgMHgxMCwgMHhiZiwgMHgzOSwgMHg4OSwgMHg4OCwgMHhiOCwgMHg5MSwKLSsgICAg MHgzNywgMHgxOCwgMHg5OSwgMHhjZiwgMHg4YywgMHg1MywgMHgzYiwgMHg3ZQotK307Ci0rCi0r LyogSE1BQyBTSEEtMjU2IE5vIFBSICAqLwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3Qg dW5zaWduZWQgY2hhciBobWFjX3NoYTI1Nl9lbnRyb3B5aW5wdXRbXSA9IHsKLSsgICAgMHg5Niwg MHhiNywgMHg1MywgMHgyMiwgMHgxZSwgMHg1MiwgMHgyYSwgMHg5NiwgMHhiMSwgMHgxNSwgMHgz YywgMHgzNSwKLSsgICAgMHg1YSwgMHg4YiwgMHhkMywgMHg0YSwgMHhhNiwgMHg2YywgMHg4Mywg MHgwYSwgMHg3ZCwgMHhhMywgMHgyMywgMHgzZCwKLSsgICAgMHg0MywgMHhhMSwgMHgwNywgMHgy YywgMHgyZCwgMHhlMywgMHg4MSwgMHhjYwotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRp YyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhMjU2X25vbmNlW10gPSB7Ci0rICAgIDB4ZjEs IDB4YWMsIDB4OTcsIDB4Y2IsIDB4NWUsIDB4MDYsIDB4NDgsIDB4ZDIsIDB4OTQsIDB4YmUsIDB4 MTUsIDB4MmUsCi0rICAgIDB4YzcsIDB4ZmMsIDB4YzIsIDB4MDEKLSt9OwotKwotK19fZmlwc19j b25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTI1Nl9wZXJz b25hbGl6YXRpb25zdHJpbmdbXSA9IHsKLSsgICAgMHg5OCwgMHhjNSwgMHgxZSwgMHgzNSwgMHg1 ZSwgMHg4OSwgMHgwZCwgMHhjZSwgMHg2NCwgMHg2ZCwgMHgxOCwgMHhhNywKLSsgICAgMHg1YSwg MHhjNiwgMHhmMywgMHhlNywgMHhkNiwgMHg5ZSwgMHhjMCwgMHhlYSwgMHhiNywgMHgzYSwgMHg4 ZCwgMHg2NSwKLSsgICAgMHhiOCwgMHhlYiwgMHgxMCwgMHhkNywgMHg1NywgMHgxOCwgMHhhMCwg MHgzMgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFy IGhtYWNfc2hhMjU2X2FkZGl0aW9uYWxpbnB1dFtdID0gewotKyAgICAweDFiLCAweDEwLCAweGFm LCAweGFjLCAweGQwLCAweDY1LCAweDk1LCAweGFkLCAweDA0LCAweGFkLCAweDAzLCAweDFjLAot KyAgICAweGUwLCAweDQwLCAweGQ2LCAweDNlLCAweDFjLCAweDQ2LCAweDUzLCAweDM5LCAweDdj LCAweGUyLCAweGJjLCAweGRhLAotKyAgICAweDhjLCAweGEyLCAweDMzLCAweGE3LCAweDlhLCAw eDI2LCAweGQzLCAweDI3Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVu c2lnbmVkIGNoYXIgaG1hY19zaGEyNTZfaW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAweGJh LCAweDYxLCAweDBlLCAweDU1LCAweGZlLCAweDExLCAweDhhLCAweDllLCAweDBmLCAweDgwLCAw eGRmLCAweDFkLAotKyAgICAweDAzLCAweDBhLCAweGZlLCAweDE1LCAweDk0LCAweDI4LCAweDRi LCAweGJhLCAweGY0LCAweDlmLCAweDUxLCAweDI1LAotKyAgICAweDg4LCAweGU1LCAweDRlLCAw eGZiLCAweGFmLCAweGNlLCAweDY5LCAweDkwCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3Rh dGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEyNTZfZW50cm9weWlucHV0cmVzZWVkW10g PSB7Ci0rICAgIDB4NjIsIDB4N2YsIDB4MWUsIDB4NmIsIDB4ZTgsIDB4OGUsIDB4ZTEsIDB4MzUs IDB4N2QsIDB4OWIsIDB4NGYsIDB4YzcsCi0rICAgIDB4ZWMsIDB4YzgsIDB4YWMsIDB4ZWYsIDB4 NmIsIDB4MTMsIDB4OWUsIDB4MDUsIDB4NTYsIDB4YzEsIDB4MDgsIDB4ZjksCi0rICAgIDB4MmYs IDB4MGYsIDB4MjcsIDB4OWMsIDB4ZDQsIDB4MTUsIDB4ZWQsIDB4MmQKLSt9OwotKwotK19fZmlw c19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTI1Nl9h ZGRpdGlvbmFsaW5wdXRyZXNlZWRbXSA9IHsKLSsgICAgMHhjNywgMHg3NiwgMHg2ZSwgMHhhOSwg MHhkMiwgMHhiMiwgMHg3NiwgMHg0MCwgMHg4MiwgMHgyNSwgMHgyYywgMHhiMywKLSsgICAgMHg2 ZiwgMHhhYywgMHhlOSwgMHg3NCwgMHhlZiwgMHg4ZiwgMHgzYywgMHg4ZSwgMHhjZCwgMHhmMSwg MHhiZiwgMHhiMywKLSsgICAgMHg0OSwgMHg3NywgMHgzNCwgMHg4OCwgMHg1MiwgMHgzNiwgMHhl NiwgMHgyZQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIGhtYWNfc2hhMjU2X2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHg4ZCwgMHhiOCwg MHgwYywgMHhkMSwgMHhiZiwgMHg3MCwgMHhmNiwgMHgxOSwgMHhjMywgMHg0MSwgMHg4MCwgMHg5 ZiwKLSsgICAgMHhlMSwgMHhhNSwgMHhhNCwgMHgxZiwgMHgyYywgMHgyNiwgMHhiMSwgMHhlNSwg MHhkOCwgMHhlYiwgMHhiZSwgMHhmOCwKLSsgICAgMHhkZiwgMHg4OCwgMHg2YSwgMHg4OSwgMHhk NiwgMHgwNSwgMHhkOCwgMHg5ZAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25z dCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhMjU2X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDQz LCAweDEyLCAweDJhLCAweDJjLCAweDQwLCAweDUzLCAweDJlLCAweDdjLCAweDY2LCAweDM0LCAw eGFjLCAweGMzLAotKyAgICAweDQzLCAweGUzLCAweGUwLCAweDZhLCAweGZjLCAweGZhLCAweGVh LCAweDg3LCAweDIxLCAweDFmLCAweGUyLCAweDI2LAotKyAgICAweGM0LCAweGY5LCAweDA5LCAw eDlhLCAweDBkLCAweDZlLCAweDdmLCAweGUwCi0rfTsKLSsKLSsvKiBITUFDIFNIQS0zODQgUFIg ICovCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hh Mzg0X3ByX2VudHJvcHlpbnB1dFtdID0gewotKyAgICAweDY5LCAweDgxLCAweDk4LCAweDg4LCAw eDQ0LCAweGY1LCAweGQ2LCAweDJlLCAweDAwLCAweDA4LCAweDNiLCAweGM1LAotKyAgICAweGZi LCAweGQ3LCAweDhlLCAweDZmLCAweDIzLCAweGY4LCAweDZkLCAweDA5LCAweGQ2LCAweDg1LCAw eDQ5LCAweGQxLAotKyAgICAweGY4LCAweDZkLCAweGE0LCAweDU4LCAweDU0LCAweGZkLCAweDg4 LCAweGE5Ci0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo YXIgaG1hY19zaGEzODRfcHJfbm9uY2VbXSA9IHsKLSsgICAgMHg2ZSwgMHgzOCwgMHg4MSwgMHhj YSwgMHhiNywgMHhlOCwgMHg2ZSwgMHg2NiwgMHg0OSwgMHg4YSwgMHhiMiwgMHg1OSwKLSsgICAg MHhlZSwgMHgxNiwgMHhjOSwgMHhkZQotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0 YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhMzg0X3ByX3BlcnNvbmFsaXphdGlvbnN0 cmluZ1tdID0gewotKyAgICAweGZlLCAweDRjLCAweGQ5LCAweGY0LCAweDc4LCAweDNiLCAweDA4 LCAweDQxLCAweDhkLCAweDhmLCAweDU1LCAweGM0LAotKyAgICAweDQzLCAweDU2LCAweGI2LCAw eDEyLCAweDM2LCAweDZiLCAweDMwLCAweGI3LCAweDVlLCAweGUxLCAweGI5LCAweDQ3LAotKyAg ICAweDA0LCAweGIxLCAweDRlLCAweGE5LCAweDAwLCAweGExLCAweDUyLCAweGExCi0rfTsKLSsK LStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEzODRf cHJfYWRkaXRpb25hbGlucHV0W10gPSB7Ci0rICAgIDB4ODksIDB4ZTksIDB4Y2MsIDB4OGYsIDB4 MjcsIDB4M2MsIDB4MjYsIDB4ZDEsIDB4OTUsIDB4YzgsIDB4N2QsIDB4MGYsCi0rICAgIDB4NWIs IDB4MWEsIDB4ZjAsIDB4NzgsIDB4MzksIDB4NTYsIDB4NmYsIDB4YTQsIDB4MjMsIDB4ZTcsIDB4 ZDEsIDB4ZGEsCi0rICAgIDB4N2MsIDB4NjYsIDB4MzMsIDB4YTAsIDB4OTAsIDB4YzksIDB4OTIs IDB4ODgKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh ciBobWFjX3NoYTM4NF9wcl9lbnRyb3B5aW5wdXRwcltdID0gewotKyAgICAweGJlLCAweDNkLCAw eDdjLCAweDBkLCAweGNhLCAweGRhLCAweDdjLCAweDQ5LCAweGI4LCAweDEyLCAweDM2LCAweGMw LAotKyAgICAweGRiLCAweGFkLCAweDM1LCAweGE4LCAweGM3LCAweDBiLCAweDJhLCAweDJjLCAw eDY5LCAweDZkLCAweDI1LCAweDU2LAotKyAgICAweDYzLCAweDgyLCAweDExLCAweDNlLCAweGE3 LCAweDMzLCAweDcwLCAweDcyCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEzODRfcHJfaW50X3JldHVybmVkYml0c1tdID0gewotKyAg ICAweDgyLCAweDNkLCAweGU2LCAweDU0LCAweDgwLCAweDQyLCAweGY4LCAweGJhLCAweDkwLCAw eDRmLCAweDA2LCAweGE2LAotKyAgICAweGQyLCAweDdmLCAweGJmLCAweDc5LCAweDdjLCAweDEy LCAweDdkLCAweGE2LCAweGEyLCAweDY2LCAweGU4LCAweGE2LAotKyAgICAweGMwLCAweGQ2LCAw eDRhLCAweDU1LCAweGJmLCAweGQ4LCAweDBhLCAweGM1LCAweGY4LCAweDAzLCAweDg4LCAweGRk LAotKyAgICAweDhlLCAweDg3LCAweGQxLCAweDVhLCAweDQ4LCAweDI2LCAweDcyLCAweDJhLCAw eDhlLCAweGNmLCAweGVlLCAweGJhCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNv bnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEzODRfcHJfYWRkaXRpb25hbGlucHV0MltdID0gewot KyAgICAweDhmLCAweGZmLCAweGQ5LCAweDg0LCAweGJiLCAweDg1LCAweDNhLCAweDY2LCAweGEx LCAweDIxLCAweGNlLCAweGIyLAotKyAgICAweDNhLCAweDNhLCAweDE3LCAweDIyLCAweDE5LCAw eGFlLCAweGM3LCAweGI2LCAweDYzLCAweDgxLCAweGQ1LCAweGZmLAotKyAgICAweDBkLCAweGM4 LCAweGUxLCAweGFmLCAweDU3LCAweGQyLCAweGNiLCAweDYwCi0rfTsKLSsKLStfX2ZpcHNfY29u c3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEzODRfcHJfZW50cm9weWlu cHV0cHIyW10gPSB7Ci0rICAgIDB4ZDcsIDB4ZmIsIDB4YzksIDB4ZTgsIDB4ZTIsIDB4ZjIsIDB4 YWEsIDB4NGMsIDB4YjgsIDB4NTEsIDB4MmYsIDB4ZTEsCi0rICAgIDB4MjIsIDB4YmEsIDB4ZjMs IDB4ZGEsIDB4MGEsIDB4MTksIDB4NzYsIDB4NzEsIDB4NTcsIDB4YjIsIDB4MWQsIDB4OTQsCi0r ICAgIDB4MDksIDB4NjksIDB4NmMsIDB4ZDMsIDB4OTcsIDB4NTEsIDB4ODEsIDB4ODcKLSt9Owot KwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTM4 NF9wcl9yZXR1cm5lZGJpdHNbXSA9IHsKLSsgICAgMHhlNiwgMHgxOSwgMHgyOCwgMHhhOCwgMHgy MSwgMHhjZSwgMHg1ZSwgMHhkYiwgMHgyNCwgMHg3OSwgMHg4YywgMHg3NiwKLSsgICAgMHg1ZCwg MHg3MywgMHhiMiwgMHhkZiwgMHhhYywgMHhlZiwgMHg4NSwgMHhhNywgMHgzYiwgMHgxOSwgMHgw OSwgMHg4YiwKLSsgICAgMHg3ZiwgMHg5OCwgMHgyOCwgMHhhOSwgMHg5MywgMHhkOCwgMHg3YSwg MHhhZCwgMHg1NSwgMHg4YiwgMHgyNCwgMHg5ZCwKLSsgICAgMHhlNiwgMHg5OCwgMHhmZSwgMHg0 NywgMHhkNSwgMHg0OCwgMHhjMSwgMHgyMywgMHhkOCwgMHgxZCwgMHg2MiwgMHg3NQotK307Ci0r Ci0rLyogSE1BQyBTSEEtMzg0IE5vIFBSICAqLwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMgY29u c3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTM4NF9lbnRyb3B5aW5wdXRbXSA9IHsKLSsgICAgMHhj MywgMHg1NiwgMHgyYiwgMHgxZCwgMHhjMiwgMHhiYiwgMHhhOCwgMHhmMCwgMHhhZSwgMHgxYiwg MHgwZCwgMHhkMywKLSsgICAgMHg1YSwgMHg2YywgMHhkYSwgMHg1NywgMHg4ZSwgMHhhNSwgMHg4 YSwgMHgwZCwgMHg2YywgMHg0YiwgMHgxOCwgMHhiMSwKLSsgICAgMHgwNCwgMHgzZSwgMHhiNCwg MHg5OSwgMHgzNSwgMHhjNCwgMHhjMCwgMHg1ZgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0 YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhMzg0X25vbmNlW10gPSB7Ci0rICAgIDB4 YzUsIDB4NDksIDB4MWUsIDB4NjYsIDB4MjcsIDB4OTIsIDB4YmUsIDB4ZWMsIDB4YjUsIDB4MWUs IDB4NGIsIDB4YjEsCi0rICAgIDB4MzgsIDB4ZTMsIDB4ZWIsIDB4NjIKLSt9OwotKwotK19fZmlw c19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTM4NF9w ZXJzb25hbGl6YXRpb25zdHJpbmdbXSA9IHsKLSsgICAgMHhiZSwgMHhlNywgMHg2YiwgMHg1Nywg MHhkZSwgMHg4OCwgMHgxMSwgMHg5NiwgMHg5YiwgMHg2ZSwgMHhlYSwgMHhlNSwKLSsgICAgMHg2 MywgMHg4MywgMHg0YywgMHhiNiwgMHg4ZCwgMHg2NiwgMHhhYSwgMHgxZiwgMHg4YiwgMHg1NCwg MHhlNywgMHg2MiwKLSsgICAgMHg2ZCwgMHg1YSwgMHhmYywgMHhiZiwgMHg5NywgMHhiYSwgMHhj ZCwgMHg3NwotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIGhtYWNfc2hhMzg0X2FkZGl0aW9uYWxpbnB1dFtdID0gewotKyAgICAweGU1LCAweDI4LCAw eDVmLCAweDQzLCAweGY1LCAweDgzLCAweDZlLCAweDBhLCAweDgzLCAweDVjLCAweGUzLCAweDgx LAotKyAgICAweDAzLCAweGYyLCAweGY4LCAweDc4LCAweDAwLCAweDdjLCAweDk1LCAweDg3LCAw eDE2LCAweGQ2LCAweDZjLCAweDU4LAotKyAgICAweDMzLCAweDZjLCAweDUzLCAweDM1LCAweDBk LCAweDY2LCAweGUzLCAweGNlCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEzODRfaW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAw eGUyLCAweDFmLCAweGYzLCAweGRhLCAweDBkLCAweDE5LCAweDk5LCAweDg3LCAweGM0LCAweDkw LCAweGEyLCAweDMxLAotKyAgICAweGNhLCAweDJhLCAweDg5LCAweDU4LCAweDQzLCAweDQ0LCAw eGI4LCAweGRlLCAweGNmLCAweGE0LCAweGJlLCAweDNiLAotKyAgICAweDUzLCAweDI2LCAweDIy LCAweDMxLCAweDc2LCAweDQxLCAweDIyLCAweGI1LCAweGE4LCAweDcwLCAweDJmLCAweDRiLAot KyAgICAweDY0LCAweDk1LCAweDRkLCAweDQ4LCAweDk2LCAweDM1LCAweGU2LCAweGJkLCAweDNj LCAweDM0LCAweGRiLCAweDFiCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgaG1hY19zaGEzODRfZW50cm9weWlucHV0cmVzZWVkW10gPSB7Ci0rICAg IDB4NzcsIDB4NjEsIDB4YmEsIDB4YmMsIDB4ZjIsIDB4YzEsIDB4ZjMsIDB4NGIsIDB4ODYsIDB4 NjUsIDB4ZmQsIDB4NDgsCi0rICAgIDB4MGUsIDB4M2MsIDB4MDIsIDB4NWUsIDB4YTIsIDB4N2Es IDB4NmIsIDB4N2MsIDB4ZWQsIDB4MjEsIDB4NWUsIDB4ZjksCi0rICAgIDB4Y2QsIDB4Y2QsIDB4 NzcsIDB4MDcsIDB4MmIsIDB4YmUsIDB4YzUsIDB4NWMKLSt9OwotKwotK19fZmlwc19jb25zdHNl ZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTM4NF9hZGRpdGlvbmFs aW5wdXRyZXNlZWRbXSA9IHsKLSsgICAgMHgxOCwgMHgyNCwgMHg1ZiwgMHhjNiwgMHg4NCwgMHhk MSwgMHg2NywgMHhjMywgMHg5YSwgMHgxMSwgMHhhNSwgMHg4YywKLSsgICAgMHgwNywgMHgzOSwg MHgyMSwgMHg4MywgMHg0ZCwgMHgwNCwgMHhjNCwgMHg2YSwgMHgyOCwgMHgxOSwgMHhjZiwgMHg5 MiwKLSsgICAgMHgyMSwgMHhkOSwgMHg5ZSwgMHg0MSwgMHg3MiwgMHg2YywgMHg5ZSwgMHg2Mwot K307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNf c2hhMzg0X2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHg5NiwgMHg2NywgMHg0MSwgMHgy OCwgMHg5YiwgMHhiNywgMHg5MiwgMHg4ZCwgMHg2NCwgMHgzYiwgMHhlNCwgMHhjZiwKLSsgICAg MHg3ZSwgMHhhYSwgMHgxZSwgMHhiMSwgMHg0YiwgMHgxZCwgMHgwOSwgMHg1NiwgMHg2NywgMHg5 YywgMHhjNiwgMHg2ZCwKLSsgICAgMHgzYiwgMHhlOCwgMHg5MSwgMHg5ZCwgMHhlMSwgMHg4YSwg MHhiNywgMHgzMgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIGhtYWNfc2hhMzg0X3JldHVybmVkYml0c1tdID0gewotKyAgICAweGUzLCAweDU5LCAw eDYxLCAweDM4LCAweDkyLCAweGVjLCAweGUyLCAweDNjLCAweGZmLCAweGI3LCAweGRiLCAweDE5 LAotKyAgICAweDBmLCAweDViLCAweDkzLCAweDY4LCAweDBkLCAweGE0LCAweDk0LCAweDQwLCAw eDcyLCAweDBiLCAweGUwLCAweGVkLAotKyAgICAweDRkLCAweGNkLCAweDY4LCAweGEwLCAweDFl LCAweGZlLCAweDY3LCAweGIyLCAweGZhLCAweDIxLCAweDU2LCAweDc0LAotKyAgICAweGE0LCAw eGFkLCAweGNmLCAweGI3LCAweDYwLCAweDY2LCAweDJlLCAweDQwLCAweGRlLCAweDgyLCAweGNh LCAweGZiCi0rfTsKLSsKLSsvKiBITUFDIFNIQS01MTIgUFIgICovCi0rX19maXBzX2NvbnN0c2Vn IHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhNTEyX3ByX2VudHJvcHlpbnB1dFtd ID0gewotKyAgICAweGFhLCAweDllLCAweDQ1LCAweDY3LCAweDBlLCAweDAwLCAweDJhLCAweDY3 LCAweDk4LCAweGQ2LCAweGRhLCAweDBiLAotKyAgICAweDBmLCAweDE3LCAweDdlLCAweGFjLCAw eGZkLCAweDI3LCAweGM0LCAweGNhLCAweDg0LCAweGRmLCAweGRlLCAweGJhLAotKyAgICAweDg1 LCAweGQ5LCAweGJlLCAweDhmLCAweGYzLCAweGZmLCAweDkxLCAweDRkCi0rfTsKLSsKLStfX2Zp cHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGE1MTJfcHJfbm9u Y2VbXSA9IHsKLSsgICAgMHg4YywgMHg0OSwgMHgyZiwgMHg1OCwgMHgxZSwgMHg3YSwgMHhkYSwg MHg0YiwgMHg3ZSwgMHg4YSwgMHgzMCwgMHg3YiwKLSsgICAgMHg4NiwgMHhlYSwgMHhhZiwgMHhh MgotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnCi0rICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIGhtYWNfc2hhNTEyX3ByX3BlcnNvbmFsaXphdGlvbnN0cmluZ1tdID0gewotKyAgICAweDcx LCAweGUxLCAweGJiLCAweGFkLCAweGE3LCAweDRiLCAweDJlLCAweDMxLCAweDNiLCAweDBiLCAw eGVjLCAweDI0LAotKyAgICAweDk5LCAweDM4LCAweGJjLCAweGFhLCAweDA1LCAweDRjLCAweDQ2 LCAweDQ0LCAweGZhLCAweGFkLCAweDhlLCAweDAyLAotKyAgICAweGMxLCAweDdlLCAweGFkLCAw eGVjLCAweDU0LCAweGE2LCAweGQwLCAweGFkCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3Rh dGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGE1MTJfcHJfYWRkaXRpb25hbGlucHV0W10g PSB7Ci0rICAgIDB4M2QsIDB4NmUsIDB4YTYsIDB4YTgsIDB4MjksIDB4MmEsIDB4YjIsIDB4ZjUs IDB4OTgsIDB4NDIsIDB4ZTQsIDB4OTIsCi0rICAgIDB4NzgsIDB4MjIsIDB4NjcsIDB4ZmQsIDB4 MWIsIDB4MTUsIDB4MWUsIDB4MjksIDB4YWEsIDB4NzEsIDB4M2MsIDB4M2MsCi0rICAgIDB4ZTcs IDB4MDUsIDB4MjAsIDB4YTksIDB4MjksIDB4YzYsIDB4NzUsIDB4NzEKLSt9OwotKwotK19fZmlw c19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTUxMl9wcl9lbnRy b3B5aW5wdXRwcltdID0gewotKyAgICAweGFiLCAweGI5LCAweDE2LCAweGQ4LCAweDU1LCAweDM1 LCAweDU0LCAweGI3LCAweDk3LCAweDNmLCAweDk0LCAweGJjLAotKyAgICAweDJmLCAweDdjLCAw eDcwLCAweGM3LCAweGQwLCAweGVkLCAweGI3LCAweDRiLCAweGY3LCAweGY2LCAweDZjLCAweDAz LAotKyAgICAweDBjLCAweGIwLCAweDAzLCAweGQ4LCAweGJiLCAweDcxLCAweGQ5LCAweDEwCi0r fTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19z aGE1MTJfcHJfaW50X3JldHVybmVkYml0c1tdID0gewotKyAgICAweDhlLCAweGQzLCAweGZkLCAw eDUyLCAweDllLCAweDgzLCAweDA4LCAweDQ5LCAweDE4LCAweDZlLCAweDIzLCAweDU2LAotKyAg ICAweDVjLCAweDQ1LCAweDkzLCAweDM0LCAweDA1LCAweGUyLCAweDk4LCAweDhmLCAweDBjLCAw eGQ0LCAweDMyLCAweDBjLAotKyAgICAweGZkLCAweGRhLCAweDVmLCAweDkyLCAweDNhLCAweDhj LCAweDgxLCAweGJkLCAweGY2LCAweDZjLCAweDU1LCAweGZkLAotKyAgICAweGI4LCAweDIwLCAw eGNlLCAweDhkLCAweDk3LCAweDI3LCAweGU4LCAweGU4LCAweGUwLCAweGIzLCAweDg1LCAweDUw LAotKyAgICAweGEyLCAweGMyLCAweGIyLCAweDk1LCAweDFkLCAweDQ4LCAweGQzLCAweDdiLCAw eDRiLCAweDc4LCAweDEzLCAweDM1LAotKyAgICAweDA1LCAweDE3LCAweGJlLCAweDBkCi0rfTsK LSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGE1 MTJfcHJfYWRkaXRpb25hbGlucHV0MltdID0gewotKyAgICAweGMzLCAweGZjLCAweDk1LCAweGFh LCAweDY5LCAweDA2LCAweGFlLCAweDU5LCAweDQxLCAweGNlLCAweDI2LCAweDA4LAotKyAgICAw eDI5LCAweDZkLCAweDQ1LCAweGRhLCAweGU4LCAweGIzLCAweDZjLCAweDk1LCAweDYwLCAweDBm LCAweDcwLCAweDJjLAotKyAgICAweDEwLCAweGJhLCAweDM4LCAweDhjLCAweGNmLCAweDI5LCAw eDk5LCAweGFhCi0rfTsKLSsKLStfX2ZpcHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgaG1hY19zaGE1MTJfcHJfZW50cm9weWlucHV0cHIyW10gPSB7Ci0rICAgIDB4M2IsIDB4 OWEsIDB4MjUsIDB4Y2UsIDB4ZDcsIDB4ZjksIDB4NWMsIDB4ZDEsIDB4M2EsIDB4M2UsIDB4YWEs IDB4NzEsCi0rICAgIDB4MTQsIDB4M2UsIDB4MTksIDB4ZTgsIDB4Y2UsIDB4ZTYsIDB4ZmUsIDB4 NTEsIDB4ODQsIDB4ZTksIDB4MWIsIDB4ZmUsCi0rICAgIDB4M2YsIDB4YTcsIDB4ZjIsIDB4ZmQs IDB4NzYsIDB4NWYsIDB4NmEsIDB4ZTcKLSt9OwotKwotK19fZmlwc19jb25zdHNlZyBzdGF0aWMg Y29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTUxMl9wcl9yZXR1cm5lZGJpdHNbXSA9IHsKLSsg ICAgMHhiNywgMHg4MiwgMHhhOSwgMHg1NywgMHg4MSwgMHg2NywgMHg1MywgMHhiNSwgMHhhMSwg MHhlOSwgMHgzZCwgMHgzNSwKLSsgICAgMHhmOSwgMHhlNCwgMHg5NywgMHhiZSwgMHhhNiwgMHhj YSwgMHhmMSwgMHgwMSwgMHgxMywgMHgwOSwgMHhlNywgMHgyMSwKLSsgICAgMHhjMCwgMHhlZCwg MHg5MywgMHg1ZCwgMHg0YiwgMHhmNCwgMHhlYiwgMHg4ZCwgMHg1MywgMHgyNSwgMHg4YSwgMHhj NCwKLSsgICAgMHhiMSwgMHg2ZiwgMHg2ZSwgMHgzNywgMHhjZCwgMHgyZSwgMHhhYywgMHgzOSwg MHhiMiwgMHhiNiwgMHg5OSwgMHhhMywKLSsgICAgMHg4MiwgMHgwMCwgMHhiMCwgMHgyMSwgMHhm MCwgMHhjNywgMHgyZiwgMHg0YywgMHg3MywgMHg5MiwgMHhmZCwgMHgwMCwKLSsgICAgMHhiNiwg MHhhZiwgMHhiYywgMHhkMwotK307Ci0rCi0rLyogSE1BQyBTSEEtNTEyIE5vIFBSICAqLwotK19f Zmlwc19jb25zdHNlZyBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFjX3NoYTUxMl9lbnRy b3B5aW5wdXRbXSA9IHsKLSsgICAgMHg2ZSwgMHg4NSwgMHhlNiwgMHgyNSwgMHg5NiwgMHgyOSwg MHhhNywgMHg1MiwgMHg1YiwgMHg2MCwgMHhiYSwgMHhhYSwKLSsgICAgMHhkZSwgMHhkYiwgMHgz NiwgMHgwYSwgMHg1MSwgMHg5YSwgMHgxNSwgMHhhZSwgMHg2ZSwgMHgxOCwgMHhkMywgMHhmZSwK LSsgICAgMHgzOSwgMHhiOSwgMHg0YSwgMHg5NiwgMHhmOCwgMHg3NywgMHhjYiwgMHg5NQotK307 Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hh NTEyX25vbmNlW10gPSB7Ci0rICAgIDB4ZTAsIDB4YTYsIDB4NWQsIDB4MDgsIDB4YzMsIDB4N2Ms IDB4YWUsIDB4MjUsIDB4MmUsIDB4ODAsIDB4ZDEsIDB4M2UsCi0rICAgIDB4ZDksIDB4YWYsIDB4 NDMsIDB4M2MKLSt9OwotKwotK19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5z aWduZWQgY2hhciBobWFjX3NoYTUxMl9wZXJzb25hbGl6YXRpb25zdHJpbmdbXSA9IHsKLSsgICAg MHg1MywgMHg5OSwgMHg1MiwgMHg1ZiwgMHgxMSwgMHhhOSwgMHg2NCwgMHg2NiwgMHgyMCwgMHg1 ZSwgMHgxYiwgMHg1ZiwKLSsgICAgMHg0MiwgMHhiMywgMHhmNCwgMHhkYSwgMHhlZCwgMHhiYiwg MHg2MywgMHhjMSwgMHgyMywgMHhhZiwgMHhkMCwgMHgwMSwKLSsgICAgMHg5MCwgMHgzYiwgMHhk MCwgMHg3OCwgMHhlNCwgMHgwYiwgMHhhNywgMHgyMAotK307Ci0rCi0rX19maXBzX2NvbnN0c2Vn IHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhNTEyX2FkZGl0aW9uYWxpbnB1dFtd ID0gewotKyAgICAweDg1LCAweDkwLCAweDgwLCAweGQzLCAweDk4LCAweGYxLCAweDUzLCAweDZk LCAweDY4LCAweDE1LCAweDhmLCAweGU1LAotKyAgICAweDYwLCAweDNmLCAweDE3LCAweDI5LCAw eDU1LCAweDhkLCAweDMzLCAweGIxLCAweDQ1LCAweDY0LCAweDY0LCAweDhkLAotKyAgICAweDUw LCAweDIxLCAweDg5LCAweGFlLCAweGY2LCAweGZkLCAweDMyLCAweDczCi0rfTsKLSsKLStfX2Zp cHNfY29uc3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGE1MTJfaW50X3Jl dHVybmVkYml0c1tdID0gewotKyAgICAweDI4LCAweDU2LCAweDMwLCAweDZmLCAweGY0LCAweGEx LCAweDQ4LCAweGUwLCAweGM5LCAweGY1LCAweDc1LCAweDkwLAotKyAgICAweGNjLCAweGZiLCAw eGRmLCAweGRmLCAweDcxLCAweDNkLCAweDBhLCAweDlhLCAweDAzLCAweDY1LCAweDNiLCAweDE4 LAotKyAgICAweDYxLCAweGUzLCAweGQxLCAweGRhLCAweGNjLCAweDRhLCAweGZlLCAweDU1LCAw eDM4LCAweGY4LCAweDIxLCAweDZiLAotKyAgICAweGZhLCAweDE4LCAweDAxLCAweDQyLCAweDM5 LCAweDJmLCAweDk5LCAweDUzLCAweDM4LCAweDE1LCAweDgyLCAweDM0LAotKyAgICAweGM1LCAw eDkzLCAweDkyLCAweGJjLCAweDRkLCAweDc1LCAweDFhLCAweDVmLCAweDIxLCAweDI3LCAweGNj LCAweGExLAotKyAgICAweGIxLCAweDU3LCAweDY5LCAweGU4Ci0rfTsKLSsKLStfX2ZpcHNfY29u c3RzZWcgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgaG1hY19zaGE1MTJfZW50cm9weWlucHV0 cmVzZWVkW10gPSB7Ci0rICAgIDB4OGMsIDB4NTIsIDB4N2UsIDB4NzcsIDB4NzIsIDB4M2YsIDB4 YTMsIDB4MDQsIDB4OTcsIDB4MTAsIDB4OWIsIDB4NDEsCi0rICAgIDB4YmQsIDB4ZTgsIDB4ZmYs IDB4ODksIDB4ZWQsIDB4ODAsIDB4ZTMsIDB4YmQsIDB4YWEsIDB4MTIsIDB4MmQsIDB4Y2EsCi0r ICAgIDB4NzUsIDB4ODIsIDB4MzYsIDB4NzcsIDB4ODgsIDB4Y2QsIDB4YTYsIDB4NzMKLSt9Owot KwotK19fZmlwc19jb25zdHNlZwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBobWFj X3NoYTUxMl9hZGRpdGlvbmFsaW5wdXRyZXNlZWRbXSA9IHsKLSsgICAgMHg3ZSwgMHgzMiwgMHhl MywgMHg2OSwgMHg2OSwgMHgwNywgMHgzNCwgMHhhMiwgMHgxNiwgMHhhMiwgMHg1ZCwgMHgxYSwK LSsgICAgMHgxMCwgMHg5MSwgMHhkMywgMHhlMiwgMHgyMSwgMHhhMiwgMHhhMywgMHhkZCwgMHhj ZCwgMHgwYywgMHgwOSwgMHg4NiwKLSsgICAgMHgxMSwgMHhlMSwgMHg1MCwgMHhmZiwgMHg1Yywg MHhiNywgMHhlYiwgMHg1YwotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0YXRpYyBjb25zdCB1 bnNpZ25lZCBjaGFyIGhtYWNfc2hhNTEyX2FkZGl0aW9uYWxpbnB1dDJbXSA9IHsKLSsgICAgMHg3 ZiwgMHg3OCwgMHg2NiwgMHhkOCwgMHhmYiwgMHg2NywgMHhjZiwgMHg4ZCwgMHg4YywgMHgwOCwg MHgzMCwgMHhhNSwKLSsgICAgMHhmOCwgMHg3ZCwgMHhjZiwgMHg0NCwgMHg1OSwgMHhjZSwgMHhm OCwgMHhkZiwgMHg1OCwgMHhkMywgMHg2MCwgMHhjYiwKLSsgICAgMHhhOCwgMHg2MCwgMHhiOSwg MHgwNywgMHhjNCwgMHhiMSwgMHg5NSwgMHg0OAotK307Ci0rCi0rX19maXBzX2NvbnN0c2VnIHN0 YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGhtYWNfc2hhNTEyX3JldHVybmVkYml0c1tdID0gewot KyAgICAweGRmLCAweGE3LCAweDM2LCAweGQ0LCAweGRjLCAweDVkLCAweDRkLCAweDMxLCAweGFk LCAweDY5LCAweDQ2LCAweDlmLAotKyAgICAweGYxLCAweDdjLCAweGQ3LCAweDNiLCAweDRmLCAw eDU1LCAweGYyLCAweGQ3LCAweGI5LCAweDlkLCAweGFkLCAweDdhLAotKyAgICAweDc5LCAweDA4 LCAweDU5LCAweGE1LCAweGRjLCAweDc0LCAweGY1LCAweDliLCAweDczLCAweGQyLCAweDEzLCAw eDI1LAotKyAgICAweDBiLCAweDgxLCAweDA4LCAweDA4LCAweDI1LCAweGZiLCAweDM5LCAweGYy LCAweGYwLCAweGEzLCAweGE0LCAweDhkLAotKyAgICAweGVmLCAweDA1LCAweDllLCAweGI4LCAw eGM3LCAweDUyLCAweGU0LCAweDBlLCAweDQyLCAweGFhLCAweDdjLCAweDc5LAotKyAgICAweGMy LCAweGQ2LCAweGZkLCAweGE1Ci0rfTsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9m aXBzL2ZpcHNfZHNhX3NlbGZ0ZXN0LmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9m aXBzX2RzYV9zZWxmdGVzdC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19k c2Ffc2VsZnRlc3QuYy5maXBzCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAwNzM0NTM0ICswMTAwCi0r Kysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19kc2Ffc2VsZnRlc3QuYwkyMDIxLTAz LTAzIDEyOjU3OjQyLjIwMDczNDUzNCArMDEwMAotQEAgLTAsMCArMSwxOTUgQEAKLSsvKiA9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PQotKyAqIENvcHlyaWdodCAoYykgMjAxMSBUaGUgT3BlblNTTCBQcm9qZWN0LiAgQWxs IHJpZ2h0cyByZXNlcnZlZC4KLSsgKgotKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291 cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotKyAqIG1vZGlmaWNhdGlvbiwg YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotKyAq IGFyZSBtZXQ6Ci0rICoKLSsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVz dCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0rICoKLSsgKiAyLiBS ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv cHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm b2xsb3dpbmcgZGlzY2xhaW1lciBpbgotKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBv dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSsgKiAgICBkaXN0cmlidXRpb24uCi0r ICoKLSsgKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMg b3IgdXNlIG9mIHRoaXMKLSsgKiAgICBzb2Z0d2FyZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2lu ZyBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJl IGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUg T3BlblNTTCBUb29sa2l0LiAoaHR0cDovL3d3dy5vcGVuc3NsLm9yZy8pIgotKyAqCi0rICogNC4g VGhlIG5hbWVzICJPcGVuU1NMIFRvb2xraXQiIGFuZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0IG5v dCBiZSB1c2VkIHRvCi0rICogICAgZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQg ZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQKLSsgKiAgICBwcmlvciB3cml0dGVuIHBlcm1pc3Np b24uIEZvciB3cml0dGVuIHBlcm1pc3Npb24sIHBsZWFzZSBjb250YWN0Ci0rICogICAgb3BlbnNz bC1jb3JlQG9wZW5zc2wub3JnLgotKyAqCi0rICogNS4gUHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRo aXMgc29mdHdhcmUgbWF5IG5vdCBiZSBjYWxsZWQgIk9wZW5TU0wiCi0rICogICAgbm9yIG1heSAi T3BlblNTTCIgYXBwZWFyIGluIHRoZWlyIG5hbWVzIHdpdGhvdXQgcHJpb3Igd3JpdHRlbgotKyAq ICAgIHBlcm1pc3Npb24gb2YgdGhlIE9wZW5TU0wgUHJvamVjdC4KLSsgKgotKyAqIDYuIFJlZGlz dHJpYnV0aW9ucyBvZiBhbnkgZm9ybSB3aGF0c29ldmVyIG11c3QgcmV0YWluIHRoZSBmb2xsb3dp bmcKLSsgKiAgICBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVz IHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVz ZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0IChodHRwOi8vd3d3Lm9wZW5zc2wub3JnLykiCi0rICoK LSsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBB UyBJUycnIEFORCBBTlkKLSsgKiBFWFBSRVNTRUQgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0rICogSU1QTElFRCBXQVJSQU5USUVTIE9G IE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0rICogUFVSUE9T RSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBPcGVuU1NMIFBST0pFQ1Qg T1IKLSsgKiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJF Q1QsIElOQ0lERU5UQUwsCi0rICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM IERBTUFHRVMgKElOQ0xVRElORywgQlVUCi0rICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5U IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0rICogTE9TUyBPRiBVU0UsIERBVEEs IE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSsgKiBIT1dFVkVSIENBVVNF RCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0r ICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI RVJXSVNFKQotKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNP RlRXQVJFLCBFVkVOIElGIEFEVklTRUQKLSsgKiBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE QU1BR0UuCi0rICoKLSsgKi8KLSsKLSsjaW5jbHVkZSA8c3RyaW5nLmg+Ci0rI2luY2x1ZGUgPG9w ZW5zc2wvY3J5cHRvLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZHNhLmg+Ci0rI2luY2x1ZGUgPG9w ZW5zc2wvZmlwcy5oPgotKyNpbmNsdWRlICJjcnlwdG8vZmlwcy5oIgotKyNpbmNsdWRlIDxvcGVu c3NsL2Vyci5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgotKyNpbmNsdWRlIDxvcGVuc3Ns L2JuLmg+Ci0rI2luY2x1ZGUgImZpcHNfbG9jbC5oIgotKwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMK LSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBkc2FfdGVzdF8yMDQ4X3BbXSA9IHsKLSsg ICAgMHhhOCwgMHg1MywgMHg3OCwgMHhkOCwgMHhmZCwgMHgzZiwgMHg4ZCwgMHg3MiwgMHhlYywg MHg3NCwgMHgxOCwgMHgwOCwKLSsgICAgMHgwZCwgMHhhMiwgMHgxMywgMHgxNywgMHhlNCwgMHgz ZSwgMHhjNCwgMHhiNiwgMHgyYiwgMHhhOCwgMHhjOCwgMHg2MiwKLSsgICAgMHgzYiwgMHg3ZSwg MHg0ZCwgMHgwNCwgMHg0NCwgMHgxZCwgMHhkMSwgMHhhMCwgMHg2NSwgMHg4NiwgMHg2MiwgMHg1 OSwKLSsgICAgMHg2NCwgMHg5MywgMHhjYSwgMHg4ZSwgMHg5ZSwgMHg4ZiwgMHhiYiwgMHg3ZSwg MHgzNCwgMHhhYSwgMHhkZCwgMHhiNiwKLSsgICAgMHgyZSwgMHg1ZCwgMHg2NywgMHhiNiwgMHhk MCwgMHg5YSwgMHg2ZSwgMHg2MSwgMHhiNywgMHg2OSwgMHhlNywgMHhjMywKLSsgICAgMHg1Miwg MHhhYSwgMHgyYiwgMHgxMCwgMHhlMiwgMHgwYywgMHhhMCwgMHg2MywgMHg2OSwgMHg2MywgMHhi NSwgMHg1MiwKLSsgICAgMHgzZSwgMHg4NiwgMHg0NywgMHgwZCwgMHhlYywgMHhiYiwgMHhlZCwg MHhhMCwgMHgyNywgMHhlNywgMHg5NywgMHhlNywKLSsgICAgMHhiNiwgMHg3NiwgMHgzNSwgMHhk NCwgMHhkNCwgMHg5YywgMHgzMCwgMHg3MCwgMHgwZSwgMHg3NCwgMHhhZiwgMHg4YSwKLSsgICAg MHgwZiwgMHhmMSwgMHg1NiwgMHhhOCwgMHgwMSwgMHhhZiwgMHg1NywgMHhhMiwgMHg2ZSwgMHg3 MCwgMHg3OCwgMHhmMSwKLSsgICAgMHhkOCwgMHgyZiwgMHg3NCwgMHg5MCwgMHg4ZSwgMHhjYiwg MHg2ZCwgMHgwNywgMHhlNywgMHgwYiwgMHgzNSwgMHgwMywKLSsgICAgMHhlZSwgMHhkOSwgMHg0 ZiwgMHhhMywgMHgyYywgMHhmMSwgMHg3YSwgMHg3ZiwgMHhjMywgMHhkNiwgMHhjZiwgMHg0MCwK LSsgICAgMHhkYywgMHg3YiwgMHgwMCwgMHg4MywgMHgwZSwgMHg2YSwgMHgyNSwgMHg2NiwgMHhk YywgMHgwNywgMHgzZSwgMHgzNCwKLSsgICAgMHgzMywgMHgxMiwgMHg1MSwgMHg3YywgMHg2YSwg MHhhNSwgMHgxNSwgMHgyYiwgMHg0YiwgMHhmZSwgMHhjZCwgMHgyZSwKLSsgICAgMHg1NSwgMHgx ZiwgMHhlZSwgMHgzNCwgMHg2MywgMHgxOCwgMHhhMSwgMHg1MywgMHg0MiwgMHgzYywgMHg5OSwg MHg2YiwKLSsgICAgMHgwZCwgMHg1ZCwgMHhjYiwgMHg5MSwgMHgwMiwgMHhhZSwgMHhkZCwgMHgz OCwgMHg3OSwgMHg4NiwgMHgxNiwgMHhmMSwKLSsgICAgMHhmMSwgMHhlMCwgMHhkNiwgMHhjNCwg MHgwMywgMHg1MiwgMHg1YiwgMHgxZiwgMHg5YiwgMHgzZCwgMHg0ZCwgMHhjNywKLSsgICAgMHg2 NiwgMHhkZSwgMHgyZCwgMHhmYywgMHg0YSwgMHg1NiwgMHhkNywgMHhiOCwgMHhiYSwgMHg1OSwg MHg2MywgMHhkNiwKLSsgICAgMHgwZiwgMHgzZSwgMHgxNiwgMHgzMSwgMHg4OCwgMHg3MCwgMHhh ZCwgMHg0MywgMHg2OSwgMHg1MiwgMHhlNSwgMHg1NywKLSsgICAgMHg2NSwgMHgzNywgMHg0ZSwg MHhhYiwgMHg4NSwgMHhlOCwgMHhlYywgMHgxNywgMHhkNiwgMHhiOSwgMHhhNCwgMHg1NCwKLSsg ICAgMHg3YiwgMHg5YiwgMHg1ZiwgMHgyNywgMHg1MiwgMHhmMywgMHgxMCwgMHg1YiwgMHhlOCwg MHgwOSwgMHhiMiwgMHgzYSwKLSsgICAgMHgyYywgMHg4ZCwgMHg3NCwgMHg2OSwgMHhkYiwgMHgw MiwgMHhlMiwgMHg0ZCwgMHg1OSwgMHgyMywgMHg5NCwgMHhhNywKLSsgICAgMHhkYiwgMHhhMCwg MHg2OSwgMHhlOQotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgZHNhX3Rlc3Rf MjA0OF9xW10gPSB7Ci0rICAgIDB4ZDIsIDB4NzcsIDB4MDQsIDB4NGUsIDB4NTAsIDB4ZjUsIDB4 YTQsIDB4ZTMsIDB4ZjUsIDB4MTAsIDB4YTUsIDB4MGEsCi0rICAgIDB4MGIsIDB4ODQsIDB4ZmQs IDB4ZmYsIDB4YmMsIDB4YTAsIDB4NDcsIDB4ZWQsIDB4MjcsIDB4NjAsIDB4MjAsIDB4NTYsCi0r ICAgIDB4NzQsIDB4NDEsIDB4YTAsIDB4YTUKLSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIGRzYV90ZXN0XzIwNDhfZ1tdID0gewotKyAgICAweDEzLCAweGQ3LCAweDU0LCAweGUy LCAweDFmLCAweGQyLCAweDQxLCAweDY1LCAweDVkLCAweGE4LCAweDkxLCAweGM1LAotKyAgICAw eDIyLCAweGE2LCAweDVhLCAweDcyLCAweGE4LCAweDliLCAweGRjLCAweDY0LCAweGVjLCAweDli LCAweDU0LCAweGE4LAotKyAgICAweDIxLCAweGVkLCAweDRhLCAweDg5LCAweDhiLCAweDQ5LCAw eDBlLCAweDBjLCAweDRmLCAweGNiLCAweDcyLCAweDE5LAotKyAgICAweDJhLCAweDRhLCAweDIw LCAweGY1LCAweDQxLCAweGYzLCAweGYyLCAweDkyLCAweDUzLCAweDk5LCAweGYwLCAweGJhLAot KyAgICAweGVjLCAweGY5LCAweDI5LCAweGFhLCAweGZiLCAweGY3LCAweDlkLCAweGZlLCAweDQz LCAweDMyLCAweDM5LCAweDNiLAotKyAgICAweDMyLCAweGNkLCAweDJlLCAweDJmLCAweGNmLCAw eDI3LCAweDJmLCAweDMyLCAweGE2LCAweDI3LCAweDQzLCAweDRhLAotKyAgICAweDBkLCAweGYy LCAweDQyLCAweGI3LCAweDViLCAweDQxLCAweDRkLCAweGYzLCAweDcyLCAweDEyLCAweDFlLCAw eDUzLAotKyAgICAweGE1LCAweDUzLCAweGYyLCAweDIyLCAweGY4LCAweDM2LCAweGIwLCAweDAw LCAweGYwLCAweDE2LCAweDQ4LCAweDViLAotKyAgICAweDZiLCAweGQwLCAweDg5LCAweDg0LCAw eDUxLCAweDgwLCAweDFkLCAweGNkLCAweDhkLCAweGU2LCAweDRjLCAweGQ1LAotKyAgICAweDM2 LCAweDU2LCAweDk2LCAweGZmLCAweGM1LCAweDMyLCAweGQ1LCAweDI4LCAweGM1LCAweDA2LCAw eDYyLCAweDBhLAotKyAgICAweDk0LCAweDJhLCAweDAzLCAweDA1LCAweDA0LCAweDZkLCAweDhm LCAweDE4LCAweDc2LCAweDM0LCAweDFmLCAweDFlLAotKyAgICAweDU3LCAweDBiLCAweGMzLCAw eDk3LCAweDRiLCAweGE2LCAweGI5LCAweGE0LCAweDM4LCAweGU5LCAweDcwLCAweDIzLAotKyAg ICAweDAyLCAweGEyLCAweGU2LCAweGU2LCAweDdiLCAweGZkLCAweDA2LCAweGQzLCAweDJiLCAw eGM2LCAweDc5LCAweDk2LAotKyAgICAweDIyLCAweDcxLCAweGQ3LCAweGI0LCAweDBjLCAweGQ3 LCAweDJmLCAweDM4LCAweDZlLCAweDY0LCAweGUwLCAweGQ3LAotKyAgICAweGVmLCAweDg2LCAw eGNhLCAweDhjLCAweGE1LCAweGQxLCAweDQyLCAweDI4LCAweGRjLCAweDJhLCAweDRmLCAweDE2 LAotKyAgICAweGUzLCAweDE4LCAweDk4LCAweDg2LCAweGI1LCAweDk5LCAweDA2LCAweDc0LCAw eGY0LCAweDIwLCAweDBmLCAweDNhLAotKyAgICAweDRjLCAweGY2LCAweDVhLCAweDNmLCAweDBk LCAweGRiLCAweGExLCAweGZhLCAweDY3LCAweDJkLCAweGZmLCAweDJmLAotKyAgICAweDVlLCAw eDE0LCAweDNkLCAweDEwLCAweGU0LCAweGU5LCAweDdhLCAweGU4LCAweDRmLCAweDZkLCAweGEw LCAweDk1LAotKyAgICAweDM1LCAweGQ1LCAweGI5LCAweGRmLCAweDI1LCAweDkxLCAweDgxLCAw eGE3LCAweDliLCAweDYzLCAweGIwLCAweDY5LAotKyAgICAweGU5LCAweDQ5LCAweDk3LCAweDJi LCAweDAyLCAweGJhLCAweDM2LCAweGIzLCAweDU4LCAweDZhLCAweGFiLCAweDdlLAotKyAgICAw eDQ1LCAweGYzLCAweDIyLCAweGY4LCAweDJlLCAweDRlLCAweDg1LCAweGNhLCAweDNhLCAweGI4 LCAweDU1LCAweDkxLAotKyAgICAweGIzLCAweGMyLCAweGE5LCAweDY2Ci0rfTsKLSsKLStzdGF0 aWMgY29uc3QgdW5zaWduZWQgY2hhciBkc2FfdGVzdF8yMDQ4X3B1Yl9rZXlbXSA9IHsKLSsgICAg MHgyNCwgMHg1MiwgMHhmMywgMHhjYywgMHhiZSwgMHg5ZSwgMHhkNSwgMHhjYSwgMHg3ZCwgMHhj NywgMHg0YywgMHg2MCwKLSsgICAgMHgyYiwgMHg5OSwgMHgyMiwgMHg2ZSwgMHg4ZiwgMHgyZiwg MHhhYiwgMHgzOCwgMHhlNywgMHhkNywgMHhkZCwgMHhmYiwKLSsgICAgMHg3NSwgMHg1MywgMHg5 YiwgMHgxNywgMHgxNSwgMHg1ZSwgMHg5ZiwgMHhjZiwgMHhkMSwgMHhhYiwgMHhhNSwgMHg2NCwK LSsgICAgMHhlYiwgMHg4NSwgMHgzNSwgMHhkOCwgMHgxMiwgMHhjOSwgMHhjMiwgMHhkYywgMHhm OSwgMHg3MiwgMHg4NCwgMHg0NCwKLSsgICAgMHgxYiwgMHhjNCwgMHg4MiwgMHgyNCwgMHgzNiwg MHgyNCwgMHhjNywgMHhmNCwgMHg1NywgMHg1OCwgMHgwYywgMHgxYywKLSsgICAgMHgzOCwgMHhh NSwgMHg3YywgMHg0NiwgMHhjNCwgMHg1NywgMHgzOSwgMHgyNCwgMHg3MCwgMHhlZCwgMHhiNSwg MHgyYywKLSsgICAgMHhiNSwgMHhhNiwgMHhlMCwgMHgzZiwgMHhlNiwgMHgyOCwgMHg3YiwgMHhi NiwgMHhmNCwgMHg5YSwgMHg0MiwgMHhhMiwKLSsgICAgMHgwNiwgMHg1YSwgMHgwNSwgMHg0Ziwg MHgwMywgMHgwOCwgMHgzOSwgMHhkZiwgMHgxZiwgMHhkMywgMHgxNCwgMHg5YywKLSsgICAgMHg0 YywgMHhhMCwgMHg1MywgMHgxZCwgMHhkOCwgMHhjYSwgMHg4YSwgMHhhYSwgMHg5YywgMHhjNywg MHgzMywgMHg3MSwKLSsgICAgMHg5MywgMHgzOCwgMHg3MywgMHg0OCwgMHgzMywgMHg2MSwgMHgx OCwgMHgyMiwgMHg0NSwgMHg0NSwgMHhlOCwgMHg4YywKLSsgICAgMHg4MCwgMHhmZiwgMHhkOCwg MHg3NiwgMHg1ZCwgMHg3NCwgMHgzNiwgMHgwMywgMHgzMywgMHhjYywgMHhhYiwgMHg5OSwKLSsg ICAgMHg3MiwgMHg3NywgMHg5YiwgMHg2NSwgMHgyNSwgMHhhNiwgMHg1YiwgMHhkZCwgMHgwZCwg MHgxMCwgMHhjNiwgMHg3NSwKLSsgICAgMHhjMSwgMHgwOSwgMHhiYiwgMHhkMywgMHhlNSwgMHhi ZSwgMHg0ZCwgMHg3MiwgMHhlZiwgMHg2ZSwgMHhiYSwgMHg2ZSwKLSsgICAgMHg0MywgMHg4ZCwg MHg1MiwgMHgyNiwgMHgyMywgMHg3ZCwgMHhiOCwgMHg4OCwgMHgzNywgMHg5YywgMHg1ZiwgMHhj YywKLSsgICAgMHg0NywgMHhhMywgMHg4NCwgMHg3ZiwgMHhmNiwgMHgzNywgMHgxMSwgMHhiYSwg MHhlZCwgMHg2ZCwgMHgwMywgMHhhZiwKLSsgICAgMHhlOCwgMHgxZSwgMHg2OSwgMHg0YSwgMHg0 MSwgMHgzYiwgMHg2OCwgMHgwYiwgMHhkMywgMHg4YSwgMHhiNCwgMHg5MCwKLSsgICAgMHgzZiwg MHg4MywgMHg3MCwgMHhhNywgMHgwNywgMHhlZiwgMHg1NSwgMHgxZCwgMHg0OSwgMHg0MSwgMHgw MiwgMHg2ZCwKLSsgICAgMHg5NSwgMHg3OSwgMHhkNiwgMHg5MSwgMHhkZSwgMHg4ZSwgMHhkYSwg MHhhMSwgMHg2MSwgMHgwNSwgMHhlYiwgMHg5ZCwKLSsgICAgMHhiYSwgMHgzYywgMHgyZiwgMHg0 YywgMHgxYiwgMHhlYywgMHg1MCwgMHg4MiwgMHg3NSwgMHhhYSwgMHgwMiwgMHgwNywKLSsgICAg MHhlMiwgMHg1MSwgMHhiNSwgMHhlYywgMHhjYiwgMHgyOCwgMHg2YSwgMHg0YiwgMHgwMSwgMHhk NCwgMHg0OSwgMHhkMywKLSsgICAgMHgwYSwgMHhjYiwgMHg2NywgMHgzNywgMHgxNywgMHhhMCwg MHhkMiwgMHhmYiwgMHgzYiwgMHg1MCwgMHhjOCwgMHg5MywKLSsgICAgMHhmNywgMHhkYSwgMHhi MSwgMHg0ZgotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgZHNhX3Rlc3RfMjA0 OF9wcml2X2tleVtdID0gewotKyAgICAweDBjLCAweDRiLCAweDMwLCAweDg5LCAweGQxLCAweGI4 LCAweDYyLCAweGNiLCAweDNjLCAweDQzLCAweDY0LCAweDkxLAotKyAgICAweGYwLCAweDkxLCAw eDU0LCAweDcwLCAweGM1LCAweDI3LCAweDk2LCAweGUzLCAweGFjLCAweGJlLCAweGU4LCAweDAw LAotKyAgICAweGVjLCAweDU1LCAweGY2LCAweGNjCi0rfTsKLSsKLStpbnQgRklQU19zZWxmdGVz dF9kc2EoKQotK3sKLSsgICAgRFNBICpkc2EgPSBOVUxMOwotKyAgICBFVlBfUEtFWSAqcGsgPSBO VUxMOwotKyAgICBpbnQgcmV0ID0gMDsKLSsgICAgQklHTlVNICpwID0gTlVMTCwgKnEgPSBOVUxM LCAqZyA9IE5VTEwsICpwdWJfa2V5ID0gTlVMTCwgKnByaXZfa2V5ID0gTlVMTDsKLSsKLSsgICAg Zmlwc19sb2FkX2tleV9jb21wb25lbnQocCwgZHNhX3Rlc3RfMjA0OCk7Ci0rICAgIGZpcHNfbG9h ZF9rZXlfY29tcG9uZW50KHEsIGRzYV90ZXN0XzIwNDgpOwotKyAgICBmaXBzX2xvYWRfa2V5X2Nv bXBvbmVudChnLCBkc2FfdGVzdF8yMDQ4KTsKLSsgICAgZmlwc19sb2FkX2tleV9jb21wb25lbnQo cHViX2tleSwgZHNhX3Rlc3RfMjA0OCk7Ci0rICAgIGZpcHNfbG9hZF9rZXlfY29tcG9uZW50KHBy aXZfa2V5LCBkc2FfdGVzdF8yMDQ4KTsKLSsKLSsgICAgZHNhID0gRFNBX25ldygpOwotKwotKyAg ICBpZiAoZHNhID09IE5VTEwpCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgRFNBX3NldDBf cHFnKGRzYSwgcCwgcSwgZyk7Ci0rCi0rICAgIERTQV9zZXQwX2tleShkc2EsIHB1Yl9rZXksIHBy aXZfa2V5KTsKLSsKLSsgICAgaWYgKChwayA9IEVWUF9QS0VZX25ldygpKSA9PSBOVUxMKQotKyAg ICAgICAgZ290byBlcnI7Ci0rCi0rICAgIEVWUF9QS0VZX2Fzc2lnbl9EU0EocGssIGRzYSk7Ci0r Ci0rICAgIGlmICghZmlwc19wa2V5X3NpZ25hdHVyZV90ZXN0KHBrLCBOVUxMLCAwLAotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAwLCBFVlBfc2hhMjU2KCksIDAsICJE U0EgU0hBMjU2IikpCi0rICAgICAgICBnb3RvIGVycjsKLSsgICAgcmV0ID0gMTsKLSsKLSsgZXJy OgotKyAgICBpZiAocGspCi0rICAgICAgICBFVlBfUEtFWV9mcmVlKHBrKTsKLSsgICAgZWxzZSBp ZiAoZHNhKQotKyAgICAgICAgRFNBX2ZyZWUoZHNhKTsKLSsgICAgZWxzZSB7Ci0rICAgICAgICBC Tl9mcmVlKHApOwotKyAgICAgICAgQk5fZnJlZShxKTsKLSsgICAgICAgIEJOX2ZyZWUoZyk7Ci0r ICAgICAgICBCTl9mcmVlKHB1Yl9rZXkpOwotKyAgICAgICAgQk5fZnJlZShwcml2X2tleSk7Ci0r ICAgIH0KLSsgICAgcmV0dXJuIHJldDsKLSt9Ci0rI2VuZGlmCi1kaWZmIC11cCBvcGVuc3NsLTEu MS4xai9jcnlwdG8vZmlwcy9maXBzX2VjZGhfc2VsZnRlc3QuYy5maXBzIG9wZW5zc2wtMS4xLjFq L2NyeXB0by9maXBzL2ZpcHNfZWNkaF9zZWxmdGVzdC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5 cHRvL2ZpcHMvZmlwc19lY2RoX3NlbGZ0ZXN0LmMuZmlwcwkyMDIxLTAzLTAzIDEyOjU3OjQyLjIw MDczNDUzNCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfZWNkaF9z ZWxmdGVzdC5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAwNzM0NTM0ICswMTAwCi1AQCAtMCwwICsx LDI0MiBAQAotKy8qIGZpcHMvZWNkaC9maXBzX2VjZGhfc2VsZnRlc3QuYyAqLwotKy8qIFdyaXR0 ZW4gYnkgRHIgU3RlcGhlbiBOIEhlbnNvbiAoc3RldmVAb3BlbnNzbC5vcmcpIGZvciB0aGUgT3Bl blNTTAotKyAqIHByb2plY3QgMjAxMS4KLSsgKi8KLSsvKiA9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotKyAqIENvcHly aWdodCAoYykgMjAxMSBUaGUgT3BlblNTTCBQcm9qZWN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4K LSsgKgotKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9y bXMsIHdpdGggb3Igd2l0aG91dAotKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92 aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotKyAqIGFyZSBtZXQ6Ci0rICoKLSsg KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl IGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5v dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l ciBpbgotKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJv dmlkZWQgd2l0aCB0aGUKLSsgKiAgICBkaXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBBbGwgYWR2 ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMKLSsg KiAgICBzb2Z0d2FyZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnbWVudDoK LSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUg T3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0LiAo aHR0cDovL3d3dy5PcGVuU1NMLm9yZy8pIgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJPcGVuU1NM IFRvb2xraXQiIGFuZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRvCi0rICog ICAgZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl IHdpdGhvdXQKLSsgKiAgICBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0dGVuIHBl cm1pc3Npb24sIHBsZWFzZSBjb250YWN0Ci0rICogICAgbGljZW5zaW5nQE9wZW5TU0wub3JnLgot KyAqCi0rICogNS4gUHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgbWF5IG5vdCBi ZSBjYWxsZWQgIk9wZW5TU0wiCi0rICogICAgbm9yIG1heSAiT3BlblNTTCIgYXBwZWFyIGluIHRo ZWlyIG5hbWVzIHdpdGhvdXQgcHJpb3Igd3JpdHRlbgotKyAqICAgIHBlcm1pc3Npb24gb2YgdGhl IE9wZW5TU0wgUHJvamVjdC4KLSsgKgotKyAqIDYuIFJlZGlzdHJpYnV0aW9ucyBvZiBhbnkgZm9y bSB3aGF0c29ldmVyIG11c3QgcmV0YWluIHRoZSBmb2xsb3dpbmcKLSsgKiAgICBhY2tub3dsZWRn bWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBi eSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29s a2l0IChodHRwOi8vd3d3Lk9wZW5TU0wub3JnLykiCi0rICoKLSsgKiBUSElTIFNPRlRXQVJFIElT IFBST1ZJREVEIEJZIFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycnIEFORCBBTlkKLSsgKiBF WFBSRVNTRUQgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF RCBUTywgVEhFCi0rICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0rICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO IE5PIEVWRU5UIFNIQUxMIFRIRSBPcGVuU1NMIFBST0pFQ1QgT1IKLSsgKiBJVFMgQ09OVFJJQlVU T1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0rICog U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg QlVUCi0rICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMg T1IgU0VSVklDRVM7Ci0rICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO RVNTIElOVEVSUlVQVElPTikKLSsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBP RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0rICogU1RSSUNUIExJQUJJTElUWSwg T1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotKyAqIEFSSVNJTkcg SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT RUQKLSsgKiBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0rICogPT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLSsgKgotKyAqLwotKwotKyNkZWZpbmUgT1BFTlNTTF9GSVBTQVBJCi0rCi0rI2luY2x1ZGUg PHN0cmluZy5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2NyeXB0by5oPgotKyNpbmNsdWRlIDxvcGVu c3NsL2VjLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZWNkaC5oPgotKyNpbmNsdWRlIDxvcGVuc3Ns L2ZpcHMuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9lcnIuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9l dnAuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9ibi5oPgotKwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMK LSsKLSsjIGluY2x1ZGUgImZpcHNfbG9jbC5oIgotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBj aGFyIHAyNTZfcWNhdnN4W10gPSB7Ci0rICAgIDB4NTIsIDB4YzYsIDB4YTUsIDB4NzUsIDB4ZjMs IDB4MDQsIDB4OTgsIDB4YjMsIDB4MjksIDB4NjYsIDB4MGMsIDB4NjIsCi0rICAgIDB4MTgsIDB4 NjAsIDB4NTUsIDB4NDEsIDB4NTksIDB4ZDQsIDB4NjAsIDB4ODUsIDB4OTksIDB4YzEsIDB4NTEs IDB4MTMsCi0rICAgIDB4NmYsIDB4OTcsIDB4ODUsIDB4OTMsIDB4MzMsIDB4MzQsIDB4MDcsIDB4 NTAKLSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHAyNTZfcWNhdnN5W10gPSB7 Ci0rICAgIDB4NmYsIDB4NjksIDB4MjQsIDB4ZWIsIDB4ZTksIDB4M2IsIDB4YTcsIDB4Y2MsIDB4 NDcsIDB4MTcsIDB4YWEsIDB4M2YsCi0rICAgIDB4NzAsIDB4ZmMsIDB4MTAsIDB4NzMsIDB4MGEs IDB4Y2QsIDB4MjEsIDB4ZWUsIDB4MjksIDB4MTksIDB4MWYsIDB4YWYsCi0rICAgIDB4YjQsIDB4 MWMsIDB4MWUsIDB4YzIsIDB4OGUsIDB4OTcsIDB4ODEsIDB4NmUKLSt9OwotKwotK3N0YXRpYyBj b25zdCB1bnNpZ25lZCBjaGFyIHAyNTZfcWl1dHhbXSA9IHsKLSsgICAgMHg3MSwgMHg0NiwgMHg4 OCwgMHgwOCwgMHg5MiwgMHgyMSwgMHgxYiwgMHgxMCwgMHgyMSwgMHg3NCwgMHhmZiwgMHgwYywK LSsgICAgMHg5NCwgMHhkZSwgMHgzNCwgMHg3YywgMHg4NiwgMHg3NCwgMHhiZSwgMHg2NywgMHg0 MSwgMHg2OCwgMHhkNCwgMHhjMSwKLSsgICAgMHhlNSwgMHg3NSwgMHg2MywgMHg5YywgMHhhNywg MHg0NiwgMHg5MywgMHg2ZgotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgcDI1 Nl9xaXV0eVtdID0gewotKyAgICAweDMzLCAweDQwLCAweGE5LCAweDZhLCAweGY1LCAweDIwLCAw eGI1LCAweDllLCAweGZjLCAweDYwLCAweDFhLCAweGFlLAotKyAgICAweDNkLCAweGY4LCAweDIx LCAweGQyLCAweGE3LCAweGNhLCAweDUyLCAweDM0LCAweGI5LCAweDVmLCAweDI3LCAweDc1LAot KyAgICAweDZjLCAweDgxLCAweGJlLCAweDMyLCAweDRkLCAweGJhLCAweGJiLCAweGY4Ci0rfTsK LSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBwMjU2X3FpdXRkW10gPSB7Ci0rICAgIDB4 MWEsIDB4NDgsIDB4NTUsIDB4NmIsIDB4MTEsIDB4YmUsIDB4OTIsIDB4ZDQsIDB4MWMsIDB4ZDcs IDB4NDUsIDB4YzMsCi0rICAgIDB4ODIsIDB4ODEsIDB4NTEsIDB4ZjEsIDB4MjMsIDB4NDAsIDB4 YjcsIDB4ODMsIDB4ZmQsIDB4MDEsIDB4NmQsIDB4YmMsCi0rICAgIDB4YTEsIDB4NjYsIDB4YWYs IDB4MGEsIDB4MDMsIDB4MjMsIDB4Y2QsIDB4YzgKLSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNp Z25lZCBjaGFyIHAyNTZfeml1dFtdID0gewotKyAgICAweDc3LCAweDJhLCAweDFlLCAweDM3LCAw eGVlLCAweGU2LCAweDUxLCAweDAyLCAweDcxLCAweDQwLCAweGY4LCAweDZhLAotKyAgICAweDM2 LCAweGY4LCAweDY1LCAweDYxLCAweDJiLCAweDE4LCAweDcxLCAweDgyLCAweDIzLCAweGU2LCAw eGYyLCAweDc3LAotKyAgICAweGNlLCAweGVjLCAweGI4LCAweDQ5LCAweGM3LCAweGJmLCAweDM2 LCAweDRmCi0rfTsKLSsKLSt0eXBlZGVmIHN0cnVjdCB7Ci0rICAgIGludCBjdXJ2ZTsKLSsgICAg Y29uc3QgdW5zaWduZWQgY2hhciAqeDE7Ci0rICAgIHNpemVfdCB4MWxlbjsKLSsgICAgY29uc3Qg dW5zaWduZWQgY2hhciAqeTE7Ci0rICAgIHNpemVfdCB5MWxlbjsKLSsgICAgY29uc3QgdW5zaWdu ZWQgY2hhciAqZDE7Ci0rICAgIHNpemVfdCBkMWxlbjsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hh ciAqeDI7Ci0rICAgIHNpemVfdCB4MmxlbjsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqeTI7 Ci0rICAgIHNpemVfdCB5MmxlbjsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqejsKLSsgICAg c2l6ZV90IHpsZW47Ci0rfSBFQ0RIX1NFTEZURVNUX0RBVEE7Ci0rCi0rIyBkZWZpbmUgbWFrZV9l Y2RoX3Rlc3QobmlkLCBwcikgeyBuaWQsIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHByIyNfcWl1dHgsIHNpemVvZihwciMjX3FpdXR4KSwgXAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcHIjI19xaXV0eSwgc2l6ZW9mKHByIyNfcWl1dHkpLCBcCi0rICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBwciMjX3FpdXRkLCBzaXplb2YocHIjI19xaXV0ZCks IFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByIyNfcWNhdnN4LCBzaXplb2Yo cHIjI19xY2F2c3gpLCBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwciMjX3Fj YXZzeSwgc2l6ZW9mKHByIyNfcWNhdnN5KSwgXAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcHIjI196aXV0LCBzaXplb2YocHIjI196aXV0KSB9Ci0rCi0rc3RhdGljIEVDREhfU0VM RlRFU1RfREFUQSB0ZXN0X2VjZGhfZGF0YVtdID0gewotKyAgICBtYWtlX2VjZGhfdGVzdChOSURf WDlfNjJfcHJpbWUyNTZ2MSwgcDI1NiksCi0rfTsKLSsKLStpbnQgRklQU19zZWxmdGVzdF9lY2Ro KHZvaWQpCi0rewotKyAgICBFQ19LRVkgKmVjMSA9IE5VTEwsICplYzIgPSBOVUxMOwotKyAgICBj b25zdCBFQ19QT0lOVCAqZWNwID0gTlVMTDsKLSsgICAgQklHTlVNICp4ID0gTlVMTCwgKnkgPSBO VUxMLCAqZCA9IE5VTEw7Ci0rICAgIHVuc2lnbmVkIGNoYXIgKnp0bXAgPSBOVUxMOwotKyAgICBp bnQgcnYgPSAxOwotKyAgICBzaXplX3QgaTsKLSsKLSsgICAgZm9yIChpID0gMDsgaSA8IHNpemVv Zih0ZXN0X2VjZGhfZGF0YSkgLyBzaXplb2YoRUNESF9TRUxGVEVTVF9EQVRBKTsgaSsrKSB7Ci0r ICAgICAgICBFQ0RIX1NFTEZURVNUX0RBVEEgKmVjZCA9IHRlc3RfZWNkaF9kYXRhICsgaTsKLSsg ICAgICAgIGlmICghZmlwc19wb3N0X3N0YXJ0ZWQoRklQU19URVNUX0VDREgsIGVjZC0+Y3VydmUs IDApKQotKyAgICAgICAgICAgIGNvbnRpbnVlOwotKyAgICAgICAgenRtcCA9IE9QRU5TU0xfbWFs bG9jKGVjZC0+emxlbik7Ci0rCi0rICAgICAgICB4ID0gQk5fYmluMmJuKGVjZC0+eDEsIGVjZC0+ eDFsZW4sIHgpOwotKyAgICAgICAgeSA9IEJOX2JpbjJibihlY2QtPnkxLCBlY2QtPnkxbGVuLCB5 KTsKLSsgICAgICAgIGQgPSBCTl9iaW4yYm4oZWNkLT5kMSwgZWNkLT5kMWxlbiwgZCk7Ci0rCi0r ICAgICAgICBpZiAoIXggfHwgIXkgfHwgIWQgfHwgIXp0bXApIHsKLSsgICAgICAgICAgICBydiA9 IDA7Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBlYzEg PSBFQ19LRVlfbmV3X2J5X2N1cnZlX25hbWUoZWNkLT5jdXJ2ZSk7Ci0rICAgICAgICBpZiAoIWVj MSkgewotKyAgICAgICAgICAgIHJ2ID0gMDsKLSsgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAg ICAgIH0KLSsgICAgICAgIEVDX0tFWV9zZXRfZmxhZ3MoZWMxLCBFQ19GTEFHX0NPRkFDVE9SX0VD REgpOwotKwotKyAgICAgICAgaWYgKCFFQ19LRVlfc2V0X3B1YmxpY19rZXlfYWZmaW5lX2Nvb3Jk aW5hdGVzKGVjMSwgeCwgeSkpIHsKLSsgICAgICAgICAgICBydiA9IDA7Ci0rICAgICAgICAgICAg Z290byBlcnI7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBpZiAoIUVDX0tFWV9zZXRfcHJpdmF0 ZV9rZXkoZWMxLCBkKSkgewotKyAgICAgICAgICAgIHJ2ID0gMDsKLSsgICAgICAgICAgICBnb3Rv IGVycjsKLSsgICAgICAgIH0KLSsKLSsgICAgICAgIHggPSBCTl9iaW4yYm4oZWNkLT54MiwgZWNk LT54MmxlbiwgeCk7Ci0rICAgICAgICB5ID0gQk5fYmluMmJuKGVjZC0+eTIsIGVjZC0+eTJsZW4s IHkpOwotKwotKyAgICAgICAgaWYgKCF4IHx8ICF5KSB7Ci0rICAgICAgICAgICAgcnYgPSAwOwot KyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgfQotKwotKyAgICAgICAgZWMyID0gRUNf S0VZX25ld19ieV9jdXJ2ZV9uYW1lKGVjZC0+Y3VydmUpOwotKyAgICAgICAgaWYgKCFlYzIpIHsK LSsgICAgICAgICAgICBydiA9IDA7Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9 Ci0rICAgICAgICBFQ19LRVlfc2V0X2ZsYWdzKGVjMSwgRUNfRkxBR19DT0ZBQ1RPUl9FQ0RIKTsK LSsKLSsgICAgICAgIGlmICghRUNfS0VZX3NldF9wdWJsaWNfa2V5X2FmZmluZV9jb29yZGluYXRl cyhlYzIsIHgsIHkpKSB7Ci0rICAgICAgICAgICAgcnYgPSAwOwotKyAgICAgICAgICAgIGdvdG8g ZXJyOwotKyAgICAgICAgfQotKwotKyAgICAgICAgZWNwID0gRUNfS0VZX2dldDBfcHVibGljX2tl eShlYzIpOwotKyAgICAgICAgaWYgKCFlY3ApIHsKLSsgICAgICAgICAgICBydiA9IDA7Ci0rICAg ICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBpZiAoIUVDREhfY29t cHV0ZV9rZXkoenRtcCwgZWNkLT56bGVuLCBlY3AsIGVjMSwgMCkpIHsKLSsgICAgICAgICAgICBy diA9IDA7Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBp ZiAoIWZpcHNfcG9zdF9jb3JydXB0KEZJUFNfVEVTVF9FQ0RILCBlY2QtPmN1cnZlLCBOVUxMKSkK LSsgICAgICAgICAgICB6dG1wWzBdIF49IDB4MTsKLSsKLSsgICAgICAgIGlmIChtZW1jbXAoenRt cCwgZWNkLT56LCBlY2QtPnpsZW4pKSB7Ci0rICAgICAgICAgICAgZmlwc19wb3N0X2ZhaWxlZChG SVBTX1RFU1RfRUNESCwgZWNkLT5jdXJ2ZSwgMCk7Ci0rICAgICAgICAgICAgcnYgPSAwOwotKyAg ICAgICAgfSBlbHNlIGlmICghZmlwc19wb3N0X3N1Y2Nlc3MoRklQU19URVNUX0VDREgsIGVjZC0+ Y3VydmUsIDApKQotKyAgICAgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICAgICAgRUNfS0VZX2Zy ZWUoZWMxKTsKLSsgICAgICAgIGVjMSA9IE5VTEw7Ci0rICAgICAgICBFQ19LRVlfZnJlZShlYzIp OwotKyAgICAgICAgZWMyID0gTlVMTDsKLSsgICAgICAgIE9QRU5TU0xfZnJlZSh6dG1wKTsKLSsg ICAgICAgIHp0bXAgPSBOVUxMOwotKyAgICB9Ci0rCi0rIGVycjoKLSsKLSsgICAgaWYgKHgpCi0r ICAgICAgICBCTl9jbGVhcl9mcmVlKHgpOwotKyAgICBpZiAoeSkKLSsgICAgICAgIEJOX2NsZWFy X2ZyZWUoeSk7Ci0rICAgIGlmIChkKQotKyAgICAgICAgQk5fY2xlYXJfZnJlZShkKTsKLSsgICAg aWYgKGVjMSkKLSsgICAgICAgIEVDX0tFWV9mcmVlKGVjMSk7Ci0rICAgIGlmIChlYzIpCi0rICAg ICAgICBFQ19LRVlfZnJlZShlYzIpOwotKyAgICBpZiAoenRtcCkKLSsgICAgICAgIE9QRU5TU0xf ZnJlZSh6dG1wKTsKLSsKLSsgICAgcmV0dXJuIHJ2OwotKwotK30KLSsKLSsjZW5kaWYKLWRpZmYg LXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfZWNkc2Ffc2VsZnRlc3QuYy5maXBz IG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfZWNkc2Ffc2VsZnRlc3QuYwotLS0tIG9w ZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfZWNkc2Ffc2VsZnRlc3QuYy5maXBzCTIwMjEt MDMtMDMgMTI6NTc6NDIuMjAwNzM0NTM0ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRv L2ZpcHMvZmlwc19lY2RzYV9zZWxmdGVzdC5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAwNzM0NTM0 ICswMTAwCi1AQCAtMCwwICsxLDE2NiBAQAotKy8qIGZpcHMvZWNkc2EvZmlwc19lY2RzYV9zZWxm dGVzdC5jICovCi0rLyogV3JpdHRlbiBieSBEciBTdGVwaGVuIE4gSGVuc29uIChzdGV2ZUBvcGVu c3NsLm9yZykgZm9yIHRoZSBPcGVuU1NMCi0rICogcHJvamVjdCAyMDExLgotKyAqLwotKy8qID09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09Ci0rICogQ29weXJpZ2h0IChjKSAyMDExIFRoZSBPcGVuU1NMIFByb2plY3QuICBB bGwgcmlnaHRzIHJlc2VydmVkLgotKyAqCi0rICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0rICogbW9kaWZpY2F0aW9u LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0r ICogYXJlIG1ldDoKLSsgKgotKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0rICogICAgbm90aWNlLCB0aGlzIGxpc3Qg b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKLSsgKgotKyAqIDIu IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg Y29weXJpZ2h0Ci0rICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0rICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29y IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotKyAqICAgIGRpc3RyaWJ1dGlvbi4K LSsgKgotKyAqIDMuIEFsbCBhZHZlcnRpc2luZyBtYXRlcmlhbHMgbWVudGlvbmluZyBmZWF0dXJl cyBvciB1c2Ugb2YgdGhpcwotKyAqICAgIHNvZnR3YXJlIG11c3QgZGlzcGxheSB0aGUgZm9sbG93 aW5nIGFja25vd2xlZGdtZW50OgotKyAqICAgICJUaGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdh cmUgZGV2ZWxvcGVkIGJ5IHRoZSBPcGVuU1NMIFByb2plY3QKLSsgKiAgICBmb3IgdXNlIGluIHRo ZSBPcGVuU1NMIFRvb2xraXQuIChodHRwOi8vd3d3Lk9wZW5TU0wub3JnLykiCi0rICoKLSsgKiA0 LiBUaGUgbmFtZXMgIk9wZW5TU0wgVG9vbGtpdCIgYW5kICJPcGVuU1NMIFByb2plY3QiIG11c3Qg bm90IGJlIHVzZWQgdG8KLSsgKiAgICBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl ZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dAotKyAqICAgIHByaW9yIHdyaXR0ZW4gcGVybWlz c2lvbi4gRm9yIHdyaXR0ZW4gcGVybWlzc2lvbiwgcGxlYXNlIGNvbnRhY3QKLSsgKiAgICBsaWNl bnNpbmdAT3BlblNTTC5vcmcuCi0rICoKLSsgKiA1LiBQcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp cyBzb2Z0d2FyZSBtYXkgbm90IGJlIGNhbGxlZCAiT3BlblNTTCIKLSsgKiAgICBub3IgbWF5ICJP cGVuU1NMIiBhcHBlYXIgaW4gdGhlaXIgbmFtZXMgd2l0aG91dCBwcmlvciB3cml0dGVuCi0rICog ICAgcGVybWlzc2lvbiBvZiB0aGUgT3BlblNTTCBQcm9qZWN0LgotKyAqCi0rICogNi4gUmVkaXN0 cmlidXRpb25zIG9mIGFueSBmb3JtIHdoYXRzb2V2ZXIgbXVzdCByZXRhaW4gdGhlIGZvbGxvd2lu ZwotKyAqICAgIGFja25vd2xlZGdtZW50OgotKyAqICAgICJUaGlzIHByb2R1Y3QgaW5jbHVkZXMg c29mdHdhcmUgZGV2ZWxvcGVkIGJ5IHRoZSBPcGVuU1NMIFByb2plY3QKLSsgKiAgICBmb3IgdXNl IGluIHRoZSBPcGVuU1NMIFRvb2xraXQgKGh0dHA6Ly93d3cuT3BlblNTTC5vcmcvKSIKLSsgKgot KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIE9wZW5TU0wgUFJPSkVDVCBgYEFT IElTJycgQU5EIEFOWQotKyAqIEVYUFJFU1NFRCBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSsgKiBQVVJQT1NF IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIE9wZW5TU0wgUFJPSkVDVCBP UgotKyAqIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD VCwgSU5DSURFTlRBTCwKLSsgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg REFNQUdFUyAoSU5DTFVESU5HLCBCVVQKLSsgKiBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSsgKiBMT1NTIE9GIFVTRSwgREFUQSwg T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotKyAqIEhPV0VWRVIgQ0FVU0VE IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwKLSsg KiBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF UldJU0UpCi0rICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G VFdBUkUsIEVWRU4gSUYgQURWSVNFRAotKyAqIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB TUFHRS4KLSsgKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotKyAqCi0rICovCi0rCi0rI2RlZmluZSBPUEVOU1NMX0ZJ UFNBUEkKLSsKLSsjaW5jbHVkZSA8c3RyaW5nLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvY3J5cHRv Lmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZWMuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9lY2RzYS5o PgotKyNpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSsjaW5jbHVkZSAiY3J5cHRvL2ZpcHMuaCIK LSsjaW5jbHVkZSA8b3BlbnNzbC9lcnIuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLSsj aW5jbHVkZSA8b3BlbnNzbC9ibi5oPgotKwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsKLStzdGF0 aWMgY29uc3QgY2hhciBQXzI1Nl9uYW1lW10gPSAiRUNEU0EgUC0yNTYiOwotKwotK3N0YXRpYyBj b25zdCB1bnNpZ25lZCBjaGFyIFBfMjU2X2RbXSA9IHsKLSsgICAgMHg1MSwgMHhiZCwgMHgwNiwg MHhhMSwgMHgxYywgMHhkYSwgMHhlMiwgMHgxMiwgMHg5OSwgMHhjOSwgMHg1MiwgMHgzZiwKLSsg ICAgMHhlYSwgMHhhNCwgMHhkMiwgMHhkMSwgMHhmNCwgMHg3ZiwgMHhkNCwgMHgzZSwgMHhiZCwg MHhmOCwgMHhmYywgMHg4NywKLSsgICAgMHhkYywgMHg4MiwgMHg1MywgMHgyMSwgMHhlZSwgMHhh MCwgMHhkYywgMHg2NAotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgUF8yNTZf cXhbXSA9IHsKLSsgICAgMHgyMywgMHg4OSwgMHhlMCwgMHhmNCwgMHg2OSwgMHhlMCwgMHg0OSwg MHhlNSwgMHhjNywgMHhlNSwgMHg0MCwgMHg2ZSwKLSsgICAgMHg4ZiwgMHgyNSwgMHhkZCwgMHhh ZCwgMHgxMSwgMHgxNiwgMHgxNCwgMHg5YiwgMHhhYiwgMHg0NCwgMHgwNiwgMHgzMSwKLSsgICAg MHhiZiwgMHg1ZSwgMHhhNiwgMHg0NCwgMHhhYywgMHg4NiwgMHgwMCwgMHgwNwotK307Ci0rCi0r c3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgUF8yNTZfcXlbXSA9IHsKLSsgICAgMHhiMywgMHgw NSwgMHgwZCwgMHhkMCwgMHhkYywgMHhmNywgMHg0MCwgMHhlNiwgMHhmOSwgMHhkOCwgMHg2ZCwg MHg3YiwKLSsgICAgMHg2MywgMHhjYSwgMHg5NywgMHhlNiwgMHgxMiwgMHhmOSwgMHhkNCwgMHgx OCwgMHg1OSwgMHhiZSwgMHhiMiwgMHg1ZSwKLSsgICAgMHg0YSwgMHg2YSwgMHg3NywgMHgyMywg MHhmNCwgMHgxMSwgMHg5ZCwgMHhlYgotK307Ci0rCi0rdHlwZWRlZiBzdHJ1Y3QgewotKyAgICBp bnQgY3VydmU7Ci0rICAgIGNvbnN0IGNoYXIgKm5hbWU7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNo YXIgKng7Ci0rICAgIHNpemVfdCB4bGVuOwotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICp5Owot KyAgICBzaXplX3QgeWxlbjsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciAqZDsKLSsgICAgc2l6 ZV90IGRsZW47Ci0rfSBFQ19TRUxGVEVTVF9EQVRBOwotKwotKyMgZGVmaW5lIG1ha2VfZWNkc2Ff dGVzdChuaWQsIHByKSB7IG5pZCwgcHIjI19uYW1lLCBcCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBwciMjX3F4LCBzaXplb2YocHIjI19xeCksIFwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHByIyNfcXksIHNpemVvZihwciMjX3F5KSwgXAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgcHIjI19kLCBzaXplb2YocHIjI19kKX0KLSsKLStzdGF0aWMg RUNfU0VMRlRFU1RfREFUQSB0ZXN0X2VjX2RhdGFbXSA9IHsKLSsgICAgbWFrZV9lY2RzYV90ZXN0 KE5JRF9YOV82Ml9wcmltZTI1NnYxLCBQXzI1NiksCi0rfTsKLSsKLStpbnQgRklQU19zZWxmdGVz dF9lY2RzYSgpCi0rewotKyAgICBFQ19LRVkgKmVjID0gTlVMTDsKLSsgICAgQklHTlVNICp4ID0g TlVMTCwgKnkgPSBOVUxMLCAqZCA9IE5VTEw7Ci0rICAgIEVWUF9QS0VZICpwayA9IE5VTEw7Ci0r ICAgIGludCBydiA9IDA7Ci0rICAgIHNpemVfdCBpOwotKwotKyAgICBmb3IgKGkgPSAwOyBpIDwg c2l6ZW9mKHRlc3RfZWNfZGF0YSkgLyBzaXplb2YoRUNfU0VMRlRFU1RfREFUQSk7IGkrKykgewot KyAgICAgICAgRUNfU0VMRlRFU1RfREFUQSAqZWNkID0gdGVzdF9lY19kYXRhICsgaTsKLSsKLSsg ICAgICAgIHggPSBCTl9iaW4yYm4oZWNkLT54LCBlY2QtPnhsZW4sIHgpOwotKyAgICAgICAgeSA9 IEJOX2JpbjJibihlY2QtPnksIGVjZC0+eWxlbiwgeSk7Ci0rICAgICAgICBkID0gQk5fYmluMmJu KGVjZC0+ZCwgZWNkLT5kbGVuLCBkKTsKLSsKLSsgICAgICAgIGlmICgheCB8fCAheSB8fCAhZCkK LSsgICAgICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgICAgIGVjID0gRUNfS0VZX25ld19ieV9j dXJ2ZV9uYW1lKGVjZC0+Y3VydmUpOwotKyAgICAgICAgaWYgKCFlYykKLSsgICAgICAgICAgICBn b3RvIGVycjsKLSsKLSsgICAgICAgIGlmICghRUNfS0VZX3NldF9wdWJsaWNfa2V5X2FmZmluZV9j b29yZGluYXRlcyhlYywgeCwgeSkpCi0rICAgICAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgICAg ICBpZiAoIUVDX0tFWV9zZXRfcHJpdmF0ZV9rZXkoZWMsIGQpKQotKyAgICAgICAgICAgIGdvdG8g ZXJyOwotKwotKyAgICAgICAgaWYgKChwayA9IEVWUF9QS0VZX25ldygpKSA9PSBOVUxMKQotKyAg ICAgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICAgICAgRVZQX1BLRVlfYXNzaWduX0VDX0tFWShw aywgZWMpOwotKwotKyAgICAgICAgaWYgKCFmaXBzX3BrZXlfc2lnbmF0dXJlX3Rlc3QocGssIE5V TEwsIDAsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAwLCBF VlBfc2hhMjU2KCksIDAsIGVjZC0+bmFtZSkpCi0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAg IH0KLSsKLSsgICAgcnYgPSAxOwotKwotKyBlcnI6Ci0rCi0rICAgIGlmICh4KQotKyAgICAgICAg Qk5fY2xlYXJfZnJlZSh4KTsKLSsgICAgaWYgKHkpCi0rICAgICAgICBCTl9jbGVhcl9mcmVlKHkp OwotKyAgICBpZiAoZCkKLSsgICAgICAgIEJOX2NsZWFyX2ZyZWUoZCk7Ci0rICAgIGlmIChwaykK LSsgICAgICAgIEVWUF9QS0VZX2ZyZWUocGspOwotKyAgICBlbHNlIGlmIChlYykKLSsgICAgICAg IEVDX0tFWV9mcmVlKGVjKTsKLSsKLSsgICAgcmV0dXJuIHJ2OwotKwotK30KLSsKLSsjZW5kaWYK LWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfZXJyLmguZmlwcyBvcGVu c3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX2Vyci5oCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5 cHRvL2ZpcHMvZmlwc19lcnIuaC5maXBzCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAxNzM0NTQyICsw MTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19lcnIuaAkyMDIxLTAzLTAz IDEyOjU3OjQyLjIwMTczNDU0MiArMDEwMAotQEAgLTAsMCArMSwxOTcgQEAKLSsvKiBjcnlwdG8v Zmlwc19lcnIuaCAqLwotKy8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0rICogQ29weXJpZ2h0IChjKSAxOTk5LTIw MTEgVGhlIE9wZW5TU0wgUHJvamVjdC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0rICoKLSsgKiBS ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y IHdpdGhvdXQKLSsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0 aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSsgKiBhcmUgbWV0OgotKyAqCi0rICogMS4gUmVkaXN0 cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK LSsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n IGRpc2NsYWltZXIuCi0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBs aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotKyAqICAg IHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0 aGUKLSsgKiAgICBkaXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0 ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMKLSsgKiAgICBzb2Z0d2Fy ZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhp cyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9q ZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0LiAoaHR0cDovL3d3dy5P cGVuU1NMLm9yZy8pIgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJPcGVuU1NMIFRvb2xraXQiIGFu ZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRvCi0rICogICAgZW5kb3JzZSBv ciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQKLSsg KiAgICBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0dGVuIHBlcm1pc3Npb24sIHBs ZWFzZSBjb250YWN0Ci0rICogICAgb3BlbnNzbC1jb3JlQE9wZW5TU0wub3JnLgotKyAqCi0rICog NS4gUHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgbWF5IG5vdCBiZSBjYWxsZWQg Ik9wZW5TU0wiCi0rICogICAgbm9yIG1heSAiT3BlblNTTCIgYXBwZWFyIGluIHRoZWlyIG5hbWVz IHdpdGhvdXQgcHJpb3Igd3JpdHRlbgotKyAqICAgIHBlcm1pc3Npb24gb2YgdGhlIE9wZW5TU0wg UHJvamVjdC4KLSsgKgotKyAqIDYuIFJlZGlzdHJpYnV0aW9ucyBvZiBhbnkgZm9ybSB3aGF0c29l dmVyIG11c3QgcmV0YWluIHRoZSBmb2xsb3dpbmcKLSsgKiAgICBhY2tub3dsZWRnbWVudDoKLSsg KiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3Bl blNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0IChodHRw Oi8vd3d3Lk9wZW5TU0wub3JnLykiCi0rICoKLSsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE IEJZIFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycnIEFORCBBTlkKLSsgKiBFWFBSRVNTRUQg T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhF Ci0rICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG T1IgQSBQQVJUSUNVTEFSCi0rICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5U IFNIQUxMIFRIRSBPcGVuU1NMIFBST0pFQ1QgT1IKLSsgKiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJ QUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0rICogU1BFQ0lBTCwg RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCi0rICog Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD RVM7Ci0rICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS UlVQVElPTikKLSsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0rICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAo SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotKyAqIEFSSVNJTkcgSU4gQU5ZIFdB WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQKLSsgKiBP RiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0rICogPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSsgKgot KyAqIFRoaXMgcHJvZHVjdCBpbmNsdWRlcyBjcnlwdG9ncmFwaGljIHNvZnR3YXJlIHdyaXR0ZW4g YnkgRXJpYyBZb3VuZwotKyAqIChlYXlAY3J5cHRzb2Z0LmNvbSkuICBUaGlzIHByb2R1Y3QgaW5j bHVkZXMgc29mdHdhcmUgd3JpdHRlbiBieSBUaW0KLSsgKiBIdWRzb24gKHRqaEBjcnlwdHNvZnQu Y29tKS4KLSsgKgotKyAqLwotKwotKy8qCi0rICogTk9URTogdGhpcyBmaWxlIHdhcyBhdXRvIGdl bmVyYXRlZCBieSB0aGUgbWtlcnIucGwgc2NyaXB0OiBhbnkgY2hhbmdlcwotKyAqIG1hZGUgdG8g aXQgd2lsbCBiZSBvdmVyd3JpdHRlbiB3aGVuIHRoZSBzY3JpcHQgbmV4dCB1cGRhdGVzIHRoaXMg ZmlsZSwKLSsgKiBvbmx5IHJlYXNvbiBzdHJpbmdzIHdpbGwgYmUgcHJlc2VydmVkLgotKyAqLwot KwotKyNpbmNsdWRlIDxzdGRpby5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2Vyci5oPgotKyNpbmNs dWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSsKLSsvKiBCRUdJTiBFUlJPUiBDT0RFUyAqLwotKyNpZm5k ZWYgT1BFTlNTTF9OT19FUlIKLSsKLSsjIGRlZmluZSBFUlJfRlVOQyhmdW5jKSBFUlJfUEFDSyhF UlJfTElCX0ZJUFMsZnVuYywwKQotKyMgZGVmaW5lIEVSUl9SRUFTT04ocmVhc29uKSBFUlJfUEFD SyhFUlJfTElCX0ZJUFMsMCxyZWFzb24pCi0rCi0rc3RhdGljIEVSUl9TVFJJTkdfREFUQSBGSVBT X3N0cl9mdW5jdHNbXSA9IHsKLSsgICAge0VSUl9GVU5DKEZJUFNfRl9ESF9CVUlMVElOX0dFTlBB UkFNUyksICJkaF9idWlsdGluX2dlbnBhcmFtcyJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX0RS QkdfUkVTRUVEKSwgImRyYmdfcmVzZWVkIn0sCi0rICAgIHtFUlJfRlVOQyhGSVBTX0ZfRFNBX0JV SUxUSU5fUEFSQU1HRU4yKSwgImRzYV9idWlsdGluX3BhcmFtZ2VuMiJ9LAotKyAgICB7RVJSX0ZV TkMoRklQU19GX0RTQV9ET19TSUdOKSwgIkRTQV9kb19zaWduIn0sCi0rICAgIHtFUlJfRlVOQyhG SVBTX0ZfRFNBX0RPX1ZFUklGWSksICJEU0FfZG9fdmVyaWZ5In0sCi0rICAgIHtFUlJfRlVOQyhG SVBTX0ZfRUNESF9DT01QVVRFX0tFWSksICJFQ0RIX2NvbXB1dGVfa2V5In0sCi0rICAgIHtFUlJf RlVOQyhGSVBTX0ZfRVZQX0NJUEhFUl9DVFhfTkVXKSwgIkVWUF9DSVBIRVJfQ1RYX25ldyJ9LAot KyAgICB7RVJSX0ZVTkMoRklQU19GX0VWUF9DSVBIRVJfQ1RYX1JFU0VUKSwgIkVWUF9DSVBIRVJf Q1RYX3Jlc2V0In0sCi0rICAgIHtFUlJfRlVOQyhGSVBTX0ZfRklQU19DSEVDS19EU0EpLCAiZmlw c19jaGVja19kc2EifSwKLSsgICAge0VSUl9GVU5DKEZJUFNfRl9GSVBTX0NIRUNLX0VDKSwgImZp cHNfY2hlY2tfZWMifSwKLSsgICAge0VSUl9GVU5DKEZJUFNfRl9GSVBTX0NIRUNLX1JTQSksICJm aXBzX2NoZWNrX3JzYSJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX0ZJUFNfRFJCR19CWVRFUyks ICJmaXBzX2RyYmdfYnl0ZXMifSwKLSsgICAge0VSUl9GVU5DKEZJUFNfRl9GSVBTX0RSQkdfQ0hF Q0spLCAiZmlwc19kcmJnX2NoZWNrIn0sCi0rICAgIHtFUlJfRlVOQyhGSVBTX0ZfRklQU19EUkJH X0NQUk5HX1RFU1QpLCAiZmlwc19kcmJnX2Nwcm5nX3Rlc3QifSwKLSsgICAge0VSUl9GVU5DKEZJ UFNfRl9GSVBTX0RSQkdfRVJST1JfQ0hFQ0spLCAiZmlwc19kcmJnX2Vycm9yX2NoZWNrIn0sCi0r ICAgIHtFUlJfRlVOQyhGSVBTX0ZfRklQU19EUkJHX0dFTkVSQVRFKSwgIkZJUFNfZHJiZ19nZW5l cmF0ZSJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX0ZJUFNfRFJCR19JTklUKSwgIkZJUFNfZHJi Z19pbml0In0sCi0rICAgIHtFUlJfRlVOQyhGSVBTX0ZfRklQU19EUkJHX0lOU1RBTlRJQVRFKSwg IkZJUFNfZHJiZ19pbnN0YW50aWF0ZSJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX0ZJUFNfRFJC R19ORVcpLCAiRklQU19kcmJnX25ldyJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX0ZJUFNfRFJC R19SRVNFRUQpLCAiRklQU19kcmJnX3Jlc2VlZCJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX0ZJ UFNfRFJCR19TSU5HTEVfS0FUKSwgIkZJUFNfRFJCR19TSU5HTEVfS0FUIn0sCi0rICAgIHtFUlJf RlVOQyhGSVBTX0ZfRklQU19HRVRfRU5UUk9QWSksICJmaXBzX2dldF9lbnRyb3B5In0sCi0rICAg IHtFUlJfRlVOQyhGSVBTX0ZfRklQU19NT0RVTEVfTU9ERV9TRVQpLCAiRklQU19tb2R1bGVfbW9k ZV9zZXQifSwKLSsgICAge0VSUl9GVU5DKEZJUFNfRl9GSVBTX1BLRVlfU0lHTkFUVVJFX1RFU1Qp LCAiZmlwc19wa2V5X3NpZ25hdHVyZV90ZXN0In0sCi0rICAgIHtFUlJfRlVOQyhGSVBTX0ZfRklQ U19SQU5EX0JZVEVTKSwgIkZJUFNfcmFuZF9ieXRlcyJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19G X0ZJUFNfUkFORF9TRUVEKSwgIkZJUFNfcmFuZF9zZWVkIn0sCi0rICAgIHtFUlJfRlVOQyhGSVBT X0ZfRklQU19SQU5EX1NFVF9NRVRIT0QpLCAiRklQU19yYW5kX3NldF9tZXRob2QifSwKLSsgICAg e0VSUl9GVU5DKEZJUFNfRl9GSVBTX1JBTkRfU1RBVFVTKSwgIkZJUFNfcmFuZF9zdGF0dXMifSwK LSsgICAge0VSUl9GVU5DKEZJUFNfRl9GSVBTX1JTQV9CVUlMVElOX0tFWUdFTiksICJmaXBzX3Jz YV9idWlsdGluX2tleWdlbiJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX0ZJUFNfU0VMRlRFU1Qp LCAiRklQU19zZWxmdGVzdCJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX0ZJUFNfU0VMRlRFU1Rf QUVTKSwgIkZJUFNfc2VsZnRlc3RfYWVzIn0sCi0rICAgIHtFUlJfRlVOQyhGSVBTX0ZfRklQU19T RUxGVEVTVF9BRVNfQ0NNKSwgIkZJUFNfc2VsZnRlc3RfYWVzX2NjbSJ9LAotKyAgICB7RVJSX0ZV TkMoRklQU19GX0ZJUFNfU0VMRlRFU1RfQUVTX0dDTSksICJGSVBTX3NlbGZ0ZXN0X2Flc19nY20i fSwKLSsgICAge0VSUl9GVU5DKEZJUFNfRl9GSVBTX1NFTEZURVNUX0FFU19YVFMpLCAiRklQU19z ZWxmdGVzdF9hZXNfeHRzIn0sCi0rICAgIHtFUlJfRlVOQyhGSVBTX0ZfRklQU19TRUxGVEVTVF9D TUFDKSwgIkZJUFNfc2VsZnRlc3RfY21hYyJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX0ZJUFNf U0VMRlRFU1RfREVTKSwgIkZJUFNfc2VsZnRlc3RfZGVzIn0sCi0rICAgIHtFUlJfRlVOQyhGSVBT X0ZfRklQU19TRUxGVEVTVF9EU0EpLCAiRklQU19zZWxmdGVzdF9kc2EifSwKLSsgICAge0VSUl9G VU5DKEZJUFNfRl9GSVBTX1NFTEZURVNUX0VDRFNBKSwgIkZJUFNfc2VsZnRlc3RfZWNkc2EifSwK LSsgICAge0VSUl9GVU5DKEZJUFNfRl9GSVBTX1NFTEZURVNUX0hNQUMpLCAiRklQU19zZWxmdGVz dF9obWFjIn0sCi0rICAgIHtFUlJfRlVOQyhGSVBTX0ZfRklQU19TRUxGVEVTVF9TSEExKSwgIkZJ UFNfc2VsZnRlc3Rfc2hhMSJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX0ZJUFNfU0VMRlRFU1Rf U0hBMiksICJGSVBTX3NlbGZ0ZXN0X3NoYTIifSwKLSsgICAge0VSUl9GVU5DKEZJUFNfRl9PU1NM X0VDRFNBX1NJR05fU0lHKSwgIm9zc2xfZWNkc2Ffc2lnbl9zaWcifSwKLSsgICAge0VSUl9GVU5D KEZJUFNfRl9PU1NMX0VDRFNBX1ZFUklGWV9TSUcpLCAib3NzbF9lY2RzYV92ZXJpZnlfc2lnIn0s Ci0rICAgIHtFUlJfRlVOQyhGSVBTX0ZfUlNBX0JVSUxUSU5fS0VZR0VOKSwgInJzYV9idWlsdGlu X2tleWdlbiJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX1JTQV9PU1NMX0lOSVQpLCAicnNhX29z c2xfaW5pdCJ9LAotKyAgICB7RVJSX0ZVTkMoRklQU19GX1JTQV9PU1NMX1BSSVZBVEVfREVDUllQ VCksICJyc2Ffb3NzbF9wcml2YXRlX2RlY3J5cHQifSwKLSsgICAge0VSUl9GVU5DKEZJUFNfRl9S U0FfT1NTTF9QUklWQVRFX0VOQ1JZUFQpLCAicnNhX29zc2xfcHJpdmF0ZV9lbmNyeXB0In0sCi0r ICAgIHtFUlJfRlVOQyhGSVBTX0ZfUlNBX09TU0xfUFVCTElDX0RFQ1JZUFQpLCAicnNhX29zc2xf cHVibGljX2RlY3J5cHQifSwKLSsgICAge0VSUl9GVU5DKEZJUFNfRl9SU0FfT1NTTF9QVUJMSUNf RU5DUllQVCksICJyc2Ffb3NzbF9wdWJsaWNfZW5jcnlwdCJ9LAotKyAgICB7MCwgTlVMTH0KLSt9 OwotKwotK3N0YXRpYyBFUlJfU1RSSU5HX0RBVEEgRklQU19zdHJfcmVhc29uc1tdID0gewotKyAg ICB7RVJSX1JFQVNPTihGSVBTX1JfQURESVRJT05BTF9JTlBVVF9FUlJPUl9VTkRFVEVDVEVEKSwK LSsgICAgICJhZGRpdGlvbmFsIGlucHV0IGVycm9yIHVuZGV0ZWN0ZWQifSwKLSsgICAge0VSUl9S RUFTT04oRklQU19SX0FERElUSU9OQUxfSU5QVVRfVE9PX0xPTkcpLAotKyAgICAgImFkZGl0aW9u YWwgaW5wdXQgdG9vIGxvbmcifSwKLSsgICAge0VSUl9SRUFTT04oRklQU19SX0FMUkVBRFlfSU5T VEFOVElBVEVEKSwgImFscmVhZHkgaW5zdGFudGlhdGVkIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJ UFNfUl9EUkJHX05PVF9JTklUSUFMSVNFRCksICJkcmJnIG5vdCBpbml0aWFsaXNlZCJ9LAotKyAg ICB7RVJSX1JFQVNPTihGSVBTX1JfRFJCR19TVFVDSyksICJkcmJnIHN0dWNrIn0sCi0rICAgIHtF UlJfUkVBU09OKEZJUFNfUl9FTlRST1BZX0VSUk9SX1VOREVURUNURUQpLCAiZW50cm9weSBlcnJv ciB1bmRldGVjdGVkIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9FTlRST1BZX05PVF9SRVFV RVNURURfRk9SX1JFU0VFRCksCi0rICAgICAiZW50cm9weSBub3QgcmVxdWVzdGVkIGZvciByZXNl ZWQifSwKLSsgICAge0VSUl9SRUFTT04oRklQU19SX0VOVFJPUFlfU09VUkNFX1NUVUNLKSwgImVu dHJvcHkgc291cmNlIHN0dWNrIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9FUlJPUl9JTklU SUFMSVNJTkdfRFJCRyksICJlcnJvciBpbml0aWFsaXNpbmcgZHJiZyJ9LAotKyAgICB7RVJSX1JF QVNPTihGSVBTX1JfRVJST1JfSU5TVEFOVElBVElOR19EUkJHKSwgImVycm9yIGluc3RhbnRpYXRp bmcgZHJiZyJ9LAotKyAgICB7RVJSX1JFQVNPTihGSVBTX1JfRVJST1JfUkVUUklFVklOR19BRERJ VElPTkFMX0lOUFVUKSwKLSsgICAgICJlcnJvciByZXRyaWV2aW5nIGFkZGl0aW9uYWwgaW5wdXQi fSwKLSsgICAge0VSUl9SRUFTT04oRklQU19SX0VSUk9SX1JFVFJJRVZJTkdfRU5UUk9QWSksICJl cnJvciByZXRyaWV2aW5nIGVudHJvcHkifSwKLSsgICAge0VSUl9SRUFTT04oRklQU19SX0VSUk9S X1JFVFJJRVZJTkdfTk9OQ0UpLCAiZXJyb3IgcmV0cmlldmluZyBub25jZSJ9LAotKyAgICB7RVJS X1JFQVNPTihGSVBTX1JfRklOR0VSUFJJTlRfRE9FU19OT1RfTUFUQ0gpLAotKyAgICAgImZpbmdl cnByaW50IGRvZXMgbm90IG1hdGNoIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9GSVBTX01P REVfQUxSRUFEWV9TRVQpLCAiZmlwcyBtb2RlIGFscmVhZHkgc2V0In0sCi0rICAgIHtFUlJfUkVB U09OKEZJUFNfUl9GSVBTX1NFTEZURVNUX0ZBSUxFRCksICJmaXBzIHNlbGZ0ZXN0IGZhaWxlZCJ9 LAotKyAgICB7RVJSX1JFQVNPTihGSVBTX1JfRlVOQ1RJT05fRVJST1IpLCAiZnVuY3Rpb24gZXJy b3IifSwKLSsgICAge0VSUl9SRUFTT04oRklQU19SX0dFTkVSQVRFX0VSUk9SKSwgImdlbmVyYXRl IGVycm9yIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9HRU5FUkFURV9FUlJPUl9VTkRFVEVD VEVEKSwKLSsgICAgICJnZW5lcmF0ZSBlcnJvciB1bmRldGVjdGVkIn0sCi0rICAgIHtFUlJfUkVB U09OKEZJUFNfUl9JTlNUQU5USUFURV9FUlJPUiksICJpbnN0YW50aWF0ZSBlcnJvciJ9LAotKyAg ICB7RVJSX1JFQVNPTihGSVBTX1JfSU5URVJOQUxfRVJST1IpLCAiaW50ZXJuYWwgZXJyb3IifSwK LSsgICAge0VSUl9SRUFTT04oRklQU19SX0lOVkFMSURfS0VZX0xFTkdUSCksICJpbnZhbGlkIGtl eSBsZW5ndGgifSwKLSsgICAge0VSUl9SRUFTT04oRklQU19SX0lOX0VSUk9SX1NUQVRFKSwgImlu IGVycm9yIHN0YXRlIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9LRVlfVE9PX1NIT1JUKSwg ImtleSB0b28gc2hvcnQifSwKLSsgICAge0VSUl9SRUFTT04oRklQU19SX05PTkNFX0VSUk9SX1VO REVURUNURUQpLCAibm9uY2UgZXJyb3IgdW5kZXRlY3RlZCJ9LAotKyAgICB7RVJSX1JFQVNPTihG SVBTX1JfTk9OX0ZJUFNfTUVUSE9EKSwgIm5vbiBmaXBzIG1ldGhvZCJ9LAotKyAgICB7RVJSX1JF QVNPTihGSVBTX1JfTk9QUl9URVNUMV9GQUlMVVJFKSwgIm5vcHIgdGVzdDEgZmFpbHVyZSJ9LAot KyAgICB7RVJSX1JFQVNPTihGSVBTX1JfTk9QUl9URVNUMl9GQUlMVVJFKSwgIm5vcHIgdGVzdDIg ZmFpbHVyZSJ9LAotKyAgICB7RVJSX1JFQVNPTihGSVBTX1JfTk9UX0lOU1RBTlRJQVRFRCksICJu b3QgaW5zdGFudGlhdGVkIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9QQUlSV0lTRV9URVNU X0ZBSUxFRCksICJwYWlyd2lzZSB0ZXN0IGZhaWxlZCJ9LAotKyAgICB7RVJSX1JFQVNPTihGSVBT X1JfUEVSU09OQUxJU0FUSU9OX0VSUk9SX1VOREVURUNURUQpLAotKyAgICAgInBlcnNvbmFsaXNh dGlvbiBlcnJvciB1bmRldGVjdGVkIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9QRVJTT05B TElTQVRJT05fU1RSSU5HX1RPT19MT05HKSwKLSsgICAgICJwZXJzb25hbGlzYXRpb24gc3RyaW5n IHRvbyBsb25nIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9QUl9URVNUMV9GQUlMVVJFKSwg InByIHRlc3QxIGZhaWx1cmUifSwKLSsgICAge0VSUl9SRUFTT04oRklQU19SX1BSX1RFU1QyX0ZB SUxVUkUpLCAicHIgdGVzdDIgZmFpbHVyZSJ9LAotKyAgICB7RVJSX1JFQVNPTihGSVBTX1JfUkVR VUVTVF9MRU5HVEhfRVJST1JfVU5ERVRFQ1RFRCksCi0rICAgICAicmVxdWVzdCBsZW5ndGggZXJy b3IgdW5kZXRlY3RlZCJ9LAotKyAgICB7RVJSX1JFQVNPTihGSVBTX1JfUkVRVUVTVF9UT09fTEFS R0VfRk9SX0RSQkcpLAotKyAgICAgInJlcXVlc3QgdG9vIGxhcmdlIGZvciBkcmJnIn0sCi0rICAg IHtFUlJfUkVBU09OKEZJUFNfUl9SRVNFRURfQ09VTlRFUl9FUlJPUiksICJyZXNlZWQgY291bnRl ciBlcnJvciJ9LAotKyAgICB7RVJSX1JFQVNPTihGSVBTX1JfUkVTRUVEX0VSUk9SKSwgInJlc2Vl ZCBlcnJvciJ9LAotKyAgICB7RVJSX1JFQVNPTihGSVBTX1JfU0VMRlRFU1RfRkFJTEVEKSwgInNl bGZ0ZXN0IGZhaWxlZCJ9LAotKyAgICB7RVJSX1JFQVNPTihGSVBTX1JfU0VMRlRFU1RfRkFJTFVS RSksICJzZWxmdGVzdCBmYWlsdXJlIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9URVNUX0ZB SUxVUkUpLCAidGVzdCBmYWlsdXJlIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9VTklOU1RB TlRJQVRFX0VSUk9SKSwgInVuaW5zdGFudGlhdGUgZXJyb3IifSwKLSsgICAge0VSUl9SRUFTT04o RklQU19SX1VOSU5TVEFOVElBVEVfWkVST0lTRV9FUlJPUiksCi0rICAgICAidW5pbnN0YW50aWF0 ZSB6ZXJvaXNlIGVycm9yIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJUFNfUl9VTlNVUFBPUlRFRF9E UkJHX1RZUEUpLCAidW5zdXBwb3J0ZWQgZHJiZyB0eXBlIn0sCi0rICAgIHtFUlJfUkVBU09OKEZJ UFNfUl9VTlNVUFBPUlRFRF9QTEFURk9STSksICJ1bnN1cHBvcnRlZCBwbGF0Zm9ybSJ9LAotKyAg ICB7MCwgTlVMTH0KLSt9OwotKwotKyNlbmRpZgotKwotK2ludCBFUlJfbG9hZF9GSVBTX3N0cmlu Z3Modm9pZCkKLSt7Ci0rI2lmbmRlZiBPUEVOU1NMX05PX0VSUgotKwotKyAgICBpZiAoRVJSX2Z1 bmNfZXJyb3Jfc3RyaW5nKEZJUFNfc3RyX2Z1bmN0c1swXS5lcnJvcikgPT0gTlVMTCkgewotKyAg ICAgICAgRVJSX2xvYWRfc3RyaW5ncygwLCBGSVBTX3N0cl9mdW5jdHMpOwotKyAgICAgICAgRVJS X2xvYWRfc3RyaW5ncygwLCBGSVBTX3N0cl9yZWFzb25zKTsKLSsgICAgfQotKyNlbmRpZgotKyAg ICByZXR1cm4gMTsKLSt9Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBz X2Vycy5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19lcnMuYwotLS0tIG9w ZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfZXJzLmMuZmlwcwkyMDIxLTAzLTAzIDEyOjU3 OjQyLjIwMTczNDU0MiArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNf ZXJzLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4yMDE3MzQ1NDIgKzAxMDAKLUBAIC0wLDAgKzEsNyBA QAotKyNpbmNsdWRlIDxvcGVuc3NsL29wZW5zc2xjb25mLmg+Ci0rCi0rI2lmZGVmIE9QRU5TU0xf RklQUwotKyMgaW5jbHVkZSAiZmlwc19lcnIuaCIKLSsjZWxzZQotK3N0YXRpYyB2b2lkICpkdW1t eSA9ICZkdW1teTsKLSsjZW5kaWYKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBz L2ZpcHNfaG1hY19zZWxmdGVzdC5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlw c19obWFjX3NlbGZ0ZXN0LmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX2ht YWNfc2VsZnRlc3QuYy5maXBzCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAxNzM0NTQyICswMTAwCi0r Kysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19obWFjX3NlbGZ0ZXN0LmMJMjAyMS0w My0wMyAxMjo1Nzo0Mi4yMDE3MzQ1NDIgKzAxMDAKLUBAIC0wLDAgKzEsMTM0IEBACi0rLyogPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMDUgVGhlIE9wZW5TU0wgUHJvamVjdC4gIEFs bCByaWdodHMgcmVzZXJ2ZWQuCi0rICoKLSsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSsgKiBtb2RpZmljYXRpb24s IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSsg KiBhcmUgbWV0OgotKyAqCi0rICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11 c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuIAotKyAqCi0rICogMi4g UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj b3B5cmlnaHQKLSsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSsgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0rICogICAgZGlzdHJpYnV0aW9uLgot KyAqCi0rICogMy4gQWxsIGFkdmVydGlzaW5nIG1hdGVyaWFscyBtZW50aW9uaW5nIGZlYXR1cmVz IG9yIHVzZSBvZiB0aGlzCi0rICogICAgc29mdHdhcmUgbXVzdCBkaXNwbGF5IHRoZSBmb2xsb3dp bmcgYWNrbm93bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2Fy ZSBkZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVjdAotKyAqICAgIGZvciB1c2UgaW4gdGhl IE9wZW5TU0wgVG9vbGtpdC4gKGh0dHA6Ly93d3cub3BlbnNzbC5vcmcvKSIKLSsgKgotKyAqIDQu IFRoZSBuYW1lcyAiT3BlblNTTCBUb29sa2l0IiBhbmQgIk9wZW5TU0wgUHJvamVjdCIgbXVzdCBu b3QgYmUgdXNlZCB0bwotKyAqICAgIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVk IGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0Ci0rICogICAgcHJpb3Igd3JpdHRlbiBwZXJtaXNz aW9uLiBGb3Igd3JpdHRlbiBwZXJtaXNzaW9uLCBwbGVhc2UgY29udGFjdAotKyAqICAgIG9wZW5z c2wtY29yZUBvcGVuc3NsLm9yZy4KLSsgKgotKyAqIDUuIFByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0 aGlzIHNvZnR3YXJlIG1heSBub3QgYmUgY2FsbGVkICJPcGVuU1NMIgotKyAqICAgIG5vciBtYXkg Ik9wZW5TU0wiIGFwcGVhciBpbiB0aGVpciBuYW1lcyB3aXRob3V0IHByaW9yIHdyaXR0ZW4KLSsg KiAgICBwZXJtaXNzaW9uIG9mIHRoZSBPcGVuU1NMIFByb2plY3QuCi0rICoKLSsgKiA2LiBSZWRp c3RyaWJ1dGlvbnMgb2YgYW55IGZvcm0gd2hhdHNvZXZlciBtdXN0IHJldGFpbiB0aGUgZm9sbG93 aW5nCi0rICogICAgYWNrbm93bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMgcHJvZHVjdCBpbmNsdWRl cyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVjdAotKyAqICAgIGZvciB1 c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtpdCAoaHR0cDovL3d3dy5vcGVuc3NsLm9yZy8pIgotKyAq Ci0rICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgT3BlblNTTCBQUk9KRUNUIGBg QVMgSVMnJyBBTkQgQU5ZCi0rICogRVhQUkVTU0VEIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5D TFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotKyAqIElNUExJRUQgV0FSUkFOVElFUyBP RiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotKyAqIFBVUlBP U0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgT3BlblNTTCBQUk9KRUNU IE9SCi0rICogSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS RUNULCBJTkNJREVOVEFMLAotKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotKyAqIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVO VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotKyAqIExPU1MgT0YgVVNFLCBEQVRB LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0rICogSE9XRVZFUiBDQVVT RUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULAot KyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U SEVSV0lTRSkKLSsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VECi0rICogT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg REFNQUdFLgotKyAqCi0rICovCi0rCi0rI2luY2x1ZGUgPHN0cmluZy5oPgotKyNpbmNsdWRlIDxv cGVuc3NsL2Vyci5oPgotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsjIGluY2x1ZGUgPG9wZW5zc2wv Zmlwcy5oPgotKyNlbmRpZgotKyNpbmNsdWRlIDxvcGVuc3NsL2htYWMuaD4KLSsKLSsjaWZkZWYg T1BFTlNTTF9GSVBTCi0rdHlwZWRlZiBzdHJ1Y3QgewotKyAgICBjb25zdCBFVlBfTUQgKigqYWxn KSAodm9pZCk7Ci0rICAgIGNvbnN0IGNoYXIgKmtleSwgKml2OwotKyAgICB1bnNpZ25lZCBjaGFy IGthdmFsW0VWUF9NQVhfTURfU0laRV07Ci0rfSBITUFDX0tBVDsKLSsKLStzdGF0aWMgY29uc3Qg SE1BQ19LQVQgdmVjdG9yW10gPSB7Ci0rICAgIHtFVlBfc2hhMSwKLSsgICAgIC8qIGZyb20gaHR0 cDovL2NzcmMubmlzdC5nb3YvcHVibGljYXRpb25zL2ZpcHMvZmlwczE5OC9maXBzLTE5OGEucGRm ICovCi0rICAgICAiMDEyMzQ1Njc4OTo7PD0+P0BBQkMiLAotKyAgICAgIlNhbXBsZSAjMiIsCi0r ICAgICB7MHgwOSwgMHgyMiwgMHhkMywgMHg0MCwgMHg1ZiwgMHhhYSwgMHgzZCwgMHgxOSwKLSsg ICAgICAweDRmLCAweDgyLCAweGE0LCAweDU4LCAweDMwLCAweDczLCAweDdkLCAweDVjLAotKyAg ICAgIDB4YzYsIDB4YzcsIDB4NWQsIDB4MjR9Ci0rICAgICB9LAotKyAgICB7RVZQX3NoYTIyNCwK LSsgICAgIC8qIGp1c3Qga2VlcCBleHRlbmRpbmcgdGhlIGFib3ZlLi4uICovCi0rICAgICAiMDEy MzQ1Njc4OTo7PD0+P0BBQkMiLAotKyAgICAgIlNhbXBsZSAjMiIsCi0rICAgICB7MHhkZCwgMHhl ZiwgMHgwYSwgMHg0MCwgMHhjYiwgMHg3ZCwgMHg1MCwgMHhmYiwKLSsgICAgICAweDZlLCAweGU2 LCAweGNlLCAweGExLCAweDIwLCAweGJhLCAweDI2LCAweGFhLAotKyAgICAgIDB4MDgsIDB4ZjMs IDB4MDcsIDB4NzUsIDB4ODcsIDB4YjgsIDB4YWQsIDB4MWIsCi0rICAgICAgMHg4YywgMHg4ZCwg MHgxMiwgMHhjN30KLSsgICAgIH0sCi0rICAgIHtFVlBfc2hhMjU2LAotKyAgICAgIjAxMjM0NTY3 ODk6Ozw9Pj9AQUJDIiwKLSsgICAgICJTYW1wbGUgIzIiLAotKyAgICAgezB4YjgsIDB4ZjIsIDB4 MGQsIDB4YjUsIDB4NDEsIDB4ZWEsIDB4NDMsIDB4MDksCi0rICAgICAgMHhjYSwgMHg0ZSwgMHhh OSwgMHgzOCwgMHgwYywgMHhkMCwgMHhlOCwgMHgzNCwKLSsgICAgICAweGY3LCAweDFmLCAweGJl LCAweDkxLCAweDc0LCAweGEyLCAweDYxLCAweDM4LAotKyAgICAgIDB4MGQsIDB4YzEsIDB4N2Us IDB4YWUsIDB4NmEsIDB4MzQsIDB4NTEsIDB4ZDl9Ci0rICAgICB9LAotKyAgICB7RVZQX3NoYTM4 NCwKLSsgICAgICIwMTIzNDU2Nzg5Ojs8PT4/QEFCQyIsCi0rICAgICAiU2FtcGxlICMyIiwKLSsg ICAgIHsweDA4LCAweGJjLCAweGIwLCAweGRhLCAweDQ5LCAweDFlLCAweDg3LCAweGFkLAotKyAg ICAgIDB4OWEsIDB4MWQsIDB4NmEsIDB4Y2UsIDB4MjMsIDB4YzUsIDB4MGIsIDB4ZjYsCi0rICAg ICAgMHhiNywgMHgxOCwgMHgwNiwgMHhhNSwgMHg3NywgMHhjZCwgMHg0OSwgMHgwNCwKLSsgICAg ICAweDg5LCAweGYxLCAweGU2LCAweDIzLCAweDQ0LCAweDUxLCAweDUxLCAweDlmLAotKyAgICAg IDB4ODUsIDB4NTYsIDB4ODAsIDB4NzksIDB4MGMsIDB4YmQsIDB4NGQsIDB4NTAsCi0rICAgICAg MHhhNCwgMHg1ZiwgMHgyOSwgMHhlMywgMHg5MywgMHhmMCwgMHhlOCwgMHg3Zn0KLSsgICAgIH0s Ci0rICAgIHtFVlBfc2hhNTEyLAotKyAgICAgIjAxMjM0NTY3ODk6Ozw9Pj9AQUJDIiwKLSsgICAg ICJTYW1wbGUgIzIiLAotKyAgICAgezB4ODAsIDB4OWQsIDB4NDQsIDB4MDUsIDB4N2MsIDB4NWIs IDB4OTUsIDB4NDEsCi0rICAgICAgMHgwNSwgMHhiZCwgMHgwNCwgMHgxMywgMHgxNiwgMHhkYiwg MHgwZiwgMHhhYywKLSsgICAgICAweDQ0LCAweGQ1LCAweGE0LCAweGQ1LCAweGQwLCAweDg5LCAw eDJiLCAweGQwLAotKyAgICAgIDB4NGUsIDB4ODYsIDB4NjQsIDB4MTIsIDB4YzAsIDB4OTAsIDB4 NzcsIDB4NjgsCi0rICAgICAgMHhmMSwgMHg4NywgMHhiNywgMHg3YywgMHg0ZiwgMHhhZSwgMHgy YywgMHgyZiwKLSsgICAgICAweDIxLCAweGE1LCAweGI1LCAweDY1LCAweDlhLCAweDRmLCAweDRi LCAweGE3LAotKyAgICAgIDB4NDcsIDB4MDIsIDB4YTMsIDB4ZGUsIDB4OWIsIDB4NTEsIDB4ZjEs IDB4NDUsCi0rICAgICAgMHhiZCwgMHg0ZiwgMHgyNSwgMHgyNywgMHg0MiwgMHg5OCwgMHg5OSwg MHgwNX0KLSsgICAgIH0sCi0rfTsKLSsKLStpbnQgRklQU19zZWxmdGVzdF9obWFjKCkKLSt7Ci0r ICAgIGludCBuOwotKyAgICB1bnNpZ25lZCBpbnQgb3V0bGVuOwotKyAgICB1bnNpZ25lZCBjaGFy IG91dFtFVlBfTUFYX01EX1NJWkVdOwotKyAgICBjb25zdCBFVlBfTUQgKm1kOwotKyAgICBjb25z dCBITUFDX0tBVCAqdDsKLSsKLSsgICAgZm9yIChuID0gMCwgdCA9IHZlY3RvcjsgbiA8IHNpemVv Zih2ZWN0b3IpIC8gc2l6ZW9mKHZlY3RvclswXSk7IG4rKywgdCsrKSB7Ci0rICAgICAgICBtZCA9 ICgqdC0+YWxnKSAoKTsKLSsgICAgICAgIEhNQUMobWQsIHQtPmtleSwgc3RybGVuKHQtPmtleSks Ci0rICAgICAgICAgICAgIChjb25zdCB1bnNpZ25lZCBjaGFyICopdC0+aXYsIHN0cmxlbih0LT5p diksIG91dCwgJm91dGxlbik7Ci0rCi0rICAgICAgICBpZiAobWVtY21wKG91dCwgdC0+a2F2YWws IG91dGxlbikpIHsKLSsgICAgICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX1NFTEZURVNUX0hN QUMsIEZJUFNfUl9TRUxGVEVTVF9GQUlMRUQpOwotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAg ICAgICAgfQotKyAgICB9Ci0rICAgIHJldHVybiAxOwotK30KLSsjZW5kaWYKLWRpZmYgLXVwIG9w ZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfbG9jbC5oLmZpcHMgb3BlbnNzbC0xLjEuMWov Y3J5cHRvL2ZpcHMvZmlwc19sb2NsLmgKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9m aXBzX2xvY2wuaC5maXBzCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAxNzM0NTQyICswMTAwCi0rKysg b3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19sb2NsLmgJMjAyMS0wMy0wMyAxMjo1Nzo0 Mi4yMDE3MzQ1NDIgKzAxMDAKLUBAIC0wLDAgKzEsNzEgQEAKLSsvKiA9PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotKyAq IENvcHlyaWdodCAoYykgMjAxMSBUaGUgT3BlblNTTCBQcm9qZWN0LiAgQWxsIHJpZ2h0cyByZXNl cnZlZC4KLSsgKgotKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotKyAqIGFyZSBtZXQ6Ci0r ICoKLSsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl IGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlv bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAq ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz Y2xhaW1lciBpbgotKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh bHMgcHJvdmlkZWQgd2l0aCB0aGUKLSsgKiAgICBkaXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBB bGwgYWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRo aXMKLSsgKiAgICBzb2Z0d2FyZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRn bWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBi eSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29s a2l0LiAoaHR0cDovL3d3dy5vcGVuc3NsLm9yZy8pIgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJP cGVuU1NMIFRvb2xraXQiIGFuZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRv Ci0rICogICAgZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNv ZnR3YXJlIHdpdGhvdXQKLSsgKiAgICBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0 dGVuIHBlcm1pc3Npb24sIHBsZWFzZSBjb250YWN0Ci0rICogICAgb3BlbnNzbC1jb3JlQG9wZW5z c2wub3JnLgotKyAqCi0rICogNS4gUHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUg bWF5IG5vdCBiZSBjYWxsZWQgIk9wZW5TU0wiCi0rICogICAgbm9yIG1heSAiT3BlblNTTCIgYXBw ZWFyIGluIHRoZWlyIG5hbWVzIHdpdGhvdXQgcHJpb3Igd3JpdHRlbgotKyAqICAgIHBlcm1pc3Np b24gb2YgdGhlIE9wZW5TU0wgUHJvamVjdC4KLSsgKgotKyAqIDYuIFJlZGlzdHJpYnV0aW9ucyBv ZiBhbnkgZm9ybSB3aGF0c29ldmVyIG11c3QgcmV0YWluIHRoZSBmb2xsb3dpbmcKLSsgKiAgICBh Y2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRl dmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3Bl blNTTCBUb29sa2l0IChodHRwOi8vd3d3Lm9wZW5zc2wub3JnLykiCi0rICoKLSsgKiBUSElTIFNP RlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycnIEFORCBB TlkKLSsgKiBFWFBSRVNTRUQgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO T1QgTElNSVRFRCBUTywgVEhFCi0rICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0rICogUFVSUE9TRSBBUkUgRElTQ0xB SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBPcGVuU1NMIFBST0pFQ1QgT1IKLSsgKiBJVFMg Q09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5U QUwsCi0rICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO Q0xVRElORywgQlVUCi0rICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV VEUgR09PRFMgT1IgU0VSVklDRVM7Ci0rICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7 IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikKLSsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5Z IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0rICogU1RSSUNUIExJ QUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotKyAq IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO IElGIEFEVklTRUQKLSsgKiBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0rICoK LSsgKi8KLSsKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rCi0rIyBpZmRlZiAgX19jcGx1c3BsdXMK LStleHRlcm4gIkMiIHsKLSsjIGVuZGlmCi0rCi0rIyBkZWZpbmUgRklQU19NQVhfQ0lQSEVSX1RF U1RfU0laRSAgICAgICAzMgotKyMgZGVmaW5lIGZpcHNfbG9hZF9rZXlfY29tcG9uZW50KGNvbXAs IHByZSkgXAotKyAgICAgICAgY29tcCA9IEJOX2JpbjJibihwcmUjI18jI2NvbXAsIHNpemVvZihw cmUjI18jI2NvbXApLCBOVUxMKTsgXAotKyAgICAgICAgaWYgKCFjb21wKSBcCi0rICAgICAgICAg ICAgICAgIGdvdG8gZXJyCi0rCi0rIyBkZWZpbmUgZmlwc19wb3N0X3N0YXJ0ZWQoaWQsIHN1Ymlk LCBleCkgMQotKyMgZGVmaW5lIGZpcHNfcG9zdF9zdWNjZXNzKGlkLCBzdWJpZCwgZXgpIDEKLSsj IGRlZmluZSBmaXBzX3Bvc3RfZmFpbGVkKGlkLCBzdWJpZCwgZXgpIDEKLSsjIGRlZmluZSBmaXBz X3Bvc3RfY29ycnVwdChpZCwgc3ViaWQsIGV4KSAxCi0rIyBkZWZpbmUgZmlwc19wb3N0X3N0YXR1 cygpIDEKLSsKLSsjIGlmZGVmICBfX2NwbHVzcGx1cwotK30KLSsjIGVuZGlmCi0rI2VuZGlmCi1k aWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX3Bvc3QuYy5maXBzIG9wZW5z c2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfcG9zdC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5 cHRvL2ZpcHMvZmlwc19wb3N0LmMuZmlwcwkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwMTczNDU0MiAr MDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfcG9zdC5jCTIwMjEtMDMt MDMgMTI6NTc6NDIuMjAxNzM0NTQyICswMTAwCi1AQCAtMCwwICsxLDIyNCBAQAotKy8qID09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09Ci0rICogQ29weXJpZ2h0IChjKSAyMDExIFRoZSBPcGVuU1NMIFByb2plY3QuICBBbGwg cmlnaHRzIHJlc2VydmVkLgotKyAqCi0rICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0rICogbW9kaWZpY2F0aW9uLCBh cmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0rICog YXJlIG1ldDoKLSsgKgotKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0 IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0rICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKLSsgKgotKyAqIDIuIFJl ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w eXJpZ2h0Ci0rICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv bGxvd2luZyBkaXNjbGFpbWVyIGluCi0rICogICAgdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90 aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotKyAqICAgIGRpc3RyaWJ1dGlvbi4KLSsg KgotKyAqIDMuIEFsbCBhZHZlcnRpc2luZyBtYXRlcmlhbHMgbWVudGlvbmluZyBmZWF0dXJlcyBv ciB1c2Ugb2YgdGhpcwotKyAqICAgIHNvZnR3YXJlIG11c3QgZGlzcGxheSB0aGUgZm9sbG93aW5n IGFja25vd2xlZGdtZW50OgotKyAqICAgICJUaGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUg ZGV2ZWxvcGVkIGJ5IHRoZSBPcGVuU1NMIFByb2plY3QKLSsgKiAgICBmb3IgdXNlIGluIHRoZSBP cGVuU1NMIFRvb2xraXQuIChodHRwOi8vd3d3Lm9wZW5zc2wub3JnLykiCi0rICoKLSsgKiA0LiBU aGUgbmFtZXMgIk9wZW5TU0wgVG9vbGtpdCIgYW5kICJPcGVuU1NMIFByb2plY3QiIG11c3Qgbm90 IGJlIHVzZWQgdG8KLSsgKiAgICBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm cm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dAotKyAqICAgIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lv bi4gRm9yIHdyaXR0ZW4gcGVybWlzc2lvbiwgcGxlYXNlIGNvbnRhY3QKLSsgKiAgICBvcGVuc3Ns LWNvcmVAb3BlbnNzbC5vcmcuCi0rICoKLSsgKiA1LiBQcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhp cyBzb2Z0d2FyZSBtYXkgbm90IGJlIGNhbGxlZCAiT3BlblNTTCIKLSsgKiAgICBub3IgbWF5ICJP cGVuU1NMIiBhcHBlYXIgaW4gdGhlaXIgbmFtZXMgd2l0aG91dCBwcmlvciB3cml0dGVuCi0rICog ICAgcGVybWlzc2lvbiBvZiB0aGUgT3BlblNTTCBQcm9qZWN0LgotKyAqCi0rICogNi4gUmVkaXN0 cmlidXRpb25zIG9mIGFueSBmb3JtIHdoYXRzb2V2ZXIgbXVzdCByZXRhaW4gdGhlIGZvbGxvd2lu ZwotKyAqICAgIGFja25vd2xlZGdtZW50OgotKyAqICAgICJUaGlzIHByb2R1Y3QgaW5jbHVkZXMg c29mdHdhcmUgZGV2ZWxvcGVkIGJ5IHRoZSBPcGVuU1NMIFByb2plY3QKLSsgKiAgICBmb3IgdXNl IGluIHRoZSBPcGVuU1NMIFRvb2xraXQgKGh0dHA6Ly93d3cub3BlbnNzbC5vcmcvKSIKLSsgKgot KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIE9wZW5TU0wgUFJPSkVDVCBgYEFT IElTJycgQU5EIEFOWQotKyAqIEVYUFJFU1NFRCBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSsgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0Yg TUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSsgKiBQVVJQT1NF IEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIE9wZW5TU0wgUFJPSkVDVCBP UgotKyAqIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD VCwgSU5DSURFTlRBTCwKLSsgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwg REFNQUdFUyAoSU5DTFVESU5HLCBCVVQKLSsgKiBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSsgKiBMT1NTIE9GIFVTRSwgREFUQSwg T1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQotKyAqIEhPV0VWRVIgQ0FVU0VE IEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwKLSsg KiBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF UldJU0UpCi0rICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09G VFdBUkUsIEVWRU4gSUYgQURWSVNFRAotKyAqIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERB TUFHRS4KLSsgKgotKyAqLwotKwotKyNkZWZpbmUgT1BFTlNTTF9GSVBTQVBJCi0rCi0rI2luY2x1 ZGUgPG9wZW5zc2wvY3J5cHRvLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvcmFuZC5oPgotKyNpbmNs dWRlIDxvcGVuc3NsL2ZpcHNfcmFuZC5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2Vyci5oPgotKyNp bmNsdWRlIDxvcGVuc3NsL2Jpby5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2htYWMuaD4KLSsjaW5j bHVkZSA8b3BlbnNzbC9yc2EuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9kc2EuaD4KLSsjaW5jbHVk ZSA8b3BlbnNzbC9ldnAuaD4KLSsjaW5jbHVkZSA8c3RyaW5nLmg+Ci0rI2luY2x1ZGUgPGxpbWl0 cy5oPgotKwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsKLSsvKiBQb3dlciBvbiBzZWxmIHRlc3Qg KFBPU1QpIHN1cHBvcnQgZnVuY3Rpb25zICovCi0rCi0rIyBpbmNsdWRlIDxvcGVuc3NsL2ZpcHMu aD4KLSsjIGluY2x1ZGUgImNyeXB0by9maXBzLmgiCi0rIyBpbmNsdWRlICJmaXBzX2xvY2wuaCIK LSsKLSsvKiBSdW4gYWxsIHNlbGZ0ZXN0cyAqLwotK2ludCBGSVBTX3NlbGZ0ZXN0KHZvaWQpCi0r ewotKyAgICBpbnQgcnYgPSAxOwotKyAgICBpZiAoIUZJUFNfc2VsZnRlc3RfZHJiZygpKQotKyAg ICAgICAgcnYgPSAwOwotKyAgICBpZiAoIUZJUFNfc2VsZnRlc3Rfc2hhMSgpKQotKyAgICAgICAg cnYgPSAwOwotKyAgICBpZiAoIUZJUFNfc2VsZnRlc3Rfc2hhMigpKQotKyAgICAgICAgcnYgPSAw OwotKyAgICBpZiAoIUZJUFNfc2VsZnRlc3Rfc2hhMygpKQotKyAgICAgICAgcnYgPSAwOwotKyAg ICBpZiAoIUZJUFNfc2VsZnRlc3RfaG1hYygpKQotKyAgICAgICAgcnYgPSAwOwotKyAgICBpZiAo IUZJUFNfc2VsZnRlc3RfY21hYygpKQotKyAgICAgICAgcnYgPSAwOwotKyAgICBpZiAoIUZJUFNf c2VsZnRlc3RfYWVzKCkpCi0rICAgICAgICBydiA9IDA7Ci0rICAgIGlmICghRklQU19zZWxmdGVz dF9hZXNfY2NtKCkpCi0rICAgICAgICBydiA9IDA7Ci0rICAgIGlmICghRklQU19zZWxmdGVzdF9h ZXNfZ2NtKCkpCi0rICAgICAgICBydiA9IDA7Ci0rICAgIGlmICghRklQU19zZWxmdGVzdF9hZXNf eHRzKCkpCi0rICAgICAgICBydiA9IDA7Ci0rICAgIGlmICghRklQU19zZWxmdGVzdF9kZXMoKSkK LSsgICAgICAgIHJ2ID0gMDsKLSsgICAgaWYgKCFGSVBTX3NlbGZ0ZXN0X3JzYSgpKQotKyAgICAg ICAgcnYgPSAwOwotKyAgICBpZiAoIUZJUFNfc2VsZnRlc3RfZWNkc2EoKSkKLSsgICAgICAgIHJ2 ID0gMDsKLSsgICAgaWYgKCFGSVBTX3NlbGZ0ZXN0X2RzYSgpKQotKyAgICAgICAgcnYgPSAwOwot KyAgICBpZiAoIUZJUFNfc2VsZnRlc3RfZGgoKSkKLSsgICAgICAgIHJ2ID0gMDsKLSsgICAgaWYg KCFGSVBTX3NlbGZ0ZXN0X2VjZGgoKSkKLSsgICAgICAgIHJ2ID0gMDsKLSsgICAgcmV0dXJuIHJ2 OwotK30KLSsKLSsvKiBHZW5lcmFsaXplZCBwdWJsaWMga2V5IHRlc3Qgcm91dGluZS4gU2lnbnMg YW5kIHZlcmlmaWVzIHRoZSBkYXRhCi0rICogc3VwcGxpZWQgaW4gdGJzIHVzaW5nIG1lc2FnZSBk aWdlc3QgbWQgYW5kIHNldHRpbmcgb3B0aW9uIGRpZ2VzdAotKyAqIGZsYWdzIG1kX2ZsYWdzLiBJ ZiB0aGUgJ2thdCcgcGFyYW1ldGVyIGlzIG5vdCBOVUxMIGl0IHdpbGwKLSsgKiBhZGRpdGlvbmFs bHkgY2hlY2sgdGhlIHNpZ25hdHVyZSBtYXRjaGVzIGl0OiBhIGtub3duIGFuc3dlciB0ZXN0Ci0r ICogVGhlIHN0cmluZyAiZmFpbF9zdHIiIGlzIHVzZWQgZm9yIGlkZW50aWZpY2F0aW9uIHB1cnBv c2VzIGluIGNhc2UKLSsgKiBvZiBmYWlsdXJlLiBJZiAicGtleSIgaXMgTlVMTCBqdXN0IHBlcmZv cm0gYSBtZXNzYWdlIGRpZ2VzdCBjaGVjay4KLSsgKi8KLSsKLStpbnQgZmlwc19wa2V5X3NpZ25h dHVyZV90ZXN0KEVWUF9QS0VZICpwa2V5LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgdW5zaWduZWQgY2hhciAqdGJzLCBpbnQgdGJzbGVuLAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqa2F0LCB1bnNpZ25lZCBpbnQga2F0bGVu LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRVZQX01EICpkaWdlc3QsIHVu c2lnbmVkIGludCBmbGFncywKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNo YXIgKmZhaWxfc3RyKQotK3sKLSsgICAgaW50IHJldCA9IDA7Ci0rICAgIHVuc2lnbmVkIGNoYXIg c2lndG1wWzI1Nl0sICpzaWcgPSBzaWd0bXA7Ci0rICAgIHNpemVfdCBzaWdsZW4gPSBzaXplb2Yo c2lndG1wKTsKLSsgICAgRVZQX01EX0NUWCAqbWN0eDsKLSsgICAgRVZQX1BLRVlfQ1RYICpwY3R4 OwotKwotKyAgICBpZiAoZGlnZXN0ID09IE5VTEwpCi0rICAgICAgICBkaWdlc3QgPSBFVlBfc2hh MjU2KCk7Ci0rCi0rICAgIG1jdHggPSBFVlBfTURfQ1RYX25ldygpOwotKwotKyAgICBpZiAoKEVW UF9QS0VZX2lkKHBrZXkpID09IEVWUF9QS0VZX1JTQSkKLSsgICAgICAgICYmIChSU0Ffc2l6ZShF VlBfUEtFWV9nZXQwX1JTQShwa2V5KSkgPiBzaXplb2Yoc2lndG1wKSkpIHsKLSsgICAgICAgIHNp ZyA9IE9QRU5TU0xfbWFsbG9jKFJTQV9zaXplKEVWUF9QS0VZX2dldDBfUlNBKHBrZXkpKSk7Ci0r ICAgICAgICBzaWdsZW4gPSBSU0Ffc2l6ZShFVlBfUEtFWV9nZXQwX1JTQShwa2V5KSk7Ci0rICAg IH0KLSsgICAgaWYgKCFzaWcgfHwgISBtY3R4KSB7Ci0rICAgICAgICBFVlBfTURfQ1RYX2ZyZWUo bWN0eCk7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX1BLRVlfU0lHTkFUVVJFX1RFU1Qs IEVSUl9SX01BTExPQ19GQUlMVVJFKTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rCi0r ICAgIGlmICh0YnNsZW4gPT0gLTEpCi0rICAgICAgICB0YnNsZW4gPSBzdHJsZW4oKGNoYXIgKil0 YnMpOwotKwotKyAgICBpZiAoRVZQX0RpZ2VzdFNpZ25Jbml0KG1jdHgsICZwY3R4LCBkaWdlc3Qs IE5VTEwsIHBrZXkpIDw9IDApCi0rICAgICAgICBnb3RvIGVycm9yOwotKwotKyAgICBpZiAoZmxh Z3MgPT0gRVZQX01EX0NUWF9GTEFHX1BBRF9QU1MpIHsKLSsgICAgICAgIEVWUF9QS0VZX0NUWF9z ZXRfcnNhX3BhZGRpbmcocGN0eCwgUlNBX1BLQ1MxX1BTU19QQURESU5HKTsKLSsgICAgICAgIEVW UF9QS0VZX0NUWF9zZXRfcnNhX3Bzc19zYWx0bGVuKHBjdHgsIDApOwotKyAgICB9Ci0rCi0rICAg IGlmIChFVlBfRGlnZXN0U2lnblVwZGF0ZShtY3R4LCB0YnMsIHRic2xlbikgPD0gMCkKLSsgICAg ICAgIGdvdG8gZXJyb3I7Ci0rCi0rICAgIGlmIChFVlBfRGlnZXN0U2lnbkZpbmFsKG1jdHgsIHNp ZywgJnNpZ2xlbikgPD0gMCkKLSsgICAgICAgIGdvdG8gZXJyb3I7Ci0rCi0rICAgIGlmIChrYXQg JiYgKChzaWdsZW4gIT0ga2F0bGVuKSB8fCBtZW1jbXAoa2F0LCBzaWcsIGthdGxlbikpKQotKyAg ICAgICAgZ290byBlcnJvcjsKLSsKLSsgICAgaWYgKEVWUF9EaWdlc3RWZXJpZnlJbml0KG1jdHgs ICZwY3R4LCBkaWdlc3QsIE5VTEwsIHBrZXkpIDw9IDApCi0rICAgICAgICBnb3RvIGVycm9yOwot KwotKyAgICBpZiAoZmxhZ3MgPT0gRVZQX01EX0NUWF9GTEFHX1BBRF9QU1MpIHsKLSsgICAgICAg IEVWUF9QS0VZX0NUWF9zZXRfcnNhX3BhZGRpbmcocGN0eCwgUlNBX1BLQ1MxX1BTU19QQURESU5H KTsKLSsgICAgICAgIEVWUF9QS0VZX0NUWF9zZXRfcnNhX3Bzc19zYWx0bGVuKHBjdHgsIDApOwot KyAgICB9Ci0rCi0rICAgIGlmIChFVlBfRGlnZXN0VmVyaWZ5VXBkYXRlKG1jdHgsIHRicywgdGJz bGVuKSA8PSAwKQotKyAgICAgICAgZ290byBlcnJvcjsKLSsKLSsgICAgcmV0ID0gRVZQX0RpZ2Vz dFZlcmlmeUZpbmFsKG1jdHgsIHNpZywgc2lnbGVuKTsKLSsKLSsgZXJyb3I6Ci0rICAgIGlmIChz aWcgIT0gc2lndG1wKQotKyAgICAgICAgT1BFTlNTTF9mcmVlKHNpZyk7Ci0rICAgIEVWUF9NRF9D VFhfZnJlZShtY3R4KTsKLSsgICAgaWYgKHJldCA8PSAwKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJ UFNfRl9GSVBTX1BLRVlfU0lHTkFUVVJFX1RFU1QsIEZJUFNfUl9URVNUX0ZBSUxVUkUpOwotKyAg ICAgICAgaWYgKGZhaWxfc3RyKQotKyAgICAgICAgICAgIEVSUl9hZGRfZXJyb3JfZGF0YSgyLCAi VHlwZT0iLCBmYWlsX3N0cik7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKyAgICByZXR1 cm4gMTsKLSt9Ci0rCi0rLyogR2VuZXJhbGl6ZWQgc3ltbWV0cmljIGNpcGhlciB0ZXN0IHJvdXRp bmUuIEVuY3J5cHQgZGF0YSwgdmVyaWZ5IHJlc3VsdAotKyAqIGFnYWluc3Qga25vd24gYW5zd2Vy LCBkZWNyeXB0IGFuZCBjb21wYXJlIHdpdGggb3JpZ2luYWwgcGxhaW50ZXh0LgotKyAqLwotKwot K2ludCBmaXBzX2NpcGhlcl90ZXN0KEVWUF9DSVBIRVJfQ1RYICpjdHgsIGNvbnN0IEVWUF9DSVBI RVIgKmNpcGhlciwKLSsgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpr ZXksCi0rICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqaXYsCi0rICAg ICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqcGxhaW50ZXh0LAotKyAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmNpcGhlcnRleHQsIGludCBsZW4p Ci0rewotKyAgICB1bnNpZ25lZCBjaGFyIHBsdG1wW0ZJUFNfTUFYX0NJUEhFUl9URVNUX1NJWkVd OwotKyAgICB1bnNpZ25lZCBjaGFyIGNpdG1wW0ZJUFNfTUFYX0NJUEhFUl9URVNUX1NJWkVdOwot KwotKyAgICBPUEVOU1NMX2Fzc2VydChsZW4gPD0gRklQU19NQVhfQ0lQSEVSX1RFU1RfU0laRSk7 Ci0rICAgIG1lbXNldChwbHRtcCwgMCwgRklQU19NQVhfQ0lQSEVSX1RFU1RfU0laRSk7Ci0rICAg IG1lbXNldChjaXRtcCwgMCwgRklQU19NQVhfQ0lQSEVSX1RFU1RfU0laRSk7Ci0rCi0rICAgIGlm IChFVlBfQ2lwaGVySW5pdF9leChjdHgsIGNpcGhlciwgTlVMTCwga2V5LCBpdiwgMSkgPD0gMCkK LSsgICAgICAgIHJldHVybiAwOwotKyAgICBpZiAoRVZQX0NpcGhlcihjdHgsIGNpdG1wLCBwbGFp bnRleHQsIGxlbikgPD0gMCkKLSsgICAgICAgIHJldHVybiAwOwotKyAgICBpZiAobWVtY21wKGNp dG1wLCBjaXBoZXJ0ZXh0LCBsZW4pKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIGlmIChFVlBf Q2lwaGVySW5pdF9leChjdHgsIGNpcGhlciwgTlVMTCwga2V5LCBpdiwgMCkgPD0gMCkKLSsgICAg ICAgIHJldHVybiAwOwotKyAgICBpZiAoRVZQX0NpcGhlcihjdHgsIHBsdG1wLCBjaXRtcCwgbGVu KSA8PSAwKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIGlmIChtZW1jbXAocGx0bXAsIHBsYWlu dGV4dCwgbGVuKSkKLSsgICAgICAgIHJldHVybiAwOwotKyAgICByZXR1cm4gMTsKLSt9Ci0rI2Vu ZGlmCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX3JhbmRfbGNsLmgu ZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX3JhbmRfbGNsLmgKLS0tLSBvcGVu c3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX3JhbmRfbGNsLmguZmlwcwkyMDIxLTAzLTAzIDEy OjU3OjQyLjIwMTczNDU0MiArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2Zp cHNfcmFuZF9sY2wuaAkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwMTczNDU0MiArMDEwMAotQEAgLTAs MCArMSwyMDMgQEAKLSsvKiBmaXBzL3JhbmQvZmlwc19yYW5kX2xjbC5oICovCi0rLyogV3JpdHRl biBieSBEciBTdGVwaGVuIE4gSGVuc29uIChzdGV2ZUBvcGVuc3NsLm9yZykgZm9yIHRoZSBPcGVu U1NMCi0rICogcHJvamVjdC4KLSsgKi8KLSsvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotKyAqIENvcHlyaWdodCAo YykgMjAxMSBUaGUgT3BlblNTTCBQcm9qZWN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSsgKgot KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp dGggb3Igd2l0aG91dAotKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0 aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotKyAqIGFyZSBtZXQ6Ci0rICoKLSsgKiAxLiBS ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly aWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs b3dpbmcgZGlzY2xhaW1lci4gCi0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5 IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwg dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgot KyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg d2l0aCB0aGUKLSsgKiAgICBkaXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBBbGwgYWR2ZXJ0aXNp bmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMKLSsgKiAgICBz b2Z0d2FyZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnbWVudDoKLSsgKiAg ICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNT TCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0LiAoaHR0cDov L3d3dy5PcGVuU1NMLm9yZy8pIgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJPcGVuU1NMIFRvb2xr aXQiIGFuZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRvCi0rICogICAgZW5k b3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhv dXQKLSsgKiAgICBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0dGVuIHBlcm1pc3Np b24sIHBsZWFzZSBjb250YWN0Ci0rICogICAgbGljZW5zaW5nQE9wZW5TU0wub3JnLgotKyAqCi0r ICogNS4gUHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgbWF5IG5vdCBiZSBjYWxs ZWQgIk9wZW5TU0wiCi0rICogICAgbm9yIG1heSAiT3BlblNTTCIgYXBwZWFyIGluIHRoZWlyIG5h bWVzIHdpdGhvdXQgcHJpb3Igd3JpdHRlbgotKyAqICAgIHBlcm1pc3Npb24gb2YgdGhlIE9wZW5T U0wgUHJvamVjdC4KLSsgKgotKyAqIDYuIFJlZGlzdHJpYnV0aW9ucyBvZiBhbnkgZm9ybSB3aGF0 c29ldmVyIG11c3QgcmV0YWluIHRoZSBmb2xsb3dpbmcKLSsgKiAgICBhY2tub3dsZWRnbWVudDoK LSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUg T3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0ICho dHRwOi8vd3d3Lk9wZW5TU0wub3JnLykiCi0rICoKLSsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ REVEIEJZIFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycnIEFORCBBTlkKLSsgKiBFWFBSRVNT RUQgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg VEhFCi0rICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT UyBGT1IgQSBQQVJUSUNVTEFSCi0rICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVW RU5UIFNIQUxMIFRIRSBPcGVuU1NMIFBST0pFQ1QgT1IKLSsgKiBJVFMgQ09OVFJJQlVUT1JTIEJF IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0rICogU1BFQ0lB TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCi0r ICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS VklDRVM7Ci0rICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO VEVSUlVQVElPTikKLSsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0rICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotKyAqIEFSSVNJTkcgSU4gQU5Z IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQKLSsg KiBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0rICogPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSsg Ki8KLSsKLSt0eXBlZGVmIHN0cnVjdCBkcmJnX2hhc2hfY3R4X3N0IERSQkdfSEFTSF9DVFg7Ci0r dHlwZWRlZiBzdHJ1Y3QgZHJiZ19obWFjX2N0eF9zdCBEUkJHX0hNQUNfQ1RYOwotK3R5cGVkZWYg c3RydWN0IGRyYmdfY3RyX2N0eF9zdCBEUkJHX0NUUl9DVFg7Ci0rCi0rLyogODg4IGJpdHMgZnJv bSAxMC4xIHRhYmxlIDIgKi8KLSsjZGVmaW5lIEhBU0hfUFJOR19NQVhfU0VFRExFTiAgIDExMQot KwotK3N0cnVjdCBkcmJnX2hhc2hfY3R4X3N0IHsKLSsgICAgY29uc3QgRVZQX01EICptZDsKLSsg ICAgRVZQX01EX0NUWCAqbWN0eDsKLSsgICAgdW5zaWduZWQgY2hhciBWW0hBU0hfUFJOR19NQVhf U0VFRExFTl07Ci0rICAgIHVuc2lnbmVkIGNoYXIgQ1tIQVNIX1BSTkdfTUFYX1NFRURMRU5dOwot KyAgICAvKiBUZW1wb3JhcnkgdmFsdWUgc3RvcmFnZTogc2hvdWxkIGFsd2F5cyBleGNlZWQgbWF4 IGRpZ2VzdCBsZW5ndGggKi8KLSsgICAgdW5zaWduZWQgY2hhciB2dG1wW0hBU0hfUFJOR19NQVhf U0VFRExFTl07Ci0rfTsKLSsKLStzdHJ1Y3QgZHJiZ19obWFjX2N0eF9zdCB7Ci0rICAgIGNvbnN0 IEVWUF9NRCAqbWQ7Ci0rICAgIEhNQUNfQ1RYICpoY3R4OwotKyAgICB1bnNpZ25lZCBjaGFyIEtb RVZQX01BWF9NRF9TSVpFXTsKLSsgICAgdW5zaWduZWQgY2hhciBWW0VWUF9NQVhfTURfU0laRV07 Ci0rfTsKLSsKLStzdHJ1Y3QgZHJiZ19jdHJfY3R4X3N0IHsKLSsgICAgQUVTX0tFWSBrczsKLSsg ICAgc2l6ZV90IGtleWxlbjsKLSsgICAgdW5zaWduZWQgY2hhciBLWzMyXTsKLSsgICAgdW5zaWdu ZWQgY2hhciBWWzE2XTsKLSsgICAgLyogVGVtcCB2YXJpYWJsZXMgdXNlZCBieSBkZXJpdmF0aW9u IGZ1bmN0aW9uICovCi0rICAgIEFFU19LRVkgZGZfa3M7Ci0rICAgIEFFU19LRVkgZGZfa3hrczsK LSsgICAgLyogVGVtcG9yYXJ5IGJsb2NrIHN0b3JhZ2UgdXNlZCBieSBjdHJfZGYgKi8KLSsgICAg dW5zaWduZWQgY2hhciBibHRtcFsxNl07Ci0rICAgIHNpemVfdCBibHRtcF9wb3M7Ci0rICAgIHVu c2lnbmVkIGNoYXIgS1hbNDhdOwotK307Ci0rCi0rLyogRFJCRyBpbnRlcm5hbCBmbGFncyAqLwot KwotKy8qIEZ1bmN0aW9ucyBzaG91bGRuJ3QgY2FsbCBlcnIgbGlicmFyeSAqLwotKyNkZWZpbmUg RFJCR19GTEFHX05PRVJSICAgICAgICAgICAgICAgICAweDEKLSsvKiBDdXN0b20gcmVzZWVkIGNo ZWNraW5nICovCi0rI2RlZmluZSBEUkJHX0NVU1RPTV9SRVNFRUQgICAgICAgICAgICAgIDB4Mgot KwotKy8qIERSQkcgc3RhdHVzIHZhbHVlcyAqLwotKy8qIG5vdCBpbml0aWFsaXNlZCAqLwotKyNk ZWZpbmUgRFJCR19TVEFUVVNfVU5JTklUSUFMSVNFRCAgICAgICAwCi0rLyogb2sgYW5kIHJlYWR5 IHRvIGdlbmVyYXRlIHJhbmRvbSBiaXRzICovCi0rI2RlZmluZSBEUkJHX1NUQVRVU19SRUFEWSAg ICAgICAgICAgICAgIDEKLSsvKiByZXNlZWQgcmVxdWlyZWQgKi8KLSsjZGVmaW5lIERSQkdfU1RB VFVTX1JFU0VFRCAgICAgICAgICAgICAgMgotKy8qIGZhdGFsIGVycm9yIGNvbmRpdGlvbiAqLwot KyNkZWZpbmUgRFJCR19TVEFUVVNfRVJST1IgICAgICAgICAgICAgICAzCi0rCi0rLyogQSBkZWZh dWx0IG1heGltdW0gbGVuZ3RoOiBsYXJnZXIgdGhhbiBhbnkgcmVhc29uYWJsZSB2YWx1ZSB1c2Vk IGluIHByYXRpY2UgKi8KLSsKLSsjZGVmaW5lIERSQkdfTUFYX0xFTkdUSCAgICAgICAgICAgICAg ICAgMHg3ZmZmZmZmMAotKy8qIE1heGltdW0gRFJCRyBibG9jayBsZW5ndGg6IGFsbCBtZCBzaXpl cyBhcmUgYmlnZ2VyIHRoYW4gY2lwaGVyIGJsb2NrcyBzaXplcwotKyAqIHNvIHVzZSBtYXggZGln ZXN0IGxlbmd0aC4KLSsgKi8KLSsjZGVmaW5lIERSQkdfTUFYX0JMT0NLICAgICAgICAgICAgICAg ICAgRVZQX01BWF9NRF9TSVpFCi0rCi0rI2RlZmluZSBEUkJHX0hFQUxUSF9JTlRFUlZBTCAgICAg ICAgICAgICgxIDw8IDI0KQotKwotKy8qIERSQkcgY29udGV4dCBzdHJ1Y3R1cmUgKi8KLSsKLStz dHJ1Y3QgZHJiZ19jdHhfc3QgewotKyAgICAvKiBGaXJzdCB0eXBlcyBjb21tb24gdG8gYWxsIGlt cGxlbWVudGF0aW9ucyAqLwotKyAgICAvKiBEUkJHIHR5cGU6IGEgTklEIGZvciB0aGUgdW5kZXJs eWluZyBhbGdvcml0aG0gKi8KLSsgICAgaW50IHR5cGU7Ci0rICAgIC8qIFZhcmlvdXMgZXh0ZXJu YWwgZmxhZ3MgKi8KLSsgICAgdW5zaWduZWQgaW50IHhmbGFnczsKLSsgICAgLyogVmFyaW91cyBp bnRlcm5hbCB1c2Ugb25seSBmbGFncyAqLwotKyAgICB1bnNpZ25lZCBpbnQgaWZsYWdzOwotKyAg ICAvKiBVc2VkIGZvciBwZXJpb2RpYyBoZWFsdGggY2hlY2tzICovCi0rICAgIGludCBoZWFsdGhf Y2hlY2tfY250LCBoZWFsdGhfY2hlY2tfaW50ZXJ2YWw7Ci0rCi0rICAgIC8qIFRoZSBmb2xsb3dp bmcgcGFyYW1ldGVycyBhcmUgc2V0dXAgYnkgbWVjaGFuaXNtIGRyYmdfaW5pdCgpIGNhbGwgKi8K LSsgICAgaW50IHN0cmVuZ3RoOwotKyAgICBzaXplX3QgYmxvY2tsZW5ndGg7Ci0rICAgIHNpemVf dCBtYXhfcmVxdWVzdDsKLSsKLSsgICAgc2l6ZV90IG1pbl9lbnRyb3B5LCBtYXhfZW50cm9weTsK LSsgICAgc2l6ZV90IG1pbl9ub25jZSwgbWF4X25vbmNlOwotKyAgICBzaXplX3QgbWF4X3BlcnMs IG1heF9hZGluOwotKyAgICB1bnNpZ25lZCBpbnQgcmVzZWVkX2NvdW50ZXI7Ci0rICAgIHVuc2ln bmVkIGludCByZXNlZWRfaW50ZXJ2YWw7Ci0rICAgIHNpemVfdCBzZWVkbGVuOwotKyAgICBpbnQg c3RhdHVzOwotKyAgICAvKiBBcHBsaWNhdGlvbiBkYXRhOiB0eXBpY2FsbHkgdXNlZCBieSB0ZXN0 IGdldF9lbnRyb3B5ICovCi0rICAgIHZvaWQgKmFwcF9kYXRhOwotKyAgICAvKiBJbXBsZW1lbnRh dGlvbiBzcGVjaWZpYyBzdHJ1Y3R1cmVzICovCi0rICAgIHVuaW9uIHsKLSsgICAgICAgIERSQkdf SEFTSF9DVFggaGFzaDsKLSsgICAgICAgIERSQkdfSE1BQ19DVFggaG1hYzsKLSsgICAgICAgIERS QkdfQ1RSX0NUWCBjdHI7Ci0rICAgIH0gZDsKLSsgICAgLyogSW5pdGlhbGlhc2UgUFJORyBhbmQg c2V0dXAgY2FsbGJhY2tzIGJlbG93ICovCi0rICAgIGludCAoKmluaXQpIChEUkJHX0NUWCAqY3R4 LCBpbnQgbmlkLCBpbnQgc2VjdXJpdHksIHVuc2lnbmVkIGludCBmbGFncyk7Ci0rICAgIC8qIElu dGFudGlhdGUgUFJORyAqLwotKyAgICBpbnQgKCppbnN0YW50aWF0ZSkgKERSQkdfQ1RYICpjdHgs Ci0rICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqZW50LCBzaXpl X3QgZW50bGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIg Km5vbmNlLCBzaXplX3Qgbm9uY2VsZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qg dW5zaWduZWQgY2hhciAqcGVycywgc2l6ZV90IHBlcnNsZW4pOwotKyAgICAvKiByZXNlZWQgKi8K LSsgICAgaW50ICgqcmVzZWVkKSAoRFJCR19DVFggKmN0eCwKLSsgICAgICAgICAgICAgICAgICAg Y29uc3QgdW5zaWduZWQgY2hhciAqZW50LCBzaXplX3QgZW50bGVuLAotKyAgICAgICAgICAgICAg ICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICphZGluLCBzaXplX3QgYWRpbmxlbik7Ci0rICAgIC8q IGdlbmVyYXQgb3V0cHV0ICovCi0rICAgIGludCAoKmdlbmVyYXRlKSAoRFJCR19DVFggKmN0eCwK LSsgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpvdXQsIHNpemVfdCBvdXRsZW4s Ci0rICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWRpbiwgc2l6ZV90 IGFkaW5sZW4pOwotKyAgICAvKiB1bmluc3RhbnRpYXRlICovCi0rICAgIGludCAoKnVuaW5zdGFu dGlhdGUpIChEUkJHX0NUWCAqY3R4KTsKLSsKLSsgICAgLyogRW50cm9weSBzb3VyY2UgYmxvY2sg bGVuZ3RoICovCi0rICAgIHNpemVfdCBlbnRyb3B5X2Jsb2NrbGVuOwotKwotKyAgICAvKiBlbnRy b3B5IGdhdGhlcmluZyBmdW5jdGlvbiAqLwotKyAgICBzaXplX3QgKCpnZXRfZW50cm9weSkgKERS QkdfQ1RYICpjdHgsIHVuc2lnbmVkIGNoYXIgKipwb3V0LAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgIGludCBlbnRyb3B5LCBzaXplX3QgbWluX2xlbiwgc2l6ZV90IG1heF9sZW4pOwotKyAg ICAvKiBJbmRpY2F0ZXMgd2UgaGF2ZSBmaW5pc2hlZCB3aXRoIGVudHJvcHkgYnVmZmVyICovCi0r ICAgIHZvaWQgKCpjbGVhbnVwX2VudHJvcHkpIChEUkJHX0NUWCAqY3R4LCB1bnNpZ25lZCBjaGFy ICpvdXQsIHNpemVfdCBvbGVuKTsKLSsKLSsgICAgLyogbm9uY2UgZ2F0aGVyaW5nIGZ1bmN0aW9u ICovCi0rICAgIHNpemVfdCAoKmdldF9ub25jZSkgKERSQkdfQ1RYICpjdHgsIHVuc2lnbmVkIGNo YXIgKipwb3V0LAotKyAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgZW50cm9weSwgc2l6ZV90 IG1pbl9sZW4sIHNpemVfdCBtYXhfbGVuKTsKLSsgICAgLyogSW5kaWNhdGVzIHdlIGhhdmUgZmlu aXNoZWQgd2l0aCBub25jZSBidWZmZXIgKi8KLSsgICAgdm9pZCAoKmNsZWFudXBfbm9uY2UpIChE UkJHX0NUWCAqY3R4LCB1bnNpZ25lZCBjaGFyICpvdXQsIHNpemVfdCBvbGVuKTsKLSsKLSsgICAg LyogQ2FsbGJhY2tzIHVzZWQgd2hlbiBjYWxsZWQgdGhyb3VnaCBSQU5EIGludGVyZmFjZSAqLwot KyAgICAvKiBHZXQgYW55IGFkZGl0aW9uYWwgaW5wdXQgZm9yIGdlbmVyYXRlICovCi0rICAgIHNp emVfdCAoKmdldF9hZGluKSAoRFJCR19DVFggKmN0eCwgdW5zaWduZWQgY2hhciAqKnBvdXQpOwot KyAgICB2b2lkICgqY2xlYW51cF9hZGluKSAoRFJCR19DVFggKmN0eCwgdW5zaWduZWQgY2hhciAq b3V0LCBzaXplX3Qgb2xlbik7Ci0rICAgIC8qIENhbGxiYWNrIGZvciBSQU5EX3NlZWQoKSwgUkFO RF9hZGQoKSAqLwotKyAgICBpbnQgKCpyYW5kX3NlZWRfY2IpIChEUkJHX0NUWCAqY3R4LCBjb25z dCB2b2lkICpidWYsIGludCBudW0pOwotKyAgICBpbnQgKCpyYW5kX2FkZF9jYikgKERSQkdfQ1RY ICpjdHgsCi0rICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdm9pZCAqYnVmLCBpbnQgbnVt LCBkb3VibGUgZW50cm9weSk7Ci0rfTsKLSsKLStpbnQgZmlwc19kcmJnX2N0cl9pbml0KERSQkdf Q1RYICpkY3R4KTsKLStpbnQgZmlwc19kcmJnX2hhc2hfaW5pdChEUkJHX0NUWCAqZGN0eCk7Ci0r aW50IGZpcHNfZHJiZ19obWFjX2luaXQoRFJCR19DVFggKmRjdHgpOwotK2ludCBmaXBzX2RyYmdf a2F0KERSQkdfQ1RYICpkY3R4LCBpbnQgbmlkLCB1bnNpZ25lZCBpbnQgZmxhZ3MpOwotK2ludCBm aXBzX2RyYmdfY3BybmdfdGVzdChEUkJHX0NUWCAqZGN0eCwgY29uc3QgdW5zaWduZWQgY2hhciAq b3V0KTsKLSsKLSsjZGVmaW5lIEZJUFNfZGlnZXN0aW5pdCBFVlBfRGlnZXN0SW5pdAotKyNkZWZp bmUgRklQU19kaWdlc3R1cGRhdGUgRVZQX0RpZ2VzdFVwZGF0ZQotKyNkZWZpbmUgRklQU19kaWdl c3RmaW5hbCBFVlBfRGlnZXN0RmluYWwKLSsjZGVmaW5lIE1fRVZQX01EX3NpemUgRVZQX01EX3Np emUKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfcmFuZF9saWIuYy5m aXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfcmFuZF9saWIuYwotLS0tIG9wZW5z c2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfcmFuZF9saWIuYy5maXBzCTIwMjEtMDMtMDMgMTI6 NTc6NDIuMjAxNzM0NTQyICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlw c19yYW5kX2xpYi5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAxNzM0NTQyICswMTAwCi1AQCAtMCww ICsxLDIzNCBAQAotKy8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0rICogQ29weXJpZ2h0IChjKSAyMDExIFRoZSBP cGVuU1NMIFByb2plY3QuICBBbGwgcmlnaHRzIHJlc2VydmVkLgotKyAqCi0rICogUmVkaXN0cmli dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0 Ci0rICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv d2luZyBjb25kaXRpb25zCi0rICogYXJlIG1ldDoKLSsgKgotKyAqIDEuIFJlZGlzdHJpYnV0aW9u cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0rICogICAg bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp bWVyLiAKLSsgKgotKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl cHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0rICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluCi0rICogICAgdGhlIGRv Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQotKyAq ICAgIGRpc3RyaWJ1dGlvbi4KLSsgKgotKyAqIDMuIEFsbCBhZHZlcnRpc2luZyBtYXRlcmlhbHMg bWVudGlvbmluZyBmZWF0dXJlcyBvciB1c2Ugb2YgdGhpcwotKyAqICAgIHNvZnR3YXJlIG11c3Qg ZGlzcGxheSB0aGUgZm9sbG93aW5nIGFja25vd2xlZGdtZW50OgotKyAqICAgICJUaGlzIHByb2R1 Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxvcGVkIGJ5IHRoZSBPcGVuU1NMIFByb2plY3QKLSsg KiAgICBmb3IgdXNlIGluIHRoZSBPcGVuU1NMIFRvb2xraXQuIChodHRwOi8vd3d3Lm9wZW5zc2wu b3JnLykiCi0rICoKLSsgKiA0LiBUaGUgbmFtZXMgIk9wZW5TU0wgVG9vbGtpdCIgYW5kICJPcGVu U1NMIFByb2plY3QiIG11c3Qgbm90IGJlIHVzZWQgdG8KLSsgKiAgICBlbmRvcnNlIG9yIHByb21v dGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgd2l0aG91dAotKyAqICAgIHBy aW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gRm9yIHdyaXR0ZW4gcGVybWlzc2lvbiwgcGxlYXNlIGNv bnRhY3QKLSsgKiAgICBvcGVuc3NsLWNvcmVAb3BlbnNzbC5vcmcuCi0rICoKLSsgKiA1LiBQcm9k dWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSBtYXkgbm90IGJlIGNhbGxlZCAiT3BlblNT TCIKLSsgKiAgICBub3IgbWF5ICJPcGVuU1NMIiBhcHBlYXIgaW4gdGhlaXIgbmFtZXMgd2l0aG91 dCBwcmlvciB3cml0dGVuCi0rICogICAgcGVybWlzc2lvbiBvZiB0aGUgT3BlblNTTCBQcm9qZWN0 LgotKyAqCi0rICogNi4gUmVkaXN0cmlidXRpb25zIG9mIGFueSBmb3JtIHdoYXRzb2V2ZXIgbXVz dCByZXRhaW4gdGhlIGZvbGxvd2luZwotKyAqICAgIGFja25vd2xlZGdtZW50OgotKyAqICAgICJU aGlzIHByb2R1Y3QgaW5jbHVkZXMgc29mdHdhcmUgZGV2ZWxvcGVkIGJ5IHRoZSBPcGVuU1NMIFBy b2plY3QKLSsgKiAgICBmb3IgdXNlIGluIHRoZSBPcGVuU1NMIFRvb2xraXQgKGh0dHA6Ly93d3cu b3BlbnNzbC5vcmcvKSIKLSsgKgotKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhF IE9wZW5TU0wgUFJPSkVDVCBgYEFTIElTJycgQU5EIEFOWQotKyAqIEVYUFJFU1NFRCBPUiBJTVBM SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSsgKiBJ TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB UlRJQ1VMQVIKLSsgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwg VEhFIE9wZW5TU0wgUFJPSkVDVCBPUgotKyAqIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKLSsgKiBTUEVDSUFMLCBFWEVNUExB UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQKLSsgKiBOT1QgTElN SVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSsg KiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O KQotKyAqIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hF VEhFUiBJTiBDT05UUkFDVCwKLSsgKiBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCi0rICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRAotKyAqIE9GIFRIRSBQ T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSsgKgotKyAqLwotKwotKy8qIElmIHdlIGRvbid0 IGRlZmluZSBfWE9QRU5fU09VUkNFX0VYVEVOREVELCBzdHJ1Y3QgdGltZXZhbCB3b24ndAotKyAg IGJlIGRlZmluZWQgYW5kIGdldHRpbWVvZmRheSgpIHdvbid0IGJlIGRlY2xhcmVkIHdpdGggc3Ry aWN0IGNvbXBpbGVycwotKyAgIGxpa2UgREVDIEMgaW4gQU5TSSBDIG1vZGUuICAqLwotKyNpZm5k ZWYgX1hPUEVOX1NPVVJDRV9FWFRFTkRFRAotKyMgZGVmaW5lIF9YT1BFTl9TT1VSQ0VfRVhURU5E RUQgMQotKyNlbmRpZgotKwotKyNpbmNsdWRlIDxvcGVuc3NsL2NyeXB0by5oPgotKyNpbmNsdWRl IDxvcGVuc3NsL3JhbmQuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9lcnIuaD4KLSsjaW5jbHVkZSA8 b3BlbnNzbC9maXBzLmg+Ci0rI2luY2x1ZGUgImNyeXB0by9maXBzLmgiCi0rI2luY2x1ZGUgPG9w ZW5zc2wvZmlwc19yYW5kLmg+Ci0rI2luY2x1ZGUgImVfb3MuaCIKLSsKLSsjaWYgIShkZWZpbmVk KE9QRU5TU0xfU1lTX1dJTjMyKSB8fCBkZWZpbmVkKE9QRU5TU0xfU1lTX1ZYV09SS1MpKQotKyMg aW5jbHVkZSA8c3lzL3RpbWUuaD4KLSsjZW5kaWYKLSsjaWYgZGVmaW5lZChPUEVOU1NMX1NZU19W WFdPUktTKQotKyMgaW5jbHVkZSA8dGltZS5oPgotKyNlbmRpZgotKyNpZm5kZWYgT1BFTlNTTF9T WVNfV0lOMzIKLSsjIGlmZGVmIE9QRU5TU0xfVU5JU1RECi0rIyAgaW5jbHVkZSBPUEVOU1NMX1VO SVNURAotKyMgZWxzZQotKyMgIGluY2x1ZGUgPHVuaXN0ZC5oPgotKyMgZW5kaWYKLSsjZW5kaWYK LSsKLSsvKiBGSVBTIEFQSSBmb3IgUFJORyB1c2UuIFNpbWlsYXIgdG8gUkFORCBmdW5jdGlvbmFs aXR5IGJ1dCB3aXRob3V0Ci0rICogRU5HSU5FIGFuZCBhZGRpdGlvbmFsIGNoZWNraW5nIGZvciBu b24tRklQUyByYW5kIG1ldGhvZHMuCi0rICovCi0rCi0rc3RhdGljIGNvbnN0IFJBTkRfTUVUSE9E ICpmaXBzX3JhbmRfbWV0aCA9IE5VTEw7Ci0rc3RhdGljIGludCBmaXBzX2FwcHJvdmVkX3JhbmRf bWV0aCA9IDA7Ci0rc3RhdGljIGludCBmaXBzX3JhbmRfYml0cyA9IDA7Ci0rCi0rLyogQWxsb3dz IGFwcGxpY2F0aW9uIHRvIG92ZXJyaWRlIG51bWJlciBvZiBiaXRzIGFuZCB1c2VzIG5vbi1GSVBT IG1ldGhvZHMgKi8KLSt2b2lkIEZJUFNfcmFuZF9zZXRfYml0cyhpbnQgbmJpdHMpCi0rewotKyAg ICBmaXBzX3JhbmRfYml0cyA9IG5iaXRzOwotK30KLSsKLStpbnQgRklQU19yYW5kX3NldF9tZXRo b2QoY29uc3QgUkFORF9NRVRIT0QgKm1ldGgpCi0rewotKyAgICBpZiAoIWZpcHNfcmFuZF9iaXRz KSB7Ci0rICAgICAgICBpZiAobWV0aCA9PSBGSVBTX2RyYmdfbWV0aG9kKCkpCi0rICAgICAgICAg ICAgZmlwc19hcHByb3ZlZF9yYW5kX21ldGggPSAxOwotKyAgICAgICAgZWxzZSB7Ci0rICAgICAg ICAgICAgZmlwc19hcHByb3ZlZF9yYW5kX21ldGggPSAwOwotKyAgICAgICAgICAgIGlmIChGSVBT X21vZHVsZV9tb2RlKCkpIHsKLSsgICAgICAgICAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19S QU5EX1NFVF9NRVRIT0QsIEZJUFNfUl9OT05fRklQU19NRVRIT0QpOwotKyAgICAgICAgICAgICAg ICByZXR1cm4gMDsKLSsgICAgICAgICAgICB9Ci0rICAgICAgICB9Ci0rICAgIH0KLSsgICAgZmlw c19yYW5kX21ldGggPSBtZXRoOwotKyAgICByZXR1cm4gMTsKLSt9Ci0rCi0rY29uc3QgUkFORF9N RVRIT0QgKkZJUFNfcmFuZF9nZXRfbWV0aG9kKHZvaWQpCi0rewotKyAgICByZXR1cm4gZmlwc19y YW5kX21ldGg7Ci0rfQotKwotK3ZvaWQgRklQU19yYW5kX3Jlc2V0KHZvaWQpCi0rewotKyAgICBp ZiAoZmlwc19yYW5kX21ldGggJiYgZmlwc19yYW5kX21ldGgtPmNsZWFudXApCi0rICAgICAgICBm aXBzX3JhbmRfbWV0aC0+Y2xlYW51cCgpOwotK30KLSsKLStpbnQgRklQU19yYW5kX3NlZWQoY29u c3Qgdm9pZCAqYnVmLCBpbnQgbnVtKQotK3sKLSsgICAgaWYgKCFmaXBzX2FwcHJvdmVkX3JhbmRf bWV0aCAmJiBGSVBTX21vZHVsZV9tb2RlKCkpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJ UFNfUkFORF9TRUVELCBGSVBTX1JfTk9OX0ZJUFNfTUVUSE9EKTsKLSsgICAgICAgIHJldHVybiAw OwotKyAgICB9Ci0rICAgIGlmIChmaXBzX3JhbmRfbWV0aCAmJiBmaXBzX3JhbmRfbWV0aC0+c2Vl ZCkKLSsgICAgICAgIGZpcHNfcmFuZF9tZXRoLT5zZWVkKGJ1ZiwgbnVtKTsKLSsgICAgcmV0dXJu IDE7Ci0rfQotKwotK2ludCBGSVBTX3JhbmRfYnl0ZXModW5zaWduZWQgY2hhciAqYnVmLCBpbnQg bnVtKQotK3sKLSsgICAgaWYgKCFmaXBzX2FwcHJvdmVkX3JhbmRfbWV0aCAmJiBGSVBTX21vZHVs ZV9tb2RlKCkpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfUkFORF9CWVRFUywgRklQ U19SX05PTl9GSVBTX01FVEhPRCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKyAgICBp ZiAoZmlwc19yYW5kX21ldGggJiYgZmlwc19yYW5kX21ldGgtPmJ5dGVzKQotKyAgICAgICAgcmV0 dXJuIGZpcHNfcmFuZF9tZXRoLT5ieXRlcyhidWYsIG51bSk7Ci0rICAgIHJldHVybiAwOwotK30K LSsKLStpbnQgRklQU19yYW5kX3N0YXR1cyh2b2lkKQotK3sKLSsgICAgaWYgKCFmaXBzX2FwcHJv dmVkX3JhbmRfbWV0aCAmJiBGSVBTX21vZHVsZV9tb2RlKCkpIHsKLSsgICAgICAgIEZJUFNlcnIo RklQU19GX0ZJUFNfUkFORF9TVEFUVVMsIEZJUFNfUl9OT05fRklQU19NRVRIT0QpOwotKyAgICAg ICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsgICAgaWYgKGZpcHNfcmFuZF9tZXRoICYmIGZpcHNfcmFu ZF9tZXRoLT5zdGF0dXMpCi0rICAgICAgICByZXR1cm4gZmlwc19yYW5kX21ldGgtPnN0YXR1cygp OwotKyAgICByZXR1cm4gMDsKLSt9Ci0rCi0rLyogUmV0dXJuIGluc3RhbnRpYXRlZCBzdHJlbmd0 aCBvZiBQUk5HLiBGb3IgRFJCRyB0aGlzIGlzIGFuIGludGVybmFsCi0rICogcGFyYW1ldGVyLiBB bnkgb3RoZXIgdHlwZSBvZiBQUk5HIGlzIG5vdCBhcHByb3ZlZCBhbmQgcmV0dXJucyAwIGluCi0r ICogRklQUyBtb2RlIGFuZCBtYXhpbXVtIDI1NiBvdXRzaWRlIEZJUFMgbW9kZS4KLSsgKi8KLSsK LStpbnQgRklQU19yYW5kX3N0cmVuZ3RoKHZvaWQpCi0rewotKyAgICBpZiAoZmlwc19yYW5kX2Jp dHMpCi0rICAgICAgICByZXR1cm4gZmlwc19yYW5kX2JpdHM7Ci0rICAgIGlmIChmaXBzX2FwcHJv dmVkX3JhbmRfbWV0aCA9PSAxKQotKyAgICAgICAgcmV0dXJuIEZJUFNfZHJiZ19nZXRfc3RyZW5n dGgoRklQU19nZXRfZGVmYXVsdF9kcmJnKCkpOwotKyAgICBlbHNlIGlmIChmaXBzX2FwcHJvdmVk X3JhbmRfbWV0aCA9PSAwKSB7Ci0rICAgICAgICBpZiAoRklQU19tb2R1bGVfbW9kZSgpKQotKyAg ICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgZWxzZQotKyAgICAgICAgICAgIHJldHVybiAy NTY7Ci0rICAgIH0KLSsgICAgcmV0dXJuIDA7Ci0rfQotKwotK3ZvaWQgRklQU19nZXRfdGltZXZl Yyh1bnNpZ25lZCBjaGFyICpidWYsIHVuc2lnbmVkIGxvbmcgKnBjdHIpCi0rewotKyMgaWZkZWYg T1BFTlNTTF9TWVNfV0lOMzIKLSsgICAgRklMRVRJTUUgZnQ7Ci0rIyBlbGlmIGRlZmluZWQoT1BF TlNTTF9TWVNfVlhXT1JLUykKLSsgICAgc3RydWN0IHRpbWVzcGVjIHRzOwotKyMgZWxzZQotKyAg ICBzdHJ1Y3QgdGltZXZhbCB0djsKLSsjIGVuZGlmCi0rCi0rIyBpZm5kZWYgR0VUUElEX0lTX01F QU5JTkdMRVNTCi0rICAgIHVuc2lnbmVkIGxvbmcgcGlkOwotKyMgZW5kaWYKLSsKLSsjIGlmZGVm IE9QRU5TU0xfU1lTX1dJTjMyCi0rICAgIEdldFN5c3RlbVRpbWVBc0ZpbGVUaW1lKCZmdCk7Ci0r ICAgIGJ1ZlswXSA9ICh1bnNpZ25lZCBjaGFyKShmdC5kd0hpZ2hEYXRlVGltZSAmIDB4ZmYpOwot KyAgICBidWZbMV0gPSAodW5zaWduZWQgY2hhcikoKGZ0LmR3SGlnaERhdGVUaW1lID4+IDgpICYg MHhmZik7Ci0rICAgIGJ1ZlsyXSA9ICh1bnNpZ25lZCBjaGFyKSgoZnQuZHdIaWdoRGF0ZVRpbWUg Pj4gMTYpICYgMHhmZik7Ci0rICAgIGJ1ZlszXSA9ICh1bnNpZ25lZCBjaGFyKSgoZnQuZHdIaWdo RGF0ZVRpbWUgPj4gMjQpICYgMHhmZik7Ci0rICAgIGJ1Zls0XSA9ICh1bnNpZ25lZCBjaGFyKShm dC5kd0xvd0RhdGVUaW1lICYgMHhmZik7Ci0rICAgIGJ1Zls1XSA9ICh1bnNpZ25lZCBjaGFyKSgo ZnQuZHdMb3dEYXRlVGltZSA+PiA4KSAmIDB4ZmYpOwotKyAgICBidWZbNl0gPSAodW5zaWduZWQg Y2hhcikoKGZ0LmR3TG93RGF0ZVRpbWUgPj4gMTYpICYgMHhmZik7Ci0rICAgIGJ1Zls3XSA9ICh1 bnNpZ25lZCBjaGFyKSgoZnQuZHdMb3dEYXRlVGltZSA+PiAyNCkgJiAweGZmKTsKLSsjIGVsaWYg ZGVmaW5lZChPUEVOU1NMX1NZU19WWFdPUktTKQotKyAgICBjbG9ja19nZXR0aW1lKENMT0NLX1JF QUxUSU1FLCAmdHMpOwotKyAgICBidWZbMF0gPSAodW5zaWduZWQgY2hhcikodHMudHZfc2VjICYg MHhmZik7Ci0rICAgIGJ1ZlsxXSA9ICh1bnNpZ25lZCBjaGFyKSgodHMudHZfc2VjID4+IDgpICYg MHhmZik7Ci0rICAgIGJ1ZlsyXSA9ICh1bnNpZ25lZCBjaGFyKSgodHMudHZfc2VjID4+IDE2KSAm IDB4ZmYpOwotKyAgICBidWZbM10gPSAodW5zaWduZWQgY2hhcikoKHRzLnR2X3NlYyA+PiAyNCkg JiAweGZmKTsKLSsgICAgYnVmWzRdID0gKHVuc2lnbmVkIGNoYXIpKHRzLnR2X25zZWMgJiAweGZm KTsKLSsgICAgYnVmWzVdID0gKHVuc2lnbmVkIGNoYXIpKCh0cy50dl9uc2VjID4+IDgpICYgMHhm Zik7Ci0rICAgIGJ1Zls2XSA9ICh1bnNpZ25lZCBjaGFyKSgodHMudHZfbnNlYyA+PiAxNikgJiAw eGZmKTsKLSsgICAgYnVmWzddID0gKHVuc2lnbmVkIGNoYXIpKCh0cy50dl9uc2VjID4+IDI0KSAm IDB4ZmYpOwotKyMgZWxzZQotKyAgICBnZXR0aW1lb2ZkYXkoJnR2LCBOVUxMKTsKLSsgICAgYnVm WzBdID0gKHVuc2lnbmVkIGNoYXIpKHR2LnR2X3NlYyAmIDB4ZmYpOwotKyAgICBidWZbMV0gPSAo dW5zaWduZWQgY2hhcikoKHR2LnR2X3NlYyA+PiA4KSAmIDB4ZmYpOwotKyAgICBidWZbMl0gPSAo dW5zaWduZWQgY2hhcikoKHR2LnR2X3NlYyA+PiAxNikgJiAweGZmKTsKLSsgICAgYnVmWzNdID0g KHVuc2lnbmVkIGNoYXIpKCh0di50dl9zZWMgPj4gMjQpICYgMHhmZik7Ci0rICAgIGJ1Zls0XSA9 ICh1bnNpZ25lZCBjaGFyKSh0di50dl91c2VjICYgMHhmZik7Ci0rICAgIGJ1Zls1XSA9ICh1bnNp Z25lZCBjaGFyKSgodHYudHZfdXNlYyA+PiA4KSAmIDB4ZmYpOwotKyAgICBidWZbNl0gPSAodW5z aWduZWQgY2hhcikoKHR2LnR2X3VzZWMgPj4gMTYpICYgMHhmZik7Ci0rICAgIGJ1Zls3XSA9ICh1 bnNpZ25lZCBjaGFyKSgodHYudHZfdXNlYyA+PiAyNCkgJiAweGZmKTsKLSsjIGVuZGlmCi0rICAg IGJ1Zls4XSA9ICh1bnNpZ25lZCBjaGFyKSgqcGN0ciAmIDB4ZmYpOwotKyAgICBidWZbOV0gPSAo dW5zaWduZWQgY2hhcikoKCpwY3RyID4+IDgpICYgMHhmZik7Ci0rICAgIGJ1ZlsxMF0gPSAodW5z aWduZWQgY2hhcikoKCpwY3RyID4+IDE2KSAmIDB4ZmYpOwotKyAgICBidWZbMTFdID0gKHVuc2ln bmVkIGNoYXIpKCgqcGN0ciA+PiAyNCkgJiAweGZmKTsKLSsKLSsgICAgKCpwY3RyKSsrOwotKwot KyMgaWZuZGVmIEdFVFBJRF9JU19NRUFOSU5HTEVTUwotKyAgICBwaWQgPSAodW5zaWduZWQgbG9u ZylnZXRwaWQoKTsKLSsgICAgYnVmWzEyXSA9ICh1bnNpZ25lZCBjaGFyKShwaWQgJiAweGZmKTsK LSsgICAgYnVmWzEzXSA9ICh1bnNpZ25lZCBjaGFyKSgocGlkID4+IDgpICYgMHhmZik7Ci0rICAg IGJ1ZlsxNF0gPSAodW5zaWduZWQgY2hhcikoKHBpZCA+PiAxNikgJiAweGZmKTsKLSsgICAgYnVm WzE1XSA9ICh1bnNpZ25lZCBjaGFyKSgocGlkID4+IDI0KSAmIDB4ZmYpOwotKyMgZW5kaWYKLSt9 Ci0rCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX3JzYV9zZWxmdGVz dC5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19yc2Ffc2VsZnRlc3QuYwot LS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfcnNhX3NlbGZ0ZXN0LmMuZmlwcwky MDIxLTAzLTAzIDEyOjU3OjQyLjIwMTczNDU0MiArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2Ny eXB0by9maXBzL2ZpcHNfcnNhX3NlbGZ0ZXN0LmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4yMDE3MzQ1 NDIgKzAxMDAKLUBAIC0wLDAgKzEsMzM4IEBACi0rLyogPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSsgKiBDb3B5cmln aHQgKGMpIDIwMDMtMjAwNyBUaGUgT3BlblNTTCBQcm9qZWN0LiAgQWxsIHJpZ2h0cyByZXNlcnZl ZC4KLSsgKgotKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg Zm9ybXMsIHdpdGggb3Igd2l0aG91dAotKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotKyAqIGFyZSBtZXQ6Ci0rICoK LSsgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFi b3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4gCi0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAg IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh aW1lciBpbgotKyAqICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg cHJvdmlkZWQgd2l0aCB0aGUKLSsgKiAgICBkaXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBBbGwg YWR2ZXJ0aXNpbmcgbWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMK LSsgKiAgICBzb2Z0d2FyZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnbWVu dDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0 aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0 LiAoaHR0cDovL3d3dy5vcGVuc3NsLm9yZy8pIgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJPcGVu U1NMIFRvb2xraXQiIGFuZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRvCi0r ICogICAgZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3 YXJlIHdpdGhvdXQKLSsgKiAgICBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0dGVu IHBlcm1pc3Npb24sIHBsZWFzZSBjb250YWN0Ci0rICogICAgb3BlbnNzbC1jb3JlQG9wZW5zc2wu b3JnLgotKyAqCi0rICogNS4gUHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgbWF5 IG5vdCBiZSBjYWxsZWQgIk9wZW5TU0wiCi0rICogICAgbm9yIG1heSAiT3BlblNTTCIgYXBwZWFy IGluIHRoZWlyIG5hbWVzIHdpdGhvdXQgcHJpb3Igd3JpdHRlbgotKyAqICAgIHBlcm1pc3Npb24g b2YgdGhlIE9wZW5TU0wgUHJvamVjdC4KLSsgKgotKyAqIDYuIFJlZGlzdHJpYnV0aW9ucyBvZiBh bnkgZm9ybSB3aGF0c29ldmVyIG11c3QgcmV0YWluIHRoZSBmb2xsb3dpbmcKLSsgKiAgICBhY2tu b3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVs b3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNT TCBUb29sa2l0IChodHRwOi8vd3d3Lm9wZW5zc2wub3JnLykiCi0rICoKLSsgKiBUSElTIFNPRlRX QVJFIElTIFBST1ZJREVEIEJZIFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycnIEFORCBBTlkK LSsgKiBFWFBSRVNTRUQgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg TElNSVRFRCBUTywgVEhFCi0rICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0rICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F RC4gIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBPcGVuU1NMIFBST0pFQ1QgT1IKLSsgKiBJVFMgQ09O VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws Ci0rICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV RElORywgQlVUCi0rICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUg R09PRFMgT1IgU0VSVklDRVM7Ci0rICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9S IEJVU0lORVNTIElOVEVSUlVQVElPTikKLSsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0rICogU1RSSUNUIExJQUJJ TElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotKyAqIEFS SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG IEFEVklTRUQKLSsgKiBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0rICoKLSsg Ki8KLSsKLSsjaW5jbHVkZSA8c3RyaW5nLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZXJyLmg+Ci0r I2lmZGVmIE9QRU5TU0xfRklQUwotKyMgaW5jbHVkZSA8b3BlbnNzbC9maXBzLmg+Ci0rIyBpbmNs dWRlICJjcnlwdG8vZmlwcy5oIgotKyNlbmRpZgotKyNpbmNsdWRlIDxvcGVuc3NsL3JzYS5oPgot KyNpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2JuLmg+Ci0rI2lu Y2x1ZGUgPG9wZW5zc2wvb3BlbnNzbGNvbmYuaD4KLSsjaW5jbHVkZSAiZmlwc19sb2NsLmgiCi0r Ci0rI2lmZGVmIE9QRU5TU0xfRklQUwotKwotK3N0YXRpYyBpbnQgc2V0cnNha2V5KFJTQSAqa2V5 KQotK3sKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIga2V5ZGF0YV9uW10gPSB7Ci0r ICAgICAgICAweDAwLCAweGM5LCAweGQ1LCAweDZkLCAweDlkLCAweDkwLCAweGRiLCAweDQzLCAw eGQ2LCAweDAyLCAweGVkLCAweDk2LCAweDg4LCAweDEzLCAweDhhLAotKyAgICAgICAgMHhiMiwg MHhiZiwgMHg2ZSwgMHhhMSwgMHgwNiwgMHgxMCwgMHhiMiwgMHg3OCwgMHgzNywgMHhhNywgMHgx NCwgMHhhOCwgMHhmZiwgMHhkZCwgMHgwMCwKLSsgICAgICAgIDB4ZGQsIDB4YjQsIDB4OTMsIDB4 YTAsIDB4NDUsIDB4Y2MsIDB4OTYsIDB4OTAsIDB4ZWQsIDB4YWQsIDB4YTksIDB4ZGQsIDB4YzQs IDB4ZDYsIDB4Y2EsCi0rICAgICAgICAweDBjLCAweGYwLCAweGVkLCAweDRmLCAweDcyLCAweDVl LCAweDIxLCAweDQ5LCAweDlhLCAweDE4LCAweDEyLCAweDE1LCAweDhmLCAweDkwLCAweDVhLAot KyAgICAgICAgMHhkYiwgMHhiNiwgMHgzMywgMHg5OSwgMHhhMywgMHhlNiwgMHhiNCwgMHhmMCwg MHhjNCwgMHg5NywgMHgyMSwgMHgyNiwgMHhiYiwgMHhlMywgMHhiYSwKLSsgICAgICAgIDB4ZjIs IDB4ZmYsIDB4YTAsIDB4NzIsIDB4ZGEsIDB4ODksIDB4NjMsIDB4OGUsIDB4OGIsIDB4M2UsIDB4 MDgsIDB4OWQsIDB4OTIsIDB4MmEsIDB4YmUsCi0rICAgICAgICAweDE2LCAweGUxLCAweDQzLCAw eDE1LCAweGZjLCAweDU3LCAweGM3LCAweDFmLCAweDA5LCAweDExLCAweDY3LCAweDFjLCAweGE5 LCAweDk2LCAweGQxLAotKyAgICAgICAgMHg4YiwgMHgzZSwgMHg4MCwgMHg5MywgMHhjMSwgMHg1 OSwgMHhkMCwgMHg2ZCwgMHgzOSwgMHhmMiwgMHhhYywgMHg5NSwgMHhjYywgMHgxMCwgMHg3NSwK LSsgICAgICAgIDB4ZTksIDB4MzEsIDB4MjQsIDB4ZDEsIDB4NDMsIDB4YWYsIDB4NjgsIDB4NTIs IDB4NGIsIDB4ZTcsIDB4MTYsIDB4ZDcsIDB4NDksIDB4NjUsIDB4NmYsCi0rICAgICAgICAweDI2 LCAweGMwLCAweDg2LCAweGFkLCAweGMwLCAweDA3LCAweDBhLCAweGMxLCAweGUxLCAweDJmLCAw eDg3LCAweDg1LCAweDg2LCAweDNiLCAweGRjLAotKyAgICAgICAgMHg1YSwgMHg5OSwgMHhiZSwg MHhlOSwgMHhmOSwgMHhiOSwgMHhlOSwgMHg4MiwgMHgyNywgMHg1MSwgMHgwNCwgMHgxNSwgMHhh YiwgMHgwNiwgMHgwZSwKLSsgICAgICAgIDB4NzYsIDB4NWEsIDB4MjgsIDB4OGQsIDB4OTIsIDB4 YmQsIDB4YzUsIDB4YjUsIDB4N2IsIDB4YTgsIDB4ZGYsIDB4NGUsIDB4NDcsIDB4YTIsIDB4YzEs Ci0rICAgICAgICAweGU3LCAweDUyLCAweGJmLCAweDQ3LCAweGY3LCAweDYyLCAweGUwLCAweDNh LCAweDZmLCAweDRkLCAweDZhLCAweDRkLCAweDRlLCAweGQ0LCAweGI5LAotKyAgICAgICAgMHg1 OSwgMHg2OSwgMHhmYSwgMHhiMiwgMHgxNCwgMHhjMSwgMHhlZSwgMHhlNiwgMHgyZiwgMHg5NSwg MHhjZCwgMHg5NCwgMHg3MiwgMHhhZSwgMHhlNCwKLSsgICAgICAgIDB4ZGIsIDB4MTgsIDB4OWEs IDB4YzQsIDB4Y2QsIDB4NzAsIDB4YmQsIDB4ZWUsIDB4MzEsIDB4MTYsIDB4YjcsIDB4NDksIDB4 NjUsIDB4YWMsIDB4NDAsCi0rICAgICAgICAweDE5LCAweDBlLCAweGI1LCAweDZkLCAweDgzLCAw eGYxLCAweDM2LCAweGJiLCAweDA4LCAweDJmLCAweDJlLCAweDRlLCAweDkyLCAweDYyLCAweGE0 LAotKyAgICAgICAgMHhmZiwgMHg1MCwgMHhkYiwgMHgyMCwgMHg0NSwgMHhhMiwgMHhlYiwgMHgx NiwgMHg3YSwgMHhmMiwgMHhkNSwgMHgyOCwgMHhjMSwgMHhmZCwgMHg0ZSwKLSsgICAgICAgIDB4 MDMsIDB4NzEKLSsgICAgfTsKLSsKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIga2V5 ZGF0YV9lW10gPSB7IDB4MDEsIDB4MDAsIDB4MDEgfTsKLSsKLSsgICAgc3RhdGljIGNvbnN0IHVu c2lnbmVkIGNoYXIga2V5ZGF0YV9kW10gPSB7Ci0rICAgICAgICAweDM2LCAweDI3LCAweDNkLCAw eGIxLCAweGY5LCAweDFiLCAweGRiLCAweGE3LCAweGEwLCAweDQxLCAweDdmLCAweDEyLCAweDIz LCAweGFjLCAweDIzLAotKyAgICAgICAgMHgyOSwgMHg5OSwgMHhkNSwgMHgzYSwgMHg3YiwgMHg2 MCwgMHg2NywgMHg0MSwgMHgwNywgMHg2MywgMHg1MywgMHhiNCwgMHhkMiwgMHhlNywgMHg1OCwK LSsgICAgICAgIDB4OTUsIDB4MGEsIDB4YzcsIDB4MDUsIDB4ZjMsIDB4NGUsIDB4YjIsIDB4YjQs IDB4MTIsIDB4ZDQsIDB4NzAsIDB4ZGMsIDB4NGYsIDB4ODUsIDB4MDYsCi0rICAgICAgICAweGQz LCAweGRkLCAweGQ4LCAweDYzLCAweDI3LCAweDNlLCAweDY3LCAweDMxLCAweDIxLCAweDI0LCAw eDM5LCAweDA0LCAweGJjLCAweDA2LCAweGE0LAotKyAgICAgICAgMHhjYywgMHhjZSwgMHgyYiwg MHg3YSwgMHhmZSwgMHg3YiwgMHhhZCwgMHhkZSwgMHgxMSwgMHg2ZSwgMHhhMywgMHhhNSwgMHhl NiwgMHgwNCwgMHg1MywKLSsgICAgICAgIDB4MGUsIDB4YTMsIDB4NGUsIDB4MmQsIDB4YjQsIDB4 OGYsIDB4MzEsIDB4YmYsIDB4Y2EsIDB4NzUsIDB4MjUsIDB4NTIsIDB4MDIsIDB4ODUsIDB4ZGUs Ci0rICAgICAgICAweDNkLCAweGIyLCAweDcyLCAweDQzLCAweGIyLCAweDg5LCAweDhhLCAweDlh LCAweDM0LCAweDQxLCAweDI2LCAweDNmLCAweDlhLCAweDY3LCAweGJlLAotKyAgICAgICAgMHhh NCwgMHg5NiwgMHg3YiwgMHgwZSwgMHg3NSwgMHhiYSwgMHhhNiwgMHg5MywgMHhkNSwgMHhiOCwg MHhkOCwgMHhiOCwgMHg1NywgMHhmMiwgMHg0YiwKLSsgICAgICAgIDB4MGYsIDB4MTQsIDB4ODEs IDB4ZDEsIDB4NTcsIDB4NGUsIDB4ZjYsIDB4NDUsIDB4NGMsIDB4YTYsIDB4M2IsIDB4ZDAsIDB4 NzAsIDB4Y2EsIDB4ZDMsCi0rICAgICAgICAweDlkLCAweDU1LCAweGRlLCAweDIyLCAweDA1LCAw eGU3LCAweDhlLCAweDI4LCAweDRkLCAweGVlLCAweDExLCAweGNmLCAweGI2LCAweDY3LCAweDc2 LAotKyAgICAgICAgMHgwOSwgMHhkMywgMHhlMywgMHgzYywgMHgxMywgMHhmOSwgMHg5OSwgMHgz NCwgMHgxMCwgMHg3YiwgMHhlYywgMHg4MSwgMHgzOCwgMHhmMCwgMHhiNiwKLSsgICAgICAgIDB4 MzQsIDB4OWMsIDB4OWIsIDB4NTAsIDB4NmYsIDB4MGIsIDB4OTEsIDB4ODEsIDB4NGQsIDB4ODks IDB4OTQsIDB4MDQsIDB4N2IsIDB4ZjAsIDB4M2MsCi0rICAgICAgICAweGY0LCAweGIxLCAweGIy LCAweDAwLCAweDQ4LCAweDhkLCAweDVhLCAweDhmLCAweDg4LCAweDllLCAweGM1LCAweGFiLCAw eDNhLCAweDllLCAweDQ0LAotKyAgICAgICAgMHgzZiwgMHg1NCwgMHhlNywgMHhkOSwgMHg2ZSwg MHg0NywgMHhhYSwgMHhhMSwgMHhiZCwgMHg0MCwgMHg0NiwgMHgzMSwgMHhmOSwgMHhmMCwgMHgz NCwKLSsgICAgICAgIDB4YjYsIDB4MDQsIDB4ZTEsIDB4MmIsIDB4NWIsIDB4NzMsIDB4ODYsIDB4 ZGQsIDB4M2EsIDB4OTIsIDB4MWIsIDB4NzEsIDB4YzcsIDB4M2YsIDB4MzIsCi0rICAgICAgICAw eGU1LCAweGMzLCAweGMyLCAweGFiLCAweGExLCAweDdlLCAweGJmLCAweGE0LCAweDUyLCAweGEw LCAweGIwLCAweDY4LCAweDkwLCAweGQxLCAweDIwLAotKyAgICAgICAgMHgxMiwgMHg3OSwgMHhl OSwgMHhkNywgMHhjOSwgMHg0MCwgMHhiYSwgMHhmMiwgMHgxOSwgMHhjNywgMHhhNSwgMHgwMCwg MHg5MiwgMHg4NiwgMHgwZCwKLSsgICAgICAgIDB4MDEKLSsgICAgfTsKLSsKLSsgICAgc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIga2V5ZGF0YV9wW10gPSB7Ci0rICAgICAgICAweDAwLCAweGZj LCAweDVjLCAweDZlLCAweDE2LCAweGNlLCAweDFmLCAweDAzLCAweDdiLCAweGNkLCAweGY3LCAw eGIzLCAweDcyLCAweGIyLCAweDhmLAotKyAgICAgICAgMHgxNiwgMHg3MiwgMHhiOCwgMHg1Niwg MHhhZSwgMHhmNywgMHhjZCwgMHg2NywgMHhkOCwgMHg0ZSwgMHg3ZCwgMHgwNywgMHhhZiwgMHhk NSwgMHg0MywKLSsgICAgICAgIDB4MjYsIDB4YzMsIDB4MzUsIDB4YmUsIDB4NDMsIDB4OGYsIDB4 NGUsIDB4MmYsIDB4MWMsIDB4NDMsIDB4NGUsIDB4NmIsIDB4ZDIsIDB4YjIsIDB4ZWMsCi0rICAg ICAgICAweDUyLCAweDZkLCAweDk3LCAweDUyLCAweDJiLCAweGNjLCAweDVjLCAweDNhLCAweDZi LCAweGY0LCAweDE0LCAweGM2LCAweDc0LCAweGRhLCAweDY2LAotKyAgICAgICAgMHgzOCwgMHgx YywgMHg3YSwgMHgzZiwgMHg4NCwgMHgyZiwgMHhlMywgMHhmOSwgMHg1YSwgMHhiOCwgMHg2NSwg MHg2OSwgMHg0NiwgMHgwNiwgMHhhMywKLSsgICAgICAgIDB4MzcsIDB4NzksIDB4YjIsIDB4YTEs IDB4NWIsIDB4NTgsIDB4ZWQsIDB4NWUsIDB4YTcsIDB4NWYsIDB4OGMsIDB4NjUsIDB4NjYsIDB4 YmIsIDB4ZDEsCi0rICAgICAgICAweDI0LCAweDM2LCAweGU2LCAweDM3LCAweGE3LCAweDNkLCAw eDQ5LCAweDc3LCAweDhhLCAweDhjLCAweDM0LCAweGQ4LCAweDY5LCAweDI5LCAweGYzLAotKyAg ICAgICAgMHg0ZCwgMHg1OCwgMHgyMiwgMHhiMCwgMHg1MSwgMHgyNCwgMHhiNiwgMHg0MCwgMHhh OCwgMHg4NiwgMHg1OSwgMHgwYSwgMHhiNywgMHhiYSwgMHg1YywKLSsgICAgICAgIDB4OTcsIDB4 ZGEsIDB4NTcsIDB4ZTgsIDB4MzYsIDB4ZGEsIDB4N2EsIDB4OWMsIDB4YWQKLSsgICAgfTsKLSsK LSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIga2V5ZGF0YV9xW10gPSB7Ci0rICAgICAg ICAweDAwLCAweGNjLCAweGJlLCAweDdiLCAweDA5LCAweDY5LCAweDA2LCAweGVlLCAweDQ1LCAw eGJmLCAweDg4LCAweDQ3LCAweDM4LCAweGE4LCAweGY4LAotKyAgICAgICAgMHgxNywgMHhlNSwg MHhiNiwgMHhiYSwgMHg2NywgMHg1NSwgMHhlMywgMHhlOCwgMHgwNSwgMHg4YiwgMHhiOCwgMHhl MiwgMHg1MywgMHhkNiwgMHg4ZSwKLSsgICAgICAgIDB4ZWYsIDB4MmMsIDB4ZTcsIDB4NGYsIDB4 NGEsIDB4ZjcsIDB4NGUsIDB4MjYsIDB4OGQsIDB4ODUsIDB4MGIsIDB4M2YsIDB4ZWMsIDB4YzMs IDB4MWMsCi0rICAgICAgICAweGQ0LCAweGViLCAweGVjLCAweDZhLCAweGM4LCAweDcyLCAweDJh LCAweDI1LCAweDdkLCAweGZkLCAweGE2LCAweDc3LCAweDk2LCAweGYwLCAweDFlLAotKyAgICAg ICAgMHhjZCwgMHgyOCwgMHg1NywgMHhmOCwgMHgzNywgMHgzMCwgMHg3NSwgMHg2YiwgMHhiZCwg MHhkNCwgMHg3YiwgMHgwYywgMHg4NywgMHhjNSwgMHg2YywKLSsgICAgICAgIDB4ODcsIDB4NDAs IDB4YTUsIDB4YmIsIDB4MjcsIDB4MmMsIDB4NzgsIDB4YzksIDB4NzQsIDB4NWEsIDB4NTQsIDB4 NWIsIDB4MGIsIDB4MzAsIDB4NmYsCi0rICAgICAgICAweDQ0LCAweDRhLCAweGZhLCAweDcxLCAw eGU0LCAweDIxLCAweDYxLCAweDY2LCAweGY5LCAweGVlLCAweDY1LCAweGRlLCAweDdjLCAweDA0 LCAweGQ3LAotKyAgICAgICAgMHhmZCwgMHhhOSwgMHgxNSwgMHg1YiwgMHg3ZiwgMHhlMiwgMHg3 YSwgMHhiYSwgMHg2OSwgMHg4NiwgMHg3MiwgMHhhNiwgMHgwNiwgMHg4ZCwgMHg5YiwKLSsgICAg ICAgIDB4OTAsIDB4NTUsIDB4NjAsIDB4OWUsIDB4NGMsIDB4NWQsIDB4YTksIDB4YjYsIDB4NTUK LSsgICAgfTsKLSsKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIga2V5ZGF0YV9kbXAx W10gPSB7Ci0rICAgICAgICAweDdhLCAweGQ2LCAweDEyLCAweGQwLCAweDBlLCAweGVjLCAweDkx LCAweGE5LCAweDg1LCAweDhiLCAweGY4LCAweDUwLCAweGYwLCAweDExLCAweDJlLAotKyAgICAg ICAgMHgwMCwgMHgxMSwgMHgzMiwgMHg0MCwgMHg2MCwgMHg2NiwgMHgxZiwgMHgxMSwgMHhlZSwg MHhjMiwgMHg3NSwgMHgyNywgMHg2NSwgMHg0YiwgMHgxNiwKLSsgICAgICAgIDB4NjcsIDB4MTYs IDB4OTUsIDB4ZDIsIDB4MTQsIDB4YzMsIDB4MWQsIDB4YjMsIDB4NDgsIDB4MWYsIDB4YjcsIDB4 ZTQsIDB4MGIsIDB4MmIsIDB4NzQsCi0rICAgICAgICAweGMzLCAweGRiLCAweDUwLCAweDI3LCAw eGY5LCAweDg1LCAweDNhLCAweGZhLCAweGE5LCAweDA4LCAweDIzLCAweGMxLCAweDY1LCAweDNk LCAweDM0LAotKyAgICAgICAgMHgzYSwgMHhjOCwgMHg1NiwgMHg3YSwgMHg2NSwgMHg0NSwgMHgz NiwgMHg2ZSwgMHhhZSwgMHgyYSwgMHhjZSwgMHg5ZiwgMHg0MywgMHg0MywgMHhkNywKLSsgICAg ICAgIDB4MTAsIDB4ZTksIDB4OWUsIDB4MTgsIDB4ZjQsIDB4YTQsIDB4MzUsIDB4ZGEsIDB4OGEs IDB4NmIsIDB4YjAsIDB4M2YsIDB4ZGQsIDB4NTMsIDB4ZTMsCi0rICAgICAgICAweGE4LCAweGM1 LCAweDRlLCAweDc5LCAweDlkLCAweDFmLCAweDUxLCAweDhjLCAweGEyLCAweGNhLCAweDY2LCAw eDNjLCAweDZhLCAweDJhLCAweGZmLAotKyAgICAgICAgMHg4ZSwgMHhkMiwgMHhmMywgMHhiNywg MHhjYiwgMHg4MiwgMHhkYSwgMHhkZSwgMHgyYywgMHhlNiwgMHhkMiwgMHg4YywgMHhiMywgMHhh ZCwgMHhiNiwKLSsgICAgICAgIDB4NGMsIDB4OTUsIDB4NTUsIDB4NzYsIDB4YmQsIDB4YzksIDB4 YzgsIDB4ZDEKLSsgICAgfTsKLSsKLSsgICAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIga2V5 ZGF0YV9kbXExW10gPSB7Ci0rICAgICAgICAweDAwLCAweDgzLCAweDIzLCAweDFkLCAweGJiLCAw eDExLCAweDQyLCAweDE3LCAweDJiLCAweDI1LCAweDVhLCAweDJjLCAweDAzLCAweGU2LCAweDc1 LAotKyAgICAgICAgMHhjMSwgMHgxOCwgMHhhOCwgMHhjOSwgMHgwYiwgMHg5NiwgMHhiZiwgMHhi YSwgMHhjNCwgMHg5MiwgMHg5MSwgMHg4MCwgMHhhNSwgMHgyMiwgMHgyZiwKLSsgICAgICAgIDB4 YmEsIDB4OTEsIDB4OTAsIDB4MzYsIDB4MDEsIDB4NTYsIDB4MTUsIDB4MDAsIDB4MmMsIDB4NzQs IDB4YTIsIDB4OTcsIDB4ZjcsIDB4MTUsIDB4YTEsCi0rICAgICAgICAweDQ5LCAweGRmLCAweDMy LCAweDM1LCAweGQyLCAweGRkLCAweDBjLCAweDkxLCAweGE2LCAweGY4LCAweGU3LCAweGJlLCAw eDgxLCAweDM2LCAweDliLAotKyAgICAgICAgMHgwMywgMHhkYywgMHg2YiwgMHgzYiwgMHhkOCwg MHg1ZCwgMHg3OSwgMHg1NywgMHhlMCwgMHhlNiwgMHg0ZiwgMHg0OSwgMHhkZiwgMHg0YywgMHg1 YywKLSsgICAgICAgIDB4MGUsIDB4ZTUsIDB4MjEsIDB4NDEsIDB4OTUsIDB4ZmQsIDB4YWQsIDB4 ZmYsIDB4OWEsIDB4M2UsIDB4YTAsIDB4ZjksIDB4MGYsIDB4NTksIDB4OWUsCi0rICAgICAgICAw eDZhLCAweGE3LCAweDdiLCAweDcxLCAweGE3LCAweDI0LCAweDlhLCAweDM2LCAweDUyLCAweGFl LCAweDk3LCAweDIwLCAweGMxLCAweDVlLCAweDc4LAotKyAgICAgICAgMHhkOSwgMHg0NywgMHg4 YiwgMHgxZSwgMHg2NywgMHhmMiwgMHhhZiwgMHg5OCwgMHhlNiwgMHgyZCwgMHhlZiwgMHgxMCwg MHhkNywgMHhmMSwgMHhhYiwKLSsgICAgICAgIDB4NDksIDB4ZWUsIDB4ZTUsIDB4NGIsIDB4N2Us IDB4YWUsIDB4MWYsIDB4MWQsIDB4NjEKLSsgICAgfTsKLSsKLSsgICAgc3RhdGljIGNvbnN0IHVu c2lnbmVkIGNoYXIga2V5ZGF0YV9pcW1wW10gPSB7Ci0rICAgICAgICAweDIzLCAweDk2LCAweGMx LCAweDkxLCAweDE3LCAweDVlLCAweDBhLCAweDgzLCAweGQyLCAweGRjLCAweDdiLCAweDY5LCAw eGIyLCAweDU5LCAweDFkLAotKyAgICAgICAgMHgzMywgMHg1OCwgMHg1MiwgMHgzZiwgMHgxOCwg MHhjNywgMHgwOSwgMHg1MCwgMHgxYywgMHhiOSwgMHhhMSwgMHhiYiwgMHg0YywgMHhhMiwgMHgz OCwKLSsgICAgICAgIDB4NDAsIDB4NGMsIDB4OWEsIDB4OGUsIDB4ZmUsIDB4OWMsIDB4OTAsIDB4 OTIsIDB4ZDAsIDB4NzEsIDB4OWYsIDB4ODksIDB4OTksIDB4NTAsIDB4OTEsCi0rICAgICAgICAw eDFmLCAweDM0LCAweDhiLCAweDc0LCAweDUzLCAweDExLCAweDExLCAweDRhLCAweDcwLCAweGUy LCAweGY3LCAweDMwLCAweGQ4LCAweDhjLCAweDgwLAotKyAgICAgICAgMHhlMSwgMHhjYywgMHg5 ZiwgMHhmMSwgMHg2MywgMHgxNywgMHgxYSwgMHg3ZCwgMHg2NywgMHgyOSwgMHg0YywgMHhjYiwg MHg0ZSwgMHg3NCwgMHg3YiwKLSsgICAgICAgIDB4ZTAsIDB4M2UsIDB4OWUsIDB4MmYsIDB4ZjQs IDB4NjcsIDB4OGYsIDB4ZWMsIDB4YjksIDB4NWMsIDB4MDAsIDB4MWUsIDB4N2UsIDB4YTIsIDB4 N2IsCi0rICAgICAgICAweDkyLCAweGM5LCAweDZmLCAweDRjLCAweGU0LCAweDBlLCAweGY5LCAw eDQ4LCAweDYzLCAweGNkLCAweDUwLCAweDIyLCAweDVkLCAweGJmLCAweGI2LAotKyAgICAgICAg MHg5ZCwgMHgwMSwgMHgzMywgMHg2YSwgMHhmNCwgMHg1MCwgMHhiZSwgMHg4NiwgMHg5OCwgMHg0 ZiwgMHhjYSwgMHgzZiwgMHgzYSwgMHhmYSwgMHhjZiwKLSsgICAgICAgIDB4MDcsIDB4NDAsIDB4 YzQsIDB4YWEsIDB4YWQsIDB4YWUsIDB4YmUsIDB4YmYKLSsgICAgfTsKLSsKLSsgICAgaW50IHJ2 ID0gMDsKLSsgICAgQklHTlVNICpuID0gTlVMTCwgKmUgPSBOVUxMLCAqZCA9IE5VTEwsICpwID0g TlVMTCwgKnEgPSBOVUxMLCAqZG1wMSA9IE5VTEwsICpkbXExID0gTlVMTCwgKmlxbXAgPSBOVUxM OwotKwotKyAgICBmaXBzX2xvYWRfa2V5X2NvbXBvbmVudChuLCBrZXlkYXRhKTsKLSsgICAgZmlw c19sb2FkX2tleV9jb21wb25lbnQoZSwga2V5ZGF0YSk7Ci0rICAgIGZpcHNfbG9hZF9rZXlfY29t cG9uZW50KGQsIGtleWRhdGEpOwotKyAgICBmaXBzX2xvYWRfa2V5X2NvbXBvbmVudChwLCBrZXlk YXRhKTsKLSsgICAgZmlwc19sb2FkX2tleV9jb21wb25lbnQocSwga2V5ZGF0YSk7Ci0rICAgIGZp cHNfbG9hZF9rZXlfY29tcG9uZW50KGRtcDEsIGtleWRhdGEpOwotKyAgICBmaXBzX2xvYWRfa2V5 X2NvbXBvbmVudChkbXExLCBrZXlkYXRhKTsKLSsgICAgZmlwc19sb2FkX2tleV9jb21wb25lbnQo aXFtcCwga2V5ZGF0YSk7Ci0rCi0rICAgIFJTQV9zZXQwX2tleShrZXksIG4sIGUsIGQpOwotKyAg ICBSU0Ffc2V0MF9mYWN0b3JzKGtleSwgcCwgcSk7Ci0rICAgIFJTQV9zZXQwX2NydF9wYXJhbXMo a2V5LCBkbXAxLCBkbXExLCBpcW1wKTsKLSsKLSsgICAgcnYgPSAxOwotK2VycjoKLSsgICAgaWYg KCFydikgewotKyAgICAgICAgQk5fZnJlZShuKTsKLSsgICAgICAgIEJOX2ZyZWUoZSk7Ci0rICAg ICAgICBCTl9mcmVlKGQpOwotKyAgICAgICAgQk5fZnJlZShwKTsKLSsgICAgICAgIEJOX2ZyZWUo cSk7Ci0rICAgICAgICBCTl9mcmVlKGRtcDEpOwotKyAgICAgICAgQk5fZnJlZShkbXExKTsKLSsg ICAgICAgIEJOX2ZyZWUoaXFtcCk7Ci0rICAgIH0KLSsgICAgcmV0dXJuIHJ2OwotK30KLSsKLSsv KiBLbm93biBBbnN3ZXIgVGVzdCAoS0FUKSBkYXRhIGZvciB0aGUgYWJvdmUgUlNBIHByaXZhdGUg a2V5IHNpZ25pbmcKLSsgKiBrYXRfdGJzLgotKyAqLwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIGthdF90YnNbXSA9Ci0rICAgICJPcGVuU1NMIEZJUFMgMTQwLTIgUHVibGljIEtleSBS U0EgS0FUIjsKLSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBrYXRfUlNBX1BTU19TSEEy NTZbXSA9IHsKLSsgICAgMHgzOCwgMHhEQSwgMHg5OSwgMHg1MSwgMHgyNiwgMHgzOCwgMHhDNiwg MHg3RiwgMHhDNCwgMHg4MSwgMHg1NywgMHgxOSwKLSsgICAgMHgzNSwgMHhDNiwgMHhGNiwgMHgx RSwgMHg5MCwgMHg0NywgMHgyMCwgMHg1NSwgMHg0NywgMHg1NiwgMHgyNiwgMHhFOSwKLSsgICAg MHhGMiwgMHhBOCwgMHgzOSwgMHg2QywgMHhENSwgMHhDRCwgMHhDQiwgMHg1NSwgMHhGQywgMHgw QywgMHhDNSwgMHhDQiwKLSsgICAgMHhGNywgMHg0MCwgMHgxNywgMHgzQiwgMHhDRiwgMHhFNCwg MHgwNSwgMHgwMywgMHgzQiwgMHhBMCwgMHhCMiwgMHhDOSwKLSsgICAgMHgwRCwgMHg1RSwgMHg0 OCwgMHgzQSwgMHhFOSwgMHhBRCwgMHgyOCwgMHg3MSwgMHg3RCwgMHg4RiwgMHg4OSwgMHgxNiwK LSsgICAgMHg1OSwgMHg5MywgMHgzNSwgMHhEQywgMHg0RCwgMHg3QiwgMHhERiwgMHg4NCwgMHhF NCwgMHg2OCwgMHhBQSwgMHgzMywKLSsgICAgMHhBQSwgMHhEQywgMHg2NiwgMHg1MCwgMHhDOCwg MHhBOSwgMHgzMiwgMHgxMiwgMHhEQywgMHhDNiwgMHg5MCwgMHg0OSwKLSsgICAgMHgwQiwgMHg3 NSwgMHhGRiwgMHg5QiwgMHg5NSwgMHgwMCwgMHg5QSwgMHg5MCwgMHhFMCwgMHhENCwgMHgwRSwg MHg2NywKLSsgICAgMHhBQiwgMHgzQywgMHg0NywgMHgzNiwgMHhDNSwgMHgyRSwgMHgxQywgMHg0 NiwgMHhGMCwgMHgyRCwgMHhEMywgMHg4QiwKLSsgICAgMHg0MiwgMHgwOCwgMHhERSwgMHgwRCwg MHhCNiwgMHgyQywgMHg4NiwgMHhCMCwgMHgzNSwgMHg3MSwgMHgxOCwgMHg2QiwKLSsgICAgMHg4 OSwgMHg2NywgMHhDMCwgMHgwNSwgMHhBRCwgMHhGNCwgMHgxRCwgMHg2MiwgMHg0RSwgMHg3NSwg MHhFQywgMHhENiwKLSsgICAgMHhDMiwgMHhEQiwgMHgwNywgMHhCMCwgMHhCNiwgMHg4RCwgMHgx NSwgMHhBRCwgMHhDRCwgMHhCRiwgMHhGNSwgMHg2MCwKLSsgICAgMHg3NiwgMHhBRSwgMHg0OCwg MHhCOCwgMHg3NywgMHg3RiwgMHhDNSwgMHgwMSwgMHhEOSwgMHgyOSwgMHhCQiwgMHhENiwKLSsg ICAgMHgxNywgMHhBMiwgMHgyMCwgMHg1QSwgMHhDMCwgMHg0QSwgMHgzQiwgMHgzNCwgMHhDOCwg MHhCOSwgMHgzOSwgMHhDRiwKLSsgICAgMHgwNiwgMHg4OSwgMHg5NSwgMHg2RiwgMHhDNywgMHhD QSwgMHhDNCwgMHhFNCwgMHg0MywgMHhERiwgMHg1QSwgMHgyMywKLSsgICAgMHhFMiwgMHg4OSwg MHhBMywgMHgzOCwgMHg3OCwgMHgzMSwgMHgzOCwgMHhDNiwgMHhBNCwgMHg2RiwgMHg1RiwgMHg3 MywKLSsgICAgMHg1QSwgMHhFNSwgMHg5RSwgMHgwOSwgMHhFNywgMHg2RiwgMHhENCwgMHhGOCwg MHgzRSwgMHhCNywgMHhCMCwgMHg1NiwKLSsgICAgMHg5QSwgMHhGMywgMHg2NSwgMHhGMCwgMHhD MiwgMHhBNiwgMHg4QSwgMHgwOCwgMHhCQSwgMHg0NCwgMHhBQywgMHg5NywKLSsgICAgMHhERSwg MHhCNCwgMHgxNiwgMHg4MywgMHhERiwgMHhFMywgMHhFRSwgMHg3MSwgMHhGQSwgMHhGOSwgMHg1 MSwgMHg1MCwKLSsgICAgMHgxNCwgMHhEQywgMHhGRCwgMHg2QSwgMHg4MiwgMHgyMCwgMHg2OCwg MHg2NCwgMHg3RCwgMHg0RSwgMHg4MiwgMHg2OCwKLSsgICAgMHhENywgMHg0NSwgMHhGQSwgMHg2 QSwgMHhFNCwgMHhFNSwgMHgyOSwgMHgzQSwgMHg3MCwgMHhGQiwgMHhFNCwgMHg2MiwKLSsgICAg MHgyQiwgMHgzMSwgMHhCOSwgMHg3RAotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo YXIga2F0X1JTQV9TSEEyNTZbXSA9IHsKLSsgICAgMHhDMiwgMHhCMSwgMHg5NywgMHgwMCwgMHg5 QSwgMHhFNSwgMHg4MCwgMHg2QSwgMHhFMiwgMHg1MSwgMHg2OCwgMHhCOSwKLSsgICAgMHg3QSwg MHgwQywgMHhGMiwgMHhCNCwgMHg3NywgMHhFRCwgMHgxNSwgMHgwQywgMHg0RSwgMHhFMSwgMHhE QywgMHhGRiwKLSsgICAgMHg4RSwgMHhCQywgMHhERSwgMHhDNywgMHg5QSwgMHg5NiwgMHhGMSwg MHg0NywgMHg0NSwgMHgyNCwgMHg5RCwgMHg2RiwKLSsgICAgMHhBNiwgMHhGMywgMHgxRCwgMHgw RCwgMHgzNSwgMHg0QywgMHgxQSwgMHhGMywgMHg1OCwgMHgyQywgMHg2QywgMHgwNiwKLSsgICAg MHhENiwgMHgyMiwgMHgzNywgMHg3NywgMHg4QywgMHgzMywgMHhFNSwgMHgwNywgMHg1MywgMHg5 MywgMHgyOCwgMHhDRiwKLSsgICAgMHg2NywgMHhGQSwgMHhDNCwgMHgxRiwgMHgxQiwgMHgyNCwg MHhEQiwgMHg0QywgMHhDNSwgMHgyQSwgMHg1MSwgMHhBMiwKLSsgICAgMHg2MCwgMHgxNSwgMHg4 QywgMHg1NCwgMHhCNCwgMHgzMCwgMHhFMiwgMHgyNCwgMHg0NywgMHg4NiwgMHhGMiwgMHhGOCwK LSsgICAgMHg2QywgMHhENiwgMHgxMiwgMHg1OSwgMHgyQywgMHg3NCwgMHg5QSwgMHgzNywgMHhG MywgMHhDNCwgMHhBMiwgMHhENSwKLSsgICAgMHg0RSwgMHgxRiwgMHg3NywgMHhGMCwgMHgyNywg MHhDRSwgMHg3NywgMHhGOCwgMHg0QSwgMHg3OSwgMHgwMywgMHhCRSwKLSsgICAgMHhDOCwgMHgw NiwgMHgyRCwgMHhBNywgMHhBNiwgMHg0NiwgMHhGNSwgMHg1NSwgMHg3OSwgMHhENywgMHg1Qywg MHhDNiwKLSsgICAgMHg1QiwgMHhCMSwgMHgwMCwgMHg0RSwgMHg3QywgMHhEOSwgMHgxMSwgMHg4 NSwgMHhFMCwgMHhCMSwgMHg0RCwgMHgyRCwKLSsgICAgMHgxMywgMHhENywgMHhBQywgMHhFQSwg MHg2NCwgMHhEMSwgMHhBQywgMHg4RiwgMHg4RCwgMHg4RiwgMHhFQSwgMHg0MiwKLSsgICAgMHg3 RiwgMHhGOSwgMHhCNywgMHg3RCwgMHgyQywgMHg2OCwgMHg0OSwgMHgwNywgMHg3QSwgMHg3NCwg MHhFRiwgMHhCNCwKLSsgICAgMHhDOSwgMHg5NywgMHgxNiwgMHg1QywgMHg2QywgMHg2RSwgMHg1 QywgMHgwOSwgMHgyRSwgMHg4RSwgMHgxMywgMHgyRSwKLSsgICAgMHgxQSwgMHg4RCwgMHhBNiwg MHgwQywgMHg2RSwgMHgwQywgMHgxQywgMHgwRiwgMHhDQywgMHhCMiwgMHg3OCwgMHg4QSwKLSsg ICAgMHgwNywgMHhGQywgMHg1QywgMHhDMiwgMHhGNSwgMHg2NSwgMHhFQywgMHhBQiwgMHg4Qiwg MHgzQywgMHhDQSwgMHg5MSwKLSsgICAgMHg2RiwgMHg4NCwgMHg3QywgMHgyMSwgMHgwRSwgMHhC OCwgMHhEQSwgMHg3QiwgMHg2QywgMHhGNywgMHhERiwgMHhBQiwKLSsgICAgMHg3RSwgMHgxNSwg MHhGRCwgMHg4NSwgMHgwQiwgMHgzMywgMHg5QiwgMHg2QSwgMHgzQSwgMHhDMywgMHhFRiwgMHg2 NSwKLSsgICAgMHgwNCwgMHg2RSwgMHhCMiwgMHhBQywgMHg5OCwgMHhGRCwgMHhFQiwgMHgwMiwg MHhGNSwgMHhDMCwgMHgwQiwgMHg1RSwKLSsgICAgMHhDQiwgMHhENCwgMHg4MywgMHg4MiwgMHgx OCwgMHgxQiwgMHhEQSwgMHhCNCwgMHhDRCwgMHhFOCwgMHg3MSwgMHg2QiwKLSsgICAgMHgxRCwg MHhCNSwgMHg0RiwgMHhFOSwgMHhENiwgMHg0MywgMHhBMCwgMHgwQSwgMHgxNCwgMHhBMCwgMHhF NywgMHg1RCwKLSsgICAgMHg0NywgMHg5RCwgMHgxOCwgMHhENwotK307Ci0rCi0rc3RhdGljIGlu dCBmaXBzX3JzYV9lbmNyeXB0X3Rlc3QoUlNBICpyc2EsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnBs YWludGV4dCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcHRsZW4pCi0r ewotKyAgICB1bnNpZ25lZCBjaGFyICpjdGJ1ZiA9IE5VTEwsICpwdGJ1ZiA9IE5VTEw7Ci0rICAg IGludCByZXQgPSAwOwotKyAgICBpbnQgbGVuOwotKwotKyAgICBjdGJ1ZiA9IE9QRU5TU0xfbWFs bG9jKFJTQV9zaXplKHJzYSkpOwotKyAgICBpZiAoIWN0YnVmKQotKyAgICAgICAgZ290byBlcnI7 Ci0rCi0rICAgIGxlbiA9IFJTQV9wdWJsaWNfZW5jcnlwdChwdGxlbiwgcGxhaW50ZXh0LCBjdGJ1 ZiwgcnNhLCBSU0FfUEtDUzFfUEFERElORyk7Ci0rICAgIGlmIChsZW4gPD0gMCkKLSsgICAgICAg IGdvdG8gZXJyOwotKyAgICAvKiBDaGVjayBjaXBoZXJ0ZXh0IGRvZXNuJ3QgbWF0Y2ggcGxhaW50 ZXh0ICovCi0rICAgIGlmIChsZW4gPj0gcHRsZW4gJiYgIW1lbWNtcChwbGFpbnRleHQsIGN0YnVm LCBwdGxlbikpCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgcHRidWYgPSBPUEVOU1NMX21h bGxvYyhSU0Ffc2l6ZShyc2EpKTsKLSsgICAgaWYgKCFwdGJ1ZikKLSsgICAgICAgIGdvdG8gZXJy OwotKwotKyAgICBsZW4gPSBSU0FfcHJpdmF0ZV9kZWNyeXB0KGxlbiwgY3RidWYsIHB0YnVmLCBy c2EsIFJTQV9QS0NTMV9QQURESU5HKTsKLSsgICAgaWYgKGxlbiAhPSBwdGxlbikKLSsgICAgICAg IGdvdG8gZXJyOwotKyAgICBpZiAobWVtY21wKHB0YnVmLCBwbGFpbnRleHQsIGxlbikpCi0rICAg ICAgICBnb3RvIGVycjsKLSsKLSsgICAgcmV0ID0gMTsKLSsKLSsgZXJyOgotKyAgICBpZiAoY3Ri dWYpCi0rICAgICAgICBPUEVOU1NMX2ZyZWUoY3RidWYpOwotKyAgICBpZiAocHRidWYpCi0rICAg ICAgICBPUEVOU1NMX2ZyZWUocHRidWYpOwotKyAgICByZXR1cm4gcmV0OwotK30KLSsKLStpbnQg RklQU19zZWxmdGVzdF9yc2EoKQotK3sKLSsgICAgaW50IHJldCA9IDA7Ci0rICAgIFJTQSAqa2V5 OwotKyAgICBFVlBfUEtFWSAqcGsgPSBOVUxMOwotKwotKyAgICBpZiAoKGtleSA9IFJTQV9uZXco KSkgPT0gTlVMTCkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBpZiAoIXNldHJzYWtleShr ZXkpKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIGlmICgocGsgPSBFVlBfUEtFWV9uZXco KSkgPT0gTlVMTCkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBFVlBfUEtFWV9zZXQxX1JT QShwaywga2V5KTsKLSsKLSsgICAgaWYgKCFmaXBzX3BrZXlfc2lnbmF0dXJlX3Rlc3QocGssIGth dF90YnMsIHNpemVvZihrYXRfdGJzKSAtIDEsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGthdF9SU0FfU0hBMjU2LCBzaXplb2Yoa2F0X1JTQV9TSEEyNTYpLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBFVlBfc2hhMjU2KCksIEVWUF9NRF9DVFhfRkxBR19Q QURfUEtDUzEsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJSU0EgU0hBMjU2 IFBLQ1MjMSIpKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIGlmICghZmlwc19wa2V5X3Np Z25hdHVyZV90ZXN0KHBrLCBrYXRfdGJzLCBzaXplb2Yoa2F0X3RicykgLSAxLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBrYXRfUlNBX1BTU19TSEEyNTYsCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihrYXRfUlNBX1BTU19TSEEyNTYpLCBFVlBf c2hhMjU2KCksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVWUF9NRF9DVFhf RkxBR19QQURfUFNTLCAiUlNBIFNIQTI1NiBQU1MiKSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwot KyAgICBpZiAoIWZpcHNfcnNhX2VuY3J5cHRfdGVzdChrZXksIGthdF90YnMsIHNpemVvZihrYXRf dGJzKSAtIDEpKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIHJldCA9IDE7Ci0rCi0rIGVy cjoKLSsgICAgaWYgKHBrKQotKyAgICAgICAgRVZQX1BLRVlfZnJlZShwayk7Ci0rICAgIGlmIChr ZXkpCi0rICAgICAgICBSU0FfZnJlZShrZXkpOwotKyAgICByZXR1cm4gcmV0OwotK30KLSsKLSsj ZW5kaWYgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIGRlZiBPUEVOU1NMX0ZJUFMgKi8KLWRp ZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfc2hhX3NlbGZ0ZXN0LmMuZmlw cyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vZmlwcy9maXBzX3NoYV9zZWxmdGVzdC5jCi0tLS0gb3Bl bnNzbC0xLjEuMWovY3J5cHRvL2ZpcHMvZmlwc19zaGFfc2VsZnRlc3QuYy5maXBzCTIwMjEtMDMt MDMgMTI6NTc6NDIuMjAxNzM0NTQyICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2Zp cHMvZmlwc19zaGFfc2VsZnRlc3QuYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwMTczNDU0MiArMDEw MAotQEAgLTAsMCArMSwyMjMgQEAKLSsvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotKyAqIENvcHlyaWdodCAoYykg MjAwMyBUaGUgT3BlblNTTCBQcm9qZWN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSsgKgotKyAq IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg b3Igd2l0aG91dAotKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0 IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotKyAqIGFyZSBtZXQ6Ci0rICoKLSsgKiAxLiBSZWRp c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo dAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp bmcgZGlzY2xhaW1lci4gCi0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhp cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotKyAq ICAgIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0 aCB0aGUKLSsgKiAgICBkaXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBBbGwgYWR2ZXJ0aXNpbmcg bWF0ZXJpYWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMKLSsgKiAgICBzb2Z0 d2FyZSBtdXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAi VGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQ cm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0LiAoaHR0cDovL3d3 dy5vcGVuc3NsLm9yZy8pIgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJPcGVuU1NMIFRvb2xraXQi IGFuZCAiT3BlblNTTCBQcm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRvCi0rICogICAgZW5kb3Jz ZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQK LSsgKiAgICBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0dGVuIHBlcm1pc3Npb24s IHBsZWFzZSBjb250YWN0Ci0rICogICAgb3BlbnNzbC1jb3JlQG9wZW5zc2wub3JnLgotKyAqCi0r ICogNS4gUHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgbWF5IG5vdCBiZSBjYWxs ZWQgIk9wZW5TU0wiCi0rICogICAgbm9yIG1heSAiT3BlblNTTCIgYXBwZWFyIGluIHRoZWlyIG5h bWVzIHdpdGhvdXQgcHJpb3Igd3JpdHRlbgotKyAqICAgIHBlcm1pc3Npb24gb2YgdGhlIE9wZW5T U0wgUHJvamVjdC4KLSsgKgotKyAqIDYuIFJlZGlzdHJpYnV0aW9ucyBvZiBhbnkgZm9ybSB3aGF0 c29ldmVyIG11c3QgcmV0YWluIHRoZSBmb2xsb3dpbmcKLSsgKiAgICBhY2tub3dsZWRnbWVudDoK LSsgKiAgICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUg T3BlblNTTCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0ICho dHRwOi8vd3d3Lm9wZW5zc2wub3JnLykiCi0rICoKLSsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ REVEIEJZIFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycnIEFORCBBTlkKLSsgKiBFWFBSRVNT RUQgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywg VEhFCi0rICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT UyBGT1IgQSBQQVJUSUNVTEFSCi0rICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVW RU5UIFNIQUxMIFRIRSBPcGVuU1NMIFBST0pFQ1QgT1IKLSsgKiBJVFMgQ09OVFJJQlVUT1JTIEJF IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0rICogU1BFQ0lB TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCi0r ICogTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS VklDRVM7Ci0rICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO VEVSUlVQVElPTikKLSsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFC SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0rICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9S VCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotKyAqIEFSSVNJTkcgSU4gQU5Z IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQKLSsg KiBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0rICoKLSsgKi8KLSsKLSsjaW5j bHVkZSA8c3RyaW5nLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZXJyLmg+Ci0rI2lmZGVmIE9QRU5T U0xfRklQUwotKyMgaW5jbHVkZSA8b3BlbnNzbC9maXBzLmg+Ci0rI2VuZGlmCi0rI2luY2x1ZGUg PG9wZW5zc2wvZXZwLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvc2hhLmg+Ci0rCi0rI2lmZGVmIE9Q RU5TU0xfRklQUwotK3N0YXRpYyBjb25zdCBjaGFyIHRlc3RbXVs2MF0gPSB7Ci0rICAgICIiLAot KyAgICAiYWJjIiwKLSsgICAgImFiY2RiY2RlY2RlZmRlZmdlZmdoZmdoaWdoaWpoaWpraWprbGpr bG1rbG1ubG1ub21ub3Bub3BxIgotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIg cmV0W11bU0hBX0RJR0VTVF9MRU5HVEhdID0gewotKyAgICB7MHhkYSwgMHgzOSwgMHhhMywgMHhl ZSwgMHg1ZSwgMHg2YiwgMHg0YiwgMHgwZCwgMHgzMiwgMHg1NSwKLSsgICAgIDB4YmYsIDB4ZWYs IDB4OTUsIDB4NjAsIDB4MTgsIDB4OTAsIDB4YWYsIDB4ZDgsIDB4MDcsIDB4MDl9LAotKyAgICB7 MHhhOSwgMHg5OSwgMHgzZSwgMHgzNiwgMHg0NywgMHgwNiwgMHg4MSwgMHg2YSwgMHhiYSwgMHgz ZSwKLSsgICAgIDB4MjUsIDB4NzEsIDB4NzgsIDB4NTAsIDB4YzIsIDB4NmMsIDB4OWMsIDB4ZDAs IDB4ZDgsIDB4OWR9LAotKyAgICB7MHg4NCwgMHg5OCwgMHgzZSwgMHg0NCwgMHgxYywgMHgzYiwg MHhkMiwgMHg2ZSwgMHhiYSwgMHhhZSwKLSsgICAgIDB4NGEsIDB4YTEsIDB4ZjksIDB4NTEsIDB4 MjksIDB4ZTUsIDB4ZTUsIDB4NDYsIDB4NzAsIDB4ZjF9LAotK307Ci0rCi0raW50IEZJUFNfc2Vs ZnRlc3Rfc2hhMSgpCi0rewotKyAgICBpbnQgbjsKLSsKLSsgICAgZm9yIChuID0gMDsgbiA8IHNp emVvZih0ZXN0KSAvIHNpemVvZih0ZXN0WzBdKTsgKytuKSB7Ci0rICAgICAgICB1bnNpZ25lZCBj aGFyIG1kW1NIQV9ESUdFU1RfTEVOR1RIXTsKLSsKLSsgICAgICAgIEVWUF9EaWdlc3QodGVzdFtu XSwgc3RybGVuKHRlc3Rbbl0pLCBtZCwgTlVMTCwKLSsgICAgICAgICAgICAgICAgICAgRVZQX3No YTEoKSwgTlVMTCk7Ci0rICAgICAgICBpZiAobWVtY21wKG1kLCByZXRbbl0sIHNpemVvZiBtZCkp IHsKLSsgICAgICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX1NFTEZURVNUX1NIQTEsIEZJUFNf Ul9TRUxGVEVTVF9GQUlMRUQpOwotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgfQot KyAgICB9Ci0rICAgIHJldHVybiAxOwotK30KLSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hh ciBtc2dfc2hhMjU2W10gPQotKyAgICB7IDB4ZmEsIDB4NDgsIDB4NTksIDB4MmEsIDB4ZTEsIDB4 YWUsIDB4MWYsIDB4MzAsCi0rICAgIDB4ZmMKLSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25l ZCBjaGFyIGRpZ19zaGEyNTZbXSA9Ci0rICAgIHsgMHhmNywgMHgyNiwgMHhkOCwgMHg5OCwgMHg0 NywgMHg5MSwgMHg2OCwgMHg1YiwKLSsgICAgMHg5ZSwgMHgzOSwgMHhiMiwgMHg1OCwgMHhiYiwg MHg3NSwgMHhiZiwgMHgwMSwKLSsgICAgMHgxNywgMHgwYywgMHg4NCwgMHgwMCwgMHgwMSwgMHg3 YSwgMHg5NCwgMHg4MywKLSsgICAgMHhmMywgMHgwYiwgMHgxNSwgMHg4NCwgMHg0YiwgMHg2OSwg MHg4OCwgMHg4YQotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNoYXIgbXNnX3NoYTUx MltdID0KLSsgICAgeyAweDM3LCAweGQxLCAweDM1LCAweDlkLCAweDE4LCAweDQxLCAweGU5LCAw eGI3LAotKyAgICAweDZkLCAweDlhLCAweDEzLCAweGRhLCAweDVmLCAweGYzLCAweGJkCi0rfTsK LSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBkaWdfc2hhNTEyW10gPQotKyAgICB7IDB4 MTEsIDB4MTMsIDB4YzQsIDB4MTksIDB4ZWQsIDB4MmIsIDB4MWQsIDB4MTYsCi0rICAgIDB4MTEs IDB4ZWIsIDB4OWIsIDB4YmUsIDB4ZjAsIDB4N2YsIDB4Y2YsIDB4NDQsCi0rICAgIDB4OGIsIDB4 ZDcsIDB4NTcsIDB4YmQsIDB4OGQsIDB4YTksIDB4MjUsIDB4YjAsCi0rICAgIDB4NDcsIDB4MjUs IDB4ZDYsIDB4NmMsIDB4OWEsIDB4NTQsIDB4N2YsIDB4OGYsCi0rICAgIDB4MGIsIDB4NTMsIDB4 MWEsIDB4MTAsIDB4NjgsIDB4MzIsIDB4MDMsIDB4MzgsCi0rICAgIDB4ODIsIDB4YzQsIDB4ODcs IDB4YzQsIDB4ZWEsIDB4MGUsIDB4ZDEsIDB4MDQsCi0rICAgIDB4YTksIDB4OTgsIDB4YzEsIDB4 MDUsIDB4YTMsIDB4ZjMsIDB4ZjgsIDB4YjEsCi0rICAgIDB4YWYsIDB4YmMsIDB4ZDksIDB4Nzgs IDB4N2UsIDB4ZWUsIDB4M2QsIDB4NDMKLSt9OwotKwotK2ludCBGSVBTX3NlbGZ0ZXN0X3NoYTIo dm9pZCkKLSt7Ci0rICAgIHVuc2lnbmVkIGNoYXIgbWRbU0hBNTEyX0RJR0VTVF9MRU5HVEhdOwot KwotKyAgICBFVlBfRGlnZXN0KG1zZ19zaGEyNTYsIHNpemVvZihtc2dfc2hhMjU2KSwgbWQsIE5V TEwsIEVWUF9zaGEyNTYoKSwgTlVMTCk7Ci0rICAgIGlmIChtZW1jbXAoZGlnX3NoYTI1NiwgbWQs IHNpemVvZihkaWdfc2hhMjU2KSkpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfU0VM RlRFU1RfU0hBMiwgRklQU19SX1NFTEZURVNUX0ZBSUxFRCk7Ci0rICAgICAgICByZXR1cm4gMDsK LSsgICAgfQotKwotKyAgICBFVlBfRGlnZXN0KG1zZ19zaGE1MTIsIHNpemVvZihtc2dfc2hhNTEy KSwgbWQsIE5VTEwsIEVWUF9zaGE1MTIoKSwgTlVMTCk7Ci0rICAgIGlmIChtZW1jbXAoZGlnX3No YTUxMiwgbWQsIHNpemVvZihkaWdfc2hhNTEyKSkpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19G X0ZJUFNfU0VMRlRFU1RfU0hBMiwgRklQU19SX1NFTEZURVNUX0ZBSUxFRCk7Ci0rICAgICAgICBy ZXR1cm4gMDsKLSsgICAgfQotKwotKyAgICByZXR1cm4gMTsKLSt9Ci0rCi0rc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgbXNnX3NoYTNfMjU2W10gPSB7Ci0rICAgIDB4YTEsIDB4ZDcsIDB4Y2Us IDB4NTEsIDB4MDQsIDB4ZWIsIDB4MjUsIDB4ZDYsCi0rICAgIDB4MTMsIDB4MWIsIDB4YjgsIDB4 ZjYsIDB4NmUsIDB4MWYsIDB4YjEsIDB4M2YsCi0rICAgIDB4MzUsIDB4MjMKLSt9OwotKwotK3N0 YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGRpZ19zaGEzXzI1NltdID0gewotKyAgICAweGVlLCAw eDkwLCAweDYyLCAweGYzLCAweDk3LCAweDIwLCAweGI4LCAweDIxLAotKyAgICAweGI4LCAweDhi LCAweGU1LCAweGU2LCAweDQ2LCAweDIxLCAweGQ3LCAweGUwLAotKyAgICAweGNhLCAweDAyLCAw eDZhLCAweDlmLCAweGU3LCAweDI0LCAweDhkLCAweDc4LAotKyAgICAweDE1LCAweDBiLCAweDE0 LCAweGJkLCAweGJhLCAweGE0LCAweDBiLCAweGVkCi0rfTsKLSsKLStzdGF0aWMgY29uc3QgdW5z aWduZWQgY2hhciBtc2dfc2hhM181MTJbXSA9IHsKLSsgICAgMHgxMywgMHgzYiwgMHg0OSwgMHg3 YiwgMHgwMCwgMHg5MywgMHgyNywgMHg3MywKLSsgICAgMHhhNSwgMHgzYiwgMHhhOSwgMHhiZiwg MHg4ZSwgMHg2MSwgMHhkNSwgMHg5ZiwKLSsgICAgMHgwNSwgMHhmNAotK307Ci0rCi0rc3RhdGlj IGNvbnN0IHVuc2lnbmVkIGNoYXIgZGlnX3NoYTNfNTEyW10gPSB7Ci0rICAgIDB4NzgsIDB4Mzks IDB4NjQsIDB4YTEsIDB4Y2YsIDB4NDEsIDB4ZDYsIDB4ZDIsCi0rICAgIDB4MTAsIDB4YTgsIDB4 ZDcsIDB4YzgsIDB4MWMsIDB4ZTYsIDB4OTcsIDB4MGEsCi0rICAgIDB4YTYsIDB4MmMsIDB4OTAs IDB4NTMsIDB4Y2IsIDB4ODksIDB4ZTEsIDB4NWYsCi0rICAgIDB4ODgsIDB4MDUsIDB4MzksIDB4 NTcsIDB4ZWMsIDB4ZjYsIDB4MDcsIDB4ZjQsCi0rICAgIDB4MmEsIDB4ZjAsIDB4ODgsIDB4MDQs IDB4ZTcsIDB4NmYsIDB4MmYsIDB4YmQsCi0rICAgIDB4YmIsIDB4MzEsIDB4ODAsIDB4OWMsIDB4 OWUsIDB4ZWYsIDB4YzYsIDB4MGUsCi0rICAgIDB4MjMsIDB4M2QsIDB4NjYsIDB4MjQsIDB4MzYs IDB4N2EsIDB4M2IsIDB4OWMsCi0rICAgIDB4MzAsIDB4ZjgsIDB4ZWUsIDB4NWYsIDB4NjUsIDB4 YmUsIDB4NTYsIDB4YWMKLSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIG1zZ19z aGFrZV8xMjhbXSA9IHsKLSsgICAgMHg0MywgMHhiZCwgMHhiMSwgMHgxZSwgMHhhYywgMHg3MSwg MHgwMywgMHgxZiwKLSsgICAgMHgwMiwgMHhhMSwgMHgxYywgMHgxNSwgMHhhMSwgMHg4OCwgMHg1 ZiwgMHhhNCwKLSsgICAgMHgyOCwgMHg5OAotK307Ci0rCi0rc3RhdGljIGNvbnN0IHVuc2lnbmVk IGNoYXIgZGlnX3NoYWtlXzEyOFtdID0gewotKyAgICAweGRlLCAweDY4LCAweDAyLCAweDdkLCAw eGExLCAweDMwLCAweDY2LCAweDNhLAotKyAgICAweDczLCAweDk4LCAweDBlLCAweDM1LCAweDI1 LCAweGI4LCAweDhjLCAweDc1Ci0rfTsKLSsKLStzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBt c2dfc2hha2VfMjU2W10gPSB7Ci0rICAgIDB4OGYsIDB4ODQsIDB4YTMsIDB4N2QsIDB4YmQsIDB4 NDQsIDB4ZDAsIDB4ZjYsCi0rICAgIDB4OTUsIDB4MzYsIDB4YzUsIDB4ZjQsIDB4NDQsIDB4NmIs IDB4YTMsIDB4MjMsCi0rICAgIDB4OWIsIDB4ZmMKLSt9OwotKwotK3N0YXRpYyBjb25zdCB1bnNp Z25lZCBjaGFyIGRpZ19zaGFrZV8yNTZbXSA9IHsKLSsgICAgMHgwNSwgMHhjYSwgMHg4MywgMHg1 ZSwgMHgwYywgMHhkYiwgMHhmYSwgMHhmNSwKLSsgICAgMHg5NSwgMHhjNiwgMHg4NiwgMHg3ZSwg MHgyZCwgMHg5ZCwgMHhiOSwgMHgzZiwKLSsgICAgMHhjYSwgMHg5YywgMHg4YiwgMHhjNiwgMHg2 NSwgMHgwMiwgMHgyZSwgMHhkZCwKLSsgICAgMHg2ZiwgMHhlNywgMHhiMywgMHhkYSwgMHg1ZSwg MHgwNywgMHhjNCwgMHhjZgotK307Ci0rCi0raW50IEZJUFNfc2VsZnRlc3Rfc2hhMyh2b2lkKQot K3sKLSsgICAgdW5zaWduZWQgY2hhciBtZFtTSEE1MTJfRElHRVNUX0xFTkdUSF07Ci0rCi0rICAg IEVWUF9EaWdlc3QobXNnX3NoYTNfMjU2LCBzaXplb2YobXNnX3NoYTNfMjU2KSwgbWQsIE5VTEws IEVWUF9zaGEzXzI1NigpLCBOVUxMKTsKLSsgICAgaWYgKG1lbWNtcChkaWdfc2hhM18yNTYsIG1k LCBzaXplb2YoZGlnX3NoYTNfMjU2KSkpIHsKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNf U0VMRlRFU1QsIEZJUFNfUl9TRUxGVEVTVF9GQUlMRUQpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0r ICAgIH0KLSsKLSsgICAgRVZQX0RpZ2VzdChtc2dfc2hhM181MTIsIHNpemVvZihtc2dfc2hhM181 MTIpLCBtZCwgTlVMTCwgRVZQX3NoYTNfNTEyKCksIE5VTEwpOwotKyAgICBpZiAobWVtY21wKGRp Z19zaGEzXzUxMiwgbWQsIHNpemVvZihkaWdfc2hhM181MTIpKSkgewotKyAgICAgICAgRklQU2Vy cihGSVBTX0ZfRklQU19TRUxGVEVTVCwgRklQU19SX1NFTEZURVNUX0ZBSUxFRCk7Ci0rICAgICAg ICByZXR1cm4gMDsKLSsgICAgfQotKwotKyAgICBFVlBfRGlnZXN0KG1zZ19zaGFrZV8xMjgsIHNp emVvZihtc2dfc2hha2VfMTI4KSwgbWQsIE5VTEwsIEVWUF9zaGFrZTEyOCgpLCBOVUxMKTsKLSsg ICAgaWYgKG1lbWNtcChkaWdfc2hha2VfMTI4LCBtZCwgc2l6ZW9mKGRpZ19zaGFrZV8xMjgpKSkg ewotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19TRUxGVEVTVCwgRklQU19SX1NFTEZURVNU X0ZBSUxFRCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKwotKyAgICBFVlBfRGlnZXN0 KG1zZ19zaGFrZV8yNTYsIHNpemVvZihtc2dfc2hha2VfMjU2KSwgbWQsIE5VTEwsIEVWUF9zaGFr ZTI1NigpLCBOVUxMKTsKLSsgICAgaWYgKG1lbWNtcChkaWdfc2hha2VfMjU2LCBtZCwgc2l6ZW9m KGRpZ19zaGFrZV8yNTYpKSkgewotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19TRUxGVEVT VCwgRklQU19SX1NFTEZURVNUX0ZBSUxFRCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQot KwotKyAgICByZXR1cm4gMTsKLSt9Ci0rCi0rI2VuZGlmCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4x ai9jcnlwdG8vZmlwcy9maXBzX3N0YW5kYWxvbmVfaG1hYy5jLmZpcHMgb3BlbnNzbC0xLjEuMWov Y3J5cHRvL2ZpcHMvZmlwc19zdGFuZGFsb25lX2htYWMuYwotLS0tIG9wZW5zc2wtMS4xLjFqL2Ny eXB0by9maXBzL2ZpcHNfc3RhbmRhbG9uZV9obWFjLmMuZmlwcwkyMDIxLTAzLTAzIDEyOjU3OjQy LjIwMTczNDU0MiArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9maXBzL2ZpcHNfc3Rh bmRhbG9uZV9obWFjLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4yMDE3MzQ1NDIgKzAxMDAKLUBAIC0w LDAgKzEsMTI3IEBACi0rLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMDMgVGhl IE9wZW5TU0wgUHJvamVjdC4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0rICoKLSsgKiBSZWRpc3Ry aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv dXQKLSsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s bG93aW5nIGNvbmRpdGlvbnMKLSsgKiBhcmUgbWV0OgotKyAqCi0rICogMS4gUmVkaXN0cmlidXRp b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsgKiAg ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns YWltZXIuIAotKyAqCi0rICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4KLSsgKiAgICB0aGUg ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCi0r ICogICAgZGlzdHJpYnV0aW9uLgotKyAqCi0rICogMy4gQWxsIGFkdmVydGlzaW5nIG1hdGVyaWFs cyBtZW50aW9uaW5nIGZlYXR1cmVzIG9yIHVzZSBvZiB0aGlzCi0rICogICAgc29mdHdhcmUgbXVz dCBkaXNwbGF5IHRoZSBmb2xsb3dpbmcgYWNrbm93bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMgcHJv ZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVjdAot KyAqICAgIGZvciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtpdC4gKGh0dHA6Ly93d3cub3BlbnNz bC5vcmcvKSIKLSsgKgotKyAqIDQuIFRoZSBuYW1lcyAiT3BlblNTTCBUb29sa2l0IiBhbmQgIk9w ZW5TU0wgUHJvamVjdCIgbXVzdCBub3QgYmUgdXNlZCB0bwotKyAqICAgIGVuZG9yc2Ugb3IgcHJv bW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0Ci0rICogICAg cHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLiBGb3Igd3JpdHRlbiBwZXJtaXNzaW9uLCBwbGVhc2Ug Y29udGFjdAotKyAqICAgIG9wZW5zc2wtY29yZUBvcGVuc3NsLm9yZy4KLSsgKgotKyAqIDUuIFBy b2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIG1heSBub3QgYmUgY2FsbGVkICJPcGVu U1NMIgotKyAqICAgIG5vciBtYXkgIk9wZW5TU0wiIGFwcGVhciBpbiB0aGVpciBuYW1lcyB3aXRo b3V0IHByaW9yIHdyaXR0ZW4KLSsgKiAgICBwZXJtaXNzaW9uIG9mIHRoZSBPcGVuU1NMIFByb2pl Y3QuCi0rICoKLSsgKiA2LiBSZWRpc3RyaWJ1dGlvbnMgb2YgYW55IGZvcm0gd2hhdHNvZXZlciBt dXN0IHJldGFpbiB0aGUgZm9sbG93aW5nCi0rICogICAgYWNrbm93bGVkZ21lbnQ6Ci0rICogICAg IlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wg UHJvamVjdAotKyAqICAgIGZvciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9vbGtpdCAoaHR0cDovL3d3 dy5vcGVuc3NsLm9yZy8pIgotKyAqCi0rICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU SEUgT3BlblNTTCBQUk9KRUNUIGBgQVMgSVMnJyBBTkQgQU5ZCi0rICogRVhQUkVTU0VEIE9SIElN UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotKyAq IElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg UEFSVElDVUxBUgotKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM TCBUSEUgT3BlblNTTCBQUk9KRUNUIE9SCi0rICogSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAotKyAqIFNQRUNJQUwsIEVYRU1Q TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVAotKyAqIE5PVCBM SU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwot KyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ T04pCi0rICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX SEVUSEVSIElOIENPTlRSQUNULAotKyAqIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSsgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VECi0rICogT0YgVEhF IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotKyAqCi0rICovCi0rCi0rI2luY2x1ZGUgPHN0 ZGlvLmg+Ci0rI2luY2x1ZGUgPHN0ZGxpYi5oPgotKyNpbmNsdWRlIDxzdHJpbmcuaD4KLSsjaW5j bHVkZSA8b3BlbnNzbC9vcGVuc3NsY29uZi5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2htYWMuaD4K LSsjaW5jbHVkZSA8b3BlbnNzbC9zaGEuaD4KLSsKLStpbnQgbWFpbihpbnQgYXJnYywgY2hhciAq KmFyZ3YpCi0rewotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgc3RhdGljIGNoYXIga2V5W10g PSAib3Jib0RlSklUSVRlanNpcnBBRE9OaXZpcnBVa3ZhclAiOwotKyAgICBpbnQgbiwgYmluYXJ5 ID0gMDsKLSsKLSsgICAgaWYgKGFyZ2MgPCAyKSB7Ci0rICAgICAgICBmcHJpbnRmKHN0ZGVyciwg IiVzIFs8ZmlsZT5dK1xuIiwgYXJndlswXSk7Ci0rICAgICAgICBleGl0KDEpOwotKyAgICB9Ci0r Ci0rICAgIG4gPSAxOwotKyAgICBpZiAoIXN0cmNtcChhcmd2W25dLCAiLWJpbmFyeSIpKSB7Ci0r ICAgICAgICBuKys7Ci0rICAgICAgICBiaW5hcnkgPSAxOyAgICAgICAgICAgICAvKiBlbWl0IGJp bmFyeSBmaW5nZXJwcmludC4uLiAqLwotKyAgICB9Ci0rCi0rICAgIGZvciAoOyBuIDwgYXJnYzsg KytuKSB7Ci0rICAgICAgICBGSUxFICpmID0gZm9wZW4oYXJndltuXSwgInJiIik7Ci0rICAgICAg ICBITUFDX0NUWCAqaG1hY19jdHg7Ci0rICAgICAgICB1bnNpZ25lZCBjaGFyIG1hY1tFVlBfTUFY X01EX1NJWkVdOwotKyAgICAgICAgdW5zaWduZWQgaW50IGxlbjsKLSsgICAgICAgIHVuc2lnbmVk IGludCBpOwotKwotKyAgICAgICAgaWYgKCFmKSB7Ci0rICAgICAgICAgICAgcGVycm9yKGFyZ3Zb bl0pOwotKyAgICAgICAgICAgIGV4aXQoMik7Ci0rICAgICAgICB9Ci0rICAgICAgICBobWFjX2N0 eCA9IEhNQUNfQ1RYX25ldygpOwotKyAgICAgICAgaWYgKCFobWFjX2N0eCkKLSsgICAgICAgICAg ICBleGl0KDMpOwotKwotKyAgICAgICAgaWYgKEhNQUNfSW5pdF9leChobWFjX2N0eCwga2V5LCBz dHJsZW4oa2V5KSwgRVZQX3NoYTI1NigpLCBOVUxMKSA8PSAwKSB7Ci0rICAgICAgICAgICAgZnBy aW50ZihzdGRlcnIsICJITUFDIFNIQTI1NiBpbml0aWFsaXphdGlvbiBmYWlsZWQuXG4iKTsKLSsg ICAgICAgICAgICBleGl0KDQpOwotKyAgICAgICAgfQotKwotKyAgICAgICAgZm9yICg7Oykgewot KyAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgYnVmWzEwMjRdOwotKyAgICAgICAgICAgIHNpemVf dCBsID0gZnJlYWQoYnVmLCAxLCBzaXplb2YgYnVmLCBmKTsKLSsKLSsgICAgICAgICAgICBpZiAo bCA9PSAwKSB7Ci0rICAgICAgICAgICAgICAgIGlmIChmZXJyb3IoZikpIHsKLSsgICAgICAgICAg ICAgICAgICAgIHBlcnJvcihhcmd2W25dKTsKLSsgICAgICAgICAgICAgICAgICAgIGV4aXQoMyk7 Ci0rICAgICAgICAgICAgICAgIH0gZWxzZQotKyAgICAgICAgICAgICAgICAgICAgYnJlYWs7Ci0r ICAgICAgICAgICAgfQotKyAgICAgICAgICAgIGlmIChITUFDX1VwZGF0ZShobWFjX2N0eCwgYnVm LCBsKSA8PSAwKSB7Ci0rICAgICAgICAgICAgICAgIGZwcmludGYoc3RkZXJyLCAiSE1BQ19VcGRh dGUoKSBmYWlsZWQuXG4iKTsKLSsgICAgICAgICAgICAgICAgZXhpdCg0KTsKLSsgICAgICAgICAg ICB9Ci0rICAgICAgICB9Ci0rICAgICAgICBpZiAoSE1BQ19GaW5hbChobWFjX2N0eCwgbWFjLCAm bGVuKSA8PSAwKSB7Ci0rICAgICAgICAgICAgZnByaW50ZihzdGRlcnIsICJITUFDX0ZpbmFsKCkg ZmFpbGVkLlxuIik7Ci0rICAgICAgICAgICAgZXhpdCg0KTsKLSsgICAgICAgIH0KLSsKLSsgICAg ICAgIGlmIChiaW5hcnkpIHsKLSsgICAgICAgICAgICBmd3JpdGUobWFjLCBsZW4sIDEsIHN0ZG91 dCk7Ci0rICAgICAgICAgICAgYnJlYWs7ICAgICAgICAgICAgICAvKiAuLi4gZm9yIHNpbmdsZSgh KSBmaWxlICovCi0rICAgICAgICB9Ci0rCi0rLyogICAgICBwcmludGYoIkhNQUMtU0hBMSglcyk9 ICIsYXJndltuXSk7ICovCi0rICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbGVuOyArK2kpCi0rICAg ICAgICAgICAgcHJpbnRmKCIlMDJ4IiwgbWFjW2ldKTsKLSsgICAgICAgIHByaW50ZigiXG4iKTsK LSsgICAgfQotKyNlbmRpZgotKyAgICByZXR1cm4gMDsKLSt9Ci1kaWZmIC11cCBvcGVuc3NsLTEu MS4xai9jcnlwdG8vaG1hYy9obWFjLmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vaG1hYy9o bWFjLmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vaG1hYy9obWFjLmMuZmlwcwkyMDIxLTAy LTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9o bWFjL2htYWMuYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwMjczNDU1MCArMDEwMAotQEAgLTQ0LDYg KzQ0LDEzIEBAIGludCBITUFDX0luaXRfZXgoSE1BQ19DVFggKmN0eCwgY29uc3Qgdm8KLSAgICAg ICAgIHJldHVybiAwOwotIAotICAgICBpZiAoa2V5ICE9IE5VTEwpIHsKLSsjaWZkZWYgT1BFTlNT TF9GSVBTCi0rICAgICAgICBpZiAoRklQU19tb2RlKCkgJiYgIShFVlBfTURfZmxhZ3MobWQpICYg RVZQX01EX0ZMQUdfRklQUykKLSsgICAgICAgICAgICAmJiAoIUVWUF9NRF9DVFhfdGVzdF9mbGFn cyhjdHgtPm1kX2N0eCwgRVZQX01EX0NUWF9GTEFHX05PTl9GSVBTX0FMTE9XKQotKyAgICAgICAg ICAgICAgICB8fCAhRVZQX01EX0NUWF90ZXN0X2ZsYWdzKGN0eC0+aV9jdHgsIEVWUF9NRF9DVFhf RkxBR19OT05fRklQU19BTExPVykKLSsgICAgICAgICAgICAgICAgfHwgIUVWUF9NRF9DVFhfdGVz dF9mbGFncyhjdHgtPm9fY3R4LCBFVlBfTURfQ1RYX0ZMQUdfTk9OX0ZJUFNfQUxMT1cpKSkKLSsg ICAgICAgICAgICBnb3RvIGVycjsKLSsjZW5kaWYKLSAgICAgICAgIHJlc2V0ID0gMTsKLSAKLSAg ICAgICAgIGogPSBFVlBfTURfYmxvY2tfc2l6ZShtZCk7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4x ai9jcnlwdG8vaG1hYy9obV9wbWV0aC5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL2htYWMv aG1fcG1ldGguYwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9obWFjL2htX3BtZXRoLmMuZmlw cwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFq L2NyeXB0by9obWFjL2htX3BtZXRoLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4yMDI3MzQ1NTAgKzAx MDAKLUBAIC0xODAsNyArMTgwLDcgQEAgc3RhdGljIGludCBwa2V5X2htYWNfY3RybF9zdHIoRVZQ X1BLRVlfQwotIAotIGNvbnN0IEVWUF9QS0VZX01FVEhPRCBobWFjX3BrZXlfbWV0aCA9IHsKLSAg ICAgRVZQX1BLRVlfSE1BQywKLS0gICAgMCwKLSsgICAgRVZQX1BLRVlfRkxBR19GSVBTLAotICAg ICBwa2V5X2htYWNfaW5pdCwKLSAgICAgcGtleV9obWFjX2NvcHksCi0gICAgIHBrZXlfaG1hY19j bGVhbnVwLAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5cHRvL29fZmlwcy5jLmZpcHMgb3Bl bnNzbC0xLjEuMWovY3J5cHRvL29fZmlwcy5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL29f Zmlwcy5jLmZpcHMJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVu c3NsLTEuMS4xai9jcnlwdG8vb19maXBzLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4yMDI3MzQ1NTAg KzAxMDAKLUBAIC04LDE3ICs4LDI4IEBACi0gICovCi0gCi0gI2luY2x1ZGUgImludGVybmFsL2Ny eXB0bGliLmgiCi0rI2luY2x1ZGUgImNyeXB0by9maXBzLmgiCi0gCi0gaW50IEZJUFNfbW9kZSh2 b2lkKQotIHsKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rICAgIHJldHVybiBGSVBTX21vZHVsZV9t b2RlKCk7Ci0rI2Vsc2UKLSAgICAgLyogVGhpcyB2ZXJzaW9uIG9mIHRoZSBsaWJyYXJ5IGRvZXMg bm90IHN1cHBvcnQgRklQUyBtb2RlLiAqLwotICAgICByZXR1cm4gMDsKLSsjZW5kaWYKLSB9Ci0g Ci0gaW50IEZJUFNfbW9kZV9zZXQoaW50IHIpCi0gewotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsg ICAgaWYgKHIgJiYgRklQU19tb2R1bGVfbW9kZSgpKSAvKiBjYW4gYmUgaW1wbGljaXRseSBpbml0 aWFsaXplZCBieSBPUEVOU1NMX2luaXQoKSAqLwotKyAgICAgICAgcmV0dXJuIDE7Ci0rICAgIHJl dHVybiBGSVBTX21vZHVsZV9tb2RlX3NldChyKTsKLSsjZWxzZQotICAgICBpZiAociA9PSAwKQot ICAgICAgICAgcmV0dXJuIDE7Ci0gICAgIENSWVBUT2VycihDUllQVE9fRl9GSVBTX01PREVfU0VU LCBDUllQVE9fUl9GSVBTX01PREVfTk9UX1NVUFBPUlRFRCk7Ci0gICAgIHJldHVybiAwOwotKyNl bmRpZgotIH0KLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9vX2luaXQuYy5maXBzIG9w ZW5zc2wtMS4xLjFqL2NyeXB0by9vX2luaXQuYwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9v X2luaXQuYy5maXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3Bl bnNzbC0xLjEuMWovY3J5cHRvL29faW5pdC5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAyNzM0NTUw ICswMTAwCi1AQCAtNyw4ICs3LDY5IEBACi0gICogaHR0cHM6Ly93d3cub3BlbnNzbC5vcmcvc291 cmNlL2xpY2Vuc2UuaHRtbAotICAqLwotIAotKy8qIGZvciBzZWN1cmVfZ2V0ZW52ICovCi0rI2Rl ZmluZSBfR05VX1NPVVJDRQotICNpbmNsdWRlICJlX29zLmgiCi0gI2luY2x1ZGUgPG9wZW5zc2wv ZXJyLmg+Ci0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyMgaW5jbHVkZSA8c3lzL3R5cGVzLmg+Ci0r IyBpbmNsdWRlIDxzeXMvc3RhdC5oPgotKyMgaW5jbHVkZSA8ZmNudGwuaD4KLSsjIGluY2x1ZGUg PHVuaXN0ZC5oPgotKyMgaW5jbHVkZSA8ZXJybm8uaD4KLSsjIGluY2x1ZGUgPHN0ZGxpYi5oPgot KyMgaW5jbHVkZSA8b3BlbnNzbC9yYW5kLmg+Ci0rIyBpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4K LSsjIGluY2x1ZGUgImNyeXB0by9maXBzLmgiCi0rCi0rIyBkZWZpbmUgRklQU19NT0RFX1NXSVRD SF9GSUxFICIvcHJvYy9zeXMvY3J5cHRvL2ZpcHNfZW5hYmxlZCIKLSsKLStzdGF0aWMgdm9pZCBp bml0X2ZpcHNfbW9kZSh2b2lkKQotK3sKLSsgICAgY2hhciBidWZbMl0gPSAiMCI7Ci0rICAgIGlu dCBmZDsKLSsKLSsgICAgaWYgKHNlY3VyZV9nZXRlbnYoIk9QRU5TU0xfRk9SQ0VfRklQU19NT0RF IikgIT0gTlVMTCkgewotKyAgICAgICAgYnVmWzBdID0gJzEnOwotKyAgICB9IGVsc2UgaWYgKChm ZCA9IG9wZW4oRklQU19NT0RFX1NXSVRDSF9GSUxFLCBPX1JET05MWSkpID49IDApIHsKLSsgICAg ICAgIHdoaWxlIChyZWFkKGZkLCBidWYsIHNpemVvZihidWYpKSA8IDAgJiYgZXJybm8gPT0gRUlO VFIpIDsKLSsgICAgICAgIGNsb3NlKGZkKTsKLSsgICAgfQotKwotKyAgICBpZiAoYnVmWzBdICE9 ICcxJyAmJiAhRklQU19tb2R1bGVfaW5zdGFsbGVkKCkpCi0rICAgICAgICByZXR1cm47Ci0rCi0r ICAgIC8qIEVuc3VyZSB0aGUgc2VsZnRlc3RzIGFsd2F5cyBydW4gKi8KLSsgICAgLyogWFhYOiBU TyBTT0xWRSAtIHByZW1hdHVyZSBpbml0aWFsaXphdGlvbiBkdWUgdG8gc2VsZnRlc3RzICovCi0r ICAgIEZJUFNfbW9kZV9zZXQoMSk7Ci0rCi0rICAgIC8qIEZhaWx1cmUgcmVhZGluZyB0aGUgZmlw cyBtb2RlIHN3aXRjaCBmaWxlIG1lYW5zIGp1c3Qgbm90Ci0rICAgICAqIHN3aXRjaGluZyBpbnRv IEZJUFMgbW9kZS4gV2Ugd291bGQgYnJlYWsgdG9vIG1hbnkgdGhpbmdzCi0rICAgICAqIG90aGVy d2lzZS4uCi0rICAgICAqLwotKwotKyAgICBpZiAoYnVmWzBdICE9ICcxJykgewotKyAgICAgICAg LyogZHJvcCBkb3duIHRvIG5vbi1GSVBTIG1vZGUgaWYgaXQgaXMgbm90IHJlcXVlc3RlZCAqLwot KyAgICAgICAgRklQU19tb2RlX3NldCgwKTsKLSsgICAgfSBlbHNlIHsKLSsgICAgICAgIC8qIGFi b3J0IGlmIHNlbGZ0ZXN0IGZhaWxlZCAqLwotKyAgICAgICAgRklQU19zZWxmdGVzdF9jaGVjaygp OwotKyAgICB9Ci0rfQotKwotKy8qCi0rICogUGVyZm9ybSBGSVBTIG1vZHVsZSBwb3dlciBvbiBz ZWxmdGVzdCBhbmQgYXV0b21hdGljIEZJUFMgbW9kZSBzd2l0Y2guCi0rICovCi0rCi0rdm9pZCBf X2F0dHJpYnV0ZV9fICgoY29uc3RydWN0b3IpKSBPUEVOU1NMX2luaXRfbGlicmFyeSh2b2lkKQot K3sKLSsgICAgc3RhdGljIGludCBkb25lID0gMDsKLSsgICAgaWYgKGRvbmUpCi0rICAgICAgICBy ZXR1cm47Ci0rICAgIGRvbmUgPSAxOwotKyAgICBpbml0X2ZpcHNfbW9kZSgpOwotK30KLSsjZW5k aWYKLSAKLSAvKgotICAqIFBlcmZvcm0gYW55IGVzc2VudGlhbCBPcGVuU1NMIGluaXRpYWxpemF0 aW9uIG9wZXJhdGlvbnMuIEN1cnJlbnRseSBkb2VzCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9j cnlwdG8vcmFuZC9yYW5kX2xpYi5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL3JhbmQvcmFu ZF9saWIuYwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9yYW5kL3JhbmRfbGliLmMuZmlwcwky MDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2Ny eXB0by9yYW5kL3JhbmRfbGliLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4yMDI3MzQ1NTAgKzAxMDAK LUBAIC0xNiw2ICsxNiwxMCBAQAotICNpbmNsdWRlICJpbnRlcm5hbC90aHJlYWRfb25jZS5oIgot ICNpbmNsdWRlICJyYW5kX2xvY2FsLmgiCi0gI2luY2x1ZGUgImVfb3MuaCIKLSsjaWZkZWYgT1BF TlNTTF9GSVBTCi0rIyBpbmNsdWRlIDxvcGVuc3NsL2ZpcHMuaD4KLSsjIGluY2x1ZGUgPG9wZW5z c2wvZmlwc19yYW5kLmg+Ci0rI2VuZGlmCi0gCi0gI2lmbmRlZiBPUEVOU1NMX05PX0VOR0lORQot IC8qIG5vbi1OVUxMIGlmIGRlZmF1bHRfUkFORF9tZXRoIGlzIEVOR0lORS1wcm92aWRlZCAqLwot QEAgLTk1OSwzICs5NjMsMTUgQEAgaW50IFJBTkRfc3RhdHVzKHZvaWQpCi0gICAgICAgICByZXR1 cm4gbWV0aC0+c3RhdHVzKCk7Ci0gICAgIHJldHVybiAwOwotIH0KLSsKLSsjaWZkZWYgT1BFTlNT TF9GSVBTCi0rdm9pZCBSQU5EX3NldF9maXBzX2RyYmdfdHlwZShpbnQgdHlwZSwgaW50IGZsYWdz KQotK3sgICAvKiBqdXN0IGEgc3R1YiBmb3IgQUJJIGNvbXBhdGliaWxpdHkgKi8KLSt9Ci0rCi0r aW50IFJBTkRfaW5pdF9maXBzKHZvaWQpCi0rewotKyAgIC8qIGp1c3QgYSBzdHViIGZvciBBQkkg Y29tcGF0aWJpbGl0eSAqLwotKyAgICByZXR1cm4gMTsKLSt9Ci0rI2VuZGlmCi1kaWZmIC11cCBv cGVuc3NsLTEuMS4xai9jcnlwdG8vcnNhL3JzYV9jcnB0LmMuZmlwcyBvcGVuc3NsLTEuMS4xai9j cnlwdG8vcnNhL3JzYV9jcnB0LmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vcnNhL3JzYV9j cnB0LmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5z c2wtMS4xLjFqL2NyeXB0by9yc2EvcnNhX2NycHQuYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwMjcz NDU1MCArMDEwMAotQEAgLTI3LDI0ICsyNyw1MiBAQCBpbnQgUlNBX3NpemUoY29uc3QgUlNBICpy KQotIGludCBSU0FfcHVibGljX2VuY3J5cHQoaW50IGZsZW4sIGNvbnN0IHVuc2lnbmVkIGNoYXIg KmZyb20sIHVuc2lnbmVkIGNoYXIgKnRvLAotICAgICAgICAgICAgICAgICAgICAgICAgUlNBICpy c2EsIGludCBwYWRkaW5nKQotIHsKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rICAgIGlmIChGSVBT X21vZGUoKSAmJiAhKHJzYS0+bWV0aC0+ZmxhZ3MgJiBSU0FfRkxBR19GSVBTX01FVEhPRCkKLSsg ICAgICAgICYmICEocnNhLT5mbGFncyAmIFJTQV9GTEFHX05PTl9GSVBTX0FMTE9XKSkgewotKyAg ICAgICAgUlNBZXJyKFJTQV9GX1JTQV9QVUJMSUNfRU5DUllQVCwgUlNBX1JfTk9OX0ZJUFNfUlNB X01FVEhPRCk7Ci0rICAgICAgICByZXR1cm4gLTE7Ci0rICAgIH0KLSsjZW5kaWYKLSAgICAgcmV0 dXJuIHJzYS0+bWV0aC0+cnNhX3B1Yl9lbmMoZmxlbiwgZnJvbSwgdG8sIHJzYSwgcGFkZGluZyk7 Ci0gfQotIAotIGludCBSU0FfcHJpdmF0ZV9lbmNyeXB0KGludCBmbGVuLCBjb25zdCB1bnNpZ25l ZCBjaGFyICpmcm9tLAotICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKnRv LCBSU0EgKnJzYSwgaW50IHBhZGRpbmcpCi0gewotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAg aWYgKEZJUFNfbW9kZSgpICYmICEocnNhLT5mbGFncyAmIFJTQV9GTEFHX05PTl9GSVBTX0FMTE9X KSkgewotKyAgICAgICAgUlNBZXJyKFJTQV9GX1JTQV9QUklWQVRFX0VOQ1JZUFQsCi0rICAgICAg ICAgICAgICAgUlNBX1JfT1BFUkFUSU9OX05PVF9BTExPV0VEX0lOX0ZJUFNfTU9ERSk7Ci0rICAg ICAgICByZXR1cm4gLTE7Ci0rICAgIH0KLSsjZW5kaWYKLSAgICAgcmV0dXJuIHJzYS0+bWV0aC0+ cnNhX3ByaXZfZW5jKGZsZW4sIGZyb20sIHRvLCByc2EsIHBhZGRpbmcpOwotIH0KLSAKLSBpbnQg UlNBX3ByaXZhdGVfZGVjcnlwdChpbnQgZmxlbiwgY29uc3QgdW5zaWduZWQgY2hhciAqZnJvbSwK LSAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICp0bywgUlNBICpyc2EsIGlu dCBwYWRkaW5nKQotIHsKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rICAgIGlmIChGSVBTX21vZGUo KSAmJiAhKHJzYS0+bWV0aC0+ZmxhZ3MgJiBSU0FfRkxBR19GSVBTX01FVEhPRCkKLSsgICAgICAg ICYmICEocnNhLT5mbGFncyAmIFJTQV9GTEFHX05PTl9GSVBTX0FMTE9XKSkgewotKyAgICAgICAg UlNBZXJyKFJTQV9GX1JTQV9QUklWQVRFX0RFQ1JZUFQsIFJTQV9SX05PTl9GSVBTX1JTQV9NRVRI T0QpOwotKyAgICAgICAgcmV0dXJuIC0xOwotKyAgICB9Ci0rI2VuZGlmCi0gICAgIHJldHVybiBy c2EtPm1ldGgtPnJzYV9wcml2X2RlYyhmbGVuLCBmcm9tLCB0bywgcnNhLCBwYWRkaW5nKTsKLSB9 Ci0gCi0gaW50IFJTQV9wdWJsaWNfZGVjcnlwdChpbnQgZmxlbiwgY29uc3QgdW5zaWduZWQgY2hh ciAqZnJvbSwgdW5zaWduZWQgY2hhciAqdG8sCi0gICAgICAgICAgICAgICAgICAgICAgICBSU0Eg KnJzYSwgaW50IHBhZGRpbmcpCi0gewotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgaWYgKEZJ UFNfbW9kZSgpICYmICEocnNhLT5mbGFncyAmIFJTQV9GTEFHX05PTl9GSVBTX0FMTE9XKSkgewot KyAgICAgICAgUlNBZXJyKFJTQV9GX1JTQV9QVUJMSUNfREVDUllQVCwKLSsgICAgICAgICAgICAg ICBSU0FfUl9PUEVSQVRJT05fTk9UX0FMTE9XRURfSU5fRklQU19NT0RFKTsKLSsgICAgICAgIHJl dHVybiAtMTsKLSsgICAgfQotKyNlbmRpZgotICAgICByZXR1cm4gcnNhLT5tZXRoLT5yc2FfcHVi X2RlYyhmbGVuLCBmcm9tLCB0bywgcnNhLCBwYWRkaW5nKTsKLSB9Ci0gCi1kaWZmIC11cCBvcGVu c3NsLTEuMS4xai9jcnlwdG8vcnNhL3JzYV9lcnIuYy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0 by9yc2EvcnNhX2Vyci5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL3JzYS9yc2FfZXJyLmMu ZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4x LjFqL2NyeXB0by9yc2EvcnNhX2Vyci5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAyNzM0NTUwICsw MTAwCi1AQCAtMTYsNiArMTYsOCBAQAotIHN0YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEgUlNB X3N0cl9mdW5jdHNbXSA9IHsKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfUlNBLCBSU0FfRl9DSEVD S19QQURESU5HX01ELCAwKSwgImNoZWNrX3BhZGRpbmdfbWQifSwKLSAgICAge0VSUl9QQUNLKEVS Ul9MSUJfUlNBLCBSU0FfRl9FTkNPREVfUEtDUzEsIDApLCAiZW5jb2RlX3BrY3MxIn0sCi0rICAg IHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgUlNBX0ZfRklQU19SU0FfQlVJTFRJTl9LRVlHRU4sIDAp LAotKyAgICAgImZpcHNfcnNhX2J1aWx0aW5fa2V5Z2VuIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJf TElCX1JTQSwgUlNBX0ZfSU5UX1JTQV9WRVJJRlksIDApLCAiaW50X3JzYV92ZXJpZnkifSwKLSAg ICAge0VSUl9QQUNLKEVSUl9MSUJfUlNBLCBSU0FfRl9PTERfUlNBX1BSSVZfREVDT0RFLCAwKSwK LSAgICAgICJvbGRfcnNhX3ByaXZfZGVjb2RlIn0sCi1AQCAtMzIsNiArMzQsOSBAQCBzdGF0aWMg Y29uc3QgRVJSX1NUUklOR19EQVRBIFJTQV9zdHJfZnVuCi0gICAgIHtFUlJfUEFDSyhFUlJfTElC X1JTQSwgUlNBX0ZfUlNBX0NIRUNLX0tFWV9FWCwgMCksICJSU0FfY2hlY2tfa2V5X2V4In0sCi0g ICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgUlNBX0ZfUlNBX0NNU19ERUNSWVBULCAwKSwgInJz YV9jbXNfZGVjcnlwdCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9SU0EsIFJTQV9GX1JTQV9D TVNfVkVSSUZZLCAwKSwgInJzYV9jbXNfdmVyaWZ5In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElC X1JTQSwgUlNBX0ZfUlNBX0dFTkVSQVRFX0tFWV9FWCwgMCksICJSU0FfZ2VuZXJhdGVfa2V5X2V4 In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgUlNBX0ZfUlNBX0dFTkVSQVRFX01VTFRJ X1BSSU1FX0tFWSwgMCksCi0rICAgICAiUlNBX2dlbmVyYXRlX211bHRpX3ByaW1lX2tleSJ9LAot ICAgICB7RVJSX1BBQ0soRVJSX0xJQl9SU0EsIFJTQV9GX1JTQV9JVEVNX1ZFUklGWSwgMCksICJy c2FfaXRlbV92ZXJpZnkifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfUlNBLCBSU0FfRl9SU0Ff TUVUSF9EVVAsIDApLCAiUlNBX21ldGhfZHVwIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX1JT QSwgUlNBX0ZfUlNBX01FVEhfTkVXLCAwKSwgIlJTQV9tZXRoX25ldyJ9LAotQEAgLTkwLDkgKzk1 LDEzIEBAIHN0YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEgUlNBX3N0cl9mdW4KLSAgICAge0VS Ul9QQUNLKEVSUl9MSUJfUlNBLCBSU0FfRl9SU0FfUFJJTlRfRlAsIDApLCAiUlNBX3ByaW50X2Zw In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgUlNBX0ZfUlNBX1BSSVZfREVDT0RFLCAw KSwgInJzYV9wcml2X2RlY29kZSJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9SU0EsIFJTQV9G X1JTQV9QUklWX0VOQ09ERSwgMCksICJyc2FfcHJpdl9lbmNvZGUifSwKLSsgICAge0VSUl9QQUNL KEVSUl9MSUJfUlNBLCBSU0FfRl9SU0FfUFJJVkFURV9ERUNSWVBULCAwKSwgIlJTQV9wcml2YXRl X2RlY3J5cHQifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfUlNBLCBSU0FfRl9SU0FfUFJJVkFU RV9FTkNSWVBULCAwKSwgIlJTQV9wcml2YXRlX2VuY3J5cHQifSwKLSAgICAge0VSUl9QQUNLKEVS Ul9MSUJfUlNBLCBSU0FfRl9SU0FfUFNTX0dFVF9QQVJBTSwgMCksICJyc2FfcHNzX2dldF9wYXJh bSJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9SU0EsIFJTQV9GX1JTQV9QU1NfVE9fQ1RYLCAw KSwgInJzYV9wc3NfdG9fY3R4In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgUlNBX0Zf UlNBX1BVQl9ERUNPREUsIDApLCAicnNhX3B1Yl9kZWNvZGUifSwKLSsgICAge0VSUl9QQUNLKEVS Ul9MSUJfUlNBLCBSU0FfRl9SU0FfUFVCTElDX0RFQ1JZUFQsIDApLCAiUlNBX3B1YmxpY19kZWNy eXB0In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgUlNBX0ZfUlNBX1BVQkxJQ19FTkNS WVBULCAwKSwgIlJTQV9wdWJsaWNfZW5jcnlwdCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9S U0EsIFJTQV9GX1JTQV9TRVRVUF9CTElORElORywgMCksICJSU0Ffc2V0dXBfYmxpbmRpbmcifSwK LSAgICAge0VSUl9QQUNLKEVSUl9MSUJfUlNBLCBSU0FfRl9SU0FfU0lHTiwgMCksICJSU0Ffc2ln biJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9SU0EsIFJTQV9GX1JTQV9TSUdOX0FTTjFfT0NU RVRfU1RSSU5HLCAwKSwKLUBAIC0xMDIsNiArMTExLDggQEAgc3RhdGljIGNvbnN0IEVSUl9TVFJJ TkdfREFUQSBSU0Ffc3RyX2Z1bgotICAgICAgIlJTQV92ZXJpZnlfQVNOMV9PQ1RFVF9TVFJJTkci fSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfUlNBLCBSU0FfRl9SU0FfVkVSSUZZX1BLQ1MxX1BT U19NR0YxLCAwKSwKLSAgICAgICJSU0FfdmVyaWZ5X1BLQ1MxX1BTU19tZ2YxIn0sCi0rICAgIHtF UlJfUEFDSyhFUlJfTElCX1JTQSwgUlNBX0ZfUlNBX1NFVF9ERUZBVUxUX01FVEhPRCwgMCksICJS U0Ffc2V0X2RlZmF1bHRfbWV0aG9kIn0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgUlNB X0ZfUlNBX1NFVF9NRVRIT0QsIDApLCAiUlNBX3NldF9tZXRob2QifSwKLSAgICAge0VSUl9QQUNL KEVSUl9MSUJfUlNBLCBSU0FfRl9TRVRVUF9UQlVGLCAwKSwgInNldHVwX3RidWYifSwKLSAgICAg ezAsIE5VTEx9Ci0gfTsKLUBAIC0xODMsNiArMTk0LDcgQEAgc3RhdGljIGNvbnN0IEVSUl9TVFJJ TkdfREFUQSBSU0Ffc3RyX3JlYQotICAgICAibXAgZXhwb25lbnQgbm90IGNvbmdydWVudCB0byBk In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgMCwgUlNBX1JfTVBfUl9OT1RfUFJJTUUp LCAibXAgciBub3QgcHJpbWUifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfUlNBLCAwLCBSU0Ff Ul9OT19QVUJMSUNfRVhQT05FTlQpLCAibm8gcHVibGljIGV4cG9uZW50In0sCi0rICAgIHtFUlJf UEFDSyhFUlJfTElCX1JTQSwgMCwgUlNBX1JfTk9OX0ZJUFNfUlNBX01FVEhPRCksICJub24gRklQ UyByc2EgbWV0aG9kIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgMCwgUlNBX1JfTlVM TF9CRUZPUkVfQkxPQ0tfTUlTU0lORyksCi0gICAgICJudWxsIGJlZm9yZSBibG9jayBtaXNzaW5n In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgMCwgUlNBX1JfTl9ET0VTX05PVF9FUVVB TF9QUk9EVUNUX09GX1BSSU1FUyksCi1AQCAtMTkxLDYgKzIwMyw4IEBAIHN0YXRpYyBjb25zdCBF UlJfU1RSSU5HX0RBVEEgUlNBX3N0cl9yZWEKLSAgICAgIm4gZG9lcyBub3QgZXF1YWwgcCBxIn0s Ci0gICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgMCwgUlNBX1JfT0FFUF9ERUNPRElOR19FUlJP UiksCi0gICAgICJvYWVwIGRlY29kaW5nIGVycm9yIn0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElC X1JTQSwgMCwgUlNBX1JfT1BFUkFUSU9OX05PVF9BTExPV0VEX0lOX0ZJUFNfTU9ERSksCi0rICAg ICJvcGVyYXRpb24gbm90IGFsbG93ZWQgaW4gRklQUyBtb2RlIn0sCi0gICAgIHtFUlJfUEFDSyhF UlJfTElCX1JTQSwgMCwgUlNBX1JfT1BFUkFUSU9OX05PVF9TVVBQT1JURURfRk9SX1RISVNfS0VZ VFlQRSksCi0gICAgICJvcGVyYXRpb24gbm90IHN1cHBvcnRlZCBmb3IgdGhpcyBrZXl0eXBlIn0s Ci0gICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgMCwgUlNBX1JfUEFERElOR19DSEVDS19GQUlM RUQpLAotQEAgLTIyNiw2ICsyNDAsOCBAQCBzdGF0aWMgY29uc3QgRVJSX1NUUklOR19EQVRBIFJT QV9zdHJfcmVhCi0gICAgICJ1bnN1cHBvcnRlZCBtYXNrIGFsZ29yaXRobSJ9LAotICAgICB7RVJS X1BBQ0soRVJSX0xJQl9SU0EsIDAsIFJTQV9SX1VOU1VQUE9SVEVEX01BU0tfUEFSQU1FVEVSKSwK LSAgICAgInVuc3VwcG9ydGVkIG1hc2sgcGFyYW1ldGVyIn0sCi0rICAgIHtFUlJfUEFDSyhFUlJf TElCX1JTQSwgMCwgUlNBX1JfVU5TVVBQT1JURURfUEFSQU1FVEVSUyksCi0rICAgICJ1bnN1cHBv cnRlZCBwYXJhbWV0ZXJzIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX1JTQSwgMCwgUlNBX1Jf VU5TVVBQT1JURURfU0lHTkFUVVJFX1RZUEUpLAotICAgICAidW5zdXBwb3J0ZWQgc2lnbmF0dXJl IHR5cGUifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfUlNBLCAwLCBSU0FfUl9WQUxVRV9NSVNT SU5HKSwgInZhbHVlIG1pc3NpbmcifSwKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9y c2EvcnNhX2dlbi5jLmZpcHMgb3BlbnNzbC0xLjEuMWovY3J5cHRvL3JzYS9yc2FfZ2VuLmMKLS0t LSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vcnNhL3JzYV9nZW4uYy5maXBzCTIwMjEtMDItMTYgMTY6 MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL3JzYS9yc2Ff Z2VuLmMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4yMDI3MzQ1NTAgKzAxMDAKLUBAIC0xOCw2ICsxOCw3 NiBAQAotICNpbmNsdWRlICJpbnRlcm5hbC9jcnlwdGxpYi5oIgotICNpbmNsdWRlIDxvcGVuc3Ns L2JuLmg+Ci0gI2luY2x1ZGUgInJzYV9sb2NhbC5oIgotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsj IGluY2x1ZGUgPG9wZW5zc2wvZmlwcy5oPgotKyMgaW5jbHVkZSAiY3J5cHRvL2ZpcHMuaCIKLSsK LStpbnQgZmlwc19jaGVja19yc2EoUlNBICpyc2EpCi0rewotKyAgICBjb25zdCB1bnNpZ25lZCBj aGFyIHRic1tdID0gIlJTQSBQYWlyd2lzZSBDaGVjayBEYXRhIjsKLSsgICAgdW5zaWduZWQgY2hh ciAqY3RidWYgPSBOVUxMLCAqcHRidWYgPSBOVUxMOwotKyAgICBpbnQgbGVuLCByZXQgPSAwOwot KyAgICBFVlBfUEtFWSAqcGs7Ci0rCi0rICAgIGlmICgocGsgPSBFVlBfUEtFWV9uZXcoKSkgPT0g TlVMTCkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBFVlBfUEtFWV9zZXQxX1JTQShwaywg cnNhKTsKLSsKLSsgICAgLyogUGVyZm9ybSBwYWlyd2lzZSBjb25zaXN0ZW5jeSBzaWduYXR1cmUg dGVzdCAqLwotKyAgICBpZiAoIWZpcHNfcGtleV9zaWduYXR1cmVfdGVzdChwaywgdGJzLCAtMSwK LSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgMCwgRVZQX3NoYTI1Nigp LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFVlBfTURfQ1RYX0ZMQUdfUEFE X1BLQ1MxLCBOVUxMKQotKyAgICAgICAgfHwgIWZpcHNfcGtleV9zaWduYXR1cmVfdGVzdChwaywg dGJzLCAtMSwgTlVMTCwgMCwgRVZQX3NoYTI1NigpLAotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBFVlBfTURfQ1RYX0ZMQUdfUEFEX1BTUywgTlVMTCkpCi0rICAgICAgICBn b3RvIGVycjsKLSsgICAgLyogTm93IHBlcmZvcm0gcGFpcndpc2UgY29uc2lzdGVuY3kgZW5jcnlw dC9kZWNyeXB0IHRlc3QgKi8KLSsgICAgY3RidWYgPSBPUEVOU1NMX21hbGxvYyhSU0Ffc2l6ZShy c2EpKTsKLSsgICAgaWYgKCFjdGJ1ZikKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBsZW4g PQotKyAgICAgICAgUlNBX3B1YmxpY19lbmNyeXB0KHNpemVvZih0YnMpIC0gMSwgdGJzLCBjdGJ1 ZiwgcnNhLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFJTQV9QS0NTMV9QQURESU5HKTsK LSsgICAgaWYgKGxlbiA8PSAwKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIC8qIENoZWNrIGNp cGhlcnRleHQgZG9lc24ndCBtYXRjaCBwbGFpbnRleHQgKi8KLSsgICAgaWYgKChsZW4gPT0gKHNp emVvZih0YnMpIC0gMSkpICYmICFtZW1jbXAodGJzLCBjdGJ1ZiwgbGVuKSkKLSsgICAgICAgIGdv dG8gZXJyOwotKyAgICBwdGJ1ZiA9IE9QRU5TU0xfbWFsbG9jKFJTQV9zaXplKHJzYSkpOwotKwot KyAgICBpZiAoIXB0YnVmKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGxlbiA9IFJTQV9wcml2 YXRlX2RlY3J5cHQobGVuLCBjdGJ1ZiwgcHRidWYsIHJzYSwgUlNBX1BLQ1MxX1BBRERJTkcpOwot KyAgICBpZiAobGVuICE9IChzaXplb2YodGJzKSAtIDEpKQotKyAgICAgICAgZ290byBlcnI7Ci0r ICAgIGlmIChtZW1jbXAocHRidWYsIHRicywgbGVuKSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwot KyAgICByZXQgPSAxOwotKwotKyAgICBpZiAoIXB0YnVmKQotKyAgICAgICAgZ290byBlcnI7Ci0r Ci0rIGVycjoKLSsgICAgaWYgKHJldCA9PSAwKSB7Ci0rICAgICAgICBmaXBzX3NldF9zZWxmdGVz dF9mYWlsKCk7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX0NIRUNLX1JTQSwgRklQU19S X1BBSVJXSVNFX1RFU1RfRkFJTEVEKTsKLSsgICAgfQotKwotKyAgICBpZiAoY3RidWYpCi0rICAg ICAgICBPUEVOU1NMX2ZyZWUoY3RidWYpOwotKyAgICBpZiAocHRidWYpCi0rICAgICAgICBPUEVO U1NMX2ZyZWUocHRidWYpOwotKyAgICBpZiAocGspCi0rICAgICAgICBFVlBfUEtFWV9mcmVlKHBr KTsKLSsKLSsgICAgcmV0dXJuIHJldDsKLSt9Ci0rCi0rc3RhdGljIGludCBmaXBzX3JzYV9idWls dGluX2tleWdlbihSU0EgKnJzYSwgaW50IGJpdHMsIEJJR05VTSAqZV92YWx1ZSwKLSsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJOX0dFTkNCICpjYik7Ci0rI2VuZGlmCi0gCi0g c3RhdGljIGludCByc2FfYnVpbHRpbl9rZXlnZW4oUlNBICpyc2EsIGludCBiaXRzLCBpbnQgcHJp bWVzLCBCSUdOVU0gKmVfdmFsdWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQk5f R0VOQ0IgKmNiKTsKLUBAIC0zMSw2ICsxMDEsMTMgQEAgc3RhdGljIGludCByc2FfYnVpbHRpbl9r ZXlnZW4oUlNBICpyc2EsCi0gICovCi0gaW50IFJTQV9nZW5lcmF0ZV9rZXlfZXgoUlNBICpyc2Es IGludCBiaXRzLCBCSUdOVU0gKmVfdmFsdWUsIEJOX0dFTkNCICpjYikKLSB7Ci0rI2lmZGVmIE9Q RU5TU0xfRklQUwotKyAgICBpZiAoRklQU19tb2RlKCkgJiYgIShyc2EtPm1ldGgtPmZsYWdzICYg UlNBX0ZMQUdfRklQU19NRVRIT0QpCi0rICAgICAgICAmJiAhKHJzYS0+ZmxhZ3MgJiBSU0FfRkxB R19OT05fRklQU19BTExPVykpIHsKLSsgICAgICAgIFJTQWVycihSU0FfRl9SU0FfR0VORVJBVEVf S0VZX0VYLCBSU0FfUl9OT05fRklQU19SU0FfTUVUSE9EKTsKLSsgICAgICAgIHJldHVybiAwOwot KyAgICB9Ci0rI2VuZGlmCi0gICAgIGlmIChyc2EtPm1ldGgtPnJzYV9rZXlnZW4gIT0gTlVMTCkK LSAgICAgICAgIHJldHVybiByc2EtPm1ldGgtPnJzYV9rZXlnZW4ocnNhLCBiaXRzLCBlX3ZhbHVl LCBjYik7Ci0gCi1AQCAtNDEsNiArMTE4LDEzIEBAIGludCBSU0FfZ2VuZXJhdGVfa2V5X2V4KFJT QSAqcnNhLCBpbnQgYmkKLSBpbnQgUlNBX2dlbmVyYXRlX211bHRpX3ByaW1lX2tleShSU0EgKnJz YSwgaW50IGJpdHMsIGludCBwcmltZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgQklHTlVNICplX3ZhbHVlLCBCTl9HRU5DQiAqY2IpCi0gewotKyNpZmRlZiBPUEVOU1NMX0ZJ UFMKLSsgICAgaWYgKEZJUFNfbW9kZSgpICYmICEocnNhLT5tZXRoLT5mbGFncyAmIFJTQV9GTEFH X0ZJUFNfTUVUSE9EKQotKyAgICAgICAgJiYgIShyc2EtPmZsYWdzICYgUlNBX0ZMQUdfTk9OX0ZJ UFNfQUxMT1cpKSB7Ci0rICAgICAgICBSU0FlcnIoUlNBX0ZfUlNBX0dFTkVSQVRFX01VTFRJX1BS SU1FX0tFWSwgUlNBX1JfTk9OX0ZJUFNfUlNBX01FVEhPRCk7Ci0rICAgICAgICByZXR1cm4gMDsK LSsgICAgfQotKyNlbmRpZgotICAgICAvKiBtdWx0aS1wcmltZSBpcyBvbmx5IHN1cHBvcnRlZCB3 aXRoIHRoZSBidWlsdGluIGtleSBnZW5lcmF0aW9uICovCi0gICAgIGlmIChyc2EtPm1ldGgtPnJz YV9tdWx0aV9wcmltZV9rZXlnZW4gIT0gTlVMTCkgewotICAgICAgICAgcmV0dXJuIHJzYS0+bWV0 aC0+cnNhX211bHRpX3ByaW1lX2tleWdlbihyc2EsIGJpdHMsIHByaW1lcywKLUBAIC01NywxMCAr MTQxLDI4NSBAQCBpbnQgUlNBX2dlbmVyYXRlX211bHRpX3ByaW1lX2tleShSU0EgKnJzCi0gICAg ICAgICBlbHNlCi0gICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgIH0KLS0KLSsjaWZkZWYgT1BF TlNTTF9GSVBTCi0rICAgIGlmIChGSVBTX21vZGUoKSkgewotKyAgICAgICAgaWYgKHByaW1lcyAh PSAyKSB7Ci0rICAgICAgICAgICAgUlNBZXJyKFJTQV9GX1JTQV9HRU5FUkFURV9NVUxUSV9QUklN RV9LRVksIFJTQV9SX1VOU1VQUE9SVEVEX1BBUkFNRVRFUlMpOwotKyAgICAgICAgICAgIHJldHVy biAwOwotKyAgICAgICAgfQotKyAgICAgICAgcmV0dXJuIGZpcHNfcnNhX2J1aWx0aW5fa2V5Z2Vu KHJzYSwgYml0cywgZV92YWx1ZSwgY2IpOwotKyAgICB9Ci0rI2VuZGlmCi0gICAgIHJldHVybiBy c2FfYnVpbHRpbl9rZXlnZW4ocnNhLCBiaXRzLCBwcmltZXMsIGVfdmFsdWUsIGNiKTsKLSB9Ci0g Ci0rI2lmZGVmIE9QRU5TU0xfRklQUwotK3N0YXRpYyBpbnQgZmlwc19yc2FfYnVpbHRpbl9rZXln ZW4oUlNBICpyc2EsIGludCBiaXRzLCBCSUdOVU0gKmVfdmFsdWUsCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBCTl9HRU5DQiAqY2IpCi0rewotKyAgICBCSUdOVU0gKnIwID0g TlVMTCwgKnIxID0gTlVMTCwgKnIyID0gTlVMTCwgKnIzID0gTlVMTCwgKnRtcDsKLSsgICAgQk5f Q1RYICpjdHggPSBOVUxMOwotKyAgICBpbnQgb2sgPSAtMTsKLSsgICAgaW50IGk7Ci0rICAgIGlu dCBuID0gMDsKLSsgICAgaW50IHRlc3QgPSAwOwotKyAgICBpbnQgcGJpdHMgPSBiaXRzIC8gMjsK LSsgICAgdW5zaWduZWQgbG9uZyBlcnJvciA9IDA7Ci0rCi0rICAgIGlmIChGSVBTX3NlbGZ0ZXN0 X2ZhaWxlZCgpKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX1JTQV9CVUlMVElOX0tF WUdFTiwgRklQU19SX0ZJUFNfU0VMRlRFU1RfRkFJTEVEKTsKLSsgICAgICAgIHJldHVybiAwOwot KyAgICB9Ci0rCi0rICAgIGlmIChiaXRzIDwgT1BFTlNTTF9SU0FfRklQU19NSU5fTU9EVUxVU19C SVRTCi0rICAgICAgICB8fCAoZ2V0ZW52KCJPUEVOU1NMX0VORk9SQ0VfTU9EVUxVU19CSVRTIikg JiYgYml0cyA8IDIwNDgpKSB7Ci0rICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX1JTQV9CVUlM VElOX0tFWUdFTiwgRklQU19SX0tFWV9UT09fU0hPUlQpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0r ICAgIH0KLSsgICAgaWYgKChwYml0cyAmIDB4RkYpICE9IDApIHsKLSsgICAgICAgIEZJUFNlcnIo RklQU19GX0ZJUFNfUlNBX0JVSUxUSU5fS0VZR0VOLCBGSVBTX1JfSU5WQUxJRF9LRVlfTEVOR1RI KTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rCi0rICAgIGN0eCA9IEJOX0NUWF9uZXco KTsKLSsgICAgaWYgKGN0eCA9PSBOVUxMKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIEJOX0NU WF9zdGFydChjdHgpOwotKyAgICByMCA9IEJOX0NUWF9nZXQoY3R4KTsKLSsgICAgcjEgPSBCTl9D VFhfZ2V0KGN0eCk7Ci0rICAgIHIyID0gQk5fQ1RYX2dldChjdHgpOwotKyAgICByMyA9IEJOX0NU WF9nZXQoY3R4KTsKLSsKLSsgICAgaWYgKHIzID09IE5VTEwpCi0rICAgICAgICBnb3RvIGVycjsK LSsKLSsgICAgLyogV2UgbmVlZCB0aGUgUlNBIGNvbXBvbmVudHMgbm9uLU5VTEwgKi8KLSsgICAg aWYgKCFyc2EtPm4gJiYgKChyc2EtPm4gPSBCTl9uZXcoKSkgPT0gTlVMTCkpCi0rICAgICAgICBn b3RvIGVycjsKLSsgICAgaWYgKCFyc2EtPmQgJiYgKChyc2EtPmQgPSBCTl9zZWN1cmVfbmV3KCkp ID09IE5VTEwpKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGlmICghcnNhLT5lICYmICgocnNh LT5lID0gQk5fbmV3KCkpID09IE5VTEwpKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGlmICgh cnNhLT5wICYmICgocnNhLT5wID0gQk5fc2VjdXJlX25ldygpKSA9PSBOVUxMKSkKLSsgICAgICAg IGdvdG8gZXJyOwotKyAgICBpZiAoIXJzYS0+cSAmJiAoKHJzYS0+cSA9IEJOX3NlY3VyZV9uZXco KSkgPT0gTlVMTCkpCi0rICAgICAgICBnb3RvIGVycjsKLSsgICAgaWYgKCFyc2EtPmRtcDEgJiYg KChyc2EtPmRtcDEgPSBCTl9zZWN1cmVfbmV3KCkpID09IE5VTEwpKQotKyAgICAgICAgZ290byBl cnI7Ci0rICAgIGlmICghcnNhLT5kbXExICYmICgocnNhLT5kbXExID0gQk5fc2VjdXJlX25ldygp KSA9PSBOVUxMKSkKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICBpZiAoIXJzYS0+aXFtcCAmJiAo KHJzYS0+aXFtcCA9IEJOX3NlY3VyZV9uZXcoKSkgPT0gTlVMTCkpCi0rICAgICAgICBnb3RvIGVy cjsKLSsKLSsgICAgaWYgKCFCTl9zZXRfd29yZChyMCwgUlNBX0Y0KSkKLSsgICAgICAgIGdvdG8g ZXJyOwotKyAgICBpZiAoQk5fY21wKGVfdmFsdWUsIHIwKSA8IDAgfHwgQk5fbnVtX2JpdHMoZV92 YWx1ZSkgPiAyNTYpIHsKLSsgICAgICAgIG9rID0gMDsgICAgICAgICAgICAgICAgIC8qIHdlIHNl dCBvdXIgb3duIGVyciAqLwotKyAgICAgICAgUlNBZXJyKFJTQV9GX0ZJUFNfUlNBX0JVSUxUSU5f S0VZR0VOLCBSU0FfUl9CQURfRV9WQUxVRSk7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQot KwotKyAgICAvKiBwcmVwYXJlIGFwcHJveGltYXRlIG1pbmltdW0gcCBhbmQgcSAqLwotKyAgICBp ZiAoIUJOX3NldF93b3JkKHIwLCAweEI1MDRGMzM0KSkKLSsgICAgICAgIGdvdG8gZXJyOwotKyAg ICBpZiAoIUJOX2xzaGlmdChyMCwgcjAsIHBiaXRzIC0gMzIpKQotKyAgICAgICAgZ290byBlcnI7 Ci0rCi0rICAgIC8qIHByZXBhcmUgbWluaW11bSBwIGFuZCBxIGRpZmZlcmVuY2UgKi8KLSsgICAg aWYgKCFCTl9vbmUocjMpKQotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIGlmICghQk5fbHNoaWZ0 KHIzLCByMywgcGJpdHMgLSAxMDApKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIEJOX2Nv cHkocnNhLT5lLCBlX3ZhbHVlKTsKLSsKLSsgICAgaWYgKCFCTl9pc196ZXJvKHJzYS0+cCkgJiYg IUJOX2lzX3plcm8ocnNhLT5xKSkKLSsgICAgICAgIHRlc3QgPSAxOwotKwotKyAgICBCTl9zZXRf ZmxhZ3MocjAsIEJOX0ZMR19DT05TVFRJTUUpOwotKyAgICBCTl9zZXRfZmxhZ3MocjEsIEJOX0ZM R19DT05TVFRJTUUpOwotKyAgICBCTl9zZXRfZmxhZ3MocjIsIEJOX0ZMR19DT05TVFRJTUUpOwot KyAgICBCTl9zZXRfZmxhZ3MocnNhLT5wLCBCTl9GTEdfQ09OU1RUSU1FKTsKLSsgICAgQk5fc2V0 X2ZsYWdzKHJzYS0+cSwgQk5fRkxHX0NPTlNUVElNRSk7Ci0rCi0rIHJldHJ5OgotKyAgICAvKiBn ZW5lcmF0ZSBwIGFuZCBxICovCi0rICAgIGZvciAoaSA9IDA7IGkgPCA1ICogcGJpdHM7IGkrKykg ewotKyBwbG9vcDoKLSsgICAgICAgIGlmICghdGVzdCkKLSsgICAgICAgICAgICBpZiAoIUJOX3Jh bmQocnNhLT5wLCBwYml0cywgMCwgMSkpCi0rICAgICAgICAgICAgICAgIGdvdG8gZXJyOwotKyAg ICAgICAgaWYgKEJOX2NtcChyc2EtPnAsIHIwKSA8IDApIHsKLSsgICAgICAgICAgICBpZiAodGVz dCkKLSsgICAgICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICAgICAgZ290byBwbG9vcDsK LSsgICAgICAgIH0KLSsKLSsgICAgICAgIGlmICghQk5fc3ViKHIyLCByc2EtPnAsIEJOX3ZhbHVl X29uZSgpKSkKLSsgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgIEVSUl9zZXRfbWFyaygp OwotKyAgICAgICAgaWYgKEJOX21vZF9pbnZlcnNlKHIxLCByMiwgcnNhLT5lLCBjdHgpICE9IE5V TEwpIHsKLSsgICAgICAgICAgICAvKiBHQ0QgPT0gMSBzaW5jZSBpbnZlcnNlIGV4aXN0cyAqLwot KyAgICAgICAgICAgIGludCByOwotKyAgICAgICAgICAgIHIgPSBCTl9pc19wcmltZV9mYXN0dGVz dF9leChyc2EtPnAsIHBiaXRzID4gMTAyNCA/IDQgOiA1LCBjdHgsIDAsCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNiKTsKLSsgICAgICAgICAgICBpZiAociA9PSAt MSB8fCAodGVzdCAmJiByIDw9IDApKQotKyAgICAgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAg ICAgICAgICBpZiAociA+IDApCi0rICAgICAgICAgICAgICAgIGJyZWFrOwotKyAgICAgICAgfSBl bHNlIHsKLSsgICAgICAgICAgICBlcnJvciA9IEVSUl9wZWVrX2xhc3RfZXJyb3IoKTsKLSsgICAg ICAgICAgICBpZiAoRVJSX0dFVF9MSUIoZXJyb3IpID09IEVSUl9MSUJfQk4KLSsgICAgICAgICAg ICAgICAgJiYgRVJSX0dFVF9SRUFTT04oZXJyb3IpID09IEJOX1JfTk9fSU5WRVJTRSkgewotKyAg ICAgICAgICAgICAgICAvKiBHQ0QgIT0gMSAqLwotKyAgICAgICAgICAgICAgICBFUlJfcG9wX3Rv X21hcmsoKTsKLSsgICAgICAgICAgICB9IGVsc2UgewotKyAgICAgICAgICAgICAgICBnb3RvIGVy cjsKLSsgICAgICAgICAgICB9Ci0rICAgICAgICB9Ci0rICAgICAgICBpZiAoIUJOX0dFTkNCX2Nh bGwoY2IsIDIsIG4rKykpCi0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsKLSsgICAg aWYgKCFCTl9HRU5DQl9jYWxsKGNiLCAzLCAwKSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAg ICBpZiAoaSA+PSA1ICogcGJpdHMpCi0rICAgICAgICAvKiBwcmltZSBub3QgZm91bmQgKi8KLSsg ICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBmb3IgKGkgPSAwOyBpIDwgNSAqIHBiaXRzOyBpKysp IHsKLSsgcWxvb3A6Ci0rICAgICAgICBpZiAoIXRlc3QpCi0rICAgICAgICAgICAgaWYgKCFCTl9y YW5kKHJzYS0+cSwgcGJpdHMsIDAsIDEpKQotKyAgICAgICAgICAgICAgICBnb3RvIGVycjsKLSsg ICAgICAgIGlmIChCTl9jbXAocnNhLT5xLCByMCkgPCAwKSB7Ci0rICAgICAgICAgICAgaWYgKHRl c3QpCi0rICAgICAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgICAgIGdvdG8gcWxvb3A7 Ci0rICAgICAgICB9Ci0rICAgICAgICBpZiAoIUJOX3N1YihyMiwgcnNhLT5xLCByc2EtPnApKQot KyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgaWYgKEJOX3VjbXAocjIsIHIzKSA8PSAw KSB7Ci0rICAgICAgICAgICAgaWYgKHRlc3QpCi0rICAgICAgICAgICAgICAgIGdvdG8gZXJyOwot KyAgICAgICAgICAgIGdvdG8gcWxvb3A7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBpZiAoIUJO X3N1YihyMiwgcnNhLT5xLCBCTl92YWx1ZV9vbmUoKSkpCi0rICAgICAgICAgICAgZ290byBlcnI7 Ci0rICAgICAgICBFUlJfc2V0X21hcmsoKTsKLSsgICAgICAgIGlmIChCTl9tb2RfaW52ZXJzZShy MSwgcjIsIHJzYS0+ZSwgY3R4KSAhPSBOVUxMKSB7Ci0rICAgICAgICAgICAgLyogR0NEID09IDEg c2luY2UgaW52ZXJzZSBleGlzdHMgKi8KLSsgICAgICAgICAgICBpbnQgcjsKLSsgICAgICAgICAg ICByID0gQk5faXNfcHJpbWVfZmFzdHRlc3RfZXgocnNhLT5xLCBwYml0cyA+IDEwMjQgPyA0IDog NSwgY3R4LCAwLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYik7 Ci0rICAgICAgICAgICAgaWYgKHIgPT0gLTEgfHwgKHRlc3QgJiYgciA8PSAwKSkKLSsgICAgICAg ICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICAgICAgaWYgKHIgPiAwKQotKyAgICAgICAgICAg ICAgICBicmVhazsKLSsgICAgICAgIH0gZWxzZSB7Ci0rICAgICAgICAgICAgZXJyb3IgPSBFUlJf cGVla19sYXN0X2Vycm9yKCk7Ci0rICAgICAgICAgICAgaWYgKEVSUl9HRVRfTElCKGVycm9yKSA9 PSBFUlJfTElCX0JOCi0rICAgICAgICAgICAgICAgICYmIEVSUl9HRVRfUkVBU09OKGVycm9yKSA9 PSBCTl9SX05PX0lOVkVSU0UpIHsKLSsgICAgICAgICAgICAgICAgLyogR0NEICE9IDEgKi8KLSsg ICAgICAgICAgICAgICAgRVJSX3BvcF90b19tYXJrKCk7Ci0rICAgICAgICAgICAgfSBlbHNlIHsK LSsgICAgICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICAgICAgfQotKyAgICAgICAgfQot KyAgICAgICAgaWYgKCFCTl9HRU5DQl9jYWxsKGNiLCAyLCBuKyspKQotKyAgICAgICAgICAgIGdv dG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIGlmICghQk5fR0VOQ0JfY2FsbChjYiwgMywgMSkpCi0r ICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgaWYgKGkgPj0gNSAqIHBiaXRzKQotKyAgICAgICAg LyogcHJpbWUgbm90IGZvdW5kICovCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgaWYgKHRl c3QpIHsKLSsgICAgICAgIC8qIGRvIG5vdCB0cnkgdG8gY2FsY3VsYXRlIHRoZSByZW1haW5pbmcg a2V5IHZhbHVlcyAqLwotKyAgICAgICAgQk5fY2xlYXIocnNhLT5uKTsKLSsgICAgICAgIG9rID0g MTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIGlmIChCTl9jbXAocnNhLT5w LCByc2EtPnEpIDwgMCkgewotKyAgICAgICAgdG1wID0gcnNhLT5wOwotKyAgICAgICAgcnNhLT5w ID0gcnNhLT5xOwotKyAgICAgICAgcnNhLT5xID0gdG1wOwotKyAgICB9Ci0rCi0rICAgIC8qIGNh bGN1bGF0ZSBuICovCi0rICAgIGlmICghQk5fbXVsKHJzYS0+biwgcnNhLT5wLCByc2EtPnEsIGN0 eCkpCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgLyogY2FsY3VsYXRlIGQgKi8KLSsgICAg aWYgKCFCTl9zdWIocjEsIHJzYS0+cCwgQk5fdmFsdWVfb25lKCkpKQotKyAgICAgICAgZ290byBl cnI7ICAgICAgICAgICAgICAgLyogcC0xICovCi0rICAgIGlmICghQk5fc3ViKHIyLCByc2EtPnEs IEJOX3ZhbHVlX29uZSgpKSkKLSsgICAgICAgIGdvdG8gZXJyOyAgICAgICAgICAgICAgIC8qIHEt MSAqLwotKwotKyAgICAvKiBub3RlIHRoYXQgY29tcHV0aW5nIGdjZCBpcyBub3Qgc2FmZSB0byB0 aW1pbmcgYXR0YWNrcyAqLwotKyAgICBpZiAoIUJOX2djZChyMCwgcjEsIHIyLCBjdHgpKQotKyAg ICAgICAgZ290byBlcnI7Ci0rCi0rICAgIHsKLSsgICAgICAgIGlmICghQk5fZGl2KHIwLCBOVUxM LCByMSwgcjAsIGN0eCkpCi0rICAgICAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgICAgICBpZiAo IUJOX211bChyMCwgcjAsIHIyLCBjdHgpKSAvKiBsY20ocC0xLCBxLTEpICovCi0rICAgICAgICAg ICAgZ290byBlcnI7Ci0rCi0rICAgICAgICBpZiAoIUJOX21vZF9pbnZlcnNlKHJzYS0+ZCwgcnNh LT5lLCByMCwgY3R4KSkgLyogZCAqLwotKyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0r Ci0rICAgIGlmIChCTl9udW1fYml0cyhyc2EtPmQpIDwgcGJpdHMpCi0rICAgICAgICBnb3RvIHJl dHJ5OyAgICAgICAgICAgICAvKiBkIGlzIHRvbyBzbWFsbCAqLwotKwotKyAgICB7Ci0rICAgICAg ICBCSUdOVU0gKmQgPSBCTl9uZXcoKTsKLSsKLSsgICAgICAgIGlmIChkID09IE5VTEwpCi0rICAg ICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICBCTl93aXRoX2ZsYWdzKGQsIHJzYS0+ZCwgQk5f RkxHX0NPTlNUVElNRSk7Ci0rCi0rICAgICAgICBpZiAoLyogY2FsY3VsYXRlIGQgbW9kIChwLTEp ICovCi0rICAgICAgICAgICAgIUJOX21vZChyc2EtPmRtcDEsIGQsIHIxLCBjdHgpCi0rICAgICAg ICAgICAgLyogY2FsY3VsYXRlIGQgbW9kIChxLTEpICovCi0rICAgICAgICAgICAgfHwgIUJOX21v ZChyc2EtPmRtcTEsIGQsIHIyLCBjdHgpKSB7Ci0rICAgICAgICAgICAgQk5fZnJlZShkKTsKLSsg ICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgIH0KLSsgICAgICAgIC8qIFdlIE1VU1QgZnJl ZSBkIGJlZm9yZSBhbnkgZnVydGhlciB1c2Ugb2YgcnNhLT5kICovCi0rICAgICAgICBCTl9mcmVl KGQpOwotKyAgICB9Ci0rCi0rICAgIC8qIGNhbGN1bGF0ZSBpbnZlcnNlIG9mIHEgbW9kIHAgKi8K LSsgICAgaWYgKCFCTl9tb2RfaW52ZXJzZShyc2EtPmlxbXAsIHJzYS0+cSwgcnNhLT5wLCBjdHgp KQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIGlmICghZmlwc19jaGVja19yc2EocnNhKSkK LSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBvayA9IDE7Ci0rIGVycjoKLSsgICAgaWYgKG9r ID09IC0xKSB7Ci0rICAgICAgICBSU0FlcnIoUlNBX0ZfRklQU19SU0FfQlVJTFRJTl9LRVlHRU4s IEVSUl9MSUJfQk4pOwotKyAgICAgICAgb2sgPSAwOwotKyAgICB9Ci0rICAgIGlmIChjdHggIT0g TlVMTCkgewotKyAgICAgICAgQk5fQ1RYX2VuZChjdHgpOwotKyAgICAgICAgQk5fQ1RYX2ZyZWUo Y3R4KTsKLSsgICAgfQotKwotKyAgICByZXR1cm4gb2s7Ci0rfQotKyNlbmRpZgotKwotIHN0YXRp YyBpbnQgcnNhX2J1aWx0aW5fa2V5Z2VuKFJTQSAqcnNhLCBpbnQgYml0cywgaW50IHByaW1lcywg QklHTlVNICplX3ZhbHVlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJOX0dFTkNC ICpjYikKLSB7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vcnNhL3JzYV9saWIuYy5m aXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9yc2EvcnNhX2xpYi5jCi0tLS0gb3BlbnNzbC0xLjEu MWovY3J5cHRvL3JzYS9yc2FfbGliLmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAw MCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9yc2EvcnNhX2xpYi5jCTIwMjEtMDMt MDMgMTI6NTc6NDIuMjAzNzM0NTU4ICswMTAwCi1AQCAtMzQsNiArMzQsMTIgQEAgaW50IFJTQV9z ZXRfbWV0aG9kKFJTQSAqcnNhLCBjb25zdCBSU0FfTQotICAgICAgKiB0byBkZWFsIHdpdGggd2hp Y2ggRU5HSU5FIGl0IGNvbWVzIGZyb20uCi0gICAgICAqLwotICAgICBjb25zdCBSU0FfTUVUSE9E ICptdG1wOwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgaWYgKEZJUFNfbW9kZSgpICYmICEo bWV0aC0+ZmxhZ3MgJiBSU0FfRkxBR19GSVBTX01FVEhPRCkpIHsKLSsgICAgICAgIFJTQWVycihS U0FfRl9SU0FfU0VUX01FVEhPRCwgUlNBX1JfTk9OX0ZJUFNfUlNBX01FVEhPRCk7Ci0rICAgICAg ICByZXR1cm4gMDsKLSsgICAgfQotKyNlbmRpZgotICAgICBtdG1wID0gcnNhLT5tZXRoOwotICAg ICBpZiAobXRtcC0+ZmluaXNoKQotICAgICAgICAgbXRtcC0+ZmluaXNoKHJzYSk7Ci1AQCAtNjYs NyArNzIsNiBAQCBSU0EgKlJTQV9uZXdfbWV0aG9kKEVOR0lORSAqZW5naW5lKQotIAotICAgICBy ZXQtPm1ldGggPSBSU0FfZ2V0X2RlZmF1bHRfbWV0aG9kKCk7Ci0gI2lmbmRlZiBPUEVOU1NMX05P X0VOR0lORQotLSAgICByZXQtPmZsYWdzID0gcmV0LT5tZXRoLT5mbGFncyAmIH5SU0FfRkxBR19O T05fRklQU19BTExPVzsKLSAgICAgaWYgKGVuZ2luZSkgewotICAgICAgICAgaWYgKCFFTkdJTkVf aW5pdChlbmdpbmUpKSB7Ci0gICAgICAgICAgICAgUlNBZXJyKFJTQV9GX1JTQV9ORVdfTUVUSE9E LCBFUlJfUl9FTkdJTkVfTElCKTsKLUBAIC04NCw4ICs4OSwxOSBAQCBSU0EgKlJTQV9uZXdfbWV0 aG9kKEVOR0lORSAqZW5naW5lKQotICAgICAgICAgfQotICAgICB9Ci0gI2VuZGlmCi0rI2lmZGVm IE9QRU5TU0xfRklQUwotKyAgICBpZiAoRklQU19tb2RlKCkgJiYgIShyZXQtPm1ldGgtPmZsYWdz ICYgUlNBX0ZMQUdfRklQU19NRVRIT0QpKSB7Ci0rICAgICAgICBSU0FlcnIoUlNBX0ZfUlNBX05F V19NRVRIT0QsIFJTQV9SX05PTl9GSVBTX1JTQV9NRVRIT0QpOwotKyMgaWZuZGVmIE9QRU5TU0xf Tk9fRU5HSU5FCi0rICAgICAgICBpZiAocmV0LT5lbmdpbmUpCi0rICAgICAgICAgICAgRU5HSU5F X2ZpbmlzaChyZXQtPmVuZ2luZSk7Ci0rIyBlbmRpZgotKyAgICAgICAgT1BFTlNTTF9mcmVlKHJl dCk7Ci0rICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAgfQotKyNlbmRpZgotIAotLSAgICByZXQt PmZsYWdzID0gcmV0LT5tZXRoLT5mbGFncyAmIH5SU0FfRkxBR19OT05fRklQU19BTExPVzsKLSsg ICAgcmV0LT5mbGFncyA9IHJldC0+bWV0aC0+ZmxhZ3M7Ci0gICAgIGlmICghQ1JZUFRPX25ld19l eF9kYXRhKENSWVBUT19FWF9JTkRFWF9SU0EsIHJldCwgJnJldC0+ZXhfZGF0YSkpIHsKLSAgICAg ICAgIGdvdG8gZXJyOwotICAgICB9Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9jcnlwdG8vcnNh L3JzYV9vc3NsLmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlwdG8vcnNhL3JzYV9vc3NsLmMKLS0t LSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vcnNhL3JzYV9vc3NsLmMuZmlwcwkyMDIxLTAyLTE2IDE2 OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9yc2EvcnNh X29zc2wuYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwMzczNDU1OCArMDEwMAotQEAgLTEyLDYgKzEy LDEwIEBACi0gI2luY2x1ZGUgInJzYV9sb2NhbC5oIgotICNpbmNsdWRlICJpbnRlcm5hbC9jb25z dGFudF90aW1lLmgiCi0gCi0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyMgaW5jbHVkZSA8b3BlbnNz bC9maXBzLmg+Ci0rI2VuZGlmCi0rCi0gc3RhdGljIGludCByc2Ffb3NzbF9wdWJsaWNfZW5jcnlw dChpbnQgZmxlbiwgY29uc3QgdW5zaWduZWQgY2hhciAqZnJvbSwKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqdG8sIFJTQSAqcnNhLCBpbnQgcGFkZGlu Zyk7Ci0gc3RhdGljIGludCByc2Ffb3NzbF9wcml2YXRlX2VuY3J5cHQoaW50IGZsZW4sIGNvbnN0 IHVuc2lnbmVkIGNoYXIgKmZyb20sCi1AQCAtNDcsNiArNTEsMTIgQEAgc3RhdGljIGNvbnN0IFJT QV9NRVRIT0QgKmRlZmF1bHRfUlNBX21ldAotIAotIHZvaWQgUlNBX3NldF9kZWZhdWx0X21ldGhv ZChjb25zdCBSU0FfTUVUSE9EICptZXRoKQotIHsKLSsjaWZkZWYgT1BFTlNTTF9GSVBTCi0rICAg IGlmIChGSVBTX21vZGUoKSAmJiAhKG1ldGgtPmZsYWdzICYgUlNBX0ZMQUdfRklQU19NRVRIT0Qp KSB7Ci0rICAgICAgICBSU0FlcnIoUlNBX0ZfUlNBX1NFVF9ERUZBVUxUX01FVEhPRCwgUlNBX1Jf Tk9OX0ZJUFNfUlNBX01FVEhPRCk7Ci0rICAgICAgICByZXR1cm47Ci0rICAgIH0KLSsjZW5kaWYK LSAgICAgZGVmYXVsdF9SU0FfbWV0aCA9IG1ldGg7Ci0gfQotIAotQEAgLTczLDYgKzgzLDIyIEBA IHN0YXRpYyBpbnQgcnNhX29zc2xfcHVibGljX2VuY3J5cHQoaW50IGYKLSAgICAgdW5zaWduZWQg Y2hhciAqYnVmID0gTlVMTDsKLSAgICAgQk5fQ1RYICpjdHggPSBOVUxMOwotIAotKyMgaWZkZWYg T1BFTlNTTF9GSVBTCi0rICAgIGlmIChGSVBTX21vZGUoKSkgewotKyAgICAgICAgaWYgKEZJUFNf c2VsZnRlc3RfZmFpbGVkKCkpIHsKLSsgICAgICAgICAgICBGSVBTZXJyKEZJUFNfRl9SU0FfT1NT TF9QVUJMSUNfRU5DUllQVCwKLSsgICAgICAgICAgICAgICAgICAgIEZJUFNfUl9GSVBTX1NFTEZU RVNUX0ZBSUxFRCk7Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rCi0rICAg ICAgICBpZiAoIShyc2EtPmZsYWdzICYgUlNBX0ZMQUdfTk9OX0ZJUFNfQUxMT1cpCi0rICAgICAg ICAgICAgJiYgKEJOX251bV9iaXRzKHJzYS0+bikgPCBPUEVOU1NMX1JTQV9GSVBTX01JTl9NT0RV TFVTX0JJVFMpKSB7Ci0rICAgICAgICAgICAgUlNBZXJyKFJTQV9GX1JTQV9PU1NMX1BVQkxJQ19F TkNSWVBULCBSU0FfUl9LRVlfU0laRV9UT09fU01BTEwpOwotKyAgICAgICAgICAgIHJldHVybiAt MTsKLSsgICAgICAgIH0KLSsgICAgfQotKyMgZW5kaWYKLSsKLSAgICAgaWYgKEJOX251bV9iaXRz KHJzYS0+bikgPiBPUEVOU1NMX1JTQV9NQVhfTU9EVUxVU19CSVRTKSB7Ci0gICAgICAgICBSU0Fl cnIoUlNBX0ZfUlNBX09TU0xfUFVCTElDX0VOQ1JZUFQsIFJTQV9SX01PRFVMVVNfVE9PX0xBUkdF KTsKLSAgICAgICAgIHJldHVybiAtMTsKLUBAIC0yNDYsNiArMjcyLDIyIEBAIHN0YXRpYyBpbnQg cnNhX29zc2xfcHJpdmF0ZV9lbmNyeXB0KGludAotICAgICBCSUdOVU0gKnVuYmxpbmQgPSBOVUxM OwotICAgICBCTl9CTElORElORyAqYmxpbmRpbmcgPSBOVUxMOwotIAotKyMgaWZkZWYgT1BFTlNT TF9GSVBTCi0rICAgIGlmIChGSVBTX21vZGUoKSkgewotKyAgICAgICAgaWYgKEZJUFNfc2VsZnRl c3RfZmFpbGVkKCkpIHsKLSsgICAgICAgICAgICBGSVBTZXJyKEZJUFNfRl9SU0FfT1NTTF9QUklW QVRFX0VOQ1JZUFQsCi0rICAgICAgICAgICAgICAgICAgICBGSVBTX1JfRklQU19TRUxGVEVTVF9G QUlMRUQpOwotKyAgICAgICAgICAgIHJldHVybiAtMTsKLSsgICAgICAgIH0KLSsKLSsgICAgICAg IGlmICghKHJzYS0+ZmxhZ3MgJiBSU0FfRkxBR19OT05fRklQU19BTExPVykKLSsgICAgICAgICAg ICAmJiAoQk5fbnVtX2JpdHMocnNhLT5uKSA8IE9QRU5TU0xfUlNBX0ZJUFNfTUlOX01PRFVMVVNf QklUUykpIHsKLSsgICAgICAgICAgICBSU0FlcnIoUlNBX0ZfUlNBX09TU0xfUFJJVkFURV9FTkNS WVBULCBSU0FfUl9LRVlfU0laRV9UT09fU01BTEwpOwotKyAgICAgICAgICAgIHJldHVybiAtMTsK LSsgICAgICAgIH0KLSsgICAgfQotKyMgZW5kaWYKLSsKLSAgICAgaWYgKChjdHggPSBCTl9DVFhf bmV3KCkpID09IE5VTEwpCi0gICAgICAgICBnb3RvIGVycjsKLSAgICAgQk5fQ1RYX3N0YXJ0KGN0 eCk7Ci1AQCAtMzgwLDYgKzQyMiwyMiBAQCBzdGF0aWMgaW50IHJzYV9vc3NsX3ByaXZhdGVfZGVj cnlwdChpbnQKLSAgICAgQklHTlVNICp1bmJsaW5kID0gTlVMTDsKLSAgICAgQk5fQkxJTkRJTkcg KmJsaW5kaW5nID0gTlVMTDsKLSAKLSsjIGlmZGVmIE9QRU5TU0xfRklQUwotKyAgICBpZiAoRklQ U19tb2RlKCkpIHsKLSsgICAgICAgIGlmIChGSVBTX3NlbGZ0ZXN0X2ZhaWxlZCgpKSB7Ci0rICAg ICAgICAgICAgRklQU2VycihGSVBTX0ZfUlNBX09TU0xfUFJJVkFURV9ERUNSWVBULAotKyAgICAg ICAgICAgICAgICAgICAgRklQU19SX0ZJUFNfU0VMRlRFU1RfRkFJTEVEKTsKLSsgICAgICAgICAg ICByZXR1cm4gLTE7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBpZiAoIShyc2EtPmZsYWdzICYg UlNBX0ZMQUdfTk9OX0ZJUFNfQUxMT1cpCi0rICAgICAgICAgICAgJiYgKEJOX251bV9iaXRzKHJz YS0+bikgPCBPUEVOU1NMX1JTQV9GSVBTX01JTl9NT0RVTFVTX0JJVFMpKSB7Ci0rICAgICAgICAg ICAgUlNBZXJyKFJTQV9GX1JTQV9PU1NMX1BSSVZBVEVfREVDUllQVCwgUlNBX1JfS0VZX1NJWkVf VE9PX1NNQUxMKTsKLSsgICAgICAgICAgICByZXR1cm4gLTE7Ci0rICAgICAgICB9Ci0rICAgIH0K LSsjIGVuZGlmCi0rCi0gICAgIGlmICgoY3R4ID0gQk5fQ1RYX25ldygpKSA9PSBOVUxMKQotICAg ICAgICAgZ290byBlcnI7Ci0gICAgIEJOX0NUWF9zdGFydChjdHgpOwotQEAgLTUwNyw2ICs1NjUs MjIgQEAgc3RhdGljIGludCByc2Ffb3NzbF9wdWJsaWNfZGVjcnlwdChpbnQgZgotICAgICB1bnNp Z25lZCBjaGFyICpidWYgPSBOVUxMOwotICAgICBCTl9DVFggKmN0eCA9IE5VTEw7Ci0gCi0rIyBp ZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgaWYgKEZJUFNfbW9kZSgpKSB7Ci0rICAgICAgICBpZiAo RklQU19zZWxmdGVzdF9mYWlsZWQoKSkgewotKyAgICAgICAgICAgIEZJUFNlcnIoRklQU19GX1JT QV9PU1NMX1BVQkxJQ19ERUNSWVBULAotKyAgICAgICAgICAgICAgICAgICAgRklQU19SX0ZJUFNf U0VMRlRFU1RfRkFJTEVEKTsKLSsgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgIH0KLSsK LSsgICAgICAgIGlmICghKHJzYS0+ZmxhZ3MgJiBSU0FfRkxBR19OT05fRklQU19BTExPVykKLSsg ICAgICAgICAgICAmJiAoQk5fbnVtX2JpdHMocnNhLT5uKSA8IE9QRU5TU0xfUlNBX0ZJUFNfTUlO X01PRFVMVVNfQklUUykpIHsKLSsgICAgICAgICAgICBSU0FlcnIoUlNBX0ZfUlNBX09TU0xfUFVC TElDX0RFQ1JZUFQsIFJTQV9SX0tFWV9TSVpFX1RPT19TTUFMTCk7Ci0rICAgICAgICAgICAgcmV0 dXJuIC0xOwotKyAgICAgICAgfQotKyAgICB9Ci0rIyBlbmRpZgotKwotICAgICBpZiAoQk5fbnVt X2JpdHMocnNhLT5uKSA+IE9QRU5TU0xfUlNBX01BWF9NT0RVTFVTX0JJVFMpIHsKLSAgICAgICAg IFJTQWVycihSU0FfRl9SU0FfT1NTTF9QVUJMSUNfREVDUllQVCwgUlNBX1JfTU9EVUxVU19UT09f TEFSR0UpOwotICAgICAgICAgcmV0dXJuIC0xOwotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovY3J5 cHRvL3JzYS9yc2FfcG1ldGguYy5maXBzIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9yc2EvcnNhX3Bt ZXRoLmMKLS0tLSBvcGVuc3NsLTEuMS4xai9jcnlwdG8vcnNhL3JzYV9wbWV0aC5jLmZpcHMJMjAy MS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9jcnlw dG8vcnNhL3JzYV9wbWV0aC5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAzNzM0NTU4ICswMTAwCi1A QCAtNzU2LDcgKzc1Niw3IEBAIHN0YXRpYyBpbnQgcGtleV9yc2Ffa2V5Z2VuKEVWUF9QS0VZX0NU WAotIAotIGNvbnN0IEVWUF9QS0VZX01FVEhPRCByc2FfcGtleV9tZXRoID0gewotICAgICBFVlBf UEtFWV9SU0EsCi0tICAgIEVWUF9QS0VZX0ZMQUdfQVVUT0FSR0xFTiwKLSsgICAgRVZQX1BLRVlf RkxBR19BVVRPQVJHTEVOIHwgRVZQX1BLRVlfRkxBR19GSVBTLAotICAgICBwa2V5X3JzYV9pbml0 LAotICAgICBwa2V5X3JzYV9jb3B5LAotICAgICBwa2V5X3JzYV9jbGVhbnVwLAotQEAgLTgzOCw3 ICs4MzgsNyBAQCBzdGF0aWMgaW50IHBrZXlfcHNzX2luaXQoRVZQX1BLRVlfQ1RYICpjCi0gCi0g Y29uc3QgRVZQX1BLRVlfTUVUSE9EIHJzYV9wc3NfcGtleV9tZXRoID0gewotICAgICBFVlBfUEtF WV9SU0FfUFNTLAotLSAgICBFVlBfUEtFWV9GTEFHX0FVVE9BUkdMRU4sCi0rICAgIEVWUF9QS0VZ X0ZMQUdfQVVUT0FSR0xFTiB8IEVWUF9QS0VZX0ZMQUdfRklQUywKLSAgICAgcGtleV9yc2FfaW5p dCwKLSAgICAgcGtleV9yc2FfY29weSwKLSAgICAgcGtleV9yc2FfY2xlYW51cCwKLWRpZmYgLXVw IG9wZW5zc2wtMS4xLjFqL2NyeXB0by9yc2EvcnNhX3NpZ24uYy5maXBzIG9wZW5zc2wtMS4xLjFq L2NyeXB0by9yc2EvcnNhX3NpZ24uYwotLS0tIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9yc2EvcnNh X3NpZ24uYy5maXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3Bl bnNzbC0xLjEuMWovY3J5cHRvL3JzYS9yc2Ffc2lnbi5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjAz NzM0NTU4ICswMTAwCi1AQCAtNzMsNiArNzMsMTMgQEAgaW50IFJTQV9zaWduKGludCB0eXBlLCBj b25zdCB1bnNpZ25lZCBjaAotICAgICB1bnNpZ25lZCBjaGFyICp0bXBzID0gTlVMTDsKLSAgICAg Y29uc3QgdW5zaWduZWQgY2hhciAqZW5jb2RlZCA9IE5VTEw7Ci0gCi0rI2lmZGVmIE9QRU5TU0xf RklQUwotKyAgICBpZiAoRklQU19tb2RlKCkgJiYgIShyc2EtPm1ldGgtPmZsYWdzICYgUlNBX0ZM QUdfRklQU19NRVRIT0QpCi0rICAgICAgICAmJiAhKHJzYS0+ZmxhZ3MgJiBSU0FfRkxBR19OT05f RklQU19BTExPVykpIHsKLSsgICAgICAgIFJTQWVycihSU0FfRl9SU0FfU0lHTiwgUlNBX1JfTk9O X0ZJUFNfUlNBX01FVEhPRCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKyNlbmRpZgot ICAgICBpZiAocnNhLT5tZXRoLT5yc2Ffc2lnbikgewotICAgICAgICAgcmV0dXJuIHJzYS0+bWV0 aC0+cnNhX3NpZ24odHlwZSwgbSwgbV9sZW4sIHNpZ3JldCwgc2lnbGVuLCByc2EpOwotICAgICB9 Ci1AQCAtMTAwLDggKzEwNyw5IEBAIGludCBSU0Ffc2lnbihpbnQgdHlwZSwgY29uc3QgdW5zaWdu ZWQgY2gKLSAgICAgICAgIFJTQWVycihSU0FfRl9SU0FfU0lHTiwgUlNBX1JfRElHRVNUX1RPT19C SUdfRk9SX1JTQV9LRVkpOwotICAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLS0gICAgZW5jcnlw dF9sZW4gPSBSU0FfcHJpdmF0ZV9lbmNyeXB0KGVuY29kZWRfbGVuLCBlbmNvZGVkLCBzaWdyZXQs IHJzYSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJTQV9QS0NTMV9Q QURESU5HKTsKLSsgICAgLyogTkI6IGNhbGwgdW5kZXJseWluZyBtZXRob2QgZGlyZWN0bHkgdG8g YXZvaWQgRklQUyBibG9ja2luZyAqLwotKyAgICBlbmNyeXB0X2xlbiA9IHJzYS0+bWV0aC0+cnNh X3ByaXZfZW5jID8gcnNhLT5tZXRoLT5yc2FfcHJpdl9lbmMoZW5jb2RlZF9sZW4sIGVuY29kZWQs IHNpZ3JldCwgcnNhLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgUlNBX1BLQ1MxX1BBRERJTkcpIDogMDsKLSAgICAg aWYgKGVuY3J5cHRfbGVuIDw9IDApCi0gICAgICAgICBnb3RvIGVycjsKLSAKLWRpZmYgLXVwIG9w ZW5zc2wtMS4xLjFqL2NyeXB0by9zaGEvc2hhMjU2LmMuZmlwcyBvcGVuc3NsLTEuMS4xai9jcnlw dG8vc2hhL3NoYTI1Ni5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRvL3NoYS9zaGEyNTYuYy5m aXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEu MWovY3J5cHRvL3NoYS9zaGEyNTYuYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwMzczNDU1OCArMDEw MAotQEAgLTE4LDYgKzE4LDkgQEAKLSAKLSBpbnQgU0hBMjI0X0luaXQoU0hBMjU2X0NUWCAqYykK LSB7Ci0rIyBpZmRlZiBPUEVOU1NMX0ZJUFMKLSsgICAgRklQU19zZWxmdGVzdF9jaGVjaygpOwot KyMgZW5kaWYKLSAgICAgbWVtc2V0KGMsIDAsIHNpemVvZigqYykpOwotICAgICBjLT5oWzBdID0g MHhjMTA1OWVkOFVMOwotICAgICBjLT5oWzFdID0gMHgzNjdjZDUwN1VMOwotQEAgLTMzLDYgKzM2 LDkgQEAgaW50IFNIQTIyNF9Jbml0KFNIQTI1Nl9DVFggKmMpCi0gCi0gaW50IFNIQTI1Nl9Jbml0 KFNIQTI1Nl9DVFggKmMpCi0gewotKyMgaWZkZWYgT1BFTlNTTF9GSVBTCi0rICAgIEZJUFNfc2Vs ZnRlc3RfY2hlY2soKTsKLSsjIGVuZGlmCi0gICAgIG1lbXNldChjLCAwLCBzaXplb2YoKmMpKTsK LSAgICAgYy0+aFswXSA9IDB4NmEwOWU2NjdVTDsKLSAgICAgYy0+aFsxXSA9IDB4YmI2N2FlODVV TDsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9zaGEvc2hhNTEyLmMuZmlwcyBvcGVu c3NsLTEuMS4xai9jcnlwdG8vc2hhL3NoYTUxMi5jCi0tLS0gb3BlbnNzbC0xLjEuMWovY3J5cHRv L3NoYS9zaGE1MTIuYy5maXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0r Kysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL3NoYS9zaGE1MTIuYwkyMDIxLTAzLTAzIDEyOjU3OjQy LjIwMzczNDU1OCArMDEwMAotQEAgLTk4LDYgKzk4LDkgQEAgaW50IHNoYTUxMl8yNTZfaW5pdChT SEE1MTJfQ1RYICpjKQotIAotIGludCBTSEEzODRfSW5pdChTSEE1MTJfQ1RYICpjKQotIHsKLSsj IGlmZGVmIE9QRU5TU0xfRklQUwotKyAgICBGSVBTX3NlbGZ0ZXN0X2NoZWNrKCk7Ci0rIyBlbmRp ZgotICAgICBjLT5oWzBdID0gVTY0KDB4Y2JiYjlkNWRjMTA1OWVkOCk7Ci0gICAgIGMtPmhbMV0g PSBVNjQoMHg2MjlhMjkyYTM2N2NkNTA3KTsKLSAgICAgYy0+aFsyXSA9IFU2NCgweDkxNTkwMTVh MzA3MGRkMTcpOwotQEAgLTExNiw2ICsxMTksOSBAQCBpbnQgU0hBMzg0X0luaXQoU0hBNTEyX0NU WCAqYykKLSAKLSBpbnQgU0hBNTEyX0luaXQoU0hBNTEyX0NUWCAqYykKLSB7Ci0rIyBpZmRlZiBP UEVOU1NMX0ZJUFMKLSsgICAgRklQU19zZWxmdGVzdF9jaGVjaygpOwotKyMgZW5kaWYKLSAgICAg Yy0+aFswXSA9IFU2NCgweDZhMDllNjY3ZjNiY2M5MDgpOwotICAgICBjLT5oWzFdID0gVTY0KDB4 YmI2N2FlODU4NGNhYTczYik7Ci0gICAgIGMtPmhbMl0gPSBVNjQoMHgzYzZlZjM3MmZlOTRmODJi KTsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2NyeXB0by9zaGEvc2hhX2xvY2FsLmguZmlwcyBv cGVuc3NsLTEuMS4xai9jcnlwdG8vc2hhL3NoYV9sb2NhbC5oCi0tLS0gb3BlbnNzbC0xLjEuMWov Y3J5cHRvL3NoYS9zaGFfbG9jYWwuaC5maXBzCTIwMjEtMDMtMDMgMTI6NTc6NDEuOTQxNzMyMzkx ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovY3J5cHRvL3NoYS9zaGFfbG9jYWwuaAkyMDIxLTAz LTAzIDEyOjU3OjQyLjIwMzczNDU1OCArMDEwMAotQEAgLTUyLDYgKzUyLDkgQEAgdm9pZCBzaGEx X2Jsb2NrX2RhdGFfb3JkZXIoU0hBX0NUWCAqYywgYwotIAotIGludCBIQVNIX0lOSVQoU0hBX0NU WCAqYykKLSB7Ci0rI2lmIGRlZmluZWQoT1BFTlNTTF9GSVBTKQotKyAgICBGSVBTX3NlbGZ0ZXN0 X2NoZWNrKCk7Ci0rI2VuZGlmCi0gICAgIG1lbXNldChjLCAwLCBzaXplb2YoKmMpKTsKLSAgICAg Yy0+aDAgPSBJTklUX0RBVEFfaDA7Ci0gICAgIGMtPmgxID0gSU5JVF9EQVRBX2gxOwotZGlmZiAt dXAgb3BlbnNzbC0xLjEuMWovZG9jL21hbjMvRFNBX2dlbmVyYXRlX3BhcmFtZXRlcnMucG9kLmZp cHMgb3BlbnNzbC0xLjEuMWovZG9jL21hbjMvRFNBX2dlbmVyYXRlX3BhcmFtZXRlcnMucG9kCi0t LS0gb3BlbnNzbC0xLjEuMWovZG9jL21hbjMvRFNBX2dlbmVyYXRlX3BhcmFtZXRlcnMucG9kLmZp cHMJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4x ai9kb2MvbWFuMy9EU0FfZ2VuZXJhdGVfcGFyYW1ldGVycy5wb2QJMjAyMS0wMy0wMyAxMjo1Nzo0 Mi4yMDM3MzQ1NTggKzAxMDAKLUBAIC0zMCw4ICszMCwxMCBAQCBCPGJpdHM+IGlzIHRoZSBsZW5n dGggb2YgdGhlIHByaW1lIHAgdG8KLSBGb3IgbGVuZ3RocyB1bmRlciAyMDQ4IGJpdHMsIHRoZSBs ZW5ndGggb2YgcSBpcyAxNjAgYml0czsgZm9yIGxlbmd0aHMKLSBncmVhdGVyIHRoYW4gb3IgZXF1 YWwgdG8gMjA0OCBiaXRzLCB0aGUgbGVuZ3RoIG9mIHEgaXMgc2V0IHRvIDI1NiBiaXRzLgotIAot LUlmIEI8c2VlZD4gaXMgTlVMTCwgdGhlIHByaW1lcyB3aWxsIGJlIGdlbmVyYXRlZCBhdCByYW5k b20uCi0tSWYgQjxzZWVkX2xlbj4gaXMgbGVzcyB0aGFuIHRoZSBsZW5ndGggb2YgcSwgYW4gZXJy b3IgaXMgcmV0dXJuZWQuCi0rSWYgQjxzZWVkPiBpcyBOVUxMLCBvciBpdCBkb2VzIG5vdCBnZW5l cmF0ZSBwcmltZXMsIHRoZSBwcmltZXMgd2lsbCBiZQotK2dlbmVyYXRlZCBhdCByYW5kb20uCi0r SWYgQjxzZWVkX2xlbj4gaXMgbGVzcyB0aGFuIHRoZSBsZW5ndGggb2YgcSwgYW4gZXJyb3IgaXMg cmV0dXJuZWQKLStpZiBvbGQgRFNBIHBhcmFtZXRlciBnZW5lcmF0aW9uIG1ldGhvZCBpcyB1c2Vk IGFzIGEgYmFja2VuZC4KLSAKLSBEU0FfZ2VuZXJhdGVfcGFyYW1ldGVyc19leCgpIHBsYWNlcyB0 aGUgaXRlcmF0aW9uIGNvdW50IGluCi0gKkI8Y291bnRlcl9yZXQ+IGFuZCBhIGNvdW50ZXIgdXNl ZCBmb3IgZmluZGluZyBhIGdlbmVyYXRvciBpbgotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovaW5j bHVkZS9jcnlwdG8vZmlwcy5oLmZpcHMgb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9jcnlwdG8vZmlw cy5oCi0tLS0gb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9jcnlwdG8vZmlwcy5oLmZpcHMJMjAyMS0w My0wMyAxMjo1Nzo0Mi4yMDI3MzQ1NTAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9pbmNsdWRl L2NyeXB0by9maXBzLmgJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4yMDI3MzQ1NTAgKzAxMDAKLUBAIC0w LDAgKzEsOTggQEAKLSsvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotKyAqIENvcHlyaWdodCAoYykgMjAwMyBUaGUg T3BlblNTTCBQcm9qZWN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSsgKgotKyAqIFJlZGlzdHJp YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91 dAotKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs b3dpbmcgY29uZGl0aW9ucwotKyAqIGFyZSBtZXQ6Ci0rICoKLSsgKiAxLiBSZWRpc3RyaWJ1dGlv bnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAg IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh aW1lci4gCi0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotKyAqICAgIHRoZSBk b2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKLSsg KiAgICBkaXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0ZXJpYWxz IG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMKLSsgKiAgICBzb2Z0d2FyZSBtdXN0 IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBwcm9k dWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0Ci0r ICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0LiAoaHR0cDovL3d3dy5vcGVuc3Ns Lm9yZy8pIgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJPcGVuU1NMIFRvb2xraXQiIGFuZCAiT3Bl blNTTCBQcm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRvCi0rICogICAgZW5kb3JzZSBvciBwcm9t b3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQKLSsgKiAgICBw cmlvciB3cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0dGVuIHBlcm1pc3Npb24sIHBsZWFzZSBj b250YWN0Ci0rICogICAgb3BlbnNzbC1jb3JlQG9wZW5zc2wub3JnLgotKyAqCi0rICogNS4gUHJv ZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgbWF5IG5vdCBiZSBjYWxsZWQgIk9wZW5T U0wiCi0rICogICAgbm9yIG1heSAiT3BlblNTTCIgYXBwZWFyIGluIHRoZWlyIG5hbWVzIHdpdGhv dXQgcHJpb3Igd3JpdHRlbgotKyAqICAgIHBlcm1pc3Npb24gb2YgdGhlIE9wZW5TU0wgUHJvamVj dC4KLSsgKgotKyAqIDYuIFJlZGlzdHJpYnV0aW9ucyBvZiBhbnkgZm9ybSB3aGF0c29ldmVyIG11 c3QgcmV0YWluIHRoZSBmb2xsb3dpbmcKLSsgKiAgICBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAi VGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQ cm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0IChodHRwOi8vd3d3 Lm9wZW5zc2wub3JnLykiCi0rICoKLSsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRI RSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycnIEFORCBBTlkKLSsgKiBFWFBSRVNTRUQgT1IgSU1Q TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0rICog SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ QVJUSUNVTEFSCi0rICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxM IFRIRSBPcGVuU1NMIFBST0pFQ1QgT1IKLSsgKiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0rICogU1BFQ0lBTCwgRVhFTVBM QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCi0rICogTk9UIExJ TUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0r ICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElP TikKLSsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI RVRIRVIgSU4gQ09OVFJBQ1QsCi0rICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQKLSsgKiBPRiBUSEUg UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0rICoKLSsgKi8KLSsKLSsjaW5jbHVkZSA8b3Bl bnNzbC9vcGVuc3NsY29uZi5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgotKwotKyNpZm5k ZWYgT1BFTlNTTF9GSVBTCi0rIyBlcnJvciBGSVBTIGlzIGRpc2FibGVkLgotKyNlbmRpZgotKwot KyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsKLStpbnQgRklQU19tb2R1bGVfbW9kZV9zZXQoaW50IG9u b2ZmKTsKLStpbnQgRklQU19tb2R1bGVfbW9kZSh2b2lkKTsKLStpbnQgRklQU19tb2R1bGVfaW5z dGFsbGVkKHZvaWQpOwotK2ludCBGSVBTX3NlbGZ0ZXN0X3NoYTEodm9pZCk7Ci0raW50IEZJUFNf c2VsZnRlc3Rfc2hhMih2b2lkKTsKLStpbnQgRklQU19zZWxmdGVzdF9zaGEzKHZvaWQpOwotK2lu dCBGSVBTX3NlbGZ0ZXN0X2Flc19jY20odm9pZCk7Ci0raW50IEZJUFNfc2VsZnRlc3RfYWVzX2dj bSh2b2lkKTsKLStpbnQgRklQU19zZWxmdGVzdF9hZXNfeHRzKHZvaWQpOwotK2ludCBGSVBTX3Nl bGZ0ZXN0X2Flcyh2b2lkKTsKLStpbnQgRklQU19zZWxmdGVzdF9kZXModm9pZCk7Ci0raW50IEZJ UFNfc2VsZnRlc3RfcnNhKHZvaWQpOwotK2ludCBGSVBTX3NlbGZ0ZXN0X2RzYSh2b2lkKTsKLStp bnQgRklQU19zZWxmdGVzdF9lY2RzYSh2b2lkKTsKLStpbnQgRklQU19zZWxmdGVzdF9lY2RoKHZv aWQpOwotK2ludCBGSVBTX3NlbGZ0ZXN0X2RoKHZvaWQpOwotK3ZvaWQgRklQU19kcmJnX3N0aWNr KGludCBvbm9mZik7Ci0raW50IEZJUFNfc2VsZnRlc3RfaG1hYyh2b2lkKTsKLStpbnQgRklQU19z ZWxmdGVzdF9kcmJnKHZvaWQpOwotK2ludCBGSVBTX3NlbGZ0ZXN0X2NtYWModm9pZCk7Ci0rCi0r aW50IGZpcHNfcGtleV9zaWduYXR1cmVfdGVzdChFVlBfUEtFWSAqcGtleSwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICp0YnMsIGludCB0YnNs ZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hh ciAqa2F0LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBr YXRsZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRVZQX01EICpk aWdlc3QsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IG1k X2ZsYWdzLCBjb25zdCBjaGFyICpmYWlsX3N0cik7Ci0rCi0raW50IGZpcHNfY2lwaGVyX3Rlc3Qo RVZQX0NJUEhFUl9DVFggKmN0eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRVZQ X0NJUEhFUiAqY2lwaGVyLAotKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25l ZCBjaGFyICprZXksCi0rICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNo YXIgKml2LAotKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpw bGFpbnRleHQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIg KmNpcGhlcnRleHQsIGludCBsZW4pOwotKwotK3ZvaWQgZmlwc19zZXRfc2VsZnRlc3RfZmFpbCh2 b2lkKTsKLSsKLSt2b2lkIEZJUFNfZ2V0X3RpbWV2ZWModW5zaWduZWQgY2hhciAqYnVmLCB1bnNp Z25lZCBsb25nICpwY3RyKTsKLSsKLSsjZW5kaWYKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2lu Y2x1ZGUvb3BlbnNzbC9jcnlwdG8uaC5maXBzIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNz bC9jcnlwdG8uaAotLS0tIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9jcnlwdG8uaC5m aXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEu MWovaW5jbHVkZS9vcGVuc3NsL2NyeXB0by5oCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjA0NzM0NTY3 ICswMTAwCi1AQCAtMzMxLDYgKzMzMSwxMSBAQCBpbnQgT1BFTlNTTF9pc3NlcnZpY2Uodm9pZCk7 Ci0gaW50IEZJUFNfbW9kZSh2b2lkKTsKLSBpbnQgRklQU19tb2RlX3NldChpbnQgcik7Ci0gCi0r IyBpZmRlZiBPUEVOU1NMX0ZJUFMKLSsvKiBkaWUgaWYgRklQUyBzZWxmdGVzdCBmYWlsZWQgKi8K LSt2b2lkIEZJUFNfc2VsZnRlc3RfY2hlY2sodm9pZCk7Ci0rIyBlbmRpZgotKwotIHZvaWQgT1BF TlNTTF9pbml0KHZvaWQpOwotICMgaWZkZWYgT1BFTlNTTF9TWVNfVU5JWAotIHZvaWQgT1BFTlNT TF9mb3JrX3ByZXBhcmUodm9pZCk7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL29w ZW5zc2wvZGhlcnIuaC5maXBzIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9kaGVyci5o Ci0tLS0gb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVuc3NsL2RoZXJyLmguZmlwcwkyMDIxLTAy LTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUv b3BlbnNzbC9kaGVyci5oCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjA0NzM0NTY3ICswMTAwCi1AQCAt MzYsNiArMzYsOSBAQCBpbnQgRVJSX2xvYWRfREhfc3RyaW5ncyh2b2lkKTsKLSAjICBkZWZpbmUg REhfRl9ESF9DTVNfREVDUllQVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDExNAotICMg IGRlZmluZSBESF9GX0RIX0NNU19TRVRfUEVFUktFWSAgICAgICAgICAgICAgICAgICAgICAgICAg MTE1Ci0gIyAgZGVmaW5lIERIX0ZfREhfQ01TX1NFVF9TSEFSRURfSU5GTyAgICAgICAgICAgICAg ICAgICAgICAxMTYKLSsjICBkZWZpbmUgREhfRl9ESF9DT01QVVRFX0tFWSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDIwMwotKyMgIGRlZmluZSBESF9GX0RIX0dFTkVSQVRFX0tFWSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgMjAyCi0rIyAgZGVmaW5lIERIX0ZfREhfR0VORVJBVEVf UEFSQU1FVEVSU19FWCAgICAgICAgICAgICAgICAgICAyMDEKLSAjICBkZWZpbmUgREhfRl9ESF9N RVRIX0RVUCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDExNwotICMgIGRlZmluZSBE SF9GX0RIX01FVEhfTkVXICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTE4Ci0gIyAg ZGVmaW5lIERIX0ZfREhfTUVUSF9TRVQxX05BTUUgICAgICAgICAgICAgICAgICAgICAgICAgICAx MTkKLUBAIC03MywxMiArNzYsMTQgQEAgaW50IEVSUl9sb2FkX0RIX3N0cmluZ3Modm9pZCk7Ci0g IyAgZGVmaW5lIERIX1JfSU5WQUxJRF9QQVJBTUVURVJfTklEICAgICAgICAgICAgICAgICAgICAg ICAxMTQKLSAjICBkZWZpbmUgREhfUl9JTlZBTElEX1BVQktFWSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIDEwMgotICMgIGRlZmluZSBESF9SX0tERl9QQVJBTUVURVJfRVJST1IgICAgICAg ICAgICAgICAgICAgICAgICAgMTEyCi0rIyAgZGVmaW5lIERIX1JfS0VZX1NJWkVfVE9PX1NNQUxM ICAgICAgICAgICAgICAgICAgICAgICAgICAyMDEKLSAjICBkZWZpbmUgREhfUl9LRVlTX05PVF9T RVQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwOAotICMgIGRlZmluZSBESF9SX01J U1NJTkdfUFVCS0VZICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTI1Ci0gIyAgZGVmaW5l IERIX1JfTU9EVUxVU19UT09fTEFSR0UgICAgICAgICAgICAgICAgICAgICAgICAgICAxMDMKLSAj ICBkZWZpbmUgREhfUl9OT1RfU1VJVEFCTEVfR0VORVJBVE9SICAgICAgICAgICAgICAgICAgICAg IDEyMAotICMgIGRlZmluZSBESF9SX05PX1BBUkFNRVRFUlNfU0VUICAgICAgICAgICAgICAgICAg ICAgICAgICAgMTA3Ci0gIyAgZGVmaW5lIERIX1JfTk9fUFJJVkFURV9WQUxVRSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAxMDAKLSsjICBkZWZpbmUgREhfUl9OT05fRklQU19NRVRIT0QgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDIwMgotICMgIGRlZmluZSBESF9SX1BBUkFNRVRFUl9F TkNPRElOR19FUlJPUiAgICAgICAgICAgICAgICAgICAgMTA1Ci0gIyAgZGVmaW5lIERIX1JfUEVF Ul9LRVlfRVJST1IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMTEKLSAjICBkZWZpbmUg REhfUl9TSEFSRURfSU5GT19FUlJPUiAgICAgICAgICAgICAgICAgICAgICAgICAgIDExMwotZGlm ZiAtdXAgb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVuc3NsL2RoLmguZmlwcyBvcGVuc3NsLTEu MS4xai9pbmNsdWRlL29wZW5zc2wvZGguaAotLS0tIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3Bl bnNzbC9kaC5oLmZpcHMJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAKLSsrKyBv cGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvZGguaAkyMDIxLTAzLTAzIDEyOjU3OjQyLjIw NDczNDU2NyArMDEwMAotQEAgLTMxLDYgKzMxLDcgQEAgZXh0ZXJuICJDIiB7Ci0gIyBlbmRpZgot IAotICMgZGVmaW5lIE9QRU5TU0xfREhfRklQU19NSU5fTU9EVUxVU19CSVRTIDEwMjQKLSsjIGRl ZmluZSBPUEVOU1NMX0RIX0ZJUFNfTUlOX01PRFVMVVNfQklUU19HRU4gMjA0OAotIAotICMgZGVm aW5lIERIX0ZMQUdfQ0FDSEVfTU9OVF9QICAgICAweDAxCi0gCi1kaWZmIC11cCBvcGVuc3NsLTEu MS4xai9pbmNsdWRlL29wZW5zc2wvZHNhZXJyLmguZmlwcyBvcGVuc3NsLTEuMS4xai9pbmNsdWRl L29wZW5zc2wvZHNhZXJyLmgKLS0tLSBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvZHNh ZXJyLmguZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5z c2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9kc2FlcnIuaAkyMDIxLTAzLTAzIDEyOjU3OjQyLjIw NDczNDU2NyArMDEwMAotQEAgLTI5LDggKzI5LDExIEBAIGludCBFUlJfbG9hZF9EU0Ffc3RyaW5n cyh2b2lkKTsKLSAgKi8KLSAjICBkZWZpbmUgRFNBX0ZfRFNBUEFSQU1TX1BSSU5UICAgICAgICAg ICAgICAgICAgICAgICAgICAgIDEwMAotICMgIGRlZmluZSBEU0FfRl9EU0FQQVJBTVNfUFJJTlRf RlAgICAgICAgICAgICAgICAgICAgICAgICAgMTAxCi0rIyAgZGVmaW5lIERTQV9GX0RTQV9CVUlM VElOX0tFWUdFTiAgICAgICAgICAgICAgICAgICAgICAgICAyMDIKLSAjICBkZWZpbmUgRFNBX0Zf RFNBX0JVSUxUSU5fUEFSQU1HRU4gICAgICAgICAgICAgICAgICAgICAgIDEyNQotICMgIGRlZmlu ZSBEU0FfRl9EU0FfQlVJTFRJTl9QQVJBTUdFTjIgICAgICAgICAgICAgICAgICAgICAgMTI2Ci0r IyAgZGVmaW5lIERTQV9GX0RTQV9HRU5FUkFURV9LRVkgICAgICAgICAgICAgICAgICAgICAgICAg ICAyMDEKLSsjICBkZWZpbmUgRFNBX0ZfRFNBX0dFTkVSQVRFX1BBUkFNRVRFUlNfRVggICAgICAg ICAgICAgICAgIDIwMAotICMgIGRlZmluZSBEU0FfRl9EU0FfRE9fU0lHTiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgMTEyCi0gIyAgZGVmaW5lIERTQV9GX0RTQV9ET19WRVJJRlkgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAxMTMKLSAjICBkZWZpbmUgRFNBX0ZfRFNBX01FVEhf RFVQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyNwotQEAgLTYwLDEwICs2MywxMyBA QCBpbnQgRVJSX2xvYWRfRFNBX3N0cmluZ3Modm9pZCk7Ci0gIyAgZGVmaW5lIERTQV9SX0RFQ09E RV9FUlJPUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMDQKLSAjICBkZWZpbmUgRFNB X1JfSU5WQUxJRF9ESUdFU1RfVFlQRSAgICAgICAgICAgICAgICAgICAgICAgIDEwNgotICMgIGRl ZmluZSBEU0FfUl9JTlZBTElEX1BBUkFNRVRFUlMgICAgICAgICAgICAgICAgICAgICAgICAgMTEy Ci0rIyAgZGVmaW5lIERTQV9SX0tFWV9TSVpFX0lOVkFMSUQgICAgICAgICAgICAgICAgICAgICAg ICAgICAyMDEKLSsjICBkZWZpbmUgRFNBX1JfS0VZX1NJWkVfVE9PX1NNQUxMICAgICAgICAgICAg ICAgICAgICAgICAgIDIwMgotICMgIGRlZmluZSBEU0FfUl9NSVNTSU5HX1BBUkFNRVRFUlMgICAg ICAgICAgICAgICAgICAgICAgICAgMTAxCi0gIyAgZGVmaW5lIERTQV9SX01JU1NJTkdfUFJJVkFU RV9LRVkgICAgICAgICAgICAgICAgICAgICAgICAxMTEKLSAjICBkZWZpbmUgRFNBX1JfTU9EVUxV U19UT09fTEFSR0UgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMwotICMgIGRlZmluZSBEU0Ff Ul9OT19QQVJBTUVURVJTX1NFVCAgICAgICAgICAgICAgICAgICAgICAgICAgMTA3Ci0rIyAgZGVm aW5lIERTQV9SX05PTl9GSVBTX0RTQV9NRVRIT0QgICAgICAgICAgICAgICAgICAgICAgICAyMDAK LSAjICBkZWZpbmUgRFNBX1JfUEFSQU1FVEVSX0VOQ09ESU5HX0VSUk9SICAgICAgICAgICAgICAg ICAgIDEwNQotICMgIGRlZmluZSBEU0FfUl9RX05PVF9QUklNRSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgMTEzCi0gIyAgZGVmaW5lIERTQV9SX1NFRURfTEVOX1NNQUxMICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAxMTAKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUv b3BlbnNzbC9kc2EuaC5maXBzIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9kc2EuaAot LS0tIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9kc2EuaC5maXBzCTIwMjEtMDItMTYg MTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVu c3NsL2RzYS5oCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjA0NzM0NTY3ICswMTAwCi1AQCAtMzEsNiAr MzEsNyBAQCBleHRlcm4gIkMiIHsKLSAjIGVuZGlmCi0gCi0gIyBkZWZpbmUgT1BFTlNTTF9EU0Ff RklQU19NSU5fTU9EVUxVU19CSVRTIDEwMjQKLSsjIGRlZmluZSBPUEVOU1NMX0RTQV9GSVBTX01J Tl9NT0RVTFVTX0JJVFNfR0VOIDIwNDgKLSAKLSAjIGRlZmluZSBEU0FfRkxBR19DQUNIRV9NT05U X1AgICAweDAxCi0gIyBpZiBPUEVOU1NMX0FQSV9DT01QQVQgPCAweDEwMTAwMDAwTAotZGlmZiAt dXAgb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVuc3NsL2V2cGVyci5oLmZpcHMgb3BlbnNzbC0x LjEuMWovaW5jbHVkZS9vcGVuc3NsL2V2cGVyci5oCi0tLS0gb3BlbnNzbC0xLjEuMWovaW5jbHVk ZS9vcGVuc3NsL2V2cGVyci5oLmZpcHMJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAx MDAKLSsrKyBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvZXZwZXJyLmgJMjAyMS0wMy0w MyAxMjo1Nzo0Mi4yMDQ3MzQ1NjcgKzAxMDAKLUBAIC0yMiwxNCArMjIsMTUgQEAgaW50IEVSUl9s b2FkX0VWUF9zdHJpbmdzKHZvaWQpOwotICAqIEVWUCBmdW5jdGlvbiBjb2Rlcy4KLSAgKi8KLSAj IGRlZmluZSBFVlBfRl9BRVNOSV9JTklUX0tFWSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MTY1Ci0tIyBkZWZpbmUgRVZQX0ZfQUVTTklfWFRTX0lOSVRfS0VZICAgICAgICAgICAgICAgICAg ICAgICAgIDIwNwotKyMgZGVmaW5lIEVWUF9GX0FFU05JX1hUU19JTklUX0tFWSAgICAgICAgICAg ICAgICAgICAgICAgICAyMzMKLSAjIGRlZmluZSBFVlBfRl9BRVNfR0NNX0NUUkwgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgMTk2Ci0gIyBkZWZpbmUgRVZQX0ZfQUVTX0lOSVRfS0VZICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzMwotICMgZGVmaW5lIEVWUF9GX0FFU19PQ0Jf Q0lQSEVSICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNjkKLSAjIGRlZmluZSBFVlBfRl9B RVNfVDRfSU5JVF9LRVkgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTc4Ci0tIyBkZWZpbmUg RVZQX0ZfQUVTX1Q0X1hUU19JTklUX0tFWSAgICAgICAgICAgICAgICAgICAgICAgIDIwOAotKyMg ZGVmaW5lIEVWUF9GX0FFU19UNF9YVFNfSU5JVF9LRVkgICAgICAgICAgICAgICAgICAgICAgICAy MzQKLSAjIGRlZmluZSBFVlBfRl9BRVNfV1JBUF9DSVBIRVIgICAgICAgICAgICAgICAgICAgICAg ICAgICAgMTcwCi0tIyBkZWZpbmUgRVZQX0ZfQUVTX1hUU19JTklUX0tFWSAgICAgICAgICAgICAg ICAgICAgICAgICAgIDIwOQotKyMgZGVmaW5lIEVWUF9GX0FFU19YVFNfQ0lQSEVSICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAyMjkKLSsjIGRlZmluZSBFVlBfRl9BRVNfWFRTX0lOSVRfS0VZ ICAgICAgICAgICAgICAgICAgICAgICAgICAgMjM1Ci0gIyBkZWZpbmUgRVZQX0ZfQUxHX01PRFVM RV9JTklUICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE3NwotICMgZGVmaW5lIEVWUF9GX0FS SUFfQ0NNX0lOSVRfS0VZICAgICAgICAgICAgICAgICAgICAgICAgICAxNzUKLSAjIGRlZmluZSBF VlBfRl9BUklBX0dDTV9DVFJMICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTk3Ci1AQCAt MTQwLDYgKzE0MSw3IEBAIGludCBFUlJfbG9hZF9FVlBfc3RyaW5ncyh2b2lkKTsKLSAjIGRlZmlu ZSBFVlBfUl9DVFJMX09QRVJBVElPTl9OT1RfSU1QTEVNRU5URUQgICAgICAgICAgICAgMTMzCi0g IyBkZWZpbmUgRVZQX1JfREFUQV9OT1RfTVVMVElQTEVfT0ZfQkxPQ0tfTEVOR1RIICAgICAgICAg IDEzOAotICMgZGVmaW5lIEVWUF9SX0RFQ09ERV9FUlJPUiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAxMTQKLSsjIGRlZmluZSBFVlBfUl9ESVNBQkxFRF9GT1JfRklQUyAgICAgICAgICAg ICAgICAgICAgICAgICAgMjAwCi0gIyBkZWZpbmUgRVZQX1JfRElGRkVSRU5UX0tFWV9UWVBFUyAg ICAgICAgICAgICAgICAgICAgICAgIDEwMQotICMgZGVmaW5lIEVWUF9SX0RJRkZFUkVOVF9QQVJB TUVURVJTICAgICAgICAgICAgICAgICAgICAgICAxNTMKLSAjIGRlZmluZSBFVlBfUl9FUlJPUl9M T0FESU5HX1NFQ1RJT04gICAgICAgICAgICAgICAgICAgICAgMTY1Ci1AQCAtMTg0LDYgKzE4Niw3 IEBAIGludCBFUlJfbG9hZF9FVlBfc3RyaW5ncyh2b2lkKTsKLSAjIGRlZmluZSBFVlBfUl9QUklW QVRFX0tFWV9ERUNPREVfRVJST1IgICAgICAgICAgICAgICAgICAgMTQ1Ci0gIyBkZWZpbmUgRVZQ X1JfUFJJVkFURV9LRVlfRU5DT0RFX0VSUk9SICAgICAgICAgICAgICAgICAgIDE0NgotICMgZGVm aW5lIEVWUF9SX1BVQkxJQ19LRVlfTk9UX1JTQSAgICAgICAgICAgICAgICAgICAgICAgICAxMDYK LSsjIGRlZmluZSBFVlBfUl9UT09fTEFSR0UgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgMjAxCi0gIyBkZWZpbmUgRVZQX1JfVU5LTk9XTl9DSVBIRVIgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIDE2MAotICMgZGVmaW5lIEVWUF9SX1VOS05PV05fRElHRVNUICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAxNjEKLSAjIGRlZmluZSBFVlBfUl9VTktOT1dOX09QVElPTiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgMTY5Ci1AQCAtMTk5LDYgKzIwMiw3IEBAIGludCBFUlJf bG9hZF9FVlBfc3RyaW5ncyh2b2lkKTsKLSAjIGRlZmluZSBFVlBfUl9VTlNVUFBPUlRFRF9TQUxU X1RZUEUgICAgICAgICAgICAgICAgICAgICAgMTI2Ci0gIyBkZWZpbmUgRVZQX1JfV1JBUF9NT0RF X05PVF9BTExPV0VEICAgICAgICAgICAgICAgICAgICAgIDE3MAotICMgZGVmaW5lIEVWUF9SX1dS T05HX0ZJTkFMX0JMT0NLX0xFTkdUSCAgICAgICAgICAgICAgICAgICAxMDkKLS0jIGRlZmluZSBF VlBfUl9YVFNfRFVQTElDQVRFRF9LRVlTICAgICAgICAgICAgICAgICAgICAgICAgMTgzCi0rIyBk ZWZpbmUgRVZQX1JfWFRTX0RBVEFfVU5JVF9JU19UT09fTEFSR0UgICAgICAgICAgICAgICAgIDE5 MQotKyMgZGVmaW5lIEVWUF9SX1hUU19EVVBMSUNBVEVEX0tFWVMgICAgICAgICAgICAgICAgICAg ICAgICAxOTIKLSAKLSAjZW5kaWYKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3Bl bnNzbC9ldnAuaC5maXBzIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9ldnAuaAotLS0t IG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9ldnAuaC5maXBzCTIwMjEtMDItMTYgMTY6 MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVuc3Ns L2V2cC5oCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjA0NzM0NTY3ICswMTAwCi1AQCAtMTMyNCw2ICsx MzI0LDkgQEAgdm9pZCBFVlBfUEtFWV9hc24xX3NldF9zZWN1cml0eV9iaXRzKEVWUAotICAqLwot ICMgZGVmaW5lIEVWUF9QS0VZX0ZMQUdfU0lHQ1RYX0NVU1RPTSAgICAgNAotIAotKy8qIERvd25z dHJlYW0gbW9kaWZpY2F0aW9uLCBsYXJnZSB2YWx1ZSB0byBhdm9pZCBjb25mbGljdCAqLwotKyMg ZGVmaW5lIEVWUF9QS0VZX0ZMQUdfRklQUyAgICAgICAgICAgICAgMHg0MDAwCi0rCi0gY29uc3Qg RVZQX1BLRVlfTUVUSE9EICpFVlBfUEtFWV9tZXRoX2ZpbmQoaW50IHR5cGUpOwotIEVWUF9QS0VZ X01FVEhPRCAqRVZQX1BLRVlfbWV0aF9uZXcoaW50IGlkLCBpbnQgZmxhZ3MpOwotIHZvaWQgRVZQ X1BLRVlfbWV0aF9nZXQwX2luZm8oaW50ICpwcGtleV9pZCwgaW50ICpwZmxhZ3MsCi1kaWZmIC11 cCBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvZmlwcy5oLmZpcHMgb3BlbnNzbC0xLjEu MWovaW5jbHVkZS9vcGVuc3NsL2ZpcHMuaAotLS0tIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3Bl bnNzbC9maXBzLmguZmlwcwkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwNDczNDU2NyArMDEwMAotKysr IG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9maXBzLmgJMjAyMS0wMy0wMyAxMjo1Nzo0 Mi4yMDQ3MzQ1NjcgKzAxMDAKLUBAIC0wLDAgKzEsMTg3IEBACi0rLyogPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLSsg KiBDb3B5cmlnaHQgKGMpIDIwMDMgVGhlIE9wZW5TU0wgUHJvamVjdC4gIEFsbCByaWdodHMgcmVz ZXJ2ZWQuCi0rICoKLSsgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSsgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0 ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSsgKiBhcmUgbWV0Ogot KyAqCi0rICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo ZSBhYm92ZSBjb3B5cmlnaHQKLSsgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuIAotKyAqCi0rICogMi4gUmVkaXN0cmlidXRp b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSsg KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp c2NsYWltZXIgaW4KLSsgKiAgICB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJp YWxzIHByb3ZpZGVkIHdpdGggdGhlCi0rICogICAgZGlzdHJpYnV0aW9uLgotKyAqCi0rICogMy4g QWxsIGFkdmVydGlzaW5nIG1hdGVyaWFscyBtZW50aW9uaW5nIGZlYXR1cmVzIG9yIHVzZSBvZiB0 aGlzCi0rICogICAgc29mdHdhcmUgbXVzdCBkaXNwbGF5IHRoZSBmb2xsb3dpbmcgYWNrbm93bGVk Z21lbnQ6Ci0rICogICAgIlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBkZXZlbG9wZWQg YnkgdGhlIE9wZW5TU0wgUHJvamVjdAotKyAqICAgIGZvciB1c2UgaW4gdGhlIE9wZW5TU0wgVG9v bGtpdC4gKGh0dHA6Ly93d3cub3BlbnNzbC5vcmcvKSIKLSsgKgotKyAqIDQuIFRoZSBuYW1lcyAi T3BlblNTTCBUb29sa2l0IiBhbmQgIk9wZW5TU0wgUHJvamVjdCIgbXVzdCBub3QgYmUgdXNlZCB0 bwotKyAqICAgIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20gdGhpcyBz b2Z0d2FyZSB3aXRob3V0Ci0rICogICAgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLiBGb3Igd3Jp dHRlbiBwZXJtaXNzaW9uLCBwbGVhc2UgY29udGFjdAotKyAqICAgIG9wZW5zc2wtY29yZUBvcGVu c3NsLm9yZy4KLSsgKgotKyAqIDUuIFByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJl IG1heSBub3QgYmUgY2FsbGVkICJPcGVuU1NMIgotKyAqICAgIG5vciBtYXkgIk9wZW5TU0wiIGFw cGVhciBpbiB0aGVpciBuYW1lcyB3aXRob3V0IHByaW9yIHdyaXR0ZW4KLSsgKiAgICBwZXJtaXNz aW9uIG9mIHRoZSBPcGVuU1NMIFByb2plY3QuCi0rICoKLSsgKiA2LiBSZWRpc3RyaWJ1dGlvbnMg b2YgYW55IGZvcm0gd2hhdHNvZXZlciBtdXN0IHJldGFpbiB0aGUgZm9sbG93aW5nCi0rICogICAg YWNrbm93bGVkZ21lbnQ6Ci0rICogICAgIlRoaXMgcHJvZHVjdCBpbmNsdWRlcyBzb2Z0d2FyZSBk ZXZlbG9wZWQgYnkgdGhlIE9wZW5TU0wgUHJvamVjdAotKyAqICAgIGZvciB1c2UgaW4gdGhlIE9w ZW5TU0wgVG9vbGtpdCAoaHR0cDovL3d3dy5vcGVuc3NsLm9yZy8pIgotKyAqCi0rICogVEhJUyBT T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgT3BlblNTTCBQUk9KRUNUIGBgQVMgSVMnJyBBTkQg QU5ZCi0rICogRVhQUkVTU0VEIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg Tk9UIExJTUlURUQgVE8sIFRIRQotKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotKyAqIFBVUlBPU0UgQVJFIERJU0NM QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgT3BlblNTTCBQUk9KRUNUIE9SCi0rICogSVRT IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO VEFMLAotKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ TkNMVURJTkcsIEJVVAotKyAqIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElU VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOwotKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCi0rICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO WSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULAotKyAqIFNUUklDVCBM SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSsg KiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZF TiBJRiBBRFZJU0VECi0rICogT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotKyAq Ci0rICovCi0rCi0rI2luY2x1ZGUgPG9wZW5zc2wvb3BlbnNzbGNvbmYuaD4KLSsjaW5jbHVkZSA8 b3BlbnNzbC9kc2EuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLSsjaW5jbHVkZSA8b3Bl bnNzbC9ibi5oPgotKwotKyNpZm5kZWYgT1BFTlNTTF9GSVBTCi0rIyBlcnJvciBGSVBTIGlzIGRp c2FibGVkLgotKyNlbmRpZgotKwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLSsKLSsjIGlmZGVmICBf X2NwbHVzcGx1cwotK2V4dGVybiAiQyIgewotKyMgZW5kaWYKLSsKLSsgICAgaW50IEZJUFNfc2Vs ZnRlc3Qodm9pZCk7Ci0rICAgIGludCBGSVBTX3NlbGZ0ZXN0X2ZhaWxlZCh2b2lkKTsKLSsgICAg aW50IEZJUFNfc2VsZnRlc3RfZHJiZ19hbGwodm9pZCk7Ci0rCi0rICAgIGludCBGSVBTX2RzYV9i dWlsdGluX3BhcmFtZ2VuMihEU0EgKnJldCwgc2l6ZV90IEwsIHNpemVfdCBOLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBFVlBfTUQgKmV2cG1kLCBjb25zdCB1bnNpZ25l ZCBjaGFyICpzZWVkX2luLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3Qg c2VlZF9sZW4sIGludCBpZHgsIHVuc2lnbmVkIGNoYXIgKnNlZWRfb3V0LAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpbnQgKmNvdW50ZXJfcmV0LCB1bnNpZ25lZCBsb25nICpoX3Jl dCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQk5fR0VOQ0IgKmNiKTsKLSsgICAg aW50IEZJUFNfZHNhX3BhcmFtZ2VuX2NoZWNrX2coRFNBICpkc2EpOwotKwotKy8qIEJFR0lOIEVS Uk9SIENPREVTICovCi0rLyogVGhlIGZvbGxvd2luZyBsaW5lcyBhcmUgYXV0byBnZW5lcmF0ZWQg YnkgdGhlIHNjcmlwdCBta2Vyci5wbC4gQW55IGNoYW5nZXMKLSsgKiBtYWRlIGFmdGVyIHRoaXMg cG9pbnQgbWF5IGJlIG92ZXJ3cml0dGVuIHdoZW4gdGhlIHNjcmlwdCBpcyBuZXh0IHJ1bi4KLSsg Ki8KLSsgICAgaW50IEVSUl9sb2FkX0ZJUFNfc3RyaW5ncyh2b2lkKTsKLSsKLSsvKiBFcnJvciBj b2RlcyBmb3IgdGhlIEZJUFMgZnVuY3Rpb25zLiAqLwotKwotKy8qIEZ1bmN0aW9uIGNvZGVzLiAq LwotKyMgZGVmaW5lIEZJUFNfRl9ESF9CVUlMVElOX0dFTlBBUkFNUyAgICAgICAgICAgICAgICAg ICAgICAxMDAKLSsjIGRlZmluZSBGSVBTX0ZfRFJCR19SRVNFRUQgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgMTIxCi0rIyBkZWZpbmUgRklQU19GX0RTQV9CVUlMVElOX1BBUkFNR0VOMiAg ICAgICAgICAgICAgICAgICAgIDEwNwotKyMgZGVmaW5lIEZJUFNfRl9EU0FfRE9fU0lHTiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAxMDIKLSsjIGRlZmluZSBGSVBTX0ZfRFNBX0RPX1ZF UklGWSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTAzCi0rIyBkZWZpbmUgRklQU19GX0VW UF9DSVBIRVJfQ1RYX05FVyAgICAgICAgICAgICAgICAgICAgICAgIDEzNwotKyMgZGVmaW5lIEZJ UFNfRl9FVlBfQ0lQSEVSX0NUWF9SRVNFVCAgICAgICAgICAgICAgICAgICAgICAxMjIKLSsjIGRl ZmluZSBGSVBTX0ZfRUNESF9DT01QVVRFX0tFWSAgICAgICAgICAgICAgICAgICAgICAgICAgMTIz Ci0rIyBkZWZpbmUgRklQU19GX0VWUF9DSVBIRVJJTklUX0VYICAgICAgICAgICAgICAgICAgICAg ICAgIDEyNAotKyMgZGVmaW5lIEZJUFNfRl9FVlBfRElHRVNUSU5JVF9FWCAgICAgICAgICAgICAg ICAgICAgICAgICAxMjUKLSsjIGRlZmluZSBGSVBTX0ZfRklQU19DSEVDS19EU0EgICAgICAgICAg ICAgICAgICAgICAgICAgICAgMTA0Ci0rIyBkZWZpbmUgRklQU19GX0ZJUFNfQ0hFQ0tfRUMgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDE0MgotKyMgZGVmaW5lIEZJUFNfRl9GSVBTX0NIRUNL X1JTQSAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMDYKLSsjIGRlZmluZSBGSVBTX0ZfRklQ U19EUkJHX0JZVEVTICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMxCi0rIyBkZWZpbmUgRklQ U19GX0ZJUFNfRFJCR19DSEVDSyAgICAgICAgICAgICAgICAgICAgICAgICAgIDE0NgotKyMgZGVm aW5lIEZJUFNfRl9GSVBTX0RSQkdfQ1BSTkdfVEVTVCAgICAgICAgICAgICAgICAgICAgICAxMzIK LSsjIGRlZmluZSBGSVBTX0ZfRklQU19EUkJHX0VSUk9SX0NIRUNLICAgICAgICAgICAgICAgICAg ICAgMTM2Ci0rIyBkZWZpbmUgRklQU19GX0ZJUFNfRFJCR19HRU5FUkFURSAgICAgICAgICAgICAg ICAgICAgICAgIDEzNAotKyMgZGVmaW5lIEZJUFNfRl9GSVBTX0RSQkdfSU5JVCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAxMzUKLSsjIGRlZmluZSBGSVBTX0ZfRklQU19EUkJHX0lOU1RBTlRJ QVRFICAgICAgICAgICAgICAgICAgICAgMTM4Ci0rIyBkZWZpbmUgRklQU19GX0ZJUFNfRFJCR19O RVcgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzOQotKyMgZGVmaW5lIEZJUFNfRl9GSVBT X0RSQkdfUkVTRUVEICAgICAgICAgICAgICAgICAgICAgICAgICAxNDAKLSsjIGRlZmluZSBGSVBT X0ZfRklQU19EUkJHX1NJTkdMRV9LQVQgICAgICAgICAgICAgICAgICAgICAgMTQxCi0rIyBkZWZp bmUgRklQU19GX0ZJUFNfR0VUX0VOVFJPUFkgICAgICAgICAgICAgICAgICAgICAgICAgIDE0Nwot KyMgZGVmaW5lIEZJUFNfRl9GSVBTX01PRFVMRV9NT0RFX1NFVCAgICAgICAgICAgICAgICAgICAg ICAxMDgKLSsjIGRlZmluZSBGSVBTX0ZfRklQU19QS0VZX1NJR05BVFVSRV9URVNUICAgICAgICAg ICAgICAgICAgMTA5Ci0rIyBkZWZpbmUgRklQU19GX0ZJUFNfUkFORF9CWVRFUyAgICAgICAgICAg ICAgICAgICAgICAgICAgIDExNAotKyMgZGVmaW5lIEZJUFNfRl9GSVBTX1JBTkRfU0VFRCAgICAg ICAgICAgICAgICAgICAgICAgICAgICAxMjgKLSsjIGRlZmluZSBGSVBTX0ZfRklQU19SQU5EX1NF VF9NRVRIT0QgICAgICAgICAgICAgICAgICAgICAgMTI2Ci0rIyBkZWZpbmUgRklQU19GX0ZJUFNf UkFORF9TVEFUVVMgICAgICAgICAgICAgICAgICAgICAgICAgIDEyNwotKyMgZGVmaW5lIEZJUFNf Rl9GSVBTX1JTQV9CVUlMVElOX0tFWUdFTiAgICAgICAgICAgICAgICAgICAxMDEKLSsjIGRlZmlu ZSBGSVBTX0ZfRklQU19TRUxGVEVTVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTUwCi0r IyBkZWZpbmUgRklQU19GX0ZJUFNfU0VMRlRFU1RfQUVTICAgICAgICAgICAgICAgICAgICAgICAg IDExMAotKyMgZGVmaW5lIEZJUFNfRl9GSVBTX1NFTEZURVNUX0FFU19DQ00gICAgICAgICAgICAg ICAgICAgICAxNDUKLSsjIGRlZmluZSBGSVBTX0ZfRklQU19TRUxGVEVTVF9BRVNfR0NNICAgICAg ICAgICAgICAgICAgICAgMTI5Ci0rIyBkZWZpbmUgRklQU19GX0ZJUFNfU0VMRlRFU1RfQUVTX1hU UyAgICAgICAgICAgICAgICAgICAgIDE0NAotKyMgZGVmaW5lIEZJUFNfRl9GSVBTX1NFTEZURVNU X0NNQUMgICAgICAgICAgICAgICAgICAgICAgICAxMzAKLSsjIGRlZmluZSBGSVBTX0ZfRklQU19T RUxGVEVTVF9ERVMgICAgICAgICAgICAgICAgICAgICAgICAgMTExCi0rIyBkZWZpbmUgRklQU19G X0ZJUFNfU0VMRlRFU1RfRFNBICAgICAgICAgICAgICAgICAgICAgICAgIDExMgotKyMgZGVmaW5l IEZJUFNfRl9GSVBTX1NFTEZURVNUX0VDRFNBICAgICAgICAgICAgICAgICAgICAgICAxMzMKLSsj IGRlZmluZSBGSVBTX0ZfRklQU19TRUxGVEVTVF9ITUFDICAgICAgICAgICAgICAgICAgICAgICAg MTEzCi0rIyBkZWZpbmUgRklQU19GX0ZJUFNfU0VMRlRFU1RfU0hBMSAgICAgICAgICAgICAgICAg ICAgICAgIDExNQotKyMgZGVmaW5lIEZJUFNfRl9GSVBTX1NFTEZURVNUX1NIQTIgICAgICAgICAg ICAgICAgICAgICAgICAxMDUKLSsjIGRlZmluZSBGSVBTX0ZfT1NTTF9FQ0RTQV9TSUdOX1NJRyAg ICAgICAgICAgICAgICAgICAgICAgMTQzCi0rIyBkZWZpbmUgRklQU19GX09TU0xfRUNEU0FfVkVS SUZZX1NJRyAgICAgICAgICAgICAgICAgICAgIDE0OAotKyMgZGVmaW5lIEZJUFNfRl9SU0FfQlVJ TFRJTl9LRVlHRU4gICAgICAgICAgICAgICAgICAgICAgICAxMTYKLSsjIGRlZmluZSBGSVBTX0Zf UlNBX09TU0xfSU5JVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTQ5Ci0rIyBkZWZpbmUg RklQU19GX1JTQV9PU1NMX1BSSVZBVEVfREVDUllQVCAgICAgICAgICAgICAgICAgIDExNwotKyMg ZGVmaW5lIEZJUFNfRl9SU0FfT1NTTF9QUklWQVRFX0VOQ1JZUFQgICAgICAgICAgICAgICAgICAx MTgKLSsjIGRlZmluZSBGSVBTX0ZfUlNBX09TU0xfUFVCTElDX0RFQ1JZUFQgICAgICAgICAgICAg ICAgICAgMTE5Ci0rIyBkZWZpbmUgRklQU19GX1JTQV9PU1NMX1BVQkxJQ19FTkNSWVBUICAgICAg ICAgICAgICAgICAgIDEyMAotKwotKy8qIFJlYXNvbiBjb2Rlcy4gKi8KLSsjIGRlZmluZSBGSVBT X1JfQURESVRJT05BTF9JTlBVVF9FUlJPUl9VTkRFVEVDVEVEICAgICAgICAgMTUwCi0rIyBkZWZp bmUgRklQU19SX0FERElUSU9OQUxfSU5QVVRfVE9PX0xPTkcgICAgICAgICAgICAgICAgIDEyNQot KyMgZGVmaW5lIEZJUFNfUl9BTFJFQURZX0lOU1RBTlRJQVRFRCAgICAgICAgICAgICAgICAgICAg ICAxMzQKLSsjIGRlZmluZSBGSVBTX1JfRFJCR19OT1RfSU5JVElBTElTRUQgICAgICAgICAgICAg ICAgICAgICAgMTUyCi0rIyBkZWZpbmUgRklQU19SX0RSQkdfU1RVQ0sgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDEwMwotKyMgZGVmaW5lIEZJUFNfUl9FTlRST1BZX0VSUk9SX1VOREVU RUNURUQgICAgICAgICAgICAgICAgICAxMDQKLSsjIGRlZmluZSBGSVBTX1JfRU5UUk9QWV9OT1Rf UkVRVUVTVEVEX0ZPUl9SRVNFRUQgICAgICAgICAgMTA1Ci0rIyBkZWZpbmUgRklQU19SX0VOVFJP UFlfU09VUkNFX1NUVUNLICAgICAgICAgICAgICAgICAgICAgIDE0MgotKyMgZGVmaW5lIEZJUFNf Ul9FUlJPUl9JTklUSUFMSVNJTkdfRFJCRyAgICAgICAgICAgICAgICAgICAxMTUKLSsjIGRlZmlu ZSBGSVBTX1JfRVJST1JfSU5TVEFOVElBVElOR19EUkJHICAgICAgICAgICAgICAgICAgMTI3Ci0r IyBkZWZpbmUgRklQU19SX0VSUk9SX1JFVFJJRVZJTkdfQURESVRJT05BTF9JTlBVVCAgICAgICAg IDEyNAotKyMgZGVmaW5lIEZJUFNfUl9FUlJPUl9SRVRSSUVWSU5HX0VOVFJPUFkgICAgICAgICAg ICAgICAgICAxMjIKLSsjIGRlZmluZSBGSVBTX1JfRVJST1JfUkVUUklFVklOR19OT05DRSAgICAg ICAgICAgICAgICAgICAgMTQwCi0rIyBkZWZpbmUgRklQU19SX0ZJTkdFUlBSSU5UX0RPRVNfTk9U X01BVENIICAgICAgICAgICAgICAgIDExMAotKyMgZGVmaW5lIEZJUFNfUl9GSVBTX01PREVfQUxS RUFEWV9TRVQgICAgICAgICAgICAgICAgICAgICAxMDIKLSsjIGRlZmluZSBGSVBTX1JfRklQU19T RUxGVEVTVF9GQUlMRUQgICAgICAgICAgICAgICAgICAgICAgMTA2Ci0rIyBkZWZpbmUgRklQU19S X0ZVTkNUSU9OX0VSUk9SICAgICAgICAgICAgICAgICAgICAgICAgICAgIDExNgotKyMgZGVmaW5l IEZJUFNfUl9HRU5FUkFURV9FUlJPUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMzcKLSsj IGRlZmluZSBGSVBTX1JfR0VORVJBVEVfRVJST1JfVU5ERVRFQ1RFRCAgICAgICAgICAgICAgICAg MTE4Ci0rIyBkZWZpbmUgRklQU19SX0lOU1RBTlRJQVRFX0VSUk9SICAgICAgICAgICAgICAgICAg ICAgICAgIDExOQotKyMgZGVmaW5lIEZJUFNfUl9JTlRFUk5BTF9FUlJPUiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAxMjEKLSsjIGRlZmluZSBGSVBTX1JfSU5WQUxJRF9LRVlfTEVOR1RIICAg ICAgICAgICAgICAgICAgICAgICAgMTA5Ci0rIyBkZWZpbmUgRklQU19SX0lOX0VSUk9SX1NUQVRF ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyMwotKyMgZGVmaW5lIEZJUFNfUl9LRVlfVE9P X1NIT1JUICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMDgKLSsjIGRlZmluZSBGSVBTX1Jf Tk9OQ0VfRVJST1JfVU5ERVRFQ1RFRCAgICAgICAgICAgICAgICAgICAgMTQ5Ci0rIyBkZWZpbmUg RklQU19SX05PTl9GSVBTX01FVEhPRCAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMAotKyMg ZGVmaW5lIEZJUFNfUl9OT1BSX1RFU1QxX0ZBSUxVUkUgICAgICAgICAgICAgICAgICAgICAgICAx NDUKLSsjIGRlZmluZSBGSVBTX1JfTk9QUl9URVNUMl9GQUlMVVJFICAgICAgICAgICAgICAgICAg ICAgICAgMTQ2Ci0rIyBkZWZpbmUgRklQU19SX05PVF9JTlNUQU5USUFURUQgICAgICAgICAgICAg ICAgICAgICAgICAgIDEyNgotKyMgZGVmaW5lIEZJUFNfUl9QQUlSV0lTRV9URVNUX0ZBSUxFRCAg ICAgICAgICAgICAgICAgICAgICAxMDcKLSsjIGRlZmluZSBGSVBTX1JfUEVSU09OQUxJU0FUSU9O X0VSUk9SX1VOREVURUNURUQgICAgICAgICAgMTI4Ci0rIyBkZWZpbmUgRklQU19SX1BFUlNPTkFM SVNBVElPTl9TVFJJTkdfVE9PX0xPTkcgICAgICAgICAgIDEyOQotKyMgZGVmaW5lIEZJUFNfUl9Q Ul9URVNUMV9GQUlMVVJFICAgICAgICAgICAgICAgICAgICAgICAgICAxNDcKLSsjIGRlZmluZSBG SVBTX1JfUFJfVEVTVDJfRkFJTFVSRSAgICAgICAgICAgICAgICAgICAgICAgICAgMTQ4Ci0rIyBk ZWZpbmUgRklQU19SX1JFUVVFU1RfTEVOR1RIX0VSUk9SX1VOREVURUNURUQgICAgICAgICAgIDEz MAotKyMgZGVmaW5lIEZJUFNfUl9SRVFVRVNUX1RPT19MQVJHRV9GT1JfRFJCRyAgICAgICAgICAg ICAgICAxMzEKLSsjIGRlZmluZSBGSVBTX1JfUkVTRUVEX0NPVU5URVJfRVJST1IgICAgICAgICAg ICAgICAgICAgICAgMTMyCi0rIyBkZWZpbmUgRklQU19SX1JFU0VFRF9FUlJPUiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIDEzMwotKyMgZGVmaW5lIEZJUFNfUl9TRUxGVEVTVF9GQUlMRUQg ICAgICAgICAgICAgICAgICAgICAgICAgICAxMDEKLSsjIGRlZmluZSBGSVBTX1JfU0VMRlRFU1Rf RkFJTFVSRSAgICAgICAgICAgICAgICAgICAgICAgICAgMTM1Ci0rIyBkZWZpbmUgRklQU19SX1RF U1RfRkFJTFVSRSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDExNwotKyMgZGVmaW5lIEZJ UFNfUl9VTklOU1RBTlRJQVRFX0VSUk9SICAgICAgICAgICAgICAgICAgICAgICAxNDEKLSsjIGRl ZmluZSBGSVBTX1JfVU5JTlNUQU5USUFURV9aRVJPSVNFX0VSUk9SICAgICAgICAgICAgICAgMTM4 Ci0rIyBkZWZpbmUgRklQU19SX1VOU1VQUE9SVEVEX0RSQkdfVFlQRSAgICAgICAgICAgICAgICAg ICAgIDEzOQotKyMgZGVmaW5lIEZJUFNfUl9VTlNVUFBPUlRFRF9QTEFURk9STSAgICAgICAgICAg ICAgICAgICAgICAxMTMKLSsKLSsjIGlmZGVmICBfX2NwbHVzcGx1cwotK30KLSsjIGVuZGlmCi0r I2VuZGlmCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvZmlwc19yYW5k LmguZmlwcyBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvZmlwc19yYW5kLmgKLS0tLSBv cGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvZmlwc19yYW5kLmguZmlwcwkyMDIxLTAzLTAz IDEyOjU3OjQyLjIwNDczNDU2NyArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3Bl bnNzbC9maXBzX3JhbmQuaAkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwNDczNDU2NyArMDEwMAotQEAg LTAsMCArMSwxNDUgQEAKLSsvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotKyAqIENvcHlyaWdodCAoYykgMjAwMyBU aGUgT3BlblNTTCBQcm9qZWN0LiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSsgKgotKyAqIFJlZGlz dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0 aG91dAotKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm b2xsb3dpbmcgY29uZGl0aW9ucwotKyAqIGFyZSBtZXQ6Ci0rICoKLSsgKiAxLiBSZWRpc3RyaWJ1 dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotKyAq ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz Y2xhaW1lci4gCi0rICoKLSsgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0 IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbgotKyAqICAgIHRo ZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUK LSsgKiAgICBkaXN0cmlidXRpb24uCi0rICoKLSsgKiAzLiBBbGwgYWR2ZXJ0aXNpbmcgbWF0ZXJp YWxzIG1lbnRpb25pbmcgZmVhdHVyZXMgb3IgdXNlIG9mIHRoaXMKLSsgKiAgICBzb2Z0d2FyZSBt dXN0IGRpc3BsYXkgdGhlIGZvbGxvd2luZyBhY2tub3dsZWRnbWVudDoKLSsgKiAgICAiVGhpcyBw cm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNTTCBQcm9qZWN0 Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0LiAoaHR0cDovL3d3dy5vcGVu c3NsLm9yZy8pIgotKyAqCi0rICogNC4gVGhlIG5hbWVzICJPcGVuU1NMIFRvb2xraXQiIGFuZCAi T3BlblNTTCBQcm9qZWN0IiBtdXN0IG5vdCBiZSB1c2VkIHRvCi0rICogICAgZW5kb3JzZSBvciBw cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQKLSsgKiAg ICBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uIEZvciB3cml0dGVuIHBlcm1pc3Npb24sIHBsZWFz ZSBjb250YWN0Ci0rICogICAgb3BlbnNzbC1jb3JlQG9wZW5zc2wub3JnLgotKyAqCi0rICogNS4g UHJvZHVjdHMgZGVyaXZlZCBmcm9tIHRoaXMgc29mdHdhcmUgbWF5IG5vdCBiZSBjYWxsZWQgIk9w ZW5TU0wiCi0rICogICAgbm9yIG1heSAiT3BlblNTTCIgYXBwZWFyIGluIHRoZWlyIG5hbWVzIHdp dGhvdXQgcHJpb3Igd3JpdHRlbgotKyAqICAgIHBlcm1pc3Npb24gb2YgdGhlIE9wZW5TU0wgUHJv amVjdC4KLSsgKgotKyAqIDYuIFJlZGlzdHJpYnV0aW9ucyBvZiBhbnkgZm9ybSB3aGF0c29ldmVy IG11c3QgcmV0YWluIHRoZSBmb2xsb3dpbmcKLSsgKiAgICBhY2tub3dsZWRnbWVudDoKLSsgKiAg ICAiVGhpcyBwcm9kdWN0IGluY2x1ZGVzIHNvZnR3YXJlIGRldmVsb3BlZCBieSB0aGUgT3BlblNT TCBQcm9qZWN0Ci0rICogICAgZm9yIHVzZSBpbiB0aGUgT3BlblNTTCBUb29sa2l0IChodHRwOi8v d3d3Lm9wZW5zc2wub3JnLykiCi0rICoKLSsgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ IFRIRSBPcGVuU1NMIFBST0pFQ1QgYGBBUyBJUycnIEFORCBBTlkKLSsgKiBFWFBSRVNTRUQgT1Ig SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0r ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig QSBQQVJUSUNVTEFSCi0rICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNI QUxMIFRIRSBPcGVuU1NMIFBST0pFQ1QgT1IKLSsgKiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJM RSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCi0rICogU1BFQ0lBTCwgRVhF TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUCi0rICogTk9U IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7 Ci0rICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQ VElPTikKLSsgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks IFdIRVRIRVIgSU4gQ09OVFJBQ1QsCi0rICogU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBP VVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQKLSsgKiBPRiBU SEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0rICoKLSsgKi8KLSsKLSsjaWZuZGVmIEhF QURFUl9GSVBTX1JBTkRfSAotKyMgZGVmaW5lIEhFQURFUl9GSVBTX1JBTkRfSAotKwotKyMgaW5j bHVkZSA8b3BlbnNzbC9hZXMuaD4KLSsjIGluY2x1ZGUgPG9wZW5zc2wvZXZwLmg+Ci0rIyBpbmNs dWRlIDxvcGVuc3NsL2htYWMuaD4KLSsjIGluY2x1ZGUgPG9wZW5zc2wvcmFuZC5oPgotKwotKyMg aWZkZWYgT1BFTlNTTF9GSVBTCi0rCi0rIyAgaWZkZWYgIF9fY3BsdXNwbHVzCi0rZXh0ZXJuICJD IiB7Ci0rIyAgZW5kaWYKLSsgICAgdHlwZWRlZiBzdHJ1Y3QgZHJiZ19jdHhfc3QgRFJCR19DVFg7 Ci0rLyogRFJCRyBleHRlcm5hbCBmbGFncyAqLwotKy8qIEZsYWcgZm9yIENUUiBtb2RlIG9ubHk6 IHVzZSBkZXJpdmF0aW9uIGZ1bmN0aW9uIGN0cl9kZiAqLwotKyMgIGRlZmluZSBEUkJHX0ZMQUdf Q1RSX1VTRV9ERiAgICAgICAgICAgIDB4MQotKy8qIFBSTkcgaXMgaW4gdGVzdCBzdGF0ZSAqLwot KyMgIGRlZmluZSBEUkJHX0ZMQUdfVEVTVCAgICAgICAgICAgICAgICAgIDB4MgotKwotKyAgICBE UkJHX0NUWCAqRklQU19kcmJnX25ldyhpbnQgdHlwZSwgdW5zaWduZWQgaW50IGZsYWdzKTsKLSsg ICAgaW50IEZJUFNfZHJiZ19pbml0KERSQkdfQ1RYICpkY3R4LCBpbnQgdHlwZSwgdW5zaWduZWQg aW50IGZsYWdzKTsKLSsgICAgaW50IEZJUFNfZHJiZ19pbnN0YW50aWF0ZShEUkJHX0NUWCAqZGN0 eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpw ZXJzLCBzaXplX3QgcGVyc2xlbik7Ci0rICAgIGludCBGSVBTX2RyYmdfcmVzZWVkKERSQkdfQ1RY ICpkY3R4LCBjb25zdCB1bnNpZ25lZCBjaGFyICphZGluLAotKyAgICAgICAgICAgICAgICAgICAg ICAgICBzaXplX3QgYWRpbmxlbik7Ci0rICAgIGludCBGSVBTX2RyYmdfZ2VuZXJhdGUoRFJCR19D VFggKmRjdHgsIHVuc2lnbmVkIGNoYXIgKm91dCwgc2l6ZV90IG91dGxlbiwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgICBpbnQgcHJlZGljdGlvbl9yZXNpc3RhbmNlLAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmFkaW4sIHNpemVfdCBhZGlubGVu KTsKLSsKLSsgICAgaW50IEZJUFNfZHJiZ191bmluc3RhbnRpYXRlKERSQkdfQ1RYICpkY3R4KTsK LSsgICAgdm9pZCBGSVBTX2RyYmdfZnJlZShEUkJHX0NUWCAqZGN0eCk7Ci0rCi0rICAgIGludCBG SVBTX2RyYmdfc2V0X2NhbGxiYWNrcyhEUkJHX0NUWCAqZGN0eCwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHNpemVfdCAoKmdldF9lbnRyb3B5KSAoRFJCR19DVFggKmN0eCwKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5z aWduZWQgY2hhciAqKnBvdXQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGludCBlbnRyb3B5LAotKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgbWluX2xlbiwKLSsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IG1h eF9sZW4pLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9pZCAoKmNsZWFudXBf ZW50cm9weSkgKERSQkdfQ1RYICpjdHgsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqb3V0LAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBv bGVuKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBlbnRyb3B5X2Js b2NrbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90ICgqZ2V0X25v bmNlKSAoRFJCR19DVFggKmN0eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKipwb3V0LAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IGVudHJvcHksCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3Qg bWluX2xlbiwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHNpemVfdCBtYXhfbGVuKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHZvaWQgKCpjbGVhbnVwX25vbmNlKSAoRFJCR19DVFggKmN0eCwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqb3V0 LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzaXplX3Qgb2xlbikpOwotKwotKyAgICBpbnQgRklQU19kcmJnX3NldF9yYW5kX2NhbGxiYWNr cyhEUkJHX0NUWCAqZGN0eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg c2l6ZV90ICgqZ2V0X2FkaW4pIChEUkJHX0NUWCAqY3R4LAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqKnBv dXQpLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkICgqY2xlYW51 cF9hZGluKSAoRFJCR19DVFggKmN0eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKm91dCwKLSsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVf dCBvbGVuKSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICgqcmFu ZF9zZWVkX2NiKSAoRFJCR19DVFggKmN0eCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgdm9pZCAqYnVmLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVt KSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50ICgqcmFuZF9hZGRf Y2IpIChEUkJHX0NUWCAqY3R4LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZvaWQgKmJ1ZiwKLSsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgbnVtLAotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRvdWJs ZSBlbnRyb3B5KSk7Ci0rCi0rICAgIHZvaWQgKkZJUFNfZHJiZ19nZXRfYXBwX2RhdGEoRFJCR19D VFggKmN0eCk7Ci0rICAgIHZvaWQgRklQU19kcmJnX3NldF9hcHBfZGF0YShEUkJHX0NUWCAqY3R4 LCB2b2lkICphcHBfZGF0YSk7Ci0rICAgIHNpemVfdCBGSVBTX2RyYmdfZ2V0X2Jsb2NrbGVuZ3Ro KERSQkdfQ1RYICpkY3R4KTsKLSsgICAgaW50IEZJUFNfZHJiZ19nZXRfc3RyZW5ndGgoRFJCR19D VFggKmRjdHgpOwotKyAgICB2b2lkIEZJUFNfZHJiZ19zZXRfY2hlY2tfaW50ZXJ2YWwoRFJCR19D VFggKmRjdHgsIGludCBpbnRlcnZhbCk7Ci0rICAgIHZvaWQgRklQU19kcmJnX3NldF9yZXNlZWRf aW50ZXJ2YWwoRFJCR19DVFggKmRjdHgsIGludCBpbnRlcnZhbCk7Ci0rCi0rICAgIGludCBGSVBT X2RyYmdfaGVhbHRoX2NoZWNrKERSQkdfQ1RYICpkY3R4KTsKLSsKLSsgICAgRFJCR19DVFggKkZJ UFNfZ2V0X2RlZmF1bHRfZHJiZyh2b2lkKTsKLSsgICAgY29uc3QgUkFORF9NRVRIT0QgKkZJUFNf ZHJiZ19tZXRob2Qodm9pZCk7Ci0rCi0rICAgIGludCBGSVBTX3JhbmRfc2V0X21ldGhvZChjb25z dCBSQU5EX01FVEhPRCAqbWV0aCk7Ci0rICAgIGNvbnN0IFJBTkRfTUVUSE9EICpGSVBTX3JhbmRf Z2V0X21ldGhvZCh2b2lkKTsKLSsKLSsgICAgdm9pZCBGSVBTX3JhbmRfc2V0X2JpdHMoaW50IG5i aXRzKTsKLSsKLSsgICAgaW50IEZJUFNfcmFuZF9zdHJlbmd0aCh2b2lkKTsKLSsKLSsvKiAxLjAu MCBjb21wYXQgZnVuY3Rpb25zICovCi0rICAgIGludCBGSVBTX3JhbmRfc2VlZChjb25zdCB2b2lk ICpidWYsIGludCBudW0pOwotKyAgICBpbnQgRklQU19yYW5kX2J5dGVzKHVuc2lnbmVkIGNoYXIg Km91dCwgaW50IG91dGxlbik7Ci0rICAgIHZvaWQgRklQU19yYW5kX3Jlc2V0KHZvaWQpOwotKyAg ICBpbnQgRklQU19yYW5kX3N0YXR1cyh2b2lkKTsKLSsjICBpZmRlZiAgX19jcGx1c3BsdXMKLSt9 Ci0rIyAgZW5kaWYKLSsjIGVuZGlmCi0rI2VuZGlmCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9p bmNsdWRlL29wZW5zc2wvb3BlbnNzbGNvbmYuaC5pbi5maXBzIG9wZW5zc2wtMS4xLjFqL2luY2x1 ZGUvb3BlbnNzbC9vcGVuc3NsY29uZi5oLmluCi0tLS0gb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9v cGVuc3NsL29wZW5zc2xjb25mLmguaW4uZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAw MCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9vcGVuc3NsY29uZi5o LmluCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjA1NzM0NTc1ICswMTAwCi1AQCAtMTU1LDYgKzE1NSwx MSBAQCBleHRlcm4gIkMiIHsKLSAKLSAjZGVmaW5lIFJDNF9JTlQgey0gJGNvbmZpZ3tyYzRfaW50 fSAtfQotIAotKy8qIEFsd2F5cyBidWlsZCBGSVBTIG1vZHVsZSAqLwotKyNpZm5kZWYgT1BFTlNT TF9GSVBTCi0rIyBkZWZpbmUgT1BFTlNTTF9GSVBTCi0rI2VuZGlmCi0rCi0gI2lmZGVmICBfX2Nw bHVzcGx1cwotIH0KLSAjZW5kaWYKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3Bl bnNzbC9yYW5kZXJyLmguZmlwcyBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvcmFuZGVy ci5oCi0tLS0gb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVuc3NsL3JhbmRlcnIuaC5maXBzCTIw MjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWovaW5j bHVkZS9vcGVuc3NsL3JhbmRlcnIuaAkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwNTczNDU3NSArMDEw MAotQEAgLTM4LDYgKzM4LDcgQEAgaW50IEVSUl9sb2FkX1JBTkRfc3RyaW5ncyh2b2lkKTsKLSAj IGRlZmluZSBSQU5EX0ZfUkFORF9EUkJHX1NFVCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MTA0Ci0gIyBkZWZpbmUgUkFORF9GX1JBTkRfRFJCR19TRVRfREVGQVVMVFMgICAgICAgICAgICAg ICAgICAgIDEyMQotICMgZGVmaW5lIFJBTkRfRl9SQU5EX0RSQkdfVU5JTlNUQU5USUFURSAgICAg ICAgICAgICAgICAgICAxMTgKLSsjIGRlZmluZSBSQU5EX0ZfUkFORF9JTklUX0ZJUFMgICAgICAg ICAgICAgICAgICAgICAgICAgICAgMjAwCi0gIyBkZWZpbmUgUkFORF9GX1JBTkRfTE9BRF9GSUxF ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDExMQotICMgZGVmaW5lIFJBTkRfRl9SQU5EX1BP T0xfQUNRVUlSRV9FTlRST1BZICAgICAgICAgICAgICAgICAxMjIKLSAjIGRlZmluZSBSQU5EX0Zf UkFORF9QT09MX0FERCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTAzCi1kaWZmIC11cCBv cGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvcmFuZC5oLmZpcHMgb3BlbnNzbC0xLjEuMWov aW5jbHVkZS9vcGVuc3NsL3JhbmQuaAotLS0tIG9wZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNz bC9yYW5kLmguZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9w ZW5zc2wtMS4xLjFqL2luY2x1ZGUvb3BlbnNzbC9yYW5kLmgJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4y MDU3MzQ1NzUgKzAxMDAKLUBAIC02OSw2ICs2OSwxMSBAQCBERVBSRUNBVEVESU5fMV8xXzAodm9p ZCBSQU5EX3NjcmVlbih2b2lkCi0gREVQUkVDQVRFRElOXzFfMV8wKGludCBSQU5EX2V2ZW50KFVJ TlQsIFdQQVJBTSwgTFBBUkFNKSkKLSAjIGVuZGlmCi0gCi0rIyBpZmRlZiBPUEVOU1NMX0ZJUFMK LSsvKiBqdXN0IHN0dWJzIGZvciBBUEkgY29tcGF0aWJpbGl0eSAqLwotK3ZvaWQgUkFORF9zZXRf Zmlwc19kcmJnX3R5cGUoaW50IHR5cGUsIGludCBmbGFncyk7Ci0raW50IFJBTkRfaW5pdF9maXBz KHZvaWQpOwotKyMgZW5kaWYKLSAKLSAjaWZkZWYgIF9fY3BsdXNwbHVzCi0gfQotZGlmZiAtdXAg b3BlbnNzbC0xLjEuMWovaW5jbHVkZS9vcGVuc3NsL3JzYWVyci5oLmZpcHMgb3BlbnNzbC0xLjEu MWovaW5jbHVkZS9vcGVuc3NsL3JzYWVyci5oCi0tLS0gb3BlbnNzbC0xLjEuMWovaW5jbHVkZS9v cGVuc3NsL3JzYWVyci5oLmZpcHMJMjAyMS0wMi0xNiAxNjoyNDowMS4wMDAwMDAwMDAgKzAxMDAK LSsrKyBvcGVuc3NsLTEuMS4xai9pbmNsdWRlL29wZW5zc2wvcnNhZXJyLmgJMjAyMS0wMy0wMyAx Mjo1Nzo0Mi4yMDU3MzQ1NzUgKzAxMDAKLUBAIC0yNSw2ICsyNSw3IEBAIGludCBFUlJfbG9hZF9S U0Ffc3RyaW5ncyh2b2lkKTsKLSAgKi8KLSAjIGRlZmluZSBSU0FfRl9DSEVDS19QQURESU5HX01E ICAgICAgICAgICAgICAgICAgICAgICAgICAgMTQwCi0gIyBkZWZpbmUgUlNBX0ZfRU5DT0RFX1BL Q1MxICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE0NgotKyMgZGVmaW5lIFJTQV9GX0ZJ UFNfUlNBX0JVSUxUSU5fS0VZR0VOICAgICAgICAgICAgICAgICAgICAyMDYKLSAjIGRlZmluZSBS U0FfRl9JTlRfUlNBX1ZFUklGWSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTQ1Ci0gIyBk ZWZpbmUgUlNBX0ZfT0xEX1JTQV9QUklWX0RFQ09ERSAgICAgICAgICAgICAgICAgICAgICAgIDE0 NwotICMgZGVmaW5lIFJTQV9GX1BLRVlfUFNTX0lOSVQgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAxNjUKLUBAIC0zOSw2ICs0MCw4IEBAIGludCBFUlJfbG9hZF9SU0Ffc3RyaW5ncyh2b2lk KTsKLSAjIGRlZmluZSBSU0FfRl9SU0FfQ0hFQ0tfS0VZX0VYICAgICAgICAgICAgICAgICAgICAg ICAgICAgMTYwCi0gIyBkZWZpbmUgUlNBX0ZfUlNBX0NNU19ERUNSWVBUICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDE1OQotICMgZGVmaW5lIFJTQV9GX1JTQV9DTVNfVkVSSUZZICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAxNTgKLSsjIGRlZmluZSBSU0FfRl9SU0FfR0VORVJBVEVfS0VZ X0VYICAgICAgICAgICAgICAgICAgICAgICAgMjA0Ci0rIyBkZWZpbmUgUlNBX0ZfUlNBX0dFTkVS QVRFX01VTFRJX1BSSU1FX0tFWSAgICAgICAgICAgICAgIDIwNwotICMgZGVmaW5lIFJTQV9GX1JT QV9JVEVNX1ZFUklGWSAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNDgKLSAjIGRlZmluZSBS U0FfRl9SU0FfTUVUSF9EVVAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTYxCi0gIyBk ZWZpbmUgUlNBX0ZfUlNBX01FVEhfTkVXICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE2 MgotQEAgLTc2LDEwICs3OSwxNiBAQCBpbnQgRVJSX2xvYWRfUlNBX3N0cmluZ3Modm9pZCk7Ci0g IyBkZWZpbmUgUlNBX0ZfUlNBX1BSSU5UX0ZQICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IDExNgotICMgZGVmaW5lIFJTQV9GX1JTQV9QUklWX0RFQ09ERSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAxNTAKLSAjIGRlZmluZSBSU0FfRl9SU0FfUFJJVl9FTkNPREUgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMTM4Ci0rIyBkZWZpbmUgUlNBX0ZfUlNBX1BSSVZBVEVfREVDUllQVCAg ICAgICAgICAgICAgICAgICAgICAgIDIwMAotKyMgZGVmaW5lIFJTQV9GX1JTQV9QUklWQVRFX0VO Q1JZUFQgICAgICAgICAgICAgICAgICAgICAgICAyMDEKLSAjIGRlZmluZSBSU0FfRl9SU0FfUFNT X0dFVF9QQVJBTSAgICAgICAgICAgICAgICAgICAgICAgICAgMTUxCi0gIyBkZWZpbmUgUlNBX0Zf UlNBX1BTU19UT19DVFggICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1NQotICMgZGVmaW5l IFJTQV9GX1JTQV9QVUJfREVDT0RFICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMzkKLSsj IGRlZmluZSBSU0FfRl9SU0FfUFVCTElDX0RFQ1JZUFQgICAgICAgICAgICAgICAgICAgICAgICAg MjAyCi0rIyBkZWZpbmUgUlNBX0ZfUlNBX1BVQkxJQ19FTkNSWVBUICAgICAgICAgICAgICAgICAg ICAgICAgIDIwMwotICMgZGVmaW5lIFJTQV9GX1JTQV9TRVRVUF9CTElORElORyAgICAgICAgICAg ICAgICAgICAgICAgICAxMzYKLSsjIGRlZmluZSBSU0FfRl9SU0FfU0VUX0RFRkFVTFRfTUVUSE9E ICAgICAgICAgICAgICAgICAgICAgMjA1Ci0rIyBkZWZpbmUgUlNBX0ZfUlNBX1NFVF9NRVRIT0Qg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwNAotICMgZGVmaW5lIFJTQV9GX1JTQV9TSUdO ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMTcKLSAjIGRlZmluZSBSU0FfRl9S U0FfU0lHTl9BU04xX09DVEVUX1NUUklORyAgICAgICAgICAgICAgICAgMTE4Ci0gIyBkZWZpbmUg UlNBX0ZfUlNBX1ZFUklGWSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDExOQotQEAg LTEzNywxMCArMTQ2LDEyIEBAIGludCBFUlJfbG9hZF9SU0Ffc3RyaW5ncyh2b2lkKTsKLSAjIGRl ZmluZSBSU0FfUl9NUF9FWFBPTkVOVF9OT1RfQ09OR1JVRU5UX1RPX0QgICAgICAgICAgICAgMTY5 Ci0gIyBkZWZpbmUgUlNBX1JfTVBfUl9OT1RfUFJJTUUgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDE3MAotICMgZGVmaW5lIFJTQV9SX05PX1BVQkxJQ19FWFBPTkVOVCAgICAgICAgICAgICAg ICAgICAgICAgICAxNDAKLSsjIGRlZmluZSBSU0FfUl9OT05fRklQU19SU0FfTUVUSE9EICAgICAg ICAgICAgICAgICAgICAgICAgMjAwCi0gIyBkZWZpbmUgUlNBX1JfTlVMTF9CRUZPUkVfQkxPQ0tf TUlTU0lORyAgICAgICAgICAgICAgICAgIDExMwotICMgZGVmaW5lIFJTQV9SX05fRE9FU19OT1Rf RVFVQUxfUFJPRFVDVF9PRl9QUklNRVMgICAgICAgICAxNzIKLSAjIGRlZmluZSBSU0FfUl9OX0RP RVNfTk9UX0VRVUFMX1BfUSAgICAgICAgICAgICAgICAgICAgICAgMTI3Ci0gIyBkZWZpbmUgUlNB X1JfT0FFUF9ERUNPRElOR19FUlJPUiAgICAgICAgICAgICAgICAgICAgICAgIDEyMQotKyMgZGVm aW5lIFJTQV9SX09QRVJBVElPTl9OT1RfQUxMT1dFRF9JTl9GSVBTX01PREUgICAgICAgICAyMDEK LSAjIGRlZmluZSBSU0FfUl9PUEVSQVRJT05fTk9UX1NVUFBPUlRFRF9GT1JfVEhJU19LRVlUWVBF ICAgMTQ4Ci0gIyBkZWZpbmUgUlNBX1JfUEFERElOR19DSEVDS19GQUlMRUQgICAgICAgICAgICAg ICAgICAgICAgIDExNAotICMgZGVmaW5lIFJTQV9SX1BLQ1NfREVDT0RJTkdfRVJST1IgICAgICAg ICAgICAgICAgICAgICAgICAxNTkKLUBAIC0xNjAsNiArMTcxLDcgQEAgaW50IEVSUl9sb2FkX1JT QV9zdHJpbmdzKHZvaWQpOwotICMgZGVmaW5lIFJTQV9SX1VOU1VQUE9SVEVEX0xBQkVMX1NPVVJD RSAgICAgICAgICAgICAgICAgICAxNjMKLSAjIGRlZmluZSBSU0FfUl9VTlNVUFBPUlRFRF9NQVNL X0FMR09SSVRITSAgICAgICAgICAgICAgICAgMTUzCi0gIyBkZWZpbmUgUlNBX1JfVU5TVVBQT1JU RURfTUFTS19QQVJBTUVURVIgICAgICAgICAgICAgICAgIDE1NAotKyMgZGVmaW5lIFJTQV9SX1VO U1VQUE9SVEVEX1BBUkFNRVRFUlMgICAgICAgICAgICAgICAgICAgICAyMDIKLSAjIGRlZmluZSBS U0FfUl9VTlNVUFBPUlRFRF9TSUdOQVRVUkVfVFlQRSAgICAgICAgICAgICAgICAgMTU1Ci0gIyBk ZWZpbmUgUlNBX1JfVkFMVUVfTUlTU0lORyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE0 NwotICMgZGVmaW5lIFJTQV9SX1dST05HX1NJR05BVFVSRV9MRU5HVEggICAgICAgICAgICAgICAg ICAgICAxMTkKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL3NzbC9zM19saWIuYy5maXBzIG9wZW5z c2wtMS4xLjFqL3NzbC9zM19saWIuYwotLS0tIG9wZW5zc2wtMS4xLjFqL3NzbC9zM19saWIuYy5m aXBzCTIwMjEtMDItMTYgMTY6MjQ6MDEuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEu MWovc3NsL3MzX2xpYi5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjA1NzM0NTc1ICswMTAwCi1AQCAt NDMsNyArNDMsNyBAQCBzdGF0aWMgU1NMX0NJUEhFUiB0bHMxM19jaXBoZXJzW10gPSB7Ci0gICAg ICAgICBTU0xfQUVBRCwKLSAgICAgICAgIFRMUzFfM19WRVJTSU9OLCBUTFMxXzNfVkVSU0lPTiwK LSAgICAgICAgIDAsIDAsCi0tICAgICAgICBTU0xfSElHSCwKLSsgICAgICAgIFNTTF9ISUdIIHwg U1NMX0ZJUFMsCi0gICAgICAgICBTU0xfSEFORFNIQUtFX01BQ19TSEEyNTYsCi0gICAgICAgICAx MjgsCi0gICAgICAgICAxMjgsCi1AQCAtNTgsNyArNTgsNyBAQCBzdGF0aWMgU1NMX0NJUEhFUiB0 bHMxM19jaXBoZXJzW10gPSB7Ci0gICAgICAgICBTU0xfQUVBRCwKLSAgICAgICAgIFRMUzFfM19W RVJTSU9OLCBUTFMxXzNfVkVSU0lPTiwKLSAgICAgICAgIDAsIDAsCi0tICAgICAgICBTU0xfSElH SCwKLSsgICAgICAgIFNTTF9ISUdIIHwgU1NMX0ZJUFMsCi0gICAgICAgICBTU0xfSEFORFNIQUtF X01BQ19TSEEzODQsCi0gICAgICAgICAyNTYsCi0gICAgICAgICAyNTYsCi1AQCAtOTIsNyArOTIs NyBAQCBzdGF0aWMgU1NMX0NJUEhFUiB0bHMxM19jaXBoZXJzW10gPSB7Ci0gICAgICAgICBTU0xf QUVBRCwKLSAgICAgICAgIFRMUzFfM19WRVJTSU9OLCBUTFMxXzNfVkVSU0lPTiwKLSAgICAgICAg IDAsIDAsCi0tICAgICAgICBTU0xfTk9UX0RFRkFVTFQgfCBTU0xfSElHSCwKLSsgICAgICAgIFNT TF9OT1RfREVGQVVMVCB8IFNTTF9ISUdIIHwgU1NMX0ZJUFMsCi0gICAgICAgICBTU0xfSEFORFNI QUtFX01BQ19TSEEyNTYsCi0gICAgICAgICAxMjgsCi0gICAgICAgICAxMjgsCi1AQCAtNjM0LDcg KzYzNCw3IEBAIHN0YXRpYyBTU0xfQ0lQSEVSIHNzbDNfY2lwaGVyc1tdID0gewotICAgICAgU1NM X0FFQUQsCi0gICAgICBUTFMxXzJfVkVSU0lPTiwgVExTMV8yX1ZFUlNJT04sCi0gICAgICBEVExT MV8yX1ZFUlNJT04sIERUTFMxXzJfVkVSU0lPTiwKLS0gICAgIFNTTF9OT1RfREVGQVVMVCB8IFNT TF9ISUdILAotKyAgICAgU1NMX05PVF9ERUZBVUxUIHwgU1NMX0hJR0ggfCBTU0xfRklQUywKLSAg ICAgIFNTTF9IQU5EU0hBS0VfTUFDX1NIQTI1NiB8IFRMUzFfUFJGX1NIQTI1NiwKLSAgICAgIDEy OCwKLSAgICAgIDEyOCwKLUBAIC02NTAsNyArNjUwLDcgQEAgc3RhdGljIFNTTF9DSVBIRVIgc3Ns M19jaXBoZXJzW10gPSB7Ci0gICAgICBTU0xfQUVBRCwKLSAgICAgIFRMUzFfMl9WRVJTSU9OLCBU TFMxXzJfVkVSU0lPTiwKLSAgICAgIERUTFMxXzJfVkVSU0lPTiwgRFRMUzFfMl9WRVJTSU9OLAot LSAgICAgU1NMX05PVF9ERUZBVUxUIHwgU1NMX0hJR0gsCi0rICAgICBTU0xfTk9UX0RFRkFVTFQg fCBTU0xfSElHSCB8IFNTTF9GSVBTLAotICAgICAgU1NMX0hBTkRTSEFLRV9NQUNfU0hBMjU2IHwg VExTMV9QUkZfU0hBMjU2LAotICAgICAgMjU2LAotICAgICAgMjU2LAotQEAgLTY2Niw3ICs2NjYs NyBAQCBzdGF0aWMgU1NMX0NJUEhFUiBzc2wzX2NpcGhlcnNbXSA9IHsKLSAgICAgIFNTTF9BRUFE LAotICAgICAgVExTMV8yX1ZFUlNJT04sIFRMUzFfMl9WRVJTSU9OLAotICAgICAgRFRMUzFfMl9W RVJTSU9OLCBEVExTMV8yX1ZFUlNJT04sCi0tICAgICBTU0xfTk9UX0RFRkFVTFQgfCBTU0xfSElH SCwKLSsgICAgIFNTTF9OT1RfREVGQVVMVCB8IFNTTF9ISUdIIHwgU1NMX0ZJUFMsCi0gICAgICBT U0xfSEFORFNIQUtFX01BQ19TSEEyNTYgfCBUTFMxX1BSRl9TSEEyNTYsCi0gICAgICAxMjgsCi0g ICAgICAxMjgsCi1AQCAtNjgyLDcgKzY4Miw3IEBAIHN0YXRpYyBTU0xfQ0lQSEVSIHNzbDNfY2lw aGVyc1tdID0gewotICAgICAgU1NMX0FFQUQsCi0gICAgICBUTFMxXzJfVkVSU0lPTiwgVExTMV8y X1ZFUlNJT04sCi0gICAgICBEVExTMV8yX1ZFUlNJT04sIERUTFMxXzJfVkVSU0lPTiwKLS0gICAg IFNTTF9OT1RfREVGQVVMVCB8IFNTTF9ISUdILAotKyAgICAgU1NMX05PVF9ERUZBVUxUIHwgU1NM X0hJR0ggfCBTU0xfRklQUywKLSAgICAgIFNTTF9IQU5EU0hBS0VfTUFDX1NIQTI1NiB8IFRMUzFf UFJGX1NIQTI1NiwKLSAgICAgIDI1NiwKLSAgICAgIDI1NiwKLUBAIC03OTQsNyArNzk0LDcgQEAg c3RhdGljIFNTTF9DSVBIRVIgc3NsM19jaXBoZXJzW10gPSB7Ci0gICAgICBTU0xfQUVBRCwKLSAg ICAgIFRMUzFfMl9WRVJTSU9OLCBUTFMxXzJfVkVSU0lPTiwKLSAgICAgIERUTFMxXzJfVkVSU0lP TiwgRFRMUzFfMl9WRVJTSU9OLAotLSAgICAgU1NMX05PVF9ERUZBVUxUIHwgU1NMX0hJR0gsCi0r ICAgICBTU0xfTk9UX0RFRkFVTFQgfCBTU0xfSElHSCB8IFNTTF9GSVBTLAotICAgICAgU1NMX0hB TkRTSEFLRV9NQUNfU0hBMjU2IHwgVExTMV9QUkZfU0hBMjU2LAotICAgICAgMTI4LAotICAgICAg MTI4LAotQEAgLTgxMCw3ICs4MTAsNyBAQCBzdGF0aWMgU1NMX0NJUEhFUiBzc2wzX2NpcGhlcnNb XSA9IHsKLSAgICAgIFNTTF9BRUFELAotICAgICAgVExTMV8yX1ZFUlNJT04sIFRMUzFfMl9WRVJT SU9OLAotICAgICAgRFRMUzFfMl9WRVJTSU9OLCBEVExTMV8yX1ZFUlNJT04sCi0tICAgICBTU0xf Tk9UX0RFRkFVTFQgfCBTU0xfSElHSCwKLSsgICAgIFNTTF9OT1RfREVGQVVMVCB8IFNTTF9ISUdI IHwgU1NMX0ZJUFMsCi0gICAgICBTU0xfSEFORFNIQUtFX01BQ19TSEEyNTYgfCBUTFMxX1BSRl9T SEEyNTYsCi0gICAgICAyNTYsCi0gICAgICAyNTYsCi1AQCAtODkwLDcgKzg5MCw3IEBAIHN0YXRp YyBTU0xfQ0lQSEVSIHNzbDNfY2lwaGVyc1tdID0gewotICAgICAgU1NMX0FFQUQsCi0gICAgICBU TFMxXzJfVkVSU0lPTiwgVExTMV8yX1ZFUlNJT04sCi0gICAgICBEVExTMV8yX1ZFUlNJT04sIERU TFMxXzJfVkVSU0lPTiwKLS0gICAgIFNTTF9OT1RfREVGQVVMVCB8IFNTTF9ISUdILAotKyAgICAg U1NMX05PVF9ERUZBVUxUIHwgU1NMX0hJR0ggfCBTU0xfRklQUywKLSAgICAgIFNTTF9IQU5EU0hB S0VfTUFDX1NIQTI1NiB8IFRMUzFfUFJGX1NIQTI1NiwKLSAgICAgIDEyOCwKLSAgICAgIDEyOCwK LUBAIC05MDYsNyArOTA2LDcgQEAgc3RhdGljIFNTTF9DSVBIRVIgc3NsM19jaXBoZXJzW10gPSB7 Ci0gICAgICBTU0xfQUVBRCwKLSAgICAgIFRMUzFfMl9WRVJTSU9OLCBUTFMxXzJfVkVSU0lPTiwK LSAgICAgIERUTFMxXzJfVkVSU0lPTiwgRFRMUzFfMl9WRVJTSU9OLAotLSAgICAgU1NMX05PVF9E RUZBVUxUIHwgU1NMX0hJR0gsCi0rICAgICBTU0xfTk9UX0RFRkFVTFQgfCBTU0xfSElHSCB8IFNT TF9GSVBTLAotICAgICAgU1NMX0hBTkRTSEFLRV9NQUNfU0hBMjU2IHwgVExTMV9QUkZfU0hBMjU2 LAotICAgICAgMjU2LAotICAgICAgMjU2LAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovc3NsL3Nz bF9jaXBoLmMuZmlwcyBvcGVuc3NsLTEuMS4xai9zc2wvc3NsX2NpcGguYwotLS0tIG9wZW5zc2wt MS4xLjFqL3NzbC9zc2xfY2lwaC5jLmZpcHMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xOTM3MzQ0NzYg KzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xai9zc2wvc3NsX2NpcGguYwkyMDIxLTAzLTAzIDEyOjU3 OjQyLjIwNjczNDU4MyArMDEwMAotQEAgLTM4Nyw3ICszODcsNyBAQCBpbnQgc3NsX2xvYWRfY2lw aGVycyh2b2lkKQotICAgICAgICAgfQotICAgICB9Ci0gICAgIC8qIE1ha2Ugc3VyZSB3ZSBjYW4g YWNjZXNzIE1ENSBhbmQgU0hBMSAqLwotLSAgICBpZiAoIW9zc2xfYXNzZXJ0KHNzbF9kaWdlc3Rf bWV0aG9kc1tTU0xfTURfTUQ1X0lEWF0gIT0gTlVMTCkpCi0rICAgIGlmICghRklQU19tb2RlKCkg JiYgIW9zc2xfYXNzZXJ0KHNzbF9kaWdlc3RfbWV0aG9kc1tTU0xfTURfTUQ1X0lEWF0gIT0gTlVM TCkpCi0gICAgICAgICByZXR1cm4gMDsKLSAgICAgaWYgKCFvc3NsX2Fzc2VydChzc2xfZGlnZXN0 X21ldGhvZHNbU1NMX01EX1NIQTFfSURYXSAhPSBOVUxMKSkKLSAgICAgICAgIHJldHVybiAwOwot QEAgLTU1OSw2ICs1NTksOSBAQCBpbnQgc3NsX2NpcGhlcl9nZXRfZXZwKGNvbnN0IFNTTF9TRVNT SU9OCi0gICAgICAgICAgICAgcy0+c3NsX3ZlcnNpb24gPCBUTFMxX1ZFUlNJT04pCi0gICAgICAg ICAgICAgcmV0dXJuIDE7Ci0gCi0rICAgICAgICBpZiAoRklQU19tb2RlKCkpCi0rICAgICAgICAg ICAgcmV0dXJuIDE7Ci0rCi0gICAgICAgICBpZiAoYy0+YWxnb3JpdGhtX2VuYyA9PSBTU0xfUkM0 ICYmCi0gICAgICAgICAgICAgYy0+YWxnb3JpdGhtX21hYyA9PSBTU0xfTUQ1ICYmCi0gICAgICAg ICAgICAgKGV2cCA9IEVWUF9nZXRfY2lwaGVyYnluYW1lKCJSQzQtSE1BQy1NRDUiKSkpCi1AQCAt NjY3LDYgKzY3MCw4IEBAIHN0YXRpYyB2b2lkIHNzbF9jaXBoZXJfY29sbGVjdF9jaXBoZXJzKGMK LSAgICAgICAgIC8qIGRyb3AgdGhvc2UgdGhhdCB1c2UgYW55IG9mIHRoYXQgaXMgbm90IGF2YWls YWJsZSAqLwotICAgICAgICAgaWYgKGMgPT0gTlVMTCB8fCAhYy0+dmFsaWQpCi0gICAgICAgICAg ICAgY29udGludWU7Ci0rICAgICAgICBpZiAoRklQU19tb2RlKCkgJiYgIShjLT5hbGdvX3N0cmVu Z3RoICYgU1NMX0ZJUFMpKQotKyAgICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICAgaWYgKChj LT5hbGdvcml0aG1fbWtleSAmIGRpc2FibGVkX21rZXkpIHx8Ci0gICAgICAgICAgICAgKGMtPmFs Z29yaXRobV9hdXRoICYgZGlzYWJsZWRfYXV0aCkgfHwKLSAgICAgICAgICAgICAoYy0+YWxnb3Jp dGhtX2VuYyAmIGRpc2FibGVkX2VuYykgfHwKLUBAIC0xNjcxLDcgKzE2NzYsOCBAQCBTVEFDS19P RihTU0xfQ0lQSEVSKSAqc3NsX2NyZWF0ZV9jaXBoZXJfCi0gICAgICAqIHRvIHRoZSByZXN1bHRp bmcgcHJlY2VkZW5jZSB0byB0aGUgU1RBQ0tfT0YoU1NMX0NJUEhFUikuCi0gICAgICAqLwotICAg ICBmb3IgKGN1cnIgPSBoZWFkOyBjdXJyICE9IE5VTEw7IGN1cnIgPSBjdXJyLT5uZXh0KSB7Ci0t ICAgICAgICBpZiAoY3Vyci0+YWN0aXZlKSB7Ci0rICAgICAgICBpZiAoY3Vyci0+YWN0aXZlCi0r ICAgICAgICAgICAgJiYgKCFGSVBTX21vZGUoKSB8fCBjdXJyLT5jaXBoZXItPmFsZ29fc3RyZW5n dGggJiBTU0xfRklQUykpIHsKLSAgICAgICAgICAgICBpZiAoIXNrX1NTTF9DSVBIRVJfcHVzaChj aXBoZXJzdGFjaywgY3Vyci0+Y2lwaGVyKSkgewotICAgICAgICAgICAgICAgICBPUEVOU1NMX2Zy ZWUoY29fbGlzdCk7Ci0gICAgICAgICAgICAgICAgIHNrX1NTTF9DSVBIRVJfZnJlZShjaXBoZXJz dGFjayk7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai9zc2wvc3NsX2luaXQuYy5maXBzIG9wZW5z c2wtMS4xLjFqL3NzbC9zc2xfaW5pdC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovc3NsL3NzbF9pbml0 LmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wt MS4xLjFqL3NzbC9zc2xfaW5pdC5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjA2NzM0NTgzICswMTAw Ci1AQCAtMjcsNiArMjcsMTAgQEAgREVGSU5FX1JVTl9PTkNFX1NUQVRJQyhvc3NsX2luaXRfc3Ns X2JhcwotICAgICBmcHJpbnRmKHN0ZGVyciwgIk9QRU5TU0xfSU5JVDogb3NzbF9pbml0X3NzbF9i YXNlOiAiCi0gICAgICAgICAgICAgIkFkZGluZyBTU0wgY2lwaGVycyBhbmQgZGlnZXN0c1xuIik7 Ci0gI2VuZGlmCi0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyAgICBpZiAoIUZJUFNfbW9kZSgpKSB7 Ci0rI2VuZGlmCi0rCi0gI2lmbmRlZiBPUEVOU1NMX05PX0RFUwotICAgICBFVlBfYWRkX2NpcGhl cihFVlBfZGVzX2NiYygpKTsKLSAgICAgRVZQX2FkZF9jaXBoZXIoRVZQX2Rlc19lZGUzX2NiYygp KTsKLUBAIC04Nyw2ICs5MSwzMSBAQCBERUZJTkVfUlVOX09OQ0VfU1RBVElDKG9zc2xfaW5pdF9z c2xfYmFzCi0gICAgIEVWUF9hZGRfZGlnZXN0KEVWUF9zaGEyNTYoKSk7Ci0gICAgIEVWUF9hZGRf ZGlnZXN0KEVWUF9zaGEzODQoKSk7Ci0gICAgIEVWUF9hZGRfZGlnZXN0KEVWUF9zaGE1MTIoKSk7 Ci0rI2lmZGVmIE9QRU5TU0xfRklQUwotKyAgICB9IGVsc2UgewotKyMgaWZuZGVmIE9QRU5TU0xf Tk9fREVTCi0rICAgICAgICBFVlBfYWRkX2NpcGhlcihFVlBfZGVzX2VkZTNfY2JjKCkpOwotKyMg ZW5kaWYKLSsgICAgICAgIEVWUF9hZGRfY2lwaGVyKEVWUF9hZXNfMTI4X2NiYygpKTsKLSsgICAg ICAgIEVWUF9hZGRfY2lwaGVyKEVWUF9hZXNfMTkyX2NiYygpKTsKLSsgICAgICAgIEVWUF9hZGRf Y2lwaGVyKEVWUF9hZXNfMjU2X2NiYygpKTsKLSsgICAgICAgIEVWUF9hZGRfY2lwaGVyKEVWUF9h ZXNfMTI4X2djbSgpKTsKLSsgICAgICAgIEVWUF9hZGRfY2lwaGVyKEVWUF9hZXNfMjU2X2djbSgp KTsKLSsgICAgICAgIEVWUF9hZGRfY2lwaGVyKEVWUF9hZXNfMTI4X2NjbSgpKTsKLSsgICAgICAg IEVWUF9hZGRfY2lwaGVyKEVWUF9hZXNfMjU2X2NjbSgpKTsKLSsjIGlmbmRlZiBPUEVOU1NMX05P X01ENQotKyAgICAgICAgLyogbmVlZGVkIGV2ZW4gaW4gdGhlIEZJUFMgbW9kZSBmb3IgVExTLTEu MCAqLwotKyAgICAgICAgRVZQX2FkZF9kaWdlc3QoRVZQX21kNV9zaGExKCkpOwotKyMgZW5kaWYK LSsgICAgICAgIEVWUF9hZGRfZGlnZXN0KEVWUF9zaGExKCkpOyAvKiBSU0Egd2l0aCBzaGExICov Ci0rICAgICAgICBFVlBfYWRkX2RpZ2VzdF9hbGlhcyhTTl9zaGExLCAic3NsMy1zaGExIik7Ci0r ICAgICAgICBFVlBfYWRkX2RpZ2VzdF9hbGlhcyhTTl9zaGExV2l0aFJTQUVuY3J5cHRpb24sIFNO X3NoYTFXaXRoUlNBKTsKLSsgICAgICAgIEVWUF9hZGRfZGlnZXN0KEVWUF9zaGEyMjQoKSk7Ci0r ICAgICAgICBFVlBfYWRkX2RpZ2VzdChFVlBfc2hhMjU2KCkpOwotKyAgICAgICAgRVZQX2FkZF9k aWdlc3QoRVZQX3NoYTM4NCgpKTsKLSsgICAgICAgIEVWUF9hZGRfZGlnZXN0KEVWUF9zaGE1MTIo KSk7Ci0rICAgIH0KLSsjZW5kaWYKLSAjaWZuZGVmIE9QRU5TU0xfTk9fQ09NUAotICMgaWZkZWYg T1BFTlNTTF9JTklUX0RFQlVHCi0gICAgIGZwcmludGYoc3RkZXJyLCAiT1BFTlNTTF9JTklUOiBv c3NsX2luaXRfc3NsX2Jhc2U6ICIKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFqL3NzbC9zc2xfbGli LmMuZmlwcyBvcGVuc3NsLTEuMS4xai9zc2wvc3NsX2xpYi5jCi0tLS0gb3BlbnNzbC0xLjEuMWov c3NsL3NzbF9saWIuYy5maXBzCTIwMjEtMDMtMDMgMTI6NTc6NDIuMTkzNzM0NDc2ICswMTAwCi0r Kysgb3BlbnNzbC0xLjEuMWovc3NsL3NzbF9saWIuYwkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwNjcz NDU4MyArMDEwMAotQEAgLTI5NzMsNiArMjk3MywxMSBAQCBTU0xfQ1RYICpTU0xfQ1RYX25ldyhj b25zdCBTU0xfTUVUSE9EICptCi0gICAgIGlmICghT1BFTlNTTF9pbml0X3NzbChPUEVOU1NMX0lO SVRfTE9BRF9TU0xfU1RSSU5HUywgTlVMTCkpCi0gICAgICAgICByZXR1cm4gTlVMTDsKLSAKLSsg ICAgaWYgKEZJUFNfbW9kZSgpICYmIChtZXRoLT52ZXJzaW9uIDwgVExTMV9WRVJTSU9OKSkgewot KyAgICAgICAgU1NMZXJyKFNTTF9GX1NTTF9DVFhfTkVXLCBTU0xfUl9BVF9MRUFTVF9UTFNfMV8w X05FRURFRF9JTl9GSVBTX01PREUpOwotKyAgICAgICAgcmV0dXJuIE5VTEw7Ci0rICAgIH0KLSsK LSAgICAgaWYgKFNTTF9nZXRfZXhfZGF0YV9YNTA5X1NUT1JFX0NUWF9pZHgoKSA8IDApIHsKLSAg ICAgICAgIFNTTGVycihTU0xfRl9TU0xfQ1RYX05FVywgU1NMX1JfWDUwOV9WRVJJRklDQVRJT05f U0VUVVBfUFJPQkxFTVMpOwotICAgICAgICAgZ290byBlcnI7Ci1AQCAtMzAyOSwxMyArMzAzNCwx NyBAQCBTU0xfQ1RYICpTU0xfQ1RYX25ldyhjb25zdCBTU0xfTUVUSE9EICptCi0gICAgIGlmIChy ZXQtPnBhcmFtID09IE5VTEwpCi0gICAgICAgICBnb3RvIGVycjsKLSAKLS0gICAgaWYgKChyZXQt Pm1kNSA9IEVWUF9nZXRfZGlnZXN0YnluYW1lKCJzc2wzLW1kNSIpKSA9PSBOVUxMKSB7Ci0tICAg ICAgICBTU0xlcnIoU1NMX0ZfU1NMX0NUWF9ORVcsIFNTTF9SX1VOQUJMRV9UT19MT0FEX1NTTDNf TUQ1X1JPVVRJTkVTKTsKLS0gICAgICAgIGdvdG8gZXJyMjsKLS0gICAgfQotLSAgICBpZiAoKHJl dC0+c2hhMSA9IEVWUF9nZXRfZGlnZXN0YnluYW1lKCJzc2wzLXNoYTEiKSkgPT0gTlVMTCkgewot LSAgICAgICAgU1NMZXJyKFNTTF9GX1NTTF9DVFhfTkVXLCBTU0xfUl9VTkFCTEVfVE9fTE9BRF9T U0wzX1NIQTFfUk9VVElORVMpOwotLSAgICAgICAgZ290byBlcnIyOwotKyAgICBpZiAoIUZJUFNf bW9kZSgpKSB7Ci0rICAgICAgICBpZiAoKHJldC0+bWQ1ID0gRVZQX2dldF9kaWdlc3RieW5hbWUo InNzbDMtbWQ1IikpID09IE5VTEwpIHsKLSsgICAgICAgICAgICBTU0xlcnIoU1NMX0ZfU1NMX0NU WF9ORVcsIFNTTF9SX1VOQUJMRV9UT19MT0FEX1NTTDNfTUQ1X1JPVVRJTkVTKTsKLSsgICAgICAg ICAgICBnb3RvIGVycjI7Ci0rICAgICAgICB9Ci0rICAgICAgICBpZiAoKHJldC0+c2hhMSA9IEVW UF9nZXRfZGlnZXN0YnluYW1lKCJzc2wzLXNoYTEiKSkgPT0gTlVMTCkgewotKyAgICAgICAgICAg IFNTTGVycihTU0xfRl9TU0xfQ1RYX05FVywgU1NMX1JfVU5BQkxFX1RPX0xPQURfU1NMM19TSEEx X1JPVVRJTkVTKTsKLSsgICAgICAgICAgICBnb3RvIGVycjI7Ci0rICAgICAgICB9Ci0rICAgIH0g ZWxzZSB7Ci0rICAgICAgICByZXQtPm1pbl9wcm90b192ZXJzaW9uID0gVExTMV9WRVJTSU9OOwot ICAgICB9Ci0gCi0gICAgIGlmICgocmV0LT5jYV9uYW1lcyA9IHNrX1g1MDlfTkFNRV9uZXdfbnVs bCgpKSA9PSBOVUxMKQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWovc3NsL3NzbF9sb2NhbC5oLmZp cHMgb3BlbnNzbC0xLjEuMWovc3NsL3NzbF9sb2NhbC5oCi0tLS0gb3BlbnNzbC0xLjEuMWovc3Ns L3NzbF9sb2NhbC5oLmZpcHMJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4xMDA3MzM3MDYgKzAxMDAKLSsr KyBvcGVuc3NsLTEuMS4xai9zc2wvc3NsX2xvY2FsLmgJMjAyMS0wMy0wMyAxMjo1Nzo0Mi4yMDY3 MzQ1ODMgKzAxMDAKLUBAIC0xNTE1LDYgKzE1MTUsNyBAQCB0eXBlZGVmIHN0cnVjdCB0bHNfZ3Jv dXBfaW5mb19zdCB7Ci0gIyBkZWZpbmUgVExTX0NVUlZFX1BSSU1FICAgICAgICAgMHgwCi0gIyBk ZWZpbmUgVExTX0NVUlZFX0NIQVIyICAgICAgICAgMHgxCi0gIyBkZWZpbmUgVExTX0NVUlZFX0NV U1RPTSAgICAgICAgMHgyCi0rIyBkZWZpbmUgVExTX0NVUlZFX0ZJUFMgICAgICAgICAgMHg4MAot IAotIHR5cGVkZWYgc3RydWN0IGNlcnRfcGtleV9zdCBDRVJUX1BLRVk7Ci0gCi1kaWZmIC11cCBv cGVuc3NsLTEuMS4xai9zc2wvdDFfbGliLmMuZmlwcyBvcGVuc3NsLTEuMS4xai9zc2wvdDFfbGli LmMKLS0tLSBvcGVuc3NsLTEuMS4xai9zc2wvdDFfbGliLmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0 OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL3NzbC90MV9saWIuYwkyMDIx LTAzLTAzIDEyOjU3OjQyLjIwNzczNDU5MSArMDEwMAotQEAgLTE1OSwxMSArMTU5LDExIEBAIHN0 YXRpYyBjb25zdCBUTFNfR1JPVVBfSU5GTyBuaWRfbGlzdFtdID0KLSAgICAge05JRF9zZWNwMTky azEsIDgwLCBUTFNfQ1VSVkVfUFJJTUV9LCAvKiBzZWNwMTkyazEgKDE4KSAqLwotICAgICB7TklE X1g5XzYyX3ByaW1lMTkydjEsIDgwLCBUTFNfQ1VSVkVfUFJJTUV9LCAvKiBzZWNwMTkycjEgKDE5 KSAqLwotICAgICB7TklEX3NlY3AyMjRrMSwgMTEyLCBUTFNfQ1VSVkVfUFJJTUV9LCAvKiBzZWNw MjI0azEgKDIwKSAqLwotLSAgICB7TklEX3NlY3AyMjRyMSwgMTEyLCBUTFNfQ1VSVkVfUFJJTUV9 LCAvKiBzZWNwMjI0cjEgKDIxKSAqLwotKyAgICB7TklEX3NlY3AyMjRyMSwgMTEyLCBUTFNfQ1VS VkVfUFJJTUUgfCBUTFNfQ1VSVkVfRklQU30sIC8qIHNlY3AyMjRyMSAoMjEpICovCi0gICAgIHtO SURfc2VjcDI1NmsxLCAxMjgsIFRMU19DVVJWRV9QUklNRX0sIC8qIHNlY3AyNTZrMSAoMjIpICov Ci0tICAgIHtOSURfWDlfNjJfcHJpbWUyNTZ2MSwgMTI4LCBUTFNfQ1VSVkVfUFJJTUV9LCAvKiBz ZWNwMjU2cjEgKDIzKSAqLwotLSAgICB7TklEX3NlY3AzODRyMSwgMTkyLCBUTFNfQ1VSVkVfUFJJ TUV9LCAvKiBzZWNwMzg0cjEgKDI0KSAqLwotLSAgICB7TklEX3NlY3A1MjFyMSwgMjU2LCBUTFNf Q1VSVkVfUFJJTUV9LCAvKiBzZWNwNTIxcjEgKDI1KSAqLwotKyAgICB7TklEX1g5XzYyX3ByaW1l MjU2djEsIDEyOCwgVExTX0NVUlZFX1BSSU1FIHwgVExTX0NVUlZFX0ZJUFN9LCAvKiBzZWNwMjU2 cjEgKDIzKSAqLwotKyAgICB7TklEX3NlY3AzODRyMSwgMTkyLCBUTFNfQ1VSVkVfUFJJTUUgfCBU TFNfQ1VSVkVfRklQU30sIC8qIHNlY3AzODRyMSAoMjQpICovCi0rICAgIHtOSURfc2VjcDUyMXIx LCAyNTYsIFRMU19DVVJWRV9QUklNRSB8IFRMU19DVVJWRV9GSVBTfSwgLyogc2VjcDUyMXIxICgy NSkgKi8KLSAgICAge05JRF9icmFpbnBvb2xQMjU2cjEsIDEyOCwgVExTX0NVUlZFX1BSSU1FfSwg LyogYnJhaW5wb29sUDI1NnIxICgyNikgKi8KLSAgICAge05JRF9icmFpbnBvb2xQMzg0cjEsIDE5 MiwgVExTX0NVUlZFX1BSSU1FfSwgLyogYnJhaW5wb29sUDM4NHIxICgyNykgKi8KLSAgICAge05J RF9icmFpbnBvb2xQNTEycjEsIDI1NiwgVExTX0NVUlZFX1BSSU1FfSwgLyogYnJhaW5wb29sNTEy cjEgKDI4KSAqLwotQEAgLTI1OCw2ICsyNTgsOCBAQCBpbnQgdGxzX2N1cnZlX2FsbG93ZWQoU1NM ICpzLCB1aW50MTZfdCBjCi0gICAgIGlmIChjaW5mby0+ZmxhZ3MgJiBUTFNfQ1VSVkVfQ0hBUjIp Ci0gICAgICAgICByZXR1cm4gMDsKLSAjIGVuZGlmCi0rICAgIGlmIChGSVBTX21vZGUoKSAmJiAh KGNpbmZvLT5mbGFncyAmIFRMU19DVVJWRV9GSVBTKSkKLSsgICAgICAgIHJldHVybiAwOwotICAg ICBjdG1wWzBdID0gY3VydmUgPj4gODsKLSAgICAgY3RtcFsxXSA9IGN1cnZlICYgMHhmZjsKLSAg ICAgcmV0dXJuIHNzbF9zZWN1cml0eShzLCBvcCwgY2luZm8tPnNlY2JpdHMsIGNpbmZvLT5uaWQs ICh2b2lkICopY3RtcCk7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai90ZXN0L2RzYXRlc3QuYy5m aXBzIG9wZW5zc2wtMS4xLjFqL3Rlc3QvZHNhdGVzdC5jCi0tLS0gb3BlbnNzbC0xLjEuMWovdGVz dC9kc2F0ZXN0LmMuZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysr IG9wZW5zc2wtMS4xLjFqL3Rlc3QvZHNhdGVzdC5jCTIwMjEtMDMtMDMgMTI6NTc6NDIuMjA3NzM0 NTkxICswMTAwCi1AQCAtMjQsNDEgKzI0LDQyIEBACi0gI2lmbmRlZiBPUEVOU1NMX05PX0RTQQot IHN0YXRpYyBpbnQgZHNhX2NiKGludCBwLCBpbnQgbiwgQk5fR0VOQ0IgKmFyZyk7Ci0gCi0tLyoK LS0gKiBzZWVkLCBvdXRfcCwgb3V0X3EsIG91dF9nIGFyZSB0YWtlbiBmcm9tIHRoZSB1cGRhdGVk IEFwcGVuZGl4IDUgdG8gRklQUwotLSAqIFBVQiAxODYgYW5kIGFsc28gYXBwZWFyIGluIEFwcGVu ZGl4IDUgdG8gRklQUyBQSUIgMTg2LTEKLS0gKi8KLSBzdGF0aWMgdW5zaWduZWQgY2hhciBzZWVk WzIwXSA9IHsKLS0gICAgMHhkNSwgMHgwMSwgMHg0ZSwgMHg0YiwgMHg2MCwgMHhlZiwgMHgyYiwg MHhhOCwgMHhiNiwgMHgyMSwgMHgxYiwgMHg0MCwKLS0gICAgMHg2MiwgMHhiYSwgMHgzMiwgMHgy NCwgMHhlMCwgMHg0MiwgMHg3ZCwgMHhkMywKLSsgICAgMHgwMiwgMHg0NywgMHgxMSwgMHg5Miwg MHgxMSwgMHg4OCwgMHhDOCwgMHhGQiwgMHhBRiwgMHg0OCwgMHg0QywgMHg2MiwKLSsgICAgMHhE RiwgMHhBNSwgMHhCRSwgMHhBMCwgMHhBNCwgMHgzQywgMHg1NiwgMHhFMywKLSB9OwotIAotIHN0 YXRpYyB1bnNpZ25lZCBjaGFyIG91dF9wW10gPSB7Ci0tICAgIDB4OGQsIDB4ZjIsIDB4YTQsIDB4 OTQsIDB4NDksIDB4MjIsIDB4NzYsIDB4YWEsCi0tICAgIDB4M2QsIDB4MjUsIDB4NzUsIDB4OWIs IDB4YjAsIDB4NjgsIDB4NjksIDB4Y2IsCi0tICAgIDB4ZWEsIDB4YzAsIDB4ZDgsIDB4M2EsIDB4 ZmIsIDB4OGQsIDB4MGMsIDB4ZjcsCi0tICAgIDB4Y2IsIDB4YjgsIDB4MzIsIDB4NGYsIDB4MGQs IDB4NzgsIDB4ODIsIDB4ZTUsCi0tICAgIDB4ZDAsIDB4NzYsIDB4MmYsIDB4YzUsIDB4YjcsIDB4 MjEsIDB4MGUsIDB4YWYsCi0tICAgIDB4YzIsIDB4ZTksIDB4YWQsIDB4YWMsIDB4MzIsIDB4YWIs IDB4N2EsIDB4YWMsCi0tICAgIDB4NDksIDB4NjksIDB4M2QsIDB4ZmIsIDB4ZjgsIDB4MzcsIDB4 MjQsIDB4YzIsCi0tICAgIDB4ZWMsIDB4MDcsIDB4MzYsIDB4ZWUsIDB4MzEsIDB4YzgsIDB4MDIs IDB4OTEsCi0rICAgIDB4QUMsIDB4Q0IsIDB4MUUsIDB4NjMsIDB4NjAsIDB4NjksIDB4MEMsIDB4 RkIsIDB4MDYsIDB4MTksIDB4NjgsIDB4M0UsCi0rICAgIDB4QTUsIDB4MDEsIDB4NUEsIDB4QTIs IDB4MTUsIDB4NUMsIDB4RTIsIDB4OTksIDB4MkQsIDB4RDUsIDB4MzAsIDB4OTksCi0rICAgIDB4 N0UsIDB4NUYsIDB4OEQsIDB4RTIsIDB4RjcsIDB4QzYsIDB4MkUsIDB4OEQsIDB4QTMsIDB4OUYs IDB4NTgsIDB4QUQsCi0rICAgIDB4RDYsIDB4QTksIDB4N0QsIDB4MEUsIDB4MEQsIDB4OTUsIDB4 NTMsIDB4QTYsIDB4NzEsIDB4M0EsIDB4REUsIDB4QUIsCi0rICAgIDB4QUMsIDB4RTksIDB4RjQs IDB4MzYsIDB4NTUsIDB4OUUsIDB4QjksIDB4RDYsIDB4OTMsIDB4QkYsIDB4RjMsIDB4MTgsCi0r ICAgIDB4MUMsIDB4MTQsIDB4N0IsIDB4QTUsIDB4NDIsIDB4MkUsIDB4Q0QsIDB4MDAsIDB4RUIs IDB4MzUsIDB4M0IsIDB4MUIsCi0rICAgIDB4QTgsIDB4NTEsIDB4QkIsIDB4RTEsIDB4NTgsIDB4 NDIsIDB4ODUsIDB4ODQsIDB4MjIsIDB4QTcsIDB4OTcsIDB4NUUsCi0rICAgIDB4OTksIDB4NkYs IDB4MzgsIDB4MjAsIDB4QkQsIDB4OUQsIDB4QjYsIDB4RDksIDB4MzMsIDB4MzcsIDB4MkEsIDB4 RkQsCi0rICAgIDB4QkIsIDB4RDQsIDB4QkMsIDB4MEMsIDB4MkEsIDB4NjcsIDB4Q0IsIDB4OUYs IDB4QkIsIDB4REYsIDB4RjksIDB4OTMsCi0rICAgIDB4QUEsIDB4RDYsIDB4RjAsIDB4RDYsIDB4 OTUsIDB4MEIsIDB4NUQsIDB4NjUsIDB4MTQsIDB4RDAsIDB4MTgsIDB4OUQsCi0rICAgIDB4QzYs IDB4QUYsIDB4RjAsIDB4QzYsIDB4MzcsIDB4N0MsIDB4RjMsIDB4NUYsCi0gfTsKLSAKLSBzdGF0 aWMgdW5zaWduZWQgY2hhciBvdXRfcVtdID0gewotLSAgICAweGM3LCAweDczLCAweDIxLCAweDhj LCAweDczLCAweDdlLCAweGM4LCAweGVlLAotLSAgICAweDk5LCAweDNiLCAweDRmLCAweDJkLCAw eGVkLCAweDMwLCAweGY0LCAweDhlLAotLSAgICAweGRhLCAweGNlLCAweDkxLCAweDVmLAotKyAg ICAweEUzLCAweDhFLCAweDVFLCAweDZELCAweEJGLCAweDJCLCAweDc5LCAweEY4LCAweEM1LCAw eDRCLCAweDg5LCAweDhCLAotKyAgICAweEJBLCAweDJELCAweDkxLCAweEMzLCAweDZDLCAweDgw LCAweEFDLCAweDg3LAotIH07Ci0gCi0gc3RhdGljIHVuc2lnbmVkIGNoYXIgb3V0X2dbXSA9IHsK LS0gICAgMHg2MiwgMHg2ZCwgMHgwMiwgMHg3OCwgMHgzOSwgMHhlYSwgMHgwYSwgMHgxMywKLS0g ICAgMHg0MSwgMHgzMSwgMHg2MywgMHhhNSwgMHg1YiwgMHg0YywgMHhiNSwgMHgwMCwKLS0gICAg MHgyOSwgMHg5ZCwgMHg1NSwgMHgyMiwgMHg5NSwgMHg2YywgMHhlZiwgMHhjYiwKLS0gICAgMHgz YiwgMHhmZiwgMHgxMCwgMHhmMywgMHg5OSwgMHhjZSwgMHgyYywgMHgyZSwKLS0gICAgMHg3MSwg MHhjYiwgMHg5ZCwgMHhlNSwgMHhmYSwgMHgyNCwgMHhiYSwgMHhiZiwKLS0gICAgMHg1OCwgMHhl NSwgMHhiNywgMHg5NSwgMHgyMSwgMHg5MiwgMHg1YywgMHg5YywKLS0gICAgMHhjNCwgMHgyZSwg MHg5ZiwgMHg2ZiwgMHg0NiwgMHg0YiwgMHgwOCwgMHg4YywKLS0gICAgMHhjNSwgMHg3MiwgMHhh ZiwgMHg1MywgMHhlNiwgMHhkNywgMHg4OCwgMHgwMiwKLSsgICAgMHg0MiwgMHg0QSwgMHgwNCwg MHg0RSwgMHg3OSwgMHhCNCwgMHg5OSwgMHg3RiwgMHhGRCwgMHg1OCwgMHgzNiwgMHgyQywKLSsg ICAgMHgxQiwgMHg1RiwgMHgxOCwgMHg3RSwgMHgwRCwgMHhDQywgMHhBQiwgMHg4MSwgMHhDOSwg MHg1RCwgMHgxMCwgMHhDRSwKLSsgICAgMHg0RSwgMHg4MCwgMHg3RSwgMHg1OCwgMHhCNCwgMHgz NCwgMHgzRiwgMHhBNywgMHg0NSwgMHhDNywgMHhBQSwgMHgzNiwKLSsgICAgMHgyNCwgMHg0Miwg MHhBOSwgMHgzQiwgMHhFOCwgMHgwRSwgMHgwNCwgMHgwMiwgMHgyRCwgMHhGQiwgMHhBNiwgMHgx MywKLSsgICAgMHhCOSwgMHhCNSwgMHgxNSwgMHhBNSwgMHg1NiwgMHgwNywgMHgzNSwgMHhFNCwg MHgwMywgMHhCNiwgMHg3OSwgMHg3QywKLSsgICAgMHg2MiwgMHhERCwgMHhERiwgMHgzRiwgMHg3 MSwgMHgzQSwgMHg5RCwgMHg4QiwgMHhDNCwgMHhGNiwgMHhFNywgMHgxRCwKLSsgICAgMHg1Miwg MHhBOCwgMHhBOSwgMHg0MywgMHgxRCwgMHgzMywgMHg1MSwgMHg4OCwgMHgzOSwgMHhCRCwgMHg3 MywgMHhFOSwKLSsgICAgMHg1RiwgMHhCRSwgMHg4MiwgMHg0OSwgMHgyNywgMHhFNiwgMHhCNSwg MHg1MywgMHhDMSwgMHgzOCwgMHhBQywgMHgyRiwKLSsgICAgMHg2RCwgMHg5NywgMHg2QywgMHhF QiwgMHg2NywgMHhDMSwgMHg1RiwgMHg2NywgMHhGOCwgMHgzNSwgMHgwNSwgMHg1RSwKLSsgICAg MHhENSwgMHg2OCwgMHg4MCwgMHhBQSwgMHg5NiwgMHhDQSwgMHgwQiwgMHg4QSwgMHhFNiwgMHhG MSwgMHhCMSwgMHg0MSwKLSsgICAgMHhDNiwgMHg3NSwgMHg5NCwgMHgwQSwgMHgwQSwgMHgyQSwg MHhGQSwgMHgyOSwKLSB9OwotIAotIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIHN0cjFbXSA9 ICIxMjM0NTY3ODkwMTIzNDU2Nzg5MCI7Ci1AQCAtNzksMTEgKzgwLDExIEBAIHN0YXRpYyBpbnQg ZHNhX3Rlc3Qodm9pZCkKLSAKLSAgICAgQk5fR0VOQ0Jfc2V0KGNiLCBkc2FfY2IsIE5VTEwpOwot ICAgICBpZiAoIVRFU1RfcHRyKGRzYSA9IERTQV9uZXcoKSkKLS0gICAgICAgIHx8ICFURVNUX3Ry dWUoRFNBX2dlbmVyYXRlX3BhcmFtZXRlcnNfZXgoZHNhLCA1MTIsIHNlZWQsIDIwLAotKyAgICAg ICAgfHwgIVRFU1RfdHJ1ZShEU0FfZ2VuZXJhdGVfcGFyYW1ldGVyc19leChkc2EsIDEwMjQsIHNl ZWQsIDIwLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICZjb3VudGVyLCAmaCwgY2IpKSkKLSAgICAgICAgIGdvdG8gZW5kOwotIAotLSAgICBpZiAoIVRF U1RfaW50X2VxKGNvdW50ZXIsIDEwNSkpCi0rICAgIGlmICghVEVTVF9pbnRfZXEoY291bnRlciwg MjM5KSkKLSAgICAgICAgIGdvdG8gZW5kOwotICAgICBpZiAoIVRFU1RfaW50X2VxKGgsIDIpKQot ICAgICAgICAgZ290byBlbmQ7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xai90ZXN0L3JlY2lwZXMv MzAtdGVzdF9ldnBfZGF0YS9ldnBjaXBoLnR4dC5maXBzIG9wZW5zc2wtMS4xLjFqL3Rlc3QvcmVj aXBlcy8zMC10ZXN0X2V2cF9kYXRhL2V2cGNpcGgudHh0Ci0tLS0gb3BlbnNzbC0xLjEuMWovdGVz dC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwY2lwaC50eHQuZmlwcwkyMDIxLTAyLTE2IDE2 OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFqL3Rlc3QvcmVjaXBlcy8z MC10ZXN0X2V2cF9kYXRhL2V2cGNpcGgudHh0CTIwMjEtMDMtMDMgMTI6NTc6NDIuMjA3NzM0NTkx ICswMTAwCi1AQCAtMTIwNiw2ICsxMjA2LDcgQEAgS2V5ID0gMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMAotIElWID0gMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLSBQ bGFpbnRleHQgPSAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwCi0gQ2lwaGVydGV4dCA9IDkxN2NmNjllYmQ2OGIyZWM5YjlmZTlh M2VhZGRhNjkyY2Q0M2QyZjU5NTk4ZWQ4NThjMDJjMjY1MmZiZjkyMmUKLStSZXN1bHQgPSBLRVlf U0VUX0VSUk9SCi0gCi0gQ2lwaGVyID0gYWVzLTEyOC14dHMKLSBLZXkgPSAxMTExMTExMTExMTEx MTExMTExMTExMTExMTExMTExMTIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyCi1kaWZm IC11cCBvcGVuc3NsLTEuMS4xai91dGlsL2xpYmNyeXB0by5udW0uZmlwcyBvcGVuc3NsLTEuMS4x ai91dGlsL2xpYmNyeXB0by5udW0KLS0tLSBvcGVuc3NsLTEuMS4xai91dGlsL2xpYmNyeXB0by5u dW0uZmlwcwkyMDIxLTAyLTE2IDE2OjI0OjAxLjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wt MS4xLjFqL3V0aWwvbGliY3J5cHRvLm51bQkyMDIxLTAzLTAzIDEyOjU3OjQyLjIwODczNDYwMCAr MDEwMAotQEAgLTQ1OTEsMyArNDU5MSwzOCBAQCBYNTA5X0FMR09SX2NvcHkKLSBYNTA5X1JFUV9z ZXQwX3NpZ25hdHVyZSAgICAgICAgICAgICAgICAgNDU0NQkxXzFfMWgJRVhJU1Q6OkZVTkNUSU9O OgotIFg1MDlfUkVRX3NldDFfc2lnbmF0dXJlX2FsZ28gICAgICAgICAgICA0NTQ2CTFfMV8xaAlF WElTVDo6RlVOQ1RJT046Ci0gRUNfS0VZX2RlY29kZWRfZnJvbV9leHBsaWNpdF9wYXJhbXMgICAg IDQ1NDcJMV8xXzFoCUVYSVNUOjpGVU5DVElPTjpFQwotK0ZJUFNfZHJiZ19yZXNlZWQgICAgICAg ICAgICAgICAgICAgICAgICA2MzQ4CTFfMV8wZwlFWElTVDo6RlVOQ1RJT046Ci0rRklQU19zZWxm dGVzdF9jaGVjayAgICAgICAgICAgICAgICAgICAgIDYzNDkJMV8xXzBnCUVYSVNUOjpGVU5DVElP TjoKLStGSVBTX3JhbmRfc2V0X21ldGhvZCAgICAgICAgICAgICAgICAgICAgNjM1MAkxXzFfMGcJ RVhJU1Q6OkZVTkNUSU9OOgotK0ZJUFNfZ2V0X2RlZmF1bHRfZHJiZyAgICAgICAgICAgICAgICAg ICA2MzUxCTFfMV8wZwlFWElTVDo6RlVOQ1RJT046Ci0rRklQU19kcmJnX3NldF9yZXNlZWRfaW50 ZXJ2YWwgICAgICAgICAgIDYzNTIJMV8xXzBnCUVYSVNUOjpGVU5DVElPTjoKLStGSVBTX2RyYmdf c2V0X2FwcF9kYXRhICAgICAgICAgICAgICAgICAgNjM1MwkxXzFfMGcJRVhJU1Q6OkZVTkNUSU9O OgotK0ZJUFNfZHJiZ19tZXRob2QgICAgICAgICAgICAgICAgICAgICAgICA2MzU0CTFfMV8wZwlF WElTVDo6RlVOQ1RJT046Ci0rRklQU19yYW5kX3N0YXR1cyAgICAgICAgICAgICAgICAgICAgICAg IDYzNTUJMV8xXzBnCUVYSVNUOjpGVU5DVElPTjoKLStGSVBTX2RyYmdfaW5zdGFudGlhdGUgICAg ICAgICAgICAgICAgICAgNjM1NgkxXzFfMGcJRVhJU1Q6OkZVTkNUSU9OOgotK0ZJUFNfZHJiZ19z ZXRfY2FsbGJhY2tzICAgICAgICAgICAgICAgICA2MzU3CTFfMV8wZwlFWElTVDo6RlVOQ1RJT046 Ci0rRklQU19kcmJnX25ldyAgICAgICAgICAgICAgICAgICAgICAgICAgIDYzNTgJMV8xXzBnCUVY SVNUOjpGVU5DVElPTjoKLStGSVBTX2RzYV9wYXJhbWdlbl9jaGVja19nICAgICAgICAgICAgICAg NjM1OQkxXzFfMGcJRVhJU1Q6OkZVTkNUSU9OOgotK0ZJUFNfc2VsZnRlc3QgICAgICAgICAgICAg ICAgICAgICAgICAgICA2MzYwCTFfMV8wZwlFWElTVDo6RlVOQ1RJT046Ci0rRklQU19yYW5kX3Nl dF9iaXRzICAgICAgICAgICAgICAgICAgICAgIDYzNjEJMV8xXzBnCUVYSVNUOjpGVU5DVElPTjoK LStGSVBTX3JhbmRfYnl0ZXMgICAgICAgICAgICAgICAgICAgICAgICAgNjM2MgkxXzFfMGcJRVhJ U1Q6OkZVTkNUSU9OOgotK0ZJUFNfZHJiZ19nZXRfYXBwX2RhdGEgICAgICAgICAgICAgICAgICA2 MzYzCTFfMV8wZwlFWElTVDo6RlVOQ1RJT046Ci0rRklQU19zZWxmdGVzdF9mYWlsZWQgICAgICAg ICAgICAgICAgICAgIDYzNjQJMV8xXzBnCUVYSVNUOjpGVU5DVElPTjoKLStGSVBTX2RzYV9idWls dGluX3BhcmFtZ2VuMiAgICAgICAgICAgICAgNjM2NQkxXzFfMGcJRVhJU1Q6OkZVTkNUSU9OOgot K0ZJUFNfcmFuZF9yZXNldCAgICAgICAgICAgICAgICAgICAgICAgICA2MzY2CTFfMV8wZwlFWElT VDo6RlVOQ1RJT046Ci0rRVJSX2xvYWRfRklQU19zdHJpbmdzICAgICAgICAgICAgICAgICAgIDYz NjcJMV8xXzBnCUVYSVNUOjpGVU5DVElPTjoKLStGSVBTX2RyYmdfZ2VuZXJhdGUgICAgICAgICAg ICAgICAgICAgICAgNjM2OAkxXzFfMGcJRVhJU1Q6OkZVTkNUSU9OOgotK0ZJUFNfZHJiZ191bmlu c3RhbnRpYXRlICAgICAgICAgICAgICAgICA2MzY5CTFfMV8wZwlFWElTVDo6RlVOQ1RJT046Ci0r RklQU19kcmJnX3NldF9jaGVja19pbnRlcnZhbCAgICAgICAgICAgIDYzNzAJMV8xXzBnCUVYSVNU OjpGVU5DVElPTjoKLStGSVBTX2RyYmdfZnJlZSAgICAgICAgICAgICAgICAgICAgICAgICAgNjM3 MQkxXzFfMGcJRVhJU1Q6OkZVTkNUSU9OOgotK0ZJUFNfc2VsZnRlc3RfZHJiZ19hbGwgICAgICAg ICAgICAgICAgICA2MzcyCTFfMV8wZwlFWElTVDo6RlVOQ1RJT046Ci0rRklQU19yYW5kX2dldF9t ZXRob2QgICAgICAgICAgICAgICAgICAgIDYzNzMJMV8xXzBnCUVYSVNUOjpGVU5DVElPTjoKLStS QU5EX3NldF9maXBzX2RyYmdfdHlwZSAgICAgICAgICAgICAgICAgNjM3NAkxXzFfMGcJRVhJU1Q6 OkZVTkNUSU9OOgotK0ZJUFNfZHJiZ19oZWFsdGhfY2hlY2sgICAgICAgICAgICAgICAgICA2Mzc1 CTFfMV8wZwlFWElTVDo6RlVOQ1RJT046Ci0rUkFORF9pbml0X2ZpcHMgICAgICAgICAgICAgICAg ICAgICAgICAgIDYzNzYJMV8xXzBnCUVYSVNUOjpGVU5DVElPTjoKLStGSVBTX2RyYmdfc2V0X3Jh bmRfY2FsbGJhY2tzICAgICAgICAgICAgNjM3NwkxXzFfMGcJRVhJU1Q6OkZVTkNUSU9OOgotK0ZJ UFNfcmFuZF9zZWVkICAgICAgICAgICAgICAgICAgICAgICAgICA2Mzc4CTFfMV8wZwlFWElTVDo6 RlVOQ1RJT046Ci0rRklQU19kcmJnX2dldF9zdHJlbmd0aCAgICAgICAgICAgICAgICAgIDYzNzkJ MV8xXzBnCUVYSVNUOjpGVU5DVElPTjoKLStGSVBTX3JhbmRfc3RyZW5ndGggICAgICAgICAgICAg ICAgICAgICAgNjM4MAkxXzFfMGcJRVhJU1Q6OkZVTkNUSU9OOgotK0ZJUFNfZHJiZ19nZXRfYmxv Y2tsZW5ndGggICAgICAgICAgICAgICA2MzgxCTFfMV8wZwlFWElTVDo6RlVOQ1RJT046Ci0rRklQ U19kcmJnX2luaXQgICAgICAgICAgICAgICAgICAgICAgICAgIDYzODIJMV8xXzBnCUVYSVNUOjpG VU5DVElPTjoKCmRpZmYgLS1naXQgYS9vcGVuc3NsLTEuMS4xLWludGVsLWNldC5wYXRjaCBiL29w ZW5zc2wtMS4xLjEtaW50ZWwtY2V0LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCBhOTViZjljLi4wMDAwMDAwCi0tLSBhL29wZW5zc2wtMS4xLjEtaW50ZWwtY2V0LnBhdGNoCisr KyAvZGV2L251bGwKQEAgLTEsNTAwICswLDAgQEAKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFlL2Ny eXB0by9hZXMvYXNtL2Flc25pLXg4Nl82NC5wbC5pbnRlbC1jZXQgb3BlbnNzbC0xLjEuMWUvY3J5 cHRvL2Flcy9hc20vYWVzbmkteDg2XzY0LnBsCi0tLS0gb3BlbnNzbC0xLjEuMWUvY3J5cHRvL2Fl cy9hc20vYWVzbmkteDg2XzY0LnBsLmludGVsLWNldAkyMDIwLTAzLTE3IDE1OjMxOjE3LjAwMDAw MDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFlL2NyeXB0by9hZXMvYXNtL2Flc25pLXg4Nl82 NC5wbAkyMDIwLTAzLTE5IDE3OjA3OjAyLjYyNjUyMjY5NCArMDEwMAotQEAgLTI3NSw2ICsyNzUs NyBAQCAkY29kZS49PDxfX187Ci0gLmFsaWduCTE2Ci0gJHtQUkVGSVh9X2VuY3J5cHQ6Ci0gLmNm aV9zdGFydHByb2MKLSsJZW5kYnJhbmNoCi0gCW1vdnVwcwkoJGlucCksJGlub3V0MAkJIyBsb2Fk IGlucHV0Ci0gCW1vdgkyNDAoJGtleSksJHJvdW5kcwkjIGtleS0+cm91bmRzCi0gX19fCi1AQCAt MjkzLDYgKzI5NCw3IEBAICRjb2RlLj08PF9fXzsKLSAuYWxpZ24JMTYKLSAke1BSRUZJWH1fZGVj cnlwdDoKLSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJbW92dXBzCSgkaW5wKSwkaW5v dXQwCQkjIGxvYWQgaW5wdXQKLSAJbW92CTI0MCgka2V5KSwkcm91bmRzCSMga2V5LT5yb3VuZHMK LSBfX18KLUBAIC02MTMsNiArNjE1LDcgQEAgJGNvZGUuPTw8X19fOwotIC5hbGlnbgkxNgotIGFl c25pX2VjYl9lbmNyeXB0OgotIC5jZmlfc3RhcnRwcm9jCi0rCWVuZGJyYW5jaAotIF9fXwotICRj b2RlLj08PF9fXyBpZiAoJHdpbjY0KTsKLSAJbGVhCS0weDU4KCVyc3ApLCVyc3AKLUBAIC05ODUs NiArOTg4LDcgQEAgJGNvZGUuPTw8X19fOwotIC5hbGlnbgkxNgotIGFlc25pX2NjbTY0X2VuY3J5 cHRfYmxvY2tzOgotIC5jZmlfc3RhcnRwcm9jCi0rCWVuZGJyYW5jaAotIF9fXwotICRjb2RlLj08 PF9fXyBpZiAoJHdpbjY0KTsKLSAJbGVhCS0weDU4KCVyc3ApLCVyc3AKLUBAIC0xMDc3LDYgKzEw ODEsNyBAQCAkY29kZS49PDxfX187Ci0gLmFsaWduCTE2Ci0gYWVzbmlfY2NtNjRfZGVjcnlwdF9i bG9ja3M6Ci0gLmNmaV9zdGFydHByb2MKLSsJZW5kYnJhbmNoCi0gX19fCi0gJGNvZGUuPTw8X19f IGlmICgkd2luNjQpOwotIAlsZWEJLTB4NTgoJXJzcCksJXJzcAotQEAgLTEyMDMsNiArMTIwOCw3 IEBAICRjb2RlLj08PF9fXzsKLSAuYWxpZ24JMTYKLSBhZXNuaV9jdHIzMl9lbmNyeXB0X2Jsb2Nr czoKLSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJY21wCVwkMSwkbGVuCi0gCWpuZQku TGN0cjMyX2J1bGsKLSAKLUBAIC0xNzc1LDYgKzE3ODEsNyBAQCAkY29kZS49PDxfX187Ci0gLmFs aWduCTE2Ci0gYWVzbmlfeHRzX2VuY3J5cHQ6Ci0gLmNmaV9zdGFydHByb2MKLSsJZW5kYnJhbmNo Ci0gCWxlYQkoJXJzcCksJXIxMQkJCSMgZnJhbWUgcG9pbnRlcgotIC5jZmlfZGVmX2NmYV9yZWdp c3RlcgklcjExCi0gCXB1c2gJJXJicAotQEAgLTIyNTgsNiArMjI2NSw3IEBAICRjb2RlLj08PF9f XzsKLSAuYWxpZ24JMTYKLSBhZXNuaV94dHNfZGVjcnlwdDoKLSAuY2ZpX3N0YXJ0cHJvYwotKwll bmRicmFuY2gKLSAJbGVhCSglcnNwKSwlcjExCQkJIyBmcmFtZSBwb2ludGVyCi0gLmNmaV9kZWZf Y2ZhX3JlZ2lzdGVyCSVyMTEKLSAJcHVzaAklcmJwCi1AQCAtMjc4Myw2ICsyNzkxLDcgQEAgJGNv ZGUuPTw8X19fOwotIC5hbGlnbgkzMgotIGFlc25pX29jYl9lbmNyeXB0OgotIC5jZmlfc3RhcnRw cm9jCi0rCWVuZGJyYW5jaAotIAlsZWEJKCVyc3ApLCVyYXgKLSAJcHVzaAklcmJ4Ci0gLmNmaV9w dXNoCSVyYngKLUBAIC0zMjQ5LDYgKzMyNTgsNyBAQCBfX29jYl9lbmNyeXB0MToKLSAuYWxpZ24J MzIKLSBhZXNuaV9vY2JfZGVjcnlwdDoKLSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJ bGVhCSglcnNwKSwlcmF4Ci0gCXB1c2gJJXJieAotIC5jZmlfcHVzaAklcmJ4Ci1AQCAtMzczNyw2 ICszNzQ3LDcgQEAgJGNvZGUuPTw8X19fOwotIC5hbGlnbgkxNgotICR7UFJFRklYfV9jYmNfZW5j cnlwdDoKLSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJdGVzdAkkbGVuLCRsZW4JCSMg Y2hlY2sgbGVuZ3RoCi0gCWp6CS5MY2JjX3JldAotIAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWUv Y3J5cHRvL2Flcy9hc20vdnBhZXMteDg2XzY0LnBsLmludGVsLWNldCBvcGVuc3NsLTEuMS4xZS9j cnlwdG8vYWVzL2FzbS92cGFlcy14ODZfNjQucGwKLS0tLSBvcGVuc3NsLTEuMS4xZS9jcnlwdG8v YWVzL2FzbS92cGFlcy14ODZfNjQucGwuaW50ZWwtY2V0CTIwMjAtMDMtMTcgMTU6MzE6MTcuMDAw MDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWUvY3J5cHRvL2Flcy9hc20vdnBhZXMteDg2 XzY0LnBsCTIwMjAtMDMtMTkgMTc6MDA6MTUuOTc0NjIxNzU3ICswMTAwCi1AQCAtNjk2LDYgKzY5 Niw3IEBAIF92cGFlc19zY2hlZHVsZV9tYW5nbGU6Ci0gLmFsaWduCTE2Ci0gJHtQUkVGSVh9X3Nl dF9lbmNyeXB0X2tleToKLSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSBfX18KLSAkY29k ZS49PDxfX18gaWYgKCR3aW42NCk7Ci0gCWxlYQktMHhiOCglcnNwKSwlcnNwCi1AQCAtNzQ2LDYg Kzc0Nyw3IEBAICRjb2RlLj08PF9fXzsKLSAuYWxpZ24JMTYKLSAke1BSRUZJWH1fc2V0X2RlY3J5 cHRfa2V5OgotIC5jZmlfc3RhcnRwcm9jCi0rCWVuZGJyYW5jaAotIF9fXwotICRjb2RlLj08PF9f XyBpZiAoJHdpbjY0KTsKLSAJbGVhCS0weGI4KCVyc3ApLCVyc3AKLUBAIC04MDEsNiArODAzLDcg QEAgJGNvZGUuPTw8X19fOwotIC5hbGlnbgkxNgotICR7UFJFRklYfV9lbmNyeXB0OgotIC5jZmlf c3RhcnRwcm9jCi0rCWVuZGJyYW5jaAotIF9fXwotICRjb2RlLj08PF9fXyBpZiAoJHdpbjY0KTsK LSAJbGVhCS0weGI4KCVyc3ApLCVyc3AKLUBAIC04NDYsNiArODQ5LDcgQEAgJGNvZGUuPTw8X19f OwotIC5hbGlnbgkxNgotICR7UFJFRklYfV9kZWNyeXB0OgotIC5jZmlfc3RhcnRwcm9jCi0rCWVu ZGJyYW5jaAotIF9fXwotICRjb2RlLj08PF9fXyBpZiAoJHdpbjY0KTsKLSAJbGVhCS0weGI4KCVy c3ApLCVyc3AKLUBAIC04OTcsNiArOTAxLDcgQEAgJGNvZGUuPTw8X19fOwotIC5hbGlnbgkxNgot ICR7UFJFRklYfV9jYmNfZW5jcnlwdDoKLSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJ eGNoZwkka2V5LCRsZW4KLSBfX18KLSAoJGxlbiwka2V5KT0oJGtleSwkbGVuKTsKLWRpZmYgLXVw IG9wZW5zc2wtMS4xLjFlL2NyeXB0by9hc3luYy9hcmNoL2FzeW5jX3Bvc2l4LmMuaW50ZWwtY2V0 IG9wZW5zc2wtMS4xLjFlL2NyeXB0by9hc3luYy9hcmNoL2FzeW5jX3Bvc2l4LmMKLS0tLSBvcGVu c3NsLTEuMS4xZS9jcnlwdG8vYXN5bmMvYXJjaC9hc3luY19wb3NpeC5jLmludGVsLWNldAkyMDIw LTAzLTE3IDE1OjMxOjE3LjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFlL2NyeXB0 by9hc3luYy9hcmNoL2FzeW5jX3Bvc2l4LmMJMjAyMC0wMy0xOSAxNzowMDoxNS45NzQ2MjE3NTcg KzAxMDAKLUBAIC0zNCw3ICszNCw5IEBAIHZvaWQgYXN5bmNfbG9jYWxfY2xlYW51cCh2b2lkKQot IAotIGludCBhc3luY19maWJyZV9tYWtlY29udGV4dChhc3luY19maWJyZSAqZmlicmUpCi0gewot KyNpZm5kZWYgVVNFX1NXQVBDT05URVhUCi0gICAgIGZpYnJlLT5lbnZfaW5pdCA9IDA7Ci0rI2Vu ZGlmCi0gICAgIGlmIChnZXRjb250ZXh0KCZmaWJyZS0+ZmlicmUpID09IDApIHsKLSAgICAgICAg IGZpYnJlLT5maWJyZS51Y19zdGFjay5zc19zcCA9IE9QRU5TU0xfbWFsbG9jKFNUQUNLU0laRSk7 Ci0gICAgICAgICBpZiAoZmlicmUtPmZpYnJlLnVjX3N0YWNrLnNzX3NwICE9IE5VTEwpIHsKLWRp ZmYgLXVwIG9wZW5zc2wtMS4xLjFlL2NyeXB0by9hc3luYy9hcmNoL2FzeW5jX3Bvc2l4LmguaW50 ZWwtY2V0IG9wZW5zc2wtMS4xLjFlL2NyeXB0by9hc3luYy9hcmNoL2FzeW5jX3Bvc2l4LmgKLS0t LSBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vYXN5bmMvYXJjaC9hc3luY19wb3NpeC5oLmludGVsLWNl dAkyMDIwLTAzLTE5IDE3OjAwOjE1LjQzNTYzMTE2NiArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFl L2NyeXB0by9hc3luYy9hcmNoL2FzeW5jX3Bvc2l4LmgJMjAyMC0wMy0xOSAxNzowMDoxNS45NzU2 MjE3MzkgKzAxMDAKLUBAIC0yNSwxNyArMjUsMzMgQEAKLSAjICBkZWZpbmUgQVNZTkNfUE9TSVgK LSAjICBkZWZpbmUgQVNZTkNfQVJDSAotIAotKyMgIGlmZGVmIF9fQ0VUX18KLSsvKgotKyAqIFdo ZW4gSW50ZWwgQ0VUIGlzIGVuYWJsZWQsIG1ha2Vjb250ZXh0IHdpbGwgY3JlYXRlIGEgZGlmZmVy ZW50Ci0rICogc2hhZG93IHN0YWNrIGZvciBlYWNoIGNvbnRleHQuICBhc3luY19maWJyZV9zd2Fw Y29udGV4dCBjYW5ub3QKLSsgKiB1c2UgX2xvbmdqbXAuICBJdCBtdXN0IGNhbGwgc3dhcGNvbnRl eHQgdG8gc3dhcCBzaGFkb3cgc3RhY2sgYXMKLSsgKiB3ZWxsIGFzIG5vcm1hbCBzdGFjay4KLSsg Ki8KLSsjICAgZGVmaW5lIFVTRV9TV0FQQ09OVEVYVAotKyMgIGVuZGlmCi0gIyAgaW5jbHVkZSA8 dWNvbnRleHQuaD4KLS0jICBpbmNsdWRlIDxzZXRqbXAuaD4KLSsjICBpZm5kZWYgVVNFX1NXQVBD T05URVhUCi0rIyAgIGluY2x1ZGUgPHNldGptcC5oPgotKyMgIGVuZGlmCi0gCi0gdHlwZWRlZiBz dHJ1Y3QgYXN5bmNfZmlicmVfc3QgewotICAgICB1Y29udGV4dF90IGZpYnJlOwotKyMgIGlmbmRl ZiBVU0VfU1dBUENPTlRFWFQKLSAgICAgam1wX2J1ZiBlbnY7Ci0gICAgIGludCBlbnZfaW5pdDsK LSsjICBlbmRpZgotIH0gYXN5bmNfZmlicmU7Ci0gCi0gc3RhdGljIG9zc2xfaW5saW5lIGludCBh c3luY19maWJyZV9zd2FwY29udGV4dChhc3luY19maWJyZSAqbywgYXN5bmNfZmlicmUgKm4sIGlu dCByKQotIHsKLSsjICBpZmRlZiBVU0VfU1dBUENPTlRFWFQKLSsgICAgc3dhcGNvbnRleHQoJm8t PmZpYnJlLCAmbi0+ZmlicmUpOwotKyMgIGVsc2UKLSAgICAgby0+ZW52X2luaXQgPSAxOwotIAot ICAgICBpZiAoIXIgfHwgIV9zZXRqbXAoby0+ZW52KSkgewotQEAgLTQ0LDYgKzYwLDcgQEAgc3Rh dGljIG9zc2xfaW5saW5lIGludCBhc3luY19maWJyZV9zd2FwYwotICAgICAgICAgZWxzZQotICAg ICAgICAgICAgIHNldGNvbnRleHQoJm4tPmZpYnJlKTsKLSAgICAgfQotKyMgIGVuZGlmCi0gCi0g ICAgIHJldHVybiAxOwotIH0KLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFlL2NyeXB0by9jYW1lbGxp YS9hc20vY21sbC14ODZfNjQucGwuaW50ZWwtY2V0IG9wZW5zc2wtMS4xLjFlL2NyeXB0by9jYW1l bGxpYS9hc20vY21sbC14ODZfNjQucGwKLS0tLSBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vY2FtZWxs aWEvYXNtL2NtbGwteDg2XzY0LnBsLmludGVsLWNldAkyMDIwLTAzLTE3IDE1OjMxOjE3LjAwMDAw MDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFlL2NyeXB0by9jYW1lbGxpYS9hc20vY21sbC14 ODZfNjQucGwJMjAyMC0wMy0xOSAxNzowMDoxNS45NzU2MjE3MzkgKzAxMDAKLUBAIC02ODUsNiAr Njg1LDcgQEAgJGNvZGUuPTw8X19fOwotIC5hbGlnbgkxNgotIENhbWVsbGlhX2NiY19lbmNyeXB0 OgotIC5jZmlfc3RhcnRwcm9jCi0rCWVuZGJyYW5jaAotIAljbXAJXCQwLCVyZHgKLSAJamUJLkxj YmNfYWJvcnQKLSAJcHVzaAklcmJ4Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vbW9k ZXMvYXNtL2doYXNoLXg4Nl82NC5wbC5pbnRlbC1jZXQgb3BlbnNzbC0xLjEuMWUvY3J5cHRvL21v ZGVzL2FzbS9naGFzaC14ODZfNjQucGwKLS0tLSBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vbW9kZXMv YXNtL2doYXNoLXg4Nl82NC5wbC5pbnRlbC1jZXQJMjAyMC0wMy0xNyAxNTozMToxNy4wMDAwMDAw MDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vbW9kZXMvYXNtL2doYXNoLXg4Nl82 NC5wbAkyMDIwLTAzLTE5IDE3OjAwOjE1Ljk3NTYyMTczOSArMDEwMAotQEAgLTIzOSw2ICsyMzks NyBAQCAkY29kZT08PF9fXzsKLSAuYWxpZ24JMTYKLSBnY21fZ211bHRfNGJpdDoKLSAuY2ZpX3N0 YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJcHVzaAklcmJ4Ci0gLmNmaV9wdXNoCSVyYngKLSAJcHVz aAklcmJwCQkjICVyYnAgYW5kIG90aGVycyBhcmUgcHVzaGVkIGV4Y2x1c2l2ZWx5IGluCi1AQCAt Mjg2LDYgKzI4Nyw3IEBAICRjb2RlLj08PF9fXzsKLSAuYWxpZ24JMTYKLSBnY21fZ2hhc2hfNGJp dDoKLSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJcHVzaAklcmJ4Ci0gLmNmaV9wdXNo CSVyYngKLSAJcHVzaAklcmJwCi1AQCAtNjEyLDYgKzYxNCw3IEBAICRjb2RlLj08PF9fXzsKLSAu YWxpZ24JMTYKLSBnY21fZ211bHRfY2xtdWw6Ci0gLmNmaV9zdGFydHByb2MKLSsJZW5kYnJhbmNo Ci0gLkxfZ211bHRfY2xtdWw6Ci0gCW1vdmRxdQkJKCRYaXApLCRYaQotIAltb3ZkcWEJCS5MYnN3 YXBfbWFzayglcmlwKSwkVDMKLUBAIC02NjMsNiArNjY2LDcgQEAgJGNvZGUuPTw8X19fOwotIC5h bGlnbgkzMgotIGdjbV9naGFzaF9jbG11bDoKLSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gK LSAuTF9naGFzaF9jbG11bDoKLSBfX18KLSAkY29kZS49PDxfX18gaWYgKCR3aW42NCk7Ci1AQCAt MTE2Niw2ICsxMTcwLDcgQEAgJGNvZGUuPTw8X19fOwotIC5hbGlnbgkzMgotIGdjbV9nbXVsdF9h dng6Ci0gLmNmaV9zdGFydHByb2MKLSsJZW5kYnJhbmNoCi0gCWptcAkuTF9nbXVsdF9jbG11bAot IC5jZmlfZW5kcHJvYwotIC5zaXplCWdjbV9nbXVsdF9hdngsLi1nY21fZ211bHRfYXZ4Ci1AQCAt MTE3Nyw2ICsxMTgyLDcgQEAgJGNvZGUuPTw8X19fOwotIC5hbGlnbgkzMgotIGdjbV9naGFzaF9h dng6Ci0gLmNmaV9zdGFydHByb2MKLSsJZW5kYnJhbmNoCi0gX19fCi0gaWYgKCRhdngpIHsKLSBt eSAoJFhpcCwkSHRibCwkaW5wLCRsZW4pPUBfNGFyZ3M7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4x ZS9jcnlwdG8vcGVybGFzbS9jYmMucGwuaW50ZWwtY2V0IG9wZW5zc2wtMS4xLjFlL2NyeXB0by9w ZXJsYXNtL2NiYy5wbAotLS0tIG9wZW5zc2wtMS4xLjFlL2NyeXB0by9wZXJsYXNtL2NiYy5wbC5p bnRlbC1jZXQJMjAyMC0wMy0xNyAxNTozMToxNy4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3Ns LTEuMS4xZS9jcnlwdG8vcGVybGFzbS9jYmMucGwJMjAyMC0wMy0xOSAxNzowMDoxNS45NzY2MjE3 MjIgKzAxMDAKLUBAIC0xNjUsMjEgKzE2NSwyOCBAQCBzdWIgY2JjCi0gCSZqbXBfcHRyKCRjb3Vu dCk7Ci0gCi0gJnNldF9sYWJlbCgiZWo3Iik7Ci0rCSZlbmRicmFuY2goKQotIAkmbW92YigmSEIo ImVkeCIpLAkmQlAoNiwkaW4sIiIsMCkpOwotIAkmc2hsKCJlZHgiLDgpOwotICZzZXRfbGFiZWwo ImVqNiIpOwotKwkmZW5kYnJhbmNoKCkKLSAJJm1vdmIoJkhCKCJlZHgiKSwJJkJQKDUsJGluLCIi LDApKTsKLSAmc2V0X2xhYmVsKCJlajUiKTsKLSsJJmVuZGJyYW5jaCgpCi0gCSZtb3ZiKCZMQigi ZWR4IiksCSZCUCg0LCRpbiwiIiwwKSk7Ci0gJnNldF9sYWJlbCgiZWo0Iik7Ci0rCSZlbmRicmFu Y2goKQotIAkmbW92KCJlY3giLAkJJkRXUCgwLCRpbiwiIiwwKSk7Ci0gCSZqbXAoJmxhYmVsKCJl amVuZCIpKTsKLSAmc2V0X2xhYmVsKCJlajMiKTsKLSsJJmVuZGJyYW5jaCgpCi0gCSZtb3ZiKCZI QigiZWN4IiksCSZCUCgyLCRpbiwiIiwwKSk7Ci0gCSZzaGwoImVjeCIsOCk7Ci0gJnNldF9sYWJl bCgiZWoyIik7Ci0rCSZlbmRicmFuY2goKQotIAkmbW92YigmSEIoImVjeCIpLAkmQlAoMSwkaW4s IiIsMCkpOwotICZzZXRfbGFiZWwoImVqMSIpOwotKwkmZW5kYnJhbmNoKCkKLSAJJm1vdmIoJkxC KCJlY3giKSwJJkJQKDAsJGluLCIiLDApKTsKLSAmc2V0X2xhYmVsKCJlamVuZCIpOwotIAotZGlm ZiAtdXAgb3BlbnNzbC0xLjEuMWUvY3J5cHRvL3Blcmxhc20veDg2XzY0LXhsYXRlLnBsLmludGVs LWNldCBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vcGVybGFzbS94ODZfNjQteGxhdGUucGwKLS0tLSBv cGVuc3NsLTEuMS4xZS9jcnlwdG8vcGVybGFzbS94ODZfNjQteGxhdGUucGwuaW50ZWwtY2V0CTIw MjAtMDMtMTcgMTU6MzE6MTcuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWUvY3J5 cHRvL3Blcmxhc20veDg2XzY0LXhsYXRlLnBsCTIwMjAtMDMtMTkgMTc6MDA6MTUuOTg0NjIxNTgy ICswMTAwCi1AQCAtMTAxLDYgKzEwMSwzMyBAQCBlbHNpZiAoISRnYXMpCi0gICAgICRkZWNvcj0i XCRMXCQiOwotIH0KLSAKLStteSAkY2V0X3Byb3BlcnR5OwotK2lmICgkZmxhdm91ciA9fiAvZWxm LykgewotKwkjIEFsd2F5cyBnZW5lcmF0ZSAubm90ZS5nbnUucHJvcGVydHkgc2VjdGlvbiBmb3Ig RUxGIG91dHB1dHMgdG8KLSsJIyBtYXJrIEludGVsIENFVCBzdXBwb3J0IHNpbmNlIGFsbCBpbnB1 dCBmaWxlcyBtdXN0IGJlIG1hcmtlZAotKwkjIHdpdGggSW50ZWwgQ0VUIHN1cHBvcnQgaW4gb3Jk ZXIgZm9yIGxpbmtlciB0byBtYXJrIG91dHB1dCB3aXRoCi0rCSMgSW50ZWwgQ0VUIHN1cHBvcnQu Ci0rCW15ICRwMmFsaWduPTM7ICRwMmFsaWduPTIgaWYgKCRmbGF2b3VyIGVxICJlbGYzMiIpOwot KwkkY2V0X3Byb3BlcnR5ID0gPDxfX19fXzsKLSsJLnNlY3Rpb24gIi5ub3RlLmdudS5wcm9wZXJ0 eSIsICJhIgotKwkucDJhbGlnbiAkcDJhbGlnbgotKwkubG9uZyAxZiAtIDBmCi0rCS5sb25nIDRm IC0gMWYKLSsJLmxvbmcgNQotKzA6Ci0rCS5hc2NpeiAiR05VIgotKzE6Ci0rCS5wMmFsaWduICRw MmFsaWduCi0rCS5sb25nIDB4YzAwMDAwMDIKLSsJLmxvbmcgM2YgLSAyZgotKzI6Ci0rCS5sb25n IDMKLSszOgotKwkucDJhbGlnbiAkcDJhbGlnbgotKzQ6Ci0rX19fX18KLSt9Ci0rCi0gbXkgJGN1 cnJlbnRfc2VnbWVudDsKLSBteSAkY3VycmVudF9mdW5jdGlvbjsKLSBteSAlZ2xvYmFsczsKLUBA IC0xMjEzLDYgKzEyNDAsNyBAQCB3aGlsZShkZWZpbmVkKG15ICRsaW5lPTw+KSkgewotICAgICBw cmludCAkbGluZSwiXG4iOwotIH0KLSAKLStwcmludCAiJGNldF9wcm9wZXJ0eSIJCQlpZiAoJGNl dF9wcm9wZXJ0eSk7Ci0gcHJpbnQgIlxuJGN1cnJlbnRfc2VnbWVudFx0RU5EU1xuIglpZiAoJGN1 cnJlbnRfc2VnbWVudCAmJiAkbWFzbSk7Ci0gcHJpbnQgIkVORFxuIgkJCQlpZiAoJG1hc20pOwot IAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWUvY3J5cHRvL3Blcmxhc20veDg2Z2FzLnBsLmludGVs LWNldCBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vcGVybGFzbS94ODZnYXMucGwKLS0tLSBvcGVuc3Ns LTEuMS4xZS9jcnlwdG8vcGVybGFzbS94ODZnYXMucGwuaW50ZWwtY2V0CTIwMjAtMDMtMTcgMTU6 MzE6MTcuMDAwMDAwMDAwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWUvY3J5cHRvL3Blcmxhc20v eDg2Z2FzLnBsCTIwMjAtMDMtMTkgMTc6MDA6MTUuOTg1NjIxNTY1ICswMTAwCi1AQCAtMTI0LDYg KzEyNCw3IEBAIHN1YiA6OmZ1bmN0aW9uX2JlZ2luX0IKLSAgICAgcHVzaChAb3V0LCIuYWxpZ25c dCRhbGlnblxuIik7Ci0gICAgIHB1c2goQG91dCwiJGZ1bmM6XG4iKTsKLSAgICAgcHVzaChAb3V0 LCIkYmVnaW46XG4iKQkJaWYgKCRnbG9iYWwpOwotKyAgICAmOjplbmRicmFuY2goKTsKLSAgICAg JDo6c3RhY2s9NDsKLSB9Ci0gCi1AQCAtMTcyLDYgKzE3MywyNiBAQCBzdWIgOjpmaWxlX2VuZAot IAllbHNlCQl7IHB1c2ggKEBvdXQsIiR0bXBcbiIpOyB9Ci0gICAgIH0KLSAgICAgcHVzaChAb3V0 LCRpbml0c2VnKSBpZiAoJGluaXRzZWcpOwotKyAgICBpZiAoJDo6ZWxmKSB7Ci0rCXB1c2goQG91 dCwiCi0rCS5zZWN0aW9uIFwiLm5vdGUuZ251LnByb3BlcnR5XCIsIFwiYVwiCi0rCS5wMmFsaWdu IDIKLSsJLmxvbmcgMWYgLSAwZgotKwkubG9uZyA0ZiAtIDFmCi0rCS5sb25nIDUKLSswOgotKwku YXNjaXogXCJHTlVcIgotKzE6Ci0rCS5wMmFsaWduIDIKLSsJLmxvbmcgMHhjMDAwMDAwMgotKwku bG9uZyAzZiAtIDJmCi0rMjoKLSsJLmxvbmcgMwotKzM6Ci0rCS5wMmFsaWduIDIKLSs0OgotKyIp OwotKyAgICB9Ci0gfQotIAotIHN1YiA6OmRhdGFfYnl0ZQl7ICAgcHVzaChAb3V0LCIuYnl0ZVx0 Ii5qb2luKCcsJyxAXykuIlxuIik7ICAgfQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWUvY3J5cHRv L3BvbHkxMzA1L2FzbS9wb2x5MTMwNS14ODZfNjQucGwuaW50ZWwtY2V0IG9wZW5zc2wtMS4xLjFl L2NyeXB0by9wb2x5MTMwNS9hc20vcG9seTEzMDUteDg2XzY0LnBsCi0tLS0gb3BlbnNzbC0xLjEu MWUvY3J5cHRvL3BvbHkxMzA1L2FzbS9wb2x5MTMwNS14ODZfNjQucGwuaW50ZWwtY2V0CTIwMjAt MDMtMTkgMTc6MDA6MzguMTg1MjM0MDE1ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWUvY3J5cHRv L3BvbHkxMzA1L2FzbS9wb2x5MTMwNS14ODZfNjQucGwJMjAyMC0wMy0xOSAxNzowNTo0Ni41NzU4 NTAzNDEgKzAxMDAKLUBAIC0yODA2LDYgKzI4MDYsNyBAQCAkY29kZS49PDxfX187Ci0gLmFsaWdu CTMyCi0gcG9seTEzMDVfYmxvY2tzX3ZwbWFkZDUyOgotIC5jZmlfc3RhcnRwcm9jCi0rCWVuZGJy YW5jaAotIAlzaHIJXCQ0LCRsZW4KLSAJanoJLkxub19kYXRhX3ZwbWFkZDUyCQkjIHRvbyBzaG9y dAotIAotQEAgLTM3MzksNiArMzc0MCw3IEBAICRjb2RlLj08PF9fXzsKLSAuYWxpZ24JMzIKLSBw b2x5MTMwNV9lbWl0X2Jhc2UyXzQ0OgotIC5jZmlfc3RhcnRwcm9jCi0rCWVuZGJyYW5jaAotIAlt b3YJMCgkY3R4KSwlcjgJIyBsb2FkIGhhc2ggdmFsdWUKLSAJbW92CTgoJGN0eCksJXI5Ci0gCW1v dgkxNigkY3R4KSwlcjEwCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vcmM0L2FzbS9y YzQteDg2XzY0LnBsLmludGVsLWNldCBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vcmM0L2FzbS9yYzQt eDg2XzY0LnBsCi0tLS0gb3BlbnNzbC0xLjEuMWUvY3J5cHRvL3JjNC9hc20vcmM0LXg4Nl82NC5w bC5pbnRlbC1jZXQJMjAyMC0wMy0xOSAxNzowMDozOC4xOTAyMzM5MjggKzAxMDAKLSsrKyBvcGVu c3NsLTEuMS4xZS9jcnlwdG8vcmM0L2FzbS9yYzQteDg2XzY0LnBsCTIwMjAtMDMtMTkgMTc6MDU6 MDIuNTk4NjE4MDY0ICswMTAwCi1AQCAtMTQwLDYgKzE0MCw3IEBAICRjb2RlPTw8X19fOwotIC5h bGlnbgkxNgotIFJDNDoKLSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJb3IJJGxlbiwk bGVuCi0gCWpuZQkuTGVudHJ5Ci0gCXJldAotQEAgLTQ1NSw2ICs0NTYsNyBAQCAkY29kZS49PDxf X187Ci0gLmFsaWduCTE2Ci0gUkM0X3NldF9rZXk6Ci0gLmNmaV9zdGFydHByb2MKLSsJZW5kYnJh bmNoCi0gCWxlYQk4KCRkYXQpLCRkYXQKLSAJbGVhCSgkaW5wLCRsZW4pLCRpbnAKLSAJbmVnCSRs ZW4KLUBAIC01MjksNiArNTMxLDcgQEAgUkM0X3NldF9rZXk6Ci0gLmFsaWduCTE2Ci0gUkM0X29w dGlvbnM6Ci0gLmNmaV9zdGFydHByb2MKLSsJZW5kYnJhbmNoCi0gCWxlYQkuTG9wdHMoJXJpcCks JXJheAotIAltb3YJT1BFTlNTTF9pYTMyY2FwX1AoJXJpcCksJWVkeAotIAlidAlcJDIwLCVlZHgK LWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFlL2NyeXB0by94ODZfNjRjcHVpZC5wbC5pbnRlbC1jZXQg b3BlbnNzbC0xLjEuMWUvY3J5cHRvL3g4Nl82NGNwdWlkLnBsCi0tLS0gb3BlbnNzbC0xLjEuMWUv Y3J5cHRvL3g4Nl82NGNwdWlkLnBsLmludGVsLWNldAkyMDIwLTAzLTE3IDE1OjMxOjE3LjAwMDAw MDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFlL2NyeXB0by94ODZfNjRjcHVpZC5wbAkyMDIw LTAzLTE5IDE3OjAzOjU4LjE3Mjc0Mjc3NSArMDEwMAotQEAgLTQwLDYgKzQwLDcgQEAgcHJpbnQ8 PF9fXzsKLSAuYWxpZ24JMTYKLSBPUEVOU1NMX2F0b21pY19hZGQ6Ci0gLmNmaV9zdGFydHByb2MK LSsJZW5kYnJhbmNoCi0gCW1vdmwJKCRhcmcxKSwlZWF4Ci0gLkxzcGluOglsZWFxCSgkYXJnMiwl cmF4KSwlcjgKLSAJLmJ5dGUJMHhmMAkJIyBsb2NrCi1AQCAtNTYsNiArNTcsNyBAQCBPUEVOU1NM X2F0b21pY19hZGQ6Ci0gLmFsaWduCTE2Ci0gT1BFTlNTTF9yZHRzYzoKLSAuY2ZpX3N0YXJ0cHJv YwotKwllbmRicmFuY2gKLSAJcmR0c2MKLSAJc2hsCVwkMzIsJXJkeAotIAlvcgklcmR4LCVyYXgK LUBAIC02OCw2ICs3MCw3IEBAIE9QRU5TU0xfcmR0c2M6Ci0gLmFsaWduCTE2Ci0gT1BFTlNTTF9p YTMyX2NwdWlkOgotIC5jZmlfc3RhcnRwcm9jCi0rCWVuZGJyYW5jaAotIAltb3YJJXJieCwlcjgJ CSMgc2F2ZSAlcmJ4Ci0gLmNmaV9yZWdpc3RlcgklcmJ4LCVyOAotIAotQEAgLTIzNyw2ICsyNDAs NyBAQCBPUEVOU1NMX2lhMzJfY3B1aWQ6Ci0gLmFsaWduICAxNgotIE9QRU5TU0xfY2xlYW5zZToK LSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJeG9yCSVyYXgsJXJheAotIAljbXAJXCQx NSwkYXJnMgotIAlqYWUJLkxvdAotQEAgLTI3NCw2ICsyNzgsNyBAQCBPUEVOU1NMX2NsZWFuc2U6 Ci0gLmFsaWduICAxNgotIENSWVBUT19tZW1jbXA6Ci0gLmNmaV9zdGFydHByb2MKLSsJZW5kYnJh bmNoCi0gCXhvcgklcmF4LCVyYXgKLSAJeG9yCSVyMTAsJXIxMAotIAljbXAJXCQwLCRhcmczCi1A QCAtMzEyLDYgKzMxNyw3IEBAIHByaW50PDxfX18gaWYgKCEkd2luNjQpOwotIC5hbGlnbgkxNgot IE9QRU5TU0xfd2lwZV9jcHU6Ci0gLmNmaV9zdGFydHByb2MKLSsJZW5kYnJhbmNoCi0gCXB4b3IJ JXhtbTAsJXhtbTAKLSAJcHhvcgkleG1tMSwleG1tMQotIAlweG9yCSV4bW0yLCV4bW0yCi1AQCAt MzQ2LDYgKzM1Miw4IEBAIHByaW50PDxfX18gaWYgKCR3aW42NCk7Ci0gLnR5cGUJT1BFTlNTTF93 aXBlX2NwdSxcQGFiaS1vbW5pcG90ZW50Ci0gLmFsaWduCTE2Ci0gT1BFTlNTTF93aXBlX2NwdToK LSsuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJcHhvcgkleG1tMCwleG1tMAotIAlweG9y CSV4bW0xLCV4bW0xCi0gCXB4b3IJJXhtbTIsJXhtbTIKLUBAIC0zNzYsNiArMzg0LDcgQEAgcHJp bnQ8PF9fXzsKLSAuYWxpZ24JMTYKLSBPUEVOU1NMX2luc3RydW1lbnRfYnVzOgotIC5jZmlfc3Rh cnRwcm9jCi0rCWVuZGJyYW5jaAotIAltb3YJJGFyZzEsJG91dAkjIHRyaWJ1dGUgdG8gV2luNjQK LSAJbW92CSRhcmcyLCRjbnQKLSAJbW92CSRhcmcyLCRtYXgKLUBAIC00MTAsNiArNDE5LDcgQEAg T1BFTlNTTF9pbnN0cnVtZW50X2J1czoKLSAuYWxpZ24JMTYKLSBPUEVOU1NMX2luc3RydW1lbnRf YnVzMjoKLSAuY2ZpX3N0YXJ0cHJvYwotKwllbmRicmFuY2gKLSAJbW92CSRhcmcxLCRvdXQJIyB0 cmlidXRlIHRvIFdpbjY0Ci0gCW1vdgkkYXJnMiwkY250Ci0gCW1vdgkkYXJnMywkbWF4Ci1AQCAt NDY1LDYgKzQ3NSw3IEBAIHByaW50PDxfX187Ci0gLmFsaWduCTE2Ci0gT1BFTlNTTF9pYTMyXyR7 cmRvcH1fYnl0ZXM6Ci0gLmNmaV9zdGFydHByb2MKLSsJZW5kYnJhbmNoCi0gCXhvcgklcmF4LCAl cmF4CSMgcmV0dXJuIHZhbHVlCi0gCWNtcAlcJDAsJGFyZzIKLSAJamUJLkxkb25lXyR7cmRvcH1f Ynl0ZXMKCmRpZmYgLS1naXQgYS9vcGVuc3NsLTEuMS4xLWtkZi1zZWxmdGVzdC5wYXRjaCBiL29w ZW5zc2wtMS4xLjEta2RmLXNlbGZ0ZXN0LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAzY2IzNzE4Li4wMDAwMDAwCi0tLSBhL29wZW5zc2wtMS4xLjEta2RmLXNlbGZ0ZXN0LnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTcwICswLDAgQEAKLWRpZmYgLXVwIG9wZW5zc2wtMS4x LjFnL2NyeXB0by9maXBzL2J1aWxkLmluZm8ua2RmLXNlbGZ0ZXN0IG9wZW5zc2wtMS4xLjFnL2Ny eXB0by9maXBzL2J1aWxkLmluZm8KLS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9idWls ZC5pbmZvLmtkZi1zZWxmdGVzdAkyMDIwLTA2LTAzIDE2OjA4OjM2LjI3NDg0OTA1OCArMDIwMAot KysrIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9maXBzL2J1aWxkLmluZm8JMjAyMC0wNi0wMyAxNjox MTowNS42MDkwNzkzNzIgKzAyMDAKLUBAIC01LDcgKzUsNyBAQCBTT1VSQ0VbLi4vLi4vbGliY3J5 cHRvXT1cCi0gICAgICAgICBmaXBzX3Bvc3QuYyBmaXBzX2RyYmdfY3RyLmMgZmlwc19kcmJnX2hh c2guYyBmaXBzX2RyYmdfaG1hYy5jIFwKLSAgICAgICAgIGZpcHNfZHJiZ19saWIuYyBmaXBzX2Ry YmdfcmFuZC5jIGZpcHNfZHJiZ19zZWxmdGVzdC5jIGZpcHNfcmFuZF9saWIuYyBcCi0gICAgICAg ICBmaXBzX2NtYWNfc2VsZnRlc3QuYyBmaXBzX2VjZGhfc2VsZnRlc3QuYyBmaXBzX2VjZHNhX3Nl bGZ0ZXN0LmMgXAotLSAgICAgICAgZmlwc19kaF9zZWxmdGVzdC5jIGZpcHNfZXJzLmMKLSsgICAg ICAgIGZpcHNfZGhfc2VsZnRlc3QuYyBmaXBzX2tkZl9zZWxmdGVzdC5jIGZpcHNfZXJzLmMKLSAK LSBQUk9HUkFNU19OT19JTlNUPVwKLSAgICAgICAgICAgZmlwc19zdGFuZGFsb25lX2htYWMKLWRp ZmYgLXVwIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9maXBzL2ZpcHNfa2RmX3NlbGZ0ZXN0LmMua2Rm LXNlbGZ0ZXN0IG9wZW5zc2wtMS4xLjFnL2NyeXB0by9maXBzL2ZpcHNfa2RmX3NlbGZ0ZXN0LmMK LS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9maXBzX2tkZl9zZWxmdGVzdC5jLmtkZi1z ZWxmdGVzdAkyMDIwLTA2LTAzIDE2OjA4OjM2LjMzNzg0OTU3NyArMDIwMAotKysrIG9wZW5zc2wt MS4xLjFnL2NyeXB0by9maXBzL2ZpcHNfa2RmX3NlbGZ0ZXN0LmMJMjAyMC0wNi0wMyAxNjowODoz Ni4zMzc4NDk1NzcgKzAyMDAKLUBAIC0wLDAgKzEsMTE3IEBACi0rLyoKLSsgKiBDb3B5cmlnaHQg MjAxOC0yMDE5IFRoZSBPcGVuU1NMIFByb2plY3QgQXV0aG9ycy4gQWxsIFJpZ2h0cyBSZXNlcnZl ZC4KLSsgKiBDb3B5cmlnaHQgKGMpIDIwMTgtMjAxOSwgT3JhY2xlIGFuZC9vciBpdHMgYWZmaWxp YXRlcy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0rICoKLSsgKiBMaWNlbnNlZCB1bmRlciB0aGUg QXBhY2hlIExpY2Vuc2UgMi4wICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBtYXkgbm90IHVzZQotKyAq IHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiAgWW91IGNh biBvYnRhaW4gYSBjb3B5Ci0rICogaW4gdGhlIGZpbGUgTElDRU5TRSBpbiB0aGUgc291cmNlIGRp c3RyaWJ1dGlvbiBvciBhdAotKyAqIGh0dHBzOi8vd3d3Lm9wZW5zc2wub3JnL3NvdXJjZS9saWNl bnNlLmh0bWwKLSsgKi8KLSsKLSsjaW5jbHVkZSA8c3RyaW5nLmg+Ci0rI2luY2x1ZGUgPG9wZW5z c2wvZXJyLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wvZmlwcy5oPgotKyNpbmNsdWRlICJjcnlwdG8v Zmlwcy5oIgotKwotKyNpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgotKyNpbmNsdWRlIDxvcGVuc3Ns L2tkZi5oPgotKwotKyNpZmRlZiBPUEVOU1NMX0ZJUFMKLStpbnQgRklQU19zZWxmdGVzdF9wYmtk ZjIodm9pZCkKLSt7Ci0rICAgIGludCByZXQgPSAwOwotKyAgICBFVlBfS0RGX0NUWCAqa2N0eDsK LSsgICAgdW5zaWduZWQgY2hhciBvdXRbMzJdOwotKwotKyAgICBpZiAoKGtjdHggPSBFVlBfS0RG X0NUWF9uZXdfaWQoRVZQX0tERl9QQktERjIpKSA9PSBOVUxMKSB7Ci0rICAgICAgICBnb3RvIGVy cjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRf UEFTUywgInBhc3N3b3JkIiwgKHNpemVfdCk4KSA8PSAwKSB7Ci0rICAgICAgICBnb3RvIGVycjsK LSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfU0FM VCwgInNhbHQiLCAoc2l6ZV90KTQpIDw9IDApIHsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9 Ci0rICAgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9JVEVSLCAyKSA8 PSAwKSB7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJs KGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfTUQsIEVWUF9zaGEyNTYoKSkgPD0gMCkgewotKyAgICAg ICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgaWYgKEVWUF9LREZfZGVyaXZlKGtjdHgsIG91dCwg c2l6ZW9mKG91dCkpIDw9IDApIHsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAg IHsKLSsgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgZXhwZWN0ZWRbc2l6ZW9mKG91dCldID0g ewotKyAgICAgICAgICAgIDB4YWUsIDB4NGQsIDB4MGMsIDB4OTUsIDB4YWYsIDB4NmIsIDB4NDYs IDB4ZDMsCi0rICAgICAgICAgICAgMHgyZCwgMHgwYSwgMHhkZiwgMHhmOSwgMHgyOCwgMHhmMCwg MHg2ZCwgMHhkMCwKLSsgICAgICAgICAgICAweDJhLCAweDMwLCAweDNmLCAweDhlLCAweGYzLCAw eGMyLCAweDUxLCAweGRmLAotKyAgICAgICAgICAgIDB4ZDYsIDB4ZTIsIDB4ZDgsIDB4NWEsIDB4 OTUsIDB4NDcsIDB4NGMsIDB4NDMKLSsgICAgICAgIH07Ci0rICAgICAgICBpZiAobWVtY21wKG91 dCwgZXhwZWN0ZWQsIHNpemVvZihleHBlY3RlZCkpKSB7Ci0rICAgICAgICAgICAgZ290byBlcnI7 Ci0rICAgICAgICB9Ci0rICAgIH0KLSsgICAgcmV0ID0gMTsKLSsKLStlcnI6Ci0rICAgIGlmICgh cmV0KQotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19TRUxGVEVTVF9QQktERjIsIEZJUFNf Ul9TRUxGVEVTVF9GQUlMRUQpOwotKyAgICBFVlBfS0RGX0NUWF9mcmVlKGtjdHgpOwotKyAgICBy ZXR1cm4gcmV0OwotK30KLSsKLSsvKiBUZXN0IHZlY3RvciBmcm9tIFJGQyA4MDA5IChBRVMgRW5j cnlwdGlvbiB3aXRoIEhNQUMtU0hBMiBmb3IgS2VyYmVyb3MKLSsgKiA1KSBhcHBlbmRpeCBBLiAq LwotK2ludCBGSVBTX3NlbGZ0ZXN0X2tia2RmKHZvaWQpCi0rewotKyAgICBpbnQgcmV0ID0gMDsK LSsgICAgRVZQX0tERl9DVFggKmtjdHg7Ci0rICAgIGNoYXIgKmxhYmVsID0gInByZiIsICpwcmZf aW5wdXQgPSAidGVzdCI7Ci0rICAgIHN0YXRpYyB1bnNpZ25lZCBjaGFyIGlucHV0X2tleVtdID0g ewotKyAgICAgICAgMHgzNywgMHgwNSwgMHhEOSwgMHg2MCwgMHg4MCwgMHhDMSwgMHg3NywgMHgy OCwKLSsgICAgICAgIDB4QTAsIDB4RTgsIDB4MDAsIDB4RUEsIDB4QjYsIDB4RTAsIDB4RDIsIDB4 M0MsCi0rICAgIH07Ci0rICAgIHN0YXRpYyB1bnNpZ25lZCBjaGFyIG91dHB1dFtdID0gewotKyAg ICAgICAgMHg5RCwgMHgxOCwgMHg4NiwgMHgxNiwgMHhGNiwgMHgzOCwgMHg1MiwgMHhGRSwKLSsg ICAgICAgIDB4ODYsIDB4OTEsIDB4NUIsIDB4QjgsIDB4NDAsIDB4QjQsIDB4QTgsIDB4ODYsCi0r ICAgICAgICAweEZGLCAweDNFLCAweDZCLCAweEIwLCAweEY4LCAweDE5LCAweEI0LCAweDlCLAot KyAgICAgICAgMHg4OSwgMHgzMywgMHg5MywgMHhEMywgMHg5MywgMHg4NSwgMHg0MiwgMHg5NSwK LSsgICAgfTsKLSsgICAgdW5zaWduZWQgY2hhciByZXN1bHRbc2l6ZW9mKG91dHB1dCldID0geyAw IH07Ci0rCi0rICAgIGlmICgoa2N0eCA9IEVWUF9LREZfQ1RYX25ld19pZChFVlBfS0RGX0tCKSkg PT0gTlVMTCkgewotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgaWYgKEVWUF9LREZf Y3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX0tCX01BQ19UWVBFLCBFVlBfS0RGX0tCX01BQ19U WVBFX0hNQUMpIDw9IDApIHsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rICAgIGlmIChF VlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9NRCwgRVZQX3NoYTI1NigpKSA8PSAw KSB7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtj dHgsIEVWUF9LREZfQ1RSTF9TRVRfS0VZLCBpbnB1dF9rZXksIHNpemVvZihpbnB1dF9rZXkpKSA8 PSAwKSB7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJs KGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfU0FMVCwgbGFiZWwsIHN0cmxlbihsYWJlbCkpIDw9IDAp IHsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rICAgIGlmIChFVlBfS0RGX2N0cmwoa2N0 eCwgRVZQX0tERl9DVFJMX1NFVF9LQl9JTkZPLCBwcmZfaW5wdXQsIHN0cmxlbihwcmZfaW5wdXQp KSA8PSAwKSB7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICByZXQgPSBFVlBfS0RG X2Rlcml2ZShrY3R4LCByZXN1bHQsIHNpemVvZihyZXN1bHQpKSA+IDAKLSsgICAgICAgICYmIG1l bWNtcChyZXN1bHQsIG91dHB1dCwgc2l6ZW9mKG91dHB1dCkpID09IDA7Ci0rZXJyOgotKwotKyAg ICBpZiAoIXJldCkKLSsgICAgICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfU0VMRlRFU1RfS0JLREYs IEZJUFNfUl9TRUxGVEVTVF9GQUlMRUQpOwotKyAgICBFVlBfS0RGX0NUWF9mcmVlKGtjdHgpOwot KyAgICByZXR1cm4gcmV0OwotK30KLSsKLStpbnQgRklQU19zZWxmdGVzdF9rZGYodm9pZCkKLSt7 Ci0rICAgIHJldHVybiBGSVBTX3NlbGZ0ZXN0X3Bia2RmMigpICYmIEZJUFNfc2VsZnRlc3Rfa2Jr ZGYoKTsKLSt9Ci0rCi0rI2VuZGlmCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlw cy9maXBzX3Bvc3QuYy5rZGYtc2VsZnRlc3Qgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2ZpcHMvZmlw c19wb3N0LmMKLS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9maXBzX3Bvc3QuYy5rZGYt c2VsZnRlc3QJMjAyMC0wNi0wMyAxNjowODozNi4zMzI4NDk1MzYgKzAyMDAKLSsrKyBvcGVuc3Ns LTEuMS4xZy9jcnlwdG8vZmlwcy9maXBzX3Bvc3QuYwkyMDIwLTA2LTAzIDE2OjA4OjM2LjMzODg0 OTU4NSArMDIwMAotQEAgLTExMSw2ICsxMTEsOCBAQCBpbnQgRklQU19zZWxmdGVzdCh2b2lkKQot ICAgICAgICAgcnYgPSAwOwotICAgICBpZiAoIUZJUFNfc2VsZnRlc3RfZWNkaCgpKQotICAgICAg ICAgcnYgPSAwOwotKyAgICBpZiAoIUZJUFNfc2VsZnRlc3Rfa2RmKCkpCi0rICAgICAgICBydiA9 IDA7Ci0gICAgIHJldHVybiBydjsKLSB9Ci0gCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9pbmNs dWRlL2NyeXB0by9maXBzLmgua2RmLXNlbGZ0ZXN0IG9wZW5zc2wtMS4xLjFnL2luY2x1ZGUvY3J5 cHRvL2ZpcHMuaAotLS0tIG9wZW5zc2wtMS4xLjFnL2luY2x1ZGUvY3J5cHRvL2ZpcHMuaC5rZGYt c2VsZnRlc3QJMjAyMC0wNi0wMyAxNjowODozNi4zMzA4NDk1MTkgKzAyMDAKLSsrKyBvcGVuc3Ns LTEuMS4xZy9pbmNsdWRlL2NyeXB0by9maXBzLmgJMjAyMC0wNi0wMyAxNjowODozNi4zMzg4NDk1 ODUgKzAyMDAKLUBAIC03Miw2ICs3Miw5IEBAIHZvaWQgRklQU19kcmJnX3N0aWNrKGludCBvbm9m Zik7Ci0gaW50IEZJUFNfc2VsZnRlc3RfaG1hYyh2b2lkKTsKLSBpbnQgRklQU19zZWxmdGVzdF9k cmJnKHZvaWQpOwotIGludCBGSVBTX3NlbGZ0ZXN0X2NtYWModm9pZCk7Ci0raW50IEZJUFNfc2Vs ZnRlc3Rfa2JrZGYodm9pZCk7Ci0raW50IEZJUFNfc2VsZnRlc3RfcGJrZGYyKHZvaWQpOwotK2lu dCBGSVBTX3NlbGZ0ZXN0X2tkZih2b2lkKTsKLSAKLSBpbnQgZmlwc19pbl9wb3N0KHZvaWQpOwot IAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9vcGVuc3NsL2ZpcHMuaC5rZGYtc2Vs ZnRlc3Qgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9vcGVuc3NsL2ZpcHMuaAotLS0tIG9wZW5zc2wt MS4xLjFnL2luY2x1ZGUvb3BlbnNzbC9maXBzLmgua2RmLXNlbGZ0ZXN0CTIwMjAtMDYtMDMgMTY6 MDg6MzYuMjgyODQ5MTI0ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9vcGVuc3Ns L2ZpcHMuaAkyMDIwLTA2LTAzIDE2OjA4OjM2LjMzODg0OTU4NSArMDIwMAotQEAgLTEyMyw2ICsx MjMsOCBAQCBleHRlcm4gIkMiIHsKLSAjIGRlZmluZSBGSVBTX0ZfRklQU19TRUxGVEVTVF9EU0Eg ICAgICAgICAgICAgICAgICAgICAgICAgMTEyCi0gIyBkZWZpbmUgRklQU19GX0ZJUFNfU0VMRlRF U1RfRUNEU0EgICAgICAgICAgICAgICAgICAgICAgIDEzMwotICMgZGVmaW5lIEZJUFNfRl9GSVBT X1NFTEZURVNUX0hNQUMgICAgICAgICAgICAgICAgICAgICAgICAxMTMKLSsjIGRlZmluZSBGSVBT X0ZfRklQU19TRUxGVEVTVF9LQktERiAgICAgICAgICAgICAgICAgICAgICAgMTUxCi0rIyBkZWZp bmUgRklQU19GX0ZJUFNfU0VMRlRFU1RfUEJLREYyICAgICAgICAgICAgICAgICAgICAgIDE1Mgot ICMgZGVmaW5lIEZJUFNfRl9GSVBTX1NFTEZURVNUX1NIQTEgICAgICAgICAgICAgICAgICAgICAg ICAxMTUKLSAjIGRlZmluZSBGSVBTX0ZfRklQU19TRUxGVEVTVF9TSEEyICAgICAgICAgICAgICAg ICAgICAgICAgMTA1Ci0gIyBkZWZpbmUgRklQU19GX09TU0xfRUNEU0FfU0lHTl9TSUcgICAgICAg ICAgICAgICAgICAgICAgIDE0MwoKZGlmZiAtLWdpdCBhL29wZW5zc2wtMS4xLjEta3JiNS1rZGYu cGF0Y2ggYi9vcGVuc3NsLTEuMS4xLWtyYjUta2RmLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAyNDlhNWM1Li4wMDAwMDAwCi0tLSBhL29wZW5zc2wtMS4xLjEta3JiNS1rZGYu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzMDMwICswLDAgQEAKLWRpZmYgLXVwIG9wZW5zc2wt MS4xLjFkL2NyeXB0by9lcnIvb3BlbnNzbC50eHQua3JiNS1rZGYgb3BlbnNzbC0xLjEuMWQvY3J5 cHRvL2Vyci9vcGVuc3NsLnR4dAotLS0tIG9wZW5zc2wtMS4xLjFkL2NyeXB0by9lcnIvb3BlbnNz bC50eHQua3JiNS1rZGYJMjAxOS0xMS0xNCAxNTowNzowNS4zMjAwOTQ1MjEgKzAxMDAKLSsrKyBv cGVuc3NsLTEuMS4xZC9jcnlwdG8vZXJyL29wZW5zc2wudHh0CTIwMTktMTEtMTQgMTU6MDc6MDUu MzQyMDk0MTI5ICswMTAwCi1AQCAtODIxLDYgKzgyMSwxMSBAQCBFVlBfRl9TMzkwWF9BRVNfR0NN X0NUUkw6MjAxOnMzOTB4X2Flc19nCi0gRVZQX0ZfU0NSWVBUX0FMRzoyMjg6c2NyeXB0X2FsZwot IEVWUF9GX1VQREFURToxNzM6dXBkYXRlCi0gS0RGX0ZfSEtERl9FWFRSQUNUOjExMjpIS0RGX0V4 dHJhY3QKLStLREZfRl9LQktERl9DVFJMOjEzNDprYmtkZl9jdHJsCi0rS0RGX0ZfS0JLREZfQ1RS TF9TVFI6MTM1Omtia2RmX2N0cmxfc3RyCi0rS0RGX0ZfS0JLREZfREVSSVZFOjEzNjprYmtkZl9k ZXJpdmUKLStLREZfRl9LQktERl9ORVc6MTM3Omtia2RmX25ldwotK0tERl9GX0tERl9DSVBIRVIy Q1RSTDoxMzg6a2RmX2NpcGhlcjJjdHJsCi0gS0RGX0ZfS0RGX0hLREZfREVSSVZFOjExMzprZGZf aGtkZl9kZXJpdmUKLSBLREZfRl9LREZfSEtERl9ORVc6MTE0OmtkZl9oa2RmX25ldwotIEtERl9G X0tERl9IS0RGX1NJWkU6MTE1OmtkZl9oa2RmX3NpemUKLUBAIC04NDAsNiArODQ1LDggQEAgS0RG X0ZfS0RGX1NTSEtERl9ORVc6MTMzOmtkZl9zc2hrZGZfbmV3Ci0gS0RGX0ZfS0RGX1RMUzFfUFJG X0NUUkxfU1RSOjEyNTprZGZfdGxzMV9wcmZfY3RybF9zdHIKLSBLREZfRl9LREZfVExTMV9QUkZf REVSSVZFOjEyNjprZGZfdGxzMV9wcmZfZGVyaXZlCi0gS0RGX0ZfS0RGX1RMUzFfUFJGX05FVzox Mjc6a2RmX3RsczFfcHJmX25ldwotK0tERl9GX0tSQjVLREY6MTM5OktSQjVLREYKLStLREZfRl9L UkI1S0RGX0RFUklWRToxNDA6a3JiNWtkZl9kZXJpdmUKLSBLREZfRl9QQktERjJfU0VUX01FTUJV RjoxMjg6cGJrZGYyX3NldF9tZW1idWYKLSBLREZfRl9QS0VZX0hLREZfQ1RSTF9TVFI6MTAzOnBr ZXlfaGtkZl9jdHJsX3N0cgotIEtERl9GX1BLRVlfSEtERl9ERVJJVkU6MTAyOnBrZXlfaGtkZl9k ZXJpdmUKLUBAIC04NTMsNiArODYwLDkgQEAgS0RGX0ZfUEtFWV9UTFMxX1BSRl9DVFJMX1NUUjox MDA6cGtleV90bAotIEtERl9GX1BLRVlfVExTMV9QUkZfREVSSVZFOjEwMTpwa2V5X3RsczFfcHJm X2Rlcml2ZQotIEtERl9GX1BLRVlfVExTMV9QUkZfSU5JVDoxMTA6cGtleV90bHMxX3ByZl9pbml0 Ci0gS0RGX0ZfU0NSWVBUX1NFVF9NRU1CVUY6MTI5OnNjcnlwdF9zZXRfbWVtYnVmCi0rS0RGX0Zf U1NLREZfREVSSVZFOjE0MTpzc2tkZl9kZXJpdmUKLStLREZfRl9TU0tERl9ORVc6MTQyOnNza2Rm X25ldwotK0tERl9GX1NTS0RGX1NJWkU6MTQzOnNza2RmX3NpemUKLSBLREZfRl9UTFMxX1BSRl9B TEc6MTExOnRsczFfcHJmX2FsZwotIE9CSl9GX09CSl9BRERfT0JKRUNUOjEwNTpPQkpfYWRkX29i amVjdAotIE9CSl9GX09CSl9BRERfU0lHSUQ6MTA3Ok9CSl9hZGRfc2lnaWQKLUBAIC0yMzI1LDcg KzIzMzUsMTMgQEAgRVZQX1JfVU5TVVBQT1JURURfU0FMVF9UWVBFOjEyNjp1bnN1cHBvcgotIEVW UF9SX1dSQVBfTU9ERV9OT1RfQUxMT1dFRDoxNzA6d3JhcCBtb2RlIG5vdCBhbGxvd2VkCi0gRVZQ X1JfV1JPTkdfRklOQUxfQkxPQ0tfTEVOR1RIOjEwOTp3cm9uZyBmaW5hbCBibG9jayBsZW5ndGgK LSBFVlBfUl9YVFNfRFVQTElDQVRFRF9LRVlTOjE4Mzp4dHMgZHVwbGljYXRlZCBrZXlzCi0rS0RG X1JfRkFJTEVEX1RPX0dFTkVSQVRFX0tFWToxMTg6ZmFpbGVkIHRvIGdlbmVyYXRlIGtleQotK0tE Rl9SX0lOVkFMSURfQ0lQSEVSOjExNjppbnZhbGlkIGNpcGhlcgotK0tERl9SX0lOVkFMSURfQ09O U1RBTlRfTEVOR1RIOjExOTppbnZhbGlkIGNvbnN0YW50IGxlbmd0aAotIEtERl9SX0lOVkFMSURf RElHRVNUOjEwMDppbnZhbGlkIGRpZ2VzdAotK0tERl9SX0lOVkFMSURfU0VFRF9MRU5HVEg6MTE3 OmludmFsaWQgc2VlZCBsZW5ndGgKLStLREZfUl9NSVNTSU5HX0NJUEhFUjoxMjA6bWlzc2luZyBj aXBoZXIKLStLREZfUl9NSVNTSU5HX0NPTlNUQU5UOjEyMTptaXNzaW5nIGNvbnN0YW50Ci0gS0RG X1JfTUlTU0lOR19JVEVSQVRJT05fQ09VTlQ6MTA5Om1pc3NpbmcgaXRlcmF0aW9uIGNvdW50Ci0g S0RGX1JfTUlTU0lOR19LRVk6MTA0Om1pc3Npbmcga2V5Ci0gS0RGX1JfTUlTU0lOR19NRVNTQUdF X0RJR0VTVDoxMDU6bWlzc2luZyBtZXNzYWdlIGRpZ2VzdAotQEAgLTIzNDAsNiArMjM1Niw3IEBA IEtERl9SX01JU1NJTkdfWENHSEFTSDoxMTU6bWlzc2luZyB4Y2doYXMKLSBLREZfUl9VTktOT1dO X1BBUkFNRVRFUl9UWVBFOjEwMzp1bmtub3duIHBhcmFtZXRlciB0eXBlCi0gS0RGX1JfVkFMVUVf RVJST1I6MTA4OnZhbHVlIGVycm9yCi0gS0RGX1JfVkFMVUVfTUlTU0lORzoxMDI6dmFsdWUgbWlz c2luZwotK0tERl9SX1dST05HX0ZJTkFMX0JMT0NLX0xFTkdUSDoxMjA6d3JvbmcgZmluYWwgYmxv Y2sgbGVuZ3RoCi0gS0RGX1JfV1JPTkdfT1VUUFVUX0JVRkZFUl9TSVpFOjExMjp3cm9uZyBvdXRw dXQgYnVmZmVyIHNpemUKLSBPQkpfUl9PSURfRVhJU1RTOjEwMjpvaWQgZXhpc3RzCi0gT0JKX1Jf VU5LTk9XTl9OSUQ6MTAxOnVua25vd24gbmlkCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZC9jcnlw dG8vZXZwL2tkZl9saWIuYy5rcmI1LWtkZiBvcGVuc3NsLTEuMS4xZC9jcnlwdG8vZXZwL2tkZl9s aWIuYwotLS0tIG9wZW5zc2wtMS4xLjFkL2NyeXB0by9ldnAva2RmX2xpYi5jLmtyYjUta2RmCTIw MTktMTEtMTQgMTU6MDc6MDUuMzIwMDk0NTIxICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWQvY3J5 cHRvL2V2cC9rZGZfbGliLmMJMjAxOS0xMS0xNCAxNTowNzowNS4zNDIwOTQxMjkgKzAxMDAKLUBA IC0zMSw2ICszMSw5IEBAIHN0YXRpYyBjb25zdCBFVlBfS0RGX01FVEhPRCAqc3RhbmRhcmRfbWUK LSAgICAgJnRsczFfcHJmX2tkZl9tZXRoLAotICAgICAmaGtkZl9rZGZfbWV0aCwKLSAgICAgJnNz aGtkZl9rZGZfbWV0aCwKLSsgICAgJmtiX2tkZl9tZXRoLAotKyAgICAma3JiNWtkZl9rZGZfbWV0 aCwKLSsgICAgJnNzX2tkZl9tZXRoCi0gfTsKLSAKLSBERUNMQVJFX09CSl9CU0VBUkNIX0NNUF9G Tihjb25zdCBFVlBfS0RGX01FVEhPRCAqLCBjb25zdCBFVlBfS0RGX01FVEhPRCAqLAotZGlmZiAt dXAgb3BlbnNzbC0xLjEuMWQvaW5jbHVkZS9jcnlwdG8vZXZwLmgua3JiNS1rZGYgb3BlbnNzbC0x LjEuMWQvaW5jbHVkZS9jcnlwdG8vZXZwLmgKLS0tLSBvcGVuc3NsLTEuMS4xZC9pbmNsdWRlL2Ny eXB0by9ldnAuaC5rcmI1LWtkZgkyMDE5LTExLTE0IDE1OjA3OjA1LjMyMDA5NDUyMSArMDEwMAot KysrIG9wZW5zc2wtMS4xLjFkL2luY2x1ZGUvY3J5cHRvL2V2cC5oCTIwMTktMTEtMTQgMTU6MDc6 MDUuMzQyMDk0MTI5ICswMTAwCi1AQCAtMTMwLDYgKzEzMCw5IEBAIGV4dGVybiBjb25zdCBFVlBf S0RGX01FVEhPRCBzY3J5cHRfa2RmX20KLSBleHRlcm4gY29uc3QgRVZQX0tERl9NRVRIT0QgdGxz MV9wcmZfa2RmX21ldGg7Ci0gZXh0ZXJuIGNvbnN0IEVWUF9LREZfTUVUSE9EIGhrZGZfa2RmX21l dGg7Ci0gZXh0ZXJuIGNvbnN0IEVWUF9LREZfTUVUSE9EIHNzaGtkZl9rZGZfbWV0aDsKLStleHRl cm4gY29uc3QgRVZQX0tERl9NRVRIT0Qga2Jfa2RmX21ldGg7Ci0rZXh0ZXJuIGNvbnN0IEVWUF9L REZfTUVUSE9EIGtyYjVrZGZfa2RmX21ldGg7Ci0rZXh0ZXJuIGNvbnN0IEVWUF9LREZfTUVUSE9E IHNzX2tkZl9tZXRoOwotIAotIHN0cnVjdCBldnBfbWRfc3QgewotICAgICBpbnQgdHlwZTsKLWRp ZmYgLXVwIG9wZW5zc2wtMS4xLjFkL2NyeXB0by9rZGYvYnVpbGQuaW5mby5rcmI1LWtkZiBvcGVu c3NsLTEuMS4xZC9jcnlwdG8va2RmL2J1aWxkLmluZm8KLS0tLSBvcGVuc3NsLTEuMS4xZC9jcnlw dG8va2RmL2J1aWxkLmluZm8ua3JiNS1rZGYJMjAxOS0xMS0xNCAxNTowNzowNS4zMjAwOTQ1MjEg KzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xZC9jcnlwdG8va2RmL2J1aWxkLmluZm8JMjAxOS0xMS0x NCAxNTowNzowNS4zNDIwOTQxMjkgKzAxMDAKLUBAIC0xLDMgKzEsMyBAQAotIExJQlM9Li4vLi4v bGliY3J5cHRvCi0gU09VUkNFWy4uLy4uL2xpYmNyeXB0b109XAotLSAgICAgICAgdGxzMV9wcmYu YyBrZGZfZXJyLmMga2RmX3V0aWwuYyBoa2RmLmMgc2NyeXB0LmMgcGJrZGYyLmMgc3Noa2RmLmMK LSsgICAgICAgIHRsczFfcHJmLmMga2RmX2Vyci5jIGtkZl91dGlsLmMgaGtkZi5jIHNjcnlwdC5j IHBia2RmMi5jIHNzaGtkZi5jIGtia2RmLmMga3JiNWtkZi5jIHNza2RmLmMKLWRpZmYgLXVwIG9w ZW5zc2wtMS4xLjFkL2NyeXB0by9rZGYva2JrZGYuYy5rcmI1LWtkZiBvcGVuc3NsLTEuMS4xZC9j cnlwdG8va2RmL2tia2RmLmMKLS0tLSBvcGVuc3NsLTEuMS4xZC9jcnlwdG8va2RmL2tia2RmLmMu a3JiNS1rZGYJMjAxOS0xMS0xNCAxNTowNzowNS4zNDMwOTQxMTIgKzAxMDAKLSsrKyBvcGVuc3Ns LTEuMS4xZC9jcnlwdG8va2RmL2tia2RmLmMJMjAxOS0xMS0xOCAxNzoyMTo1OC4zMjY2MzU5MDEg KzAxMDAKLUBAIC0wLDAgKzEsNTQwIEBACi0rLyoKLSsgKiBDb3B5cmlnaHQgMjAxOSBUaGUgT3Bl blNTTCBQcm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCi0rICogQ29weXJpZ2h0 IDIwMTkgUmVkIEhhdCwgSW5jLgotKyAqCi0rICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBM aWNlbnNlIDIuMCAodGhlICJMaWNlbnNlIikuICBZb3UgbWF5IG5vdCB1c2UKLSsgKiB0aGlzIGZp bGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gIFlvdSBjYW4gb2J0YWlu IGEgY29weQotKyAqIGluIHRoZSBmaWxlIExJQ0VOU0UgaW4gdGhlIHNvdXJjZSBkaXN0cmlidXRp b24gb3IgYXQKLSsgKiBodHRwczovL3d3dy5vcGVuc3NsLm9yZy9zb3VyY2UvbGljZW5zZS5odG1s Ci0rICovCi0rCi0rLyoKLSsgKiBUaGlzIGltcGxlbWVudHMgaHR0cHM6Ly9jc3JjLm5pc3QuZ292 L3B1YmxpY2F0aW9ucy9kZXRhaWwvc3AvODAwLTEwOC9maW5hbAotKyAqIHNlY3Rpb24gNS4xICgi Y291bnRlciBtb2RlIikgYW5kIHNlY3Rpb24gNS4yICgiZmVlZGJhY2sgbW9kZSIpIGluIGJvdGgg SE1BQwotKyAqIGFuZCBDTUFDLiAgVGhhdCBkb2N1bWVudCBkb2VzIG5vdCBuYW1lIHRoZSBLREZz IGl0IGRlZmluZXM7IHRoZSBuYW1lIGlzCi0rICogZGVyaXZlZCBmcm9tCi0rICogaHR0cHM6Ly9j c3JjLm5pc3QuZ292L1Byb2plY3RzL0NyeXB0b2dyYXBoaWMtQWxnb3JpdGhtLVZhbGlkYXRpb24t UHJvZ3JhbS9LZXktRGVyaXZhdGlvbgotKyAqCi0rICogTm90ZSB0aGF0IHNlY3Rpb24gNS4zICgi ZG91YmxlLXBpcGVsaW5lIG1vZGUiKSBpcyBub3QgaW1wbGVtZW50ZWQsIHRob3VnaAotKyAqIGl0 IHdvdWxkIGJlIHBvc3NpYmxlIHRvIGRvIHNvIGluIHRoZSBmdXR1cmUuCi0rICoKLSsgKiBUaGVz ZSB2ZXJzaW9ucyBhbGwgYXNzdW1lIHRoZSBjb3VudGVyIGlzIHVzZWQuICBJdCB3b3VsZCBiZSBy ZWxhdGl2ZWx5Ci0rICogc3RyYWlnaHRmb3J3YXJkIHRvIGV4cG9zZSBhIGNvbmZpZ3VyYXRpb24g aGFuZGxlIHNob3VsZCB0aGUgbmVlZCBhcmlzZS4KLSsgKgotKyAqIFZhcmlhYmxlIG5hbWVzIGF0 dGVtcHQgdG8gbWF0Y2ggdGhvc2Ugb2YgU1A4MDAtMTA4LgotKyAqLwotKwotKyNpbmNsdWRlIDxz dGRhcmcuaD4KLSsjaW5jbHVkZSA8c3RkbGliLmg+Ci0rI2luY2x1ZGUgPHN0cmluZy5oPgotKwot KyNpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgotKyNpbmNsdWRlIDxvcGVuc3NsL2htYWMuaD4KLSsj aW5jbHVkZSA8b3BlbnNzbC9jbWFjLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wva2RmLmg+Ci0rCi0r I2luY2x1ZGUgImludGVybmFsL251bWJlcnMuaCIKLSsjaW5jbHVkZSAiaW50ZXJuYWwvY3J5cHRs aWIuaCIKLSsjaW5jbHVkZSAiY3J5cHRvL2V2cC5oIgotKyNpbmNsdWRlICJrZGZfbG9jYWwuaCIK LSsKLSsjaW5jbHVkZSAiZV9vcy5oIgotKwotKyNpZmRlZiBNSU4KLSsjIHVuZGVmIE1JTgotKyNl bmRpZgotKyNkZWZpbmUgTUlOKGEsIGIpICgoYSkgPCAoYikpID8gKGEpIDogKGIpCi0rCi0rdHlw ZWRlZiBzdHJ1Y3QgewotKyAgICBpbnQgbWFjX3R5cGU7Ci0rICAgIHVuaW9uIHsKLSsgICAgICAg IEhNQUNfQ1RYICpobWFjOwotKyAgICAgICAgQ01BQ19DVFggKmNtYWM7Ci0rICAgIH0gbTsKLSt9 IE1BQ19DVFg7Ci0rCi0rLyogT3VyIGNvbnRleHQgc3RydWN0dXJlLiAqLwotK3N0cnVjdCBldnBf a2RmX2ltcGxfc3QgewotKyAgICBpbnQgbW9kZTsKLSsKLSsgICAgTUFDX0NUWCAqY3R4X2luaXQ7 Ci0rCi0rICAgIGNvbnN0IEVWUF9DSVBIRVIgKmNpcGhlcjsKLSsgICAgY29uc3QgRVZQX01EICpt ZDsKLSsKLSsgICAgLyogTmFtZXMgYXJlIGxvd2VyY2FzZWQgdmVyc2lvbnMgb2YgdGhvc2UgZm91 bmQgaW4gU1A4MDAtMTA4LiAqLwotKyAgICB1bnNpZ25lZCBjaGFyICpraTsKLSsgICAgc2l6ZV90 IGtpX2xlbjsKLSsgICAgdW5zaWduZWQgY2hhciAqbGFiZWw7Ci0rICAgIHNpemVfdCBsYWJlbF9s ZW47Ci0rICAgIHVuc2lnbmVkIGNoYXIgKmNvbnRleHQ7Ci0rICAgIHNpemVfdCBjb250ZXh0X2xl bjsKLSsgICAgdW5zaWduZWQgY2hhciAqaXY7Ci0rICAgIHNpemVfdCBpdl9sZW47Ci0rfTsKLSsK LStzdGF0aWMgTUFDX0NUWCAqRVZQX01BQ19DVFhfbmV3KGludCBtYWNfdHlwZSkKLSt7Ci0rICAg IE1BQ19DVFggKmN0eDsKLSsKLSsgICAgY3R4ID0gT1BFTlNTTF96YWxsb2Moc2l6ZW9mKCpjdHgp KTsKLSsgICAgaWYgKGN0eCA9PSBOVUxMKQotKyAgICAgICAgcmV0dXJuIE5VTEw7Ci0rCi0rICAg IGN0eC0+bWFjX3R5cGUgPSBtYWNfdHlwZTsKLSsgICAgaWYgKG1hY190eXBlID09IEVWUF9LREZf S0JfTUFDX1RZUEVfSE1BQykgewotKyAgICAgICAgaWYgKChjdHgtPm0uaG1hYyA9IEhNQUNfQ1RY X25ldygpKSA9PSBOVUxMKQotKyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICB9IGVsc2Ugewot KyAgICAgICAgaWYgKChjdHgtPm0uY21hYyA9IENNQUNfQ1RYX25ldygpKSA9PSBOVUxMKQotKyAg ICAgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rICAgIHJldHVybiBjdHg7Ci0rCi0rZXJyOgot KyAgICBPUEVOU1NMX2ZyZWUoY3R4KTsKLSsgICAgcmV0dXJuIE5VTEw7Ci0rfQotKwotK3N0YXRp YyB2b2lkIEVWUF9NQUNfQ1RYX2ZyZWUoTUFDX0NUWCAqY3R4KQotK3sKLSsgICAgaWYgKGN0eCA9 PSBOVUxMKQotKyAgICAgICAgcmV0dXJuOwotKwotKyAgICBpZiAoY3R4LT5tYWNfdHlwZSA9PSBF VlBfS0RGX0tCX01BQ19UWVBFX0hNQUMpCi0rICAgICAgICBITUFDX0NUWF9mcmVlKGN0eC0+bS5o bWFjKTsKLSsgICAgZWxzZQotKyAgICAgICAgQ01BQ19DVFhfZnJlZShjdHgtPm0uY21hYyk7Ci0r ICAgIE9QRU5TU0xfZnJlZShjdHgpOwotK30KLSsKLStzdGF0aWMgTUFDX0NUWCAqRVZQX01BQ19D VFhfZHVwKE1BQ19DVFggKnNjdHgpCi0rewotKyAgICBNQUNfQ1RYICpjdHg7Ci0rCi0rICAgIGN0 eCA9IE9QRU5TU0xfemFsbG9jKHNpemVvZigqc2N0eCkpOwotKyAgICBpZiAoY3R4ID09IE5VTEwp Ci0rICAgICAgICByZXR1cm4gTlVMTDsKLSsKLSsgICAgY3R4LT5tYWNfdHlwZSA9IHNjdHgtPm1h Y190eXBlOwotKyAgICBpZiAoc2N0eC0+bWFjX3R5cGUgPT0gRVZQX0tERl9LQl9NQUNfVFlQRV9I TUFDKSB7Ci0rICAgICAgICBpZiAoKGN0eC0+bS5obWFjID0gSE1BQ19DVFhfbmV3KCkpID09IE5V TEwKLSsgICAgICAgICAgICB8fCBITUFDX0NUWF9jb3B5KGN0eC0+bS5obWFjLCBzY3R4LT5tLmht YWMpIDw9IDApCi0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgIH0gZWxzZSB7Ci0rICAgICAg ICBpZiAoKGN0eC0+bS5jbWFjID0gQ01BQ19DVFhfbmV3KCkpID09IE5VTEwKLSsgICAgICAgICAg ICB8fCBDTUFDX0NUWF9jb3B5KGN0eC0+bS5jbWFjLCBzY3R4LT5tLmNtYWMpIDw9IDApCi0rICAg ICAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgcmV0dXJuIGN0eDsKLSsKLStlcnI6Ci0r ICAgIEVWUF9NQUNfQ1RYX2ZyZWUoY3R4KTsKLSsgICAgcmV0dXJuIE5VTEw7Ci0rfQotKwotK3N0 YXRpYyBzaXplX3QgRVZQX01BQ19zaXplKE1BQ19DVFggKmN0eCkKLSt7Ci0rICAgIGlmIChjdHgt Pm1hY190eXBlID09IEVWUF9LREZfS0JfTUFDX1RZUEVfSE1BQykgewotKyAgICAgICAgY29uc3Qg RVZQX01EICptZDsKLSsKLSsgICAgICAgIGlmIChjdHgtPm0uaG1hYyA9PSBOVUxMKQotKyAgICAg ICAgICAgIHJldHVybiAwOwotKyAgICAgICAgaWYgKChtZCA9IEhNQUNfQ1RYX2dldF9tZChjdHgt Pm0uaG1hYykpID09IE5VTEwpCi0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICByZXR1 cm4gKHNpemVfdClFVlBfTURfc2l6ZShtZCk7Ci0rICAgIH0gZWxzZSB7Ci0rICAgICAgICBjb25z dCBFVlBfQ0lQSEVSX0NUWCAqY2N0eDsKLSsKLSsgICAgICAgIGlmIChjdHgtPm0uY21hYyA9PSBO VUxMKQotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgaWYgKChjY3R4ID0gQ01BQ19D VFhfZ2V0MF9jaXBoZXJfY3R4KGN0eC0+bS5jbWFjKSkgPT0gTlVMTCkKLSsgICAgICAgICAgICBy ZXR1cm4gMDsKLSsgICAgICAgIHJldHVybiBFVlBfQ0lQSEVSX0NUWF9ibG9ja19zaXplKGNjdHgp OwotKyAgICB9Ci0rfQotKwotK3N0YXRpYyBpbnQgRVZQX01BQ191cGRhdGUoTUFDX0NUWCAqY3R4 LCBjb25zdCB1bnNpZ25lZCBjaGFyICpkYXRhLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg c2l6ZV90IGRhdGFsZW4pCi0rewotKyAgICBpZiAoY3R4LT5tYWNfdHlwZSA9PSBFVlBfS0RGX0tC X01BQ19UWVBFX0hNQUMpCi0rICAgICAgICByZXR1cm4gSE1BQ19VcGRhdGUoY3R4LT5tLmhtYWMs IGRhdGEsIGRhdGFsZW4pOwotKyAgICBlbHNlCi0rICAgICAgICByZXR1cm4gQ01BQ19VcGRhdGUo Y3R4LT5tLmNtYWMsIGRhdGEsIGRhdGFsZW4pOwotK30KLSsKLStzdGF0aWMgaW50IEVWUF9NQUNf ZmluYWwoTUFDX0NUWCAqY3R4LCB1bnNpZ25lZCBjaGFyICpvdXQsCi0rICAgICAgICAgICAgICAg ICAgICAgICAgIHNpemVfdCAqb3V0bCwgc2l6ZV90IG91dHNpemUpCi0rewotKyAgICBpZiAob3V0 c2l6ZSAhPSBFVlBfTUFDX3NpemUoY3R4KSkKLSsgICAgICAgIC8qIHdlIGRvIG5vdCBjb3BlIHdp dGggYW55dGhpbmcgZWxzZSAqLwotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIGlmIChjdHgt Pm1hY190eXBlID09IEVWUF9LREZfS0JfTUFDX1RZUEVfSE1BQykgewotKyAgICAgICAgdW5zaWdu ZWQgaW50IGludHNpemUgPSAodW5zaWduZWQgaW50KW91dHNpemU7Ci0rICAgICAgICBpbnQgcmV0 OwotKwotKyAgICAgICAgcmV0ID0gSE1BQ19GaW5hbChjdHgtPm0uaG1hYywgb3V0LCAmaW50c2l6 ZSk7Ci0rICAgICAgICBpZiAob3V0bCAhPSBOVUxMKQotKyAgICAgICAgICAgICpvdXRsID0gaW50 c2l6ZTsKLSsgICAgICAgIHJldHVybiByZXQ7Ci0rICAgIH0gZWxzZSB7Ci0rICAgICAgICBzaXpl X3Qgc2l6ZSA9IG91dHNpemU7Ci0rICAgICAgICBpbnQgcmV0OwotKwotKyAgICAgICAgcmV0ID0g Q01BQ19GaW5hbChjdHgtPm0uY21hYywgb3V0LCAmc2l6ZSk7Ci0rICAgICAgICBpZiAob3V0bCAh PSBOVUxMKQotKyAgICAgICAgICAgICpvdXRsID0gc2l6ZTsKLSsgICAgICAgIHJldHVybiByZXQ7 Ci0rICAgIH0KLSt9Ci0rCi0rc3RhdGljIGludCBldnBfbWFjX2luaXQoTUFDX0NUWCAqY3R4LCBj b25zdCBFVlBfTUQgKm1kLAotKyAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVWUF9DSVBI RVIgKmNpcGhlciwgdW5zaWduZWQgY2hhciAqa2V5LCBzaXplX3Qga2V5bGVuKQotK3sKLSsgICAg aWYgKGN0eC0+bWFjX3R5cGUgPT0gRVZQX0tERl9LQl9NQUNfVFlQRV9ITUFDKSB7Ci0rICAgICAg ICBpZiAobWQgPT0gTlVMTCkKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsgICAgICAgIHJldHVy biBITUFDX0luaXRfZXgoY3R4LT5tLmhtYWMsIGtleSwgKGludClrZXlsZW4sIG1kLCBOVUxMKTsK LSsgICAgfSBlbHNlIHsKLSsgICAgICAgIGlmIChjaXBoZXIgPT0gTlVMTCkKLSsgICAgICAgICAg ICByZXR1cm4gMDsKLSsgICAgICAgIHJldHVybiBDTUFDX0luaXQoY3R4LT5tLmNtYWMsIGtleSwg a2V5bGVuLCBjaXBoZXIsIE5VTEwpOwotKyAgICB9Ci0rfQotKwotK3N0YXRpYyB2b2lkIGtia2Rm X3Jlc2V0KEVWUF9LREZfSU1QTCAqY3R4KTsKLSsKLSsvKiBOb3QgYWxsIHBsYXRmb3JtcyBoYXZl IGh0b2JlMzIoKS4gKi8KLStzdGF0aWMgdWludDMyX3QgYmUzMih1aW50MzJfdCBob3N0KQotK3sK LSsgICAgdWludDMyX3QgYmlnID0gMDsKLSsgICAgY29uc3QgdW5pb24gewotKyAgICAgICAgbG9u ZyBvbmU7Ci0rICAgICAgICBjaGFyIGxpdHRsZTsKLSsgICAgfSBpc19lbmRpYW4gPSB7IDEgfTsK LSsKLSsgICAgaWYgKCFpc19lbmRpYW4ubGl0dGxlKQotKyAgICAgICAgcmV0dXJuIGhvc3Q7Ci0r Ci0rICAgIGJpZyB8PSAoaG9zdCAmIDB4ZmYwMDAwMDApID4+IDI0OwotKyAgICBiaWcgfD0gKGhv c3QgJiAweDAwZmYwMDAwKSA+PiA4OwotKyAgICBiaWcgfD0gKGhvc3QgJiAweDAwMDBmZjAwKSA8 PCA4OwotKyAgICBiaWcgfD0gKGhvc3QgJiAweDAwMDAwMGZmKSA8PCAyNDsKLSsgICAgcmV0dXJu IGJpZzsKLSt9Ci0rCi0rc3RhdGljIEVWUF9LREZfSU1QTCAqa2JrZGZfbmV3KHZvaWQpCi0rewot KyAgICBFVlBfS0RGX0lNUEwgKmN0eDsKLSsKLSsgICAgY3R4ID0gT1BFTlNTTF96YWxsb2Moc2l6 ZW9mKCpjdHgpKTsKLSsgICAgaWYgKGN0eCA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RG X0ZfS0JLREZfTkVXLCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7Ci0rICAgICAgICByZXR1cm4gTlVM TDsKLSsgICAgfQotKwotKyAgICByZXR1cm4gY3R4OwotK30KLSsKLStzdGF0aWMgdm9pZCBrYmtk Zl9mcmVlKEVWUF9LREZfSU1QTCAqY3R4KQotK3sKLSsgICAga2JrZGZfcmVzZXQoY3R4KTsKLSsg ICAgT1BFTlNTTF9mcmVlKGN0eCk7Ci0rfQotKwotK3N0YXRpYyB2b2lkIGtia2RmX3Jlc2V0KEVW UF9LREZfSU1QTCAqY3R4KQotK3sKLSsgICAgRVZQX01BQ19DVFhfZnJlZShjdHgtPmN0eF9pbml0 KTsKLSsgICAgT1BFTlNTTF9jbGVhcl9mcmVlKGN0eC0+Y29udGV4dCwgY3R4LT5jb250ZXh0X2xl bik7Ci0rICAgIE9QRU5TU0xfY2xlYXJfZnJlZShjdHgtPmxhYmVsLCBjdHgtPmxhYmVsX2xlbik7 Ci0rICAgIE9QRU5TU0xfY2xlYXJfZnJlZShjdHgtPmtpLCBjdHgtPmtpX2xlbik7Ci0rICAgIE9Q RU5TU0xfY2xlYXJfZnJlZShjdHgtPml2LCBjdHgtPml2X2xlbik7Ci0rICAgIG1lbXNldChjdHgs IDAsIHNpemVvZigqY3R4KSk7Ci0rfQotKwotKy8qIFNQODAwLTEwOCBzZWN0aW9uIDUuMSBvciBz ZWN0aW9uIDUuMiBkZXBlbmRpbmcgb24gbW9kZS4gKi8KLStzdGF0aWMgaW50IGRlcml2ZShNQUNf Q1RYICpjdHhfaW5pdCwgaW50IG1vZGUsIHVuc2lnbmVkIGNoYXIgKml2LAotKyAgICAgICAgICAg ICAgICAgIHNpemVfdCBpdl9sZW4sIHVuc2lnbmVkIGNoYXIgKmxhYmVsLCBzaXplX3QgbGFiZWxf bGVuLAotKyAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKmNvbnRleHQsIHNpemVfdCBj b250ZXh0X2xlbiwKLSsgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICprX2ksIHNpemVf dCBoLCB1aW50MzJfdCBsLCB1bnNpZ25lZCBjaGFyICprbywKLSsgICAgICAgICAgICAgICAgICBz aXplX3Qga29fbGVuKQotK3sKLSsgICAgaW50IHJldCA9IDA7Ci0rICAgIE1BQ19DVFggKmN0eCA9 IE5VTEw7Ci0rICAgIHNpemVfdCB3cml0dGVuID0gMCwgdG9fd3JpdGUsIGtfaV9sZW4gPSBpdl9s ZW47Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgemVybyA9IDA7Ci0rICAgIHVpbnQzMl90IGNv dW50ZXIsIGk7Ci0rCi0rICAgIC8qIFNldHVwIEsoMCkgZm9yIGZlZWRiYWNrIG1vZGUuICovCi0r ICAgIGlmIChpdl9sZW4gPiAwKQotKyAgICAgICAgbWVtY3B5KGtfaSwgaXYsIGl2X2xlbik7Ci0r Ci0rICAgIGZvciAoY291bnRlciA9IDE7IHdyaXR0ZW4gPCBrb19sZW47IGNvdW50ZXIrKykgewot KyAgICAgICAgaSA9IGJlMzIoY291bnRlcik7Ci0rCi0rICAgICAgICBjdHggPSBFVlBfTUFDX0NU WF9kdXAoY3R4X2luaXQpOwotKyAgICAgICAgaWYgKGN0eCA9PSBOVUxMKQotKyAgICAgICAgICAg IGdvdG8gZG9uZTsKLSsKLSsgICAgICAgIC8qIFBlcmZvcm0gZmVlZGJhY2ssIGlmIGFwcHJvcHJp YXRlLiAqLwotKyAgICAgICAgaWYgKG1vZGUgPT0gRVZQX0tERl9LQl9NT0RFX0ZFRURCQUNLICYm ICFFVlBfTUFDX3VwZGF0ZShjdHgsIGtfaSwga19pX2xlbikpCi0rICAgICAgICAgICAgZ290byBk b25lOwotKwotKyAgICAgICAgaWYgKCFFVlBfTUFDX3VwZGF0ZShjdHgsICh1bnNpZ25lZCBjaGFy ICopJmksIDQpCi0rICAgICAgICAgICAgfHwgIUVWUF9NQUNfdXBkYXRlKGN0eCwgbGFiZWwsIGxh YmVsX2xlbikKLSsgICAgICAgICAgICB8fCAhRVZQX01BQ191cGRhdGUoY3R4LCAmemVybywgMSkK LSsgICAgICAgICAgICB8fCAhRVZQX01BQ191cGRhdGUoY3R4LCBjb250ZXh0LCBjb250ZXh0X2xl bikKLSsgICAgICAgICAgICB8fCAhRVZQX01BQ191cGRhdGUoY3R4LCAodW5zaWduZWQgY2hhciAq KSZsLCA0KQotKyAgICAgICAgICAgIHx8ICFFVlBfTUFDX2ZpbmFsKGN0eCwga19pLCBOVUxMLCBo KSkKLSsgICAgICAgICAgICBnb3RvIGRvbmU7Ci0rCi0rICAgICAgICB0b193cml0ZSA9IGtvX2xl biAtIHdyaXR0ZW47Ci0rICAgICAgICBtZW1jcHkoa28gKyB3cml0dGVuLCBrX2ksIE1JTih0b193 cml0ZSwgaCkpOwotKyAgICAgICAgd3JpdHRlbiArPSBoOwotKwotKyAgICAgICAga19pX2xlbiA9 IGg7Ci0rICAgICAgICBFVlBfTUFDX0NUWF9mcmVlKGN0eCk7Ci0rICAgICAgICBjdHggPSBOVUxM OwotKyAgICB9Ci0rCi0rICAgIHJldCA9IDE7Ci0rZG9uZToKLSsgICAgRVZQX01BQ19DVFhfZnJl ZShjdHgpOwotKyAgICByZXR1cm4gcmV0OwotK30KLSsKLStzdGF0aWMgaW50IGtia2RmX2Rlcml2 ZShFVlBfS0RGX0lNUEwgKmN0eCwgdW5zaWduZWQgY2hhciAqa2V5LCBzaXplX3Qga2V5bGVuKQot K3sKLSsgICAgaW50IHJldCA9IDA7Ci0rICAgIHVuc2lnbmVkIGNoYXIgKmtfaSA9IE5VTEw7Ci0r ICAgIHVpbnQzMl90IGwgPSBiZTMyKGtleWxlbiAqIDgpOwotKyAgICBzaXplX3QgaCA9IDA7Ci0r Ci0rICAgIC8qIGxhYmVsLCBjb250ZXh0LCBhbmQgaXYgYXJlIHBlcm1pdHRlZCB0byBiZSBlbXB0 eS4gIENoZWNrIGV2ZXJ5dGhpbmcKLSsgICAgICogZWxzZS4gKi8KLSsgICAgaWYgKGN0eC0+Y3R4 X2luaXQgPT0gTlVMTAotKyAgICAgICAgfHwgZXZwX21hY19pbml0KGN0eC0+Y3R4X2luaXQsIGN0 eC0+bWQsIGN0eC0+Y2lwaGVyLCBjdHgtPmtpLCBjdHgtPmtpX2xlbikgPD0gMCkgewotKyAgICAg ICAgaWYgKGN0eC0+a2lfbGVuID09IDAgfHwgY3R4LT5raSA9PSBOVUxMKSB7Ci0rICAgICAgICAg ICAgS0RGZXJyKEtERl9GX0tCS0RGX0RFUklWRSwgS0RGX1JfTUlTU0lOR19LRVkpOwotKyAgICAg ICAgICAgIHJldHVybiAwOwotKyAgICAgICAgfQotKyAgICAgICAgLyogQ291bGQgZWl0aGVyIGJl IG1pc3NpbmcgTUFDIG9yIG1pc3NpbmcgbWVzc2FnZSBkaWdlc3Qgb3IgbWlzc2luZwotKyAgICAg ICAgICogY2lwaGVyIC0gYXJiaXRyYXJpbHksIEkgcGljayB0aGlzIG9uZS4gKi8KLSsgICAgICAg IEtERmVycihLREZfRl9LQktERl9ERVJJVkUsIEtERl9SX01JU1NJTkdfUEFSQU1FVEVSKTsKLSsg ICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rCi0rICAgIGggPSBFVlBfTUFDX3NpemUoY3R4LT5j dHhfaW5pdCk7Ci0rICAgIGlmIChoID09IDApCi0rICAgICAgICBnb3RvIGRvbmU7Ci0rICAgIGlm IChjdHgtPml2X2xlbiAhPSAwICYmIGN0eC0+aXZfbGVuICE9IGgpIHsKLSsgICAgICAgIEtERmVy cihLREZfRl9LQktERl9ERVJJVkUsIEtERl9SX0lOVkFMSURfU0VFRF9MRU5HVEgpOwotKyAgICAg ICAgZ290byBkb25lOwotKyAgICB9Ci0rCi0rICAgIGtfaSA9IE9QRU5TU0xfemFsbG9jKGgpOwot KyAgICBpZiAoa19pID09IE5VTEwpCi0rICAgICAgICBnb3RvIGRvbmU7Ci0rCi0rICAgIHJldCA9 IGRlcml2ZShjdHgtPmN0eF9pbml0LCBjdHgtPm1vZGUsIGN0eC0+aXYsIGN0eC0+aXZfbGVuLCBj dHgtPmxhYmVsLAotKyAgICAgICAgICAgICAgICAgY3R4LT5sYWJlbF9sZW4sIGN0eC0+Y29udGV4 dCwgY3R4LT5jb250ZXh0X2xlbiwga19pLCBoLCBsLAotKyAgICAgICAgICAgICAgICAga2V5LCBr ZXlsZW4pOwotK2RvbmU6Ci0rICAgIGlmIChyZXQgIT0gMSkKLSsgICAgICAgIE9QRU5TU0xfY2xl YW5zZShrZXksIGtleWxlbik7Ci0rICAgIE9QRU5TU0xfY2xlYXJfZnJlZShrX2ksIGgpOwotKyAg ICByZXR1cm4gcmV0OwotK30KLSsKLStzdGF0aWMgc2l6ZV90IGtia2RmX3NpemUoRVZQX0tERl9J TVBMICpjdHgpCi0rewotKyAgICByZXR1cm4gVUlOVDMyX01BWC84OwotK30KLSsKLStzdGF0aWMg aW50IGtia2RmX3BhcnNlX2J1ZmZlcl9hcmcodW5zaWduZWQgY2hhciAqKmRzdCwgc2l6ZV90ICpk c3RfbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhX2xpc3Qg YXJncykKLSt7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnA7Ci0rICAgIHNpemVfdCBsZW47 Ci0rCi0rICAgIHAgPSB2YV9hcmcoYXJncywgY29uc3QgdW5zaWduZWQgY2hhciAqKTsKLSsgICAg bGVuID0gdmFfYXJnKGFyZ3MsIHNpemVfdCk7Ci0rICAgIE9QRU5TU0xfY2xlYXJfZnJlZSgqZHN0 LCAqZHN0X2xlbik7Ci0rICAgIGlmIChsZW4gPT0gMCkgewotKyAgICAgICAgKmRzdCA9IE5VTEw7 Ci0rICAgICAgICAqZHN0X2xlbiA9IDA7Ci0rICAgICAgICByZXR1cm4gMTsKLSsgICAgfQotKwot KyAgICAqZHN0ID0gT1BFTlNTTF9tZW1kdXAocCwgbGVuKTsKLSsgICAgaWYgKCpkc3QgPT0gTlVM TCkKLSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICAqZHN0X2xlbiA9IGxlbjsKLSsgICAgcmV0 dXJuIDE7Ci0rfQotKwotK3N0YXRpYyBpbnQga2JrZGZfY3RybChFVlBfS0RGX0lNUEwgKmN0eCwg aW50IGNtZCwgdmFfbGlzdCBhcmdzKQotK3sKLSsgICAgaW50IHQ7Ci0rCi0rICAgIHN3aXRjaCAo Y21kKSB7Ci0rICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9NRDoKLSsgICAgICAgIGN0eC0+bWQg PSB2YV9hcmcoYXJncywgY29uc3QgRVZQX01EICopOwotKyAgICAgICAgaWYgKGN0eC0+bWQgPT0g TlVMTCkKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgICAgIHJldHVybiAxOwotKwot KyAgICBjYXNlIEVWUF9LREZfQ1RSTF9TRVRfQ0lQSEVSOgotKyAgICAgICAgY3R4LT5jaXBoZXIg PSB2YV9hcmcoYXJncywgY29uc3QgRVZQX0NJUEhFUiAqKTsKLSsgICAgICAgIGlmIChjdHgtPmNp cGhlciA9PSBOVUxMKQotKyAgICAgICAgICAgIHJldHVybiAwOwotKwotKyAgICAgICAgcmV0dXJu IDE7Ci0rCi0rICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9LRVk6Ci0rICAgICAgICByZXR1cm4g a2JrZGZfcGFyc2VfYnVmZmVyX2FyZygmY3R4LT5raSwKLSsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICZjdHgtPmtpX2xlbiwgYXJncyk7Ci0rCi0rICAgIGNhc2UgRVZQX0tE Rl9DVFJMX1NFVF9TQUxUOgotKyAgICAgICAgcmV0dXJuIGtia2RmX3BhcnNlX2J1ZmZlcl9hcmco JmN0eC0+bGFiZWwsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICZjdHgtPmxhYmVsX2xlbiwgYXJncyk7Ci0rCi0rICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9L Ql9JTkZPOgotKyAgICAgICAgcmV0dXJuIGtia2RmX3BhcnNlX2J1ZmZlcl9hcmcoJmN0eC0+Y29u dGV4dCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmN0eC0+ Y29udGV4dF9sZW4sIGFyZ3MpOwotKwotKyAgICBjYXNlIEVWUF9LREZfQ1RSTF9TRVRfS0JfU0VF RDoKLSsgICAgICAgIHJldHVybiBrYmtkZl9wYXJzZV9idWZmZXJfYXJnKCZjdHgtPml2LAotKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY3R4LT5pdl9sZW4sIGFy Z3MpOwotKwotKyAgICBjYXNlIEVWUF9LREZfQ1RSTF9TRVRfS0JfTU9ERToKLSsgICAgICAgIHQg PSB2YV9hcmcoYXJncywgaW50KTsKLSsgICAgICAgIGlmICh0ICE9IEVWUF9LREZfS0JfTU9ERV9D T1VOVEVSICYmIHQgIT0gRVZQX0tERl9LQl9NT0RFX0ZFRURCQUNLICkgewotKyAgICAgICAgICAg IEtERmVycihLREZfRl9LQktERl9DVFJMLCBLREZfUl9WQUxVRV9FUlJPUik7Ci0rICAgICAgICAg ICAgcmV0dXJuIDA7Ci0rICAgICAgICB9Ci0rICAgICAgICBjdHgtPm1vZGUgPSB0OwotKyAgICAg ICAgcmV0dXJuIDE7Ci0rCi0rICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9LQl9NQUNfVFlQRToK LSsgICAgICAgIHQgPSB2YV9hcmcoYXJncywgaW50KTsKLSsgICAgICAgIGlmICh0ICE9IEVWUF9L REZfS0JfTUFDX1RZUEVfSE1BQyAmJiB0ICE9IEVWUF9LREZfS0JfTUFDX1RZUEVfQ01BQyApIHsK LSsgICAgICAgICAgICBLREZlcnIoS0RGX0ZfS0JLREZfQ1RSTCwgS0RGX1JfVkFMVUVfRVJST1Ip OwotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgfQotKwotKyAgICAgICAgaWYgKGN0 eC0+Y3R4X2luaXQgIT0gTlVMTCkgewotKyAgICAgICAgICAgIEVWUF9NQUNfQ1RYX2ZyZWUoY3R4 LT5jdHhfaW5pdCk7Ci0rICAgICAgICB9Ci0rICAgICAgICBjdHgtPmN0eF9pbml0ID0gRVZQX01B Q19DVFhfbmV3KHQpOwotKyAgICAgICAgaWYgKGN0eC0+Y3R4X2luaXQgPT0gTlVMTCkgewotKyAg ICAgICAgICAgIEtERmVycihLREZfRl9LQktERl9DVFJMLCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7 Ci0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICB9Ci0rICAgICAgICByZXR1cm4gMTsK LSsKLSsgICAgZGVmYXVsdDoKLSsgICAgICAgIHJldHVybiAtMjsKLSsKLSsgICAgfQotK30KLSsK LStzdGF0aWMgaW50IGtia2RmX2N0cmxfc3RyKEVWUF9LREZfSU1QTCAqY3R4LCBjb25zdCBjaGFy ICp0eXBlLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1 ZSkKLSt7Ci0rICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0Zf S0RGX1NTSEtERl9DVFJMX1NUUiwgS0RGX1JfVkFMVUVfTUlTU0lORyk7Ci0rICAgICAgICByZXR1 cm4gMDsKLSsgICAgfQotKwotKyAgICBpZiAoc3RyY21wKHR5cGUsICJkaWdlc3QiKSA9PSAwKQot KyAgICAgICAgcmV0dXJuIGtkZl9tZDJjdHJsKGN0eCwga2JrZGZfY3RybCwgRVZQX0tERl9DVFJM X1NFVF9NRCwgdmFsdWUpOwotKyAgICAvKiBhbGlhcywgZm9yIGhpc3RvcmljYWwgcmVhc29ucyAq LwotKyAgICBpZiAoc3RyY21wKHR5cGUsICJtZCIpID09IDApCi0rICAgICAgICByZXR1cm4ga2Rm X21kMmN0cmwoY3R4LCBrYmtkZl9jdHJsLCBFVlBfS0RGX0NUUkxfU0VUX01ELCB2YWx1ZSk7Ci0r Ci0rICAgIGlmIChzdHJjbXAodHlwZSwgImNpcGhlciIpID09IDApCi0rICAgICAgICByZXR1cm4g a2RmX2NpcGhlcjJjdHJsKGN0eCwga2JrZGZfY3RybCwgRVZQX0tERl9DVFJMX1NFVF9DSVBIRVIs IHZhbHVlKTsKLSsKLSsgICAgaWYgKHN0cmNtcCh0eXBlLCAia2V5IikgPT0gMCkKLSsgICAgICAg IHJldHVybiBrZGZfc3RyMmN0cmwoY3R4LCBrYmtkZl9jdHJsLAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICBFVlBfS0RGX0NUUkxfU0VUX0tFWSwgdmFsdWUpOwotKwotKyAgICBpZiAoc3Ry Y21wKHR5cGUsICJoZXhrZXkiKSA9PSAwKQotKyAgICAgICAgcmV0dXJuIGtkZl9oZXgyY3RybChj dHgsIGtia2RmX2N0cmwsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVWUF9LREZfQ1RS TF9TRVRfS0VZLCB2YWx1ZSk7Ci0rCi0rICAgIGlmIChzdHJjbXAodHlwZSwgInNhbHQiKSA9PSAw KQotKyAgICAgICAgcmV0dXJuIGtkZl9zdHIyY3RybChjdHgsIGtia2RmX2N0cmwsCi0rICAgICAg ICAgICAgICAgICAgICAgICAgICAgIEVWUF9LREZfQ1RSTF9TRVRfU0FMVCwgdmFsdWUpOwotKwot KyAgICBpZiAoc3RyY21wKHR5cGUsICJoZXhzYWx0IikgPT0gMCkKLSsgICAgICAgIHJldHVybiBr ZGZfaGV4MmN0cmwoY3R4LCBrYmtkZl9jdHJsLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICBFVlBfS0RGX0NUUkxfU0VUX1NBTFQsIHZhbHVlKTsKLSsKLSsgICAgaWYgKHN0cmNtcCh0eXBl LCAiaW5mbyIpID09IDApCi0rICAgICAgICByZXR1cm4ga2RmX3N0cjJjdHJsKGN0eCwga2JrZGZf Y3RybCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVZQX0tERl9DVFJMX1NFVF9LQl9J TkZPLCB2YWx1ZSk7Ci0rCi0rICAgIGlmIChzdHJjbXAodHlwZSwgImhleGluZm8iKSA9PSAwKQot KyAgICAgICAgcmV0dXJuIGtkZl9oZXgyY3RybChjdHgsIGtia2RmX2N0cmwsCi0rICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEVWUF9LREZfQ1RSTF9TRVRfS0JfSU5GTywgdmFsdWUpOwotKwot KyAgICBpZiAoc3RyY21wKHR5cGUsICJzZWVkIikgPT0gMCkKLSsgICAgICAgIHJldHVybiBrZGZf c3RyMmN0cmwoY3R4LCBrYmtkZl9jdHJsLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBF VlBfS0RGX0NUUkxfU0VUX0tCX1NFRUQsIHZhbHVlKTsKLSsKLSsgICAgaWYgKHN0cmNtcCh0eXBl LCAiaGV4c2VlZCIpID09IDApCi0rICAgICAgICByZXR1cm4ga2RmX2hleDJjdHJsKGN0eCwga2Jr ZGZfY3RybCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVZQX0tERl9DVFJMX1NFVF9L Ql9TRUVELCB2YWx1ZSk7Ci0rCi0rICAgIGlmIChzdHJjbXAodHlwZSwgIm1vZGUiKSA9PSAwKSB7 Ci0rICAgICAgICBpbnQgbW9kZTsKLSsKLSsgICAgICAgIGlmIChzdHJjYXNlY21wKHZhbHVlLCAi Y291bnRlciIpID09IDApIHsKLSsgICAgICAgICAgICBtb2RlID0gRVZQX0tERl9LQl9NT0RFX0NP VU5URVI7Ci0rICAgICAgICB9IGVsc2UgaWYgKHN0cmNhc2VjbXAodmFsdWUsICJmZWVkYmFjayIp ID09IDApIHsKLSsgICAgICAgICAgICBtb2RlID0gRVZQX0tERl9LQl9NT0RFX0ZFRURCQUNLOwot KyAgICAgICAgfSBlbHNlIHsKLSsgICAgICAgICAgICBLREZlcnIoS0RGX0ZfS0JLREZfQ1RSTF9T VFIsIEtERl9SX1ZBTFVFX0VSUk9SKTsKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsgICAgICAg IH0KLSsKLSsgICAgICAgIHJldHVybiBjYWxsX2N0cmwoa2JrZGZfY3RybCwgY3R4LCBFVlBfS0RG X0NUUkxfU0VUX0tCX01PREUsCi0rICAgICAgICAgICAgICAgICAgICAgICAgIG1vZGUpOwotKyAg ICB9Ci0rCi0rICAgIGlmIChzdHJjbXAodHlwZSwgIm1hY190eXBlIikgPT0gMCkgewotKyAgICAg ICAgaW50IG1hY190eXBlOwotKwotKyAgICAgICAgaWYgKHN0cmNhc2VjbXAodmFsdWUsICJobWFj IikgPT0gMCkgewotKyAgICAgICAgICAgIG1hY190eXBlID0gRVZQX0tERl9LQl9NQUNfVFlQRV9I TUFDOwotKyAgICAgICAgfSBlbHNlIGlmIChzdHJjYXNlY21wKHZhbHVlLCAiY21hYyIpID09IDAp IHsKLSsgICAgICAgICAgICBtYWNfdHlwZSA9IEVWUF9LREZfS0JfTUFDX1RZUEVfQ01BQzsKLSsg ICAgICAgIH0gZWxzZSB7Ci0rICAgICAgICAgICAgS0RGZXJyKEtERl9GX0tCS0RGX0NUUkxfU1RS LCBLREZfUl9WQUxVRV9FUlJPUik7Ci0rICAgICAgICAgICAgcmV0dXJuIDA7Ci0rICAgICAgICB9 Ci0rCi0rICAgICAgICByZXR1cm4gY2FsbF9jdHJsKGtia2RmX2N0cmwsIGN0eCwgRVZQX0tERl9D VFJMX1NFVF9LQl9NQUNfVFlQRSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgbWFjX3R5cGUp OwotKyAgICB9Ci0rCi0rICAgIEtERmVycihLREZfRl9LQktERl9DVFJMX1NUUiwgS0RGX1JfVU5L Tk9XTl9QQVJBTUVURVJfVFlQRSk7Ci0rICAgIHJldHVybiAtMjsKLSt9Ci0rCi0rY29uc3QgRVZQ X0tERl9NRVRIT0Qga2Jfa2RmX21ldGggPSB7Ci0rICAgIEVWUF9LREZfS0IsCi0rICAgIGtia2Rm X25ldywKLSsgICAga2JrZGZfZnJlZSwKLSsgICAga2JrZGZfcmVzZXQsCi0rICAgIGtia2RmX2N0 cmwsCi0rICAgIGtia2RmX2N0cmxfc3RyLAotKyAgICBrYmtkZl9zaXplLAotKyAgICBrYmtkZl9k ZXJpdmUsCi0rfTsKLSsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFkL2NyeXB0by9rZGYva2RmX2Vy ci5jLmtyYjUta2RmIG9wZW5zc2wtMS4xLjFkL2NyeXB0by9rZGYva2RmX2Vyci5jCi0tLS0gb3Bl bnNzbC0xLjEuMWQvY3J5cHRvL2tkZi9rZGZfZXJyLmMua3JiNS1rZGYJMjAxOS0xMS0xNCAxNTow NzowNS4zMjAwOTQ1MjEgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xZC9jcnlwdG8va2RmL2tkZl9l cnIuYwkyMDE5LTExLTE0IDE1OjA3OjA1LjM0MzA5NDExMiArMDEwMAotQEAgLTE1LDYgKzE1LDEx IEBACi0gCi0gc3RhdGljIGNvbnN0IEVSUl9TVFJJTkdfREFUQSBLREZfc3RyX2Z1bmN0c1tdID0g ewotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtERl9GX0hLREZfRVhUUkFDVCwgMCksICJI S0RGX0V4dHJhY3QifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCBLREZfRl9LQktERl9D VFJMLCAwKSwgImtia2RmX2N0cmwifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCBLREZf Rl9LQktERl9DVFJMX1NUUiwgMCksICJrYmtkZl9jdHJsX3N0ciJ9LAotKyAgICB7RVJSX1BBQ0so RVJSX0xJQl9LREYsIEtERl9GX0tCS0RGX0RFUklWRSwgMCksICJrYmtkZl9kZXJpdmUifSwKLSsg ICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCBLREZfRl9LQktERl9ORVcsIDApLCAia2JrZGZfbmV3 In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfS0RGX0NJUEhFUjJDVFJMLCAw KSwgImtkZl9jaXBoZXIyY3RybCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtERl9G X0tERl9IS0RGX0RFUklWRSwgMCksICJrZGZfaGtkZl9kZXJpdmUifSwKLSAgICAge0VSUl9QQUNL KEVSUl9MSUJfS0RGLCBLREZfRl9LREZfSEtERl9ORVcsIDApLCAia2RmX2hrZGZfbmV3In0sCi0g ICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfS0RGX0hLREZfU0laRSwgMCksICJrZGZf aGtkZl9zaXplIn0sCi1AQCAtNDEsNiArNDYsOCBAQCBzdGF0aWMgY29uc3QgRVJSX1NUUklOR19E QVRBIEtERl9zdHJfZnVuCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfS0RGX1RM UzFfUFJGX0RFUklWRSwgMCksCi0gICAgICAia2RmX3RsczFfcHJmX2Rlcml2ZSJ9LAotICAgICB7 RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtERl9GX0tERl9UTFMxX1BSRl9ORVcsIDApLCAia2RmX3Rs czFfcHJmX25ldyJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtERl9GX0tSQjVLREYs IDApLCAiS1JCNUtERiJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtERl9GX0tSQjVL REZfREVSSVZFLCAwKSwgImtyYjVrZGZfZGVyaXZlIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElC X0tERiwgS0RGX0ZfUEJLREYyX1NFVF9NRU1CVUYsIDApLCAicGJrZGYyX3NldF9tZW1idWYifSwK LSAgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCBLREZfRl9QS0VZX0hLREZfQ1RSTF9TVFIsIDAp LCAicGtleV9oa2RmX2N0cmxfc3RyIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgS0RG X0ZfUEtFWV9IS0RGX0RFUklWRSwgMCksICJwa2V5X2hrZGZfZGVyaXZlIn0sCi1AQCAtNTksMTIg KzY2LDIyIEBAIHN0YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEgS0RGX3N0cl9mdW4KLSAgICAg ICJwa2V5X3RsczFfcHJmX2Rlcml2ZSJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtE Rl9GX1BLRVlfVExTMV9QUkZfSU5JVCwgMCksICJwa2V5X3RsczFfcHJmX2luaXQifSwKLSAgICAg e0VSUl9QQUNLKEVSUl9MSUJfS0RGLCBLREZfRl9TQ1JZUFRfU0VUX01FTUJVRiwgMCksICJzY3J5 cHRfc2V0X21lbWJ1ZiJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtERl9GX1NTS0RG X0RFUklWRSwgMCksICJzc2tkZl9kZXJpdmUifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RG LCBLREZfRl9TU0tERl9ORVcsIDApLCAic3NrZGZfbmV3In0sCi0rICAgIHtFUlJfUEFDSyhFUlJf TElCX0tERiwgS0RGX0ZfU1NLREZfU0laRSwgMCksICJzc2tkZl9zaXplIn0sCi0gICAgIHtFUlJf UEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfVExTMV9QUkZfQUxHLCAwKSwgInRsczFfcHJmX2FsZyJ9 LAotICAgICB7MCwgTlVMTH0KLSB9OwotIAotIHN0YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEg S0RGX3N0cl9yZWFzb25zW10gPSB7Ci0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgMCwgS0RG X1JfRkFJTEVEX1RPX0dFTkVSQVRFX0tFWSksCi0rICAgICJmYWlsZWQgdG8gZ2VuZXJhdGUga2V5 In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgMCwgS0RGX1JfSU5WQUxJRF9DSVBIRVIp LCAiaW52YWxpZCBjaXBoZXIifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCAwLCBLREZf Ul9JTlZBTElEX0NPTlNUQU5UX0xFTkdUSCksICJpbnZhbGlkIGNvbnN0YW50IGxlbmd0aCJ9LAot ICAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIDAsIEtERl9SX0lOVkFMSURfRElHRVNUKSwgImlu dmFsaWQgZGlnZXN0In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgMCwgS0RGX1JfSU5W QUxJRF9TRUVEX0xFTkdUSCksICJpbnZhbGlkIHNlZWQgbGVuZ3RoIn0sCi0rICAgIHtFUlJfUEFD SyhFUlJfTElCX0tERiwgMCwgS0RGX1JfTUlTU0lOR19DSVBIRVIpLCAibWlzc2luZyBjaXBoZXIi fSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCAwLCBLREZfUl9NSVNTSU5HX0NPTlNUQU5U KSwgIm1pc3NpbmcgY29uc3RhbnQifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCAwLCBL REZfUl9NSVNTSU5HX0lURVJBVElPTl9DT1VOVCksCi0gICAgICJtaXNzaW5nIGl0ZXJhdGlvbiBj b3VudCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIDAsIEtERl9SX01JU1NJTkdfS0VZ KSwgIm1pc3Npbmcga2V5In0sCi1AQCAtODIsNiArOTksOCBAQCBzdGF0aWMgY29uc3QgRVJSX1NU UklOR19EQVRBIEtERl9zdHJfcmVhCi0gICAgICJ1bmtub3duIHBhcmFtZXRlciB0eXBlIn0sCi0g ICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgMCwgS0RGX1JfVkFMVUVfRVJST1IpLCAidmFsdWUg ZXJyb3IifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCAwLCBLREZfUl9WQUxVRV9NSVNT SU5HKSwgInZhbHVlIG1pc3NpbmcifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCAwLCBL REZfUl9XUk9OR19GSU5BTF9CTE9DS19MRU5HVEgpLAotKyAgICAid3JvbmcgZmluYWwgYmxvY2sg bGVuZ3RoIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgMCwgS0RGX1JfV1JPTkdfT1VU UFVUX0JVRkZFUl9TSVpFKSwKLSAgICAgIndyb25nIG91dHB1dCBidWZmZXIgc2l6ZSJ9LAotICAg ICB7MCwgTlVMTH0KLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFkL2NyeXB0by9rZGYva2RmX2xvY2Fs Lmgua3JiNS1rZGYgb3BlbnNzbC0xLjEuMWQvY3J5cHRvL2tkZi9rZGZfbG9jYWwuaAotLS0tIG9w ZW5zc2wtMS4xLjFkL2NyeXB0by9rZGYva2RmX2xvY2FsLmgua3JiNS1rZGYJMjAxOS0xMS0xNCAx NTowNzowNS4zMTMwOTQ2NDYgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xZC9jcnlwdG8va2RmL2tk Zl9sb2NhbC5oCTIwMTktMTEtMTQgMTU6MDc6MDUuMzQ0MDk0MDkzICswMTAwCi1AQCAtMTksNCAr MTksNiBAQCBpbnQga2RmX2hleDJjdHJsKEVWUF9LREZfSU1QTCAqaW1wbCwKLSBpbnQga2RmX21k MmN0cmwoRVZQX0tERl9JTVBMICppbXBsLAotICAgICAgICAgICAgICAgICBpbnQgKCpjdHJsKShF VlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsIHZhX2xpc3QgYXJncyksCi0gICAgICAgICAgICAg ICAgIGludCBjbWQsIGNvbnN0IGNoYXIgKm1kX25hbWUpOwotLQotK2ludCBrZGZfY2lwaGVyMmN0 cmwoRVZQX0tERl9JTVBMICppbXBsLAotKyAgICAgICAgICAgICAgICAgICAgaW50ICgqY3RybCko RVZQX0tERl9JTVBMICppbXBsLCBpbnQgY21kLCB2YV9saXN0IGFyZ3MpLAotKyAgICAgICAgICAg ICAgICAgICAgaW50IGNtZCwgY29uc3QgY2hhciAqY2lwaGVyX25hbWUpOwotZGlmZiAtdXAgb3Bl bnNzbC0xLjEuMWQvY3J5cHRvL2tkZi9rZGZfdXRpbC5jLmtyYjUta2RmIG9wZW5zc2wtMS4xLjFk L2NyeXB0by9rZGYva2RmX3V0aWwuYwotLS0tIG9wZW5zc2wtMS4xLjFkL2NyeXB0by9rZGYva2Rm X3V0aWwuYy5rcmI1LWtkZgkyMDE5LTExLTE0IDE1OjA3OjA1LjMxMzA5NDY0NiArMDEwMAotKysr IG9wZW5zc2wtMS4xLjFkL2NyeXB0by9rZGYva2RmX3V0aWwuYwkyMDE5LTExLTE0IDE1OjA3OjA1 LjM0NDA5NDA5MyArMDEwMAotQEAgLTcxLDMgKzcxLDE2IEBAIGludCBrZGZfbWQyY3RybChFVlBf S0RGX0lNUEwgKmltcGwsCi0gICAgIHJldHVybiBjYWxsX2N0cmwoY3RybCwgaW1wbCwgY21kLCBt ZCk7Ci0gfQotIAotKy8qIFBhc3MgYSBjaXBoZXIgdG8gYSBjdHJsICovCi0raW50IGtkZl9jaXBo ZXIyY3RybChFVlBfS0RGX0lNUEwgKmltcGwsCi0rICAgICAgICAgICAgICAgICAgICBpbnQgKCpj dHJsKShFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsIHZhX2xpc3QgYXJncyksCi0rICAgICAg ICAgICAgICAgICAgICBpbnQgY21kLCBjb25zdCBjaGFyICpjaXBoZXJfbmFtZSkKLSt7Ci0rICAg IGNvbnN0IEVWUF9DSVBIRVIgKmNpcGhlcjsKLSsKLSsgICAgaWYgKGNpcGhlcl9uYW1lID09IE5V TEwgfHwgKGNpcGhlciA9IEVWUF9nZXRfY2lwaGVyYnluYW1lKGNpcGhlcl9uYW1lKSkgPT0gTlVM TCkgewotKyAgICAgICAgS0RGZXJyKEtERl9GX0tERl9DSVBIRVIyQ1RSTCwgS0RGX1JfSU5WQUxJ RF9DSVBIRVIpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsgICAgcmV0dXJuIGNhbGxf Y3RybChjdHJsLCBpbXBsLCBjbWQsIGNpcGhlcik7Ci0rfQotZGlmZiAtdXAgb3BlbnNzbC0xLjEu MWQvY3J5cHRvL2tkZi9rcmI1a2RmLmMua3JiNS1rZGYgb3BlbnNzbC0xLjEuMWQvY3J5cHRvL2tk Zi9rcmI1a2RmLmMKLS0tLSBvcGVuc3NsLTEuMS4xZC9jcnlwdG8va2RmL2tyYjVrZGYuYy5rcmI1 LWtkZgkyMDE5LTExLTE0IDE1OjA3OjA1LjM0NDA5NDA5MyArMDEwMAotKysrIG9wZW5zc2wtMS4x LjFkL2NyeXB0by9rZGYva3JiNWtkZi5jCTIwMTktMTEtMTggMTc6MTg6MTMuMDU2NjA0NDA0ICsw MTAwCi1AQCAtMCwwICsxLDQyMyBAQAotKy8qCi0rICogQ29weXJpZ2h0IDIwMTgtMjAxOSBUaGUg T3BlblNTTCBQcm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCi0rICoKLSsgKiBM aWNlbnNlZCB1bmRlciB0aGUgT3BlblNTTCBsaWNlbnNlICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBt YXkgbm90IHVzZQotKyAqIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBM aWNlbnNlLiAgWW91IGNhbiBvYnRhaW4gYSBjb3B5Ci0rICogaW4gdGhlIGZpbGUgTElDRU5TRSBp biB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBvciBhdAotKyAqIGh0dHBzOi8vd3d3Lm9wZW5zc2wu b3JnL3NvdXJjZS9saWNlbnNlLmh0bWwKLSsgKi8KLSsKLSsjaW5jbHVkZSA8c3RkbGliLmg+Ci0r I2luY2x1ZGUgPHN0ZGFyZy5oPgotKyNpbmNsdWRlIDxzdHJpbmcuaD4KLSsKLSsjaW5jbHVkZSA8 b3BlbnNzbC9kZXMuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLSsjaW5jbHVkZSA8b3Bl bnNzbC9rZGYuaD4KLSsKLSsjaW5jbHVkZSAiaW50ZXJuYWwvY3J5cHRsaWIuaCIKLSsjaW5jbHVk ZSAiY3J5cHRvL2V2cC5oIgotKyNpbmNsdWRlICJrZGZfbG9jYWwuaCIKLSsKLSsvKiBLUkI1IEtE RiBkZWZpbmVkIGluIFJGQyAzOTYxLCBTZWN0aW9uIDUuMSAqLwotKwotK3N0YXRpYyBpbnQgS1JC NUtERihjb25zdCBFVlBfQ0lQSEVSICpjaXBoZXIsCi0rICAgICAgICAgICAgICAgICAgIGNvbnN0 IHVuc2lnbmVkIGNoYXIgKmtleSwgc2l6ZV90IGtleV9sZW4sCi0rICAgICAgICAgICAgICAgICAg IGNvbnN0IHVuc2lnbmVkIGNoYXIgKmNvbnN0YW50LCBzaXplX3QgY29uc3RhbnRfbGVuLAotKyAg ICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpva2V5LCBzaXplX3Qgb2tleV9sZW4pOwot KwotK3N0cnVjdCBldnBfa2RmX2ltcGxfc3QgewotKyAgICBjb25zdCBFVlBfQ0lQSEVSICpjaXBo ZXI7Ci0rICAgIHVuc2lnbmVkIGNoYXIgKmtleTsKLSsgICAgc2l6ZV90IGtleV9sZW47Ci0rICAg IHVuc2lnbmVkIGNoYXIgKmNvbnN0YW50OwotKyAgICBzaXplX3QgY29uc3RhbnRfbGVuOwotK307 Ci0rCi0rc3RhdGljIHZvaWQga3JiNWtkZl9yZXNldChFVlBfS0RGX0lNUEwgKmN0eCk7Ci0rCi0r c3RhdGljIEVWUF9LREZfSU1QTCAqa3JiNWtkZl9uZXcodm9pZCkKLSt7Ci0rICAgIEVWUF9LREZf SU1QTCAqY3R4OwotKwotKyAgICBpZiAoKGN0eCA9IE9QRU5TU0xfemFsbG9jKHNpemVvZigqY3R4 KSkpID09IE5VTEwpCi0rICAgICAgICBLREZlcnIoS0RGX0ZfS0JLREZfTkVXLCBFUlJfUl9NQUxM T0NfRkFJTFVSRSk7Ci0rICAgIHJldHVybiBjdHg7Ci0rfQotKwotK3N0YXRpYyB2b2lkIGtyYjVr ZGZfZnJlZShFVlBfS0RGX0lNUEwgKmN0eCkKLSt7Ci0rICAgIGtyYjVrZGZfcmVzZXQoY3R4KTsK LSsgICAgT1BFTlNTTF9mcmVlKGN0eCk7Ci0rfQotKwotK3N0YXRpYyB2b2lkIGtyYjVrZGZfcmVz ZXQoRVZQX0tERl9JTVBMICpjdHgpCi0rewotKyAgICBPUEVOU1NMX2NsZWFyX2ZyZWUoY3R4LT5r ZXksIGN0eC0+a2V5X2xlbik7Ci0rICAgIE9QRU5TU0xfY2xlYXJfZnJlZShjdHgtPmNvbnN0YW50 LCBjdHgtPmNvbnN0YW50X2xlbik7Ci0rICAgIG1lbXNldChjdHgsIDAsIHNpemVvZigqY3R4KSk7 Ci0rfQotKwotK3N0YXRpYyBpbnQga3JiNWtkZl9kZXJpdmUoRVZQX0tERl9JTVBMICpjdHgsIHVu c2lnbmVkIGNoYXIgKmtleSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3Qg a2V5bGVuKQotK3sKLSsgICAgaWYgKGN0eC0+Y2lwaGVyID09IE5VTEwpIHsKLSsgICAgICAgIEtE RmVycihLREZfRl9LUkI1S0RGX0RFUklWRSwgS0RGX1JfTUlTU0lOR19DSVBIRVIpOwotKyAgICAg ICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsgICAgaWYgKGN0eC0+a2V5ID09IE5VTEwpIHsKLSsgICAg ICAgIEtERmVycihLREZfRl9LUkI1S0RGX0RFUklWRSwgS0RGX1JfTUlTU0lOR19LRVkpOwotKyAg ICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsgICAgaWYgKGN0eC0+Y29uc3RhbnQgPT0gTlVMTCkg ewotKyAgICAgICAgS0RGZXJyKEtERl9GX0tSQjVLREZfREVSSVZFLCBLREZfUl9NSVNTSU5HX0NP TlNUQU5UKTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rICAgIHJldHVybiBLUkI1S0RG KGN0eC0+Y2lwaGVyLCBjdHgtPmtleSwgY3R4LT5rZXlfbGVuLAotKyAgICAgICAgICAgICAgICAg ICBjdHgtPmNvbnN0YW50LCBjdHgtPmNvbnN0YW50X2xlbiwKLSsgICAgICAgICAgICAgICAgICAg a2V5LCBrZXlsZW4pOwotK30KLSsKLStzdGF0aWMgc2l6ZV90IGtyYjVrZGZfc2l6ZShFVlBfS0RG X0lNUEwgKmN0eCkKLSt7Ci0rICAgIGlmIChjdHgtPmNpcGhlciAhPSBOVUxMKQotKyAgICAgICAg cmV0dXJuIEVWUF9DSVBIRVJfa2V5X2xlbmd0aChjdHgtPmNpcGhlcik7Ci0rICAgIGVsc2UKLSsg ICAgICAgIHJldHVybiBFVlBfTUFYX0tFWV9MRU5HVEg7Ci0rfQotKwotKwotK3N0YXRpYyBpbnQg a3JiNWtkZl9wYXJzZV9idWZmZXJfYXJnKHVuc2lnbmVkIGNoYXIgKipkc3QsIHNpemVfdCAqZHN0 X2xlbiwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YV9saXN0IGFy Z3MpCi0rewotKyAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpwOwotKyAgICBzaXplX3QgbGVuOwot KwotKyAgICBwID0gdmFfYXJnKGFyZ3MsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKik7Ci0rICAgIGxl biA9IHZhX2FyZyhhcmdzLCBzaXplX3QpOwotKyAgICBPUEVOU1NMX2NsZWFyX2ZyZWUoKmRzdCwg KmRzdF9sZW4pOwotKyAgICBpZiAobGVuID09IDApIHsKLSsgICAgICAgICpkc3QgPSBOVUxMOwot KyAgICAgICAgKmRzdF9sZW4gPSAwOwotKyAgICAgICAgcmV0dXJuIDE7Ci0rICAgIH0KLSsKLSsg ICAgKmRzdCA9IE9QRU5TU0xfbWVtZHVwKHAsIGxlbik7Ci0rICAgIGlmICgqZHN0ID09IE5VTEwp Ci0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgKmRzdF9sZW4gPSBsZW47Ci0rICAgIHJldHVy biAxOwotK30KLSsKLStzdGF0aWMgaW50IGtyYjVrZGZfY3RybChFVlBfS0RGX0lNUEwgKmN0eCwg aW50IGNtZCwgdmFfbGlzdCBhcmdzKQotK3sKLSsgICAgc3dpdGNoIChjbWQpIHsKLSsgICAgY2Fz ZSBFVlBfS0RGX0NUUkxfU0VUX0NJUEhFUjoKLSsgICAgICAgIGN0eC0+Y2lwaGVyID0gdmFfYXJn KGFyZ3MsIGNvbnN0IEVWUF9DSVBIRVIgKik7Ci0rICAgICAgICBpZiAoY3R4LT5jaXBoZXIgPT0g TlVMTCkKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgICAgIHJldHVybiAxOwotKwot KyAgICBjYXNlIEVWUF9LREZfQ1RSTF9TRVRfS0VZOgotKyAgICAgICAgcmV0dXJuIGtyYjVrZGZf cGFyc2VfYnVmZmVyX2FyZygmY3R4LT5rZXksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAmY3R4LT5rZXlfbGVuLCBhcmdzKTsKLSsKLSsgICAgY2FzZSBFVlBfS0RGX0NU UkxfU0VUX0tSQjVLREZfQ09OU1RBTlQ6Ci0rICAgICAgICByZXR1cm4ga3JiNWtkZl9wYXJzZV9i dWZmZXJfYXJnKCZjdHgtPmNvbnN0YW50LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAmY3R4LT5jb25zdGFudF9sZW4sIGFyZ3MpOwotKyAgICBkZWZhdWx0Ogot KyAgICAgICAgcmV0dXJuIC0yOwotKwotKyAgICB9Ci0rfQotKwotK3N0YXRpYyBpbnQga3JiNWtk Zl9jdHJsX3N0cihFVlBfS0RGX0lNUEwgKmN0eCwgY29uc3QgY2hhciAqdHlwZSwKLSsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAqdmFsdWUpCi0rewotKyAgICBpZiAo dmFsdWUgPT0gTlVMTCkgewotKyAgICAgICAgS0RGZXJyKEtERl9GX0tERl9TU0hLREZfQ1RSTF9T VFIsIEtERl9SX1ZBTFVFX01JU1NJTkcpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsK LSsgICAgaWYgKHN0cmNtcCh0eXBlLCAiY2lwaGVyIikgPT0gMCkKLSsgICAgICAgIHJldHVybiBr ZGZfY2lwaGVyMmN0cmwoY3R4LCBrcmI1a2RmX2N0cmwsIEVWUF9LREZfQ1RSTF9TRVRfQ0lQSEVS LCB2YWx1ZSk7Ci0rCi0rICAgIGlmIChzdHJjbXAodHlwZSwgImtleSIpID09IDApCi0rICAgICAg ICByZXR1cm4ga2RmX3N0cjJjdHJsKGN0eCwga3JiNWtkZl9jdHJsLAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICBFVlBfS0RGX0NUUkxfU0VUX0tFWSwgdmFsdWUpOwotKwotKyAgICBpZiAo c3RyY21wKHR5cGUsICJoZXhrZXkiKSA9PSAwKQotKyAgICAgICAgcmV0dXJuIGtkZl9oZXgyY3Ry bChjdHgsIGtyYjVrZGZfY3RybCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVZQX0tE Rl9DVFJMX1NFVF9LRVksIHZhbHVlKTsKLSsKLSsgICAgaWYgKHN0cmNtcCh0eXBlLCAiY29uc3Rh bnQiKSA9PSAwKQotKyAgICAgICAgcmV0dXJuIGtkZl9zdHIyY3RybChjdHgsIGtyYjVrZGZfY3Ry bCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVZQX0tERl9DVFJMX1NFVF9LUkI1S0RG X0NPTlNUQU5ULCB2YWx1ZSk7Ci0rCi0rICAgIGlmIChzdHJjbXAodHlwZSwgImhleGNvbnN0YW50 IikgPT0gMCkKLSsgICAgICAgIHJldHVybiBrZGZfaGV4MmN0cmwoY3R4LCBrcmI1a2RmX2N0cmws Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVWUF9LREZfQ1RSTF9TRVRfS1JCNUtERl9D T05TVEFOVCwgdmFsdWUpOwotKwotKyAgICBLREZlcnIoS0RGX0ZfS0JLREZfQ1RSTF9TVFIsIEtE Rl9SX1VOS05PV05fUEFSQU1FVEVSX1RZUEUpOwotKyAgICByZXR1cm4gLTI7Ci0rfQotKwotKwot KyNpZm5kZWYgT1BFTlNTTF9OT19ERVMKLSsvKgotKyAqIERFUzMgaXMgYSBzcGVjaWFsIGNhc2Us IGl0IHJlcXVpcmVzIGEgcmFuZG9tLXRvLWtleSBmdW5jdGlvbiBhbmQgaXRzCi0rICogaW5wdXQg dHJ1bmNhdGVkIHRvIDIxIGJ5dGVzIG9mIHRoZSAyNCBwcm9kdWNlZCBieSB0aGUgY2lwaGVyLgot KyAqIFNlZSBSRkMzOTYxIDYuMy4xCi0rICovCi0rc3RhdGljIGludCBmaXh1cF9kZXMzX2tleSh1 bnNpZ25lZCBjaGFyICprZXkpCi0rewotKyAgICB1bnNpZ25lZCBjaGFyICpjYmxvY2s7Ci0rICAg IGludCBpLCBqOwotKwotKyAgICBmb3IgKGkgPSAyOyBpID49IDA7IGktLSkgewotKyAgICAgICAg Y2Jsb2NrID0gJmtleVtpICogOF07Ci0rICAgICAgICBtZW1tb3ZlKGNibG9jaywgJmtleVtpICog N10sIDcpOwotKyAgICAgICAgY2Jsb2NrWzddID0gMDsKLSsgICAgICAgIGZvciAoaiA9IDA7IGog PCA3OyBqKyspCi0rICAgICAgICAgICAgY2Jsb2NrWzddIHw9IChjYmxvY2tbal0gJiAxKSA8PCAo aiArIDEpOwotKyAgICAgICAgREVTX3NldF9vZGRfcGFyaXR5KChERVNfY2Jsb2NrICopY2Jsb2Nr KTsKLSsgICAgfQotKwotKyAgICAvKiBmYWlsIGlmIGtleXMgYXJlIHN1Y2ggdGhhdCB0cmlwbGUg ZGVzIGRlZ3JhZGVzIHRvIHNpbmdsZSBkZXMgKi8KLSsgICAgaWYgKENSWVBUT19tZW1jbXAoJmtl eVswXSwgJmtleVs4XSwgOCkgPT0gMCB8fAotKyAgICAgICAgQ1JZUFRPX21lbWNtcCgma2V5Wzhd LCAma2V5WzE2XSwgOCkgPT0gMCkgewotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsKLSsg ICAgcmV0dXJuIDE7Ci0rfQotKyNlbmRpZgotKwotKy8qCi0rICogTi1mb2xkKEspIHdoZXJlIGJs b2Nrc2l6ZSBpcyBOLCBhbmQgY29uc3RhbnRfbGVuIGlzIEsKLSsgKiBOb3RlOiBIZXJlIHw9IGRl bm90ZXMgY29uY2F0ZW5hdGlvbgotKyAqCi0rICogTCA9IGxjbShOLEspCi0rICogUiA9IEwvSwot KyAqCi0rICogZm9yIHI6IDEgLT4gUgotKyAqICAgcyB8PSBjb25zdGFudCByb3QgMTMqKHItMSkp Ci0rICoKLSsgKiBibG9jayA9IDAKLSsgKiBmb3IgazogMSAtPiBLCi0rICogICBibG9jayArPSBz W04oay0xKS4uKE4tMSlrXSAob25lJ3MgY29tcGxlbWVudCBhZGRpdGlvbikKLSsgKgotKyAqIE9w dGltaXppbmcgZm9yIHNwYWNlIHdlIGNvbXB1dGU6Ci0rICogZm9yIGVhY2ggbCBpbiBMLTEgLT4g MDoKLSsgKiAgIHNbbF0gPSAoY29uc3RhbnQgcm90IDEzKihsL0spKVtsJWtdCi0rICogICBibG9j a1tsICUgTl0gKz0gc1tsXSAod2l0aCBjYXJyeSkKLSsgKiBmaW5hbGx5IGFkZCBjYXJyeSBpZiBh bnkKLSsgKi8KLStzdGF0aWMgdm9pZCBuX2ZvbGQodW5zaWduZWQgY2hhciAqYmxvY2ssIHVuc2ln bmVkIGludCBibG9ja3NpemUsCi0rICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNo YXIgKmNvbnN0YW50LCBzaXplX3QgY29uc3RhbnRfbGVuKQotK3sKLSsgICAgdW5zaWduZWQgaW50 IHRtcCwgZ2NkLCByZW1haW5kZXIsIGxjbSwgY2Fycnk7Ci0rICAgIGludCBiLCBsOwotKwotKyAg ICBpZiAoY29uc3RhbnRfbGVuID09IGJsb2Nrc2l6ZSkgewotKyAgICAgICAgbWVtY3B5KGJsb2Nr LCBjb25zdGFudCwgY29uc3RhbnRfbGVuKTsKLSsgICAgICAgIHJldHVybjsKLSsgICAgfQotKwot KyAgICAvKiBMZWFzdCBDb21tb24gTXVsdGlwbGUgb2YgbGVuZ3RoczogTENNKGEsYikqLwotKyAg ICBnY2QgPSBibG9ja3NpemU7Ci0rICAgIHJlbWFpbmRlciA9IGNvbnN0YW50X2xlbjsKLSsgICAg LyogQ2FsY3VsYXRlIEdyZWF0IENvbW1vbiBEaXZpc29yIGZpcnN0IEdDRChhLGIpICovCi0rICAg IHdoaWxlIChyZW1haW5kZXIgIT0gMCkgewotKyAgICAgICAgdG1wID0gZ2NkICUgcmVtYWluZGVy OwotKyAgICAgICAgZ2NkID0gcmVtYWluZGVyOwotKyAgICAgICAgcmVtYWluZGVyID0gdG1wOwot KyAgICB9Ci0rICAgIC8qIHJlc3VsdGluZyBhIGlzIHRoZSBHQ0QsIExDTShhLGIpID0gfGEqYnwv R0NEKGEsYikgKi8KLSsgICAgbGNtID0gYmxvY2tzaXplICogY29uc3RhbnRfbGVuIC8gZ2NkOwot KwotKyAgICAvKiBub3cgc3ByZWFkIG91dCB0aGUgYml0cyAqLwotKyAgICBtZW1zZXQoYmxvY2ss IDAsIGJsb2Nrc2l6ZSk7Ci0rCi0rICAgIC8qIGxhc3QgdG8gZmlyc3QgdG8gYmUgYWJsZSB0byBi cmluZyBjYXJyeSBmb3J3YXJkICovCi0rICAgIGNhcnJ5ID0gMDsKLSsgICAgZm9yIChsID0gbGNt IC0gMTsgbCA+PSAwOyBsLS0pIHsKLSsgICAgICAgIHVuc2lnbmVkIGludCByb3RiaXRzLCByc2hp ZnQsIHJieXRlOwotKwotKyAgICAgICAgLyogZGVzdGluYXRpb24gYnl0ZSBpbiBibG9jayBpcyBs ICUgTiAqLwotKyAgICAgICAgYiA9IGwgJSBibG9ja3NpemU7Ci0rICAgICAgICAvKiBPdXIgdmly dHVhbCBzIGJ1ZmZlciBpcyBSID0gTC9LIGxvbmcgKEsgPSBjb25zdGFudF9sZW4pICovCi0rICAg ICAgICAvKiBTbyB3ZSByb3RhdGUgYmFja3dhcmRzIGZyb20gUi0xIHRvIDAgKG5vbmUpIHJvdGF0 aW9ucyAqLwotKyAgICAgICAgcm90Yml0cyA9IDEzICogKGwgLyBjb25zdGFudF9sZW4pOwotKyAg ICAgICAgLyogZmluZCB0aGUgYnl0ZSBvbiBzIHdoZXJlIHJvdGJpdHMgZmFsbHMgb250byAqLwot KyAgICAgICAgcmJ5dGUgPSBsIC0gKHJvdGJpdHMgLyA4KTsKLSsgICAgICAgIC8qIGNhbGN1bGF0 ZSBob3cgbXVjaCBzaGlmdCBvbiB0aGF0IGJ5dGUgKi8KLSsgICAgICAgIHJzaGlmdCA9IHJvdGJp dHMgJiAweDA3OwotKyAgICAgICAgLyogcmJ5dGUgJSBjb25zdGFudF9sZW4gZ2l2ZXMgdXMgdGhl IHVucm90YXRlZCBieXRlIGluIHRoZQotKyAgICAgICAgICogY29uc3RhbnQgYnVmZmVyLCBnZXQg YWxzbyB0aGUgcHJldmlvdXMgYnl0ZSB0aGVuCi0rICAgICAgICAgKiBhcHByb3ByaWF0ZWx5IHNo aWZ0IHRoZW0gdG8gZ2V0IHRoZSByb3RhdGVkIGJ5dGUgd2UgbmVlZCAqLwotKyAgICAgICAgdG1w ID0gKGNvbnN0YW50WyhyYnl0ZS0xKSAlIGNvbnN0YW50X2xlbl0gPDwgKDggLSByc2hpZnQpCi0r ICAgICAgICAgICAgICAgfCBjb25zdGFudFtyYnl0ZSAlIGNvbnN0YW50X2xlbl0gPj4gcnNoaWZ0 KQotKyAgICAgICAgICAgICAgJiAweGZmOwotKyAgICAgICAgLyogYWRkIHdpdGggY2FycnkgdG8g YW55IHZhbHVlIHBsYWNlZCBieSBwcmV2aW91cyBwYXNzZXMgKi8KLSsgICAgICAgIHRtcCArPSBj YXJyeSArIGJsb2NrW2JdOwotKyAgICAgICAgYmxvY2tbYl0gPSB0bXAgJiAweGZmOwotKyAgICAg ICAgLyogc2F2ZSBhbnkgY2FycnkgdGhhdCBtYXkgYmUgbGVmdCAqLwotKyAgICAgICAgY2Fycnkg PSB0bXAgPj4gODsKLSsgICAgfQotKwotKyAgICAvKiBpZiBhbnkgY2FycnkgaXMgbGVmdCBhdCB0 aGUgZW5kLCBhZGQgaXQgdGhyb3VnaCB0aGUgbnVtYmVyICovCi0rICAgIGZvciAoYiA9IGJsb2Nr c2l6ZSAtIDE7IGIgPj0gMCAmJiBjYXJyeSAhPSAwOyBiLS0pIHsKLSsgICAgICAgIGNhcnJ5ICs9 IGJsb2NrW2JdOwotKyAgICAgICAgYmxvY2tbYl0gPSBjYXJyeSAmIDB4ZmY7Ci0rICAgICAgICBj YXJyeSA+Pj0gODsKLSsgICAgfQotK30KLSsKLStzdGF0aWMgaW50IGNpcGhlcl9pbml0KEVWUF9D SVBIRVJfQ1RYICpjdHgsCi0rICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBFVlBfQ0lQSEVS ICpjaXBoZXIsCi0rICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpr ZXksIHNpemVfdCBrZXlfbGVuKQotK3sKLSsgICAgaW50IGtsZW4sIHJldDsKLSsKLSsgICAgcmV0 ID0gRVZQX0VuY3J5cHRJbml0X2V4KGN0eCwgY2lwaGVyLCBOVUxMLCBrZXksIE5VTEwpOwotKyAg ICBpZiAoIXJldCkKLSsgICAgICAgIGdvdG8gb3V0OwotKyAgICAvKiBzZXQgdGhlIGtleSBsZW4g Zm9yIHRoZSBvZGQgdmFyaWFibGUga2V5IGxlbiBjaXBoZXIgKi8KLSsgICAga2xlbiA9IEVWUF9D SVBIRVJfQ1RYX2tleV9sZW5ndGgoY3R4KTsKLSsgICAgaWYgKGtleV9sZW4gIT0gKHNpemVfdClr bGVuKSB7Ci0rICAgICAgICByZXQgPSBFVlBfQ0lQSEVSX0NUWF9zZXRfa2V5X2xlbmd0aChjdHgs IGtleV9sZW4pOwotKyAgICAgICAgaWYgKCFyZXQpCi0rICAgICAgICAgICAgZ290byBvdXQ7Ci0r ICAgIH0KLSsgICAgLyogd2UgbmV2ZXIgd2FudCBwYWRkaW5nLCBlaXRoZXIgdGhlIGxlbmd0aCBy ZXF1ZXN0ZWQgaXMgYSBtdWx0aXBsZSBvZgotKyAgICAgKiB0aGUgY2lwaGVyIGJsb2NrIHNpemUg b3Igd2UgYXJlIHBhc3NlZCBhIGNpcGhlciB0aGF0IGNhbiBjb3BlIHdpdGgKLSsgICAgICogcGFy dGlhbCBibG9ja3MgdmlhIHRlY2huaXF1ZXMgbGlrZSBjaXBoZXIgdGV4dCBzdGVhbGluZyAqLwot KyAgICByZXQgPSBFVlBfQ0lQSEVSX0NUWF9zZXRfcGFkZGluZyhjdHgsIDApOwotKyAgICBpZiAo IXJldCkKLSsgICAgICAgIGdvdG8gb3V0OwotKwotK291dDoKLSsgICAgcmV0dXJuIHJldDsKLSt9 Ci0rCi0rc3RhdGljIGludCBLUkI1S0RGKGNvbnN0IEVWUF9DSVBIRVIgKmNpcGhlciwKLSsgICAg ICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqa2V5LCBzaXplX3Qga2V5X2xlbiwK LSsgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqY29uc3RhbnQsIHNpemVf dCBjb25zdGFudF9sZW4sCi0rICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKm9rZXks IHNpemVfdCBva2V5X2xlbikKLSt7Ci0rICAgIEVWUF9DSVBIRVJfQ1RYICpjdHggPSBOVUxMOwot KyAgICB1bnNpZ25lZCBjaGFyIGJsb2NrW0VWUF9NQVhfQkxPQ0tfTEVOR1RIICogMl07Ci0rICAg IHVuc2lnbmVkIGNoYXIgKnBsYWluYmxvY2ssICpjaXBoZXJibG9jazsKLSsgICAgc2l6ZV90IGJs b2Nrc2l6ZTsKLSsgICAgc2l6ZV90IGNpcGhlcmxlbjsKLSsgICAgc2l6ZV90IG9zaXplOwotKyAg ICBpbnQgZGVzM19ub19maXh1cCA9IDA7Ci0rICAgIGludCByZXQ7Ci0rCi0rICAgIGlmIChrZXlf bGVuICE9IG9rZXlfbGVuKSB7Ci0rICAgICAgICAvKiBzcGVjaWFsIGNhc2UgZm9yIDNkZXMsIHdo ZXJlIHRoZSBjYWxsZXIgbWF5IGJlIHJlcXVlc3RpbmcKLSsgICAgICAgICAqIHRoZSByYW5kb20g cmF3IGtleSwgaW5zdGVhZCBvZiB0aGUgZml4ZWQgdXAga2V5ICAqLwotKyAgICAgICAgaWYgKEVW UF9DSVBIRVJfbmlkKGNpcGhlcikgPT0gTklEX2Rlc19lZGUzX2NiYyAmJgotKyAgICAgICAgICAg IGtleV9sZW4gPT0gMjQgJiYgb2tleV9sZW4gPT0gMjEpIHsKLSsgICAgICAgICAgICAgICAgZGVz M19ub19maXh1cCA9IDE7Ci0rICAgICAgICB9IGVsc2UgewotKyAgICAgICAgICAgIEtERmVycihL REZfRl9LUkI1S0RGLCBLREZfUl9XUk9OR19PVVRQVVRfQlVGRkVSX1NJWkUpOwotKyAgICAgICAg ICAgIHJldHVybiAwOwotKyAgICAgICAgfQotKyAgICB9Ci0rCi0rICAgIGN0eCA9IEVWUF9DSVBI RVJfQ1RYX25ldygpOwotKyAgICBpZiAoY3R4ID09IE5VTEwpCi0rICAgICAgICByZXR1cm4gMDsK LSsKLSsgICAgcmV0ID0gY2lwaGVyX2luaXQoY3R4LCBjaXBoZXIsIGtleSwga2V5X2xlbik7Ci0r ICAgIGlmICghcmV0KQotKyAgICAgICAgZ290byBvdXQ7Ci0rCi0rICAgIC8qIEluaXRpYWxpemUg aW5wdXQgYmxvY2sgKi8KLSsgICAgYmxvY2tzaXplID0gRVZQX0NJUEhFUl9DVFhfYmxvY2tfc2l6 ZShjdHgpOwotKwotKyAgICBpZiAoY29uc3RhbnRfbGVuID09IDAgfHwgY29uc3RhbnRfbGVuID4g YmxvY2tzaXplKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfS1JCNUtERiwgS0RGX1JfSU5WQUxJ RF9DT05TVEFOVF9MRU5HVEgpOwotKyAgICAgICAgcmV0ID0gMDsKLSsgICAgICAgIGdvdG8gb3V0 OwotKyAgICB9Ci0rCi0rICAgIG5fZm9sZChibG9jaywgYmxvY2tzaXplLCBjb25zdGFudCwgY29u c3RhbnRfbGVuKTsKLSsgICAgcGxhaW5ibG9jayA9IGJsb2NrOwotKyAgICBjaXBoZXJibG9jayA9 IGJsb2NrICsgRVZQX01BWF9CTE9DS19MRU5HVEg7Ci0rCi0rICAgIGZvciAob3NpemUgPSAwOyBv c2l6ZSA8IG9rZXlfbGVuOyBvc2l6ZSArPSBjaXBoZXJsZW4pIHsKLSsgICAgICAgIGludCBvbGVu OwotKwotKyAgICAgICAgcmV0ID0gRVZQX0VuY3J5cHRVcGRhdGUoY3R4LCBjaXBoZXJibG9jaywg Jm9sZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwbGFpbmJsb2NrLCBibG9j a3NpemUpOwotKyAgICAgICAgaWYgKCFyZXQpCi0rICAgICAgICAgICAgZ290byBvdXQ7Ci0rICAg ICAgICBjaXBoZXJsZW4gPSBvbGVuOwotKyAgICAgICAgcmV0ID0gRVZQX0VuY3J5cHRGaW5hbF9l eChjdHgsIGNpcGhlcmJsb2NrLCAmb2xlbik7Ci0rICAgICAgICBpZiAoIXJldCkKLSsgICAgICAg ICAgICBnb3RvIG91dDsKLSsgICAgICAgIGlmIChvbGVuICE9IDApIHsKLSsgICAgICAgICAgICBL REZlcnIoS0RGX0ZfS1JCNUtERiwgS0RGX1JfV1JPTkdfRklOQUxfQkxPQ0tfTEVOR1RIKTsKLSsg ICAgICAgICAgICByZXQgPSAwOwotKyAgICAgICAgICAgIGdvdG8gb3V0OwotKyAgICAgICAgfQot KwotKyAgICAgICAgLyogd3JpdGUgY2lwaGVyYmxvY2sgb3V0ICovCi0rICAgICAgICBpZiAoY2lw aGVybGVuID4gb2tleV9sZW4gLSBvc2l6ZSkKLSsgICAgICAgICAgICBjaXBoZXJsZW4gPSBva2V5 X2xlbiAtIG9zaXplOwotKyAgICAgICAgbWVtY3B5KG9rZXkgKyBvc2l6ZSwgY2lwaGVyYmxvY2ss IGNpcGhlcmxlbik7Ci0rCi0rICAgICAgICBpZiAob2tleV9sZW4gPiBvc2l6ZSArIGNpcGhlcmxl bikgewotKyAgICAgICAgICAgIC8qIHdlIG5lZWQgdG8gcmVpbml0aWFsaXplIGNpcGhlciBjb250 ZXh0IHBlciBzcGVjICovCi0rICAgICAgICAgICAgcmV0ID0gRVZQX0NJUEhFUl9DVFhfcmVzZXQo Y3R4KTsKLSsgICAgICAgICAgICBpZiAoIXJldCkKLSsgICAgICAgICAgICAgICAgZ290byBvdXQ7 Ci0rICAgICAgICAgICAgcmV0ID0gY2lwaGVyX2luaXQoY3R4LCBjaXBoZXIsIGtleSwga2V5X2xl bik7Ci0rICAgICAgICAgICAgaWYgKCFyZXQpCi0rICAgICAgICAgICAgICAgIGdvdG8gb3V0Owot KwotKyAgICAgICAgICAgIC8qIGFsc28gc3dhcCBibG9jayBvZmZzZXRzIHNvIGxhc3QgY2lwaGVy dGV4dCBiZWNvbWVzIG5ldwotKyAgICAgICAgICAgICAqIHBsYWludGV4dCAqLwotKyAgICAgICAg ICAgIHBsYWluYmxvY2sgPSBjaXBoZXJibG9jazsKLSsgICAgICAgICAgICBpZiAoY2lwaGVyYmxv Y2sgPT0gYmxvY2spIHsKLSsgICAgICAgICAgICAgICAgY2lwaGVyYmxvY2sgKz0gRVZQX01BWF9C TE9DS19MRU5HVEg7Ci0rICAgICAgICAgICAgfSBlbHNlIHsKLSsgICAgICAgICAgICAgICAgY2lw aGVyYmxvY2sgPSBibG9jazsKLSsgICAgICAgICAgICB9Ci0rICAgICAgICB9Ci0rICAgIH0KLSsK LSsjaWZuZGVmIE9QRU5TU0xfTk9fREVTCi0rICAgIGlmIChFVlBfQ0lQSEVSX25pZChjaXBoZXIp ID09IE5JRF9kZXNfZWRlM19jYmMgJiYgIWRlczNfbm9fZml4dXApIHsKLSsgICAgICAgIHJldCA9 IGZpeHVwX2RlczNfa2V5KG9rZXkpOwotKyAgICAgICAgaWYgKCFyZXQpIHsKLSsgICAgICAgICAg ICBLREZlcnIoS0RGX0ZfS1JCNUtERiwgS0RGX1JfRkFJTEVEX1RPX0dFTkVSQVRFX0tFWSk7Ci0r ICAgICAgICAgICAgZ290byBvdXQ7Ci0rICAgICAgICB9Ci0rICAgIH0KLSsjZW5kaWYKLSsKLSsg ICAgcmV0ID0gMTsKLSsKLStvdXQ6Ci0rICAgIEVWUF9DSVBIRVJfQ1RYX2ZyZWUoY3R4KTsKLSsg ICAgT1BFTlNTTF9jbGVhbnNlKGJsb2NrLCBFVlBfTUFYX0JMT0NLX0xFTkdUSCAqIDIpOwotKyAg ICByZXR1cm4gcmV0OwotK30KLSsKLStjb25zdCBFVlBfS0RGX01FVEhPRCBrcmI1a2RmX2tkZl9t ZXRoID0gewotKyAgICBFVlBfS0RGX0tSQjVLREYsCi0rICAgIGtyYjVrZGZfbmV3LAotKyAgICBr cmI1a2RmX2ZyZWUsCi0rICAgIGtyYjVrZGZfcmVzZXQsCi0rICAgIGtyYjVrZGZfY3RybCwKLSsg ICAga3JiNWtkZl9jdHJsX3N0ciwKLSsgICAga3JiNWtkZl9zaXplLAotKyAgICBrcmI1a2RmX2Rl cml2ZSwKLSt9OwotKwotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWQvY3J5cHRvL2tkZi9zc2hrZGYu Yy5rcmI1LWtkZiBvcGVuc3NsLTEuMS4xZC9jcnlwdG8va2RmL3NzaGtkZi5jCi0tLS0gb3BlbnNz bC0xLjEuMWQvY3J5cHRvL2tkZi9zc2hrZGYuYy5rcmI1LWtkZgkyMDE5LTExLTE0IDE1OjA3OjA1 LjMyNzA5NDM5NiArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFkL2NyeXB0by9rZGYvc3Noa2RmLmMJ MjAxOS0xMS0xOCAxNzoxODoyNS4zNDMzODgzMTQgKzAxMDAKLUBAIC0xMiw2ICsxMiw3IEBACi0g I2luY2x1ZGUgPHN0cmluZy5oPgotICNpbmNsdWRlIDxvcGVuc3NsL2V2cC5oPgotICNpbmNsdWRl IDxvcGVuc3NsL2tkZi5oPgotKyNpbmNsdWRlICJpbnRlcm5hbC9udW1iZXJzLmgiCi0gI2luY2x1 ZGUgImludGVybmFsL2NyeXB0bGliLmgiCi0gI2luY2x1ZGUgImNyeXB0by9ldnAuaCIKLSAjaW5j bHVkZSAia2RmX2xvY2FsLmgiCi1AQCAtNjgsNiArNjksMTIgQEAgc3RhdGljIGludCBrZGZfc3No a2RmX3BhcnNlX2J1ZmZlcl9hcmcodQotICAgICBwID0gdmFfYXJnKGFyZ3MsIGNvbnN0IHVuc2ln bmVkIGNoYXIgKik7Ci0gICAgIGxlbiA9IHZhX2FyZyhhcmdzLCBzaXplX3QpOwotICAgICBPUEVO U1NMX2NsZWFyX2ZyZWUoKmRzdCwgKmRzdF9sZW4pOwotKyAgICBpZiAobGVuID09IDApIHsKLSsg ICAgICAgICpkc3QgPSBOVUxMOwotKyAgICAgICAgKmRzdF9sZW4gPSAwOwotKyAgICAgICAgcmV0 dXJuIDE7Ci0rICAgIH0KLSsKLSAgICAgKmRzdCA9IE9QRU5TU0xfbWVtZHVwKHAsIGxlbik7Ci0g ICAgIGlmICgqZHN0ID09IE5VTEwpCi0gICAgICAgICByZXR1cm4gMDsKLWRpZmYgLXVwIG9wZW5z c2wtMS4xLjFkL2NyeXB0by9rZGYvc3NrZGYuYy5rcmI1LWtkZiBvcGVuc3NsLTEuMS4xZC9jcnlw dG8va2RmL3Nza2RmLmMKLS0tLSBvcGVuc3NsLTEuMS4xZC9jcnlwdG8va2RmL3Nza2RmLmMua3Ji NS1rZGYJMjAxOS0xMS0xNCAxNTowNzowNS4zNDQwOTQwOTMgKzAxMDAKLSsrKyBvcGVuc3NsLTEu MS4xZC9jcnlwdG8va2RmL3Nza2RmLmMJMjAxOS0xMS0xOCAxNzoyMTo0MC4zNDk5NTI4MDIgKzAx MDAKLUBAIC0wLDAgKzEsMjU1IEBACi0rLyoKLSsgKiBDb3B5cmlnaHQgMjAxOSBUaGUgT3BlblNT TCBQcm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCi0rICogQ29weXJpZ2h0IChj KSAyMDE5LCBPcmFjbGUgYW5kL29yIGl0cyBhZmZpbGlhdGVzLiAgQWxsIHJpZ2h0cyByZXNlcnZl ZC4KLSsgKgotKyAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSAyLjAgKHRoZSAi TGljZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCi0rICogdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21w bGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuICBZb3UgY2FuIG9idGFpbiBhIGNvcHkKLSsgKiBpbiB0 aGUgZmlsZSBMSUNFTlNFIGluIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9yIGF0Ci0rICogaHR0 cHM6Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2UuaHRtbAotKyAqLwotKwotKy8qCi0r ICogUmVmZXIgdG8gaHR0cHM6Ly9jc3JjLm5pc3QuZ292L3B1YmxpY2F0aW9ucy9kZXRhaWwvc3Av ODAwLTU2Yy9yZXYtMS9maW5hbAotKyAqIFNlY3Rpb24gNC4xLgotKyAqCi0rICogVGhlIFNpbmds ZSBTdGVwIEtERiBhbGdvcml0aG0gaXMgZ2l2ZW4gYnk6Ci0rICoKLSsgKiBSZXN1bHQoMCkgPSBl bXB0eSBiaXQgc3RyaW5nIChpLmUuLCB0aGUgbnVsbCBzdHJpbmcpLgotKyAqIEZvciBpID0gMSB0 byByZXBzLCBkbyB0aGUgZm9sbG93aW5nOgotKyAqICAgSW5jcmVtZW50IGNvdW50ZXIgYnkgMS4K LSsgKiAgIFJlc3VsdChpKSA9IFJlc3VsdChpIOKAkyAxKSB8fCBIKGNvdW50ZXIgfHwgWiB8fCBG aXhlZEluZm8pLgotKyAqIERLTSA9IExlZnRtb3N0Qml0cyhSZXN1bHQocmVwcyksIEwpKQotKyAq Ci0rICogTk9URVM6Ci0rICogICBaIGlzIGEgc2hhcmVkIHNlY3JldCByZXF1aXJlZCB0byBwcm9k dWNlIHRoZSBkZXJpdmVkIGtleSBtYXRlcmlhbC4KLSsgKiAgIGNvdW50ZXIgaXMgYSA0IGJ5dGUg YnVmZmVyLgotKyAqICAgRml4ZWRJbmZvIGlzIGEgYml0IHN0cmluZyBjb250YWluaW5nIGNvbnRl eHQgc3BlY2lmaWMgZGF0YS4KLSsgKiAgIERLTSBpcyB0aGUgb3V0cHV0IGRlcml2ZWQga2V5IG1h dGVyaWFsLgotKyAqICAgTCBpcyB0aGUgcmVxdWlyZWQgc2l6ZSBvZiB0aGUgREtNLgotKyAqICAg cmVwcyA9IFtMIC8gSF9vdXRwdXRCaXRzXQotKyAqICAgSCh4KSBpcyB0aGUgYXV4aWxpYXJ5IGZ1 bmN0aW9uIHRoYXQgY2FuIGJlIGVpdGhlciBhIGhhc2gsIEhNQUMgb3IgS01BQy4KLSsgKiAgIFRo aXMgYmFja3BvcnRlZCB2ZXJzaW9uIHN1cHBvcnRzIG9ubHkgYSBoYXNoLgotKyAqICAgSF9vdXRw dXRCaXRzIGlzIHRoZSBsZW5ndGggb2YgdGhlIG91dHB1dCBvZiB0aGUgYXV4aWxpYXJ5IGZ1bmN0 aW9uIEgoeCkuCi0rICoKLSsgKiBDdXJyZW50bHkgdGhlcmUgaXMgbm90IGEgY29tcHJlaGVuc2l2 ZSBsaXN0IG9mIHRlc3QgdmVjdG9ycyBmb3IgdGhpcwotKyAqIGFsZ29yaXRobSwgZXNwZWNpYWxs eSBmb3IgSCh4KSA9IEhNQUMgYW5kIEgoeCkgPSBLTUFDLgotKyAqIFRlc3QgdmVjdG9ycyBmb3Ig SCh4KSA9IEhhc2ggYXJlIGluZGlyZWN0bHkgdXNlZCBieSBDQVZTIEtBUyB0ZXN0cy4KLSsgKi8K LSsjaW5jbHVkZSA8c3RkbGliLmg+Ci0rI2luY2x1ZGUgPHN0ZGFyZy5oPgotKyNpbmNsdWRlIDxz dHJpbmcuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9obWFjLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wv ZXZwLmg+Ci0rI2luY2x1ZGUgPG9wZW5zc2wva2RmLmg+Ci0rI2luY2x1ZGUgImludGVybmFsL2Ny eXB0bGliLmgiCi0rI2luY2x1ZGUgImNyeXB0by9ldnAuaCIKLSsjaW5jbHVkZSAia2RmX2xvY2Fs LmgiCi0rCi0rc3RydWN0IGV2cF9rZGZfaW1wbF9zdCB7Ci0rICAgIGNvbnN0IEVWUF9NRCAqbWQ7 ICAgLyogSCh4KSA9IGhhc2ggKi8KLSsgICAgdW5zaWduZWQgY2hhciAqc2VjcmV0OwotKyAgICBz aXplX3Qgc2VjcmV0X2xlbjsKLSsgICAgdW5zaWduZWQgY2hhciAqaW5mbzsKLSsgICAgc2l6ZV90 IGluZm9fbGVuOwotK307Ci0rCi0rI2RlZmluZSBTU0tERl9NQVhfSU5MRU4gKDE8PDMwKQotKwot Ky8qCi0rICogUmVmZXIgdG8gaHR0cHM6Ly9jc3JjLm5pc3QuZ292L3B1YmxpY2F0aW9ucy9kZXRh aWwvc3AvODAwLTU2Yy9yZXYtMS9maW5hbAotKyAqIFNlY3Rpb24gNC4gT25lLVN0ZXAgS2V5IERl cml2YXRpb24gdXNpbmcgSCh4KSA9IGhhc2goeCkKLSsgKi8KLStzdGF0aWMgaW50IFNTS0RGX2hh c2hfa2RtKGNvbnN0IEVWUF9NRCAqa2RmX21kLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgdW5zaWduZWQgY2hhciAqeiwgc2l6ZV90IHpfbGVuLAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqaW5mbywgc2l6ZV90IGluZm9fbGVuLAotKyAg ICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqZGVyaXZlZF9rZXksIHNpemVf dCBkZXJpdmVkX2tleV9sZW4pCi0rewotKyAgICBpbnQgcmV0ID0gMCwgaGxlbjsKLSsgICAgc2l6 ZV90IGNvdW50ZXIsIG91dF9sZW4sIGxlbiA9IGRlcml2ZWRfa2V5X2xlbjsKLSsgICAgdW5zaWdu ZWQgY2hhciBjWzRdOwotKyAgICB1bnNpZ25lZCBjaGFyIG1hY1tFVlBfTUFYX01EX1NJWkVdOwot KyAgICB1bnNpZ25lZCBjaGFyICpvdXQgPSBkZXJpdmVkX2tleTsKLSsgICAgRVZQX01EX0NUWCAq Y3R4ID0gTlVMTCwgKmN0eF9pbml0ID0gTlVMTDsKLSsKLSsgICAgaWYgKHpfbGVuID4gU1NLREZf TUFYX0lOTEVOIHx8IGluZm9fbGVuID4gU1NLREZfTUFYX0lOTEVOCi0rICAgICAgICAgICAgfHwg ZGVyaXZlZF9rZXlfbGVuID4gU1NLREZfTUFYX0lOTEVOCi0rICAgICAgICAgICAgfHwgZGVyaXZl ZF9rZXlfbGVuID09IDApCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgaGxlbiA9IEVWUF9N RF9zaXplKGtkZl9tZCk7Ci0rICAgIGlmIChobGVuIDw9IDApCi0rICAgICAgICByZXR1cm4gMDsK LSsgICAgb3V0X2xlbiA9IChzaXplX3QpaGxlbjsKLSsKLSsgICAgY3R4ID0gRVZQX01EX0NUWF9j cmVhdGUoKTsKLSsgICAgY3R4X2luaXQgPSBFVlBfTURfQ1RYX2NyZWF0ZSgpOwotKyAgICBpZiAo Y3R4ID09IE5VTEwgfHwgY3R4X2luaXQgPT0gTlVMTCkKLSsgICAgICAgIGdvdG8gZW5kOwotKwot KyAgICBpZiAoIUVWUF9EaWdlc3RJbml0KGN0eF9pbml0LCBrZGZfbWQpKQotKyAgICAgICAgZ290 byBlbmQ7Ci0rCi0rICAgIGZvciAoY291bnRlciA9IDE7OyBjb3VudGVyKyspIHsKLSsgICAgICAg IGNbMF0gPSAodW5zaWduZWQgY2hhcikoKGNvdW50ZXIgPj4gMjQpICYgMHhmZik7Ci0rICAgICAg ICBjWzFdID0gKHVuc2lnbmVkIGNoYXIpKChjb3VudGVyID4+IDE2KSAmIDB4ZmYpOwotKyAgICAg ICAgY1syXSA9ICh1bnNpZ25lZCBjaGFyKSgoY291bnRlciA+PiA4KSAmIDB4ZmYpOwotKyAgICAg ICAgY1szXSA9ICh1bnNpZ25lZCBjaGFyKShjb3VudGVyICYgMHhmZik7Ci0rCi0rICAgICAgICBp ZiAoIShFVlBfTURfQ1RYX2NvcHlfZXgoY3R4LCBjdHhfaW5pdCkKLSsgICAgICAgICAgICAgICAg JiYgRVZQX0RpZ2VzdFVwZGF0ZShjdHgsIGMsIHNpemVvZihjKSkKLSsgICAgICAgICAgICAgICAg JiYgRVZQX0RpZ2VzdFVwZGF0ZShjdHgsIHosIHpfbGVuKQotKyAgICAgICAgICAgICAgICAmJiBF VlBfRGlnZXN0VXBkYXRlKGN0eCwgaW5mbywgaW5mb19sZW4pKSkKLSsgICAgICAgICAgICBnb3Rv IGVuZDsKLSsgICAgICAgIGlmIChsZW4gPj0gb3V0X2xlbikgewotKyAgICAgICAgICAgIGlmICgh RVZQX0RpZ2VzdEZpbmFsX2V4KGN0eCwgb3V0LCBOVUxMKSkKLSsgICAgICAgICAgICAgICAgZ290 byBlbmQ7Ci0rICAgICAgICAgICAgb3V0ICs9IG91dF9sZW47Ci0rICAgICAgICAgICAgbGVuIC09 IG91dF9sZW47Ci0rICAgICAgICAgICAgaWYgKGxlbiA9PSAwKQotKyAgICAgICAgICAgICAgICBi cmVhazsKLSsgICAgICAgIH0gZWxzZSB7Ci0rICAgICAgICAgICAgaWYgKCFFVlBfRGlnZXN0Rmlu YWxfZXgoY3R4LCBtYWMsIE5VTEwpKQotKyAgICAgICAgICAgICAgICBnb3RvIGVuZDsKLSsgICAg ICAgICAgICBtZW1jcHkob3V0LCBtYWMsIGxlbik7Ci0rICAgICAgICAgICAgYnJlYWs7Ci0rICAg ICAgICB9Ci0rICAgIH0KLSsgICAgcmV0ID0gMTsKLStlbmQ6Ci0rICAgIEVWUF9NRF9DVFhfZGVz dHJveShjdHgpOwotKyAgICBFVlBfTURfQ1RYX2Rlc3Ryb3koY3R4X2luaXQpOwotKyAgICBPUEVO U1NMX2NsZWFuc2UobWFjLCBzaXplb2YobWFjKSk7Ci0rICAgIHJldHVybiByZXQ7Ci0rfQotKwot K3N0YXRpYyBFVlBfS0RGX0lNUEwgKnNza2RmX25ldyh2b2lkKQotK3sKLSsgICAgRVZQX0tERl9J TVBMICppbXBsOwotKwotKyAgICBpZiAoKGltcGwgPSBPUEVOU1NMX3phbGxvYyhzaXplb2YoKmlt cGwpKSkgPT0gTlVMTCkKLSsgICAgICAgIEtERmVycihLREZfRl9TU0tERl9ORVcsIEVSUl9SX01B TExPQ19GQUlMVVJFKTsKLSsgICAgcmV0dXJuIGltcGw7Ci0rfQotKwotK3N0YXRpYyB2b2lkIHNz a2RmX3Jlc2V0KEVWUF9LREZfSU1QTCAqaW1wbCkKLSt7Ci0rICAgIE9QRU5TU0xfY2xlYXJfZnJl ZShpbXBsLT5zZWNyZXQsIGltcGwtPnNlY3JldF9sZW4pOwotKyAgICBPUEVOU1NMX2NsZWFyX2Zy ZWUoaW1wbC0+aW5mbywgaW1wbC0+aW5mb19sZW4pOwotKyAgICBtZW1zZXQoaW1wbCwgMCwgc2l6 ZW9mKCppbXBsKSk7Ci0rfQotKwotK3N0YXRpYyB2b2lkIHNza2RmX2ZyZWUoRVZQX0tERl9JTVBM ICppbXBsKQotK3sKLSsgICAgc3NrZGZfcmVzZXQoaW1wbCk7Ci0rICAgIE9QRU5TU0xfZnJlZShp bXBsKTsKLSt9Ci0rCi0rc3RhdGljIGludCBzc2tkZl9zZXRfYnVmZmVyKHZhX2xpc3QgYXJncywg dW5zaWduZWQgY2hhciAqKm91dCwgc2l6ZV90ICpvdXRfbGVuKQotK3sKLSsgICAgY29uc3QgdW5z aWduZWQgY2hhciAqcDsKLSsgICAgc2l6ZV90IGxlbjsKLSsKLSsgICAgcCA9IHZhX2FyZyhhcmdz LCBjb25zdCB1bnNpZ25lZCBjaGFyICopOwotKyAgICBsZW4gPSB2YV9hcmcoYXJncywgc2l6ZV90 KTsKLSsgICAgT1BFTlNTTF9jbGVhcl9mcmVlKCpvdXQsICpvdXRfbGVuKTsKLSsgICAgaWYgKGxl biA9PSAwKSB7Ci0rICAgICAgICAqb3V0ID0gTlVMTDsKLSsgICAgICAgICpvdXRfbGVuID0gMDsK LSsgICAgICAgIHJldHVybiAxOwotKyAgICB9Ci0rCi0rICAgICpvdXQgPSBPUEVOU1NMX21lbWR1 cChwLCBsZW4pOwotKyAgICBpZiAoKm91dCA9PSBOVUxMKQotKyAgICAgICAgcmV0dXJuIDA7Ci0r Ci0rICAgICpvdXRfbGVuID0gbGVuOwotKyAgICByZXR1cm4gMTsKLSt9Ci0rCi0rc3RhdGljIGlu dCBzc2tkZl9jdHJsKEVWUF9LREZfSU1QTCAqaW1wbCwgaW50IGNtZCwgdmFfbGlzdCBhcmdzKQot K3sKLSsgICAgY29uc3QgRVZQX01EICptZDsKLSsKLSsgICAgc3dpdGNoIChjbWQpIHsKLSsgICAg Y2FzZSBFVlBfS0RGX0NUUkxfU0VUX0tFWToKLSsgICAgICAgIHJldHVybiBzc2tkZl9zZXRfYnVm ZmVyKGFyZ3MsICZpbXBsLT5zZWNyZXQsICZpbXBsLT5zZWNyZXRfbGVuKTsKLSsKLSsgICAgY2Fz ZSBFVlBfS0RGX0NUUkxfU0VUX1NTS0RGX0lORk86Ci0rICAgICAgICByZXR1cm4gc3NrZGZfc2V0 X2J1ZmZlcihhcmdzLCAmaW1wbC0+aW5mbywgJmltcGwtPmluZm9fbGVuKTsKLSsKLSsgICAgY2Fz ZSBFVlBfS0RGX0NUUkxfU0VUX01EOgotKyAgICAgICAgbWQgPSB2YV9hcmcoYXJncywgY29uc3Qg RVZQX01EICopOwotKyAgICAgICAgaWYgKG1kID09IE5VTEwpCi0rICAgICAgICAgICAgcmV0dXJu IDA7Ci0rCi0rICAgICAgICBpbXBsLT5tZCA9IG1kOwotKyAgICAgICAgcmV0dXJuIDE7Ci0rCi0r ICAgIGRlZmF1bHQ6Ci0rICAgICAgICByZXR1cm4gLTI7Ci0rICAgIH0KLSt9Ci0rCi0rc3RhdGlj IGludCBzc2tkZl9jdHJsX3N0cihFVlBfS0RGX0lNUEwgKmltcGwsIGNvbnN0IGNoYXIgKnR5cGUs Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSkKLSt7Ci0rICAg IGlmIChzdHJjbXAodHlwZSwgInNlY3JldCIpID09IDAgfHwgc3RyY21wKHR5cGUsICJrZXkiKSA9 PSAwKQotKyAgICAgICAgIHJldHVybiBrZGZfc3RyMmN0cmwoaW1wbCwgc3NrZGZfY3RybCwgRVZQ X0tERl9DVFJMX1NFVF9LRVksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSk7 Ci0rCi0rICAgIGlmIChzdHJjbXAodHlwZSwgImhleHNlY3JldCIpID09IDAgfHwgc3RyY21wKHR5 cGUsICJoZXhrZXkiKSA9PSAwKQotKyAgICAgICAgcmV0dXJuIGtkZl9oZXgyY3RybChpbXBsLCBz c2tkZl9jdHJsLCBFVlBfS0RGX0NUUkxfU0VUX0tFWSwKLSsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdmFsdWUpOwotKwotKyAgICBpZiAoc3RyY21wKHR5cGUsICJpbmZvIikgPT0gMCkKLSsg ICAgICAgIHJldHVybiBrZGZfc3RyMmN0cmwoaW1wbCwgc3NrZGZfY3RybCwgRVZQX0tERl9DVFJM X1NFVF9TU0tERl9JTkZPLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZSk7Ci0r Ci0rICAgIGlmIChzdHJjbXAodHlwZSwgImhleGluZm8iKSA9PSAwKQotKyAgICAgICAgcmV0dXJu IGtkZl9oZXgyY3RybChpbXBsLCBzc2tkZl9jdHJsLCBFVlBfS0RGX0NUUkxfU0VUX1NTS0RGX0lO Rk8sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlKTsKLSsKLSsgICAgaWYgKHN0 cmNtcCh0eXBlLCAiZGlnZXN0IikgPT0gMCkKLSsgICAgICAgIHJldHVybiBrZGZfbWQyY3RybChp bXBsLCBzc2tkZl9jdHJsLCBFVlBfS0RGX0NUUkxfU0VUX01ELCB2YWx1ZSk7Ci0rCi0rICAgIHJl dHVybiAtMjsKLSt9Ci0rCi0rc3RhdGljIHNpemVfdCBzc2tkZl9zaXplKEVWUF9LREZfSU1QTCAq aW1wbCkKLSt7Ci0rICAgIGludCBsZW47Ci0rCi0rICAgIGlmIChpbXBsLT5tZCA9PSBOVUxMKSB7 Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfU1NLREZfU0laRSwgS0RGX1JfTUlTU0lOR19NRVNTQUdF X0RJR0VTVCk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKyAgICBsZW4gPSBFVlBfTURf c2l6ZShpbXBsLT5tZCk7Ci0rICAgIHJldHVybiAobGVuIDw9IDApID8gMCA6IChzaXplX3QpbGVu OwotK30KLSsKLStzdGF0aWMgaW50IHNza2RmX2Rlcml2ZShFVlBfS0RGX0lNUEwgKmltcGwsIHVu c2lnbmVkIGNoYXIgKmtleSwgc2l6ZV90IGtleWxlbikKLSt7Ci0rICAgIGlmIChpbXBsLT5zZWNy ZXQgPT0gTlVMTCkgewotKyAgICAgICAgS0RGZXJyKEtERl9GX1NTS0RGX0RFUklWRSwgS0RGX1Jf TUlTU0lOR19TRUNSRVQpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsKLSsgICAgLyog SCh4KSA9IGhhc2ggKi8KLSsgICAgaWYgKGltcGwtPm1kID09IE5VTEwpIHsKLSsgICAgICAgIEtE RmVycihLREZfRl9TU0tERl9ERVJJVkUsIEtERl9SX01JU1NJTkdfTUVTU0FHRV9ESUdFU1QpOwot KyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsgICAgcmV0dXJuIFNTS0RGX2hhc2hfa2RtKGlt cGwtPm1kLCBpbXBsLT5zZWNyZXQsIGltcGwtPnNlY3JldF9sZW4sCi0rICAgICAgICAgICAgICAg ICAgICAgICAgICBpbXBsLT5pbmZvLCBpbXBsLT5pbmZvX2xlbiwga2V5LCBrZXlsZW4pOwotK30K LSsKLStjb25zdCBFVlBfS0RGX01FVEhPRCBzc19rZGZfbWV0aCA9IHsKLSsgICAgRVZQX0tERl9T UywKLSsgICAgc3NrZGZfbmV3LAotKyAgICBzc2tkZl9mcmVlLAotKyAgICBzc2tkZl9yZXNldCwK LSsgICAgc3NrZGZfY3RybCwKLSsgICAgc3NrZGZfY3RybF9zdHIsCi0rICAgIHNza2RmX3NpemUs Ci0rICAgIHNza2RmX2Rlcml2ZQotK307Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZC9jcnlwdG8v b2JqZWN0cy9vYmpfZGF0Lmgua3JiNS1rZGYgb3BlbnNzbC0xLjEuMWQvY3J5cHRvL29iamVjdHMv b2JqX2RhdC5oCi0tLS0gb3BlbnNzbC0xLjEuMWQvY3J5cHRvL29iamVjdHMvb2JqX2RhdC5oLmty YjUta2RmCTIwMTktMTEtMTQgMTU6MDc6MDUuMzIyMDk0NDg1ICswMTAwCi0rKysgb3BlbnNzbC0x LjEuMWQvY3J5cHRvL29iamVjdHMvb2JqX2RhdC5oCTIwMTktMTEtMTQgMTU6MDc6MDUuMzQ1MDk0 MDc2ICswMTAwCi1AQCAtMTA3OCw3ICsxMDc4LDcgQEAgc3RhdGljIGNvbnN0IHVuc2lnbmVkIGNo YXIgc29bNzc2Ml0gPSB7Ci0gICAgIDB4MkEsMHg4NiwweDQ4LDB4ODYsMHhGNywweDBELDB4MDIs MHgwRCwgICAgICAgLyogWyA3NzUzXSBPQkpfaG1hY1dpdGhTSEE1MTJfMjU2ICovCi0gfTsKLSAK LS0jZGVmaW5lIE5VTV9OSUQgMTE5NgotKyNkZWZpbmUgTlVNX05JRCAxMTk5Ci0gc3RhdGljIGNv bnN0IEFTTjFfT0JKRUNUIG5pZF9vYmpzW05VTV9OSURdID0gewotICAgICB7IlVOREVGIiwgInVu ZGVmaW5lZCIsIE5JRF91bmRlZn0sCi0gICAgIHsicnNhZHNpIiwgIlJTQSBEYXRhIFNlY3VyaXR5 LCBJbmMuIiwgTklEX3JzYWRzaSwgNiwgJnNvWzBdfSwKLUBAIC0yMjc2LDkgKzIyNzYsMTIgQEAg c3RhdGljIGNvbnN0IEFTTjFfT0JKRUNUIG5pZF9vYmpzW05VTV9OSQotICAgICB7ImhtYWNXaXRo U0hBNTEyLTIyNCIsICJobWFjV2l0aFNIQTUxMi0yMjQiLCBOSURfaG1hY1dpdGhTSEE1MTJfMjI0 LCA4LCAmc29bNzc0NV19LAotICAgICB7ImhtYWNXaXRoU0hBNTEyLTI1NiIsICJobWFjV2l0aFNI QTUxMi0yNTYiLCBOSURfaG1hY1dpdGhTSEE1MTJfMjU2LCA4LCAmc29bNzc1M119LAotICAgICB7 IlNTSEtERiIsICJzc2hrZGYiLCBOSURfc3Noa2RmfSwKLSsgICAgeyJLQktERiIsICJrYmtkZiIs IE5JRF9rYmtkZn0sCi0rICAgIHsiS1JCNUtERiIsICJrcmI1a2RmIiwgTklEX2tyYjVrZGZ9LAot KyAgICB7IlNTS0RGIiwgInNza2RmIiwgTklEX3Nza2RmfSwKLSB9OwotIAotLSNkZWZpbmUgTlVN X1NOIDExODcKLSsjZGVmaW5lIE5VTV9TTiAxMTkwCi0gc3RhdGljIGNvbnN0IHVuc2lnbmVkIGlu dCBzbl9vYmpzW05VTV9TTl0gPSB7Ci0gICAgICAzNjQsICAgIC8qICJBRF9EVkNTIiAqLwotICAg ICAgNDE5LCAgICAvKiAiQUVTLTEyOC1DQkMiICovCi1AQCAtMjQ0Miw3ICsyNDQ1LDkgQEAgc3Rh dGljIGNvbnN0IHVuc2lnbmVkIGludCBzbl9vYmpzW05VTV9TTgotICAgICAgMTgzLCAgICAvKiAi SVNPLVVTIiAqLwotICAgICAgNjQ1LCAgICAvKiAiSVRVLVQiICovCi0gICAgICA2NDYsICAgIC8q ICJKT0lOVC1JU08tSVRVLVQiICovCi0rICAgIDExOTYsICAgIC8qICJLQktERiIgKi8KLSAgICAg IDc3MywgICAgLyogIktJU0EiICovCi0rICAgIDExOTcsICAgIC8qICJLUkI1S0RGIiAqLwotICAg ICAxMDYzLCAgICAvKiAiS3hBTlkiICovCi0gICAgIDEwMzksICAgIC8qICJLeERIRSIgKi8KLSAg ICAgMTA0MSwgICAgLyogIkt4REhFLVBTSyIgKi8KLUBAIC0yNTU3LDYgKzI1NjIsNyBAQCBzdGF0 aWMgY29uc3QgdW5zaWduZWQgaW50IHNuX29ianNbTlVNX1NOCi0gICAgICAxMDAsICAgIC8qICJT TiIgKi8KLSAgICAgMTAwNiwgICAgLyogIlNOSUxTIiAqLwotICAgICAxMTk1LCAgICAvKiAiU1NI S0RGIiAqLwotKyAgICAxMTk4LCAgICAvKiAiU1NLREYiICovCi0gICAgICAgMTYsICAgIC8qICJT VCIgKi8KLSAgICAgIDE0MywgICAgLyogIlNYTmV0SUQiICovCi0gICAgIDEwNjIsICAgIC8qICJT aXBIYXNoIiAqLwotQEAgLTM0NjksNyArMzQ3NSw3IEBAIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBp bnQgc25fb2Jqc1tOVU1fU04KLSAgICAgMTA5MywgICAgLyogIng1MDlFeHRBZG1pc3Npb24iICov Ci0gfTsKLSAKLS0jZGVmaW5lIE5VTV9MTiAxMTg3Ci0rI2RlZmluZSBOVU1fTE4gMTE5MAotIHN0 YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgbG5fb2Jqc1tOVU1fTE5dID0gewotICAgICAgMzYzLCAg ICAvKiAiQUQgVGltZSBTdGFtcGluZyIgKi8KLSAgICAgIDQwNSwgICAgLyogIkFOU0kgWDkuNjIi ICovCi1AQCAtNDI2Miw4ICs0MjY4LDEwIEBAIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgbG5f b2Jqc1tOVU1fTE4KLSAgICAgIDk1NywgICAgLyogImp1cmlzZGljdGlvbkNvdW50cnlOYW1lIiAq LwotICAgICAgOTU1LCAgICAvKiAianVyaXNkaWN0aW9uTG9jYWxpdHlOYW1lIiAqLwotICAgICAg OTU2LCAgICAvKiAianVyaXNkaWN0aW9uU3RhdGVPclByb3ZpbmNlTmFtZSIgKi8KLSsgICAgMTE5 NiwgICAgLyogImtia2RmIiAqLwotICAgICAgMTUwLCAgICAvKiAia2V5QmFnIiAqLwotICAgICAg NzczLCAgICAvKiAia2lzYSIgKi8KLSsgICAgMTE5NywgICAgLyogImtyYjVrZGYiICovCi0gICAg IDEwNjMsICAgIC8qICJreC1hbnkiICovCi0gICAgIDEwMzksICAgIC8qICJreC1kaGUiICovCi0g ICAgIDEwNDEsICAgIC8qICJreC1kaGUtcHNrIiAqLwotQEAgLTQ2MTIsNiArNDYyMCw3IEBAIHN0 YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgbG5fb2Jqc1tOVU1fTE4KLSAgICAgMTEzMywgICAgLyog InNtNC1lY2IiICovCi0gICAgIDExMzUsICAgIC8qICJzbTQtb2ZiIiAqLwotICAgICAxMTk1LCAg ICAvKiAic3Noa2RmIiAqLwotKyAgICAxMTk4LCAgICAvKiAic3NrZGYiICovCi0gICAgICAgMTYs ICAgIC8qICJzdGF0ZU9yUHJvdmluY2VOYW1lIiAqLwotICAgICAgNjYwLCAgICAvKiAic3RyZWV0 QWRkcmVzcyIgKi8KLSAgICAgIDQ5OCwgICAgLyogInN1YnRyZWVNYXhpbXVtUXVhbGl0eSIgKi8K LWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFkL2NyeXB0by9vYmplY3RzL29iamVjdHMudHh0LmtyYjUt a2RmIG9wZW5zc2wtMS4xLjFkL2NyeXB0by9vYmplY3RzL29iamVjdHMudHh0Ci0tLS0gb3BlbnNz bC0xLjEuMWQvY3J5cHRvL29iamVjdHMvb2JqZWN0cy50eHQua3JiNS1rZGYJMjAxOS0xMS0xNCAx NTowNzowNS4zMjIwOTQ0ODUgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xZC9jcnlwdG8vb2JqZWN0 cy9vYmplY3RzLnR4dAkyMDE5LTExLTE0IDE1OjA3OjA1LjM0NTA5NDA3NiArMDEwMAotQEAgLTE2 MDMsNiArMTYwMywxNSBAQCBzZWNnLXNjaGVtZSAxNCAzIDogZGhTaW5nbGVQYXNzLWNvZmFjdG9y Ci0gIyBOSUQgZm9yIFNTSEtERgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IFNTSEtE RiAgICAgICAgICAgIDogc3Noa2RmCi0gCi0rIyBOSUQgZm9yIEtCS0RGCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDogS0JLREYgICAgICAgICAgICAgOiBrYmtkZgotKwotKyMgTklEIGZv ciBLUkI1S0RGCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogS1JCNUtERiAgICAgICAg ICAgOiBrcmI1a2RmCi0rCi0rIyBOSUQgZm9yIFNTS0RGCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgIDogU1NLREYgICAgICAgICAgICAgIDogc3NrZGYKLSsKLSAjIFJGQyA0NTU2Ci0gMSAz IDYgMSA1IDIgMyA6IGlkLXBraW5pdAotIGlkLXBraW5pdCA0ICAgICAgICAgICAgICAgICAgICAg OiBwa0luaXRDbGllbnRBdXRoICAgICAgOiBQS0lOSVQgQ2xpZW50IEF1dGgKLWRpZmYgLXVwIG9w ZW5zc2wtMS4xLjFkL2NyeXB0by9vYmplY3RzL29ial9tYWMubnVtLmtyYjUta2RmIG9wZW5zc2wt MS4xLjFkL2NyeXB0by9vYmplY3RzL29ial9tYWMubnVtCi0tLS0gb3BlbnNzbC0xLjEuMWQvY3J5 cHRvL29iamVjdHMvb2JqX21hYy5udW0ua3JiNS1rZGYJMjAxOS0xMS0xNCAxNTowNzowNS4zMjIw OTQ0ODUgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xZC9jcnlwdG8vb2JqZWN0cy9vYmpfbWFjLm51 bQkyMDE5LTExLTE0IDE1OjA3OjA1LjM0NjA5NDA1OCArMDEwMAotQEAgLTExOTMsMyArMTE5Myw2 IEBAIG1hZ21hX21hYwkJMTE5MgotIGhtYWNXaXRoU0hBNTEyXzIyNAkJMTE5MwotIGhtYWNXaXRo U0hBNTEyXzI1NgkJMTE5NAotIHNzaGtkZgkJMTE5NQotK2tia2RmCQkxMTk2Ci0ra3JiNWtkZgkJ MTE5NwotK3Nza2RmCQkxMTk4Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZC9kb2MvbWFuMy9FVlBf S0RGX0NUWC5wb2Qua3JiNS1rZGYgb3BlbnNzbC0xLjEuMWQvZG9jL21hbjMvRVZQX0tERl9DVFgu cG9kCi0tLS0gb3BlbnNzbC0xLjEuMWQvZG9jL21hbjMvRVZQX0tERl9DVFgucG9kLmtyYjUta2Rm CTIwMTktMTEtMTQgMTU6MDc6MDUuMzE0MDk0NjI4ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWQv ZG9jL21hbjMvRVZQX0tERl9DVFgucG9kCTIwMTktMTEtMTQgMTU6MDc6MDUuMzQ2MDk0MDU4ICsw MTAwCi1AQCAtMTQwLDcgKzE0MCwxNCBAQCBUaGUgdmFsdWUgc3RyaW5nIGlzIGV4cGVjdGVkIHRv IGJlIGEgZGVjCi0gVGhpcyBjb250cm9sIGV4cGVjdHMgb25lIGFyZ3VtZW50OiBDPEVWUF9NRCAq bWQ+Ci0gCi0gRm9yIE1BQyBpbXBsZW1lbnRhdGlvbnMgdGhhdCB1c2UgYSBtZXNzYWdlIGRpZ2Vz dCBhcyBhbiB1bmRlcmx5aW5nIGNvbXB1dGF0aW9uCi0tYWxnb3JpdGhtLCB0aGlzIGNvbnRyb2wg c2V0IHdoYXQgdGhlIGRpZ2VzdCBhbGdvcml0aG0gc2hvdWxkIGJlLgotK2FsZ29yaXRobSwgdGhp cyBjb250cm9sIHNldHMgd2hhdCB0aGUgZGlnZXN0IGFsZ29yaXRobSBzaG91bGQgYmUuCi0rCi0r PWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX0NJUEhFUj4KLSsKLStUaGlzIGNvbnRyb2wgZXhwZWN0 cyBvbmUgYXJndW1lbnQ6IEM8RVZQX0NJUEhFUiAqY2lwaGVyPgotKwotK0ZvciBNQUMgaW1wbGVt ZW50YXRpb25zIHRoYXQgdXNlIGEgY2lwaGVyIGFzIGFuIHVuZGVybHlpbmcgY29tcHV0YXRpb24K LSthbGdvcml0aG0sIHRoaXMgY29udHJvbCBzZXRzIHdoYXQgdGhlIGNpcGhlciBhbGdvcml0aG0g c2hvdWxkIGJlLgotIAotIEVWUF9LREZfY3RybF9zdHIoKSB0eXBlIHN0cmluZzogIm1kIgotIAot ZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWQvZG9jL21hbjcvRVZQX0tERl9LQi5wb2Qua3JiNS1rZGYg b3BlbnNzbC0xLjEuMWQvZG9jL21hbjcvRVZQX0tERl9LQi5wb2QKLS0tLSBvcGVuc3NsLTEuMS4x ZC9kb2MvbWFuNy9FVlBfS0RGX0tCLnBvZC5rcmI1LWtkZgkyMDE5LTExLTE0IDE1OjA3OjA1LjM0 NjA5NDA1OCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFkL2RvYy9tYW43L0VWUF9LREZfS0IucG9k CTIwMTktMTEtMTQgMTU6MDc6MDUuMzQ2MDk0MDU4ICswMTAwCi1AQCAtMCwwICsxLDE3MyBAQAot Kz1wb2QKLSsKLSs9aGVhZDEgTkFNRQotKwotK0VWUF9LREZfS0IgLSBUaGUgS2V5LUJhc2VkIEVW UF9LREYgaW1wbGVtZW50YXRpb24KLSsKLSs9aGVhZDEgREVTQ1JJUFRJT04KLSsKLStUaGUgRVZQ X0tERl9LQiBhbGdvcml0aG0gaW1wbGVtZW50cyB0aGUgS2V5LUJhc2VkIGtleSBkZXJpdmF0aW9u IGZ1bmN0aW9uCi0rKEtCS0RGKS4gIEtCS0RGIGRlcml2ZXMgYSBrZXkgZnJvbSByZXBlYXRlZCBh cHBsaWNhdGlvbiBvZiBhIGtleWVkIE1BQyB0byBhbgotK2lucHV0IHNlY3JldCAoYW5kIG90aGVy IG9wdGlvbmFsIHZhbHVlcykuCi0rCi0rPWhlYWQyIE51bWVyaWMgaWRlbnRpdHkKLSsKLStCPEVW UF9LREZfS0I+IGlzIHRoZSBudW1lcmljIGlkZW50aXR5IGZvciB0aGlzIGltcGxlbWVudGF0aW9u OyBpdCBjYW4gYmUgdXNlZCB3aXRoIHRoZQotK0VWUF9LREZfQ1RYX25ld19pZCgpIGZ1bmN0aW9u LgotKwotKz1oZWFkMiBTdXBwb3J0ZWQgY29udHJvbHMKLSsKLStUaGUgc3VwcG9ydGVkIGNvbnRy b2xzIGFyZToKLSsKLSs9b3ZlciA0Ci0rCi0rPWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX0tCX01P REU+Ci0rCi0rVGhpcyBjb250cm9sIGV4cGVjdHMgb25lIGFyZ3VtZW50OiBDPGludCBtb2RlPgot KwotK1NldHMgdGhlIG1vZGUgZm9yIHRoZSBLQktERiBvcGVyYXRpb24uIFRoZXJlIGFyZSB0d28g c3VwcG9ydGVkIG1vZGVzOgotKwotKz1vdmVyIDQKLSsKLSs9aXRlbSBCPEVWUF9LREZfS0JfTU9E RV9DT1VOVEVSPgotKwotK1RoZSBjb3VudGVyIG1vZGUgb2YgS0JLREYgc2hvdWxkIGJlIHVzZWQu IFRoaXMgaXMgdGhlIGRlZmF1bHQuCi0rCi0rPWl0ZW0gQjxFVlBfS0RGX0tCX01PREVfRkVFREJB Q0s+Ci0rCi0rVGhlIGZlZWRiYWNrIG1vZGUgb2YgS0JLREYgc2hvdWxkIGJlIHVzZWQuCi0rCi0r PWJhY2sKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRfS0JfTUFDX1RZUEU+Ci0rCi0rVGhp cyBjb250cm9sIGV4cGVjdHMgb25lIGFyZ3VtZW50OiBDPGludCBtYWNfdHlwZT4KLSsKLStTZXRz IHRoZSBtYWMgdHlwZSBmb3IgdGhlIEtCS0RGIG9wZXJhdGlvbi4gVGhlcmUgYXJlIHR3byBzdXBw b3J0ZWQgbWFjIHR5cGVzOgotKwotKz1vdmVyIDQKLSsKLSs9aXRlbSBCPEVWUF9LREZfS0JfTUFD X1RZUEVfSE1BQz4KLSsKLStUaGUgSE1BQyB3aXRoIHRoZSBkaWdlc3Qgc2V0IGJ5IEI8RVZQX0tE Rl9DVFJMX1NFVF9NRD4gc2hvdWxkIGJlIHVzZWQgYXMgdGhlIG1hYy4KLSsKLSs9aXRlbSBCPEVW UF9LREZfS0JfTUFDX1RZUEVfQ01BQz4KLSsKLStUaGUgQ01BQyB3aXRoIHRoZSBjaXBoZXIgc2V0 IGJ5IEI8RVZQX0tERl9DVFJMX1NFVF9DSVBIRVI+IHNob3VsZCBiZSB1c2VkIGFzIHRoZSBtYWMu Ci0rCi0rPWJhY2sKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRfTUQ+Ci0rCi0rPWl0ZW0g QjxFVlBfS0RGX0NUUkxfU0VUX0NJUEhFUj4KLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRf S0VZPgotKwotKz1pdGVtIEI8RVZQX0tERl9DVFJMX1NFVF9TQUxUPgotKwotK1RoZXNlIGNvbnRy b2xzIHdvcmsgYXMgZGVzY3JpYmVkIGluIEw8RVZQX0tERl9DVFgoMykvQ09OVFJPTFM+LgotKwot Kz1pdGVtIEI8RVZQX0tERl9DVFJMX1NFVF9LQl9JTkZPPgotKwotK1RoaXMgY29udHJvbCBleHBl Y3RzIHR3byBhcmd1bWVudHM6IEM8dW5zaWduZWQgY2hhciAqaW5mbz4sIEM8c2l6ZV90IGluZm9s ZW4+Ci0rCi0rPWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX0tCX1NFRUQ+Ci0rCi0rVGhpcyBjb250 cm9sIGV4cGVjdHMgdHdvIGFyZ3VtZW50czogQzx1bnNpZ25lZCBjaGFyICpzZWVkPiwgQzxzaXpl X3Qgc2VlZGxlbj4KLSsKLStJdCBpcyB1c2VkIG9ubHkgaW4gdGhlIGZlZWRiYWNrIG1vZGUgYW5k IHRoZSBsZW5ndGggbXVzdCBiZSB0aGUgc2FtZQotK2FzIHRoZSBibG9jayBsZW5ndGggb2YgdGhl IGNpcGhlciBpbiBDTUFDIG9yIHRoZSBzaXplIG9mIHRoZSBkaWdlc3QgaW4gSE1BQy4KLSsKLSs9 YmFjawotKwotK1RoZSBjb250cm9scyBCPEVWUF9LREZfQ1RSTF9TRVRfS0VZPiwgQjxFVlBfS0RG X0NUUkxfU0VUX1NBTFQ+LAotK0I8RVZQX0tERl9DVFJMX1NFVF9LQl9JTkZPPiwgYW5kIEI8RVZQ X0tERl9DVFJMX1NFVF9LQl9TRUVEPiAKLStjb3JyZXNwb25kIHRvIEtJLCBMYWJlbCwgQ29udGV4 dCwgYW5kIElWIChyZXNwZWN0aXZlbHkpIGluIFNQODAwLTEwOC4KLStBcyBpbiB0aGF0IGRvY3Vt ZW50LCBzYWx0LCBpbmZvLCBhbmQgc2VlZCBhcmUgb3B0aW9uYWwgYW5kIG1heSBiZQotK29taXR0 ZWQuCi0rCi0rRGVwZW5kaW5nIG9uIHdoZXRoZXIgbWFjIGlzIENNQUMgb3IgSE1BQywgZWl0aGVy IGRpZ2VzdCBvciBjaXBoZXIgaXMKLStyZXF1aXJlZCAocmVzcGVjdGl2ZWx5KSBhbmQgdGhlIG90 aGVyIGlzIHVudXNlZC4KLSsKLSs9aGVhZDEgTk9URVMKLSsKLStBIGNvbnRleHQgZm9yIEtCS0RG IGNhbiBiZSBvYnRhaW5lZCBieSBjYWxsaW5nOgotKwotKyBFVlBfS0RGX0NUWCAqa2N0eCA9IEVW UF9LREZfQ1RYX25ld19pZChFVlBfS0RGX0tCKTsKLSsKLStUaGUgb3V0cHV0IGxlbmd0aCBvZiBh biBLQktERiBpcyBzcGVjaWZpZWQgdmlhIHRoZSBDPGtleWxlbj4KLStwYXJhbWV0ZXIgdG8gdGhl IEw8RVZQX0tERl9kZXJpdmUoMyk+IGZ1bmN0aW9uLgotKwotK05vdGUgdGhhdCBjdXJyZW50bHkg T3BlblNTTCBvbmx5IGltcGxlbWVudHMgY291bnRlciBhbmQgZmVlZGJhY2sgbW9kZXMuICBPdGhl cgotK3ZhcmlhbnRzIG1heSBiZSBzdXBwb3J0ZWQgaW4gdGhlIGZ1dHVyZS4KLSsKLSs9aGVhZDEg RVhBTVBMRVMKLSsKLStUaGlzIGV4YW1wbGUgZGVyaXZlcyAxMCBieXRlcyB1c2luZyBDT1VOVEVS LUhNQUMtU0hBMjU2LCB3aXRoIEtJICJzZWNyZXQiLAotK0xhYmVsICJsYWJlbCIsIGFuZCBDb250 ZXh0ICJjb250ZXh0Ii4KLSsKLSsgRVZQX0tERl9DVFggKmtjdHg7Ci0rIHVuc2lnbmVkIGNoYXIg b3V0WzEwXTsKLSsKLSsga2N0eCA9IEVWUF9LREZfQ1RYX25ld19pZChFVlBfS0RGX0tCKTsKLSsK LSsgRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfTUQsIEVWUF9zaGEyNTYoKSk7 Ci0rIEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX0tCX01BQ19UWVBFLCBFVlBf S0RGX0tCX01BQ19UWVBFX0hNQUMpOwotKyBFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJM X1NFVF9LRVksICJzZWNyZXQiLCBzdHJsZW4oInNlY3JldCIpKTsKLSsgRVZQX0tERl9jdHJsKGtj dHgsIEVWUF9LREZfQ1RSTF9TRVRfU0FMVCwgImxhYmVsIiwgc3RybGVuKCJsYWJlbCIpKTsKLSsg RVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfS0JfSU5GTywgImNvbnRleHQiLCBz dHJsZW4oImNvbnRleHQiKSk7Ci0rIGlmIChFVlBfS0RGX2Rlcml2ZShrY3R4LCBvdXQsIHNpemVv ZihvdXQpKSA8PSAwKQotKyAgICAgZXJyb3IoIkVWUF9LREZfZGVyaXZlIik7Ci0rCi0rIEVWUF9L REZfQ1RYX2ZyZWUoa2N0eCk7Ci0rCi0rVGhpcyBleGFtcGxlIGRlcml2ZXMgMTAgYnl0ZXMgdXNp bmcgRkVFREJBQ0stQ01BQy1BRVMyNTYsIHdpdGggS0kgInNlY3JldCIsCi0rTGFiZWwgImxhYmVs IiwgQ29udGV4dCAiY29udGV4dCIsIGFuZCBJViAic2l4dGVlbiBieXRlcyBpdiIuCi0rCi0rIEVW UF9LREZfQ1RYICprY3R4OwotKyB1bnNpZ25lZCBjaGFyIG91dFsxMF07Ci0rIHVuc2lnbmVkIGNo YXIgKml2ID0gInNpeHRlZW4gYnl0ZXMgaXYiOwotKwotKyBrY3R4ID0gRVZQX0tERl9DVFhfbmV3 X2lkKEVWUF9LREZfS0IpOwotKwotKyBFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NF VF9DSVBIRVIsIEVWUF9hZXNfMjU2X2NiYygpKTsKLSsgRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9L REZfQ1RSTF9TRVRfS0JfTUFDX1RZUEUsIEVWUF9LREZfS0JfTUFDX1RZUEVfQ01BQyk7Ci0rIEVW UF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX0tCX01PREUsIEVWUF9LREZfS0JfTU9E RV9GRUVEQkFDSyk7Ci0rIEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX0tFWSwg InNlY3JldCIsIHN0cmxlbigic2VjcmV0IikpOwotKyBFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tE Rl9DVFJMX1NFVF9TQUxULCAibGFiZWwiLCBzdHJsZW4oImxhYmVsIikpOwotKyBFVlBfS0RGX2N0 cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9LQl9JTkZPLCAiY29udGV4dCIsIHN0cmxlbigiY29u dGV4dCIpKTsKLSsgRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfS0JfU0VFRCwg aXYsIHN0cmxlbihpdikpOwotKyBpZiAoRVZQX0tERl9kZXJpdmUoa2N0eCwgb3V0LCBzaXplb2Yo b3V0KSkgPD0gMCkKLSsgICAgIGVycm9yKCJFVlBfS0RGX2Rlcml2ZSIpOwotKwotKyBFVlBfS0RG X0NUWF9mcmVlKGtjdHgpOwotKwotKz1oZWFkMSBDT05GT1JNSU5HIFRPCi0rCi0rTklTVCBTUDgw MC0xMDgsIElFVEYgUkZDIDY4MDMsIElFVEYgUkZDIDgwMDkuCi0rCi0rPWhlYWQxIFNFRSBBTFNP Ci0rCi0rTDxFVlBfS0RGX0NUWCgzKT4sCi0rTDxFVlBfS0RGX0NUWF9uZXdfaWQoMyk+LAotK0w8 RVZQX0tERl9DVFhfZnJlZSgzKT4sCi0rTDxFVlBfS0RGX2N0cmwoMyk+LAotK0w8RVZQX0tERl9z aXplKDMpPiwKLStMPEVWUF9LREZfZGVyaXZlKDMpPiwKLStMPEVWUF9LREZfQ1RYKDMpL0NPTlRS T0xTPgotKwotKz1oZWFkMSBISVNUT1JZCi0rCi0rVGhpcyBmdW5jdGlvbmFsaXR5IHdhcyBhZGRl ZCB0byBPcGVuU1NMIDMuMC4KLSsKLSs9aGVhZDEgQ09QWVJJR0hUCi0rCi0rQ29weXJpZ2h0IDIw MTkgVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgotK0Nv cHlyaWdodCAyMDE5IFJlZCBIYXQsIEluYy4KLSsKLStMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hl IExpY2Vuc2UgMi4wICh0aGUgIkxpY2Vuc2UiKS4gIFlvdSBtYXkgbm90IHVzZQotK3RoaXMgZmls ZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiAgWW91IGNhbiBvYnRhaW4g YSBjb3B5Ci0raW4gdGhlIGZpbGUgTElDRU5TRSBpbiB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBv ciBhdAotK0w8aHR0cHM6Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2UuaHRtbD4uCi0r Ci0rPWN1dAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWQvZG9jL21hbjcvRVZQX0tERl9LUkI1S0RG LnBvZC5rcmI1LWtkZiBvcGVuc3NsLTEuMS4xZC9kb2MvbWFuNy9FVlBfS0RGX0tSQjVLREYucG9k Ci0tLS0gb3BlbnNzbC0xLjEuMWQvZG9jL21hbjcvRVZQX0tERl9LUkI1S0RGLnBvZC5rcmI1LWtk ZgkyMDE5LTExLTE0IDE1OjA3OjA1LjM0NjA5NDA1OCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFk L2RvYy9tYW43L0VWUF9LREZfS1JCNUtERi5wb2QJMjAxOS0xMS0xNCAxNTowNzowNS4zNDYwOTQw NTggKzAxMDAKLUBAIC0wLDAgKzEsMTA3IEBACi0rPXBvZAotKwotKz1oZWFkMSBOQU1FCi0rCi0r RVZQX0tERl9LUkI1S0RGIC0gVGhlIFJGQzM5NjEgS3JiNSBLREYgRVZQX0tERiBpbXBsZW1lbnRh dGlvbgotKwotKz1oZWFkMSBERVNDUklQVElPTgotKwotK1N1cHBvcnQgZm9yIGNvbXB1dGluZyB0 aGUgQjxLUkI1S0RGPiBLREYgdGhyb3VnaCB0aGUgQjxFVlBfS0RGPiBBUEkuCi0rCi0rVGhlIEI8 RVZQX0tERl9LUkI1S0RGPiBhbGdvcml0aG0gaW1wbGVtZW50cyB0aGUga2V5IGRlcml2YXRpb24g ZnVuY3Rpb24gZGVmaW5lZAotK2luIFJGQyAzOTYxLCBzZWN0aW9uIDUuMSBhbmQgaXMgdXNlZCBi eSBLcmI1IHRvIGRlcml2ZSBzZXNzaW9uIGtleXMuCi0rVGhyZWUgaW5wdXRzIGFyZSByZXF1aXJl ZCB0byBwZXJmb3JtIGtleSBkZXJpdmF0aW9uOiBhIGNpcGhlciwgKGZvciBleGFtcGxlCi0rQUVT LTEyOC1DQkMpLCB0aGUgaW5pdGlhbCBrZXksIGFuZCBhIGNvbnN0YW50LgotKwotKz1oZWFkMiBO dW1lcmljIGlkZW50aXR5Ci0rCi0rQjxFVlBfS0RGX0tSQjVLREY+IGlzIHRoZSBudW1lcmljIGlk ZW50aXR5IGZvciB0aGlzIGltcGxlbWVudGF0aW9uOyBpdCBjYW4gYmUgdXNlZCB3aXRoIHRoZQot K0VWUF9LREZfQ1RYX25ld19pZCgpIGZ1bmN0aW9uLgotKwotKz1oZWFkMiBTdXBwb3J0ZWQgY29u dHJvbHMKLSsKLStUaGUgc3VwcG9ydGVkIGNvbnRyb2xzIGFyZToKLSsKLSs9b3ZlciA0Ci0rCi0r PWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX0NJUEhFUj4KLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RS TF9TRVRfS0VZPgotKwotK1RoZXNlIGNvbnRyb2xzIHdvcmsgYXMgZGVzY3JpYmVkIGluIEw8RVZQ X0tERl9DVFgoMykvQ09OVFJPTFM+LgotKwotKz1pdGVtIEI8RVZQX0tERl9DVFJMX1NFVF9LUkI1 S0RGX0NPTlNUQU5UPgotKwotK1RoaXMgY29udHJvbCBleHBlY3RzIHR3byBhcmd1bWVudHM6IEM8 dW5zaWduZWQgY2hhciAqY29uc3RhbnQ+LCBDPHNpemVfdCBjb25zdGFudGxlbj4KLSsKLStUaGlz IGNvbnRyb2wgc2V0cyB0aGUgSTxjb25zdGFudD4gdmFsdWUgZm9yIHRoZSBLREYuCi0rSWYgYSB2 YWx1ZSBpcyBhbHJlYWR5IHNldCwgdGhlIGNvbnRlbnRzIGFyZSByZXBsYWNlZC4KLSsKLSs9YmFj awotKwotKwotKz1oZWFkMSBOT1RFUwotKwotK0EgY29udGV4dCBmb3IgS1JCNUtERiBjYW4gYmUg b2J0YWluZWQgYnkgY2FsbGluZzoKLSsKLSsgRVZQX0tERl9DVFggKmtjdHggPSBFVlBfS0RGX0NU WF9uZXdfaWQoRVZQX0tERl9LUkI1S0RGKTsKLSsKLStUaGUgb3V0cHV0IGxlbmd0aCBvZiB0aGUg S1JCNUtERiBkZXJpdmF0aW9uIGlzIHNwZWNpZmllZCB2aWEgdGhlIEk8a2V5bGVuPgotK3BhcmFt ZXRlciB0byB0aGUgTDxFVlBfS0RGX2Rlcml2ZSgzKT4gZnVuY3Rpb24sIGFuZCBNVVNUIG1hdGNo IHRoZSBrZXkKLStsZW5ndGggZm9yIHRoZSBjaG9zZW4gY2lwaGVyIG9yIGFuIGVycm9yIGlzIHJl dHVybmVkLiBNb3Jlb3ZlciB0aGUKLStJPGNvbnN0YW50PidzIGxlbmd0aCBtdXN0IG5vdCBleGNl ZWQgdGhlIGJsb2NrIHNpemUgb2YgdGhlIGNpcGhlci4KLStTaW5jZSB0aGUgS1JCNUtERiBvdXRw dXQgbGVuZ3RoIGRlcGVuZHMgb24gdGhlIGNob3NlbiBjaXBoZXIsIGNhbGxpbmcKLStMPEVWUF9L REZfc2l6ZSgpPiB0byBvYnRhaW4gdGhlIHJlcXVpc2l0ZSBsZW5ndGggcmV0dXJucyB0aGUgY29y cmVjdCBsZW5ndGgKLStvbmx5IGFmdGVyIHRoZSBjaXBoZXIgaXMgc2V0LiBQcmlvciB0byB0aGF0 IEI8RVZQX01BWF9LRVlfTEVOR1RIPiBpcyByZXR1cm5lZC4KLStUaGUgY2FsbGVyIG11c3QgYWxs b2NhdGUgYSBidWZmZXIgb2YgdGhlIGNvcnJlY3QgbGVuZ3RoIGZvciB0aGUgY2hvc2VuCi0rY2lw aGVyLCBhbmQgcGFzcyB0aGF0IGJ1ZmZlciB0byB0aGUgTDxFVlBfS0RGX2Rlcml2ZSgzKT4gZnVu Y3Rpb24gYWxvbmcKLSt3aXRoIHRoYXQgbGVuZ3RoLgotKwotKz1oZWFkMSBFWEFNUExFUwotKwot K1RoaXMgZXhhbXBsZSBkZXJpdmVzIGEga2V5IHVzaW5nIHRoZSBBRVMtMTI4LUNCQyBjaXBoZXI6 Ci0rCi0rIEVWUF9LREZfQ1RYICprY3R4OwotKyB1bnNpZ25lZCBjaGFyIGtleVsxNl0gPSAiMDEy MzQuLi4iOwotKyB1bnNpZ25lZCBjaGFyIGNvbnN0YW50W10gPSAiSSdtIGEgY29uc3RhbnQiOwot KyB1bnNpZ25lZCBjaGFyIG91dFsxNl07Ci0rIHNpemVfdCBvdXRsZW4gPSBzaXplb2Yob3V0KTsK LSsKLSsga2N0eCA9IEVWUF9LREZfQ1RYX25ld19pZChFVlBfS0RGX0tSQjVLREYpOwotKwotKyBF VlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9DSVBIRVIsIEVWUF9hZXNfMTI4X2Ni YygpKTsKLSsgRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfS0VZLCBrZXksIChz aXplX3QpMTYpOwotKyBFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9LUkI1S0RG X0NPTlNUQU5ULCBjb25zdGFudCwgc3RybGVuKGNvbnN0YW50KSk7Ci0rIGlmIChFVlBfS0RGX2Rl cml2ZShrY3R4LCBvdXQsIG91dGxlbikgPD0gMCkKLSsgICAgIC8qIEVycm9yICovCi0rIEVWUF9L REZfQ1RYX2ZyZWUoa2N0eCk7Ci0rCi0rPWhlYWQxIENPTkZPUk1JTkcgVE8KLSsKLStSRkMgMzk2 MQotKwotKz1oZWFkMSBTRUUgQUxTTwotKwotK0w8RVZQX0tERl9DVFgoMyk+LAotK0w8RVZQX0tE Rl9DVFhfbmV3X2lkKDMpPiwKLStMPEVWUF9LREZfQ1RYX2ZyZWUoMyk+LAotK0w8RVZQX0tERl9j dHJsKDMpPiwKLStMPEVWUF9LREZfc2l6ZSgzKT4sCi0rTDxFVlBfS0RGX2Rlcml2ZSgzKT4sCi0r TDxFVlBfS0RGX0NUWCgzKS9DT05UUk9MUz4KLSsKLSs9aGVhZDEgSElTVE9SWQotKwotK1RoaXMg ZnVuY3Rpb25hbGl0eSB3YXMgYWRkZWQgdG8gT3BlblNTTCAzLjAuCi0rCi0rPWhlYWQxIENPUFlS SUdIVAotKwotK0NvcHlyaWdodCAyMDE2LTIwMTkgVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3Jz LiBBbGwgUmlnaHRzIFJlc2VydmVkLgotKwotK0xpY2Vuc2VkIHVuZGVyIHRoZSBPcGVuU1NMIGxp Y2Vuc2UgKHRoZSAiTGljZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCi0rdGhpcyBmaWxlIGV4Y2Vw dCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuICBZb3UgY2FuIG9idGFpbiBhIGNvcHkK LStpbiB0aGUgZmlsZSBMSUNFTlNFIGluIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9yIGF0Ci0r TDxodHRwczovL3d3dy5vcGVuc3NsLm9yZy9zb3VyY2UvbGljZW5zZS5odG1sPi4KLSsKLSs9Y3V0 Ci0rCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZC9kb2MvbWFuNy9FVlBfS0RGX1NTLnBvZC5rcmI1 LWtkZiBvcGVuc3NsLTEuMS4xZC9kb2MvbWFuNy9FVlBfS0RGX1NTLnBvZAotLS0tIG9wZW5zc2wt MS4xLjFkL2RvYy9tYW43L0VWUF9LREZfU1MucG9kLmtyYjUta2RmCTIwMTktMTEtMTQgMTU6MDc6 MDUuMzQ2MDk0MDU4ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWQvZG9jL21hbjcvRVZQX0tERl9T Uy5wb2QJMjAxOS0xMS0xNCAxNTowNzowNS4zNDYwOTQwNTggKzAxMDAKLUBAIC0wLDAgKzEsMTQ2 IEBACi0rPXBvZAotKwotKz1oZWFkMSBOQU1FCi0rCi0rRVZQX0tERl9TUyAtIFRoZSBTaW5nbGUg U3RlcCAvIE9uZSBTdGVwIEVWUF9LREYgaW1wbGVtZW50YXRpb24KLSsKLSs9aGVhZDEgREVTQ1JJ UFRJT04KLSsKLStUaGUgRVZQX0tERl9TUyBhbGdvcml0aG0gaW1wbGVtZW50cyB0aGUgU2luZ2xl IFN0ZXAga2V5IGRlcml2YXRpb24gZnVuY3Rpb24gKFNTS0RGKS4KLStTU0tERiBkZXJpdmVzIGEg a2V5IHVzaW5nIGlucHV0IHN1Y2ggYXMgYSBzaGFyZWQgc2VjcmV0IGtleSAodGhhdCB3YXMgZ2Vu ZXJhdGVkCi0rZHVyaW5nIHRoZSBleGVjdXRpb24gb2YgYSBrZXkgZXN0YWJsaXNobWVudCBzY2hl bWUpIGFuZCBmaXhlZGluZm8uCi0rU1NLREYgaXMgYWxzbyBpbmZvcm1hbGx5IHJlZmVycmVkIHRv IGFzICdDb25jYXQgS0RGJy4KLSsKLSs9aGVhZDIgQXV4aWxhcnkgZnVuY3Rpb24KLSsKLStUaGUg aW1wbGVtZW50YXRpb24gdXNlcyBhIHNlbGVjdGFibGUgYXV4aWxpYXJ5IGZ1bmN0aW9uIEgsIHdo aWNoIGNhbiBiZSBpbiB0aGUKLStiYWNrcG9ydGVkIHZlcnNpb24gb25seSBhOgotKwotKz1vdmVy IDQKLSsKLSs9aXRlbSBCPEgoeCkgPSBoYXNoKHgsIGRpZ2VzdD1tZCk+Ci0rCi0rPWJhY2sKLSsK LSs9aGVhZDIgTnVtZXJpYyBpZGVudGl0eQotKwotK0I8RVZQX0tERl9TUz4gaXMgdGhlIG51bWVy aWMgaWRlbnRpdHkgZm9yIHRoaXMgaW1wbGVtZW50YXRpb247IGl0Ci0rY2FuIGJlIHVzZWQgd2l0 aCB0aGUgRVZQX0tERl9DVFhfbmV3X2lkKCkgZnVuY3Rpb24uCi0rCi0rPWhlYWQyIFN1cHBvcnRl ZCBjb250cm9scwotKwotK1RoZSBzdXBwb3J0ZWQgY29udHJvbHMgYXJlOgotKwotKz1vdmVyIDQK LSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRfTUQ+Ci0rCi0rVGhpcyBjb250cm9sIHdvcmtz IGFzIGRlc2NyaWJlZCBpbiBMPEVWUF9LREZfQ1RYKDMpL0NPTlRST0xTPi4KLSsKLSs9aXRlbSBC PEVWUF9LREZfQ1RSTF9TRVRfS0VZPgotKwotK1RoaXMgY29udHJvbCBleHBlY3RzIHR3byBhcmd1 bWVudHM6IEM8dW5zaWduZWQgY2hhciAqc2VjcmV0PiwgQzxzaXplX3Qgc2VjcmV0bGVuPgotKwot K1RoZSBzaGFyZWQgc2VjcmV0IHVzZWQgZm9yIGtleSBkZXJpdmF0aW9uLiAgVGhpcyBjb250cm9s IHNldHMgdGhlIHNlY3JldC4KLSsKLStFVlBfS0RGX2N0cmxfc3RyKCkgdGFrZXMgdHdvIHR5cGUg c3RyaW5ncyBmb3IgdGhpcyBjb250cm9sOgotKwotKz1vdmVyIDQKLSsKLSs9aXRlbSAic2VjcmV0 IgotKwotK1RoZSB2YWx1ZSBzdHJpbmcgaXMgdXNlZCBhcyBpcy4KLSsKLSs9aXRlbSAiaGV4c2Vj cmV0IgotKwotK1RoZSB2YWx1ZSBzdHJpbmcgaXMgZXhwZWN0ZWQgdG8gYmUgYSBoZXhhZGVjaW1h bCBudW1iZXIsIHdoaWNoIHdpbGwgYmUKLStkZWNvZGVkIGJlZm9yZSBiZWluZyBwYXNzZWQgb24g YXMgdGhlIGNvbnRyb2wgdmFsdWUuCi0rCi0rPWJhY2sKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RS TF9TRVRfU1NLREZfSU5GTz4KLSsKLStUaGlzIGNvbnRyb2wgZXhwZWN0cyB0d28gYXJndW1lbnRz OiBDPHVuc2lnbmVkIGNoYXIgKmluZm8+LCBDPHNpemVfdCBpbmZvbGVuPgotKwotK0FuIG9wdGlv bmFsIHZhbHVlIGZvciBmaXhlZGluZm8sIGFsc28ga25vd24gYXMgb3RoZXJpbmZvLiBUaGlzIGNv bnRyb2wgc2V0cyB0aGUgZml4ZWRpbmZvLgotKwotK0VWUF9LREZfY3RybF9zdHIoKSB0YWtlcyB0 d28gdHlwZSBzdHJpbmdzIGZvciB0aGlzIGNvbnRyb2w6Ci0rCi0rPW92ZXIgNAotKwotKz1pdGVt ICJpbmZvIgotKwotK1RoZSB2YWx1ZSBzdHJpbmcgaXMgdXNlZCBhcyBpcy4KLSsKLSs9aXRlbSAi aGV4aW5mbyIKLSsKLStUaGUgdmFsdWUgc3RyaW5nIGlzIGV4cGVjdGVkIHRvIGJlIGEgaGV4YWRl Y2ltYWwgbnVtYmVyLCB3aGljaCB3aWxsIGJlCi0rZGVjb2RlZCBiZWZvcmUgYmVpbmcgcGFzc2Vk IG9uIGFzIHRoZSBjb250cm9sIHZhbHVlLgotKwotKz1iYWNrCi0rCi0rPWJhY2sKLSsKLSs9aGVh ZDEgTk9URVMKLSsKLStBIGNvbnRleHQgZm9yIFNTS0RGIGNhbiBiZSBvYnRhaW5lZCBieSBjYWxs aW5nOgotKwotK0VWUF9LREZfQ1RYICprY3R4ID0gRVZQX0tERl9DVFhfbmV3X2lkKEVWUF9LREZf U1MpOwotKwotK1RoZSBvdXRwdXQgbGVuZ3RoIG9mIGFuIFNTS0RGIGlzIHNwZWNpZmllZCB2aWEg dGhlIEM8a2V5bGVuPgotK3BhcmFtZXRlciB0byB0aGUgTDxFVlBfS0RGX2Rlcml2ZSgzKT4gZnVu Y3Rpb24uCi0rCi0rPWhlYWQxIEVYQU1QTEUKLSsKLStUaGlzIGV4YW1wbGUgZGVyaXZlcyAxMCBi eXRlcyB1c2luZyBIKHgpID0gU0hBLTI1Niwgd2l0aCB0aGUgc2VjcmV0IGtleSAic2VjcmV0Igot K2FuZCBmaXhlZGluZm8gdmFsdWUgImxhYmVsIjoKLSsKLSsgIEVWUF9LREZfQ1RYICprY3R4Owot KyAgdW5zaWduZWQgY2hhciBvdXRbMTBdOwotKwotKyAga2N0eCA9IEVWUF9LREZfQ1RYX25ld19p ZChFVlBfS0RGX1NTKTsKLSsKLSsgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJM X1NFVF9NRCwgRVZQX3NoYTI1NigpKSA8PSAwKSB7Ci0rICAgICAgZXJyb3IoIkVWUF9LREZfQ1RS TF9TRVRfTUQiKTsKLSsgIH0KLSsgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJM X1NFVF9LRVksICJzZWNyZXQiLCAoc2l6ZV90KTYpIDw9IDApIHsKLSsgICAgICBlcnJvcigiRVZQ X0tERl9DVFJMX1NFVF9LRVkiKTsKLSsgIH0KLSsgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQ X0tERl9DVFJMX1NFVF9TU0tERl9JTkZPLCAibGFiZWwiLCAoc2l6ZV90KTUpIDw9IDApIHsKLSsg ICAgICBlcnJvcigiRVZQX0tERl9DVFJMX1NFVF9TU0tERl9JTkZPIik7Ci0rICB9Ci0rICBpZiAo RVZQX0tERl9kZXJpdmUoa2N0eCwgb3V0LCBzaXplb2Yob3V0KSkgPD0gMCkgewotKyAgICAgIGVy cm9yKCJFVlBfS0RGX2Rlcml2ZSIpOwotKyAgfQotKwotKyAgRVZQX0tERl9DVFhfZnJlZShrY3R4 KTsKLSsKLSs9aGVhZDEgQ09ORk9STUlORyBUTwotKwotK05JU1QgU1A4MDAtNTZDcjEuCi0rCi0r PWhlYWQxIFNFRSBBTFNPCi0rCi0rTDxFVlBfS0RGX0NUWD4sCi0rTDxFVlBfS0RGX0NUWF9uZXdf aWQoMyk+LAotK0w8RVZQX0tERl9DVFhfZnJlZSgzKT4sCi0rTDxFVlBfS0RGX2N0cmwoMyk+LAot K0w8RVZQX0tERl9zaXplKDMpPiwKLStMPEVWUF9LREZfZGVyaXZlKDMpPiwKLStMPEVWUF9LREZf Q1RYKDMpL0NPTlRST0xTPgotKwotKz1oZWFkMSBISVNUT1JZCi0rCi0rVGhpcyBmdW5jdGlvbmFs aXR5IHdhcyBhZGRlZCB0byBPcGVuU1NMIDMuMC4wLgotKwotKz1oZWFkMSBDT1BZUklHSFQKLSsK LStDb3B5cmlnaHQgMjAxOSBUaGUgT3BlblNTTCBQcm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMg UmVzZXJ2ZWQuICBDb3B5cmlnaHQKLSsoYykgMjAxOSwgT3JhY2xlIGFuZC9vciBpdHMgYWZmaWxp YXRlcy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0rCi0rTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNo ZSBMaWNlbnNlIDIuMCAodGhlICJMaWNlbnNlIikuICBZb3UgbWF5IG5vdCB1c2UKLSt0aGlzIGZp bGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gIFlvdSBjYW4gb2J0YWlu IGEgY29weQotK2luIHRoZSBmaWxlIExJQ0VOU0UgaW4gdGhlIHNvdXJjZSBkaXN0cmlidXRpb24g b3IgYXQKLStMPGh0dHBzOi8vd3d3Lm9wZW5zc2wub3JnL3NvdXJjZS9saWNlbnNlLmh0bWw+Lgot KwotKz1jdXQKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFkL2luY2x1ZGUvb3BlbnNzbC9rZGZlcnIu aC5rcmI1LWtkZiBvcGVuc3NsLTEuMS4xZC9pbmNsdWRlL29wZW5zc2wva2RmZXJyLmgKLS0tLSBv cGVuc3NsLTEuMS4xZC9pbmNsdWRlL29wZW5zc2wva2RmZXJyLmgua3JiNS1rZGYJMjAxOS0xMS0x NCAxNTowNzowNS4zMjMwOTQ0NjggKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xZC9pbmNsdWRlL29w ZW5zc2wva2RmZXJyLmgJMjAxOS0xMS0xNCAxNTowNzowNS4zNDcwOTQwNDAgKzAxMDAKLUBAIC0y NCw2ICsyNCwxMSBAQCBpbnQgRVJSX2xvYWRfS0RGX3N0cmluZ3Modm9pZCk7Ci0gICogS0RGIGZ1 bmN0aW9uIGNvZGVzLgotICAqLwotICMgZGVmaW5lIEtERl9GX0hLREZfRVhUUkFDVCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAxMTIKLSsjIGRlZmluZSBLREZfRl9LQktERl9DVFJMICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTM0Ci0rIyBkZWZpbmUgS0RGX0ZfS0JLREZf Q1RSTF9TVFIgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzNQotKyMgZGVmaW5lIEtERl9G X0tCS0RGX0RFUklWRSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMzYKLSsjIGRlZmlu ZSBLREZfRl9LQktERl9ORVcgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTM3Ci0r IyBkZWZpbmUgS0RGX0ZfS0RGX0NJUEhFUjJDVFJMICAgICAgICAgICAgICAgICAgICAgICAgICAg IDEzOAotICMgZGVmaW5lIEtERl9GX0tERl9IS0RGX0RFUklWRSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAxMTMKLSAjIGRlZmluZSBLREZfRl9LREZfSEtERl9ORVcgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMTE0Ci0gIyBkZWZpbmUgS0RGX0ZfS0RGX0hLREZfU0laRSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDExNQotQEAgLTQzLDYgKzQ4LDggQEAgaW50IEVSUl9sb2Fk X0tERl9zdHJpbmdzKHZvaWQpOwotICMgZGVmaW5lIEtERl9GX0tERl9UTFMxX1BSRl9DVFJMX1NU UiAgICAgICAgICAgICAgICAgICAgICAxMjUKLSAjIGRlZmluZSBLREZfRl9LREZfVExTMV9QUkZf REVSSVZFICAgICAgICAgICAgICAgICAgICAgICAgMTI2Ci0gIyBkZWZpbmUgS0RGX0ZfS0RGX1RM UzFfUFJGX05FVyAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyNwotKyMgZGVmaW5lIEtERl9G X0tSQjVLREYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMzkKLSsjIGRlZmlu ZSBLREZfRl9LUkI1S0RGX0RFUklWRSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTQwCi0g IyBkZWZpbmUgS0RGX0ZfUEJLREYyX1NFVF9NRU1CVUYgICAgICAgICAgICAgICAgICAgICAgICAg IDEyOAotICMgZGVmaW5lIEtERl9GX1BLRVlfSEtERl9DVFJMX1NUUiAgICAgICAgICAgICAgICAg ICAgICAgICAxMDMKLSAjIGRlZmluZSBLREZfRl9QS0VZX0hLREZfREVSSVZFICAgICAgICAgICAg ICAgICAgICAgICAgICAgMTAyCi1AQCAtNTYsMTIgKzYzLDIxIEBAIGludCBFUlJfbG9hZF9LREZf c3RyaW5ncyh2b2lkKTsKLSAjIGRlZmluZSBLREZfRl9QS0VZX1RMUzFfUFJGX0RFUklWRSAgICAg ICAgICAgICAgICAgICAgICAgMTAxCi0gIyBkZWZpbmUgS0RGX0ZfUEtFWV9UTFMxX1BSRl9JTklU ICAgICAgICAgICAgICAgICAgICAgICAgIDExMAotICMgZGVmaW5lIEtERl9GX1NDUllQVF9TRVRf TUVNQlVGICAgICAgICAgICAgICAgICAgICAgICAgICAxMjkKLSsjIGRlZmluZSBLREZfRl9TU0tE Rl9ERVJJVkUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTQxCi0rIyBkZWZpbmUgS0RG X0ZfU1NLREZfTkVXICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE0MgotKyMgZGVm aW5lIEtERl9GX1NTS0RGX1NJWkUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNDMK LSAjIGRlZmluZSBLREZfRl9UTFMxX1BSRl9BTEcgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgMTExCi0gCi0gLyoKLSAgKiBLREYgcmVhc29uIGNvZGVzLgotICAqLwotKyMgZGVmaW5lIEtE Rl9SX0ZBSUxFRF9UT19HRU5FUkFURV9LRVkgICAgICAgICAgICAgICAgICAgICAxMTgKLSsjIGRl ZmluZSBLREZfUl9JTlZBTElEX0NJUEhFUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTE2 Ci0rIyBkZWZpbmUgS0RGX1JfSU5WQUxJRF9DT05TVEFOVF9MRU5HVEggICAgICAgICAgICAgICAg ICAgIDExOQotICMgZGVmaW5lIEtERl9SX0lOVkFMSURfRElHRVNUICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAxMDAKLSsjIGRlZmluZSBLREZfUl9JTlZBTElEX1NFRURfTEVOR1RIICAgICAg ICAgICAgICAgICAgICAgICAgMTE3Ci0rIyBkZWZpbmUgS0RGX1JfTUlTU0lOR19DSVBIRVIgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDEyMAotKyMgZGVmaW5lIEtERl9SX01JU1NJTkdfQ09O U1RBTlQgICAgICAgICAgICAgICAgICAgICAgICAgICAxMjEKLSAjIGRlZmluZSBLREZfUl9NSVNT SU5HX0lURVJBVElPTl9DT1VOVCAgICAgICAgICAgICAgICAgICAgMTA5Ci0gIyBkZWZpbmUgS0RG X1JfTUlTU0lOR19LRVkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwNAotICMgZGVm aW5lIEtERl9SX01JU1NJTkdfTUVTU0FHRV9ESUdFU1QgICAgICAgICAgICAgICAgICAgICAxMDUK LUBAIC03Niw2ICs5Miw3IEBAIGludCBFUlJfbG9hZF9LREZfc3RyaW5ncyh2b2lkKTsKLSAjIGRl ZmluZSBLREZfUl9VTktOT1dOX1BBUkFNRVRFUl9UWVBFICAgICAgICAgICAgICAgICAgICAgMTAz Ci0gIyBkZWZpbmUgS0RGX1JfVkFMVUVfRVJST1IgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDEwOAotICMgZGVmaW5lIEtERl9SX1ZBTFVFX01JU1NJTkcgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAxMDIKLSsjIGRlZmluZSBLREZfUl9XUk9OR19GSU5BTF9CTE9DS19MRU5HVEgg ICAgICAgICAgICAgICAgICAgMTIyCi0gIyBkZWZpbmUgS0RGX1JfV1JPTkdfT1VUUFVUX0JVRkZF Ul9TSVpFICAgICAgICAgICAgICAgICAgIDExMgotIAotICNlbmRpZgotZGlmZiAtdXAgb3BlbnNz bC0xLjEuMWQvaW5jbHVkZS9vcGVuc3NsL2tkZi5oLmtyYjUta2RmIG9wZW5zc2wtMS4xLjFkL2lu Y2x1ZGUvb3BlbnNzbC9rZGYuaAotLS0tIG9wZW5zc2wtMS4xLjFkL2luY2x1ZGUvb3BlbnNzbC9r ZGYuaC5rcmI1LWtkZgkyMDE5LTExLTE0IDE1OjA3OjA1LjMyMzA5NDQ2OCArMDEwMAotKysrIG9w ZW5zc2wtMS4xLjFkL2luY2x1ZGUvb3BlbnNzbC9rZGYuaAkyMDE5LTExLTE0IDE1OjA3OjA1LjM0 NzA5NDA0MCArMDEwMAotQEAgLTIxLDYgKzIxLDkgQEAgZXh0ZXJuICJDIiB7Ci0gIyBkZWZpbmUg RVZQX0tERl9UTFMxX1BSRiAgIE5JRF90bHMxX3ByZgotICMgZGVmaW5lIEVWUF9LREZfSEtERiAg ICAgICBOSURfaGtkZgotICMgZGVmaW5lIEVWUF9LREZfU1NIS0RGICAgICBOSURfc3Noa2RmCi0r IyBkZWZpbmUgRVZQX0tERl9LQiAgICAgICAgIE5JRF9rYmtkZgotKyMgZGVmaW5lIEVWUF9LREZf S1JCNUtERiAgICBOSURfa3JiNWtkZgotKyMgZGVmaW5lIEVWUF9LREZfU1MgICAgICAgICBOSURf c3NrZGYKLSAKLSBFVlBfS0RGX0NUWCAqRVZQX0tERl9DVFhfbmV3X2lkKGludCBpZCk7Ci0gdm9p ZCBFVlBfS0RGX0NUWF9mcmVlKEVWUF9LREZfQ1RYICpjdHgpOwotQEAgLTUxLDYgKzU0LDEzIEBA IGludCBFVlBfS0RGX2Rlcml2ZShFVlBfS0RGX0NUWCAqY3R4LCB1bnMKLSAjIGRlZmluZSBFVlBf S0RGX0NUUkxfU0VUX1NTSEtERl9YQ0dIQVNIICAgIDB4MTAgLyogdW5zaWduZWQgY2hhciAqLCBz aXplX3QgKi8KLSAjIGRlZmluZSBFVlBfS0RGX0NUUkxfU0VUX1NTSEtERl9TRVNTSU9OX0lEIDB4 MTEgLyogdW5zaWduZWQgY2hhciAqLCBzaXplX3QgKi8KLSAjIGRlZmluZSBFVlBfS0RGX0NUUkxf U0VUX1NTSEtERl9UWVBFICAgICAgIDB4MTIgLyogaW50ICovCi0rIyBkZWZpbmUgRVZQX0tERl9D VFJMX1NFVF9LQl9NT0RFICAgICAgIDB4MTMgLyogaW50ICovCi0rIyBkZWZpbmUgRVZQX0tERl9D VFJMX1NFVF9LQl9NQUNfVFlQRSAgIDB4MTQgLyogaW50ICovCi0rIyBkZWZpbmUgRVZQX0tERl9D VFJMX1NFVF9DSVBIRVIgICAgICAgIDB4MTUgLyogRVZQX0NJUEhFUiAqICovCi0rIyBkZWZpbmUg RVZQX0tERl9DVFJMX1NFVF9LQl9JTkZPICAgICAgIDB4MTYgLyogdW5zaWduZWQgY2hhciAqLCBz aXplX3QgKi8KLSsjIGRlZmluZSBFVlBfS0RGX0NUUkxfU0VUX0tCX1NFRUQgICAgICAgMHgxNyAv KiB1bnNpZ25lZCBjaGFyICosIHNpemVfdCAqLwotKyMgZGVmaW5lIEVWUF9LREZfQ1RSTF9TRVRf S1JCNUtERl9DT05TVEFOVCAgMHgxOCAvKiB1bnNpZ25lZCBjaGFyICosIHNpemVfdCAqLwotKyMg ZGVmaW5lIEVWUF9LREZfQ1RSTF9TRVRfU1NLREZfSU5GTyAgICAweDE5IC8qIHVuc2lnbmVkIGNo YXIgKiwgc2l6ZV90ICovCi0gCi0gIyBkZWZpbmUgRVZQX0tERl9IS0RGX01PREVfRVhUUkFDVF9B TkRfRVhQQU5EICAwCi0gIyBkZWZpbmUgRVZQX0tERl9IS0RGX01PREVfRVhUUkFDVF9PTkxZICAg ICAgICAxCi1AQCAtNjMsNiArNzMsMTIgQEAgaW50IEVWUF9LREZfZGVyaXZlKEVWUF9LREZfQ1RY ICpjdHgsIHVucwotICNkZWZpbmUgRVZQX0tERl9TU0hLREZfVFlQRV9JTlRFR1JJVFlfS0VZX0NM SV9UT19TUlYgNjkKLSAjZGVmaW5lIEVWUF9LREZfU1NIS0RGX1RZUEVfSU5URUdSSVRZX0tFWV9T UlZfVE9fQ0xJIDcwCi0gCi0rI2RlZmluZSBFVlBfS0RGX0tCX01PREVfQ09VTlRFUiAgICAgMAot KyNkZWZpbmUgRVZQX0tERl9LQl9NT0RFX0ZFRURCQUNLICAgIDEKLSsKLSsjZGVmaW5lIEVWUF9L REZfS0JfTUFDX1RZUEVfSE1BQyAgICAwCi0rI2RlZmluZSBFVlBfS0RGX0tCX01BQ19UWVBFX0NN QUMgICAgMQotKwotIC8qKioqIFRoZSBsZWdhY3kgUEtFWS1iYXNlZCBLREYgQVBJIGZvbGxvd3Mu ICoqKiovCi0gCi0gIyBkZWZpbmUgRVZQX1BLRVlfQ1RSTF9UTFNfTUQgICAgICAgICAgICAgICAg ICAgKEVWUF9QS0VZX0FMR19DVFJMKQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWQvaW5jbHVkZS9v cGVuc3NsL29ial9tYWMuaC5rcmI1LWtkZiBvcGVuc3NsLTEuMS4xZC9pbmNsdWRlL29wZW5zc2wv b2JqX21hYy5oCi0tLS0gb3BlbnNzbC0xLjEuMWQvaW5jbHVkZS9vcGVuc3NsL29ial9tYWMuaC5r cmI1LWtkZgkyMDE5LTExLTE0IDE1OjA3OjA1LjMyMzA5NDQ2OCArMDEwMAotKysrIG9wZW5zc2wt MS4xLjFkL2luY2x1ZGUvb3BlbnNzbC9vYmpfbWFjLmgJMjAxOS0xMS0xNCAxNTowNzowNS4zNDcw OTQwNDAgKzAxMDAKLUBAIC00OTc0LDYgKzQ5NzQsMTggQEAKLSAjZGVmaW5lIExOX3NzaGtkZiAg ICAgICAgICAgICAgICJzc2hrZGYiCi0gI2RlZmluZSBOSURfc3Noa2RmICAgICAgICAgICAgICAx MjAzCi0gCi0rI2RlZmluZSBTTl9rYmtkZiAgICAgICAgICAgICAgICJLQktERiIKLSsjZGVmaW5l IExOX2tia2RmICAgICAgICAgICAgICAgImtia2RmIgotKyNkZWZpbmUgTklEX2tia2RmICAgICAg ICAgICAgICAxMjA0Ci0rCi0rI2RlZmluZSBTTl9rcmI1a2RmICAgICAgICAgICAgICJLUkI1S0RG IgotKyNkZWZpbmUgTE5fa3JiNWtkZiAgICAgICAgICAgICAia3JiNWtkZiIKLSsjZGVmaW5lIE5J RF9rcmI1a2RmICAgICAgICAgICAgMTIwNQotKwotKyNkZWZpbmUgU05fc3NrZGYgICAgICAgICAg ICAgICAgIlNTS0RGIgotKyNkZWZpbmUgTE5fc3NrZGYgICAgICAgICAgICAgICAgInNza2RmIgot KyNkZWZpbmUgTklEX3Nza2RmICAgICAgICAgICAgICAgMTIwNgotKwotICNkZWZpbmUgU05faWRf cGtpbml0ICAgICAgICAgICAgImlkLXBraW5pdCIKLSAjZGVmaW5lIE5JRF9pZF9wa2luaXQgICAg ICAgICAgIDEwMzEKLSAjZGVmaW5lIE9CSl9pZF9wa2luaXQgICAgICAgICAgIDFMLDNMLDZMLDFM LDVMLDJMLDNMCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZC90ZXN0L2V2cF9rZGZfdGVzdC5jLmty YjUta2RmIG9wZW5zc2wtMS4xLjFkL3Rlc3QvZXZwX2tkZl90ZXN0LmMKLS0tLSBvcGVuc3NsLTEu MS4xZC90ZXN0L2V2cF9rZGZfdGVzdC5jLmtyYjUta2RmCTIwMTktMTEtMTQgMTU6MDc6MDUuMzE1 MDk0NjEwICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWQvdGVzdC9ldnBfa2RmX3Rlc3QuYwkyMDE5 LTExLTE0IDE1OjA3OjA1LjM0ODA5NDAyMiArMDEwMAotQEAgLTIyNSwxMyArMjI1LDM1OCBAQCBl cnI6Ci0gfQotICNlbmRpZgotIAotKy8qCi0rICogS0JLREYgdGVzdCB2ZWN0b3JzIGZyb20gUkZD IDY4MDMgKENhbWVsbGlhIEVuY3J5cHRpb24gZm9yIEtlcmJlcm9zIDUpCi0rICogc2VjdGlvbiAx MC4KLSsgKi8KLStzdGF0aWMgaW50IHRlc3Rfa2RmX2tia2RmXzY4MDNfMTI4KHZvaWQpCi0rewot KyAgICBpbnQgcmV0ID0gMCwgaTsKLSsgICAgRVZQX0tERl9DVFggKmtjdHg7Ci0rICAgIHN0YXRp YyB1bnNpZ25lZCBjaGFyIGlucHV0X2tleVtdID0gewotKyAgICAgICAgMHg1NywgMHhEMCwgMHgy OSwgMHg3MiwgMHg5OCwgMHhGRiwgMHhEOSwgMHhEMywKLSsgICAgICAgIDB4NUQsIDB4RTUsIDB4 QTQsIDB4N0YsIDB4QjQsIDB4QkQsIDB4RTIsIDB4NEIsCi0rICAgIH07Ci0rICAgIHN0YXRpYyB1 bnNpZ25lZCBjaGFyIGNvbnN0YW50c1tdWzVdID0gewotKyAgICAgICAgeyAweDAwLCAweDAwLCAw eDAwLCAweDAyLCAweDk5IH0sCi0rICAgICAgICB7IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDIsIDB4 YWEgfSwKLSsgICAgICAgIHsgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMiwgMHg1NSB9LAotKyAgICB9 OwotKyAgICBzdGF0aWMgdW5zaWduZWQgY2hhciBvdXRwdXRzW11bMTZdID0gewotKyAgICAgICAg ezB4RDEsIDB4NTUsIDB4NzcsIDB4NUEsIDB4MjAsIDB4OUQsIDB4MDUsIDB4RjAsCi0rICAgICAg ICAgMHgyQiwgMHgzOCwgMHhENCwgMHgyQSwgMHgzOCwgMHg5RSwgMHg1QSwgMHg1Nn0sCi0rICAg ICAgICB7MHg2NCwgMHhERiwgMHg4MywgMHhGOCwgMHg1QSwgMHg1MywgMHgyRiwgMHgxNywKLSsg ICAgICAgICAweDU3LCAweDdELCAweDhDLCAweDM3LCAweDAzLCAweDU3LCAweDk2LCAweEFCfSwK LSsgICAgICAgIHsweDNFLCAweDRGLCAweEJELCAweEYzLCAweDBGLCAweEI4LCAweDI1LCAweDlD LAotKyAgICAgICAgIDB4NDIsIDB4NUMsIDB4QjYsIDB4QzksIDB4NkYsIDB4MUYsIDB4NDYsIDB4 MzV9Ci0rICAgIH07Ci0rICAgIHN0YXRpYyB1bnNpZ25lZCBjaGFyIGl2WzE2XSA9IHsgMCB9Owot KyAgICB1bnNpZ25lZCBjaGFyIHJlc3VsdFsxNl0gPSB7IDAgfTsKLSsKLSsgICAgZm9yIChpID0g MDsgaSA8IDM7IGkrKykgewotKyAgICAgICAgcmV0ID0gMDsKLSsgICAgICAgIGlmICgoa2N0eCA9 IEVWUF9LREZfQ1RYX25ld19pZChFVlBfS0RGX0tCKSkgPT0gTlVMTCkgewotKyAgICAgICAgICAg IFRFU1RfZXJyb3IoIkVWUF9LREZfS0IiKTsKLSsgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAg ICAgIH0KLSsgICAgICAgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9L Ql9NQUNfVFlQRSwgRVZQX0tERl9LQl9NQUNfVFlQRV9DTUFDKSA8PSAwKSB7Ci0rICAgICAgICAg ICAgVEVTVF9lcnJvcigiRVZQX0tERl9DVFJMX1NFVF9LQl9NQUNfVFlQRSIpOwotKyAgICAgICAg ICAgIGdvdG8gZXJyOwotKyAgICAgICAgfQotKyAgICAgICAgaWYgKEVWUF9LREZfY3RybChrY3R4 LCBFVlBfS0RGX0NUUkxfU0VUX0tCX01PREUsIEVWUF9LREZfS0JfTU9ERV9GRUVEQkFDSykgPD0g MCkgewotKyAgICAgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRfS0JfTU9ERSIp OwotKyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgfQotKyAgICAgICAgaWYgKEVWUF9L REZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX0NJUEhFUiwgRVZQX2NhbWVsbGlhXzEyOF9j YmMoKSkgPD0gMCkgewotKyAgICAgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRf Q0lQSEVSIik7Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rICAgICAgICBp ZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfS0VZLCBpbnB1dF9rZXksIHNp emVvZihpbnB1dF9rZXkpKSA8PSAwKSB7Ci0rICAgICAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tE Rl9DVFJMX1NFVF9LRVkiKTsKLSsgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgIH0KLSsg ICAgICAgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9TQUxULCBjb25z dGFudHNbaV0sIHNpemVvZihjb25zdGFudHNbaV0pKSA8PSAwKSB7Ci0rICAgICAgICAgICAgVEVT VF9lcnJvcigiRVZQX0tERl9DVFJMX1NFVF9TQUxUIik7Ci0rICAgICAgICAgICAgZ290byBlcnI7 Ci0rICAgICAgICB9Ci0rICAgICAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RS TF9TRVRfS0JfU0VFRCwgaXYsIHNpemVvZihpdikpIDw9IDApIHsKLSsgICAgICAgICAgICBURVNU X2Vycm9yKCJFVlBfS0RGX0NUUkxfU0VUX0tCX1NFRUQiKTsKLSsgICAgICAgICAgICBnb3RvIGVy cjsKLSsgICAgICAgIH0KLSsgICAgICAgIHJldCA9IFRFU1RfaW50X2d0KEVWUF9LREZfZGVyaXZl KGtjdHgsIHJlc3VsdCwgc2l6ZW9mKHJlc3VsdCkpLCAwKQotKyAgICAgICAgICAgICYmIFRFU1Rf bWVtX2VxKHJlc3VsdCwgc2l6ZW9mKHJlc3VsdCksIG91dHB1dHNbaV0sCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgc2l6ZW9mKG91dHB1dHNbaV0pKTsKLStlcnI6Ci0rICAgICAgICBFVlBf S0RGX0NUWF9mcmVlKGtjdHgpOwotKyAgICAgICAgaWYgKHJldCAhPSAxKQotKyAgICAgICAgICAg IHJldHVybiByZXQ7Ci0rICAgIH0KLSsgICAgcmV0dXJuIHJldDsKLSt9Ci0rCi0rc3RhdGljIGlu dCB0ZXN0X2tkZl9rYmtkZl82ODAzXzI1Nih2b2lkKQotK3sKLSsgICAgaW50IHJldCA9IDAsIGk7 Ci0rICAgIEVWUF9LREZfQ1RYICprY3R4OwotKyAgICBzdGF0aWMgdW5zaWduZWQgY2hhciBpbnB1 dF9rZXlbXSA9IHsKLSsgICAgICAgIDB4QjksIDB4RDYsIDB4ODIsIDB4OEIsIDB4MjAsIDB4NTYs IDB4QjcsIDB4QkUsCi0rICAgICAgICAweDY1LCAweDZELCAweDg4LCAweEExLCAweDIzLCAweEIx LCAweEZBLCAweEM2LAotKyAgICAgICAgMHg4MiwgMHgxNCwgMHhBQywgMHgyQiwgMHg3MiwgMHg3 RSwgMHhDRiwgMHg1RiwKLSsgICAgICAgIDB4NjksIDB4QUYsIDB4RTAsIDB4QzQsIDB4REYsIDB4 MkEsIDB4NkQsIDB4MkMsCi0rICAgIH07Ci0rICAgIHN0YXRpYyB1bnNpZ25lZCBjaGFyIGNvbnN0 YW50c1tdWzVdID0gewotKyAgICAgICAgeyAweDAwLCAweDAwLCAweDAwLCAweDAyLCAweDk5IH0s Ci0rICAgICAgICB7IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDIsIDB4YWEgfSwKLSsgICAgICAgIHsg MHgwMCwgMHgwMCwgMHgwMCwgMHgwMiwgMHg1NSB9LAotKyAgICB9OwotKyAgICBzdGF0aWMgdW5z aWduZWQgY2hhciBvdXRwdXRzW11bMzJdID0gewotKyAgICAgICAgezB4RTQsIDB4NjcsIDB4Rjks IDB4QTksIDB4NTUsIDB4MkIsIDB4QzcsIDB4RDMsCi0rICAgICAgICAgMHgxNSwgMHg1QSwgMHg2 MiwgMHgyMCwgMHhBRiwgMHg5QywgMHgxOSwgMHgyMiwKLSsgICAgICAgICAweDBFLCAweEVFLCAw eEQ0LCAweEZGLCAweDc4LCAweEIwLCAweEQxLCAweEU2LAotKyAgICAgICAgIDB4QTEsIDB4NTQs IDB4NDksIDB4OTEsIDB4NDYsIDB4MUEsIDB4OUUsIDB4NTAsCi0rICAgICAgICB9LAotKyAgICAg ICAgezB4NDEsIDB4MkEsIDB4RUYsIDB4QzMsIDB4NjIsIDB4QTcsIDB4MjgsIDB4NUYsCi0rICAg ICAgICAgMHhDMywgMHg5NiwgMHg2QywgMHg2QSwgMHg1MSwgMHg4MSwgMHhFNywgMHg2MCwKLSsg ICAgICAgICAweDVBLCAweEU2LCAweDc1LCAweDIzLCAweDVCLCAweDZELCAweDU0LCAweDlGLAot KyAgICAgICAgIDB4QkYsIDB4QzksIDB4QUIsIDB4NjYsIDB4MzAsIDB4QTQsIDB4QzYsIDB4MDQs Ci0rICAgICAgICB9LAotKyAgICAgICAgezB4RkEsIDB4NjIsIDB4NEYsIDB4QTAsIDB4RTUsIDB4 MjMsIDB4OTksIDB4M0YsCi0rICAgICAgICAgMHhBMywgMHg4OCwgMHhBRSwgMHhGRCwgMHhDNiwg MHg3RSwgMHg2NywgMHhFQiwKLSsgICAgICAgICAweENELCAweDhDLCAweDA4LCAweEU4LCAweEEw LCAweDI0LCAweDZCLCAweDFELAotKyAgICAgICAgIDB4NzMsIDB4QjAsIDB4RDEsIDB4REQsIDB4 OUYsIDB4QzUsIDB4ODIsIDB4QjAsCi0rICAgICAgICB9LAotKyAgICB9OwotKyAgICBzdGF0aWMg dW5zaWduZWQgY2hhciBpdlsxNl0gPSB7IDAgfTsKLSsgICAgdW5zaWduZWQgY2hhciByZXN1bHRb MzJdID0geyAwIH07Ci0rCi0rICAgIGZvciAoaSA9IDA7IGkgPCAzOyBpKyspIHsKLSsgICAgICAg IHJldCA9IDA7Ci0rICAgICAgICBpZiAoKGtjdHggPSBFVlBfS0RGX0NUWF9uZXdfaWQoRVZQX0tE Rl9LQikpID09IE5VTEwpIHsKLSsgICAgICAgICAgICBURVNUX2Vycm9yKCJFVlBfS0RGX0tCIik7 Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rICAgICAgICBpZiAoRVZQX0tE Rl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfS0JfTUFDX1RZUEUsIEVWUF9LREZfS0JfTUFD X1RZUEVfQ01BQykgPD0gMCkgewotKyAgICAgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfQ1RS TF9TRVRfS0JfTUFDX1RZUEUiKTsKLSsgICAgICAgICAgICBnb3RvIGVycjsKLSsgICAgICAgIH0K LSsgICAgICAgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9LQl9NT0RF LCBFVlBfS0RGX0tCX01PREVfRkVFREJBQ0spIDw9IDApIHsKLSsgICAgICAgICAgICBURVNUX2Vy cm9yKCJFVlBfS0RGX0NUUkxfU0VUX0tCX01PREUiKTsKLSsgICAgICAgICAgICBnb3RvIGVycjsK LSsgICAgICAgIH0KLSsgICAgICAgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJM X1NFVF9DSVBIRVIsIEVWUF9jYW1lbGxpYV8yNTZfY2JjKCkpIDw9IDApIHsKLSsgICAgICAgICAg ICBURVNUX2Vycm9yKCJFVlBfS0RGX0NUUkxfU0VUX0NJUEhFUiIpOwotKyAgICAgICAgICAgIGdv dG8gZXJyOwotKyAgICAgICAgfQotKyAgICAgICAgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBf S0RGX0NUUkxfU0VUX0tFWSwgaW5wdXRfa2V5LCBzaXplb2YoaW5wdXRfa2V5KSkgPD0gMCkgewot KyAgICAgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRfS0VZIik7Ci0rICAgICAg ICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rICAgICAgICBpZiAoRVZQX0tERl9jdHJsKGtj dHgsIEVWUF9LREZfQ1RSTF9TRVRfU0FMVCwgY29uc3RhbnRzW2ldLCBzaXplb2YoY29uc3RhbnRz W2ldKSkgPD0gMCkgewotKyAgICAgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRf U0FMVCIpOwotKyAgICAgICAgICAgIGdvdG8gZXJyOwotKyAgICAgICAgfQotKyAgICAgICAgaWYg KEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX0tCX1NFRUQsIGl2LCBzaXplb2Yo aXYpKSA8PSAwKSB7Ci0rICAgICAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9DVFJMX1NFVF9L Ql9TRUVEIik7Ci0rICAgICAgICAgICAgZ290byBlcnI7Ci0rICAgICAgICB9Ci0rICAgICAgICBy ZXQgPSBURVNUX2ludF9ndChFVlBfS0RGX2Rlcml2ZShrY3R4LCByZXN1bHQsIHNpemVvZihyZXN1 bHQpKSwgMCkKLSsgICAgICAgICAgICAmJiBURVNUX21lbV9lcShyZXN1bHQsIHNpemVvZihyZXN1 bHQpLCBvdXRwdXRzW2ldLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVvZihvdXRw dXRzW2ldKSk7Ci0rZXJyOgotKyAgICAgICAgRVZQX0tERl9DVFhfZnJlZShrY3R4KTsKLSsgICAg ICAgIGlmIChyZXQgIT0gMSkKLSsgICAgICAgICAgICByZXR1cm4gcmV0OwotKyAgICB9Ci0rICAg IHJldHVybiByZXQ7Ci0rfQotKwotKy8qIFR3byB0ZXN0IHZlY3RvcnMgZnJvbSBSRkMgODAwOSAo QUVTIEVuY3J5cHRpb24gd2l0aCBITUFDLVNIQTIgZm9yIEtlcmJlcm9zCi0rICogNSkgYXBwZW5k aXggQS4gKi8KLStzdGF0aWMgaW50IHRlc3Rfa2RmX2tia2RmXzgwMDlfcHJmMSh2b2lkKQotK3sK LSsgICAgaW50IHJldCA9IDA7Ci0rICAgIEVWUF9LREZfQ1RYICprY3R4OwotKyAgICBjaGFyICps YWJlbCA9ICJwcmYiLCAqcHJmX2lucHV0ID0gInRlc3QiOwotKyAgICBzdGF0aWMgdW5zaWduZWQg Y2hhciBpbnB1dF9rZXlbXSA9IHsKLSsgICAgICAgIDB4MzcsIDB4MDUsIDB4RDksIDB4NjAsIDB4 ODAsIDB4QzEsIDB4NzcsIDB4MjgsCi0rICAgICAgICAweEEwLCAweEU4LCAweDAwLCAweEVBLCAw eEI2LCAweEUwLCAweEQyLCAweDNDLAotKyAgICB9OwotKyAgICBzdGF0aWMgdW5zaWduZWQgY2hh ciBvdXRwdXRbXSA9IHsKLSsgICAgICAgIDB4OUQsIDB4MTgsIDB4ODYsIDB4MTYsIDB4RjYsIDB4 MzgsIDB4NTIsIDB4RkUsCi0rICAgICAgICAweDg2LCAweDkxLCAweDVCLCAweEI4LCAweDQwLCAw eEI0LCAweEE4LCAweDg2LAotKyAgICAgICAgMHhGRiwgMHgzRSwgMHg2QiwgMHhCMCwgMHhGOCwg MHgxOSwgMHhCNCwgMHg5QiwKLSsgICAgICAgIDB4ODksIDB4MzMsIDB4OTMsIDB4RDMsIDB4OTMs IDB4ODUsIDB4NDIsIDB4OTUsCi0rICAgIH07Ci0rICAgIHVuc2lnbmVkIGNoYXIgcmVzdWx0W3Np emVvZihvdXRwdXQpXSA9IHsgMCB9OwotKwotKyAgICBpZiAoKGtjdHggPSBFVlBfS0RGX0NUWF9u ZXdfaWQoRVZQX0tERl9LQikpID09IE5VTEwpIHsKLSsgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9L REZfS0IiKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rICAgIGlmIChFVlBfS0RGX2N0 cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9LQl9NQUNfVFlQRSwgRVZQX0tERl9LQl9NQUNfVFlQ RV9ITUFDKSA8PSAwKSB7Ci0rICAgICAgICBURVNUX2Vycm9yKCJFVlBfS0RGX0NUUkxfU0VUX0tC X01BQ19UWVBFIik7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tE Rl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfTUQsIEVWUF9zaGEyNTYoKSkgPD0gMCkgewot KyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9DVFJMX1NFVF9NRCIpOwotKyAgICAgICAgZ290 byBlcnI7Ci0rICAgIH0KLSsgICAgaWYgKEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxf U0VUX0tFWSwgaW5wdXRfa2V5LCBzaXplb2YoaW5wdXRfa2V5KSkgPD0gMCkgewotKyAgICAgICAg VEVTVF9lcnJvcigiRVZQX0tERl9DVFJMX1NFVF9LRVkiKTsKLSsgICAgICAgIGdvdG8gZXJyOwot KyAgICB9Ci0rICAgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9TQUxU LCBsYWJlbCwgc3RybGVuKGxhYmVsKSkgPD0gMCkgewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQ X0tERl9DVFJMX1NFVF9TQUxUIik7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBp ZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfS0JfSU5GTywgcHJmX2lucHV0 LCBzdHJsZW4ocHJmX2lucHV0KSkgPD0gMCkgewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tE Rl9DVFJMX1NFVF9LQl9JTkZPIik7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBy ZXQgPSBURVNUX2ludF9ndChFVlBfS0RGX2Rlcml2ZShrY3R4LCByZXN1bHQsIHNpemVvZihyZXN1 bHQpKSwgMCkKLSsgICAgICAgICYmIFRFU1RfbWVtX2VxKHJlc3VsdCwgc2l6ZW9mKHJlc3VsdCks IG91dHB1dCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2Yob3V0cHV0KSk7Ci0r ZXJyOgotKyAgICBFVlBfS0RGX0NUWF9mcmVlKGtjdHgpOwotKyAgICByZXR1cm4gcmV0OwotK30K LSsKLStzdGF0aWMgaW50IHRlc3Rfa2RmX2tia2RmXzgwMDlfcHJmMih2b2lkKQotK3sKLSsgICAg aW50IHJldCA9IDA7Ci0rICAgIEVWUF9LREZfQ1RYICprY3R4OwotKyAgICBjaGFyICpsYWJlbCA9 ICJwcmYiLCAqcHJmX2lucHV0ID0gInRlc3QiOwotKyAgICBzdGF0aWMgdW5zaWduZWQgY2hhciBp bnB1dF9rZXlbXSA9IHsKLSsgICAgICAgIDB4NkQsIDB4NDAsIDB4NEQsIDB4MzcsIDB4RkEsIDB4 RjcsIDB4OUYsIDB4OUQsCi0rICAgICAgICAweEYwLCAweEQzLCAweDM1LCAweDY4LCAweEQzLCAw eDIwLCAweDY2LCAweDk4LAotKyAgICAgICAgMHgwMCwgMHhFQiwgMHg0OCwgMHgzNiwgMHg0Nywg MHgyRSwgMHhBOCwgMHhBMCwKLSsgICAgICAgIDB4MjYsIDB4RDEsIDB4NkIsIDB4NzEsIDB4ODIs IDB4NDYsIDB4MEMsIDB4NTIsCi0rICAgIH07Ci0rICAgIHN0YXRpYyB1bnNpZ25lZCBjaGFyIG91 dHB1dFtdID0gewotKyAgICAgICAgMHg5OCwgMHgwMSwgMHhGNiwgMHg5QSwgMHgzNiwgMHg4Qywg MHgyQiwgMHhGNiwKLSsgICAgICAgIDB4NzUsIDB4RTUsIDB4OTUsIDB4MjEsIDB4RTEsIDB4Nzcs IDB4RDksIDB4QTAsCi0rICAgICAgICAweDdGLCAweDY3LCAweEVGLCAweEUxLCAweENGLCAweERF LCAweDhELCAweDNDLAotKyAgICAgICAgMHg4RCwgMHg2RiwgMHg2QSwgMHgwMiwgMHg1NiwgMHhF MywgMHhCMSwgMHg3RCwKLSsgICAgICAgIDB4QjMsIDB4QzEsIDB4QjYsIDB4MkEsIDB4RDEsIDB4 QjgsIDB4NTUsIDB4MzMsCi0rICAgICAgICAweDYwLCAweEQxLCAweDczLCAweDY3LCAweEVCLCAw eDE1LCAweDE0LCAweEQyLAotKyAgICB9OwotKyAgICB1bnNpZ25lZCBjaGFyIHJlc3VsdFtzaXpl b2Yob3V0cHV0KV0gPSB7IDAgfTsKLSsKLSsgICAgaWYgKChrY3R4ID0gRVZQX0tERl9DVFhfbmV3 X2lkKEVWUF9LREZfS0IpKSA9PSBOVUxMKSB7Ci0rICAgICAgICBURVNUX2Vycm9yKCJFVlBfS0RG X0tCIik7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJs KGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfS0JfTUFDX1RZUEUsIEVWUF9LREZfS0JfTUFDX1RZUEVf SE1BQykgPD0gMCkgewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9DVFJMX1NFVF9LQl9N QUNfVFlQRSIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgaWYgKEVWUF9LREZf Y3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX01ELCBFVlBfc2hhMzg0KCkpIDw9IDApIHsKLSsg ICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRfTUQiKTsKLSsgICAgICAgIGdvdG8g ZXJyOwotKyAgICB9Ci0rICAgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NF VF9LRVksIGlucHV0X2tleSwgc2l6ZW9mKGlucHV0X2tleSkpIDw9IDApIHsKLSsgICAgICAgIFRF U1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRfS0VZIik7Ci0rICAgICAgICBnb3RvIGVycjsKLSsg ICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfU0FMVCwg bGFiZWwsIHN0cmxlbihsYWJlbCkpIDw9IDApIHsKLSsgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9L REZfQ1RSTF9TRVRfU0FMVCIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgaWYg KEVWUF9LREZfY3RybChrY3R4LCBFVlBfS0RGX0NUUkxfU0VUX0tCX0lORk8sIHByZl9pbnB1dCwg c3RybGVuKHByZl9pbnB1dCkpIDw9IDApIHsKLSsgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZf Q1RSTF9TRVRfS0JfSU5GTyIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsgICAgcmV0 ID0gVEVTVF9pbnRfZ3QoRVZQX0tERl9kZXJpdmUoa2N0eCwgcmVzdWx0LCBzaXplb2YocmVzdWx0 KSksIDApCi0rICAgICAgICAmJiBURVNUX21lbV9lcShyZXN1bHQsIHNpemVvZihyZXN1bHQpLCBv dXRwdXQsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKG91dHB1dCkpOwotK2Vy cjoKLSsgICAgRVZQX0tERl9DVFhfZnJlZShrY3R4KTsKLSsgICAgcmV0dXJuIHJldDsKLSt9Ci0r Ci0rc3RhdGljIGludCB0ZXN0X2tkZl9rcmI1a2RmKHZvaWQpCi0rewotKyAgICBpbnQgcmV0ID0g MDsKLSsgICAgRVZQX0tERl9DVFggKmtjdHg7Ci0rICAgIHVuc2lnbmVkIGNoYXIgb3V0WzE2XTsK LSsgICAgc3RhdGljIHVuc2lnbmVkIGNoYXIga2V5W10gPSB7Ci0rICAgICAgICAweDQyLCAweDI2 LCAweDNDLCAweDZFLCAweDg5LCAweEY0LCAweEZDLCAweDI4LAotKyAgICAgICAgMHhCOCwgMHhE RiwgMHg2OCwgMHhFRSwgMHgwOSwgMHg3OSwgMHg5RiwgMHgxNQotKyAgICB9OwotKyAgICBzdGF0 aWMgdW5zaWduZWQgY2hhciBjb25zdGFudFtdID0gewotKyAgICAgICAgMHgwMCwgMHgwMCwgMHgw MCwgMHgwMiwgMHg5OQotKyAgICB9OwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBl eHBlY3RlZFtzaXplb2Yob3V0KV0gPSB7Ci0rICAgICAgICAweDM0LCAweDI4LCAweDBBLCAweDM4 LCAweDJCLCAweEM5LCAweDI3LCAweDY5LAotKyAgICAgICAgMHhCMiwgMHhEQSwgMHgyRiwgMHg5 RSwgMHhGMCwgMHg2NiwgMHg4NSwgMHg0QgotKyAgICB9OwotKwotKyAgICBpZiAoKGtjdHggPSBF VlBfS0RGX0NUWF9uZXdfaWQoRVZQX0tERl9LUkI1S0RGKSkgPT0gTlVMTCkgewotKyAgICAgICAg VEVTVF9lcnJvcigiRVZQX0tERl9LUkI1S0RGIik7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAg fQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfQ0lQSEVSLCBF VlBfYWVzXzEyOF9jYmMoKSkgPD0gMCkgewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9D VFJMX1NFVF9DSVBIRVIiKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rICAgIGlmIChF VlBfS0RGX2N0cmwoa2N0eCwgRVZQX0tERl9DVFJMX1NFVF9LRVksIGtleSwgc2l6ZW9mKGtleSkp IDw9IDApIHsKLSsgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRfS0VZIik7Ci0r ICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVW UF9LREZfQ1RSTF9TRVRfS1JCNUtERl9DT05TVEFOVCwgY29uc3RhbnQsIHNpemVvZihjb25zdGFu dCkpIDw9IDApIHsKLSsgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRfS1JCNUtE Rl9DT05TVEFOVCIpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsKLSsgICAgcmV0ID0K LSsgICAgICAgIFRFU1RfaW50X2d0KEVWUF9LREZfZGVyaXZlKGtjdHgsIG91dCwgc2l6ZW9mKG91 dCkpLCAwKQotKyAgICAgICAgJiYgVEVTVF9tZW1fZXEob3V0LCBzaXplb2Yob3V0KSwgZXhwZWN0 ZWQsIHNpemVvZihleHBlY3RlZCkpOwotKwotK2VycjoKLSsgICAgRVZQX0tERl9DVFhfZnJlZShr Y3R4KTsKLSsgICAgcmV0dXJuIHJldDsKLSt9Ci0rCi0rc3RhdGljIGludCB0ZXN0X2tkZl9zc19o YXNoKHZvaWQpCi0rewotKyAgICBFVlBfS0RGX0NUWCAqa2N0eDsKLSsgICAgY29uc3QgdW5zaWdu ZWQgY2hhciB6W10gPSB7Ci0rICAgICAgICAweDZkLDB4YmQsMHhjMiwweDNmLDB4MDQsMHg1NCww eDg4LDB4ZTQsMHgwNiwweDI3LDB4NTcsMHhiMCwweDZiLDB4OWUsCi0rICAgICAgICAweGJhLDB4 ZTEsMHg4MywweGZjLDB4NWEsMHg1OSwweDQ2LDB4ZDgsMHgwZCwweGI5LDB4M2YsMHhlYywweDZm LDB4NjIsCi0rICAgICAgICAweGVjLDB4MDcsMHhlMywweDcyLDB4N2YsMHgwMSwweDI2LDB4YWUs MHhkMSwweDJjLDB4ZTQsMHhiMiwweDYyLDB4ZjQsCi0rICAgICAgICAweDdkLDB4NDgsMHhkNSww eDQyLDB4ODcsMHhmOCwweDFkLDB4NDcsMHg0YywweDdjLDB4M2IsMHgxOCwweDUwLDB4ZTkKLSsg ICAgfTsKLSsgICAgY29uc3QgdW5zaWduZWQgY2hhciBvdGhlcltdID0gewotKyAgICAgICAgMHhh MSwweGIyLDB4YzMsMHhkNCwweGU1LDB4NDMsMHg0MSwweDU2LDB4NTMsMHg2OSwweDY0LDB4M2Ms MHg4MywweDJlLAotKyAgICAgICAgMHg5OCwweDQ5LDB4ZGMsMHhkYiwweGE3LDB4MWUsMHg5YSww eDMxLDB4MzksMHhlNiwweDA2LDB4ZTAsMHg5NSwweGRlLAotKyAgICAgICAgMHgzYywweDI2LDB4 NGEsMHg2NiwweGU5LDB4OGEsMHgxNiwweDU4LDB4NTQsMHhjZCwweDA3LDB4OTgsMHg5YiwweDFl LAotKyAgICAgICAgMHhlMCwweGVjLDB4M2YsMHg4ZCwweGJlCi0rICAgIH07Ci0rICAgIGNvbnN0 IHVuc2lnbmVkIGNoYXIgZXhwZWN0ZWRbXSA9IHsKLSsgICAgICAgIDB4YTQsMHg2MiwweGRlLDB4 MTYsMHhhOCwweDlkLDB4ZTgsMHg0NiwweDZlLDB4ZjUsMHg0NiwweDBiLDB4NDcsMHhiOAotKyAg ICB9OwotKyAgICB1bnNpZ25lZCBjaGFyIG91dFsxNF07Ci0rCi0rICAgIGtjdHggPSBFVlBfS0RG X0NUWF9uZXdfaWQoRVZQX0tERl9TUyk7Ci0rCi0rICAgIGlmIChFVlBfS0RGX2N0cmwoa2N0eCwg RVZQX0tERl9DVFJMX1NFVF9NRCwgRVZQX3NoYTIyNCgpKSA8PSAwKSB7Ci0rICAgICAgICBURVNU X2Vycm9yKCJFVlBfS0RGX0NUUkxfU0VUX01EIik7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAg fQotKyAgICBpZiAoRVZQX0tERl9jdHJsKGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfS0VZLCB6LCBz aXplb2YoeikpIDw9IDApIHsKLSsgICAgICAgIFRFU1RfZXJyb3IoIkVWUF9LREZfQ1RSTF9TRVRf S0VZIik7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKyAgICBpZiAoRVZQX0tERl9jdHJs KGtjdHgsIEVWUF9LREZfQ1RSTF9TRVRfU1NLREZfSU5GTywgb3RoZXIsCi0rICAgICAgICAgICAg ICAgICAgICAgc2l6ZW9mKG90aGVyKSkgPD0gMCkgewotKyAgICAgICAgVEVTVF9lcnJvcigiRVZQ X0tERl9DVFJMX1NFVF9TU0tERl9JTkZPIik7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQot KyAgICBpZiAoRVZQX0tERl9kZXJpdmUoa2N0eCwgb3V0LCBzaXplb2Yob3V0KSkgPD0gMCkgewot KyAgICAgICAgVEVTVF9lcnJvcigiRVZQX0tERl9kZXJpdmUiKTsKLSsgICAgICAgIHJldHVybiAw OwotKyAgICB9Ci0rCi0rICAgIGlmICghVEVTVF9tZW1fZXEob3V0LCBzaXplb2Yob3V0KSwgZXhw ZWN0ZWQsIHNpemVvZihleHBlY3RlZCkpKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIEVW UF9LREZfQ1RYX2ZyZWUoa2N0eCk7Ci0rICAgIHJldHVybiAxOwotK30KLSsKLSBpbnQgc2V0dXBf dGVzdHModm9pZCkKLSB7Ci0rICAgIEFERF9URVNUKHRlc3Rfa2RmX2tia2RmXzY4MDNfMTI4KTsK LSsgICAgQUREX1RFU1QodGVzdF9rZGZfa2JrZGZfNjgwM18yNTYpOwotKyAgICBBRERfVEVTVCh0 ZXN0X2tkZl9rYmtkZl84MDA5X3ByZjEpOwotKyAgICBBRERfVEVTVCh0ZXN0X2tkZl9rYmtkZl84 MDA5X3ByZjIpOwotICAgICBBRERfVEVTVCh0ZXN0X2tkZl90bHMxX3ByZik7Ci0gICAgIEFERF9U RVNUKHRlc3Rfa2RmX2hrZGYpOwotICAgICBBRERfVEVTVCh0ZXN0X2tkZl9wYmtkZjIpOwotICNp Zm5kZWYgT1BFTlNTTF9OT19TQ1JZUFQKLSAgICAgQUREX1RFU1QodGVzdF9rZGZfc2NyeXB0KTsK LSAjZW5kaWYKLSsgICAgQUREX1RFU1QodGVzdF9rZGZfa3JiNWtkZik7Ci0rICAgIEFERF9URVNU KHRlc3Rfa2RmX3NzX2hhc2gpOwotICAgICByZXR1cm4gMTsKLSB9Ci1kaWZmIC11cCBvcGVuc3Ns LTEuMS4xZC90ZXN0L3JlY2lwZXMvMzAtdGVzdF9ldnBfZGF0YS9ldnBrZGYudHh0LmtyYjUta2Rm IG9wZW5zc2wtMS4xLjFkL3Rlc3QvcmVjaXBlcy8zMC10ZXN0X2V2cF9kYXRhL2V2cGtkZi50eHQK LS0tLSBvcGVuc3NsLTEuMS4xZC90ZXN0L3JlY2lwZXMvMzAtdGVzdF9ldnBfZGF0YS9ldnBrZGYu dHh0LmtyYjUta2RmCTIwMTktMTEtMTQgMTU6MDc6MDUuMzI3MDk0Mzk2ICswMTAwCi0rKysgb3Bl bnNzbC0xLjEuMWQvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwa2RmLnR4dAkyMDE5 LTExLTE0IDE1OjA3OjA1LjM0OTA5NDAwNSArMDEwMAotQEAgLTUyODYsMyArNTI4Niw1NTkgQEAg Q3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphNGViZAotIEN0cmwudHlwZSA9IHR5 cGU6QQotIE91dHB1dCA9IEZGCi0gUmVzdWx0ID0gS0RGX01JU01BVENICi0rCi0rVGl0bGUgPSBL UkI1S0RGIHRlc3RzIChmcm9tIFJGQyAzOTYxIHRlc3QgdmVjdG9ycyBhbmQga3JiNSBzb3VyY2Vz KQotKwotKyNSRkMzOTYxCi0rS0RGID0gS1JCNUtERgotK0N0cmwuY2lwaGVyID0gY2lwaGVyOkRF Uy1FREUzLUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OmRjZTA2YjFmNjRjODU3YTExYzNkYjU3 YzUxODk5YjJjYzE3OTEwMDhjZTk3M2I5MgotK0N0cmwuaGV4Y29uc3RhbnQgPSBoZXhjb25zdGFu dDowMDAwMDAwMTU1Ci0rT3V0cHV0ID0gOTI1MTc5ZDA0NTkxYTc5YjVkMzE5MmM0YTdlOWMyODli MDQ5YzcxZjZlZTYwNGNkCi0rCi0rS0RGID0gS1JCNUtERgotK0N0cmwuY2lwaGVyID0gY2lwaGVy OkRFUy1FREUzLUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjVlMTNkMzFjNzBlZjc2NTc0NjU3 ODUzMWNiNTFjMTViZjExY2E4MmM5N2NlZTlmMgotK0N0cmwuaGV4Y29uc3RhbnQgPSBoZXhjb25z dGFudDowMDAwMDAwMWFhCi0rT3V0cHV0ID0gOWU1OGU1YTE0NmQ5OTQyYTEwMWM0Njk4NDVkNjdh MjBlM2M0MjU5ZWQ5MTNmMjA3Ci0rCi0rS0RGID0gS1JCNUtERgotK0N0cmwuY2lwaGVyID0gY2lw aGVyOkRFUy1FREUzLUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5Ojk4ZTZmZDhhMDRhNGI2ODU5 Yjc1YTE3NjU0MGI5NzUyYmFkM2VjZDYxMGEyNTJiYwotK0N0cmwuaGV4Y29uc3RhbnQgPSBoZXhj b25zdGFudDowMDAwMDAwMTU1Ci0rT3V0cHV0ID0gMTNmZWY4MGQ3NjNlOTRlYzZkMTNmZDJjYTFk MDg1MDcwMjQ5ZGFkMzk4MDhlYWJmCi0rCi0rS0RGID0gS1JCNUtERgotK0N0cmwuY2lwaGVyID0g Y2lwaGVyOkRFUy1FREUzLUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjYyMmFlYzI1YTJmZTJj YWQ3MDk0NjgwYjdjNjQ5NDAyODAwODRjMWE3Y2VjOTJiNQotK0N0cmwuaGV4Y29uc3RhbnQgPSBo ZXhjb25zdGFudDowMDAwMDAwMWFhCi0rT3V0cHV0ID0gZjhkZmJmMDRiMDk3ZTZkOWRjMDcwMjY4 NmJjYjM0ODlkOTFmZDlhNDUxNmI3MDNlCi0rCi0rS0RGID0gS1JCNUtERgotK0N0cmwuY2lwaGVy ID0gY2lwaGVyOkRFUy1FREUzLUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OmQzZjgyOThjY2Ix NjY0MzhkY2I5YjkzZWU1YTc2MjkyODZhNDkxZjgzOGY4MDJmYgotK0N0cmwuaGV4Y29uc3RhbnQg PSBoZXhjb25zdGFudDo2YjY1NzI2MjY1NzI2ZjczCi0rT3V0cHV0ID0gMjM3MGRhNTc1ZDJhM2Rh ODY0Y2ViZmRjNTIwNGQ1NmRmNzc5YTdkZjQzZDlkYTQzCi0rCi0rS0RGID0gS1JCNUtERgotK0N0 cmwuY2lwaGVyID0gY2lwaGVyOkRFUy1FREUzLUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OmMx MDgxNjQ5YWRhNzQzNjJlNmExNDU5ZDAxZGZkMzBkNjdjMjIzNGM5NDA3MDRkYQotK0N0cmwuaGV4 Y29uc3RhbnQgPSBoZXhjb25zdGFudDowMDAwMDAwMTU1Ci0rT3V0cHV0ID0gMzQ4MDU3ZWM5OGZk YzQ4MDE2MTYxYzJhNGM3YTk0M2U5MmFlNDkyYzk4OTE3NWY3Ci0rCi0rS0RGID0gS1JCNUtERgot K0N0cmwuY2lwaGVyID0gY2lwaGVyOkRFUy1FREUzLUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5 OjVkMTU0YWYyMzhmNDY3MTMxNTU3MTlkNTVlMmYxZjc5MGRkNjYxZjI3OWE3OTE3YwotK0N0cmwu aGV4Y29uc3RhbnQgPSBoZXhjb25zdGFudDowMDAwMDAwMWFhCi0rT3V0cHV0ID0gYTg4MDhhYzI2 N2RhZGEzZGNiZTlhN2M4NDYyNmZiYzc2MWMyOTRiMDEzMTVlNWMxCi0rCi0rS0RGID0gS1JCNUtE RgotK0N0cmwuY2lwaGVyID0gY2lwaGVyOkRFUy1FREUzLUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5Ojc5ODU2MmUwNDk4NTJmNTdkYzhjMzQzYmExN2YyY2ExZDk3Mzk0ZWZjOGFkYzQ0MwotK0N0 cmwuaGV4Y29uc3RhbnQgPSBoZXhjb25zdGFudDowMDAwMDAwMTU1Ci0rT3V0cHV0ID0gYzgxM2Y4 OGEzYmUzYjMzNGY3NTQyNWNlOTE3NWZiZTNjODQ5M2I4OWM4NzAzYjQ5Ci0rCi0rS0RGID0gS1JC NUtERgotK0N0cmwuY2lwaGVyID0gY2lwaGVyOkRFUy1FREUzLUNCQwotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjI2ZGNlMzM0YjU0NTI5MmYyZmVhYjlhODcwMWE4OWE0Yjk5ZWI5OTQyY2VjZDAxNgot K0N0cmwuaGV4Y29uc3RhbnQgPSBoZXhjb25zdGFudDowMDAwMDAwMWFhCi0rT3V0cHV0ID0gZjQ4 ZmZkNmU4M2Y4M2U3MzU0ZTY5NGZkMjUyY2Y4M2JmZTU4ZjdkNWJhMzdlYzVkCi0rCi0rI0tyYjUg c291cmNlcwotK0tERiA9IEtSQjVLREYKLStDdHJsLmNpcGhlciA9IGNpcGhlcjpERVMtRURFMy1D QkMKLStDdHJsLmhleGtleSA9IGhleGtleTo4NTBCQjUxMzU4NTQ4Q0QwNUU4Njc2OEMzMTNFM0JG RUY3NTExOTM3RENGNzJDM0UKLStDdHJsLmhleGNvbnN0YW50ID0gaGV4Y29uc3RhbnQ6MDAwMDAw MDI5OQotK091dHB1dCA9IEY3OEM0OTZEMTZFNkMyREFFMEUwQjZDMjQwNTdBODRDMDQyNkFFRUYy NkZENkRDRQotKwotK0tERiA9IEtSQjVLREYKLStDdHJsLmNpcGhlciA9IGNpcGhlcjpERVMtRURF My1DQkMKLStDdHJsLmhleGtleSA9IGhleGtleTo4NTBCQjUxMzU4NTQ4Q0QwNUU4Njc2OEMzMTNF M0JGRUY3NTExOTM3RENGNzJDM0UKLStDdHJsLmhleGNvbnN0YW50ID0gaGV4Y29uc3RhbnQ6MDAw MDAwMDJBQQotK091dHB1dCA9IDVCNTcyM0QwQjYzNENCNjg0QzNFQkE1MjY0RTlBNzBENTJFNjgz MjMxQUQzQzRDRQotKwotK0tERiA9IEtSQjVLREYKLStDdHJsLmNpcGhlciA9IGNpcGhlcjpERVMt RURFMy1DQkMKLStDdHJsLmhleGtleSA9IGhleGtleTo4NTBCQjUxMzU4NTQ4Q0QwNUU4Njc2OEMz MTNFM0JGRUY3NTExOTM3RENGNzJDM0UKLStDdHJsLmhleGNvbnN0YW50ID0gaGV4Y29uc3RhbnQ6 MDAwMDAwMDI1NQotK091dHB1dCA9IEE3N0M5NDk4MEU5QjczNDVBODE1MjVDNDIzQTczN0NFNjdG NENEOTFCNkIzREE0NQotKwotK0tERiA9IEtSQjVLREYKLStDdHJsLmNpcGhlciA9IGNpcGhlcjpB RVMtMTI4LUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjQyMjYzQzZFODlGNEZDMjhCOERGNjhF RTA5Nzk5RjE1Ci0rQ3RybC5oZXhjb25zdGFudCA9IGhleGNvbnN0YW50OjAwMDAwMDAyOTkKLStP dXRwdXQgPSAzNDI4MEEzODJCQzkyNzY5QjJEQTJGOUVGMDY2ODU0QgotKwotK0tERiA9IEtSQjVL REYKLStDdHJsLmNpcGhlciA9IGNpcGhlcjpBRVMtMTI4LUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjQyMjYzQzZFODlGNEZDMjhCOERGNjhFRTA5Nzk5RjE1Ci0rQ3RybC5oZXhjb25zdGFudCA9 IGhleGNvbnN0YW50OjAwMDAwMDAyQUEKLStPdXRwdXQgPSA1QjE0RkM0RTI1MEUxNERERjlEQ0NG MUFGNjY3NEY1MwotKwotK0tERiA9IEtSQjVLREYKLStDdHJsLmNpcGhlciA9IGNpcGhlcjpBRVMt MTI4LUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjQyMjYzQzZFODlGNEZDMjhCOERGNjhFRTA5 Nzk5RjE1Ci0rQ3RybC5oZXhjb25zdGFudCA9IGhleGNvbnN0YW50OjAwMDAwMDAyNTUKLStPdXRw dXQgPSA0RUQzMTA2MzYyMTY4NEYwOUFFOEQ4OTk5MUFGM0U4RgotKwotK0tERiA9IEtSQjVLREYK LStDdHJsLmNpcGhlciA9IGNpcGhlcjpBRVMtMjU2LUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5 OkZFNjk3QjUyQkMwRDNDRTE0NDMyQkEwMzZBOTJFNjVCQkI1MjI4MDk5MEEyRkEyNzg4Mzk5OEQ3 MkFGMzAxNjEKLStDdHJsLmhleGNvbnN0YW50ID0gaGV4Y29uc3RhbnQ6MDAwMDAwMDI5OQotK091 dHB1dCA9IEJGQUIzODhCRENCMjM4RTlGOUM5OEQ2QTg3ODMwNEYwNEQzMEM4MjU1NjM3NUFDNTA3 QTdBODUyNzkwRjQ2NzQKLSsKLStLREYgPSBLUkI1S0RGCi0rQ3RybC5jaXBoZXIgPSBjaXBoZXI6 QUVTLTI1Ni1DQkMKLStDdHJsLmhleGtleSA9IGhleGtleTpGRTY5N0I1MkJDMEQzQ0UxNDQzMkJB MDM2QTkyRTY1QkJCNTIyODA5OTBBMkZBMjc4ODM5OThENzJBRjMwMTYxCi0rQ3RybC5oZXhjb25z dGFudCA9IGhleGNvbnN0YW50OjAwMDAwMDAyQUEKLStPdXRwdXQgPSBDN0NGRDlDRDc1RkU3OTNB NTg2QTU0MkQ4N0UwRDEzOTZGMTEzNEExMDRCQjFBOTE5MEI4QzkwQURBM0RERjM3Ci0rCi0rS0RG ID0gS1JCNUtERgotK0N0cmwuY2lwaGVyID0gY2lwaGVyOkFFUy0yNTYtQ0JDCi0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6RkU2OTdCNTJCQzBEM0NFMTQ0MzJCQTAzNkE5MkU2NUJCQjUyMjgwOTkwQTJG QTI3ODgzOTk4RDcyQUYzMDE2MQotK0N0cmwuaGV4Y29uc3RhbnQgPSBoZXhjb25zdGFudDowMDAw MDAwMjU1Ci0rT3V0cHV0ID0gOTcxNTFCNEM3Njk0NTA2M0UyRUIwNTI5REMwNjdEOTdEN0JCQTkw Nzc2RDgxMjZEOTFGMzRGMzEwMUFFQThCQQotKwotKyNTYW1lIGFzIHRoZSBmaXJzdCBidXQgd2l0 aCBubyAiZml4dXAiCi0rS0RGID0gS1JCNUtERgotK0N0cmwuY2lwaGVyID0gY2lwaGVyOkRFUy1F REUzLUNCQwotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OmRjZTA2YjFmNjRjODU3YTExYzNkYjU3YzUx ODk5YjJjYzE3OTEwMDhjZTk3M2I5MgotK0N0cmwuaGV4Y29uc3RhbnQgPSBoZXhjb25zdGFudDow MDAwMDAwMTU1Ci0rT3V0cHV0ID0gOTM1MDc5ZDE0NDkwYTc1YzMwOTNjNGE2ZThjM2IwNDljNzFl NmVlNzA1Ci0rCi0rI1RoZXJlIGFyZSBjdXJyZW50bHkgbm8gb2ZmaWNpYWwgdGVzdCB2ZWN0b3Jz IGZvciBTaW5nbGUgU3RlcCBLREYKLSsjaHR0cHM6Ly9naXRodWIuY29tL3BhdHJpY2tmYXYvc2lu Z2xlc3RlcC1rZGYvd2lraS9OSVNULVNQLTgwMC01NkMtUmV2MTotTm9uLU9mZmljaWFsLVRlc3Qt VmVjdG9ycwotK1RpdGxlID0gU2luZ2xlIFN0ZXAgS0RGIHRlc3RzCi0rCi0rS0RGID0gU1NLREYK LStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6 ZDA5YTZiMWE0NzJmOTMwZGI0ZjVlNmI5Njc5MDA3NDQKLStDdHJsLmhleGluZm8gPSBoZXhpbmZv OmIxMTcyNTVhYjVmMWI2Yjk2ZmM0MzRiMAotK091dHB1dCA9IGI1YTNjNTJlOTdhZTZlOGM1MDY5 OTU0MzU0ZWFiM2M3Ci0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEEx Ci0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6MzQzNjY2YzBkZDM0Yjc1NmU3MGY3NTlmMTRj MzA0ZjUKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOjcyMmIyODQ0OGQ3ZWFiODU0OTFiY2UwOQot K091dHB1dCA9IDEwMDNiNjUwZGRkM2YwODkxYTE1MTY2ZGI1ZWM4ODFkCi0rCi0rS0RGID0gU1NL REYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNy ZXQ6Yjg0YWNmMDNhYjA4NjUyZGQ3ZjgyZmE5NTY5MzMyNjEKLStDdHJsLmhleGluZm8gPSBoZXhp bmZvOjNkODc3M2VjMDY4Yzg2MDUzYTkxODU2NQotK091dHB1dCA9IDE2MzVkY2QxY2U2OThmNzM2 ODMxYjRiYWRiNjhhYjJiCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpT SEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6OGNjMjRjYTNmMWQxYThiMzQ3ODM3ODBi Nzk4OTA0MzAKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOmYwOGQ0ZjJkOWE4ZTZkNzEwNWMwYmMx NgotK091dHB1dCA9IGI4ZTcxNmZiODRhNDIwYWVkNDgxMmNkNzZkOTcwMGVlCi0rCi0rS0RGID0g U1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhz ZWNyZXQ6YjYxNjkwNWE2Zjc1NjJjZDI2ODkxNDJjZTIxZTQyYTMKLStDdHJsLmhleGluZm8gPSBo ZXhpbmZvOmVhZDMxMDE1OWE5MDlkYTg3ZTdiNGI0MAotK091dHB1dCA9IDFiOTIwMTM1OGM1MGZl NWQ1ZDQyOTA3YzRhOWZjZTc4Ci0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2Vz dDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6M2Y1N2ZkM2ZkNTYxOTliM2ViMzM4 OTBmN2VlMjgxODAKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOjdhNTA1NmJhNGZkYjAzNGM3Y2I2 YzRmZQotK091dHB1dCA9IGU1MWViZDMwYThjNGI4NDQ5YjBmYjI5ZDlhZGMxMWFmCi0rCi0rS0RG ID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBo ZXhzZWNyZXQ6ZmI5ZmIxMDhkMTA0ZTlmNjYyZDY1OTNmYzg0Y2RlNjkKLStDdHJsLmhleGluZm8g PSBoZXhpbmZvOjVmYWYyOTIxMWMxYmRiZjFiMjY5NmE3YwotK091dHB1dCA9IDdhM2E3ZTY3MDY1 NmU0OGMzOTBjZGQ3YzUxZTE2N2UwCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRp Z2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6MjM3YTM5OTgxNzk0ZjQ1MTZk Y2NmZmMzZGRhMjgzOTYKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOjYyZWQ5NTI4ZDEwNGMyNDFl MGY2NjI3NQotK091dHB1dCA9IDBjMjZmYzllOTBlMWM1YzVmOTQzNDI4MzAxNjgyMDQ1Ci0rCi0r S0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQg PSBoZXhzZWNyZXQ6YjliNmM0NWY3Mjc5MjE4ZmEwOTg5NGUwNjM2NmEzYTEKLStDdHJsLmhleGlu Zm8gPSBoZXhpbmZvOjBmMzg0MzM5NjcwYWFlZDRiODllY2I3ZQotK091dHB1dCA9IGVlNWZhZDQx NGUzMmZhZDVkNTJhMmJmNjFhN2Y2YzcyCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9 IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6MDhiNzE0MGUyY2QwYTRh YmQ3OTE3MWU0ZDVhNzFjYWQKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOjA5OTIxMWYwZDhhMmUw MmRiYjU5NThjMAotK091dHB1dCA9IDYxNjJmNTE0MmUwNTdlZmFmZDJjNGYyYmFkNTk4NWExCi0r Ci0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNy ZXQgPSBoZXhzZWNyZXQ6ZWJlMjhlZGJhZTVhNDEwYjg3YTQ3OTI0M2RiM2Y2OTAKLStDdHJsLmhl eGluZm8gPSBoZXhpbmZvOmU2MGRkOGIyODIyOGNlNWI5YmU3NGQzYgotK091dHB1dCA9IGI0YTIK LSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNl Y3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwu aGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRh MjM5NjMKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJs LmhleHNlY3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAot K0N0cmwuaGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0 ID0gYjRhMjM5NjNlMDdmCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpT SEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6ZWJlMjhlZGJhZTVhNDEwYjg3YTQ3OTI0 M2RiM2Y2OTAKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOmU2MGRkOGIyODIyOGNlNWI5YmU3NGQz YgotK091dHB1dCA9IGI0YTIzOTYzZTA3ZjQ4NTMKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGln ZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFl NWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4 MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2IKLSsKLStLREYg PSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhl eHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9 IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdm NDg1MzgyY2IzNThhCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEEx Ci0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6ZWJlMjhlZGJhZTVhNDEwYjg3YTQ3OTI0M2Ri M2Y2OTAKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOmU2MGRkOGIyODIyOGNlNWI5YmU3NGQzYgot K091dHB1dCA9IGI0YTIzOTYzZTA3ZjQ4NTM4MmNiMzU4YTQ5M2QKLSsKLStLREYgPSBTU0tERgot K0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDpl YmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86 ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2Iz NThhNDkzZGFlYzEKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEK LStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIz ZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0r T3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3NTlhCi0rCi0rS0RGID0g U1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhz ZWNyZXQ6ZWJlMjhlZGJhZTVhNDEwYjg3YTQ3OTI0M2RiM2Y2OTAKLStDdHJsLmhleGluZm8gPSBo ZXhpbmZvOmU2MGRkOGIyODIyOGNlNWI5YmU3NGQzYgotK091dHB1dCA9IGI0YTIzOTYzZTA3ZjQ4 NTM4MmNiMzU4YTQ5M2RhZWMxNzU5YWM3MDQKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0 ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0 MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4 Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3 NTlhYzcwNDNkYmUKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEK LStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIz ZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0r T3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3 Ci0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhz ZWNyZXQgPSBoZXhzZWNyZXQ6ZWJlMjhlZGJhZTVhNDEwYjg3YTQ3OTI0M2RiM2Y2OTAKLStDdHJs LmhleGluZm8gPSBoZXhpbmZvOmU2MGRkOGIyODIyOGNlNWI5YmU3NGQzYgotK091dHB1dCA9IGI0 YTIzOTYzZTA3ZjQ4NTM4MmNiMzU4YTQ5M2RhZWMxNzU5YWM3MDQzZGJlYWMzNzE1MmMKLSsKLStL REYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9 IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5m byA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNl MDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYKLSsKLStLREYg PSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhl eHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9 IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdm NDg1MzgyY2IzNThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwCi0rCi0rS0RG ID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBo ZXhzZWNyZXQ6ZWJlMjhlZGJhZTVhNDEwYjg3YTQ3OTI0M2RiM2Y2OTAKLStDdHJsLmhleGluZm8g PSBoZXhpbmZvOmU2MGRkOGIyODIyOGNlNWI5YmU3NGQzYgotK091dHB1dCA9IGI0YTIzOTYzZTA3 ZjQ4NTM4MmNiMzU4YTQ5M2RhZWMxNzU5YWM3MDQzZGJlYWMzNzE1MmM2ZGRmMTA1MDMxZjAKLSsK LStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3Jl dCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4 aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5 NjNlMDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwMzFm MGYyMzkKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJs LmhleHNlY3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAot K0N0cmwuaGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0 ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZk ZGYxMDUwMzFmMGYyMzlmMjcwCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2Vz dDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6ZWJlMjhlZGJhZTVhNDEwYjg3YTQ3 OTI0M2RiM2Y2OTAKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOmU2MGRkOGIyODIyOGNlNWI5YmU3 NGQzYgotK091dHB1dCA9IGI0YTIzOTYzZTA3ZjQ4NTM4MmNiMzU4YTQ5M2RhZWMxNzU5YWM3MDQz ZGJlYWMzNzE1MmM2ZGRmMTA1MDMxZjBmMjM5ZjI3MGI3ZjMKLSsKLStLREYgPSBTU0tERgotK0N0 cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDplYmUy OGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86ZTYw ZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2IzNThh NDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwMzFmMGYyMzlmMjcwYjdmMzA2MTYK LSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNl Y3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwu aGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRh MjM5NjNlMDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUw MzFmMGYyMzlmMjcwYjdmMzA2MTYxNjZmCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9 IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6ZWJlMjhlZGJhZTVhNDEw Yjg3YTQ3OTI0M2RiM2Y2OTAKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOmU2MGRkOGIyODIyOGNl NWI5YmU3NGQzYgotK091dHB1dCA9IGI0YTIzOTYzZTA3ZjQ4NTM4MmNiMzU4YTQ5M2RhZWMxNzU5 YWM3MDQzZGJlYWMzNzE1MmM2ZGRmMTA1MDMxZjBmMjM5ZjI3MGI3ZjMwNjE2MTY2ZjEwZTUKLSsK LStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3Jl dCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4 aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5 NjNlMDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwMzFm MGYyMzlmMjcwYjdmMzA2MTYxNjZmMTBlNWQyYjQKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGln ZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFl NWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4 MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2IzNThhNDkzZGFl YzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwMzFmMGYyMzlmMjcwYjdmMzA2MTYxNjZmMTBl NWQyYjRjYjExCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0r Q3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6ZWJlMjhlZGJhZTVhNDEwYjg3YTQ3OTI0M2RiM2Y2 OTAKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOmU2MGRkOGIyODIyOGNlNWI5YmU3NGQzYgotK091 dHB1dCA9IGI0YTIzOTYzZTA3ZjQ4NTM4MmNiMzU4YTQ5M2RhZWMxNzU5YWM3MDQzZGJlYWMzNzE1 MmM2ZGRmMTA1MDMxZjBmMjM5ZjI3MGI3ZjMwNjE2MTY2ZjEwZTVkMmI0Y2IxMWJhOGIKLSsKLStL REYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9 IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5m byA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNl MDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwMzFmMGYy MzlmMjcwYjdmMzA2MTYxNjZmMTBlNWQyYjRjYjExYmE4YmY0YmEKLSsKLStLREYgPSBTU0tERgot K0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDpl YmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86 ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2Iz NThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwMzFmMGYyMzlmMjcwYjdmMzA2 MTYxNjZmMTBlNWQyYjRjYjExYmE4YmY0YmEzZjIyCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRp Z2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6ZWJlMjhlZGJh ZTVhNDEwYjg3YTQ3OTI0M2RiM2Y2OTAKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOmU2MGRkOGIy ODIyOGNlNWI5YmU3NGQzYgotK091dHB1dCA9IGI0YTIzOTYzZTA3ZjQ4NTM4MmNiMzU4YTQ5M2Rh ZWMxNzU5YWM3MDQzZGJlYWMzNzE1MmM2ZGRmMTA1MDMxZjBmMjM5ZjI3MGI3ZjMwNjE2MTY2ZjEw ZTVkMmI0Y2IxMWJhOGJmNGJhM2YyMjc2ODgKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0 ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0 MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4 Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3 NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwMzFmMGYyMzlmMjcwYjdmMzA2MTYxNjZmMTBlNWQy YjRjYjExYmE4YmY0YmEzZjIyNzY4ODVhYmYKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0 ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDplYmUyOGVkYmFlNWE0 MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86ZTYwZGQ4YjI4MjI4 Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3 NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwMzFmMGYyMzlmMjcwYjdmMzA2MTYxNjZmMTBlNWQy YjRjYjExYmE4YmY0YmEzZjIyNzY4ODVhYmZiYzNlCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRp Z2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6ZWJlMjhlZGJh ZTVhNDEwYjg3YTQ3OTI0M2RiM2Y2OTAKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOmU2MGRkOGIy ODIyOGNlNWI5YmU3NGQzYgotK091dHB1dCA9IGI0YTIzOTYzZTA3ZjQ4NTM4MmNiMzU4YTQ5M2Rh ZWMxNzU5YWM3MDQzZGJlYWMzNzE1MmM2ZGRmMTA1MDMxZjBmMjM5ZjI3MGI3ZjMwNjE2MTY2ZjEw ZTVkMmI0Y2IxMWJhOGJmNGJhM2YyMjc2ODg1YWJmYmMzZTgxMWEKLSsKLStLREYgPSBTU0tERgot K0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDpl YmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86 ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNlMDdmNDg1MzgyY2Iz NThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwMzFmMGYyMzlmMjcwYjdmMzA2 MTYxNjZmMTBlNWQyYjRjYjExYmE4YmY0YmEzZjIyNzY4ODVhYmZiYzNlODExYTU2OGQKLSsKLStL REYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9 IGhleHNlY3JldDplYmUyOGVkYmFlNWE0MTBiODdhNDc5MjQzZGIzZjY5MAotK0N0cmwuaGV4aW5m byA9IGhleGluZm86ZTYwZGQ4YjI4MjI4Y2U1YjliZTc0ZDNiCi0rT3V0cHV0ID0gYjRhMjM5NjNl MDdmNDg1MzgyY2IzNThhNDkzZGFlYzE3NTlhYzcwNDNkYmVhYzM3MTUyYzZkZGYxMDUwMzFmMGYy MzlmMjcwYjdmMzA2MTYxNjZmMTBlNWQyYjRjYjExYmE4YmY0YmEzZjIyNzY4ODVhYmZiYzNlODEx YTU2OGQ0ODBkCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0r Q3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6ZWJlMjhlZGJhZTVhNDEwYjg3YTQ3OTI0M2RiM2Y2 OTAKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOmU2MGRkOGIyODIyOGNlNWI5YmU3NGQzYgotK091 dHB1dCA9IGI0YTIzOTYzZTA3ZjQ4NTM4MmNiMzU4YTQ5M2RhZWMxNzU5YWM3MDQzZGJlYWMzNzE1 MmM2ZGRmMTA1MDMxZjBmMjM5ZjI3MGI3ZjMwNjE2MTY2ZjEwZTVkMmI0Y2IxMWJhOGJmNGJhM2Yy Mjc2ODg1YWJmYmMzZTgxMWE1NjhkNDgwZDkxOTIKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGln ZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDpkN2U2Ci0rQ3Ry bC5oZXhpbmZvID0gaGV4aW5mbzowYmJlMWZhODcyMjAyM2Q3YzNkYTRmZmYKLStPdXRwdXQgPSAz MWU3OThlOTkzMWI2MTJhM2FkMWI5YjEwMDhmYWE4YwotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5k aWdlc3QgPSBkaWdlc3Q6U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OjQ2NDY3Nzlk Ci0rQ3RybC5oZXhpbmZvID0gaGV4aW5mbzowYmJlMWZhODcyMjAyM2Q3YzNkYTRmZmYKLStPdXRw dXQgPSAxMzlmNjhiY2NhODc5YjQ5MGUyNjhlNTY5MDg3ZDA0ZAotKwotK0tERiA9IFNTS0RGCi0r Q3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OmQ5 ODExYzgxZDRjNgotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86MGJiZTFmYTg3MjIwMjNkN2MzZGE0 ZmZmCi0rT3V0cHV0ID0gOTE0ZGM0ZjA5Y2I2MzNhNzZlNmMzODllMDRjNjQ0ODUKLSsKLStLREYg PSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhl eHNlY3JldDo4ODM4ZjlkOTllYzQ2ZjA5Ci0rQ3RybC5oZXhpbmZvID0gaGV4aW5mbzowYmJlMWZh ODcyMjAyM2Q3YzNkYTRmZmYKLStPdXRwdXQgPSA0ZjA3ZGZiNmY3YTViZjM0ODY4OWUwOGIyZTI5 Yzk0OAotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotK0N0cmwu aGV4c2VjcmV0ID0gaGV4c2VjcmV0OjNlMDkzOWIzM2YzNGU3NzlmMzBlCi0rQ3RybC5oZXhpbmZv ID0gaGV4aW5mbzowYmJlMWZhODcyMjAyM2Q3YzNkYTRmZmYKLStPdXRwdXQgPSBiNDJjN2E5OGMy M2JlMTlkMTE4N2ZmOTYwZTg3NTU3ZgotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5kaWdlc3QgPSBk aWdlc3Q6U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OmYzNjIzMGNhY2NhNGQyNDVk MzAzMDU4YwotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86MGJiZTFmYTg3MjIwMjNkN2MzZGE0ZmZm Ci0rT3V0cHV0ID0gNTBmMjA2OGQ4MDEwZDM1NWQ1NmM1ZTM0YWFmZmJjNjcKLSsKLStLREYgPSBT U0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNl Y3JldDo3MDA1ZDMyYzNkNDI4NGM3M2MzYWVmYzcwNDM4Ci0rQ3RybC5oZXhpbmZvID0gaGV4aW5m bzowYmJlMWZhODcyMjAyM2Q3YzNkYTRmZmYKLStPdXRwdXQgPSA2NmZkNzEyY2NmNTQ2MmJiZDQx ZTg5MDQxZWE3ZWEyNgotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hB MQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OmMwMWM4MzE1MGI3NzM0ZjhkYmQ2ZWZkNmY1 NGQ3MzY1Ci0rQ3RybC5oZXhpbmZvID0gaGV4aW5mbzowYmJlMWZhODcyMjAyM2Q3YzNkYTRmZmYK LStPdXRwdXQgPSA1YzVlZGIwY2VkYTljZDBjN2YxZjNkOWUyMzljNjdkNQotKwotK0tERiA9IFNT S0RGCi0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2Vj cmV0OmRhNjlmMWRiYmViYzgzNzQ4MGFmNjkyZTdlOWVlNmI5Ci0rQ3RybC5oZXhpbmZvID0gaGV4 aW5mbzo5OTQ5Ci0rT3V0cHV0ID0gMzNjODNmNTRlZDAwZmIxYmNjZDIxMTNlODg1NTA5NDEKLSsK LStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3Jl dCA9IGhleHNlY3JldDpkYTY5ZjFkYmJlYmM4Mzc0ODBhZjY5MmU3ZTllZTZiOQotK0N0cmwuaGV4 aW5mbyA9IGhleGluZm86MTcxNDRkYTYKLStPdXRwdXQgPSBhOTk5YzI4OTYxNDI0Y2FiMzVlYzA2 MDE1ZThjMzc2YQotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQot K0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OmRhNjlmMWRiYmViYzgzNzQ4MGFmNjkyZTdlOWVl NmI5Ci0rQ3RybC5oZXhpbmZvID0gaGV4aW5mbzpkZmZkZWUxMDYyZWIKLStPdXRwdXQgPSA0MTAx YWQ1MGU2MjZlZDZmOTU3YmZmOTI2ZGZiYjdkYgotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5kaWdl c3QgPSBkaWdlc3Q6U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OmRhNjlmMWRiYmVi YzgzNzQ4MGFmNjkyZTdlOWVlNmI5Ci0rQ3RybC5oZXhpbmZvID0gaGV4aW5mbzo5ZjM2NTA0M2Uy M2I0NjQ4Ci0rT3V0cHV0ID0gNGQzZTRiOTcxYjg4NzcxZjIyOWRmOWY1NjQ5ODQ4MzIKLSsKLStL REYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9 IGhleHNlY3JldDpkYTY5ZjFkYmJlYmM4Mzc0ODBhZjY5MmU3ZTllZTZiOQotK0N0cmwuaGV4aW5m byA9IGhleGluZm86YTg4NWEwYzQ1NjdkZGM0Zjk2ZGEKLStPdXRwdXQgPSBiZWJiYzMwZjVhODNk ZjVlOWM5YjU3ZGIzM2MwYzg3OQotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5kaWdlc3QgPSBkaWdl c3Q6U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OmRhNjlmMWRiYmViYzgzNzQ4MGFm NjkyZTdlOWVlNmI5Ci0rQ3RybC5oZXhpbmZvID0gaGV4aW5mbzpjOWQ4NjE4MzI5NWJmZTRjM2Q4 NWYwZmQKLStPdXRwdXQgPSA4N2M5NDdlNDU0MDdkYjYzZWI5NGNiYWEwMmQxNGU5NAotKwotK0tE RiA9IFNTS0RGCi0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0g aGV4c2VjcmV0OmRhNjlmMWRiYmViYzgzNzQ4MGFmNjkyZTdlOWVlNmI5Ci0rQ3RybC5oZXhpbmZv ID0gaGV4aW5mbzo4MjVmYWRjZTQ2OTY0MjM2YTQ4NjczMmM1ZGFkCi0rT3V0cHV0ID0gMTkyMzcw YTg1ZmY3OGUzYzAyNDUxMjlkOWIzOTg1NTgKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0 ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDpkYTY5ZjFkYmJlYmM4 Mzc0ODBhZjY5MmU3ZTllZTZiOQotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86NWMwYjVlYjNhYzlm MzQyMzQ3ZDczZDdhNTIxNzIzYWEKLStPdXRwdXQgPSBjN2I3NjM0ZmQ4MDkzODNlODdjNGIxYjNl NzI4YmU1NgotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotK0N0 cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OjhkN2E0ZTdkNWNmMzRiM2Y3NDg3M2I4NjJhZWIzM2I3 Ci0rT3V0cHV0ID0gNmE1NTk0ZjQwMmY3NGY2OQotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5kaWdl c3QgPSBkaWdlc3Q6U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OjliMjA4ZTdlZTFl NjQxZmFjMWRmZjQ4ZmMxYmViMmQyCi0rT3V0cHV0ID0gNTU2ZWQ2N2UyNGFjMGM3YzQ2Y2M0MzJk YThiZGIyM2MKLSsKLStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStD dHJsLmhleHNlY3JldCA9IGhleHNlY3JldDo0ZDI1NzI1MzlmZWQ0MzMyMTFkYTI4YzhhMGVlYmFj MwotK091dHB1dCA9IDVhNDA1NGM1OWM1YjkyODE0MDI1NTc4ZjQzYzFiNzlmZTg0OTY4ZmMyODRl MjQwYgotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotK0N0cmwu aGV4c2VjcmV0ID0gaGV4c2VjcmV0OjRlMWU3MGM5ODg2ODE5YTMxYmMyOWE1Mzc5MTFhZGQ5Ci0r T3V0cHV0ID0gZGRiZmM0NDA0NDlhYWI0MTMxYzZkOGFlYzA4Y2UxNDk2ZjI3MDIyNDFkMGUyN2Nj MTU1YzVjN2MzY2RhNzViNQotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5kaWdlc3QgPSBkaWdlc3Q6 U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OjY4ZjE0NGM5NTI1MjhlNTQwYzY4NmRj MzUzYjc2NmYyCi0rT3V0cHV0ID0gNTllZDY2YmI2ZjU0YTk2ODhhMGI4OTFkMGIyZWE2NzQzNjIx ZDllMWI1Y2MwOThjZjNhNTVlNmY4NjRmOWFmOGE5NWU0ZDk0NWQyZjk4N2YKLSsKLStLREYgPSBT U0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTEKLStDdHJsLmhleHNlY3JldCA9IGhleHNl Y3JldDpiNjZjOWQ1MDdjOWY4MzdmYmU2MGI2Njc1ZmRiZjM4YgotK091dHB1dCA9IGMyODI3ODdk ZGY0MjFhNzJmYzg4ODExYmU4MWIwOGQwZDZhYjY2YzkyZDEwMTE5NzRhYTU4MzM1YTZiYmJkNjJl OWU5ODJiZmFlNTkyOTg2NWVhMWQ1MTcyNDcwODlkMgotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5k aWdlc3QgPSBkaWdlc3Q6U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OjM0ZTczMGI0 OWU0NmM3ZWQyZmIyNTk3NWE0Y2NjZDJkCi0rT3V0cHV0ID0gMzllNzZlNjU3MWNiMDA3NDAyNjBi OTA3MGFjY2JkY2M0YTQ5MmMyOTVjYmVmMzNkOWUzN2RhYzIxZTVlOWQwN2UwZjEyZGM3MDYzZDIx NzI2NDE0NzVkNGUwOGI4ZTM3MTJmYjI2YTEwYzgzNzZiOAotKwotK0tERiA9IFNTS0RGCi0rQ3Ry bC5kaWdlc3QgPSBkaWdlc3Q6U0hBMQotK0N0cmwuaGV4c2VjcmV0ID0gaGV4c2VjcmV0OmUzNDBk ODdlMmQ3YWRiYzFiOTVlYzJkYmRjM2I4MmJlCi0rT3V0cHV0ID0gYTY2MGMwMDM3YTUzZjc2ZjFl NzY2NzA0M2Y1ODY5MzQ4YWQwN2FjMGUyNzJlNjE1Y2UzMWYxNmQ0YWI5MGQ0YjM1ZmU1YzM3MGMw MDEwY2U3OWFmZjQ1NjgyYzZmYjhiOTdmOWEwNWI3ZDQwYjVhZjNjNjI5OTlhMTBkZjljNmQKLSsK LStLREYgPSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTI1NgotK0N0cmwuaGV4c2Vj cmV0ID0gaGV4c2VjcmV0OmFmYzRlMTU0NDk4ZDQ3NzBhYTgzNjVmNjkwM2RjODNiCi0rQ3RybC5o ZXhpbmZvID0gaGV4aW5mbzo2NjJhZjIwMzc5YjI5ZDVlZjgxM2U2NTUKLStPdXRwdXQgPSBmMGI4 MGQ2YWU0YzFlMTllMjEwNWEzNzAyNGUzNWRjNgotKwotKwotK0tERiA9IFNTS0RGCi0rQ3RybC5k aWdlc3QgPSBkaWdlc3Q6U0hBNTEyCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6MTA4Y2Y2 MzMxODU1NWM3ODdmYTU3ODczMWRkNGYwMzcKLStDdHJsLmhleGluZm8gPSBoZXhpbmZvOjUzMTkx YjFkZDNmOTRkODMwODRkNjFkNgotK091dHB1dCA9IDBhZDQ3NWMxODI2ZGEzMDA3NjM3OTcwYzhi OTJiOTkzCi0rCi0rVGl0bGUgPSBTU0tERiBUZXN0IHZlY3RvcnMgZnJvbSBSRkMgODYzNiBTZWN0 aW9uIDggKFdpdGggcHJlY291bXB1dGVkIEFTTi4xIGluZm8pCi0rCi0rS0RGID0gU1NLREYKLStD dHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEExCi0rQ3RybC5oZXhzZWNyZXQgPSBoZXhzZWNyZXQ6MDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLStD dHJsLmhleGluZm8gPSBoZXhpbmZvOjMwN2UzMDBhMDYwODJiMDYwMTA1MDIwMzA2MDFhMDFmMDQx ZDMwMWJhMDA3MWIwNTUzNTUyZTUzNDVhMTEwMzAwZWEwMDMwMjAxMDFhMTA3MzAwNTFiMDM2YzY4 NjFhMTI5MDQyNzMwMjVhMDA3MWIwNTUzNTUyZTUzNDVhMTFhMzAxOGEwMDMwMjAxMDFhMTExMzAw ZjFiMDY2YjcyNjI3NDY3NzQxYjA1NTM1NTJlNTM0NWEyMjQwNDIyMzAyMGEwMDMwMjAxMTJhMTBj MDQwYWFhYWFhYWFhYWFhYWFhYWFhYWFhYTIwYjA0MDliYmJiYmJiYmJiYmJiYmJiYmIKLStPdXRw dXQgPSBlNmFiMzhjOTQxM2UwMzViYjA3OTIwMWVkMGI2YjczZDhkNDlhODE0YTczN2MwNGVlNjY0 OTYxNDIwNmY3M2FkCi0rCi0rS0RGID0gU1NLREYKLStDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpTSEEy NTYKLStDdHJsLmhleHNlY3JldCA9IGhleHNlY3JldDowMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotK0N0cmwuaGV4aW5mbyA9IGhleGluZm86 MzA3ZTMwMGEwNjA4MmIwNjAxMDUwMjAzMDYwMmEwMWYwNDFkMzAxYmEwMDcxYjA1NTM1NTJlNTM0 NWExMTAzMDBlYTAwMzAyMDEwMWExMDczMDA1MWIwMzZjNjg2MWExMjkwNDI3MzAyNWEwMDcxYjA1 NTM1NTJlNTM0NWExMWEzMDE4YTAwMzAyMDEwMWExMTEzMDBmMWIwNjZiNzI2Mjc0Njc3NDFiMDU1 MzU1MmU1MzQ1YTIyNDA0MjIzMDIwYTAwMzAyMDExMmExMGMwNDBhYWFhYWFhYWFhYWFhYWFhYWFh YWFhMjBiMDQwOWJiYmJiYmJiYmJiYmJiYmJiYgotK091dHB1dCA9IDc3ZWY0ZTQ4YzQyMGFlM2Zl Yzc1MTA5ZDc5ODE2OTdlZWQ1ZDI5NWM5MGM2MjU2NGY3YmZkMTAxZmE5YmMxZDUKLSsKLStLREYg PSBTU0tERgotK0N0cmwuZGlnZXN0ID0gZGlnZXN0OlNIQTUxMgotK0N0cmwuaGV4c2VjcmV0ID0g aGV4c2VjcmV0OjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwCi0rQ3RybC5oZXhpbmZvID0gaGV4aW5mbzozMDdlMzAwYTA2MDgyYjA2MDEwNTAy MDMwNjAzYTAxZjA0MWQzMDFiYTAwNzFiMDU1MzU1MmU1MzQ1YTExMDMwMGVhMDAzMDIwMTAxYTEw NzMwMDUxYjAzNmM2ODYxYTEyOTA0MjczMDI1YTAwNzFiMDU1MzU1MmU1MzQ1YTExYTMwMThhMDAz MDIwMTAxYTExMTMwMGYxYjA2NmI3MjYyNzQ2Nzc0MWIwNTUzNTUyZTUzNDVhMjI0MDQyMjMwMjBh MDAzMDIwMTEwYTEwYzA0MGFhYWFhYWFhYWFhYWFhYWFhYWFhYWEyMGIwNDA5YmJiYmJiYmJiYmJi YmJiYmJiCi0rT3V0cHV0ID0gZDNjNzhiNzhkNzUzMTNlOWE5MjZmNzVkZmIwMTIzNjNmYTE3ZmEw MWRiCgpkaWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1tYW4tcmVuYW1lLnBhdGNoIGIvb3BlbnNz bC0xLjEuMS1tYW4tcmVuYW1lLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0 ZTUwNGI0Li4wMDAwMDAwCi0tLSBhL29wZW5zc2wtMS4xLjEtbWFuLXJlbmFtZS5wYXRjaAorKysg L2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjEtcHJlOS9k b2MvbWFuMS9vcGVuc3NsLnBvZC5tYW4tcmVuYW1lIG9wZW5zc2wtMS4xLjEtcHJlOS9kb2MvbWFu MS9vcGVuc3NsLnBvZAotLS0tIG9wZW5zc2wtMS4xLjEtcHJlOS9kb2MvbWFuMS9vcGVuc3NsLnBv ZC5tYW4tcmVuYW1lCTIwMTgtMDgtMjEgMTQ6MTQ6MTMuMDAwMDAwMDAwICswMjAwCi0rKysgb3Bl bnNzbC0xLjEuMS1wcmU5L2RvYy9tYW4xL29wZW5zc2wucG9kCTIwMTgtMDgtMjIgMTI6MTM6MDQu MDkyNTY4MDY0ICswMjAwCi1AQCAtNDgyLDEzICs0ODIsMTMgQEAgTDxkaHBhcmFtKDEpPiwgTDxk c2EoMSk+LCBMPGRzYXBhcmFtKDEpPgotIEw8ZWMoMSk+LCBMPGVjcGFyYW0oMSk+LAotIEw8ZW5j KDEpPiwgTDxlbmdpbmUoMSk+LCBMPGVycnN0cigxKT4sIEw8Z2VuZHNhKDEpPiwgTDxnZW5wa2V5 KDEpPiwKLSBMPGdlbnJzYSgxKT4sIEw8bnNlcSgxKT4sIEw8b2NzcCgxKT4sCi0tTDxwYXNzd2Qo MSk+LAotIEw8cGtjczEyKDEpPiwgTDxwa2NzNygxKT4sIEw8cGtjczgoMSk+LAotIEw8cGtleSgx KT4sIEw8cGtleXBhcmFtKDEpPiwgTDxwa2V5dXRsKDEpPiwgTDxwcmltZSgxKT4sCi0tTDxyYW5k KDEpPiwgTDxyZWhhc2goMSk+LCBMPHJlcSgxKT4sIEw8cnNhKDEpPiwKLStMPHJlaGFzaCgxKT4s IEw8cmVxKDEpPiwgTDxyc2EoMSk+LAotIEw8cnNhdXRsKDEpPiwgTDxzX2NsaWVudCgxKT4sCi0g TDxzX3NlcnZlcigxKT4sIEw8c190aW1lKDEpPiwgTDxzZXNzX2lkKDEpPiwKLSBMPHNtaW1lKDEp PiwgTDxzcGVlZCgxKT4sIEw8c3BrYWMoMSk+LCBMPHNycCgxKT4sIEw8c3RvcmV1dGwoMSk+LAot K0w8c3NscGFzc3dkKDEpPiwgTDxzc2xyYW5kKDEpPiwKLSBMPHRzKDEpPiwKLSBMPHZlcmlmeSgx KT4sIEw8dmVyc2lvbigxKT4sIEw8eDUwOSgxKT4sCi0gTDxjcnlwdG8oNyk+LCBMPHNzbCg3KT4s IEw8eDUwOXYzX2NvbmZpZyg1KT4KCmRpZmYgLS1naXQgYS9vcGVuc3NsLTEuMS4xLW5vLWJyYWlu cG9vbC5wYXRjaCBiL29wZW5zc2wtMS4xLjEtbm8tYnJhaW5wb29sLnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCA5MGM4N2E4Li4wMDAwMDAwCi0tLSBhL29wZW5zc2wtMS4xLjEt bm8tYnJhaW5wb29sLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTEyICswLDAgQEAKLWRpZmYg LXVwIG9wZW5zc2wtMS4xLjFkL3Rlc3Qvc3NsLXRlc3RzLzIwLWNlcnQtc2VsZWN0LmNvbmYuaW4u bm8tYnJhaW5wb29sIG9wZW5zc2wtMS4xLjFkL3Rlc3Qvc3NsLXRlc3RzLzIwLWNlcnQtc2VsZWN0 LmNvbmYuaW4KLS0tLSBvcGVuc3NsLTEuMS4xZC90ZXN0L3NzbC10ZXN0cy8yMC1jZXJ0LXNlbGVj dC5jb25mLmluLm5vLWJyYWlucG9vbAkyMDE5LTA5LTEwIDE1OjEzOjA3LjAwMDAwMDAwMCArMDIw MAotKysrIG9wZW5zc2wtMS4xLjFkL3Rlc3Qvc3NsLXRlc3RzLzIwLWNlcnQtc2VsZWN0LmNvbmYu aW4JMjAxOS0wOS0xMyAxNToxMTowNy4zNTg2ODcxNjkgKzAyMDAKLUBAIC0xNDcsMjIgKzE0Nywy MiBAQCBvdXIgQHRlc3RzID0gKAotICAgICB7Ci0gICAgICAgICBuYW1lID0+ICJFQ0RTQSB3aXRo IGJyYWlucG9vbCIsCi0gICAgICAgICBzZXJ2ZXIgPT4gIHsKLS0gICAgICAgICAgICAiQ2VydGlm aWNhdGUiID0+IHRlc3RfcGVtKCJzZXJ2ZXItZWNkc2EtYnJhaW5wb29sUDI1NnIxLWNlcnQucGVt IiksCi0tICAgICAgICAgICAgIlByaXZhdGVLZXkiID0+IHRlc3RfcGVtKCJzZXJ2ZXItZWNkc2Et YnJhaW5wb29sUDI1NnIxLWtleS5wZW0iKSwKLS0gICAgICAgICAgICAiR3JvdXBzIiA9PiAiYnJh aW5wb29sUDI1NnIxIiwKLSsgICAgICAgICAgICAiQ2VydGlmaWNhdGUiID0+IHRlc3RfcGVtKCJz ZXJ2ZXItZWNkc2EtY2VydC5wZW0iKSwKLSsgICAgICAgICAgICAiUHJpdmF0ZUtleSIgPT4gdGVz dF9wZW0oInNlcnZlci1lY2RzYS1rZXkucGVtIiksCi0rIyAgICAgICAgICAgICJHcm91cHMiID0+ ICJicmFpbnBvb2xQMjU2cjEiLAotICAgICAgICAgfSwKLSAgICAgICAgIGNsaWVudCA9PiB7Ci0g ICAgICAgICAgICAgI1dlIGRvbid0IHJlc3RyaWN0IHRoaXMgdG8gVExTdjEuMiwgYWx0aG91Z2gg dXNlIG9mIGJyYWlucG9vbAotICAgICAgICAgICAgICNzaG91bGQgZm9yY2UgdGhpcyBhbnl3YXkg c28gdGhhdCB0aGlzIHNob3VsZCBzdWNjZWVkCi0gICAgICAgICAgICAgIkNpcGhlclN0cmluZyIg PT4gImFFQ0RTQSIsCi0gICAgICAgICAgICAgIlJlcXVlc3RDQUZpbGUiID0+IHRlc3RfcGVtKCJy b290LWNlcnQucGVtIiksCi0tICAgICAgICAgICAgIkdyb3VwcyIgPT4gImJyYWlucG9vbFAyNTZy MSIsCi0rIyAgICAgICAgICAgICJHcm91cHMiID0+ICJicmFpbnBvb2xQMjU2cjEiLAotICAgICAg ICAgfSwKLSAgICAgICAgIHRlc3QgICA9PiB7Ci0tICAgICAgICAgICAgIkV4cGVjdGVkU2VydmVy Q2VydFR5cGUiID0+LCAiYnJhaW5wb29sUDI1NnIxIiwKLS0gICAgICAgICAgICAiRXhwZWN0ZWRT ZXJ2ZXJTaWduVHlwZSIgPT4sICJFQyIsCi0rIyAgICAgICAgICAgICJFeHBlY3RlZFNlcnZlckNl cnRUeXBlIiA9PiwgImJyYWlucG9vbFAyNTZyMSIsCi0rIyAgICAgICAgICAgICJFeHBlY3RlZFNl cnZlclNpZ25UeXBlIiA9PiwgIkVDIiwKLSAgICAgICAgICAgICAjIE5vdGU6IGNlcnRpZmljYXRl X2F1dGhvcml0aWVzIG5vdCBzZW50IGZvciBUTFMgPCAxLjMKLS0gICAgICAgICAgICAiRXhwZWN0 ZWRTZXJ2ZXJDQU5hbWVzIiA9PiwgImVtcHR5IiwKLSsjICAgICAgICAgICAgIkV4cGVjdGVkU2Vy dmVyQ0FOYW1lcyIgPT4sICJlbXB0eSIsCi0gICAgICAgICAgICAgIkV4cGVjdGVkUmVzdWx0IiA9 PiAiU3VjY2VzcyIKLSAgICAgICAgIH0sCi0gICAgIH0sCi1AQCAtODUzLDE4ICs4NTMsMTggQEAg bXkgQHRlc3RzX3Rsc18xXzMgPSAoCi0gICAgIHsKLSAgICAgICAgIG5hbWUgPT4gIlRMUyAxLjMg RUNEU0Egd2l0aCBicmFpbnBvb2wiLAotICAgICAgICAgc2VydmVyID0+ICB7Ci0tICAgICAgICAg ICAgIkNlcnRpZmljYXRlIiA9PiB0ZXN0X3BlbSgic2VydmVyLWVjZHNhLWJyYWlucG9vbFAyNTZy MS1jZXJ0LnBlbSIpLAotLSAgICAgICAgICAgICJQcml2YXRlS2V5IiA9PiB0ZXN0X3BlbSgic2Vy dmVyLWVjZHNhLWJyYWlucG9vbFAyNTZyMS1rZXkucGVtIiksCi0tICAgICAgICAgICAgIkdyb3Vw cyIgPT4gImJyYWlucG9vbFAyNTZyMSIsCi0rICAgICAgICAgICAgIkNlcnRpZmljYXRlIiA9PiB0 ZXN0X3BlbSgic2VydmVyLWVjZHNhLWNlcnQucGVtIiksCi0rICAgICAgICAgICAgIlByaXZhdGVL ZXkiID0+IHRlc3RfcGVtKCJzZXJ2ZXItZWNkc2Eta2V5LnBlbSIpLAotKyMgICAgICAgICAgICAi R3JvdXBzIiA9PiAiYnJhaW5wb29sUDI1NnIxIiwKLSAgICAgICAgIH0sCi0gICAgICAgICBjbGll bnQgPT4gewotICAgICAgICAgICAgICJSZXF1ZXN0Q0FGaWxlIiA9PiB0ZXN0X3BlbSgicm9vdC1j ZXJ0LnBlbSIpLAotLSAgICAgICAgICAgICJHcm91cHMiID0+ICJicmFpbnBvb2xQMjU2cjEiLAot KyMgICAgICAgICAgICAiR3JvdXBzIiA9PiAiYnJhaW5wb29sUDI1NnIxIiwKLSAgICAgICAgICAg ICAiTWluUHJvdG9jb2wiID0+ICJUTFN2MS4zIiwKLSAgICAgICAgICAgICAiTWF4UHJvdG9jb2wi ID0+ICJUTFN2MS4zIgotICAgICAgICAgfSwKLSAgICAgICAgIHRlc3QgICA9PiB7Ci0tICAgICAg ICAgICAgIkV4cGVjdGVkUmVzdWx0IiA9PiAiU2VydmVyRmFpbCIKLSsgICAgICAgICAgICAiRXhw ZWN0ZWRSZXN1bHQiID0+ICJTdWNjZXNzIgotICAgICAgICAgfSwKLSAgICAgfSwKLSApOwotZGlm ZiAtdXAgb3BlbnNzbC0xLjEuMWQvdGVzdC9zc2wtdGVzdHMvMjAtY2VydC1zZWxlY3QuY29uZi5u by1icmFpbnBvb2wgb3BlbnNzbC0xLjEuMWQvdGVzdC9zc2wtdGVzdHMvMjAtY2VydC1zZWxlY3Qu Y29uZgotLS0tIG9wZW5zc2wtMS4xLjFkL3Rlc3Qvc3NsLXRlc3RzLzIwLWNlcnQtc2VsZWN0LmNv bmYubm8tYnJhaW5wb29sCTIwMTktMDktMTAgMTU6MTM6MDcuMDAwMDAwMDAwICswMjAwCi0rKysg b3BlbnNzbC0xLjEuMWQvdGVzdC9zc2wtdGVzdHMvMjAtY2VydC1zZWxlY3QuY29uZgkyMDE5LTA5 LTEzIDE1OjEyOjI3LjM4MDI4ODQ2OSArMDIwMAotQEAgLTIzOCwyMyArMjM4LDE4IEBAIHNlcnZl ciA9IDUtRUNEU0Egd2l0aCBicmFpbnBvb2wtc2VydmVyCi0gY2xpZW50ID0gNS1FQ0RTQSB3aXRo IGJyYWlucG9vbC1jbGllbnQKLSAKLSBbNS1FQ0RTQSB3aXRoIGJyYWlucG9vbC1zZXJ2ZXJdCi0t Q2VydGlmaWNhdGUgPSAke0VOVjo6VEVTVF9DRVJUU19ESVJ9L3NlcnZlci1lY2RzYS1icmFpbnBv b2xQMjU2cjEtY2VydC5wZW0KLStDZXJ0aWZpY2F0ZSA9ICR7RU5WOjpURVNUX0NFUlRTX0RJUn0v c2VydmVyLWVjZHNhLWNlcnQucGVtCi0gQ2lwaGVyU3RyaW5nID0gREVGQVVMVAotLUdyb3VwcyA9 IGJyYWlucG9vbFAyNTZyMQotLVByaXZhdGVLZXkgPSAke0VOVjo6VEVTVF9DRVJUU19ESVJ9L3Nl cnZlci1lY2RzYS1icmFpbnBvb2xQMjU2cjEta2V5LnBlbQotK1ByaXZhdGVLZXkgPSAke0VOVjo6 VEVTVF9DRVJUU19ESVJ9L3NlcnZlci1lY2RzYS1rZXkucGVtCi0gCi0gWzUtRUNEU0Egd2l0aCBi cmFpbnBvb2wtY2xpZW50XQotIENpcGhlclN0cmluZyA9IGFFQ0RTQQotLUdyb3VwcyA9IGJyYWlu cG9vbFAyNTZyMQotIFJlcXVlc3RDQUZpbGUgPSAke0VOVjo6VEVTVF9DRVJUU19ESVJ9L3Jvb3Qt Y2VydC5wZW0KLSBWZXJpZnlDQUZpbGUgPSAke0VOVjo6VEVTVF9DRVJUU19ESVJ9L3Jvb3RjZXJ0 LnBlbQotIFZlcmlmeU1vZGUgPSBQZWVyCi0gCi0gW3Rlc3QtNV0KLSBFeHBlY3RlZFJlc3VsdCA9 IFN1Y2Nlc3MKLS1FeHBlY3RlZFNlcnZlckNBTmFtZXMgPSBlbXB0eQotLUV4cGVjdGVkU2VydmVy Q2VydFR5cGUgPSBicmFpbnBvb2xQMjU2cjEKLS1FeHBlY3RlZFNlcnZlclNpZ25UeXBlID0gRUMK LSAKLSAKLSAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09Ci1AQCAtMTcxMywxNCArMTcwOCwxMiBAQCBzZXJ2ZXIgPSA1Mi1UTFMgMS4z IEVDRFNBIHdpdGggYnJhaW5wb29sCi0gY2xpZW50ID0gNTItVExTIDEuMyBFQ0RTQSB3aXRoIGJy YWlucG9vbC1jbGllbnQKLSAKLSBbNTItVExTIDEuMyBFQ0RTQSB3aXRoIGJyYWlucG9vbC1zZXJ2 ZXJdCi0tQ2VydGlmaWNhdGUgPSAke0VOVjo6VEVTVF9DRVJUU19ESVJ9L3NlcnZlci1lY2RzYS1i cmFpbnBvb2xQMjU2cjEtY2VydC5wZW0KLStDZXJ0aWZpY2F0ZSA9ICR7RU5WOjpURVNUX0NFUlRT X0RJUn0vc2VydmVyLWVjZHNhLWNlcnQucGVtCi0gQ2lwaGVyU3RyaW5nID0gREVGQVVMVAotLUdy b3VwcyA9IGJyYWlucG9vbFAyNTZyMQotLVByaXZhdGVLZXkgPSAke0VOVjo6VEVTVF9DRVJUU19E SVJ9L3NlcnZlci1lY2RzYS1icmFpbnBvb2xQMjU2cjEta2V5LnBlbQotK1ByaXZhdGVLZXkgPSAk e0VOVjo6VEVTVF9DRVJUU19ESVJ9L3NlcnZlci1lY2RzYS1rZXkucGVtCi0gCi0gWzUyLVRMUyAx LjMgRUNEU0Egd2l0aCBicmFpbnBvb2wtY2xpZW50XQotIENpcGhlclN0cmluZyA9IERFRkFVTFQK LS1Hcm91cHMgPSBicmFpbnBvb2xQMjU2cjEKLSBNYXhQcm90b2NvbCA9IFRMU3YxLjMKLSBNaW5Q cm90b2NvbCA9IFRMU3YxLjMKLSBSZXF1ZXN0Q0FGaWxlID0gJHtFTlY6OlRFU1RfQ0VSVFNfRElS fS9yb290LWNlcnQucGVtCi1AQCAtMTcyOCw3ICsxNzIxLDcgQEAgVmVyaWZ5Q0FGaWxlID0gJHtF TlY6OlRFU1RfQ0VSVFNfRElSfS9ybwotIFZlcmlmeU1vZGUgPSBQZWVyCi0gCi0gW3Rlc3QtNTJd Ci0tRXhwZWN0ZWRSZXN1bHQgPSBTZXJ2ZXJGYWlsCi0rRXhwZWN0ZWRSZXN1bHQgPSBTdWNjZXNz Ci0gCi0gCi0gIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQoKZGlmZiAtLWdpdCBhL29wZW5zc2wtMS4xLjEtbm8taHRtbC5wYXRjaCBi L29wZW5zc2wtMS4xLjEtbm8taHRtbC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggZDBlMzM1ZS4uMDAwMDAwMAotLS0gYS9vcGVuc3NsLTEuMS4xLW5vLWh0bWwucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZi9Db25m aWd1cmF0aW9ucy91bml4LU1ha2VmaWxlLnRtcGwubm8taHRtbCBvcGVuc3NsLTEuMS4xZi9Db25m aWd1cmF0aW9ucy91bml4LU1ha2VmaWxlLnRtcGwKLS0tLSBvcGVuc3NsLTEuMS4xZi9Db25maWd1 cmF0aW9ucy91bml4LU1ha2VmaWxlLnRtcGwubm8taHRtbAkyMDIwLTA0LTA3IDE2OjQ1OjIxLjkw NDA4Mzk4OSArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFmL0NvbmZpZ3VyYXRpb25zL3VuaXgtTWFr ZWZpbGUudG1wbAkyMDIwLTA0LTA3IDE2OjQ1OjU2LjIxODQ2MTg5NSArMDIwMAotQEAgLTU0NCw3 ICs1NDQsNyBAQCBpbnN0YWxsX3N3OiBpbnN0YWxsX2RldiBpbnN0YWxsX2VuZ2luZXMKLSAKLSB1 bmluc3RhbGxfc3c6IHVuaW5zdGFsbF9ydW50aW1lIHVuaW5zdGFsbF9lbmdpbmVzIHVuaW5zdGFs bF9kZXYKLSAKLS1pbnN0YWxsX2RvY3M6IGluc3RhbGxfbWFuX2RvY3MgaW5zdGFsbF9odG1sX2Rv Y3MKLStpbnN0YWxsX2RvY3M6IGluc3RhbGxfbWFuX2RvY3MKLSAKLSB1bmluc3RhbGxfZG9jczog dW5pbnN0YWxsX21hbl9kb2NzIHVuaW5zdGFsbF9odG1sX2RvY3MKLSAJJChSTSkgLXIgIiQoREVT VERJUikkKERPQ0RJUikiCgpkaWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1uby13ZWFrLXZlcmlm eS5wYXRjaCBiL29wZW5zc2wtMS4xLjEtbm8td2Vhay12ZXJpZnkucGF0Y2gKZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDU3NTZjNjguLjAwMDAwMDAKLS0tIGEvb3BlbnNzbC0xLjEuMS1u by13ZWFrLXZlcmlmeS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI2ICswLDAgQEAKLWRpZmYg LXVwIG9wZW5zc2wtMS4xLjFiL2NyeXB0by9hc24xL2FfdmVyaWZ5LmMubm8td2Vhay12ZXJpZnkg b3BlbnNzbC0xLjEuMWIvY3J5cHRvL2FzbjEvYV92ZXJpZnkuYwotLS0tIG9wZW5zc2wtMS4xLjFi L2NyeXB0by9hc24xL2FfdmVyaWZ5LmMubm8td2Vhay12ZXJpZnkJMjAxOS0wMi0yNiAxNToxNToz MC4wMDAwMDAwMDAgKzAxMDAKLSsrKyBvcGVuc3NsLTEuMS4xYi9jcnlwdG8vYXNuMS9hX3Zlcmlm eS5jCTIwMTktMDItMjggMTE6MjU6MzEuNTMxODYyODczICswMTAwCi1AQCAtNyw2ICs3LDkgQEAK LSAgKiBodHRwczovL3d3dy5vcGVuc3NsLm9yZy9zb3VyY2UvbGljZW5zZS5odG1sCi0gICovCi0g Ci0rLyogZm9yIHNlY3VyZV9nZXRlbnYgKi8KLSsjZGVmaW5lIF9HTlVfU09VUkNFCi0rCi0gI2lu Y2x1ZGUgPHN0ZGlvLmg+Ci0gI2luY2x1ZGUgPHRpbWUuaD4KLSAjaW5jbHVkZSA8c3lzL3R5cGVz Lmg+Ci1AQCAtMTMwLDYgKzEzMywxMiBAQCBpbnQgQVNOMV9pdGVtX3ZlcmlmeShjb25zdCBBU04x X0lURU0gKml0Ci0gICAgICAgICBpZiAocmV0ICE9IDIpCi0gICAgICAgICAgICAgZ290byBlcnI7 Ci0gICAgICAgICByZXQgPSAtMTsKLSsgICAgfSBlbHNlIGlmICgobWRuaWQgPT0gTklEX21kNQot KyAgICAgICAgICAgICAgICYmIHNlY3VyZV9nZXRlbnYoIk9QRU5TU0xfRU5BQkxFX01ENV9WRVJJ RlkiKSA9PSBOVUxMKSB8fAotKyAgICAgICAgICAgICAgIG1kbmlkID09IE5JRF9tZDQgfHwgbWRu aWQgPT0gTklEX21kMiB8fCBtZG5pZCA9PSBOSURfc2hhKSB7Ci0rICAgICAgICBBU04xZXJyKEFT TjFfRl9BU04xX0lURU1fVkVSSUZZLAotKyAgICAgICAgICAgICAgICBBU04xX1JfVU5LTk9XTl9N RVNTQUdFX0RJR0VTVF9BTEdPUklUSE0pOwotKyAgICAgICAgZ290byBlcnI7Ci0gICAgIH0gZWxz ZSB7Ci0gICAgICAgICBjb25zdCBFVlBfTUQgKnR5cGUgPSBFVlBfZ2V0X2RpZ2VzdGJ5bmlkKG1k bmlkKTsKLSAKCmRpZmYgLS1naXQgYS9vcGVuc3NsLTEuMS4xLXJld2lyZS1maXBzLWRyYmcucGF0 Y2ggYi9vcGVuc3NsLTEuMS4xLXJld2lyZS1maXBzLWRyYmcucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDRkMDRkMzcuLjAwMDAwMDAKLS0tIGEvb3BlbnNzbC0xLjEuMS1yZXdp cmUtZmlwcy1kcmJnLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTcwICswLDAgQEAKLWRpZmYg LXVwIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9maXBzL2ZpcHNfZHJiZ19saWIuYy5yZXdpcmUtZmlw cy1kcmJnIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9maXBzL2ZpcHNfZHJiZ19saWIuYwotLS0tIG9w ZW5zc2wtMS4xLjFnL2NyeXB0by9maXBzL2ZpcHNfZHJiZ19saWIuYy5yZXdpcmUtZmlwcy1kcmJn CTIwMjAtMDYtMjIgMTM6MzI6NDcuNjExODUyOTI3ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcv Y3J5cHRvL2ZpcHMvZmlwc19kcmJnX2xpYi5jCTIwMjAtMDYtMjIgMTM6MzI6NDcuNjc1ODUyOTE3 ICswMjAwCi1AQCAtMzM3LDYgKzMzNywxOSBAQCBzdGF0aWMgaW50IGRyYmdfcmVzZWVkKERSQkdf Q1RYICpkY3R4LAotIGludCBGSVBTX2RyYmdfcmVzZWVkKERSQkdfQ1RYICpkY3R4LAotICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmFkaW4sIHNpemVfdCBhZGlubGVu KQotIHsKLSsgICAgaW50IGxlbiA9IChpbnQpYWRpbmxlbjsKLSsKLSsgICAgaWYgKGxlbiA8IDAg fHwgKHNpemVfdClsZW4gIT0gYWRpbmxlbikgewotKyAgICAgICAgRklQU2VycihGSVBTX0ZfRFJC R19SRVNFRUQsIEZJUFNfUl9BRERJVElPTkFMX0lOUFVUX1RPT19MT05HKTsKLSsgICAgICAgIHJl dHVybiAwOwotKyAgICB9Ci0rICAgIFJBTkRfc2VlZChhZGluLCBsZW4pOwotKyAgICByZXR1cm4g MTsKLSt9Ci0rCi0raW50IEZJUFNfZHJiZ19yZXNlZWRfaW50ZXJuYWwoRFJCR19DVFggKmRjdHgs Ci0rICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqYWRpbiwgc2l6ZV90 IGFkaW5sZW4pCi0rewotICAgICByZXR1cm4gZHJiZ19yZXNlZWQoZGN0eCwgYWRpbiwgYWRpbmxl biwgMSk7Ci0gfQotIAotQEAgLTM1OCw2ICszNzEsMTkgQEAgaW50IEZJUFNfZHJiZ19nZW5lcmF0 ZShEUkJHX0NUWCAqZGN0eCwgdQotICAgICAgICAgICAgICAgICAgICAgICAgaW50IHByZWRpY3Rp b25fcmVzaXN0YW5jZSwKLSAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNo YXIgKmFkaW4sIHNpemVfdCBhZGlubGVuKQotIHsKLSsgICAgaW50IGxlbiA9IChpbnQpb3V0bGVu OwotKwotKyAgICBpZiAobGVuIDwgMCB8fCAoc2l6ZV90KWxlbiAhPSBvdXRsZW4pIHsKLSsgICAg ICAgIEZJUFNlcnIoRklQU19GX0ZJUFNfRFJCR19HRU5FUkFURSwgRklQU19SX1JFUVVFU1RfVE9P X0xBUkdFX0ZPUl9EUkJHKTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rICAgIHJldHVy biBSQU5EX2J5dGVzKG91dCwgbGVuKTsKLSt9Ci0rCi0raW50IEZJUFNfZHJiZ19nZW5lcmF0ZV9p bnRlcm5hbChEUkJHX0NUWCAqZGN0eCwgdW5zaWduZWQgY2hhciAqb3V0LCBzaXplX3Qgb3V0bGVu LAotKyAgICAgICAgICAgICAgICAgICAgICAgaW50IHByZWRpY3Rpb25fcmVzaXN0YW5jZSwKLSsg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmFkaW4sIHNpemVfdCBh ZGlubGVuKQotK3sKLSAgICAgaW50IHIgPSAwOwotIAotICAgICBpZiAoRklQU19zZWxmdGVzdF9m YWlsZWQoKSkgewotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2ZpcHMvZmlwc19kcmJn X3JhbmQuYy5yZXdpcmUtZmlwcy1kcmJnIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9maXBzL2ZpcHNf ZHJiZ19yYW5kLmMKLS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9maXBzX2RyYmdfcmFu ZC5jLnJld2lyZS1maXBzLWRyYmcJMjAyMC0wNi0yMiAxMzozMjo0Ny42MTE4NTI5MjcgKzAyMDAK LSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9maXBzX2RyYmdfcmFuZC5jCTIwMjAtMDYt MjIgMTM6MzI6NDcuNjc1ODUyOTE3ICswMjAwCi1AQCAtNTcsNiArNTcsOCBAQAotICNpbmNsdWRl IDxvcGVuc3NsL2Vyci5oPgotICNpbmNsdWRlIDxvcGVuc3NsL3JhbmQuaD4KLSAjaW5jbHVkZSA8 b3BlbnNzbC9maXBzLmg+Ci0rI2RlZmluZSBGSVBTX0RSQkdfZ2VuZXJhdGUgRklQU19EUkJHX2dl bmVyYXRlX2ludGVybmFsCi0rI2RlZmluZSBGSVBTX0RSQkdfcmVzZWVkIEZJUFNfRFJCR19yZXNl ZWRfaW50ZXJuYWwKLSAjaW5jbHVkZSA8b3BlbnNzbC9maXBzX3JhbmQuaD4KLSAjaW5jbHVkZSAi Zmlwc19yYW5kX2xjbC5oIgotIAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2ZpcHMv Zmlwc19kcmJnX3NlbGZ0ZXN0LmMucmV3aXJlLWZpcHMtZHJiZyBvcGVuc3NsLTEuMS4xZy9jcnlw dG8vZmlwcy9maXBzX2RyYmdfc2VsZnRlc3QuYwotLS0tIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9m aXBzL2ZpcHNfZHJiZ19zZWxmdGVzdC5jLnJld2lyZS1maXBzLWRyYmcJMjAyMC0wNi0yMiAxMzoz Mjo0Ny42MTI4NTI5MjcgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9maXBz X2RyYmdfc2VsZnRlc3QuYwkyMDIwLTA2LTIyIDEzOjMyOjQ3LjY3NTg1MjkxNyArMDIwMAotQEAg LTU1LDYgKzU1LDggQEAKLSAjaW5jbHVkZSA8b3BlbnNzbC9jcnlwdG8uaD4KLSAjaW5jbHVkZSA8 b3BlbnNzbC9lcnIuaD4KLSAjaW5jbHVkZSA8b3BlbnNzbC9maXBzLmg+Ci0rI2RlZmluZSBGSVBT X0RSQkdfZ2VuZXJhdGUgRklQU19EUkJHX2dlbmVyYXRlX2ludGVybmFsCi0rI2RlZmluZSBGSVBT X0RSQkdfcmVzZWVkIEZJUFNfRFJCR19yZXNlZWRfaW50ZXJuYWwKLSAjaW5jbHVkZSA8b3BlbnNz bC9maXBzX3JhbmQuaD4KLSAjaW5jbHVkZSAiZmlwc19yYW5kX2xjbC5oIgotICNpbmNsdWRlICJm aXBzX2xvY2wuaCIKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9maXBzL2ZpcHNfcG9z dC5jLnJld2lyZS1maXBzLWRyYmcgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2ZpcHMvZmlwc19wb3N0 LmMKLS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9maXBzX3Bvc3QuYy5yZXdpcmUtZmlw cy1kcmJnCTIwMjAtMDYtMjIgMTM6MzI6NDcuNjcyODUyOTE4ICswMjAwCi0rKysgb3BlbnNzbC0x LjEuMWcvY3J5cHRvL2ZpcHMvZmlwc19wb3N0LmMJMjAyMC0wNi0yMiAxMzozMjo0Ny42NzU4NTI5 MTcgKzAyMDAKLUBAIC03OSw4ICs3OSw2IEBAIGludCBGSVBTX3NlbGZ0ZXN0KHZvaWQpCi0gICAg ICAgICBFUlJfYWRkX2Vycm9yX2RhdGEoMiwgIlR5cGU9IiwgInJhbmRfZHJiZ19zZWxmdGVzdCIp OwotICAgICAgICAgcnYgPSAwOwotICAgICB9Ci0tICAgIGlmICghRklQU19zZWxmdGVzdF9kcmJn KCkpCi0tICAgICAgICBydiA9IDA7Ci0gICAgIGlmICghRklQU19zZWxmdGVzdF9zaGExKCkpCi0g ICAgICAgICBydiA9IDA7Ci0gICAgIGlmICghRklQU19zZWxmdGVzdF9zaGEyKCkpCi1kaWZmIC11 cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9maXBzX3JhbmRfbGliLmMucmV3aXJlLWZpcHMt ZHJiZyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9maXBzX3JhbmRfbGliLmMKLS0tLSBvcGVu c3NsLTEuMS4xZy9jcnlwdG8vZmlwcy9maXBzX3JhbmRfbGliLmMucmV3aXJlLWZpcHMtZHJiZwky MDIwLTA2LTIyIDEzOjMyOjQ3LjYxMzg1MjkyNyArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2Ny eXB0by9maXBzL2ZpcHNfcmFuZF9saWIuYwkyMDIwLTA2LTIyIDEzOjM2OjI4LjcyMjgxNzk2NyAr MDIwMAotQEAgLTEyMCw2ICsxMjAsNyBAQCB2b2lkIEZJUFNfcmFuZF9yZXNldCh2b2lkKQotIAot IGludCBGSVBTX3JhbmRfc2VlZChjb25zdCB2b2lkICpidWYsIGludCBudW0pCi0gewotKyNpZiAw Ci0gICAgIGlmICghZmlwc19hcHByb3ZlZF9yYW5kX21ldGggJiYgRklQU19tb2R1bGVfbW9kZSgp KSB7Ci0gICAgICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX1JBTkRfU0VFRCwgRklQU19SX05PTl9G SVBTX01FVEhPRCk7Ci0gICAgICAgICByZXR1cm4gMDsKLUBAIC0xMjcsMTAgKzEyOCwxNSBAQCBp bnQgRklQU19yYW5kX3NlZWQoY29uc3Qgdm9pZCAqYnVmLCBpbnQKLSAgICAgaWYgKGZpcHNfcmFu ZF9tZXRoICYmIGZpcHNfcmFuZF9tZXRoLT5zZWVkKQotICAgICAgICAgZmlwc19yYW5kX21ldGgt PnNlZWQoYnVmLCBudW0pOwotICAgICByZXR1cm4gMTsKLSsjZWxzZQotKyAgICBSQU5EX3NlZWQo YnVmLCBudW0pOwotKyAgICByZXR1cm4gMTsKLSsjZW5kaWYKLSB9Ci0gCi0gaW50IEZJUFNfcmFu ZF9ieXRlcyh1bnNpZ25lZCBjaGFyICpidWYsIGludCBudW0pCi0gewotKyNpZiAwCi0gICAgIGlm ICghZmlwc19hcHByb3ZlZF9yYW5kX21ldGggJiYgRklQU19tb2R1bGVfbW9kZSgpKSB7Ci0gICAg ICAgICBGSVBTZXJyKEZJUFNfRl9GSVBTX1JBTkRfQllURVMsIEZJUFNfUl9OT05fRklQU19NRVRI T0QpOwotICAgICAgICAgcmV0dXJuIDA7Ci1AQCAtMTM4LDEwICsxNDQsMTQgQEAgaW50IEZJUFNf cmFuZF9ieXRlcyh1bnNpZ25lZCBjaGFyICpidWYsCi0gICAgIGlmIChmaXBzX3JhbmRfbWV0aCAm JiBmaXBzX3JhbmRfbWV0aC0+Ynl0ZXMpCi0gICAgICAgICByZXR1cm4gZmlwc19yYW5kX21ldGgt PmJ5dGVzKGJ1ZiwgbnVtKTsKLSAgICAgcmV0dXJuIDA7Ci0rI2Vsc2UKLSsgICAgcmV0dXJuIFJB TkRfYnl0ZXMoYnVmLCBudW0pOwotKyNlbmRpZgotIH0KLSAKLSBpbnQgRklQU19yYW5kX3N0YXR1 cyh2b2lkKQotIHsKLSsjaWYgMAotICAgICBpZiAoIWZpcHNfYXBwcm92ZWRfcmFuZF9tZXRoICYm IEZJUFNfbW9kdWxlX21vZGUoKSkgewotICAgICAgICAgRklQU2VycihGSVBTX0ZfRklQU19SQU5E X1NUQVRVUywgRklQU19SX05PTl9GSVBTX01FVEhPRCk7Ci0gICAgICAgICByZXR1cm4gMDsKLUBA IC0xNDksNiArMTU5LDkgQEAgaW50IEZJUFNfcmFuZF9zdGF0dXModm9pZCkKLSAgICAgaWYgKGZp cHNfcmFuZF9tZXRoICYmIGZpcHNfcmFuZF9tZXRoLT5zdGF0dXMpCi0gICAgICAgICByZXR1cm4g Zmlwc19yYW5kX21ldGgtPnN0YXR1cygpOwotICAgICByZXR1cm4gMDsKLSsjZWxzZQotKyAgICBy ZXR1cm4gUkFORF9zdGF0dXMoKTsKLSsjZW5kaWYKLSB9Ci0gCi0gLyogUmV0dXJuIGluc3RhbnRp YXRlZCBzdHJlbmd0aCBvZiBQUk5HLiBGb3IgRFJCRyB0aGlzIGlzIGFuIGludGVybmFsCi1kaWZm IC11cCBvcGVuc3NsLTEuMS4xZy9pbmNsdWRlL29wZW5zc2wvZmlwcy5oLnJld2lyZS1maXBzLWRy Ymcgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9vcGVuc3NsL2ZpcHMuaAotLS0tIG9wZW5zc2wtMS4x LjFnL2luY2x1ZGUvb3BlbnNzbC9maXBzLmgucmV3aXJlLWZpcHMtZHJiZwkyMDIwLTA2LTIyIDEz OjMyOjQ3LjY3Mjg1MjkxOCArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2luY2x1ZGUvb3BlbnNz bC9maXBzLmgJMjAyMC0wNi0yMiAxMzozMjo0Ny42NzU4NTI5MTcgKzAyMDAKLUBAIC02NCw2ICs2 NCwxMSBAQCBleHRlcm4gIkMiIHsKLSAKLSAgICAgaW50IEZJUFNfc2VsZnRlc3Qodm9pZCk7Ci0g ICAgIGludCBGSVBTX3NlbGZ0ZXN0X2ZhaWxlZCh2b2lkKTsKLSsKLSsgICAgLyoKLSsgICAgICog VGhpcyBmdW5jdGlvbiBpcyBkZXByZWNhdGVkIGFzIGl0IHBlcmZvcm1zIHNlbGZ0ZXN0IG9mIHRo ZSBvbGQgRklQUyBkcmJnCi0rICAgICAqIGltcGxlbWVudGF0aW9uIHRoYXQgaXMgbm90IHZhbGlk YXRlZC4KLSsgICAgICovCi0gICAgIGludCBGSVBTX3NlbGZ0ZXN0X2RyYmdfYWxsKHZvaWQpOwot IAotICAgICBpbnQgRklQU19kc2FfYnVpbHRpbl9wYXJhbWdlbjIoRFNBICpyZXQsIHNpemVfdCBM LCBzaXplX3QgTiwKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL2luY2x1ZGUvb3BlbnNzbC9maXBz X3JhbmQuaC5yZXdpcmUtZmlwcy1kcmJnIG9wZW5zc2wtMS4xLjFnL2luY2x1ZGUvb3BlbnNzbC9m aXBzX3JhbmQuaAotLS0tIG9wZW5zc2wtMS4xLjFnL2luY2x1ZGUvb3BlbnNzbC9maXBzX3JhbmQu aC5yZXdpcmUtZmlwcy1kcmJnCTIwMjAtMDYtMjIgMTM6MzI6NDcuNjE3ODUyOTI2ICswMjAwCi0r Kysgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9vcGVuc3NsL2ZpcHNfcmFuZC5oCTIwMjAtMDYtMjIg MTM6MzI6NDcuNjc1ODUyOTE3ICswMjAwCi1AQCAtNjAsNiArNjAsMjAgQEAKLSAjICBpZmRlZiAg X19jcGx1c3BsdXMKLSBleHRlcm4gIkMiIHsKLSAjICBlbmRpZgotKwotKy8qCi0rICogSU1QT1JU QU5UIE5PVEU6Ci0rICogQWxsIGZ1bmN0aW9ucyBpbiB0aGlzIGhlYWRlciBmaWxlIGFyZSBkZXBy ZWNhdGVkIGFuZCBzaG91bGQgbm90IGJlIHVzZWQKLSsgKiBhcyB0aGV5IHVzZSB0aGUgb2xkIEZJ UFNfZHJiZyBpbXBsZW1lbnRhdGlvbiB0aGF0IGlzIG5vdCBGSVBTIHZhbGlkYXRlZAotKyAqIGFu eW1vcmUuCi0rICogVG8gcHJvdmlkZSBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSBmb3IgYXBwbGlj YXRpb25zIHRoYXQgbmVlZCBGSVBTIGNvbXBsaWFudAotKyAqIFJORyBudW1iZXIgZ2VuZXJhdGlv biBhbmQgdXNlIEZJUFNfZHJiZ19nZW5lcmF0ZSwgdGhpcyBmdW5jdGlvbiB3YXMKLSsgKiByZS13 aXJlZCB0byBjYWxsIHRoZSBGSVBTIHZhbGlkYXRlZCBEUkJHIGluc3RhbmNlIGluc3RlYWQgdGhy b3VnaAotKyAqIHRoZSBSQU5EX2J5dGVzKCkgY2FsbC4KLSsgKgotKyAqIEFsbCB0aGVzZSBmdW5j dGlvbnMgd2lsbCBiZSByZW1vdmVkIGluIGZ1dHVyZS4KLSsgKi8KLSsKLSAgICAgdHlwZWRlZiBz dHJ1Y3QgZHJiZ19jdHhfc3QgRFJCR19DVFg7Ci0gLyogRFJCRyBleHRlcm5hbCBmbGFncyAqLwot IC8qIEZsYWcgZm9yIENUUiBtb2RlIG9ubHk6IHVzZSBkZXJpdmF0aW9uIGZ1bmN0aW9uIGN0cl9k ZiAqLwoKZGlmZiAtLWdpdCBhL29wZW5zc2wtMS4xLjEtczM5MHgtZWNjLnBhdGNoIGIvb3BlbnNz bC0xLjEuMS1zMzkweC1lY2MucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZi NTk2M2YuLjAwMDAwMDAKLS0tIGEvb3BlbnNzbC0xLjEuMS1zMzkweC1lY2MucGF0Y2gKKysrIC9k ZXYvbnVsbApAQCAtMSwyMzA2ICswLDAgQEAKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL0NvbmZp Z3VyYXRpb25zLzAwLWJhc2UtdGVtcGxhdGVzLmNvbmYuczM5MHgtZWNjIG9wZW5zc2wtMS4xLjFn L0NvbmZpZ3VyYXRpb25zLzAwLWJhc2UtdGVtcGxhdGVzLmNvbmYKLS0tLSBvcGVuc3NsLTEuMS4x Zy9Db25maWd1cmF0aW9ucy8wMC1iYXNlLXRlbXBsYXRlcy5jb25mLnMzOTB4LWVjYwkyMDIwLTA0 LTIxIDE0OjIyOjM5LjAwMDAwMDAwMCArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL0NvbmZpZ3Vy YXRpb25zLzAwLWJhc2UtdGVtcGxhdGVzLmNvbmYJMjAyMC0wNS0xOCAxMjo0NTo0MC44NTUyMzQy NjIgKzAyMDAKLUBAIC0yODksNiArMjg5LDcgQEAgbXkgJXRhcmdldHM9KAotIAl0ZW1wbGF0ZQk9 PiAxLAotIAljcHVpZF9hc21fc3JjICAgPT4gInMzOTB4Y2FwLmMgczM5MHhjcHVpZC5TIiwKLSAJ Ym5fYXNtX3NyYyAgICAgID0+ICJhc20vczM5MHguUyBzMzkweC1tb250LlMgczM5MHgtZ2YybS5z IiwKLSsJZWNfYXNtX3NyYyAgICAgID0+ICJlY3BfczM5MHhfbmlzdHAuYyIsCi0gCWFlc19hc21f c3JjICAgICA9PiAiYWVzLXMzOTB4LlMgYWVzLWN0ci5mYWtlIGFlcy14dHMuZmFrZSIsCi0gCXNo YTFfYXNtX3NyYyAgICA9PiAic2hhMS1zMzkweC5TIHNoYTI1Ni1zMzkweC5TIHNoYTUxMi1zMzkw eC5TIiwKLSAJcmM0X2FzbV9zcmMgICAgID0+ICJyYzQtczM5MHgucyIsCi1kaWZmIC11cCBvcGVu c3NsLTEuMS4xZy9Db25maWd1cmUuczM5MHgtZWNjIG9wZW5zc2wtMS4xLjFnL0NvbmZpZ3VyZQot LS0tIG9wZW5zc2wtMS4xLjFnL0NvbmZpZ3VyZS5zMzkweC1lY2MJMjAyMC0wNS0xOCAxMjo0NTo0 MC43ODEyMzM2MTggKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9Db25maWd1cmUJMjAyMC0wNS0x OCAxMjo0NTo0MC44NTYyMzQyNzAgKzAyMDAKLUBAIC0xMzk4LDYgKzEzOTgsOSBAQCB1bmxlc3Mg KCRkaXNhYmxlZHthc219KSB7Ci0gICAgIGlmICgkdGFyZ2V0e2VjX2FzbV9zcmN9ID1+IC9lY3Bf bmlzdHoyNTYvKSB7Ci0gICAgICAgICBwdXNoIEB7JGNvbmZpZ3tsaWJfZGVmaW5lc319LCAiRUNQ X05JU1RaMjU2X0FTTSI7Ci0gICAgIH0KLSsgICAgaWYgKCR0YXJnZXR7ZWNfYXNtX3NyY30gPX4g L2VjcF9zMzkweF9uaXN0cC8pIHsKLSsgICAgICAgIHB1c2ggQHskY29uZmlne2xpYl9kZWZpbmVz fX0sICJTMzkwWF9FQ19BU00iOwotKyAgICB9Ci0gICAgIGlmICgkdGFyZ2V0e2VjX2FzbV9zcmN9 ID1+IC94MjU1MTkvKSB7Ci0gICAgICAgICBwdXNoIEB7JGNvbmZpZ3tsaWJfZGVmaW5lc319LCAi WDI1NTE5X0FTTSI7Ci0gICAgIH0KLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9jbWFj L2NtX3BtZXRoLmMuczM5MHgtZWNjIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9jbWFjL2NtX3BtZXRo LmMKLS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vY21hYy9jbV9wbWV0aC5jLnMzOTB4LWVjYwky MDIwLTA1LTE4IDEyOjQ1OjQwLjc4MjIzMzYyNyArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2Ny eXB0by9jbWFjL2NtX3BtZXRoLmMJMjAyMC0wNS0xOCAxMjo0NTo0Mi42NjEyNDk5NTcgKzAyMDAK LUBAIC0xNTksMyArMTU5LDggQEAgY29uc3QgRVZQX1BLRVlfTUVUSE9EIGNtYWNfcGtleV9tZXRo ID0gewotICAgICBwa2V5X2NtYWNfY3RybCwKLSAgICAgcGtleV9jbWFjX2N0cmxfc3RyCi0gfTsK LSsKLStjb25zdCBFVlBfUEtFWV9NRVRIT0QgKmNtYWNfcGtleV9tZXRob2Qodm9pZCkKLSt7Ci0r ICAgIHJldHVybiAmY21hY19wa2V5X21ldGg7Ci0rfQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcv Y3J5cHRvL2RoL2RoX3BtZXRoLmMuczM5MHgtZWNjIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9kaC9k aF9wbWV0aC5jCi0tLS0gb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2RoL2RoX3BtZXRoLmMuczM5MHgt ZWNjCTIwMjAtMDUtMTggMTI6NDU6NDAuNzgyMjMzNjI3ICswMjAwCi0rKysgb3BlbnNzbC0xLjEu MWcvY3J5cHRvL2RoL2RoX3BtZXRoLmMJMjAyMC0wNS0xOCAxMjo0NTo0Mi42NjEyNDk5NTcgKzAy MDAKLUBAIC01MTIsNiArNTEyLDExIEBAIGNvbnN0IEVWUF9QS0VZX01FVEhPRCBkaF9wa2V5X21l dGggPSB7Ci0gICAgIHBrZXlfZGhfY3RybF9zdHIKLSB9OwotIAotK2NvbnN0IEVWUF9QS0VZX01F VEhPRCAqZGhfcGtleV9tZXRob2Qodm9pZCkKLSt7Ci0rICAgIHJldHVybiAmZGhfcGtleV9tZXRo OwotK30KLSsKLSBjb25zdCBFVlBfUEtFWV9NRVRIT0QgZGh4X3BrZXlfbWV0aCA9IHsKLSAgICAg RVZQX1BLRVlfREhYLAotICAgICBFVlBfUEtFWV9GTEFHX0ZJUFMsCi1AQCAtNTQ1LDMgKzU1MCw4 IEBAIGNvbnN0IEVWUF9QS0VZX01FVEhPRCBkaHhfcGtleV9tZXRoID0gewotICAgICBwa2V5X2Ro X2N0cmwsCi0gICAgIHBrZXlfZGhfY3RybF9zdHIKLSB9OwotKwotK2NvbnN0IEVWUF9QS0VZX01F VEhPRCAqZGh4X3BrZXlfbWV0aG9kKHZvaWQpCi0rewotKyAgICByZXR1cm4gJmRoeF9wa2V5X21l dGg7Ci0rfQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2RzYS9kc2FfcG1ldGguYy5z MzkweC1lY2Mgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2RzYS9kc2FfcG1ldGguYwotLS0tIG9wZW5z c2wtMS4xLjFnL2NyeXB0by9kc2EvZHNhX3BtZXRoLmMuczM5MHgtZWNjCTIwMjAtMDUtMTggMTI6 NDU6NDAuNzgzMjMzNjM2ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2RzYS9kc2Ff cG1ldGguYwkyMDIwLTA1LTE4IDEyOjQ1OjQyLjY2MjI0OTk2NiArMDIwMAotQEAgLTI3MSwzICsy NzEsOCBAQCBjb25zdCBFVlBfUEtFWV9NRVRIT0QgZHNhX3BrZXlfbWV0aCA9IHsKLSAgICAgcGtl eV9kc2FfY3RybCwKLSAgICAgcGtleV9kc2FfY3RybF9zdHIKLSB9OwotKwotK2NvbnN0IEVWUF9Q S0VZX01FVEhPRCAqZHNhX3BrZXlfbWV0aG9kKHZvaWQpCi0rewotKyAgICByZXR1cm4gJmRzYV9w a2V5X21ldGg7Ci0rfQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2J1aWxkLmlu Zm8uczM5MHgtZWNjIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9idWlsZC5pbmZvCi0tLS0gb3Bl bnNzbC0xLjEuMWcvY3J5cHRvL2VjL2J1aWxkLmluZm8uczM5MHgtZWNjCTIwMjAtMDQtMjEgMTQ6 MjI6MzkuMDAwMDAwMDAwICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2J1aWxk LmluZm8JMjAyMC0wNS0xOCAxMjo0NTo0Mi42NjIyNDk5NjYgKzAyMDAKLUBAIC0yNiw2ICsyNiw5 IEBAIEdFTkVSQVRFW2VjcF9uaXN0ejI1Ni1hcm12OC5TXT1hc20vZWNwX24KLSBJTkNMVURFW2Vj cF9uaXN0ejI1Ni1hcm12OC5vXT0uLgotIEdFTkVSQVRFW2VjcF9uaXN0ejI1Ni1wcGM2NC5zXT1h c20vZWNwX25pc3R6MjU2LXBwYzY0LnBsICQoUEVSTEFTTV9TQ0hFTUUpCi0gCi0rSU5DTFVERVtl Y3BfczM5MHhfbmlzdHAub109Li4KLStJTkNMVURFW2VjeF9tZXRoLm9dPS4uCi0rCi0gR0VORVJB VEVbeDI1NTE5LXg4Nl82NC5zXT1hc20veDI1NTE5LXg4Nl82NC5wbCAkKFBFUkxBU01fU0NIRU1F KQotIEdFTkVSQVRFW3gyNTUxOS1wcGM2NC5zXT1hc20veDI1NTE5LXBwYzY0LnBsICQoUEVSTEFT TV9TQ0hFTUUpCi0gCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNfY3VydmUu Yy5zMzkweC1lY2Mgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjX2N1cnZlLmMKLS0tLSBvcGVu c3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNfY3VydmUuYy5zMzkweC1lY2MJMjAyMC0wNS0xOCAxMjo0 NTo0MC43NTMyMzMzNzUgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNfY3Vy dmUuYwkyMDIwLTA1LTE4IDEyOjQ1OjQyLjY2MzI0OTk3NSArMDIwMAotQEAgLTI1NSwyMCArMjU1 LDI5IEBAIHN0YXRpYyBjb25zdCBlY19saXN0X2VsZW1lbnQgY3VydmVfbGlzdFsKLSAgICAge05J RF9zZWNwMjU2azEsICZfRUNfU0VDR19QUklNRV8yNTZLMS5oLCAwLAotICAgICAgIlNFQ0cgY3Vy dmUgb3ZlciBhIDI1NiBiaXQgcHJpbWUgZmllbGQifSwKLSAgICAgLyogU0VDRyBzZWNwMjU2cjEg aXMgdGhlIHNhbWUgYXMgWDkuNjIgcHJpbWUyNTZ2MSBhbmQgaGVuY2Ugb21pdHRlZCAqLwotLSAg ICB7TklEX3NlY3AzODRyMSwgJl9FQ19OSVNUX1BSSU1FXzM4NC5oLCAwLAotKyAgICB7TklEX3Nl Y3AzODRyMSwgJl9FQ19OSVNUX1BSSU1FXzM4NC5oLAotKyMgaWYgZGVmaW5lZChTMzkwWF9FQ19B U00pCi0rICAgICBFQ19HRnBfczM5MHhfbmlzdHAzODRfbWV0aG9kLAotKyMgZWxzZQotKyAgICAg MCwKLSsjIGVuZGlmCi0gICAgICAiTklTVC9TRUNHIGN1cnZlIG92ZXIgYSAzODQgYml0IHByaW1l IGZpZWxkIn0sCi0tI2lmbmRlZiBPUEVOU1NMX05PX0VDX05JU1RQXzY0X0dDQ18xMjgKLS0gICAg e05JRF9zZWNwNTIxcjEsICZfRUNfTklTVF9QUklNRV81MjEuaCwgRUNfR0ZwX25pc3RwNTIxX21l dGhvZCwKLS0gICAgICJOSVNUL1NFQ0cgY3VydmUgb3ZlciBhIDUyMSBiaXQgcHJpbWUgZmllbGQi fSwKLS0jZWxzZQotLSAgICB7TklEX3NlY3A1MjFyMSwgJl9FQ19OSVNUX1BSSU1FXzUyMS5oLCAw LAotKyAgICB7TklEX3NlY3A1MjFyMSwgJl9FQ19OSVNUX1BSSU1FXzUyMS5oLAotKyMgaWYgZGVm aW5lZChTMzkwWF9FQ19BU00pCi0rICAgICBFQ19HRnBfczM5MHhfbmlzdHA1MjFfbWV0aG9kLAot KyMgZWxpZiAhZGVmaW5lZChPUEVOU1NMX05PX0VDX05JU1RQXzY0X0dDQ18xMjgpCi0rICAgICBF Q19HRnBfbmlzdHA1MjFfbWV0aG9kLAotKyMgZWxzZQotKyAgICAgMCwKLSsjIGVuZGlmCi0gICAg ICAiTklTVC9TRUNHIGN1cnZlIG92ZXIgYSA1MjEgYml0IHByaW1lIGZpZWxkIn0sCi0tI2VuZGlm Ci0gICAgIC8qIFg5LjYyIGN1cnZlcyAqLwotICAgICB7TklEX1g5XzYyX3ByaW1lMjU2djEsICZf RUNfWDlfNjJfUFJJTUVfMjU2VjEuaCwKLSAjaWYgZGVmaW5lZChFQ1BfTklTVFoyNTZfQVNNKQot ICAgICAgRUNfR0ZwX25pc3R6MjU2X21ldGhvZCwKLS0jZWxpZiAhZGVmaW5lZChPUEVOU1NMX05P X0VDX05JU1RQXzY0X0dDQ18xMjgpCi0rIyBlbGlmIGRlZmluZWQoUzM5MFhfRUNfQVNNKQotKyAg ICAgRUNfR0ZwX3MzOTB4X25pc3RwMjU2X21ldGhvZCwKLSsjIGVsaWYgIWRlZmluZWQoT1BFTlNT TF9OT19FQ19OSVNUUF82NF9HQ0NfMTI4KQotICAgICAgRUNfR0ZwX25pc3RwMjU2X21ldGhvZCwK LSAjZWxzZQotICAgICAgMCwKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY2Rz YV9vc3NsLmMuczM5MHgtZWNjIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY2RzYV9vc3NsLmMK LS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNkc2Ffb3NzbC5jLnMzOTB4LWVjYwkyMDIw LTA1LTE4IDEyOjQ1OjQwLjc4NDIzMzY0NCArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2NyeXB0 by9lYy9lY2RzYV9vc3NsLmMJMjAyMC0wNS0xOCAxMjo0NTo0Mi42NjQyNDk5ODMgKzAyMDAKLUBA IC0xOCw2ICsxOCw0MSBAQAotICMgaW5jbHVkZSA8b3BlbnNzbC9maXBzLmg+Ci0gI2VuZGlmCi0g Ci0raW50IG9zc2xfZWNkc2Ffc2lnbl9zZXR1cChFQ19LRVkgKmVja2V5LCBCTl9DVFggKmN0eF9p biwgQklHTlVNICoqa2ludnAsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICBCSUdOVU0gKipy cCkKLSt7Ci0rICAgIGlmIChlY2tleS0+Z3JvdXAtPm1ldGgtPmVjZHNhX3NpZ25fc2V0dXAgPT0g TlVMTCkgewotKyAgICAgICAgRUNlcnIoRUNfRl9PU1NMX0VDRFNBX1NJR05fU0VUVVAsIEVDX1Jf Q1VSVkVfRE9FU19OT1RfU1VQUE9SVF9FQ0RTQSk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAg fQotKwotKyAgICByZXR1cm4gZWNrZXktPmdyb3VwLT5tZXRoLT5lY2RzYV9zaWduX3NldHVwKGVj a2V5LCBjdHhfaW4sIGtpbnZwLCBycCk7Ci0rfQotKwotK0VDRFNBX1NJRyAqb3NzbF9lY2RzYV9z aWduX3NpZyhjb25zdCB1bnNpZ25lZCBjaGFyICpkZ3N0LCBpbnQgZGdzdF9sZW4sCi0rICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEJJR05VTSAqaW5fa2ludiwgY29uc3QgQklH TlVNICppbl9yLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFQ19LRVkgKmVja2V5 KQotK3sKLSsgICAgaWYgKGVja2V5LT5ncm91cC0+bWV0aC0+ZWNkc2Ffc2lnbl9zaWcgPT0gTlVM TCkgewotKyAgICAgICAgRUNlcnIoRUNfRl9PU1NMX0VDRFNBX1NJR05fU0lHLCBFQ19SX0NVUlZF X0RPRVNfTk9UX1NVUFBPUlRfRUNEU0EpOwotKyAgICAgICAgcmV0dXJuIE5VTEw7Ci0rICAgIH0K LSsKLSsgICAgcmV0dXJuIGVja2V5LT5ncm91cC0+bWV0aC0+ZWNkc2Ffc2lnbl9zaWcoZGdzdCwg ZGdzdF9sZW4sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGluX2tpbnYsIGluX3IsIGVja2V5KTsKLSt9Ci0rCi0raW50IG9zc2xfZWNkc2FfdmVyaWZ5X3Np Zyhjb25zdCB1bnNpZ25lZCBjaGFyICpkZ3N0LCBpbnQgZGdzdF9sZW4sCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBFQ0RTQV9TSUcgKnNpZywgRUNfS0VZICplY2tleSkKLSt7Ci0r ICAgIGlmIChlY2tleS0+Z3JvdXAtPm1ldGgtPmVjZHNhX3ZlcmlmeV9zaWcgPT0gTlVMTCkgewot KyAgICAgICAgRUNlcnIoRUNfRl9PU1NMX0VDRFNBX1ZFUklGWV9TSUcsIEVDX1JfQ1VSVkVfRE9F U19OT1RfU1VQUE9SVF9FQ0RTQSk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsgICAgfQotKwotKyAg ICByZXR1cm4gZWNrZXktPmdyb3VwLT5tZXRoLT5lY2RzYV92ZXJpZnlfc2lnKGRnc3QsIGRnc3Rf bGVuLCBzaWcsIGVja2V5KTsKLSt9Ci0rCi0gaW50IG9zc2xfZWNkc2Ffc2lnbihpbnQgdHlwZSwg Y29uc3QgdW5zaWduZWQgY2hhciAqZGdzdCwgaW50IGRsZW4sCi0gICAgICAgICAgICAgICAgICAg ICB1bnNpZ25lZCBjaGFyICpzaWcsIHVuc2lnbmVkIGludCAqc2lnbGVuLAotICAgICAgICAgICAg ICAgICAgICAgY29uc3QgQklHTlVNICpraW52LCBjb25zdCBCSUdOVU0gKnIsIEVDX0tFWSAqZWNr ZXkpCi1AQCAtMTQ5LDE1ICsxODQsMTUgQEAgc3RhdGljIGludCBlY2RzYV9zaWduX3NldHVwKEVD X0tFWSAqZWNrZQotICAgICByZXR1cm4gcmV0OwotIH0KLSAKLS1pbnQgb3NzbF9lY2RzYV9zaWdu X3NldHVwKEVDX0tFWSAqZWNrZXksIEJOX0NUWCAqY3R4X2luLCBCSUdOVU0gKipraW52cCwKLS0g ICAgICAgICAgICAgICAgICAgICAgICAgIEJJR05VTSAqKnJwKQotK2ludCBlY2RzYV9zaW1wbGVf c2lnbl9zZXR1cChFQ19LRVkgKmVja2V5LCBCTl9DVFggKmN0eF9pbiwgQklHTlVNICoqa2ludnAs Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJJR05VTSAqKnJwKQotIHsKLSAgICAgcmV0 dXJuIGVjZHNhX3NpZ25fc2V0dXAoZWNrZXksIGN0eF9pbiwga2ludnAsIHJwLCBOVUxMLCAwKTsK LSB9Ci0gCi0tRUNEU0FfU0lHICpvc3NsX2VjZHNhX3NpZ25fc2lnKGNvbnN0IHVuc2lnbmVkIGNo YXIgKmRnc3QsIGludCBkZ3N0X2xlbiwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgQklHTlVNICppbl9raW52LCBjb25zdCBCSUdOVU0gKmluX3IsCi0tICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEVDX0tFWSAqZWNrZXkpCi0rRUNEU0FfU0lHICplY2RzYV9zaW1w bGVfc2lnbl9zaWcoY29uc3QgdW5zaWduZWQgY2hhciAqZGdzdCwgaW50IGRnc3RfbGVuLAotKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEJJR05VTSAqaW5fa2ludiwgY29u c3QgQklHTlVNICppbl9yLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVDX0tF WSAqZWNrZXkpCi0gewotICAgICBpbnQgb2sgPSAwLCBpOwotICAgICBCSUdOVU0gKmtpbnYgPSBO VUxMLCAqcywgKm0gPSBOVUxMOwotQEAgLTIxOCwyNSArMjUzLDI1IEBAIEVDRFNBX1NJRyAqb3Nz bF9lY2RzYV9zaWduX3NpZyhjb25zdCB1bnMKLSAgICAgaWYgKDggKiBkZ3N0X2xlbiA+IGkpCi0g ICAgICAgICBkZ3N0X2xlbiA9IChpICsgNykgLyA4OwotICAgICBpZiAoIUJOX2JpbjJibihkZ3N0 LCBkZ3N0X2xlbiwgbSkpIHsKLS0gICAgICAgIEVDZXJyKEVDX0ZfT1NTTF9FQ0RTQV9TSUdOX1NJ RywgRVJSX1JfQk5fTElCKTsKLSsgICAgICAgIEVDZXJyKEVDX0ZfRUNEU0FfU0lNUExFX1NJR05f U0lHLCBFUlJfUl9CTl9MSUIpOwotICAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAgICAgLyog SWYgc3RpbGwgdG9vIGxvbmcsIHRydW5jYXRlIHJlbWFpbmluZyBiaXRzIHdpdGggYSBzaGlmdCAq LwotICAgICBpZiAoKDggKiBkZ3N0X2xlbiA+IGkpICYmICFCTl9yc2hpZnQobSwgbSwgOCAtIChp ICYgMHg3KSkpIHsKLS0gICAgICAgIEVDZXJyKEVDX0ZfT1NTTF9FQ0RTQV9TSUdOX1NJRywgRVJS X1JfQk5fTElCKTsKLSsgICAgICAgIEVDZXJyKEVDX0ZfRUNEU0FfU0lNUExFX1NJR05fU0lHLCBF UlJfUl9CTl9MSUIpOwotICAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAgICAgZG8gewotICAg ICAgICAgaWYgKGluX2tpbnYgPT0gTlVMTCB8fCBpbl9yID09IE5VTEwpIHsKLSAgICAgICAgICAg ICBpZiAoIWVjZHNhX3NpZ25fc2V0dXAoZWNrZXksIGN0eCwgJmtpbnYsICZyZXQtPnIsIGRnc3Qs IGRnc3RfbGVuKSkgewotLSAgICAgICAgICAgICAgICBFQ2VycihFQ19GX09TU0xfRUNEU0FfU0lH Tl9TSUcsIEVSUl9SX0VDRFNBX0xJQik7Ci0rICAgICAgICAgICAgICAgIEVDZXJyKEVDX0ZfRUNE U0FfU0lNUExFX1NJR05fU0lHLCBFUlJfUl9FQ0RTQV9MSUIpOwotICAgICAgICAgICAgICAgICBn b3RvIGVycjsKLSAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgY2tpbnYgPSBraW52OwotICAg ICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICBja2ludiA9IGluX2tpbnY7Ci0gICAgICAgICAg ICAgaWYgKEJOX2NvcHkocmV0LT5yLCBpbl9yKSA9PSBOVUxMKSB7Ci0tICAgICAgICAgICAgICAg IEVDZXJyKEVDX0ZfT1NTTF9FQ0RTQV9TSUdOX1NJRywgRVJSX1JfTUFMTE9DX0ZBSUxVUkUpOwot KyAgICAgICAgICAgICAgICBFQ2VycihFQ19GX0VDRFNBX1NJTVBMRV9TSUdOX1NJRywgRVJSX1Jf TUFMTE9DX0ZBSUxVUkUpOwotICAgICAgICAgICAgICAgICBnb3RvIGVycjsKLSAgICAgICAgICAg ICB9Ci0gICAgICAgICB9Ci1AQCAtMjUwLDExICsyODUsMTEgQEAgRUNEU0FfU0lHICpvc3NsX2Vj ZHNhX3NpZ25fc2lnKGNvbnN0IHVucwotICAgICAgICAgICovCi0gICAgICAgICBpZiAoIWJuX3Rv X21vbnRfZml4ZWRfdG9wKHMsIHJldC0+ciwgZ3JvdXAtPm1vbnRfZGF0YSwgY3R4KQotICAgICAg ICAgICAgIHx8ICFibl9tdWxfbW9udF9maXhlZF90b3AocywgcywgcHJpdl9rZXksIGdyb3VwLT5t b250X2RhdGEsIGN0eCkpIHsKLS0gICAgICAgICAgICBFQ2VycihFQ19GX09TU0xfRUNEU0FfU0lH Tl9TSUcsIEVSUl9SX0JOX0xJQik7Ci0rICAgICAgICAgICAgRUNlcnIoRUNfRl9FQ0RTQV9TSU1Q TEVfU0lHTl9TSUcsIEVSUl9SX0JOX0xJQik7Ci0gICAgICAgICAgICAgZ290byBlcnI7Ci0gICAg ICAgICB9Ci0gICAgICAgICBpZiAoIWJuX21vZF9hZGRfZml4ZWRfdG9wKHMsIHMsIG0sIG9yZGVy KSkgewotLSAgICAgICAgICAgIEVDZXJyKEVDX0ZfT1NTTF9FQ0RTQV9TSUdOX1NJRywgRVJSX1Jf Qk5fTElCKTsKLSsgICAgICAgICAgICBFQ2VycihFQ19GX0VDRFNBX1NJTVBMRV9TSUdOX1NJRywg RVJSX1JfQk5fTElCKTsKLSAgICAgICAgICAgICBnb3RvIGVycjsKLSAgICAgICAgIH0KLSAgICAg ICAgIC8qCi1AQCAtMjYzLDcgKzI5OCw3IEBAIEVDRFNBX1NJRyAqb3NzbF9lY2RzYV9zaWduX3Np Zyhjb25zdCB1bnMKLSAgICAgICAgICAqLwotICAgICAgICAgaWYgKCFibl90b19tb250X2ZpeGVk X3RvcChzLCBzLCBncm91cC0+bW9udF9kYXRhLCBjdHgpCi0gICAgICAgICAgICAgfHwgIUJOX21v ZF9tdWxfbW9udGdvbWVyeShzLCBzLCBja2ludiwgZ3JvdXAtPm1vbnRfZGF0YSwgY3R4KSkgewot LSAgICAgICAgICAgIEVDZXJyKEVDX0ZfT1NTTF9FQ0RTQV9TSUdOX1NJRywgRVJSX1JfQk5fTElC KTsKLSsgICAgICAgICAgICBFQ2VycihFQ19GX0VDRFNBX1NJTVBMRV9TSUdOX1NJRywgRVJSX1Jf Qk5fTElCKTsKLSAgICAgICAgICAgICBnb3RvIGVycjsKLSAgICAgICAgIH0KLSAKLUBAIC0yNzMs NyArMzA4LDcgQEAgRUNEU0FfU0lHICpvc3NsX2VjZHNhX3NpZ25fc2lnKGNvbnN0IHVucwotICAg ICAgICAgICAgICAqIGdlbmVyYXRlIG5ldyBraW52IGFuZCByIHZhbHVlcwotICAgICAgICAgICAg ICAqLwotICAgICAgICAgICAgIGlmIChpbl9raW52ICE9IE5VTEwgJiYgaW5fciAhPSBOVUxMKSB7 Ci0tICAgICAgICAgICAgICAgIEVDZXJyKEVDX0ZfT1NTTF9FQ0RTQV9TSUdOX1NJRywgRUNfUl9O RUVEX05FV19TRVRVUF9WQUxVRVMpOwotKyAgICAgICAgICAgICAgICBFQ2VycihFQ19GX0VDRFNB X1NJTVBMRV9TSUdOX1NJRywgRUNfUl9ORUVEX05FV19TRVRVUF9WQUxVRVMpOwotICAgICAgICAg ICAgICAgICBnb3RvIGVycjsKLSAgICAgICAgICAgICB9Ci0gICAgICAgICB9IGVsc2UgewotQEAg LTMyNSw4ICszNjAsOCBAQCBpbnQgb3NzbF9lY2RzYV92ZXJpZnkoaW50IHR5cGUsIGNvbnN0IHVu Ci0gICAgIHJldHVybiByZXQ7Ci0gfQotIAotLWludCBvc3NsX2VjZHNhX3ZlcmlmeV9zaWcoY29u c3QgdW5zaWduZWQgY2hhciAqZGdzdCwgaW50IGRnc3RfbGVuLAotLSAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgRUNEU0FfU0lHICpzaWcsIEVDX0tFWSAqZWNrZXkpCi0raW50IGVjZHNh X3NpbXBsZV92ZXJpZnlfc2lnKGNvbnN0IHVuc2lnbmVkIGNoYXIgKmRnc3QsIGludCBkZ3N0X2xl biwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgRUNEU0FfU0lHICpzaWcsIEVD X0tFWSAqZWNrZXkpCi0gewotICAgICBpbnQgcmV0ID0gLTEsIGk7Ci0gICAgIEJOX0NUWCAqY3R4 OwotQEAgLTM0NiwxOCArMzgxLDE4IEBAIGludCBvc3NsX2VjZHNhX3ZlcmlmeV9zaWcoY29uc3Qg dW5zaWduZWQKLSAgICAgLyogY2hlY2sgaW5wdXQgdmFsdWVzICovCi0gICAgIGlmIChlY2tleSA9 PSBOVUxMIHx8IChncm91cCA9IEVDX0tFWV9nZXQwX2dyb3VwKGVja2V5KSkgPT0gTlVMTCB8fAot ICAgICAgICAgKHB1Yl9rZXkgPSBFQ19LRVlfZ2V0MF9wdWJsaWNfa2V5KGVja2V5KSkgPT0gTlVM TCB8fCBzaWcgPT0gTlVMTCkgewotLSAgICAgICAgRUNlcnIoRUNfRl9PU1NMX0VDRFNBX1ZFUklG WV9TSUcsIEVDX1JfTUlTU0lOR19QQVJBTUVURVJTKTsKLSsgICAgICAgIEVDZXJyKEVDX0ZfRUNE U0FfU0lNUExFX1ZFUklGWV9TSUcsIEVDX1JfTUlTU0lOR19QQVJBTUVURVJTKTsKLSAgICAgICAg IHJldHVybiAtMTsKLSAgICAgfQotIAotICAgICBpZiAoIUVDX0tFWV9jYW5fc2lnbihlY2tleSkp IHsKLS0gICAgICAgIEVDZXJyKEVDX0ZfT1NTTF9FQ0RTQV9WRVJJRllfU0lHLCBFQ19SX0NVUlZF X0RPRVNfTk9UX1NVUFBPUlRfU0lHTklORyk7Ci0rICAgICAgICBFQ2VycihFQ19GX0VDRFNBX1NJ TVBMRV9WRVJJRllfU0lHLCBFQ19SX0NVUlZFX0RPRVNfTk9UX1NVUFBPUlRfU0lHTklORyk7Ci0g ICAgICAgICByZXR1cm4gLTE7Ci0gICAgIH0KLSAKLSAgICAgY3R4ID0gQk5fQ1RYX25ldygpOwot ICAgICBpZiAoY3R4ID09IE5VTEwpIHsKLS0gICAgICAgIEVDZXJyKEVDX0ZfT1NTTF9FQ0RTQV9W RVJJRllfU0lHLCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7Ci0rICAgICAgICBFQ2VycihFQ19GX0VD RFNBX1NJTVBMRV9WRVJJRllfU0lHLCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7Ci0gICAgICAgICBy ZXR1cm4gLTE7Ci0gICAgIH0KLSAgICAgQk5fQ1RYX3N0YXJ0KGN0eCk7Ci1AQCAtMzY2LDI2ICs0 MDEsMjYgQEAgaW50IG9zc2xfZWNkc2FfdmVyaWZ5X3NpZyhjb25zdCB1bnNpZ25lZAotICAgICBt ID0gQk5fQ1RYX2dldChjdHgpOwotICAgICBYID0gQk5fQ1RYX2dldChjdHgpOwotICAgICBpZiAo WCA9PSBOVUxMKSB7Ci0tICAgICAgICBFQ2VycihFQ19GX09TU0xfRUNEU0FfVkVSSUZZX1NJRywg RVJSX1JfQk5fTElCKTsKLSsgICAgICAgIEVDZXJyKEVDX0ZfRUNEU0FfU0lNUExFX1ZFUklGWV9T SUcsIEVSUl9SX0JOX0xJQik7Ci0gICAgICAgICBnb3RvIGVycjsKLSAgICAgfQotIAotICAgICBv cmRlciA9IEVDX0dST1VQX2dldDBfb3JkZXIoZ3JvdXApOwotICAgICBpZiAob3JkZXIgPT0gTlVM TCkgewotLSAgICAgICAgRUNlcnIoRUNfRl9PU1NMX0VDRFNBX1ZFUklGWV9TSUcsIEVSUl9SX0VD X0xJQik7Ci0rICAgICAgICBFQ2VycihFQ19GX0VDRFNBX1NJTVBMRV9WRVJJRllfU0lHLCBFUlJf Ul9FQ19MSUIpOwotICAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAKLSAgICAgaWYgKEJOX2lz X3plcm8oc2lnLT5yKSB8fCBCTl9pc19uZWdhdGl2ZShzaWctPnIpIHx8Ci0gICAgICAgICBCTl91 Y21wKHNpZy0+ciwgb3JkZXIpID49IDAgfHwgQk5faXNfemVybyhzaWctPnMpIHx8Ci0gICAgICAg ICBCTl9pc19uZWdhdGl2ZShzaWctPnMpIHx8IEJOX3VjbXAoc2lnLT5zLCBvcmRlcikgPj0gMCkg ewotLSAgICAgICAgRUNlcnIoRUNfRl9PU1NMX0VDRFNBX1ZFUklGWV9TSUcsIEVDX1JfQkFEX1NJ R05BVFVSRSk7Ci0rICAgICAgICBFQ2VycihFQ19GX0VDRFNBX1NJTVBMRV9WRVJJRllfU0lHLCBF Q19SX0JBRF9TSUdOQVRVUkUpOwotICAgICAgICAgcmV0ID0gMDsgICAgICAgICAgICAgICAgLyog c2lnbmF0dXJlIGlzIGludmFsaWQgKi8KLSAgICAgICAgIGdvdG8gZXJyOwotICAgICB9Ci0gICAg IC8qIGNhbGN1bGF0ZSB0bXAxID0gaW52KFMpIG1vZCBvcmRlciAqLwotICAgICBpZiAoIWVjX2dy b3VwX2RvX2ludmVyc2Vfb3JkKGdyb3VwLCB1Miwgc2lnLT5zLCBjdHgpKSB7Ci0tICAgICAgICBF Q2VycihFQ19GX09TU0xfRUNEU0FfVkVSSUZZX1NJRywgRVJSX1JfQk5fTElCKTsKLSsgICAgICAg IEVDZXJyKEVDX0ZfRUNEU0FfU0lNUExFX1ZFUklGWV9TSUcsIEVSUl9SX0JOX0xJQik7Ci0gICAg ICAgICBnb3RvIGVycjsKLSAgICAgfQotICAgICAvKiBkaWdlc3QgLT4gbSAqLwotQEAgLTM5Niw0 MSArNDMxLDQxIEBAIGludCBvc3NsX2VjZHNhX3ZlcmlmeV9zaWcoY29uc3QgdW5zaWduZWQKLSAg ICAgaWYgKDggKiBkZ3N0X2xlbiA+IGkpCi0gICAgICAgICBkZ3N0X2xlbiA9IChpICsgNykgLyA4 OwotICAgICBpZiAoIUJOX2JpbjJibihkZ3N0LCBkZ3N0X2xlbiwgbSkpIHsKLS0gICAgICAgIEVD ZXJyKEVDX0ZfT1NTTF9FQ0RTQV9WRVJJRllfU0lHLCBFUlJfUl9CTl9MSUIpOwotKyAgICAgICAg RUNlcnIoRUNfRl9FQ0RTQV9TSU1QTEVfVkVSSUZZX1NJRywgRVJSX1JfQk5fTElCKTsKLSAgICAg ICAgIGdvdG8gZXJyOwotICAgICB9Ci0gICAgIC8qIElmIHN0aWxsIHRvbyBsb25nIHRydW5jYXRl IHJlbWFpbmluZyBiaXRzIHdpdGggYSBzaGlmdCAqLwotICAgICBpZiAoKDggKiBkZ3N0X2xlbiA+ IGkpICYmICFCTl9yc2hpZnQobSwgbSwgOCAtIChpICYgMHg3KSkpIHsKLS0gICAgICAgIEVDZXJy KEVDX0ZfT1NTTF9FQ0RTQV9WRVJJRllfU0lHLCBFUlJfUl9CTl9MSUIpOwotKyAgICAgICAgRUNl cnIoRUNfRl9FQ0RTQV9TSU1QTEVfVkVSSUZZX1NJRywgRVJSX1JfQk5fTElCKTsKLSAgICAgICAg IGdvdG8gZXJyOwotICAgICB9Ci0gICAgIC8qIHUxID0gbSAqIHRtcCBtb2Qgb3JkZXIgKi8KLSAg ICAgaWYgKCFCTl9tb2RfbXVsKHUxLCBtLCB1Miwgb3JkZXIsIGN0eCkpIHsKLS0gICAgICAgIEVD ZXJyKEVDX0ZfT1NTTF9FQ0RTQV9WRVJJRllfU0lHLCBFUlJfUl9CTl9MSUIpOwotKyAgICAgICAg RUNlcnIoRUNfRl9FQ0RTQV9TSU1QTEVfVkVSSUZZX1NJRywgRVJSX1JfQk5fTElCKTsKLSAgICAg ICAgIGdvdG8gZXJyOwotICAgICB9Ci0gICAgIC8qIHUyID0gciAqIHcgbW9kIHEgKi8KLSAgICAg aWYgKCFCTl9tb2RfbXVsKHUyLCBzaWctPnIsIHUyLCBvcmRlciwgY3R4KSkgewotLSAgICAgICAg RUNlcnIoRUNfRl9PU1NMX0VDRFNBX1ZFUklGWV9TSUcsIEVSUl9SX0JOX0xJQik7Ci0rICAgICAg ICBFQ2VycihFQ19GX0VDRFNBX1NJTVBMRV9WRVJJRllfU0lHLCBFUlJfUl9CTl9MSUIpOwotICAg ICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAKLSAgICAgaWYgKChwb2ludCA9IEVDX1BPSU5UX25l dyhncm91cCkpID09IE5VTEwpIHsKLS0gICAgICAgIEVDZXJyKEVDX0ZfT1NTTF9FQ0RTQV9WRVJJ RllfU0lHLCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7Ci0rICAgICAgICBFQ2VycihFQ19GX0VDRFNB X1NJTVBMRV9WRVJJRllfU0lHLCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7Ci0gICAgICAgICBnb3Rv IGVycjsKLSAgICAgfQotICAgICBpZiAoIUVDX1BPSU5UX211bChncm91cCwgcG9pbnQsIHUxLCBw dWJfa2V5LCB1MiwgY3R4KSkgewotLSAgICAgICAgRUNlcnIoRUNfRl9PU1NMX0VDRFNBX1ZFUklG WV9TSUcsIEVSUl9SX0VDX0xJQik7Ci0rICAgICAgICBFQ2VycihFQ19GX0VDRFNBX1NJTVBMRV9W RVJJRllfU0lHLCBFUlJfUl9FQ19MSUIpOwotICAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAK LSAgICAgaWYgKCFFQ19QT0lOVF9nZXRfYWZmaW5lX2Nvb3JkaW5hdGVzKGdyb3VwLCBwb2ludCwg WCwgTlVMTCwgY3R4KSkgewotLSAgICAgICAgRUNlcnIoRUNfRl9PU1NMX0VDRFNBX1ZFUklGWV9T SUcsIEVSUl9SX0VDX0xJQik7Ci0rICAgICAgICBFQ2VycihFQ19GX0VDRFNBX1NJTVBMRV9WRVJJ RllfU0lHLCBFUlJfUl9FQ19MSUIpOwotICAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAKLSAg ICAgaWYgKCFCTl9ubm1vZCh1MSwgWCwgb3JkZXIsIGN0eCkpIHsKLS0gICAgICAgIEVDZXJyKEVD X0ZfT1NTTF9FQ0RTQV9WRVJJRllfU0lHLCBFUlJfUl9CTl9MSUIpOwotKyAgICAgICAgRUNlcnIo RUNfRl9FQ0RTQV9TSU1QTEVfVkVSSUZZX1NJRywgRVJSX1JfQk5fTElCKTsKLSAgICAgICAgIGdv dG8gZXJyOwotICAgICB9Ci0gICAgIC8qICBpZiB0aGUgc2lnbmF0dXJlIGlzIGNvcnJlY3QgdTEg aXMgZXF1YWwgdG8gc2lnLT5yICovCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMv ZWNfZXJyLmMuczM5MHgtZWNjIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY19lcnIuYwotLS0t IG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY19lcnIuYy5zMzkweC1lY2MJMjAyMC0wNC0yMSAx NDoyMjozOS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNf ZXJyLmMJMjAyMC0wNS0xOCAxMjo0NTo0Mi42NjQyNDk5ODMgKzAyMDAKLUBAIC0zMSw2ICszMSwx MSBAQCBzdGF0aWMgY29uc3QgRVJSX1NUUklOR19EQVRBIEVDX3N0cl9mdW5jCi0gICAgIHtFUlJf UEFDSyhFUlJfTElCX0VDLCBFQ19GX0VDRFNBX1NJR05fU0VUVVAsIDApLCAiRUNEU0Ffc2lnbl9z ZXR1cCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9FQywgRUNfRl9FQ0RTQV9TSUdfTkVXLCAw KSwgIkVDRFNBX1NJR19uZXcifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRUMsIEVDX0ZfRUNE U0FfVkVSSUZZLCAwKSwgIkVDRFNBX3ZlcmlmeSJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9F QywgRUNfRl9FQ0RTQV9TSU1QTEVfU0lHTl9TRVRVUCwgMCksICJlY2RzYV9zaW1wbGVfc2lnbl9z ZXR1cCJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9FQywgRUNfRl9FQ0RTQV9TSU1QTEVfU0lH Tl9TSUcsIDApLCAiZWNkc2Ffc2ltcGxlX3NpZ25fc2lnIn0sCi0rICAgIHtFUlJfUEFDSyhFUlJf TElCX0VDLCBFQ19GX0VDRFNBX1NJTVBMRV9WRVJJRllfU0lHLCAwKSwgImVjZHNhX3NpbXBsZV92 ZXJpZnlfc2lnIn0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0VDLCBFQ19GX0VDRFNBX1MzOTBY X05JU1RQX1NJR05fU0lHLCAwKSwgImVjZHNhX3MzOTB4X25pc3RwX3NpZ25fc2lnIn0sCi0rICAg IHtFUlJfUEFDSyhFUlJfTElCX0VDLCBFQ19GX0VDRFNBX1MzOTBYX05JU1RQX1ZFUklGWV9TSUcs IDApLCAiZWNkc2FfczM5MHhfbmlzdHBfdmVyaWZ5X3NpZyJ9LAotICAgICB7RVJSX1BBQ0soRVJS X0xJQl9FQywgRUNfRl9FQ0RfSVRFTV9WRVJJRlksIDApLCAiZWNkX2l0ZW1fdmVyaWZ5In0sCi0g ICAgIHtFUlJfUEFDSyhFUlJfTElCX0VDLCBFQ19GX0VDS0VZX1BBUkFNMlRZUEUsIDApLCAiZWNr ZXlfcGFyYW0ydHlwZSJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9FQywgRUNfRl9FQ0tFWV9Q QVJBTV9ERUNPREUsIDApLCAiZWNrZXlfcGFyYW1fZGVjb2RlIn0sCi1AQCAtMjY2LDYgKzI3MSw3 IEBAIHN0YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEgRUNfc3RyX2Z1bmMKLSAgICAge0VSUl9Q QUNLKEVSUl9MSUJfRUMsIEVDX0ZfT0xEX0VDX1BSSVZfREVDT0RFLCAwKSwgIm9sZF9lY19wcml2 X2RlY29kZSJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9FQywgRUNfRl9PU1NMX0VDREhfQ09N UFVURV9LRVksIDApLAotICAgICAgIm9zc2xfZWNkaF9jb21wdXRlX2tleSJ9LAotKyAgICB7RVJS X1BBQ0soRVJSX0xJQl9FQywgRUNfRl9PU1NMX0VDRFNBX1NJR05fU0VUVVAsIDApLCAib3NzbF9l Y2RzYV9zaWduX3NldHVwIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0VDLCBFQ19GX09TU0xf RUNEU0FfU0lHTl9TSUcsIDApLCAib3NzbF9lY2RzYV9zaWduX3NpZyJ9LAotICAgICB7RVJSX1BB Q0soRVJSX0xJQl9FQywgRUNfRl9PU1NMX0VDRFNBX1ZFUklGWV9TSUcsIDApLAotICAgICAgIm9z c2xfZWNkc2FfdmVyaWZ5X3NpZyJ9LAotQEAgLTI4NCw2ICsyOTAsMTIgQEAgc3RhdGljIGNvbnN0 IEVSUl9TVFJJTkdfREFUQSBFQ19zdHJfZnVuYwotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9FQywg RUNfRl9QS0VZX0VDX0tFWUdFTiwgMCksICJwa2V5X2VjX2tleWdlbiJ9LAotICAgICB7RVJSX1BB Q0soRVJSX0xJQl9FQywgRUNfRl9QS0VZX0VDX1BBUkFNR0VOLCAwKSwgInBrZXlfZWNfcGFyYW1n ZW4ifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRUMsIEVDX0ZfUEtFWV9FQ19TSUdOLCAwKSwg InBrZXlfZWNfc2lnbiJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9FQywgRUNfRl9TMzkwWF9Q S0VZX0VDRF9ESUdFU1RTSUdOMjU1MTksIDApLCAiczM5MHhfcGtleV9lY2RfZGlnZXN0c2lnbjI1 NTE5In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0VDLCBFQ19GX1MzOTBYX1BLRVlfRUNEX0RJ R0VTVFNJR040NDgsIDApLCAiczM5MHhfcGtleV9lY2RfZGlnZXN0c2lnbjQ0OCJ9LAotKyAgICB7 RVJSX1BBQ0soRVJSX0xJQl9FQywgRUNfRl9TMzkwWF9QS0VZX0VDRF9LRVlHRU4yNTUxOSwgMCks ICJzMzkweF9wa2V5X2VjZF9rZXlnZW4yNTUxOSJ9LAotKyAgICB7RVJSX1BBQ0soRVJSX0xJQl9F QywgRUNfRl9TMzkwWF9QS0VZX0VDRF9LRVlHRU40NDgsIDApLCAiczM5MHhfcGtleV9lY2Rfa2V5 Z2VuNDQ4In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0VDLCBFQ19GX1MzOTBYX1BLRVlfRUNY X0tFWUdFTjI1NTE5LCAwKSwgInMzOTB4X3BrZXlfZWN4X2tleWdlbjI1NTE5In0sCi0rICAgIHtF UlJfUEFDSyhFUlJfTElCX0VDLCBFQ19GX1MzOTBYX1BLRVlfRUNYX0tFWUdFTjQ0OCwgMCksICJz MzkweF9wa2V5X2VjeF9rZXlnZW40NDgifSwKLSAgICAge0VSUl9QQUNLKEVSUl9MSUJfRUMsIEVD X0ZfVkFMSURBVEVfRUNYX0RFUklWRSwgMCksICJ2YWxpZGF0ZV9lY3hfZGVyaXZlIn0sCi0gICAg IHswLCBOVUxMfQotIH07Ci1AQCAtMjk4LDYgKzMxMCw4IEBAIHN0YXRpYyBjb25zdCBFUlJfU1RS SU5HX0RBVEEgRUNfc3RyX3JlYXMKLSAgICAgImNvb3JkaW5hdGVzIG91dCBvZiByYW5nZSJ9LAot ICAgICB7RVJSX1BBQ0soRVJSX0xJQl9FQywgMCwgRUNfUl9DVVJWRV9ET0VTX05PVF9TVVBQT1JU X0VDREgpLAotICAgICAiY3VydmUgZG9lcyBub3Qgc3VwcG9ydCBlY2RoIn0sCi0rICAgIHtFUlJf UEFDSyhFUlJfTElCX0VDLCAwLCBFQ19SX0NVUlZFX0RPRVNfTk9UX1NVUFBPUlRfRUNEU0EpLAot KyAgICAiY3VydmUgZG9lcyBub3Qgc3VwcG9ydCBlY2RzYSJ9LAotICAgICB7RVJSX1BBQ0soRVJS X0xJQl9FQywgMCwgRUNfUl9DVVJWRV9ET0VTX05PVF9TVVBQT1JUX1NJR05JTkcpLAotICAgICAi Y3VydmUgZG9lcyBub3Qgc3VwcG9ydCBzaWduaW5nIn0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElC X0VDLCAwLCBFQ19SX0QySV9FQ1BLUEFSQU1FVEVSU19GQUlMVVJFKSwKLWRpZmYgLXVwIG9wZW5z c2wtMS4xLjFnL2NyeXB0by9lYy9lY19sb2NhbC5oLnMzOTB4LWVjYyBvcGVuc3NsLTEuMS4xZy9j cnlwdG8vZWMvZWNfbG9jYWwuaAotLS0tIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY19sb2Nh bC5oLnMzOTB4LWVjYwkyMDIwLTA1LTE4IDEyOjQ1OjQwLjU1NDIzMTY0NiArMDIwMAotKysrIG9w ZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY19sb2NhbC5oCTIwMjAtMDUtMTggMTI6NDU6NDQuNTY0 MjY2NDk2ICswMjAwCi1AQCAtMTc5LDYgKzE3OSwxNCBAQCBzdHJ1Y3QgZWNfbWV0aG9kX3N0IHsK LSAgICAgLyogY3VzdG9tIEVDREggb3BlcmF0aW9uICovCi0gICAgIGludCAoKmVjZGhfY29tcHV0 ZV9rZXkpKHVuc2lnbmVkIGNoYXIgKipwb3V0LCBzaXplX3QgKnBvdXRsZW4sCi0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IEVDX1BPSU5UICpwdWJfa2V5LCBjb25zdCBFQ19LRVkg KmVjZGgpOwotKyAgICAvKiBjdXN0b20gRUNEU0EgKi8KLSsgICAgaW50ICgqZWNkc2Ffc2lnbl9z ZXR1cCkoRUNfS0VZICplY2tleSwgQk5fQ1RYICpjdHgsIEJJR05VTSAqKmtpbnZwLAotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICBCSUdOVU0gKipycCk7Ci0rICAgIEVDRFNBX1NJRyAqKCpl Y2RzYV9zaWduX3NpZykoY29uc3QgdW5zaWduZWQgY2hhciAqZGdzdCwgaW50IGRnc3RsZW4sCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQklHTlVNICpraW52LCBjb25z dCBCSUdOVU0gKnIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUNfS0VZICpl Y2tleSk7Ci0rICAgIGludCAoKmVjZHNhX3ZlcmlmeV9zaWcpKGNvbnN0IHVuc2lnbmVkIGNoYXIg KmRnc3QsIGludCBkZ3N0bGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBF Q0RTQV9TSUcgKnNpZywgRUNfS0VZICplY2tleSk7Ci0gICAgIC8qIEludmVyc2UgbW9kdWxvIG9y ZGVyICovCi0gICAgIGludCAoKmZpZWxkX2ludmVyc2VfbW9kX29yZCkoY29uc3QgRUNfR1JPVVAg KiwgQklHTlVNICpyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEJJ R05VTSAqeCwgQk5fQ1RYICopOwotQEAgLTU4Nyw2ICs1OTUsMTEgQEAgaW50IGVjX2dyb3VwX3Np bXBsZV9vcmRlcl9iaXRzKGNvbnN0IEVDXwotICAqLwotIGNvbnN0IEVDX01FVEhPRCAqRUNfR0Zw X25pc3R6MjU2X21ldGhvZCh2b2lkKTsKLSAjZW5kaWYKLSsjaWZkZWYgUzM5MFhfRUNfQVNNCi0r Y29uc3QgRUNfTUVUSE9EICpFQ19HRnBfczM5MHhfbmlzdHAyNTZfbWV0aG9kKHZvaWQpOwotK2Nv bnN0IEVDX01FVEhPRCAqRUNfR0ZwX3MzOTB4X25pc3RwMzg0X21ldGhvZCh2b2lkKTsKLStjb25z dCBFQ19NRVRIT0QgKkVDX0dGcF9zMzkweF9uaXN0cDUyMV9tZXRob2Qodm9pZCk7Ci0rI2VuZGlm Ci0gCi0gc2l6ZV90IGVjX2tleV9zaW1wbGVfcHJpdjJvY3QoY29uc3QgRUNfS0VZICplY2tleSwK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyICpidWYsIHNpemVf dCBsZW4pOwotQEAgLTY1MSw2ICs2NjQsMTMgQEAgaW50IG9zc2xfZWNkc2FfdmVyaWZ5KGludCB0 eXBlLCBjb25zdCB1bgotICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFy ICpzaWdidWYsIGludCBzaWdfbGVuLCBFQ19LRVkgKmVja2V5KTsKLSBpbnQgb3NzbF9lY2RzYV92 ZXJpZnlfc2lnKGNvbnN0IHVuc2lnbmVkIGNoYXIgKmRnc3QsIGludCBkZ3N0X2xlbiwKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVDRFNBX1NJRyAqc2lnLCBFQ19LRVkgKmVja2V5 KTsKLStpbnQgZWNkc2Ffc2ltcGxlX3NpZ25fc2V0dXAoRUNfS0VZICplY2tleSwgQk5fQ1RYICpj dHhfaW4sIEJJR05VTSAqKmtpbnZwLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBCSUdO VU0gKipycCk7Ci0rRUNEU0FfU0lHICplY2RzYV9zaW1wbGVfc2lnbl9zaWcoY29uc3QgdW5zaWdu ZWQgY2hhciAqZGdzdCwgaW50IGRnc3RfbGVuLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IEJJR05VTSAqaW5fa2ludiwgY29uc3QgQklHTlVNICppbl9yLAotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVDX0tFWSAqZWNrZXkpOwotK2ludCBlY2RzYV9z aW1wbGVfdmVyaWZ5X3NpZyhjb25zdCB1bnNpZ25lZCBjaGFyICpkZ3N0LCBpbnQgZGdzdF9sZW4s Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEVDRFNBX1NJRyAqc2lnLCBFQ19L RVkgKmVja2V5KTsKLSAKLSBpbnQgRUQyNTUxOV9zaWduKHVpbnQ4X3QgKm91dF9zaWcsIGNvbnN0 IHVpbnQ4X3QgKm1lc3NhZ2UsIHNpemVfdCBtZXNzYWdlX2xlbiwKLSAgICAgICAgICAgICAgICAg IGNvbnN0IHVpbnQ4X3QgcHVibGljX2tleVszMl0sIGNvbnN0IHVpbnQ4X3QgcHJpdmF0ZV9rZXlb MzJdKTsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY19wbWV0aC5jLnMzOTB4 LWVjYyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNfcG1ldGguYwotLS0tIG9wZW5zc2wtMS4x LjFnL2NyeXB0by9lYy9lY19wbWV0aC5jLnMzOTB4LWVjYwkyMDIwLTA1LTE4IDEyOjQ1OjQwLjc4 NDIzMzY0NCArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY19wbWV0aC5jCTIw MjAtMDUtMTggMTI6NDU6NDQuNTY1MjY2NTA1ICswMjAwCi1AQCAtNDc0LDMgKzQ3NCw4IEBAIGNv bnN0IEVWUF9QS0VZX01FVEhPRCBlY19wa2V5X21ldGggPSB7Ci0gICAgIHBrZXlfZWNfY3RybCwK LSAgICAgcGtleV9lY19jdHJsX3N0cgotIH07Ci0rCi0rY29uc3QgRVZQX1BLRVlfTUVUSE9EICpl Y19wa2V5X21ldGhvZCh2b2lkKQotK3sKLSsgICAgcmV0dXJuICZlY19wa2V5X21ldGg7Ci0rfQot ZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjcF9tb250LmMuczM5MHgtZWNjIG9w ZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY3BfbW9udC5jCi0tLS0gb3BlbnNzbC0xLjEuMWcvY3J5 cHRvL2VjL2VjcF9tb250LmMuczM5MHgtZWNjCTIwMjAtMDQtMjEgMTQ6MjI6MzkuMDAwMDAwMDAw ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjcF9tb250LmMJMjAyMC0wNS0x OCAxMjo0NTo0NC41NjcyNjY1MjMgKzAyMDAKLUBAIC02Myw2ICs2Myw5IEBAIGNvbnN0IEVDX01F VEhPRCAqRUNfR0ZwX21vbnRfbWV0aG9kKHZvaWQKLSAgICAgICAgIDAsIC8qIGtleWNvcHkgKi8K LSAgICAgICAgIDAsIC8qIGtleWZpbmlzaCAqLwotICAgICAgICAgZWNkaF9zaW1wbGVfY29tcHV0 ZV9rZXksCi0rICAgICAgICBlY2RzYV9zaW1wbGVfc2lnbl9zZXR1cCwKLSsgICAgICAgIGVjZHNh X3NpbXBsZV9zaWduX3NpZywKLSsgICAgICAgIGVjZHNhX3NpbXBsZV92ZXJpZnlfc2lnLAotICAg ICAgICAgMCwgLyogZmllbGRfaW52ZXJzZV9tb2Rfb3JkICovCi0gICAgICAgICBlY19HRnBfc2lt cGxlX2JsaW5kX2Nvb3JkaW5hdGVzLAotICAgICAgICAgZWNfR0ZwX3NpbXBsZV9sYWRkZXJfcHJl LAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjcF9uaXN0LmMuczM5MHgtZWNj IG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY3BfbmlzdC5jCi0tLS0gb3BlbnNzbC0xLjEuMWcv Y3J5cHRvL2VjL2VjcF9uaXN0LmMuczM5MHgtZWNjCTIwMjAtMDQtMjEgMTQ6MjI6MzkuMDAwMDAw MDAwICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjcF9uaXN0LmMJMjAyMC0w NS0xOCAxMjo0NTo0NC41NjcyNjY1MjMgKzAyMDAKLUBAIC02NSw2ICs2NSw5IEBAIGNvbnN0IEVD X01FVEhPRCAqRUNfR0ZwX25pc3RfbWV0aG9kKHZvaWQKLSAgICAgICAgIDAsIC8qIGtleWNvcHkg Ki8KLSAgICAgICAgIDAsIC8qIGtleWZpbmlzaCAqLwotICAgICAgICAgZWNkaF9zaW1wbGVfY29t cHV0ZV9rZXksCi0rICAgICAgICBlY2RzYV9zaW1wbGVfc2lnbl9zZXR1cCwKLSsgICAgICAgIGVj ZHNhX3NpbXBsZV9zaWduX3NpZywKLSsgICAgICAgIGVjZHNhX3NpbXBsZV92ZXJpZnlfc2lnLAot ICAgICAgICAgMCwgLyogZmllbGRfaW52ZXJzZV9tb2Rfb3JkICovCi0gICAgICAgICBlY19HRnBf c2ltcGxlX2JsaW5kX2Nvb3JkaW5hdGVzLAotICAgICAgICAgZWNfR0ZwX3NpbXBsZV9sYWRkZXJf cHJlLAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjcF9uaXN0cDIyNC5jLnMz OTB4LWVjYyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNwX25pc3RwMjI0LmMKLS0tLSBvcGVu c3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNwX25pc3RwMjI0LmMuczM5MHgtZWNjCTIwMjAtMDQtMjEg MTQ6MjI6MzkuMDAwMDAwMDAwICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2Vj cF9uaXN0cDIyNC5jCTIwMjAtMDUtMTggMTI6NDU6NDQuNTY4MjY2NTMxICswMjAwCi1AQCAtMjky LDYgKzI5Miw5IEBAIGNvbnN0IEVDX01FVEhPRCAqRUNfR0ZwX25pc3RwMjI0X21ldGhvZCgKLSAg ICAgICAgIDAsIC8qIGtleWNvcHkgKi8KLSAgICAgICAgIDAsIC8qIGtleWZpbmlzaCAqLwotICAg ICAgICAgZWNkaF9zaW1wbGVfY29tcHV0ZV9rZXksCi0rICAgICAgICBlY2RzYV9zaW1wbGVfc2ln bl9zZXR1cCwKLSsgICAgICAgIGVjZHNhX3NpbXBsZV9zaWduX3NpZywKLSsgICAgICAgIGVjZHNh X3NpbXBsZV92ZXJpZnlfc2lnLAotICAgICAgICAgMCwgLyogZmllbGRfaW52ZXJzZV9tb2Rfb3Jk ICovCi0gICAgICAgICAwLCAvKiBibGluZF9jb29yZGluYXRlcyAqLwotICAgICAgICAgMCwgLyog bGFkZGVyX3ByZSAqLwotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjcF9uaXN0 cDI1Ni5jLnMzOTB4LWVjYyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNwX25pc3RwMjU2LmMK LS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNwX25pc3RwMjU2LmMuczM5MHgtZWNjCTIw MjAtMDQtMjEgMTQ6MjI6MzkuMDAwMDAwMDAwICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5 cHRvL2VjL2VjcF9uaXN0cDI1Ni5jCTIwMjAtMDUtMTggMTI6NDU6NDQuNTY4MjY2NTMxICswMjAw Ci1AQCAtMTgyOSw2ICsxODI5LDkgQEAgY29uc3QgRUNfTUVUSE9EICpFQ19HRnBfbmlzdHAyNTZf bWV0aG9kKAotICAgICAgICAgMCwgLyoga2V5Y29weSAqLwotICAgICAgICAgMCwgLyoga2V5Zmlu aXNoICovCi0gICAgICAgICBlY2RoX3NpbXBsZV9jb21wdXRlX2tleSwKLSsgICAgICAgIGVjZHNh X3NpbXBsZV9zaWduX3NldHVwLAotKyAgICAgICAgZWNkc2Ffc2ltcGxlX3NpZ25fc2lnLAotKyAg ICAgICAgZWNkc2Ffc2ltcGxlX3ZlcmlmeV9zaWcsCi0gICAgICAgICAwLCAvKiBmaWVsZF9pbnZl cnNlX21vZF9vcmQgKi8KLSAgICAgICAgIDAsIC8qIGJsaW5kX2Nvb3JkaW5hdGVzICovCi0gICAg ICAgICAwLCAvKiBsYWRkZXJfcHJlICovCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8v ZWMvZWNwX25pc3RwNTIxLmMuczM5MHgtZWNjIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY3Bf bmlzdHA1MjEuYwotLS0tIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY3BfbmlzdHA1MjEuYy5z MzkweC1lY2MJMjAyMC0wNC0yMSAxNDoyMjozOS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBvcGVuc3Ns LTEuMS4xZy9jcnlwdG8vZWMvZWNwX25pc3RwNTIxLmMJMjAyMC0wNS0xOCAxMjo0NTo0NC41Njky NjY1NDAgKzAyMDAKLUBAIC0xNjY5LDYgKzE2NjksOSBAQCBjb25zdCBFQ19NRVRIT0QgKkVDX0dG cF9uaXN0cDUyMV9tZXRob2QoCi0gICAgICAgICAwLCAvKiBrZXljb3B5ICovCi0gICAgICAgICAw LCAvKiBrZXlmaW5pc2ggKi8KLSAgICAgICAgIGVjZGhfc2ltcGxlX2NvbXB1dGVfa2V5LAotKyAg ICAgICAgZWNkc2Ffc2ltcGxlX3NpZ25fc2V0dXAsCi0rICAgICAgICBlY2RzYV9zaW1wbGVfc2ln bl9zaWcsCi0rICAgICAgICBlY2RzYV9zaW1wbGVfdmVyaWZ5X3NpZywKLSAgICAgICAgIDAsIC8q IGZpZWxkX2ludmVyc2VfbW9kX29yZCAqLwotICAgICAgICAgMCwgLyogYmxpbmRfY29vcmRpbmF0 ZXMgKi8KLSAgICAgICAgIDAsIC8qIGxhZGRlcl9wcmUgKi8KLWRpZmYgLXVwIG9wZW5zc2wtMS4x LjFnL2NyeXB0by9lYy9lY3BfbmlzdHoyNTYuYy5zMzkweC1lY2Mgb3BlbnNzbC0xLjEuMWcvY3J5 cHRvL2VjL2VjcF9uaXN0ejI1Ni5jCi0tLS0gb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjcF9u aXN0ejI1Ni5jLnMzOTB4LWVjYwkyMDIwLTA0LTIxIDE0OjIyOjM5LjAwMDAwMDAwMCArMDIwMAot KysrIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9lYy9lY3BfbmlzdHoyNTYuYwkyMDIwLTA1LTE4IDEy OjQ1OjQ0LjU3MDI2NjU0OSArMDIwMAotQEAgLTE3MjAsNiArMTcyMCw5IEBAIGNvbnN0IEVDX01F VEhPRCAqRUNfR0ZwX25pc3R6MjU2X21ldGhvZCgKLSAgICAgICAgIDAsIC8qIGtleWNvcHkgKi8K LSAgICAgICAgIDAsIC8qIGtleWZpbmlzaCAqLwotICAgICAgICAgZWNkaF9zaW1wbGVfY29tcHV0 ZV9rZXksCi0rICAgICAgICBlY2RzYV9zaW1wbGVfc2lnbl9zZXR1cCwKLSsgICAgICAgIGVjZHNh X3NpbXBsZV9zaWduX3NpZywKLSsgICAgICAgIGVjZHNhX3NpbXBsZV92ZXJpZnlfc2lnLAotICAg ICAgICAgZWNwX25pc3R6MjU2X2ludl9tb2Rfb3JkLCAgICAgICAgICAgICAgICAgICAvKiBjYW4g YmUgI2RlZmluZS1kIE5VTEwgKi8KLSAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgLyogYmxpbmRfY29vcmRpbmF0ZXMgKi8KLSAgICAgICAgIDAsICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogbGFkZGVyX3ByZSAqLwot ZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjcF9zMzkweF9uaXN0cC5jLnMzOTB4 LWVjYyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNwX3MzOTB4X25pc3RwLmMKLS0tLSBvcGVu c3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNwX3MzOTB4X25pc3RwLmMuczM5MHgtZWNjCTIwMjAtMDUt MTggMTI6NDU6NDQuNTcxMjY2NTU3ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2Vj L2VjcF9zMzkweF9uaXN0cC5jCTIwMjAtMDUtMTggMTI6NDU6NDQuNTcxMjY2NTU3ICswMjAwCi1A QCAtMCwwICsxLDM5NCBAQAotKy8qCi0rICogQ29weXJpZ2h0IDIwMTkgVGhlIE9wZW5TU0wgUHJv amVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJlc2VydmVkLgotKyAqCi0rICogTGljZW5zZWQgdW5k ZXIgdGhlIEFwYWNoZSBMaWNlbnNlIDIuMCAodGhlICJMaWNlbnNlIikuICBZb3UgbWF5IG5vdCB1 c2UKLSsgKiB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4g IFlvdSBjYW4gb2J0YWluIGEgY29weQotKyAqIGluIHRoZSBmaWxlIExJQ0VOU0UgaW4gdGhlIHNv dXJjZSBkaXN0cmlidXRpb24gb3IgYXQKLSsgKiBodHRwczovL3d3dy5vcGVuc3NsLm9yZy9zb3Vy Y2UvbGljZW5zZS5odG1sCi0rICovCi0rCi0rI2luY2x1ZGUgPHN0ZGxpYi5oPgotKyNpbmNsdWRl IDxzdHJpbmcuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9lcnIuaD4KLSsjaW5jbHVkZSA8b3BlbnNz bC9yYW5kLmg+Ci0rI2luY2x1ZGUgImVjX2xvY2FsLmgiCi0rI2luY2x1ZGUgInMzOTB4X2FyY2gu aCIKLSsKLSsvKiBTaXplIG9mIHBhcmFtZXRlciBibG9ja3MgKi8KLSsjZGVmaW5lIFMzOTBYX1NJ WkVfUEFSQU0gICAgICAgICAgICAgICAgNDA5NgotKwotKy8qIFNpemUgb2YgZmllbGRzIGluIHBh cmFtZXRlciBibG9ja3MgKi8KLSsjZGVmaW5lIFMzOTBYX1NJWkVfUDI1NiAgICAgICAgICAgICAg ICAgMzIKLSsjZGVmaW5lIFMzOTBYX1NJWkVfUDM4NCAgICAgICAgICAgICAgICAgNDgKLSsjZGVm aW5lIFMzOTBYX1NJWkVfUDUyMSAgICAgICAgICAgICAgICAgODAKLSsKLSsvKiBPZmZzZXRzIG9m IGZpZWxkcyBpbiBQQ0MgcGFyYW1ldGVyIGJsb2NrcyAqLwotKyNkZWZpbmUgUzM5MFhfT0ZGX1JF U19YKG4pICAgICAgICAgICAgICAoMCAqIG4pCi0rI2RlZmluZSBTMzkwWF9PRkZfUkVTX1kobikg ICAgICAgICAgICAgICgxICogbikKLSsjZGVmaW5lIFMzOTBYX09GRl9TUkNfWChuKSAgICAgICAg ICAgICAgKDIgKiBuKQotKyNkZWZpbmUgUzM5MFhfT0ZGX1NSQ19ZKG4pICAgICAgICAgICAgICAo MyAqIG4pCi0rI2RlZmluZSBTMzkwWF9PRkZfU0NBTEFSKG4pICAgICAgICAgICAgICg0ICogbikK LSsKLSsvKiBPZmZzZXRzIG9mIGZpZWxkcyBpbiBLRFNBIHBhcmFtZXRlciBibG9ja3MgKi8KLSsj ZGVmaW5lIFMzOTBYX09GRl9SKG4pICAgICAgICAgICAgICAgICAgKDAgKiBuKQotKyNkZWZpbmUg UzM5MFhfT0ZGX1MobikgICAgICAgICAgICAgICAgICAoMSAqIG4pCi0rI2RlZmluZSBTMzkwWF9P RkZfSChuKSAgICAgICAgICAgICAgICAgICgyICogbikKLSsjZGVmaW5lIFMzOTBYX09GRl9LKG4p ICAgICAgICAgICAgICAgICAgKDMgKiBuKQotKyNkZWZpbmUgUzM5MFhfT0ZGX1gobikgICAgICAg ICAgICAgICAgICAoMyAqIG4pCi0rI2RlZmluZSBTMzkwWF9PRkZfUk4obikgICAgICAgICAgICAg ICAgICg0ICogbikKLSsjZGVmaW5lIFMzOTBYX09GRl9ZKG4pICAgICAgICAgICAgICAgICAgKDQg KiBuKQotKwotK3N0YXRpYyBpbnQgZWNfR0ZwX3MzOTB4X25pc3RwX211bChjb25zdCBFQ19HUk9V UCAqZ3JvdXAsIEVDX1BPSU5UICpyLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBCSUdOVU0gKnNjYWxhciwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgc2l6ZV90IG51bSwgY29uc3QgRUNfUE9JTlQgKnBvaW50c1tdLAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBCSUdOVU0gKnNjYWxhcnNbXSwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgQk5fQ1RYICpjdHgsIHVuc2lnbmVkIGludCBmYywgaW50 IGxlbikKLSt7Ci0rICAgIHVuc2lnbmVkIGNoYXIgcGFyYW1bUzM5MFhfU0laRV9QQVJBTV07Ci0r ICAgIEJJR05VTSAqeCwgKnk7Ci0rICAgIGNvbnN0IEVDX1BPSU5UICpwb2ludF9wdHIgPSBOVUxM OwotKyAgICBjb25zdCBCSUdOVU0gKnNjYWxhcl9wdHIgPSBOVUxMOwotKyAgICBCTl9DVFggKm5l d19jdHggPSBOVUxMOwotKyAgICBpbnQgcmMgPSAtMTsKLSsKLSsgICAgaWYgKGN0eCA9PSBOVUxM KSB7Ci0rICAgICAgICBjdHggPSBuZXdfY3R4ID0gQk5fQ1RYX25ldygpOwotKyAgICAgICAgaWYg KGN0eCA9PSBOVUxMKQotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rCi0rICAgIEJO X0NUWF9zdGFydChjdHgpOwotKwotKyAgICB4ID0gQk5fQ1RYX2dldChjdHgpOwotKyAgICB5ID0g Qk5fQ1RYX2dldChjdHgpOwotKyAgICBpZiAoeCA9PSBOVUxMIHx8IHkgPT0gTlVMTCkgewotKyAg ICAgICAgcmMgPSAwOwotKyAgICAgICAgZ290byByZXQ7Ci0rICAgIH0KLSsKLSsgICAgLyoKLSsg ICAgICogVXNlIFBDQyBmb3IgRUMga2V5Z2VuIGFuZCBFQ0RIIGtleSBkZXJpdmF0aW9uOgotKyAg ICAgKiBzY2FsYXIgKiBnZW5lcmF0b3IgYW5kIHNjYWxhciAqIHBlZXIgcHVibGljIGtleSwKLSsg ICAgICogc2NhbGFyIGluIFswLG9yZGVyKS4KLSsgICAgICovCi0rICAgIGlmICgoc2NhbGFyICE9 IE5VTEwgJiYgbnVtID09IDAgJiYgQk5faXNfbmVnYXRpdmUoc2NhbGFyKSA9PSAwKQotKyAgICAg ICAgfHwgKHNjYWxhciA9PSBOVUxMICYmIG51bSA9PSAxICYmIEJOX2lzX25lZ2F0aXZlKHNjYWxh cnNbMF0pID09IDApKSB7Ci0rCi0rICAgICAgICBpZiAobnVtID09IDApIHsKLSsgICAgICAgICAg ICBwb2ludF9wdHIgPSBFQ19HUk9VUF9nZXQwX2dlbmVyYXRvcihncm91cCk7Ci0rICAgICAgICAg ICAgc2NhbGFyX3B0ciA9IHNjYWxhcjsKLSsgICAgICAgIH0gZWxzZSB7Ci0rICAgICAgICAgICAg cG9pbnRfcHRyID0gcG9pbnRzWzBdOwotKyAgICAgICAgICAgIHNjYWxhcl9wdHIgPSBzY2FsYXJz WzBdOwotKyAgICAgICAgfQotKwotKyAgICAgICAgaWYgKEVDX1BPSU5UX2lzX2F0X2luZmluaXR5 KGdyb3VwLCBwb2ludF9wdHIpID09IDEKLSsgICAgICAgICAgICB8fCBCTl9pc196ZXJvKHNjYWxh cl9wdHIpKSB7Ci0rICAgICAgICAgICAgcmMgPSBFQ19QT0lOVF9zZXRfdG9faW5maW5pdHkoZ3Jv dXAsIHIpOwotKyAgICAgICAgICAgIGdvdG8gcmV0OwotKyAgICAgICAgfQotKwotKyAgICAgICAg bWVtc2V0KCZwYXJhbSwgMCwgc2l6ZW9mKHBhcmFtKSk7Ci0rCi0rICAgICAgICBpZiAoZ3JvdXAt Pm1ldGgtPnBvaW50X2dldF9hZmZpbmVfY29vcmRpbmF0ZXMoZ3JvdXAsIHBvaW50X3B0ciwKLSsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4LCB5 LCBjdHgpICE9IDEKLSsgICAgICAgICAgICB8fCBCTl9ibjJiaW5wYWQoeCwgcGFyYW0gKyBTMzkw WF9PRkZfU1JDX1gobGVuKSwgbGVuKSA9PSAtMQotKyAgICAgICAgICAgIHx8IEJOX2JuMmJpbnBh ZCh5LCBwYXJhbSArIFMzOTBYX09GRl9TUkNfWShsZW4pLCBsZW4pID09IC0xCi0rICAgICAgICAg ICAgfHwgQk5fYm4yYmlucGFkKHNjYWxhcl9wdHIsCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHBhcmFtICsgUzM5MFhfT0ZGX1NDQUxBUihsZW4pLCBsZW4pID09IC0xCi0rICAgICAgICAg ICAgfHwgczM5MHhfcGNjKGZjLCBwYXJhbSkgIT0gMAotKyAgICAgICAgICAgIHx8IEJOX2JpbjJi bihwYXJhbSArIFMzOTBYX09GRl9SRVNfWChsZW4pLCBsZW4sIHgpID09IE5VTEwKLSsgICAgICAg ICAgICB8fCBCTl9iaW4yYm4ocGFyYW0gKyBTMzkwWF9PRkZfUkVTX1kobGVuKSwgbGVuLCB5KSA9 PSBOVUxMCi0rICAgICAgICAgICAgfHwgZ3JvdXAtPm1ldGgtPnBvaW50X3NldF9hZmZpbmVfY29v cmRpbmF0ZXMoZ3JvdXAsIHIsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgeCwgeSwgY3R4KSAhPSAxKQotKyAgICAgICAgICAgIGdvdG8g cmV0OwotKwotKyAgICAgICAgcmMgPSAxOwotKyAgICB9Ci0rCi0rcmV0OgotKyAgICAvKiBPdGhl cndpc2UgdXNlIGRlZmF1bHQuICovCi0rICAgIGlmIChyYyA9PSAtMSkKLSsgICAgICAgIHJjID0g ZWNfd05BRl9tdWwoZ3JvdXAsIHIsIHNjYWxhciwgbnVtLCBwb2ludHMsIHNjYWxhcnMsIGN0eCk7 Ci0rICAgIE9QRU5TU0xfY2xlYW5zZShwYXJhbSArIFMzOTBYX09GRl9TQ0FMQVIobGVuKSwgbGVu KTsKLSsgICAgQk5fQ1RYX2VuZChjdHgpOwotKyAgICBCTl9DVFhfZnJlZShuZXdfY3R4KTsKLSsg ICAgcmV0dXJuIHJjOwotK30KLSsKLStzdGF0aWMgRUNEU0FfU0lHICplY2RzYV9zMzkweF9uaXN0 cF9zaWduX3NpZyhjb25zdCB1bnNpZ25lZCBjaGFyICpkZ3N0LAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBkZ3N0bGVuLAotKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEJJR05VTSAqa2ludiwKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBCSUdOVU0gKnIs Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRUNfS0VZICpl Y2tleSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNp Z25lZCBpbnQgZmMsIGludCBsZW4pCi0rewotKyAgICB1bnNpZ25lZCBjaGFyIHBhcmFtW1MzOTBY X1NJWkVfUEFSQU1dOwotKyAgICBpbnQgb2sgPSAwOwotKyAgICBCSUdOVU0gKms7Ci0rICAgIEVD RFNBX1NJRyAqc2lnOwotKyAgICBjb25zdCBFQ19HUk9VUCAqZ3JvdXA7Ci0rICAgIGNvbnN0IEJJ R05VTSAqcHJpdmtleTsKLSsgICAgaW50IG9mZjsKLSsKLSsgICAgZ3JvdXAgPSBFQ19LRVlfZ2V0 MF9ncm91cChlY2tleSk7Ci0rICAgIHByaXZrZXkgPSBFQ19LRVlfZ2V0MF9wcml2YXRlX2tleShl Y2tleSk7Ci0rICAgIGlmIChncm91cCA9PSBOVUxMIHx8IHByaXZrZXkgPT0gTlVMTCkgewotKyAg ICAgICAgRUNlcnIoRUNfRl9FQ0RTQV9TMzkwWF9OSVNUUF9TSUdOX1NJRywgRUNfUl9NSVNTSU5H X1BBUkFNRVRFUlMpOwotKyAgICAgICAgcmV0dXJuIE5VTEw7Ci0rICAgIH0KLSsKLSsgICAgaWYg KCFFQ19LRVlfY2FuX3NpZ24oZWNrZXkpKSB7Ci0rICAgICAgICBFQ2VycihFQ19GX0VDRFNBX1Mz OTBYX05JU1RQX1NJR05fU0lHLAotKyAgICAgICAgICAgICAgRUNfUl9DVVJWRV9ET0VTX05PVF9T VVBQT1JUX1NJR05JTkcpOwotKyAgICAgICAgcmV0dXJuIE5VTEw7Ci0rICAgIH0KLSsKLSsgICAg ayA9IEJOX3NlY3VyZV9uZXcoKTsKLSsgICAgc2lnID0gRUNEU0FfU0lHX25ldygpOwotKyAgICBp ZiAoayA9PSBOVUxMIHx8IHNpZyA9PSBOVUxMKSB7Ci0rICAgICAgICBFQ2VycihFQ19GX0VDRFNB X1MzOTBYX05JU1RQX1NJR05fU0lHLCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7Ci0rICAgICAgICBn b3RvIHJldDsKLSsgICAgfQotKwotKyAgICBzaWctPnIgPSBCTl9uZXcoKTsKLSsgICAgc2lnLT5z ID0gQk5fbmV3KCk7Ci0rICAgIGlmIChzaWctPnIgPT0gTlVMTCB8fCBzaWctPnMgPT0gTlVMTCkg ewotKyAgICAgICAgRUNlcnIoRUNfRl9FQ0RTQV9TMzkwWF9OSVNUUF9TSUdOX1NJRywgRVJSX1Jf TUFMTE9DX0ZBSUxVUkUpOwotKyAgICAgICAgZ290byByZXQ7Ci0rICAgIH0KLSsKLSsgICAgbWVt c2V0KHBhcmFtLCAwLCBzaXplb2YocGFyYW0pKTsKLSsgICAgb2ZmID0gbGVuIC0gKGRnc3RsZW4g PiBsZW4gPyBsZW4gOiBkZ3N0bGVuKTsKLSsgICAgbWVtY3B5KHBhcmFtICsgUzM5MFhfT0ZGX0go bGVuKSArIG9mZiwgZGdzdCwgbGVuIC0gb2ZmKTsKLSsKLSsgICAgaWYgKEJOX2JuMmJpbnBhZChw cml2a2V5LCBwYXJhbSArIFMzOTBYX09GRl9LKGxlbiksIGxlbikgPT0gLTEpIHsKLSsgICAgICAg IEVDZXJyKEVDX0ZfRUNEU0FfUzM5MFhfTklTVFBfU0lHTl9TSUcsIEVSUl9SX0JOX0xJQik7Ci0r ICAgICAgICBnb3RvIHJldDsKLSsgICAgfQotKwotKyAgICBpZiAociA9PSBOVUxMIHx8IGtpbnYg PT0gTlVMTCkgewotKyAgICAgICAgLyoKLSsgICAgICAgICAqIEdlbmVyYXRlIHJhbmRvbSBrIGFu ZCBjb3B5IHRvIHBhcmFtIHBhcmFtIGJsb2NrLiBSQU5EX3ByaXZfYnl0ZXMKLSsgICAgICAgICAq IGlzIHVzZWQgaW5zdGVhZCBvZiBCTl9wcml2X3JhbmRfcmFuZ2Ugb3IgQk5fZ2VuZXJhdGVfZHNh X25vbmNlCi0rICAgICAgICAgKiBiZWNhdXNlIGtkc2EgaW5zdHJ1Y3Rpb24gY29uc3RydWN0cyBh biBpbi1yYW5nZSwgaW52ZXJ0aWJsZSBub25jZQotKyAgICAgICAgICogaW50ZXJuYWxseSBpbXBs ZW1lbnRpbmcgY291bnRlci1tZWFzdXJlcyBmb3IgUk5HIHdlYWtuZXNzLgotKyAgICAgICAgICov Ci0rICAgICAgICAgaWYgKFJBTkRfcHJpdl9ieXRlcyhwYXJhbSArIFMzOTBYX09GRl9STihsZW4p LCBsZW4pICE9IDEpIHsKLSsgICAgICAgICAgICAgRUNlcnIoRUNfRl9FQ0RTQV9TMzkwWF9OSVNU UF9TSUdOX1NJRywKLSsgICAgICAgICAgICAgICAgICAgRUNfUl9SQU5ET01fTlVNQkVSX0dFTkVS QVRJT05fRkFJTEVEKTsKLSsgICAgICAgICAgICAgZ290byByZXQ7Ci0rICAgICAgICAgfQotKyAg ICB9IGVsc2UgewotKyAgICAgICAgLyogUmVjb25zdHJ1Y3QgayA9IChrXi0xKV4tMS4gKi8KLSsg ICAgICAgIGlmIChlY19ncm91cF9kb19pbnZlcnNlX29yZChncm91cCwgaywga2ludiwgTlVMTCkg PT0gMAotKyAgICAgICAgICAgIHx8IEJOX2JuMmJpbnBhZChrLCBwYXJhbSArIFMzOTBYX09GRl9S TihsZW4pLCBsZW4pID09IC0xKSB7Ci0rICAgICAgICAgICAgRUNlcnIoRUNfRl9FQ0RTQV9TMzkw WF9OSVNUUF9TSUdOX1NJRywgRVJSX1JfQk5fTElCKTsKLSsgICAgICAgICAgICBnb3RvIHJldDsK LSsgICAgICAgIH0KLSsgICAgICAgIC8qIFR1cm5zIEtEU0EgaW50ZXJuYWwgbm9uY2UtZ2VuZXJh dGlvbiBvZmYuICovCi0rICAgICAgICBmYyB8PSBTMzkwWF9LRFNBX0Q7Ci0rICAgIH0KLSsKLSsg ICAgaWYgKHMzOTB4X2tkc2EoZmMsIHBhcmFtLCBOVUxMLCAwKSAhPSAwKSB7Ci0rICAgICAgICBF Q2VycihFQ19GX0VDRFNBX1MzOTBYX05JU1RQX1NJR05fU0lHLCBFUlJfUl9FQ0RTQV9MSUIpOwot KyAgICAgICAgZ290byByZXQ7Ci0rICAgIH0KLSsKLSsgICAgaWYgKEJOX2JpbjJibihwYXJhbSAr IFMzOTBYX09GRl9SKGxlbiksIGxlbiwgc2lnLT5yKSA9PSBOVUxMCi0rICAgICAgICB8fCBCTl9i aW4yYm4ocGFyYW0gKyBTMzkwWF9PRkZfUyhsZW4pLCBsZW4sIHNpZy0+cykgPT0gTlVMTCkgewot KyAgICAgICAgRUNlcnIoRUNfRl9FQ0RTQV9TMzkwWF9OSVNUUF9TSUdOX1NJRywgRVJSX1JfQk5f TElCKTsKLSsgICAgICAgIGdvdG8gcmV0OwotKyAgICB9Ci0rCi0rICAgIG9rID0gMTsKLStyZXQ6 Ci0rICAgIE9QRU5TU0xfY2xlYW5zZShwYXJhbSArIFMzOTBYX09GRl9LKGxlbiksIDIgKiBsZW4p OwotKyAgICBpZiAob2sgIT0gMSkgewotKyAgICAgICAgRUNEU0FfU0lHX2ZyZWUoc2lnKTsKLSsg ICAgICAgIHNpZyA9IE5VTEw7Ci0rICAgIH0KLSsgICAgQk5fY2xlYXJfZnJlZShrKTsKLSsgICAg cmV0dXJuIHNpZzsKLSt9Ci0rCi0rc3RhdGljIGludCBlY2RzYV9zMzkweF9uaXN0cF92ZXJpZnlf c2lnKGNvbnN0IHVuc2lnbmVkIGNoYXIgKmRnc3QsIGludCBkZ3N0bGVuLAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBFQ0RTQV9TSUcgKnNpZywgRUNfS0VZ ICplY2tleSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWdu ZWQgaW50IGZjLCBpbnQgbGVuKQotK3sKLSsgICAgdW5zaWduZWQgY2hhciBwYXJhbVtTMzkwWF9T SVpFX1BBUkFNXTsKLSsgICAgaW50IHJjID0gLTE7Ci0rICAgIEJOX0NUWCAqY3R4OwotKyAgICBC SUdOVU0gKngsICp5OwotKyAgICBjb25zdCBFQ19HUk9VUCAqZ3JvdXA7Ci0rICAgIGNvbnN0IEVD X1BPSU5UICpwdWJrZXk7Ci0rICAgIGludCBvZmY7Ci0rCi0rICAgIGdyb3VwID0gRUNfS0VZX2dl dDBfZ3JvdXAoZWNrZXkpOwotKyAgICBwdWJrZXkgPSBFQ19LRVlfZ2V0MF9wdWJsaWNfa2V5KGVj a2V5KTsKLSsgICAgaWYgKGVja2V5ID09IE5VTEwgfHwgZ3JvdXAgPT0gTlVMTCB8fCBwdWJrZXkg PT0gTlVMTCB8fCBzaWcgPT0gTlVMTCkgewotKyAgICAgICAgRUNlcnIoRUNfRl9FQ0RTQV9TMzkw WF9OSVNUUF9WRVJJRllfU0lHLCBFQ19SX01JU1NJTkdfUEFSQU1FVEVSUyk7Ci0rICAgICAgICBy ZXR1cm4gLTE7Ci0rICAgIH0KLSsKLSsgICAgaWYgKCFFQ19LRVlfY2FuX3NpZ24oZWNrZXkpKSB7 Ci0rICAgICAgICBFQ2VycihFQ19GX0VDRFNBX1MzOTBYX05JU1RQX1ZFUklGWV9TSUcsCi0rICAg ICAgICAgICAgICBFQ19SX0NVUlZFX0RPRVNfTk9UX1NVUFBPUlRfU0lHTklORyk7Ci0rICAgICAg ICByZXR1cm4gLTE7Ci0rICAgIH0KLSsKLSsgICAgY3R4ID0gQk5fQ1RYX25ldygpOwotKyAgICBp ZiAoY3R4ID09IE5VTEwpIHsKLSsgICAgICAgIEVDZXJyKEVDX0ZfRUNEU0FfUzM5MFhfTklTVFBf VkVSSUZZX1NJRywgRVJSX1JfTUFMTE9DX0ZBSUxVUkUpOwotKyAgICAgICAgcmV0dXJuIC0xOwot KyAgICB9Ci0rCi0rICAgIEJOX0NUWF9zdGFydChjdHgpOwotKwotKyAgICB4ID0gQk5fQ1RYX2dl dChjdHgpOwotKyAgICB5ID0gQk5fQ1RYX2dldChjdHgpOwotKyAgICBpZiAoeCA9PSBOVUxMIHx8 IHkgPT0gTlVMTCkgewotKyAgICAgICAgRUNlcnIoRUNfRl9FQ0RTQV9TMzkwWF9OSVNUUF9WRVJJ RllfU0lHLCBFUlJfUl9NQUxMT0NfRkFJTFVSRSk7Ci0rICAgICAgICBnb3RvIHJldDsKLSsgICAg fQotKwotKyAgICBtZW1zZXQocGFyYW0sIDAsIHNpemVvZihwYXJhbSkpOwotKyAgICBvZmYgPSBs ZW4gLSAoZGdzdGxlbiA+IGxlbiA/IGxlbiA6IGRnc3RsZW4pOwotKyAgICBtZW1jcHkocGFyYW0g KyBTMzkwWF9PRkZfSChsZW4pICsgb2ZmLCBkZ3N0LCBsZW4gLSBvZmYpOwotKwotKyAgICBpZiAo Z3JvdXAtPm1ldGgtPnBvaW50X2dldF9hZmZpbmVfY29vcmRpbmF0ZXMoZ3JvdXAsIHB1YmtleSwK LSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHgsIHks IGN0eCkgIT0gMQotKyAgICAgICAgfHwgQk5fYm4yYmlucGFkKHNpZy0+ciwgcGFyYW0gKyBTMzkw WF9PRkZfUihsZW4pLCBsZW4pID09IC0xCi0rICAgICAgICB8fCBCTl9ibjJiaW5wYWQoc2lnLT5z LCBwYXJhbSArIFMzOTBYX09GRl9TKGxlbiksIGxlbikgPT0gLTEKLSsgICAgICAgIHx8IEJOX2Ju MmJpbnBhZCh4LCBwYXJhbSArIFMzOTBYX09GRl9YKGxlbiksIGxlbikgPT0gLTEKLSsgICAgICAg IHx8IEJOX2JuMmJpbnBhZCh5LCBwYXJhbSArIFMzOTBYX09GRl9ZKGxlbiksIGxlbikgPT0gLTEp IHsKLSsgICAgICAgIEVDZXJyKEVDX0ZfRUNEU0FfUzM5MFhfTklTVFBfVkVSSUZZX1NJRywgRVJS X1JfQk5fTElCKTsKLSsgICAgICAgIGdvdG8gcmV0OwotKyAgICB9Ci0rCi0rICAgIHJjID0gczM5 MHhfa2RzYShmYywgcGFyYW0sIE5VTEwsIDApID09IDAgPyAxIDogMDsKLStyZXQ6Ci0rICAgIEJO X0NUWF9lbmQoY3R4KTsKLSsgICAgQk5fQ1RYX2ZyZWUoY3R4KTsKLSsgICAgcmV0dXJuIHJjOwot K30KLSsKLSsjZGVmaW5lIEVDX0dGUF9TMzkwWF9OSVNUUF9NRVRIT0QoYml0cykgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotK3N0YXRpYyBpbnQg ZWNfR0ZwX3MzOTB4X25pc3RwIyNiaXRzIyNfbXVsKGNvbnN0IEVDX0dST1VQICpncm91cCwgICAg ICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFQ19QT0lO VCAqciwgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3QgQklHTlVNICpzY2FsYXIsICAgICAgICAgXAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBudW0sICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBF Q19QT0lOVCAqcG9pbnRzW10sICAgICBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3QgQklHTlVNICpzY2FsYXJzW10sICAgICAgXAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJOX0NUWCAqY3R4KSAgICAgICAgICAgICAg ICAgIFwKLSt7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgIHJldHVybiBlY19HRnBfczM5MHhfbmlzdHBf bXVsKGdyb3VwLCByLCBzY2FsYXIsIG51bSwgcG9pbnRzLCAgICAgICAgXAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBzY2FsYXJzLCBjdHgsICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUzM5MFhfU0NBTEFSX01V TFRJUExZX1AjI2JpdHMsICAgICAgICBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFMzOTBYX1NJWkVfUCMjYml0cyk7ICAgICAgICAgICAgICAgICAgXAotK30gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rc3RhdGljIEVDRFNBX1NJRyAqZWNkc2FfczM5MHhf bmlzdHAjI2JpdHMjI19zaWduX3NpZyhjb25zdCB1bnNpZ25lZCAgICAgXAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhciAqZGdzdCwgICAg ICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGludCBkZ3N0bGVuLCAgICAgICBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBCSUdOVU0gKmtpbnYsXAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgQklHTlVNICpy LCAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIEVDX0tFWSAqZWNrZXkpICAgICBcCi0reyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICByZXR1cm4g ZWNkc2FfczM5MHhfbmlzdHBfc2lnbl9zaWcoZGdzdCwgZGdzdGxlbiwga2ludiwgciwgZWNrZXks ICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFMzOTBYX0VDRFNB X1NJR05fUCMjYml0cywgICAgICAgICBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBTMzkwWF9TSVpFX1AjI2JpdHMpOyAgICAgICAgICAgICAgXAotK30gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rc3RhdGljIGludCBlY2RzYV9zMzkweF9uaXN0cCMj Yml0cyMjX3ZlcmlmeV9zaWcoY29uc3QgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKmRnc3Qs ICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp bnQgZGdzdGxlbiwgICAgICAgICAgICBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgY29uc3QgRUNEU0FfU0lHICpzaWcsICAgXAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVDX0tFWSAqZWNrZXkpICAgICAg ICAgIFwKLSt7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgIHJldHVybiBlY2RzYV9zMzkweF9uaXN0cF92 ZXJpZnlfc2lnKGRnc3QsIGRnc3RsZW4sIHNpZywgZWNrZXksICAgICAgXAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTMzkwWF9FQ0RTQV9WRVJJRllfUCMjYml0cywg ICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUzM5MFhfU0la RV9QIyNiaXRzKTsgICAgICAgICAgICBcCi0rfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLStjb25zdCBFQ19NRVRIT0QgKkVDX0dGcF9zMzkweF9uaXN0cCMjYml0cyMjX21ldGhv ZCh2b2lkKSAgICAgICAgICAgICAgICBcCi0reyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICBzdGF0aWMg Y29uc3QgRUNfTUVUSE9EIEVDX0dGcF9zMzkweF9uaXN0cCMjYml0cyMjX21ldGggPSB7ICAgICAg ICAgIFwKLSsgICAgICAgIEVDX0ZMQUdTX0RFRkFVTFRfT0NULCAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBOSURfWDlfNjJfcHJpbWVfZmllbGQs ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9ncm91cF9pbml0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX0dGcF9zaW1wbGVfZ3JvdXBfZmluaXNoLCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX2dyb3VwX2Ns ZWFyX2ZpbmlzaCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9ncm91cF9jb3B5LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX0dGcF9zaW1wbGVfZ3JvdXBfc2V0X2N1cnZlLCAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX2dyb3VwX2dl dF9jdXJ2ZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9ncm91cF9nZXRfZGVncmVlLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX2dyb3VwX3NpbXBsZV9vcmRlcl9iaXRzLCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX2dyb3VwX2No ZWNrX2Rpc2NyaW1pbmFudCwgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9wb2ludF9pbml0LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX0dGcF9zaW1wbGVfcG9pbnRfZmluaXNoLCAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX3BvaW50X2Ns ZWFyX2ZpbmlzaCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9wb2ludF9jb3B5LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX0dGcF9zaW1wbGVfcG9pbnRfc2V0X3RvX2luZmluaXR5LCAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX3NldF9KcHJv amVjdGl2ZV9jb29yZGluYXRlc19HRnAsICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9nZXRfSnByb2plY3RpdmVfY29vcmRpbmF0ZXNfR0ZwLCAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX0dGcF9zaW1wbGVfcG9pbnRfc2V0X2FmZmluZV9jb29yZGluYXRl cywgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX3BvaW50X2dl dF9hZmZpbmVfY29vcmRpbmF0ZXMsICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgTlVM TCwgLyogcG9pbnRfc2V0X2NvbXByZXNzZWRfY29vcmRpbmF0ZXMgKi8gICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIE5VTEwsIC8qIHBvaW50Mm9jdCAqLyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBOVUxMLCAvKiBvY3QycG9pbnQgKi8g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9hZGQsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX0dGcF9zaW1wbGVfZGJsLCAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX2ludmVydCwg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9pc19hdF9pbmZpbml0eSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX0dGcF9zaW1wbGVfaXNfb25fY3VydmUsICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX2NtcCwgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9tYWtlX2FmZmluZSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX0dGcF9zaW1wbGVfcG9pbnRzX21ha2VfYWZmaW5lLCAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfczM5MHhfbmlzdHAjI2Jp dHMjI19tdWwsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgTlVM TCwgLyogcHJlY29tcHV0ZV9tdWx0ICovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIE5VTEwsIC8qIGhhdmVfcHJlY29tcHV0ZV9tdWx0ICovICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX2ZpZWxkX211 bCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9maWVsZF9zcXIsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIE5VTEwsIC8qIGZpZWxkX2RpdiAqLyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX2ZpZWxkX2lu diwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgTlVM TCwgLyogZmllbGRfZW5jb2RlICovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIE5VTEwsIC8qIGZpZWxkX2RlY29kZSAqLyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBOVUxMLCAvKiBmaWVsZF9zZXRfdG9f b25lICovICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf a2V5X3NpbXBsZV9wcml2Mm9jdCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX2tleV9zaW1wbGVfb2N0MnByaXYsICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBOVUxMLCAvKiBzZXRfcHJpdmF0ZSAq LyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf a2V5X3NpbXBsZV9nZW5lcmF0ZV9rZXksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX2tleV9zaW1wbGVfY2hlY2tfa2V5LCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19rZXlfc2ltcGxlX2dlbmVyYXRl X3B1YmxpY19rZXksICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgTlVM TCwgLyoga2V5Y29weSAqLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIE5VTEwsIC8qIGtleWZpbmlzaCAqLyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY2RoX3NpbXBsZV9jb21wdXRlX2tl eSwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNk c2Ffc2ltcGxlX3NpZ25fc2V0dXAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjZHNhX3MzOTB4X25pc3RwIyNiaXRzIyNfc2lnbl9zaWcsICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY2RzYV9zMzkweF9uaXN0cCMjYml0 cyMjX3ZlcmlmeV9zaWcsICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgTlVM TCwgLyogZmllbGRfaW52ZXJzZV9tb2Rfb3JkICovICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX0dGcF9zaW1wbGVfYmxpbmRfY29vcmRpbmF0ZXMsICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICBlY19HRnBfc2ltcGxlX2xhZGRlcl9w cmUsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgZWNf R0ZwX3NpbXBsZV9sYWRkZXJfc3RlcCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIGVjX0dGcF9zaW1wbGVfbGFkZGVyX3Bvc3QgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgIH07ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICBzdGF0aWMg Y29uc3QgRUNfTUVUSE9EICpyZXQ7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgIGlmICgoT1BFTlNTTF9zMzkweGNhcF9QLnBj Y1sxXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgICYg UzM5MFhfQ0FQQklUKFMzOTBYX1NDQUxBUl9NVUxUSVBMWV9QIyNiaXRzKSkgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgICYmIChPUEVOU1NMX3MzOTB4Y2FwX1Aua2RzYVswXSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAgICAgJiBTMzkwWF9DQVBCSVQoUzM5 MFhfRUNEU0FfVkVSSUZZX1AjI2JpdHMpKSAgICAgICAgICAgICAgICAgXAotKyAgICAgICAgJiYg KE9QRU5TU0xfczM5MHhjYXBfUC5rZHNhWzBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgICAgICAmIFMzOTBYX0NBUEJJVChTMzkwWF9FQ0RTQV9TSUdOX1AjI2Jp dHMpKSkgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICByZXQgPSAmRUNfR0ZwX3MzOTB4X25p c3RwIyNiaXRzIyNfbWV0aDsgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICBlbHNlICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSsgICAgICAgIHJldCA9IEVDX0dGcF9tb250X21ldGhvZCgpOyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotKyAgICByZXR1cm4g cmV0OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwKLSt9Ci0rCi0rRUNfR0ZQX1MzOTBYX05JU1RQX01FVEhPRCgyNTYpCi0rRUNfR0ZQX1Mz OTBYX05JU1RQX01FVEhPRCgzODQpCi0rRUNfR0ZQX1MzOTBYX05JU1RQX01FVEhPRCg1MjEpCi1k aWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNwX3NtcGwuYy5zMzkweC1lY2Mgb3Bl bnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjcF9zbXBsLmMKLS0tLSBvcGVuc3NsLTEuMS4xZy9jcnlw dG8vZWMvZWNwX3NtcGwuYy5zMzkweC1lY2MJMjAyMC0wNS0xOCAxMjo0NTo0MC43NjkyMzM1MTQg KzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWNwX3NtcGwuYwkyMDIwLTA1LTE4 IDEyOjQ1OjQ0LjU3MjI2NjU2NiArMDIwMAotQEAgLTY0LDYgKzY0LDkgQEAgY29uc3QgRUNfTUVU SE9EICpFQ19HRnBfc2ltcGxlX21ldGhvZCh2bwotICAgICAgICAgMCwgLyoga2V5Y29weSAqLwot ICAgICAgICAgMCwgLyoga2V5ZmluaXNoICovCi0gICAgICAgICBlY2RoX3NpbXBsZV9jb21wdXRl X2tleSwKLSsgICAgICAgIGVjZHNhX3NpbXBsZV9zaWduX3NldHVwLAotKyAgICAgICAgZWNkc2Ff c2ltcGxlX3NpZ25fc2lnLAotKyAgICAgICAgZWNkc2Ffc2ltcGxlX3ZlcmlmeV9zaWcsCi0gICAg ICAgICAwLCAvKiBmaWVsZF9pbnZlcnNlX21vZF9vcmQgKi8KLSAgICAgICAgIGVjX0dGcF9zaW1w bGVfYmxpbmRfY29vcmRpbmF0ZXMsCi0gICAgICAgICBlY19HRnBfc2ltcGxlX2xhZGRlcl9wcmUs Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWN4X21ldGguYy5zMzkweC1lY2Mg b3BlbnNzbC0xLjEuMWcvY3J5cHRvL2VjL2VjeF9tZXRoLmMKLS0tLSBvcGVuc3NsLTEuMS4xZy9j cnlwdG8vZWMvZWN4X21ldGguYy5zMzkweC1lY2MJMjAyMC0wNC0yMSAxNDoyMjozOS4wMDAwMDAw MDAgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZWMvZWN4X21ldGguYwkyMDIwLTA1 LTE4IDEyOjQ1OjQ0LjU3MzI2NjU3NSArMDIwMAotQEAgLTIwLDYgKzIwLDcgQEAKLSAjZGVmaW5l IFgyNTUxOV9CSVRTICAgICAgICAgIDI1MwotICNkZWZpbmUgWDI1NTE5X1NFQ1VSSVRZX0JJVFMg MTI4Ci0gCi0rI2RlZmluZSBFRDI1NTE5X0tFWUxFTiAgICAgICAzMgotICNkZWZpbmUgRUQyNTUx OV9TSUdTSVpFICAgICAgNjQKLSAKLSAjZGVmaW5lIFg0NDhfQklUUyAgICAgICAgICAgIDQ0OAot QEAgLTgzOSwzICs4NDAsNjY2IEBAIGNvbnN0IEVWUF9QS0VZX01FVEhPRCBlZDQ0OF9wa2V5X21l dGggPQotICAgICBwa2V5X2VjZF9kaWdlc3RzaWduNDQ4LAotICAgICBwa2V5X2VjZF9kaWdlc3R2 ZXJpZnk0NDgKLSB9OwotKwotKyNpZmRlZiBTMzkwWF9FQ19BU00KLSsjIGluY2x1ZGUgInMzOTB4 X2FyY2guaCIKLSsjIGluY2x1ZGUgImludGVybmFsL2NvbnN0YW50X3RpbWUuaCIKLSsKLStzdGF0 aWMgdm9pZCBzMzkweF94MjU1MTlfbW9kX3AodW5zaWduZWQgY2hhciB1WzMyXSkKLSt7Ci0rICAg IHVuc2lnbmVkIGNoYXIgdV9yZWRbMzJdOwotKyAgICB1bnNpZ25lZCBpbnQgYyA9IDA7Ci0rICAg IGludCBpOwotKwotKyAgICBtZW1jcHkodV9yZWQsIHUsIHNpemVvZih1X3JlZCkpOwotKwotKyAg ICBjICs9ICh1bnNpZ25lZCBpbnQpdV9yZWRbMzFdICsgMTk7Ci0rICAgIHVfcmVkWzMxXSA9ICh1 bnNpZ25lZCBjaGFyKWM7Ci0rICAgIGMgPj49IDg7Ci0rCi0rICAgIGZvciAoaSA9IDMwOyBpID49 IDA7IGktLSkgewotKyAgICAgICAgYyArPSAodW5zaWduZWQgaW50KXVfcmVkW2ldOwotKyAgICAg ICAgdV9yZWRbaV0gPSAodW5zaWduZWQgY2hhciljOwotKyAgICAgICAgYyA+Pj0gODsKLSsgICAg fQotKwotKyAgICBjID0gKHVfcmVkWzBdICYgMHg4MCkgPj4gNzsKLSsgICAgdV9yZWRbMF0gJj0g MHg3ZjsKLSsgICAgY29uc3RhbnRfdGltZV9jb25kX3N3YXBfYnVmZigwIC0gKHVuc2lnbmVkIGNo YXIpYywKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1LCB1X3JlZCwgc2l6ZW9m KHVfcmVkKSk7Ci0rfQotKwotK3N0YXRpYyB2b2lkIHMzOTB4X3g0NDhfbW9kX3AodW5zaWduZWQg Y2hhciB1WzU2XSkKLSt7Ci0rICAgIHVuc2lnbmVkIGNoYXIgdV9yZWRbNTZdOwotKyAgICB1bnNp Z25lZCBpbnQgYyA9IDA7Ci0rICAgIGludCBpOwotKwotKyAgICBtZW1jcHkodV9yZWQsIHUsIHNp emVvZih1X3JlZCkpOwotKwotKyAgICBjICs9ICh1bnNpZ25lZCBpbnQpdV9yZWRbNTVdICsgMTsK LSsgICAgdV9yZWRbNTVdID0gKHVuc2lnbmVkIGNoYXIpYzsKLSsgICAgYyA+Pj0gODsKLSsKLSsg ICAgZm9yIChpID0gNTQ7IGkgPj0gMjg7IGktLSkgewotKyAgICAgICAgYyArPSAodW5zaWduZWQg aW50KXVfcmVkW2ldOwotKyAgICAgICAgdV9yZWRbaV0gPSAodW5zaWduZWQgY2hhciljOwotKyAg ICAgICAgYyA+Pj0gODsKLSsgICAgfQotKwotKyAgICBjICs9ICh1bnNpZ25lZCBpbnQpdV9yZWRb MjddICsgMTsKLSsgICAgdV9yZWRbMjddID0gKHVuc2lnbmVkIGNoYXIpYzsKLSsgICAgYyA+Pj0g ODsKLSsKLSsgICAgZm9yIChpID0gMjY7IGkgPj0gMDsgaS0tKSB7Ci0rICAgICAgICBjICs9ICh1 bnNpZ25lZCBpbnQpdV9yZWRbaV07Ci0rICAgICAgICB1X3JlZFtpXSA9ICh1bnNpZ25lZCBjaGFy KWM7Ci0rICAgICAgICBjID4+PSA4OwotKyAgICB9Ci0rCi0rICAgIGNvbnN0YW50X3RpbWVfY29u ZF9zd2FwX2J1ZmYoMCAtICh1bnNpZ25lZCBjaGFyKWMsCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgdSwgdV9yZWQsIHNpemVvZih1X3JlZCkpOwotK30KLSsKLStzdGF0aWMgaW50 IHMzOTB4X3gyNTUxOV9tdWwodW5zaWduZWQgY2hhciB1X2RzdFszMl0sCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgdV9zcmNbMzJdLAotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyIGRfc3JjWzMyXSkKLSt7Ci0r ICAgIHVuaW9uIHsKLSsgICAgICAgIHN0cnVjdCB7Ci0rICAgICAgICAgICAgdW5zaWduZWQgY2hh ciB1X2RzdFszMl07Ci0rICAgICAgICAgICAgdW5zaWduZWQgY2hhciB1X3NyY1szMl07Ci0rICAg ICAgICAgICAgdW5zaWduZWQgY2hhciBkX3NyY1szMl07Ci0rICAgICAgICB9IHgyNTUxOTsKLSsg ICAgICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBidWZmWzUxMl07Ci0rICAgIH0gcGFyYW07Ci0rICAg IGludCByYzsKLSsKLSsgICAgbWVtc2V0KCZwYXJhbSwgMCwgc2l6ZW9mKHBhcmFtKSk7Ci0rCi0r ICAgIHMzOTB4X2ZsaXBfZW5kaWFuMzIocGFyYW0ueDI1NTE5LnVfc3JjLCB1X3NyYyk7Ci0rICAg IHBhcmFtLngyNTUxOS51X3NyY1swXSAmPSAweDdmOwotKyAgICBzMzkweF94MjU1MTlfbW9kX3Ao cGFyYW0ueDI1NTE5LnVfc3JjKTsKLSsKLSsgICAgczM5MHhfZmxpcF9lbmRpYW4zMihwYXJhbS54 MjU1MTkuZF9zcmMsIGRfc3JjKTsKLSsgICAgcGFyYW0ueDI1NTE5LmRfc3JjWzMxXSAmPSAyNDg7 Ci0rICAgIHBhcmFtLngyNTUxOS5kX3NyY1swXSAmPSAxMjc7Ci0rICAgIHBhcmFtLngyNTUxOS5k X3NyY1swXSB8PSA2NDsKLSsKLSsgICAgcmMgPSBzMzkweF9wY2MoUzM5MFhfU0NBTEFSX01VTFRJ UExZX1gyNTUxOSwgJnBhcmFtLngyNTUxOSkgPyAwIDogMTsKLSsgICAgaWYgKHJjID09IDEpCi0r ICAgICAgICBzMzkweF9mbGlwX2VuZGlhbjMyKHVfZHN0LCBwYXJhbS54MjU1MTkudV9kc3QpOwot KwotKyAgICBPUEVOU1NMX2NsZWFuc2UocGFyYW0ueDI1NTE5LmRfc3JjLCBzaXplb2YocGFyYW0u eDI1NTE5LmRfc3JjKSk7Ci0rICAgIHJldHVybiByYzsKLSt9Ci0rCi0rc3RhdGljIGludCBzMzkw eF94NDQ4X211bCh1bnNpZ25lZCBjaGFyIHVfZHN0WzU2XSwKLSsgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgdV9zcmNbNTZdLAotKyAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciBkX3NyY1s1Nl0pCi0rewotKyAgICB1bmlvbiB7 Ci0rICAgICAgICBzdHJ1Y3QgewotKyAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgdV9kc3RbNjRd OwotKyAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgdV9zcmNbNjRdOwotKyAgICAgICAgICAgIHVu c2lnbmVkIGNoYXIgZF9zcmNbNjRdOwotKyAgICAgICAgfSB4NDQ4OwotKyAgICAgICAgdW5zaWdu ZWQgbG9uZyBsb25nIGJ1ZmZbNTEyXTsKLSsgICAgfSBwYXJhbTsKLSsgICAgaW50IHJjOwotKwot KyAgICBtZW1zZXQoJnBhcmFtLCAwLCBzaXplb2YocGFyYW0pKTsKLSsKLSsgICAgbWVtY3B5KHBh cmFtLng0NDgudV9zcmMsIHVfc3JjLCA1Nik7Ci0rICAgIG1lbWNweShwYXJhbS54NDQ4LmRfc3Jj LCBkX3NyYywgNTYpOwotKwotKyAgICBzMzkweF9mbGlwX2VuZGlhbjY0KHBhcmFtLng0NDgudV9z cmMsIHBhcmFtLng0NDgudV9zcmMpOwotKyAgICBzMzkweF94NDQ4X21vZF9wKHBhcmFtLng0NDgu dV9zcmMgKyA4KTsKLSsKLSsgICAgczM5MHhfZmxpcF9lbmRpYW42NChwYXJhbS54NDQ4LmRfc3Jj LCBwYXJhbS54NDQ4LmRfc3JjKTsKLSsgICAgcGFyYW0ueDQ0OC5kX3NyY1s2M10gJj0gMjUyOwot KyAgICBwYXJhbS54NDQ4LmRfc3JjWzhdIHw9IDEyODsKLSsKLSsgICAgcmMgPSBzMzkweF9wY2Mo UzM5MFhfU0NBTEFSX01VTFRJUExZX1g0NDgsICZwYXJhbS54NDQ4KSA/IDAgOiAxOwotKyAgICBp ZiAocmMgPT0gMSkgewotKyAgICAgICAgczM5MHhfZmxpcF9lbmRpYW42NChwYXJhbS54NDQ4LnVf ZHN0LCBwYXJhbS54NDQ4LnVfZHN0KTsKLSsgICAgICAgIG1lbWNweSh1X2RzdCwgcGFyYW0ueDQ0 OC51X2RzdCwgNTYpOwotKyAgICB9Ci0rCi0rICAgIE9QRU5TU0xfY2xlYW5zZShwYXJhbS54NDQ4 LmRfc3JjLCBzaXplb2YocGFyYW0ueDQ0OC5kX3NyYykpOwotKyAgICByZXR1cm4gcmM7Ci0rfQot KwotK3N0YXRpYyBpbnQgczM5MHhfZWQyNTUxOV9tdWwodW5zaWduZWQgY2hhciB4X2RzdFszMl0s Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIHlfZHN0WzMyXSwK LSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgeF9zcmNb MzJdLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciB5 X3NyY1szMl0sCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBj aGFyIGRfc3JjWzMyXSkKLSt7Ci0rICAgIHVuaW9uIHsKLSsgICAgICAgIHN0cnVjdCB7Ci0rICAg ICAgICAgICAgdW5zaWduZWQgY2hhciB4X2RzdFszMl07Ci0rICAgICAgICAgICAgdW5zaWduZWQg Y2hhciB5X2RzdFszMl07Ci0rICAgICAgICAgICAgdW5zaWduZWQgY2hhciB4X3NyY1szMl07Ci0r ICAgICAgICAgICAgdW5zaWduZWQgY2hhciB5X3NyY1szMl07Ci0rICAgICAgICAgICAgdW5zaWdu ZWQgY2hhciBkX3NyY1szMl07Ci0rICAgICAgICB9IGVkMjU1MTk7Ci0rICAgICAgICB1bnNpZ25l ZCBsb25nIGxvbmcgYnVmZls1MTJdOwotKyAgICB9IHBhcmFtOwotKyAgICBpbnQgcmM7Ci0rCi0r ICAgIG1lbXNldCgmcGFyYW0sIDAsIHNpemVvZihwYXJhbSkpOwotKwotKyAgICBzMzkweF9mbGlw X2VuZGlhbjMyKHBhcmFtLmVkMjU1MTkueF9zcmMsIHhfc3JjKTsKLSsgICAgczM5MHhfZmxpcF9l bmRpYW4zMihwYXJhbS5lZDI1NTE5Lnlfc3JjLCB5X3NyYyk7Ci0rICAgIHMzOTB4X2ZsaXBfZW5k aWFuMzIocGFyYW0uZWQyNTUxOS5kX3NyYywgZF9zcmMpOwotKwotKyAgICByYyA9IHMzOTB4X3Bj YyhTMzkwWF9TQ0FMQVJfTVVMVElQTFlfRUQyNTUxOSwgJnBhcmFtLmVkMjU1MTkpID8gMCA6IDE7 Ci0rICAgIGlmIChyYyA9PSAxKSB7Ci0rICAgICAgICBzMzkweF9mbGlwX2VuZGlhbjMyKHhfZHN0 LCBwYXJhbS5lZDI1NTE5LnhfZHN0KTsKLSsgICAgICAgIHMzOTB4X2ZsaXBfZW5kaWFuMzIoeV9k c3QsIHBhcmFtLmVkMjU1MTkueV9kc3QpOwotKyAgICB9Ci0rCi0rICAgIE9QRU5TU0xfY2xlYW5z ZShwYXJhbS5lZDI1NTE5LmRfc3JjLCBzaXplb2YocGFyYW0uZWQyNTUxOS5kX3NyYykpOwotKyAg ICByZXR1cm4gcmM7Ci0rfQotKwotK3N0YXRpYyBpbnQgczM5MHhfZWQ0NDhfbXVsKHVuc2lnbmVk IGNoYXIgeF9kc3RbNTddLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNo YXIgeV9kc3RbNTddLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVk IGNoYXIgeF9zcmNbNTddLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2ln bmVkIGNoYXIgeV9zcmNbNTddLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVu c2lnbmVkIGNoYXIgZF9zcmNbNTddKQotK3sKLSsgICAgdW5pb24gewotKyAgICAgICAgc3RydWN0 IHsKLSsgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIHhfZHN0WzY0XTsKLSsgICAgICAgICAgICB1 bnNpZ25lZCBjaGFyIHlfZHN0WzY0XTsKLSsgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIHhfc3Jj WzY0XTsKLSsgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIHlfc3JjWzY0XTsKLSsgICAgICAgICAg ICB1bnNpZ25lZCBjaGFyIGRfc3JjWzY0XTsKLSsgICAgICAgIH0gZWQ0NDg7Ci0rICAgICAgICB1 bnNpZ25lZCBsb25nIGxvbmcgYnVmZls1MTJdOwotKyAgICB9IHBhcmFtOwotKyAgICBpbnQgcmM7 Ci0rCi0rICAgIG1lbXNldCgmcGFyYW0sIDAsIHNpemVvZihwYXJhbSkpOwotKwotKyAgICBtZW1j cHkocGFyYW0uZWQ0NDgueF9zcmMsIHhfc3JjLCA1Nyk7Ci0rICAgIG1lbWNweShwYXJhbS5lZDQ0 OC55X3NyYywgeV9zcmMsIDU3KTsKLSsgICAgbWVtY3B5KHBhcmFtLmVkNDQ4LmRfc3JjLCBkX3Ny YywgNTcpOwotKyAgICBzMzkweF9mbGlwX2VuZGlhbjY0KHBhcmFtLmVkNDQ4Lnhfc3JjLCBwYXJh bS5lZDQ0OC54X3NyYyk7Ci0rICAgIHMzOTB4X2ZsaXBfZW5kaWFuNjQocGFyYW0uZWQ0NDgueV9z cmMsIHBhcmFtLmVkNDQ4Lnlfc3JjKTsKLSsgICAgczM5MHhfZmxpcF9lbmRpYW42NChwYXJhbS5l ZDQ0OC5kX3NyYywgcGFyYW0uZWQ0NDguZF9zcmMpOwotKwotKyAgICByYyA9IHMzOTB4X3BjYyhT MzkwWF9TQ0FMQVJfTVVMVElQTFlfRUQ0NDgsICZwYXJhbS5lZDQ0OCkgPyAwIDogMTsKLSsgICAg aWYgKHJjID09IDEpIHsKLSsgICAgICAgIHMzOTB4X2ZsaXBfZW5kaWFuNjQocGFyYW0uZWQ0NDgu eF9kc3QsIHBhcmFtLmVkNDQ4LnhfZHN0KTsKLSsgICAgICAgIHMzOTB4X2ZsaXBfZW5kaWFuNjQo cGFyYW0uZWQ0NDgueV9kc3QsIHBhcmFtLmVkNDQ4LnlfZHN0KTsKLSsgICAgICAgIG1lbWNweSh4 X2RzdCwgcGFyYW0uZWQ0NDgueF9kc3QsIDU3KTsKLSsgICAgICAgIG1lbWNweSh5X2RzdCwgcGFy YW0uZWQ0NDgueV9kc3QsIDU3KTsKLSsgICAgfQotKwotKyAgICBPUEVOU1NMX2NsZWFuc2UocGFy YW0uZWQ0NDguZF9zcmMsIHNpemVvZihwYXJhbS5lZDQ0OC5kX3NyYykpOwotKyAgICByZXR1cm4g cmM7Ci0rfQotKwotK3N0YXRpYyBpbnQgczM5MHhfcGtleV9lY3hfa2V5Z2VuMjU1MTkoRVZQX1BL RVlfQ1RYICpjdHgsIEVWUF9QS0VZICpwa2V5KQotK3sKLSsgICAgc3RhdGljIGNvbnN0IHVuc2ln bmVkIGNoYXIgZ2VuZXJhdG9yW10gPSB7Ci0rICAgICAgICAweDA5LCAweDAwLCAweDAwLCAweDAw LCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLAotKyAgICAg ICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwg MHgwMCwgMHgwMCwgMHgwMCwKLSsgICAgICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAs IDB4MDAsIDB4MDAsIDB4MDAKLSsgICAgfTsKLSsgICAgRUNYX0tFWSAqa2V5OwotKyAgICB1bnNp Z25lZCBjaGFyICpwcml2a2V5ID0gTlVMTCwgKnB1YmtleTsKLSsKLSsgICAga2V5ID0gT1BFTlNT TF96YWxsb2Moc2l6ZW9mKCprZXkpKTsKLSsgICAgaWYgKGtleSA9PSBOVUxMKSB7Ci0rICAgICAg ICBFQ2VycihFQ19GX1MzOTBYX1BLRVlfRUNYX0tFWUdFTjI1NTE5LCBFUlJfUl9NQUxMT0NfRkFJ TFVSRSk7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKwotKyAgICBwdWJrZXkgPSBrZXkt PnB1YmtleTsKLSsKLSsgICAgcHJpdmtleSA9IGtleS0+cHJpdmtleSA9IE9QRU5TU0xfc2VjdXJl X21hbGxvYyhYMjU1MTlfS0VZTEVOKTsKLSsgICAgaWYgKHByaXZrZXkgPT0gTlVMTCkgewotKyAg ICAgICAgRUNlcnIoRUNfRl9TMzkwWF9QS0VZX0VDWF9LRVlHRU4yNTUxOSwgRVJSX1JfTUFMTE9D X0ZBSUxVUkUpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsKLSsgICAgaWYgKFJBTkRf cHJpdl9ieXRlcyhwcml2a2V5LCBYMjU1MTlfS0VZTEVOKSA8PSAwKQotKyAgICAgICAgZ290byBl cnI7Ci0rCi0rICAgIHByaXZrZXlbMF0gJj0gMjQ4OwotKyAgICBwcml2a2V5WzMxXSAmPSAxMjc7 Ci0rICAgIHByaXZrZXlbMzFdIHw9IDY0OwotKwotKyAgICBpZiAoczM5MHhfeDI1NTE5X211bChw dWJrZXksIGdlbmVyYXRvciwgcHJpdmtleSkgIT0gMSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwot KyAgICBFVlBfUEtFWV9hc3NpZ24ocGtleSwgY3R4LT5wbWV0aC0+cGtleV9pZCwga2V5KTsKLSsg ICAgcmV0dXJuIDE7Ci0rIGVycjoKLSsgICAgT1BFTlNTTF9zZWN1cmVfY2xlYXJfZnJlZShwcml2 a2V5LCBYMjU1MTlfS0VZTEVOKTsKLSsgICAga2V5LT5wcml2a2V5ID0gTlVMTDsKLSsgICAgT1BF TlNTTF9mcmVlKGtleSk7Ci0rICAgIHJldHVybiAwOwotK30KLSsKLStzdGF0aWMgaW50IHMzOTB4 X3BrZXlfZWN4X2tleWdlbjQ0OChFVlBfUEtFWV9DVFggKmN0eCwgRVZQX1BLRVkgKnBrZXkpCi0r ewotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBnZW5lcmF0b3JbXSA9IHsKLSsgICAg ICAgIDB4MDUsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAs IDB4MDAsIDB4MDAsIDB4MDAsCi0rICAgICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAw LCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLAotKyAgICAgICAgMHgw MCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwg MHgwMCwgMHgwMCwKLSsgICAgICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAs IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsCi0rICAgICAgICAweDAwLCAweDAw LCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwCi0rICAgIH07Ci0rICAgIEVDWF9L RVkgKmtleTsKLSsgICAgdW5zaWduZWQgY2hhciAqcHJpdmtleSA9IE5VTEwsICpwdWJrZXk7Ci0r Ci0rICAgIGtleSA9IE9QRU5TU0xfemFsbG9jKHNpemVvZigqa2V5KSk7Ci0rICAgIGlmIChrZXkg PT0gTlVMTCkgewotKyAgICAgICAgRUNlcnIoRUNfRl9TMzkwWF9QS0VZX0VDWF9LRVlHRU40NDgs IEVSUl9SX01BTExPQ19GQUlMVVJFKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0r ICAgIHB1YmtleSA9IGtleS0+cHVia2V5OwotKwotKyAgICBwcml2a2V5ID0ga2V5LT5wcml2a2V5 ID0gT1BFTlNTTF9zZWN1cmVfbWFsbG9jKFg0NDhfS0VZTEVOKTsKLSsgICAgaWYgKHByaXZrZXkg PT0gTlVMTCkgewotKyAgICAgICAgRUNlcnIoRUNfRl9TMzkwWF9QS0VZX0VDWF9LRVlHRU40NDgs IEVSUl9SX01BTExPQ19GQUlMVVJFKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0r ICAgIGlmIChSQU5EX3ByaXZfYnl0ZXMocHJpdmtleSwgWDQ0OF9LRVlMRU4pIDw9IDApCi0rICAg ICAgICBnb3RvIGVycjsKLSsKLSsgICAgcHJpdmtleVswXSAmPSAyNTI7Ci0rICAgIHByaXZrZXlb NTVdIHw9IDEyODsKLSsKLSsgICAgaWYgKHMzOTB4X3g0NDhfbXVsKHB1YmtleSwgZ2VuZXJhdG9y LCBwcml2a2V5KSAhPSAxKQotKyAgICAgICAgZ290byBlcnI7Ci0rCi0rICAgIEVWUF9QS0VZX2Fz c2lnbihwa2V5LCBjdHgtPnBtZXRoLT5wa2V5X2lkLCBrZXkpOwotKyAgICByZXR1cm4gMTsKLSsg ZXJyOgotKyAgICBPUEVOU1NMX3NlY3VyZV9jbGVhcl9mcmVlKHByaXZrZXksIFg0NDhfS0VZTEVO KTsKLSsgICAga2V5LT5wcml2a2V5ID0gTlVMTDsKLSsgICAgT1BFTlNTTF9mcmVlKGtleSk7Ci0r ICAgIHJldHVybiAwOwotK30KLSsKLStzdGF0aWMgaW50IHMzOTB4X3BrZXlfZWNkX2tleWdlbjI1 NTE5KEVWUF9QS0VZX0NUWCAqY3R4LCBFVlBfUEtFWSAqcGtleSkKLSt7Ci0rICAgIHN0YXRpYyBj b25zdCB1bnNpZ25lZCBjaGFyIGdlbmVyYXRvcl94W10gPSB7Ci0rICAgICAgICAweDFhLCAweGQ1 LCAweDI1LCAweDhmLCAweDYwLCAweDJkLCAweDU2LCAweGM5LCAweGIyLCAweGE3LCAweDI1LCAw eDk1LAotKyAgICAgICAgMHg2MCwgMHhjNywgMHgyYywgMHg2OSwgMHg1YywgMHhkYywgMHhkNiwg MHhmZCwgMHgzMSwgMHhlMiwgMHhhNCwgMHhjMCwKLSsgICAgICAgIDB4ZmUsIDB4NTMsIDB4NmUs IDB4Y2QsIDB4ZDMsIDB4MzYsIDB4NjksIDB4MjEKLSsgICAgfTsKLSsgICAgc3RhdGljIGNvbnN0 IHVuc2lnbmVkIGNoYXIgZ2VuZXJhdG9yX3lbXSA9IHsKLSsgICAgICAgIDB4NTgsIDB4NjYsIDB4 NjYsIDB4NjYsIDB4NjYsIDB4NjYsIDB4NjYsIDB4NjYsIDB4NjYsIDB4NjYsIDB4NjYsIDB4NjYs Ci0rICAgICAgICAweDY2LCAweDY2LCAweDY2LCAweDY2LCAweDY2LCAweDY2LCAweDY2LCAweDY2 LCAweDY2LCAweDY2LCAweDY2LCAweDY2LAotKyAgICAgICAgMHg2NiwgMHg2NiwgMHg2NiwgMHg2 NiwgMHg2NiwgMHg2NiwgMHg2NiwgMHg2NiwKLSsgICAgfTsKLSsgICAgdW5zaWduZWQgY2hhciB4 X2RzdFszMl0sIGJ1ZmZbU0hBNTEyX0RJR0VTVF9MRU5HVEhdOwotKyAgICBFQ1hfS0VZICprZXk7 Ci0rICAgIHVuc2lnbmVkIGNoYXIgKnByaXZrZXkgPSBOVUxMLCAqcHVia2V5OwotKwotKyAgICBr ZXkgPSBPUEVOU1NMX3phbGxvYyhzaXplb2YoKmtleSkpOwotKyAgICBpZiAoa2V5ID09IE5VTEwp IHsKLSsgICAgICAgIEVDZXJyKEVDX0ZfUzM5MFhfUEtFWV9FQ0RfS0VZR0VOMjU1MTksIEVSUl9S X01BTExPQ19GQUlMVVJFKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIHB1 YmtleSA9IGtleS0+cHVia2V5OwotKwotKyAgICBwcml2a2V5ID0ga2V5LT5wcml2a2V5ID0gT1BF TlNTTF9zZWN1cmVfbWFsbG9jKEVEMjU1MTlfS0VZTEVOKTsKLSsgICAgaWYgKHByaXZrZXkgPT0g TlVMTCkgewotKyAgICAgICAgRUNlcnIoRUNfRl9TMzkwWF9QS0VZX0VDRF9LRVlHRU4yNTUxOSwg RVJSX1JfTUFMTE9DX0ZBSUxVUkUpOwotKyAgICAgICAgZ290byBlcnI7Ci0rICAgIH0KLSsKLSsg ICAgaWYgKFJBTkRfcHJpdl9ieXRlcyhwcml2a2V5LCBFRDI1NTE5X0tFWUxFTikgPD0gMCkKLSsg ICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBTSEE1MTIocHJpdmtleSwgMzIsIGJ1ZmYpOwotKyAg ICBidWZmWzBdICY9IDI0ODsKLSsgICAgYnVmZlszMV0gJj0gNjM7Ci0rICAgIGJ1ZmZbMzFdIHw9 IDY0OwotKwotKyAgICBpZiAoczM5MHhfZWQyNTUxOV9tdWwoeF9kc3QsIHB1YmtleSwKLSsgICAg ICAgICAgICAgICAgICAgICAgICAgIGdlbmVyYXRvcl94LCBnZW5lcmF0b3JfeSwgYnVmZikgIT0g MSkKLSsgICAgICAgIGdvdG8gZXJyOwotKwotKyAgICBwdWJrZXlbMzFdIHw9ICgoeF9kc3RbMF0g JiAweDAxKSA8PCA3KTsKLSsKLSsgICAgRVZQX1BLRVlfYXNzaWduKHBrZXksIGN0eC0+cG1ldGgt PnBrZXlfaWQsIGtleSk7Ci0rICAgIHJldHVybiAxOwotKyBlcnI6Ci0rICAgIE9QRU5TU0xfc2Vj dXJlX2NsZWFyX2ZyZWUocHJpdmtleSwgRUQyNTUxOV9LRVlMRU4pOwotKyAgICBrZXktPnByaXZr ZXkgPSBOVUxMOwotKyAgICBPUEVOU1NMX2ZyZWUoa2V5KTsKLSsgICAgcmV0dXJuIDA7Ci0rfQot KwotK3N0YXRpYyBpbnQgczM5MHhfcGtleV9lY2Rfa2V5Z2VuNDQ4KEVWUF9QS0VZX0NUWCAqY3R4 LCBFVlBfUEtFWSAqcGtleSkKLSt7Ci0rICAgIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBjaGFyIGdl bmVyYXRvcl94W10gPSB7Ci0rICAgICAgICAweDVlLCAweGMwLCAweDBjLCAweGM3LCAweDJiLCAw eGE4LCAweDI2LCAweDI2LCAweDhlLCAweDkzLCAweDAwLCAweDhiLAotKyAgICAgICAgMHhlMSwg MHg4MCwgMHgzYiwgMHg0MywgMHgxMSwgMHg2NSwgMHhiNiwgMHgyYSwgMHhmNywgMHgxYSwgMHhh ZSwgMHgxMiwKLSsgICAgICAgIDB4NjQsIDB4YTQsIDB4ZDMsIDB4YTMsIDB4MjQsIDB4ZTMsIDB4 NmQsIDB4ZWEsIDB4NjcsIDB4MTcsIDB4MGYsIDB4NDcsCi0rICAgICAgICAweDcwLCAweDY1LCAw eDE0LCAweDllLCAweGRhLCAweDM2LCAweGJmLCAweDIyLCAweGE2LCAweDE1LCAweDFkLCAweDIy LAotKyAgICAgICAgMHhlZCwgMHgwZCwgMHhlZCwgMHg2YiwgMHhjNiwgMHg3MCwgMHgxOSwgMHg0 ZiwgMHgwMAotKyAgICB9OwotKyAgICBzdGF0aWMgY29uc3QgdW5zaWduZWQgY2hhciBnZW5lcmF0 b3JfeVtdID0gewotKyAgICAgICAgMHgxNCwgMHhmYSwgMHgzMCwgMHhmMiwgMHg1YiwgMHg3OSwg MHgwOCwgMHg5OCwgMHhhZCwgMHhjOCwgMHhkNywgMHg0ZSwKLSsgICAgICAgIDB4MmMsIDB4MTMs IDB4YmQsIDB4ZmQsIDB4YzQsIDB4MzksIDB4N2MsIDB4ZTYsIDB4MWMsIDB4ZmYsIDB4ZDMsIDB4 M2EsCi0rICAgICAgICAweGQ3LCAweGMyLCAweGEwLCAweDA1LCAweDFlLCAweDljLCAweDc4LCAw eDg3LCAweDQwLCAweDk4LCAweGEzLCAweDZjLAotKyAgICAgICAgMHg3MywgMHg3MywgMHhlYSwg MHg0YiwgMHg2MiwgMHhjNywgMHhjOSwgMHg1NiwgMHgzNywgMHgyMCwgMHg3NiwgMHg4OCwKLSsg ICAgICAgIDB4MjQsIDB4YmMsIDB4YjYsIDB4NmUsIDB4NzEsIDB4NDYsIDB4M2YsIDB4NjksIDB4 MDAKLSsgICAgfTsKLSsgICAgdW5zaWduZWQgY2hhciB4X2RzdFs1N10sIGJ1ZmZbMTE0XTsKLSsg ICAgRUNYX0tFWSAqa2V5OwotKyAgICB1bnNpZ25lZCBjaGFyICpwcml2a2V5ID0gTlVMTCwgKnB1 YmtleTsKLSsgICAgRVZQX01EX0NUWCAqaGFzaGN0eCA9IE5VTEw7Ci0rCi0rICAgIGtleSA9IE9Q RU5TU0xfemFsbG9jKHNpemVvZigqa2V5KSk7Ci0rICAgIGlmIChrZXkgPT0gTlVMTCkgewotKyAg ICAgICAgRUNlcnIoRUNfRl9TMzkwWF9QS0VZX0VDRF9LRVlHRU40NDgsIEVSUl9SX01BTExPQ19G QUlMVVJFKTsKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICB9Ci0rCi0rICAgIHB1YmtleSA9IGtl eS0+cHVia2V5OwotKwotKyAgICBwcml2a2V5ID0ga2V5LT5wcml2a2V5ID0gT1BFTlNTTF9zZWN1 cmVfbWFsbG9jKEVENDQ4X0tFWUxFTik7Ci0rICAgIGlmIChwcml2a2V5ID09IE5VTEwpIHsKLSsg ICAgICAgIEVDZXJyKEVDX0ZfUzM5MFhfUEtFWV9FQ0RfS0VZR0VONDQ4LCBFUlJfUl9NQUxMT0Nf RkFJTFVSRSk7Ci0rICAgICAgICBnb3RvIGVycjsKLSsgICAgfQotKwotKyAgICBpZiAoUkFORF9w cml2X2J5dGVzKHByaXZrZXksIEVENDQ4X0tFWUxFTikgPD0gMCkKLSsgICAgICAgIGdvdG8gZXJy OwotKwotKyAgICBoYXNoY3R4ID0gRVZQX01EX0NUWF9uZXcoKTsKLSsgICAgaWYgKGhhc2hjdHgg PT0gTlVMTCkKLSsgICAgICAgIGdvdG8gZXJyOwotKyAgICBpZiAoRVZQX0RpZ2VzdEluaXRfZXgo aGFzaGN0eCwgRVZQX3NoYWtlMjU2KCksIE5VTEwpICE9IDEpCi0rICAgICAgICBnb3RvIGVycjsK LSsgICAgaWYgKEVWUF9EaWdlc3RVcGRhdGUoaGFzaGN0eCwgcHJpdmtleSwgNTcpICE9IDEpCi0r ICAgICAgICBnb3RvIGVycjsKLSsgICAgaWYgKEVWUF9EaWdlc3RGaW5hbFhPRihoYXNoY3R4LCBi dWZmLCBzaXplb2YoYnVmZikpICE9IDEpCi0rICAgICAgICBnb3RvIGVycjsKLSsKLSsgICAgYnVm ZlswXSAmPSAtNDsKLSsgICAgYnVmZls1NV0gfD0gMHg4MDsKLSsgICAgYnVmZls1Nl0gPSAwOwot KwotKyAgICBpZiAoczM5MHhfZWQ0NDhfbXVsKHhfZHN0LCBwdWJrZXksCi0rICAgICAgICAgICAg ICAgICAgICAgICAgZ2VuZXJhdG9yX3gsIGdlbmVyYXRvcl95LCBidWZmKSAhPSAxKQotKyAgICAg ICAgZ290byBlcnI7Ci0rCi0rICAgIHB1YmtleVs1Nl0gfD0gKCh4X2RzdFswXSAmIDB4MDEpIDw8 IDcpOwotKwotKyAgICBFVlBfUEtFWV9hc3NpZ24ocGtleSwgY3R4LT5wbWV0aC0+cGtleV9pZCwg a2V5KTsKLSsgICAgRVZQX01EX0NUWF9mcmVlKGhhc2hjdHgpOwotKyAgICByZXR1cm4gMTsKLSsg ZXJyOgotKyAgICBPUEVOU1NMX3NlY3VyZV9jbGVhcl9mcmVlKHByaXZrZXksIEVENDQ4X0tFWUxF Tik7Ci0rICAgIGtleS0+cHJpdmtleSA9IE5VTEw7Ci0rICAgIE9QRU5TU0xfZnJlZShrZXkpOwot KyAgICBFVlBfTURfQ1RYX2ZyZWUoaGFzaGN0eCk7Ci0rICAgIHJldHVybiAwOwotK30KLSsKLStz dGF0aWMgaW50IHMzOTB4X3BrZXlfZWN4X2Rlcml2ZTI1NTE5KEVWUF9QS0VZX0NUWCAqY3R4LCB1 bnNpZ25lZCBjaGFyICprZXksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzaXplX3QgKmtleWxlbikKLSt7Ci0rICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnByaXZrZXks ICpwdWJrZXk7Ci0rCi0rICAgIGlmICghdmFsaWRhdGVfZWN4X2Rlcml2ZShjdHgsIGtleSwga2V5 bGVuLCAmcHJpdmtleSwgJnB1YmtleSkpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgaWYg KGtleSAhPSBOVUxMKQotKyAgICAgICAgcmV0dXJuIHMzOTB4X3gyNTUxOV9tdWwoa2V5LCBwdWJr ZXksIHByaXZrZXkpOwotKwotKyAgICAqa2V5bGVuID0gWDI1NTE5X0tFWUxFTjsKLSsgICAgcmV0 dXJuIDE7Ci0rfQotKwotK3N0YXRpYyBpbnQgczM5MHhfcGtleV9lY3hfZGVyaXZlNDQ4KEVWUF9Q S0VZX0NUWCAqY3R4LCB1bnNpZ25lZCBjaGFyICprZXksCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBzaXplX3QgKmtleWxlbikKLSt7Ci0rICAgIGNvbnN0IHVuc2lnbmVk IGNoYXIgKnByaXZrZXksICpwdWJrZXk7Ci0rCi0rICAgIGlmICghdmFsaWRhdGVfZWN4X2Rlcml2 ZShjdHgsIGtleSwga2V5bGVuLCAmcHJpdmtleSwgJnB1YmtleSkpCi0rICAgICAgICByZXR1cm4g MDsKLSsKLSsgICAgaWYgKGtleSAhPSBOVUxMKQotKyAgICAgICAgcmV0dXJuIHMzOTB4X3g0NDhf bXVsKGtleSwgcHVia2V5LCBwcml2a2V5KTsKLSsKLSsgICAgKmtleWxlbiA9IFg0NDhfS0VZTEVO OwotKyAgICByZXR1cm4gMTsKLSt9Ci0rCi0rc3RhdGljIGludCBzMzkweF9wa2V5X2VjZF9kaWdl c3RzaWduMjU1MTkoRVZQX01EX0NUWCAqY3R4LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKnNpZywgc2l6ZV90ICpzaWdsZW4sCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hh ciAqdGJzLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVf dCB0YnNsZW4pCi0rewotKyAgICB1bmlvbiB7Ci0rICAgICAgICBzdHJ1Y3QgewotKyAgICAgICAg ICAgIHVuc2lnbmVkIGNoYXIgc2lnWzY0XTsKLSsgICAgICAgICAgICB1bnNpZ25lZCBjaGFyIHBy aXZbMzJdOwotKyAgICAgICAgfSBlZDI1NTE5OwotKyAgICAgICAgdW5zaWduZWQgbG9uZyBsb25n IGJ1ZmZbNTEyXTsKLSsgICAgfSBwYXJhbTsKLSsgICAgY29uc3QgRUNYX0tFWSAqZWRrZXkgPSBF VlBfTURfQ1RYX3BrZXlfY3R4KGN0eCktPnBrZXktPnBrZXkuZWN4OwotKyAgICBpbnQgcmM7Ci0r Ci0rICAgIGlmIChzaWcgPT0gTlVMTCkgewotKyAgICAgICAgKnNpZ2xlbiA9IEVEMjU1MTlfU0lH U0laRTsKLSsgICAgICAgIHJldHVybiAxOwotKyAgICB9Ci0rCi0rICAgIGlmICgqc2lnbGVuIDwg RUQyNTUxOV9TSUdTSVpFKSB7Ci0rICAgICAgICBFQ2VycihFQ19GX1MzOTBYX1BLRVlfRUNEX0RJ R0VTVFNJR04yNTUxOSwgRUNfUl9CVUZGRVJfVE9PX1NNQUxMKTsKLSsgICAgICAgIHJldHVybiAw OwotKyAgICB9Ci0rCi0rICAgIG1lbXNldCgmcGFyYW0sIDAsIHNpemVvZihwYXJhbSkpOwotKyAg ICBtZW1jcHkocGFyYW0uZWQyNTUxOS5wcml2LCBlZGtleS0+cHJpdmtleSwgc2l6ZW9mKHBhcmFt LmVkMjU1MTkucHJpdikpOwotKwotKyAgICByYyA9IHMzOTB4X2tkc2EoUzM5MFhfRUREU0FfU0lH Tl9FRDI1NTE5LCAmcGFyYW0uZWQyNTUxOSwgdGJzLCB0YnNsZW4pOwotKyAgICBPUEVOU1NMX2Ns ZWFuc2UocGFyYW0uZWQyNTUxOS5wcml2LCBzaXplb2YocGFyYW0uZWQyNTUxOS5wcml2KSk7Ci0r ICAgIGlmIChyYyAhPSAwKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIHMzOTB4X2ZsaXBf ZW5kaWFuMzIoc2lnLCBwYXJhbS5lZDI1NTE5LnNpZyk7Ci0rICAgIHMzOTB4X2ZsaXBfZW5kaWFu MzIoc2lnICsgMzIsIHBhcmFtLmVkMjU1MTkuc2lnICsgMzIpOwotKwotKyAgICAqc2lnbGVuID0g RUQyNTUxOV9TSUdTSVpFOwotKyAgICByZXR1cm4gMTsKLSt9Ci0rCi0rc3RhdGljIGludCBzMzkw eF9wa2V5X2VjZF9kaWdlc3RzaWduNDQ4KEVWUF9NRF9DVFggKmN0eCwKLSsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5zaWduZWQgY2hhciAqc2lnLCBzaXplX3QgKnNp Z2xlbiwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5z aWduZWQgY2hhciAqdGJzLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzaXplX3QgdGJzbGVuKQotK3sKLSsgICAgdW5pb24gewotKyAgICAgICAgc3RydWN0IHsKLSsg ICAgICAgICAgICB1bnNpZ25lZCBjaGFyIHNpZ1sxMjhdOwotKyAgICAgICAgICAgIHVuc2lnbmVk IGNoYXIgcHJpdls2NF07Ci0rICAgICAgICB9IGVkNDQ4OwotKyAgICAgICAgdW5zaWduZWQgbG9u ZyBsb25nIGJ1ZmZbNTEyXTsKLSsgICAgfSBwYXJhbTsKLSsgICAgY29uc3QgRUNYX0tFWSAqZWRr ZXkgPSBFVlBfTURfQ1RYX3BrZXlfY3R4KGN0eCktPnBrZXktPnBrZXkuZWN4OwotKyAgICBpbnQg cmM7Ci0rCi0rICAgIGlmIChzaWcgPT0gTlVMTCkgewotKyAgICAgICAgKnNpZ2xlbiA9IEVENDQ4 X1NJR1NJWkU7Ci0rICAgICAgICByZXR1cm4gMTsKLSsgICAgfQotKwotKyAgICBpZiAoKnNpZ2xl biA8IEVENDQ4X1NJR1NJWkUpIHsKLSsgICAgICAgIEVDZXJyKEVDX0ZfUzM5MFhfUEtFWV9FQ0Rf RElHRVNUU0lHTjQ0OCwgRUNfUl9CVUZGRVJfVE9PX1NNQUxMKTsKLSsgICAgICAgIHJldHVybiAw OwotKyAgICB9Ci0rCi0rICAgIG1lbXNldCgmcGFyYW0sIDAsIHNpemVvZihwYXJhbSkpOwotKyAg ICBtZW1jcHkocGFyYW0uZWQ0NDgucHJpdiArIDY0IC0gNTcsIGVka2V5LT5wcml2a2V5LCA1Nyk7 Ci0rCi0rICAgIHJjID0gczM5MHhfa2RzYShTMzkwWF9FRERTQV9TSUdOX0VENDQ4LCAmcGFyYW0u ZWQ0NDgsIHRicywgdGJzbGVuKTsKLSsgICAgT1BFTlNTTF9jbGVhbnNlKHBhcmFtLmVkNDQ4LnBy aXYsIHNpemVvZihwYXJhbS5lZDQ0OC5wcml2KSk7Ci0rICAgIGlmIChyYyAhPSAwKQotKyAgICAg ICAgcmV0dXJuIDA7Ci0rCi0rICAgIHMzOTB4X2ZsaXBfZW5kaWFuNjQocGFyYW0uZWQ0NDguc2ln LCBwYXJhbS5lZDQ0OC5zaWcpOwotKyAgICBzMzkweF9mbGlwX2VuZGlhbjY0KHBhcmFtLmVkNDQ4 LnNpZyArIDY0LCBwYXJhbS5lZDQ0OC5zaWcgKyA2NCk7Ci0rICAgIG1lbWNweShzaWcsIHBhcmFt LmVkNDQ4LnNpZywgNTcpOwotKyAgICBtZW1jcHkoc2lnICsgNTcsIHBhcmFtLmVkNDQ4LnNpZyAr IDY0LCA1Nyk7Ci0rCi0rICAgICpzaWdsZW4gPSBFRDQ0OF9TSUdTSVpFOwotKyAgICByZXR1cm4g MTsKLSt9Ci0rCi0rc3RhdGljIGludCBzMzkweF9wa2V5X2VjZF9kaWdlc3R2ZXJpZnkyNTUxOShF VlBfTURfQ1RYICpjdHgsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpzaWcsCi0rICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzaXplX3Qgc2lnbGVuLAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqdGJzLAotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IHRic2xlbikKLSt7 Ci0rICAgIHVuaW9uIHsKLSsgICAgICAgIHN0cnVjdCB7Ci0rICAgICAgICAgICAgdW5zaWduZWQg Y2hhciBzaWdbNjRdOwotKyAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgcHViWzMyXTsKLSsgICAg ICAgIH0gZWQyNTUxOTsKLSsgICAgICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBidWZmWzUxMl07Ci0r ICAgIH0gcGFyYW07Ci0rICAgIGNvbnN0IEVDWF9LRVkgKmVka2V5ID0gRVZQX01EX0NUWF9wa2V5 X2N0eChjdHgpLT5wa2V5LT5wa2V5LmVjeDsKLSsKLSsgICAgaWYgKHNpZ2xlbiAhPSBFRDI1NTE5 X1NJR1NJWkUpCi0rICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgbWVtc2V0KCZwYXJhbSwgMCwg c2l6ZW9mKHBhcmFtKSk7Ci0rICAgIHMzOTB4X2ZsaXBfZW5kaWFuMzIocGFyYW0uZWQyNTUxOS5z aWcsIHNpZyk7Ci0rICAgIHMzOTB4X2ZsaXBfZW5kaWFuMzIocGFyYW0uZWQyNTUxOS5zaWcgKyAz Miwgc2lnICsgMzIpOwotKyAgICBzMzkweF9mbGlwX2VuZGlhbjMyKHBhcmFtLmVkMjU1MTkucHVi LCBlZGtleS0+cHVia2V5KTsKLSsKLSsgICAgcmV0dXJuIHMzOTB4X2tkc2EoUzM5MFhfRUREU0Ff VkVSSUZZX0VEMjU1MTksCi0rICAgICAgICAgICAgICAgICAgICAgICZwYXJhbS5lZDI1NTE5LCB0 YnMsIHRic2xlbikgPT0gMCA/IDEgOiAwOwotK30KLSsKLStzdGF0aWMgaW50IHMzOTB4X3BrZXlf ZWNkX2RpZ2VzdHZlcmlmeTQ0OChFVlBfTURfQ1RYICpjdHgsCi0rICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqc2lnLAotKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVfdCBzaWdsZW4sCi0rICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hh ciAqdGJzLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemVf dCB0YnNsZW4pCi0rewotKyAgICB1bmlvbiB7Ci0rICAgICAgICBzdHJ1Y3QgewotKyAgICAgICAg ICAgIHVuc2lnbmVkIGNoYXIgc2lnWzEyOF07Ci0rICAgICAgICAgICAgdW5zaWduZWQgY2hhciBw dWJbNjRdOwotKyAgICAgICAgfSBlZDQ0ODsKLSsgICAgICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBi dWZmWzUxMl07Ci0rICAgIH0gcGFyYW07Ci0rICAgIGNvbnN0IEVDWF9LRVkgKmVka2V5ID0gRVZQ X01EX0NUWF9wa2V5X2N0eChjdHgpLT5wa2V5LT5wa2V5LmVjeDsKLSsKLSsgICAgaWYgKHNpZ2xl biAhPSBFRDQ0OF9TSUdTSVpFKQotKyAgICAgICAgcmV0dXJuIDA7Ci0rCi0rICAgIG1lbXNldCgm cGFyYW0sIDAsIHNpemVvZihwYXJhbSkpOwotKyAgICBtZW1jcHkocGFyYW0uZWQ0NDguc2lnLCBz aWcsIDU3KTsKLSsgICAgczM5MHhfZmxpcF9lbmRpYW42NChwYXJhbS5lZDQ0OC5zaWcsIHBhcmFt LmVkNDQ4LnNpZyk7Ci0rICAgIG1lbWNweShwYXJhbS5lZDQ0OC5zaWcgKyA2NCwgc2lnICsgNTcs IDU3KTsKLSsgICAgczM5MHhfZmxpcF9lbmRpYW42NChwYXJhbS5lZDQ0OC5zaWcgKyA2NCwgcGFy YW0uZWQ0NDguc2lnICsgNjQpOwotKyAgICBtZW1jcHkocGFyYW0uZWQ0NDgucHViLCBlZGtleS0+ cHVia2V5LCA1Nyk7Ci0rICAgIHMzOTB4X2ZsaXBfZW5kaWFuNjQocGFyYW0uZWQ0NDgucHViLCBw YXJhbS5lZDQ0OC5wdWIpOwotKwotKyAgICByZXR1cm4gczM5MHhfa2RzYShTMzkwWF9FRERTQV9W RVJJRllfRUQ0NDgsCi0rICAgICAgICAgICAgICAgICAgICAgICZwYXJhbS5lZDQ0OCwgdGJzLCB0 YnNsZW4pID09IDAgPyAxIDogMDsKLSt9Ci0rCi0rc3RhdGljIGNvbnN0IEVWUF9QS0VZX01FVEhP RCBlY3gyNTUxOV9zMzkweF9wa2V5X21ldGggPSB7Ci0rICAgIEVWUF9QS0VZX1gyNTUxOSwKLSsg ICAgMCwgMCwgMCwgMCwgMCwgMCwgMCwKLSsgICAgczM5MHhfcGtleV9lY3hfa2V5Z2VuMjU1MTks Ci0rICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsIDAsCi0rICAg IHMzOTB4X3BrZXlfZWN4X2Rlcml2ZTI1NTE5LAotKyAgICBwa2V5X2VjeF9jdHJsLAotKyAgICAw Ci0rfTsKLSsKLStzdGF0aWMgY29uc3QgRVZQX1BLRVlfTUVUSE9EIGVjeDQ0OF9zMzkweF9wa2V5 X21ldGggPSB7Ci0rICAgIEVWUF9QS0VZX1g0NDgsCi0rICAgIDAsIDAsIDAsIDAsIDAsIDAsIDAs Ci0rICAgIHMzOTB4X3BrZXlfZWN4X2tleWdlbjQ0OCwKLSsgICAgMCwgMCwgMCwgMCwgMCwgMCwg MCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCwKLSsgICAgczM5MHhfcGtleV9lY3hfZGVyaXZlNDQ4 LAotKyAgICBwa2V5X2VjeF9jdHJsLAotKyAgICAwCi0rfTsKLStzdGF0aWMgY29uc3QgRVZQX1BL RVlfTUVUSE9EIGVkMjU1MTlfczM5MHhfcGtleV9tZXRoID0gewotKyAgICBFVlBfUEtFWV9FRDI1 NTE5LCBFVlBfUEtFWV9GTEFHX1NJR0NUWF9DVVNUT00sCi0rICAgIDAsIDAsIDAsIDAsIDAsIDAs Ci0rICAgIHMzOTB4X3BrZXlfZWNkX2tleWdlbjI1NTE5LAotKyAgICAwLCAwLCAwLCAwLCAwLCAw LCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLAotKyAgICBwa2V5X2VjZF9jdHJsLAotKyAg ICAwLAotKyAgICBzMzkweF9wa2V5X2VjZF9kaWdlc3RzaWduMjU1MTksCi0rICAgIHMzOTB4X3Br ZXlfZWNkX2RpZ2VzdHZlcmlmeTI1NTE5Ci0rfTsKLSsKLStzdGF0aWMgY29uc3QgRVZQX1BLRVlf TUVUSE9EIGVkNDQ4X3MzOTB4X3BrZXlfbWV0aCA9IHsKLSsgICAgRVZQX1BLRVlfRUQ0NDgsIEVW UF9QS0VZX0ZMQUdfU0lHQ1RYX0NVU1RPTSwKLSsgICAgMCwgMCwgMCwgMCwgMCwgMCwKLSsgICAg czM5MHhfcGtleV9lY2Rfa2V5Z2VuNDQ4LAotKyAgICAwLCAwLCAwLCAwLCAwLCAwLCAwLCAwLCAw LCAwLCAwLCAwLCAwLCAwLCAwLCAwLAotKyAgICBwa2V5X2VjZF9jdHJsLAotKyAgICAwLAotKyAg ICBzMzkweF9wa2V5X2VjZF9kaWdlc3RzaWduNDQ4LAotKyAgICBzMzkweF9wa2V5X2VjZF9kaWdl c3R2ZXJpZnk0NDgKLSt9OwotKyNlbmRpZgotKwotK2NvbnN0IEVWUF9QS0VZX01FVEhPRCAqZWN4 MjU1MTlfcGtleV9tZXRob2Qodm9pZCkKLSt7Ci0rI2lmZGVmIFMzOTBYX0VDX0FTTQotKyAgICBp ZiAoT1BFTlNTTF9zMzkweGNhcF9QLnBjY1sxXSAmIFMzOTBYX0NBUEJJVChTMzkwWF9TQ0FMQVJf TVVMVElQTFlfWDI1NTE5KSkKLSsgICAgICAgIHJldHVybiAmZWN4MjU1MTlfczM5MHhfcGtleV9t ZXRoOwotKyNlbmRpZgotKyAgICByZXR1cm4gJmVjeDI1NTE5X3BrZXlfbWV0aDsKLSt9Ci0rCi0r Y29uc3QgRVZQX1BLRVlfTUVUSE9EICplY3g0NDhfcGtleV9tZXRob2Qodm9pZCkKLSt7Ci0rI2lm ZGVmIFMzOTBYX0VDX0FTTQotKyAgICBpZiAoT1BFTlNTTF9zMzkweGNhcF9QLnBjY1sxXSAmIFMz OTBYX0NBUEJJVChTMzkwWF9TQ0FMQVJfTVVMVElQTFlfWDQ0OCkpCi0rICAgICAgICByZXR1cm4g JmVjeDQ0OF9zMzkweF9wa2V5X21ldGg7Ci0rI2VuZGlmCi0rICAgIHJldHVybiAmZWN4NDQ4X3Br ZXlfbWV0aDsKLSt9Ci0rCi0rY29uc3QgRVZQX1BLRVlfTUVUSE9EICplZDI1NTE5X3BrZXlfbWV0 aG9kKHZvaWQpCi0rewotKyNpZmRlZiBTMzkwWF9FQ19BU00KLSsgICAgaWYgKE9QRU5TU0xfczM5 MHhjYXBfUC5wY2NbMV0gJiBTMzkwWF9DQVBCSVQoUzM5MFhfU0NBTEFSX01VTFRJUExZX0VEMjU1 MTkpCi0rICAgICAgICAmJiBPUEVOU1NMX3MzOTB4Y2FwX1Aua2RzYVswXSAmIFMzOTBYX0NBUEJJ VChTMzkwWF9FRERTQV9TSUdOX0VEMjU1MTkpCi0rICAgICAgICAmJiBPUEVOU1NMX3MzOTB4Y2Fw X1Aua2RzYVswXQotKyAgICAgICAgICAgICYgUzM5MFhfQ0FQQklUKFMzOTBYX0VERFNBX1ZFUklG WV9FRDI1NTE5KSkKLSsgICAgICAgIHJldHVybiAmZWQyNTUxOV9zMzkweF9wa2V5X21ldGg7Ci0r I2VuZGlmCi0rICAgIHJldHVybiAmZWQyNTUxOV9wa2V5X21ldGg7Ci0rfQotKwotK2NvbnN0IEVW UF9QS0VZX01FVEhPRCAqZWQ0NDhfcGtleV9tZXRob2Qodm9pZCkKLSt7Ci0rI2lmZGVmIFMzOTBY X0VDX0FTTQotKyAgICBpZiAoT1BFTlNTTF9zMzkweGNhcF9QLnBjY1sxXSAmIFMzOTBYX0NBUEJJ VChTMzkwWF9TQ0FMQVJfTVVMVElQTFlfRUQ0NDgpCi0rICAgICAgICAmJiBPUEVOU1NMX3MzOTB4 Y2FwX1Aua2RzYVswXSAmIFMzOTBYX0NBUEJJVChTMzkwWF9FRERTQV9TSUdOX0VENDQ4KQotKyAg ICAgICAgJiYgT1BFTlNTTF9zMzkweGNhcF9QLmtkc2FbMF0gJiBTMzkwWF9DQVBCSVQoUzM5MFhf RUREU0FfVkVSSUZZX0VENDQ4KSkKLSsgICAgICAgIHJldHVybiAmZWQ0NDhfczM5MHhfcGtleV9t ZXRoOwotKyNlbmRpZgotKyAgICByZXR1cm4gJmVkNDQ4X3BrZXlfbWV0aDsKLSt9Ci1kaWZmIC11 cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZXJyL29wZW5zc2wudHh0LnMzOTB4LWVjYyBvcGVuc3Ns LTEuMS4xZy9jcnlwdG8vZXJyL29wZW5zc2wudHh0Ci0tLS0gb3BlbnNzbC0xLjEuMWcvY3J5cHRv L2Vyci9vcGVuc3NsLnR4dC5zMzkweC1lY2MJMjAyMC0wNS0xOCAxMjo0NTo0MC44MzQyMzQwNzkg KzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZXJyL29wZW5zc2wudHh0CTIwMjAtMDUt MTggMTI6NDU6NDQuNTc1MjY2NTkyICswMjAwCi1AQCAtNDk2LDYgKzQ5NiwxMSBAQCBFQ19GX0VD RFNBX1NJR05fRVg6MjU0OkVDRFNBX3NpZ25fZXgKLSBFQ19GX0VDRFNBX1NJR05fU0VUVVA6MjQ4 OkVDRFNBX3NpZ25fc2V0dXAKLSBFQ19GX0VDRFNBX1NJR19ORVc6MjY1OkVDRFNBX1NJR19uZXcK LSBFQ19GX0VDRFNBX1ZFUklGWToyNTM6RUNEU0FfdmVyaWZ5Ci0rRUNfRl9FQ0RTQV9TSU1QTEVf U0lHTl9TRVRVUDozMTA6ZWNkc2Ffc2ltcGxlX3NpZ25fc2V0dXAKLStFQ19GX0VDRFNBX1NJTVBM RV9TSUdOX1NJRzozMTE6ZWNkc2Ffc2ltcGxlX3NpZ25fc2lnCi0rRUNfRl9FQ0RTQV9TSU1QTEVf VkVSSUZZX1NJRzozMTI6ZWNkc2Ffc2ltcGxlX3ZlcmlmeV9zaWcKLStFQ19GX0VDRFNBX1MzOTBY X05JU1RQX1NJR05fU0lHOjMxMzplY2RzYV9zMzkweF9uaXN0cF9zaWduX3NpZwotK0VDX0ZfRUNE U0FfUzM5MFhfTklTVFBfVkVSSUZZX1NJRzozMTQ6ZWNkc2FfczM5MHhfbmlzdHBfdmVyaWZ5X3Np ZwotIEVDX0ZfRUNEX0lURU1fVkVSSUZZOjI3MDplY2RfaXRlbV92ZXJpZnkKLSBFQ19GX0VDS0VZ X1BBUkFNMlRZUEU6MjIzOmVja2V5X3BhcmFtMnR5cGUKLSBFQ19GX0VDS0VZX1BBUkFNX0RFQ09E RToyMTI6ZWNrZXlfcGFyYW1fZGVjb2RlCi1AQCAtNjU3LDYgKzY2Miw3IEBAIEVDX0ZfTklTVFA1 MjFfUFJFX0NPTVBfTkVXOjIzNzpuaXN0cDUyMV8KLSBFQ19GX08ySV9FQ1BVQkxJQ0tFWToxNTI6 bzJpX0VDUHVibGljS2V5Ci0gRUNfRl9PTERfRUNfUFJJVl9ERUNPREU6MjIyOm9sZF9lY19wcml2 X2RlY29kZQotIEVDX0ZfT1NTTF9FQ0RIX0NPTVBVVEVfS0VZOjI0Nzpvc3NsX2VjZGhfY29tcHV0 ZV9rZXkKLStFQ19GX09TU0xfRUNEU0FfU0lHTl9TRVRVUDozMDA6b3NzbF9lY2RzYV9zaWduX3Nl dHVwCi0gRUNfRl9PU1NMX0VDRFNBX1NJR05fU0lHOjI0OTpvc3NsX2VjZHNhX3NpZ25fc2lnCi0g RUNfRl9PU1NMX0VDRFNBX1ZFUklGWV9TSUc6MjUwOm9zc2xfZWNkc2FfdmVyaWZ5X3NpZwotIEVD X0ZfUEtFWV9FQ0RfQ1RSTDoyNzE6cGtleV9lY2RfY3RybAotQEAgLTY3Miw2ICs2NzgsMTIgQEAg RUNfRl9QS0VZX0VDX0tERl9ERVJJVkU6MjgzOnBrZXlfZWNfa2RmXwotIEVDX0ZfUEtFWV9FQ19L RVlHRU46MTk5OnBrZXlfZWNfa2V5Z2VuCi0gRUNfRl9QS0VZX0VDX1BBUkFNR0VOOjIxOTpwa2V5 X2VjX3BhcmFtZ2VuCi0gRUNfRl9QS0VZX0VDX1NJR046MjE4OnBrZXlfZWNfc2lnbgotK0VDX0Zf UzM5MFhfUEtFWV9FQ0RfRElHRVNUU0lHTjI1NTE5OjMwMzpzMzkweF9wa2V5X2VjZF9kaWdlc3Rz aWduMjU1MTkKLStFQ19GX1MzOTBYX1BLRVlfRUNEX0RJR0VTVFNJR040NDg6MzA0OnMzOTB4X3Br ZXlfZWNkX2RpZ2VzdHNpZ240NDgKLStFQ19GX1MzOTBYX1BLRVlfRUNEX0tFWUdFTjI1NTE5OjMw NTpzMzkweF9wa2V5X2VjZF9rZXlnZW4yNTUxOQotK0VDX0ZfUzM5MFhfUEtFWV9FQ0RfS0VZR0VO NDQ4OjMwNjpzMzkweF9wa2V5X2VjZF9rZXlnZW40NDgKLStFQ19GX1MzOTBYX1BLRVlfRUNYX0tF WUdFTjI1NTE5OjMwNzpzMzkweF9wa2V5X2VjeF9rZXlnZW4yNTUxOQotK0VDX0ZfUzM5MFhfUEtF WV9FQ1hfS0VZR0VONDQ4OjMwODpzMzkweF9wa2V5X2VjeF9rZXlnZW40NDgKLSBFQ19GX1ZBTElE QVRFX0VDWF9ERVJJVkU6Mjc4OnZhbGlkYXRlX2VjeF9kZXJpdmUKLSBFTkdJTkVfRl9ESUdFU1Rf VVBEQVRFOjE5ODpkaWdlc3RfdXBkYXRlCi0gRU5HSU5FX0ZfRFlOQU1JQ19DVFJMOjE4MDpkeW5h bWljX2N0cmwKLUBAIC0yMTYwLDYgKzIxNzIsNyBAQCBFQ19SX0JVRkZFUl9UT09fU01BTEw6MTAw OmJ1ZmZlciB0b28gc21hCi0gRUNfUl9DQU5OT1RfSU5WRVJUOjE2NTpjYW5ub3QgaW52ZXJ0Ci0g RUNfUl9DT09SRElOQVRFU19PVVRfT0ZfUkFOR0U6MTQ2OmNvb3JkaW5hdGVzIG91dCBvZiByYW5n ZQotIEVDX1JfQ1VSVkVfRE9FU19OT1RfU1VQUE9SVF9FQ0RIOjE2MDpjdXJ2ZSBkb2VzIG5vdCBz dXBwb3J0IGVjZGgKLStFQ19SX0NVUlZFX0RPRVNfTk9UX1NVUFBPUlRfRUNEU0E6MTcwOmN1cnZl IGRvZXMgbm90IHN1cHBvcnQgZWNkc2EKLSBFQ19SX0NVUlZFX0RPRVNfTk9UX1NVUFBPUlRfU0lH TklORzoxNTk6Y3VydmUgZG9lcyBub3Qgc3VwcG9ydCBzaWduaW5nCi0gRUNfUl9EMklfRUNQS1BB UkFNRVRFUlNfRkFJTFVSRToxMTc6ZDJpIGVjcGtwYXJhbWV0ZXJzIGZhaWx1cmUKLSBFQ19SX0RF Q09ERV9FUlJPUjoxNDI6ZGVjb2RlIGVycm9yCi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlw dG8vZXZwL3BtZXRoX2xpYi5jLnMzOTB4LWVjYyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vZXZwL3Bt ZXRoX2xpYi5jCi0tLS0gb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2V2cC9wbWV0aF9saWIuYy5zMzkw eC1lY2MJMjAyMC0wNS0xOCAxMjo0NTo0MC43ODcyMzM2NzEgKzAyMDAKLSsrKyBvcGVuc3NsLTEu MS4xZy9jcnlwdG8vZXZwL3BtZXRoX2xpYi5jCTIwMjAtMDUtMTggMTI6NDU6NDQuNTc2MjY2NjAx ICswMjAwCi1AQCAtMTcsNjAgKzE3LDY3IEBACi0gI2luY2x1ZGUgImNyeXB0by9ldnAuaCIKLSAj aW5jbHVkZSAiaW50ZXJuYWwvbnVtYmVycy5oIgotIAotK3R5cGVkZWYgY29uc3QgRVZQX1BLRVlf TUVUSE9EICooKnBtZXRoX2ZuKSh2b2lkKTsKLSB0eXBlZGVmIGludCBza19jbXBfZm5fdHlwZShj b25zdCBjaGFyICpjb25zdCAqYSwgY29uc3QgY2hhciAqY29uc3QgKmIpOwotIAotIHN0YXRpYyBT VEFDS19PRihFVlBfUEtFWV9NRVRIT0QpICphcHBfcGtleV9tZXRob2RzID0gTlVMTDsKLSAKLSAv KiBUaGlzIGFycmF5IG5lZWRzIHRvIGJlIGluIG9yZGVyIG9mIE5JRHMgKi8KLS1zdGF0aWMgY29u c3QgRVZQX1BLRVlfTUVUSE9EICpzdGFuZGFyZF9tZXRob2RzW10gPSB7Ci0rc3RhdGljIHBtZXRo X2ZuIHN0YW5kYXJkX21ldGhvZHNbXSA9IHsKLSAjaWZuZGVmIE9QRU5TU0xfTk9fUlNBCi0tICAg ICZyc2FfcGtleV9tZXRoLAotKyAgICByc2FfcGtleV9tZXRob2QsCi0gI2VuZGlmCi0gI2lmbmRl ZiBPUEVOU1NMX05PX0RICi0tICAgICZkaF9wa2V5X21ldGgsCi0rICAgIGRoX3BrZXlfbWV0aG9k LAotICNlbmRpZgotICNpZm5kZWYgT1BFTlNTTF9OT19EU0EKLS0gICAgJmRzYV9wa2V5X21ldGgs Ci0rICAgIGRzYV9wa2V5X21ldGhvZCwKLSAjZW5kaWYKLSAjaWZuZGVmIE9QRU5TU0xfTk9fRUMK LS0gICAgJmVjX3BrZXlfbWV0aCwKLSsgICAgZWNfcGtleV9tZXRob2QsCi0gI2VuZGlmCi0tICAg ICZobWFjX3BrZXlfbWV0aCwKLSsgICAgaG1hY19wa2V5X21ldGhvZCwKLSAjaWZuZGVmIE9QRU5T U0xfTk9fQ01BQwotLSAgICAmY21hY19wa2V5X21ldGgsCi0rICAgIGNtYWNfcGtleV9tZXRob2Qs Ci0gI2VuZGlmCi0gI2lmbmRlZiBPUEVOU1NMX05PX1JTQQotLSAgICAmcnNhX3Bzc19wa2V5X21l dGgsCi0rICAgIHJzYV9wc3NfcGtleV9tZXRob2QsCi0gI2VuZGlmCi0gI2lmbmRlZiBPUEVOU1NM X05PX0RICi0tICAgICZkaHhfcGtleV9tZXRoLAotKyAgICBkaHhfcGtleV9tZXRob2QsCi0gI2Vu ZGlmCi0gI2lmbmRlZiBPUEVOU1NMX05PX1NDUllQVAotLSAgICAmc2NyeXB0X3BrZXlfbWV0aCwK LSsgICAgc2NyeXB0X3BrZXlfbWV0aG9kLAotICNlbmRpZgotLSAgICAmdGxzMV9wcmZfcGtleV9t ZXRoLAotKyAgICB0bHMxX3ByZl9wa2V5X21ldGhvZCwKLSAjaWZuZGVmIE9QRU5TU0xfTk9fRUMK LS0gICAgJmVjeDI1NTE5X3BrZXlfbWV0aCwKLS0gICAgJmVjeDQ0OF9wa2V5X21ldGgsCi0rICAg IGVjeDI1NTE5X3BrZXlfbWV0aG9kLAotKyAgICBlY3g0NDhfcGtleV9tZXRob2QsCi0gI2VuZGlm Ci0tICAgICZoa2RmX3BrZXlfbWV0aCwKLSsgICAgaGtkZl9wa2V5X21ldGhvZCwKLSAjaWZuZGVm IE9QRU5TU0xfTk9fUE9MWTEzMDUKLS0gICAgJnBvbHkxMzA1X3BrZXlfbWV0aCwKLSsgICAgcG9s eTEzMDVfcGtleV9tZXRob2QsCi0gI2VuZGlmCi0gI2lmbmRlZiBPUEVOU1NMX05PX1NJUEhBU0gK LS0gICAgJnNpcGhhc2hfcGtleV9tZXRoLAotKyAgICBzaXBoYXNoX3BrZXlfbWV0aG9kLAotICNl bmRpZgotICNpZm5kZWYgT1BFTlNTTF9OT19FQwotLSAgICAmZWQyNTUxOV9wa2V5X21ldGgsCi0t ICAgICZlZDQ0OF9wa2V5X21ldGgsCi0rICAgIGVkMjU1MTlfcGtleV9tZXRob2QsCi0rICAgIGVk NDQ4X3BrZXlfbWV0aG9kLAotICNlbmRpZgotICNpZm5kZWYgT1BFTlNTTF9OT19TTTIKLS0gICAg JnNtMl9wa2V5X21ldGgsCi0rICAgIHNtMl9wa2V5X21ldGhvZCwKLSAjZW5kaWYKLSB9OwotIAot LURFQ0xBUkVfT0JKX0JTRUFSQ0hfQ01QX0ZOKGNvbnN0IEVWUF9QS0VZX01FVEhPRCAqLCBjb25z dCBFVlBfUEtFWV9NRVRIT0QgKiwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICBwbWV0aCk7 Ci0rREVDTEFSRV9PQkpfQlNFQVJDSF9DTVBfRk4oY29uc3QgRVZQX1BLRVlfTUVUSE9EICosIHBt ZXRoX2ZuLCBwbWV0aF9mdW5jKTsKLSsKLStzdGF0aWMgaW50IHBtZXRoX2Z1bmNfY21wKGNvbnN0 IEVWUF9QS0VZX01FVEhPRCAqY29uc3QgKmEsIHBtZXRoX2ZuIGNvbnN0ICpiKQotK3sKLSsgICAg cmV0dXJuICgoKmEpLT5wa2V5X2lkIC0gKCgqKmIpKCkpLT5wa2V5X2lkKTsKLSt9Ci0rCi0rSU1Q TEVNRU5UX09CSl9CU0VBUkNIX0NNUF9GTihjb25zdCBFVlBfUEtFWV9NRVRIT0QgKiwgcG1ldGhf Zm4sIHBtZXRoX2Z1bmMpOwotIAotIHN0YXRpYyBpbnQgcG1ldGhfY21wKGNvbnN0IEVWUF9QS0VZ X01FVEhPRCAqY29uc3QgKmEsCi0gICAgICAgICAgICAgICAgICAgICAgY29uc3QgRVZQX1BLRVlf TUVUSE9EICpjb25zdCAqYikKLUBAIC03OCwxMyArODUsMTEgQEAgc3RhdGljIGludCBwbWV0aF9j bXAoY29uc3QgRVZQX1BLRVlfTUVUSAotICAgICByZXR1cm4gKCgqYSktPnBrZXlfaWQgLSAoKmIp LT5wa2V5X2lkKTsKLSB9Ci0gCi0tSU1QTEVNRU5UX09CSl9CU0VBUkNIX0NNUF9GTihjb25zdCBF VlBfUEtFWV9NRVRIT0QgKiwgY29uc3QgRVZQX1BLRVlfTUVUSE9EICosCi0tICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBwbWV0aCk7Ci0tCi0gY29uc3QgRVZQX1BLRVlfTUVUSE9EICpFVlBf UEtFWV9tZXRoX2ZpbmQoaW50IHR5cGUpCi0gewotKyAgICBwbWV0aF9mbiAqcmV0OwotICAgICBF VlBfUEtFWV9NRVRIT0QgdG1wOwotLSAgICBjb25zdCBFVlBfUEtFWV9NRVRIT0QgKnQgPSAmdG1w LCAqKnJldDsKLSsgICAgY29uc3QgRVZQX1BLRVlfTUVUSE9EICp0ID0gJnRtcDsKLSAgICAgdG1w LnBrZXlfaWQgPSB0eXBlOwotICAgICBpZiAoYXBwX3BrZXlfbWV0aG9kcykgewotICAgICAgICAg aW50IGlkeDsKLUBAIC05MiwxMiArOTcsMTIgQEAgY29uc3QgRVZQX1BLRVlfTUVUSE9EICpFVlBf UEtFWV9tZXRoX2ZpbgotICAgICAgICAgaWYgKGlkeCA+PSAwKQotICAgICAgICAgICAgIHJldHVy biBza19FVlBfUEtFWV9NRVRIT0RfdmFsdWUoYXBwX3BrZXlfbWV0aG9kcywgaWR4KTsKLSAgICAg fQotLSAgICByZXQgPSBPQkpfYnNlYXJjaF9wbWV0aCgmdCwgc3RhbmRhcmRfbWV0aG9kcywKLS0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHN0YW5kYXJkX21ldGhvZHMpIC8KLS0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKEVWUF9QS0VZX01FVEhPRCAqKSk7Ci0r ICAgIHJldCA9IE9CSl9ic2VhcmNoX3BtZXRoX2Z1bmMoJnQsIHN0YW5kYXJkX21ldGhvZHMsCi0r ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZW9mKHN0YW5kYXJkX21ldGhvZHMp IC8KLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YocG1ldGhfZm4pKTsK LSAgICAgaWYgKCFyZXQgfHwgISpyZXQpCi0gICAgICAgICByZXR1cm4gTlVMTDsKLS0gICAgcmV0 dXJuICpyZXQ7Ci0rICAgIHJldHVybiAoKipyZXQpKCk7Ci0gfQotIAotIHN0YXRpYyBFVlBfUEtF WV9DVFggKmludF9jdHhfbmV3KEVWUF9QS0VZICpwa2V5LCBFTkdJTkUgKmUsIGludCBpZCkKLUBA IC0zNDgsNyArMzUzLDcgQEAgc2l6ZV90IEVWUF9QS0VZX21ldGhfZ2V0X2NvdW50KHZvaWQpCi0g Y29uc3QgRVZQX1BLRVlfTUVUSE9EICpFVlBfUEtFWV9tZXRoX2dldDAoc2l6ZV90IGlkeCkKLSB7 Ci0gICAgIGlmIChpZHggPCBPU1NMX05FTEVNKHN0YW5kYXJkX21ldGhvZHMpKQotLSAgICAgICAg cmV0dXJuIHN0YW5kYXJkX21ldGhvZHNbaWR4XTsKLSsgICAgICAgIHJldHVybiAoc3RhbmRhcmRf bWV0aG9kc1tpZHhdKSgpOwotICAgICBpZiAoYXBwX3BrZXlfbWV0aG9kcyA9PSBOVUxMKQotICAg ICAgICAgcmV0dXJuIE5VTEw7Ci0gICAgIGlkeCAtPSBPU1NMX05FTEVNKHN0YW5kYXJkX21ldGhv ZHMpOwotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2htYWMvaG1fcG1ldGguYy5zMzkw eC1lY2Mgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2htYWMvaG1fcG1ldGguYwotLS0tIG9wZW5zc2wt MS4xLjFnL2NyeXB0by9obWFjL2htX3BtZXRoLmMuczM5MHgtZWNjCTIwMjAtMDUtMTggMTI6NDU6 NDAuNzk2MjMzNzQ5ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2htYWMvaG1fcG1l dGguYwkyMDIwLTA1LTE4IDEyOjQ1OjQ0LjU3NjI2NjYwMSArMDIwMAotQEAgLTIxMCwzICsyMTAs OCBAQCBjb25zdCBFVlBfUEtFWV9NRVRIT0QgaG1hY19wa2V5X21ldGggPSB7Ci0gICAgIHBrZXlf aG1hY19jdHJsLAotICAgICBwa2V5X2htYWNfY3RybF9zdHIKLSB9OwotKwotK2NvbnN0IEVWUF9Q S0VZX01FVEhPRCAqaG1hY19wa2V5X21ldGhvZCh2b2lkKQotK3sKLSsgICAgcmV0dXJuICZobWFj X3BrZXlfbWV0aDsKLSt9Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8va2RmL2hrZGYu Yy5zMzkweC1lY2Mgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2tkZi9oa2RmLmMKLS0tLSBvcGVuc3Ns LTEuMS4xZy9jcnlwdG8va2RmL2hrZGYuYy5zMzkweC1lY2MJMjAyMC0wNS0xOCAxMjo0NTo0MC44 MjYyMzQwMDkgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8va2RmL2hrZGYuYwkyMDIw LTA1LTE4IDEyOjQ1OjQ0LjU3NzI2NjYwOSArMDIwMAotQEAgLTIzMyw2ICsyMzMsMTEgQEAgY29u c3QgRVZQX0tERl9NRVRIT0QgaGtkZl9rZGZfbWV0aCA9IHsKLSAgICAga2RmX2hrZGZfZGVyaXZl Ci0gfTsKLSAKLStjb25zdCBFVlBfUEtFWV9NRVRIT0QgKmhrZGZfcGtleV9tZXRob2Qodm9pZCkK LSt7Ci0rICAgIHJldHVybiAmaGtkZl9wa2V5X21ldGg7Ci0rfQotKwotIHN0YXRpYyBpbnQgSEtE Rihjb25zdCBFVlBfTUQgKmV2cF9tZCwKLSAgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQg Y2hhciAqc2FsdCwgc2l6ZV90IHNhbHRfbGVuLAotICAgICAgICAgICAgICAgICBjb25zdCB1bnNp Z25lZCBjaGFyICprZXksIHNpemVfdCBrZXlfbGVuLAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcv Y3J5cHRvL2tkZi9zY3J5cHQuYy5zMzkweC1lY2Mgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2tkZi9z Y3J5cHQuYwotLS0tIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9rZGYvc2NyeXB0LmMuczM5MHgtZWNj CTIwMjAtMDUtMTggMTI6NDU6NDAuODI3MjM0MDE4ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcv Y3J5cHRvL2tkZi9zY3J5cHQuYwkyMDIwLTA1LTE4IDEyOjQ1OjQ0LjU3ODI2NjYxOCArMDIwMAot QEAgLTUwNCw0ICs1MDQsOSBAQCBzdGF0aWMgaW50IHNjcnlwdF9hbGcoY29uc3QgY2hhciAqcGFz cywKLSAgICAgcmV0dXJuIHJ2OwotIH0KLSAKLStjb25zdCBFVlBfUEtFWV9NRVRIT0QgKnNjcnlw dF9wa2V5X21ldGhvZCh2b2lkKQotK3sKLSsgICAgcmV0dXJuICZzY3J5cHRfcGtleV9tZXRoOwot K30KLSsKLSAjZW5kaWYKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9rZGYvdGxzMV9w cmYuYy5zMzkweC1lY2Mgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL2tkZi90bHMxX3ByZi5jCi0tLS0g b3BlbnNzbC0xLjEuMWcvY3J5cHRvL2tkZi90bHMxX3ByZi5jLnMzOTB4LWVjYwkyMDIwLTA1LTE4 IDEyOjQ1OjQwLjgyODIzNDAyNyArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9rZGYv dGxzMV9wcmYuYwkyMDIwLTA1LTE4IDEyOjQ1OjQ0LjU3ODI2NjYxOCArMDIwMAotQEAgLTE2OCw2 ICsxNjgsMTEgQEAgY29uc3QgRVZQX0tERl9NRVRIT0QgdGxzMV9wcmZfa2RmX21ldGggPQotICAg ICBrZGZfdGxzMV9wcmZfZGVyaXZlCi0gfTsKLSAKLStjb25zdCBFVlBfUEtFWV9NRVRIT0QgKnRs czFfcHJmX3BrZXlfbWV0aG9kKHZvaWQpCi0rewotKyAgICByZXR1cm4gJnRsczFfcHJmX3BrZXlf bWV0aDsKLSt9Ci0rCi0gc3RhdGljIGludCB0bHMxX3ByZl9QX2hhc2goY29uc3QgRVZQX01EICpt ZCwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB1bnNpZ25lZCBjaGFyICpzZWMs IHNpemVfdCBzZWNfbGVuLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2ln bmVkIGNoYXIgKnNlZWQsIHNpemVfdCBzZWVkX2xlbiwKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFn L2NyeXB0by9wb2x5MTMwNS9wb2x5MTMwNV9wbWV0aC5jLnMzOTB4LWVjYyBvcGVuc3NsLTEuMS4x Zy9jcnlwdG8vcG9seTEzMDUvcG9seTEzMDVfcG1ldGguYwotLS0tIG9wZW5zc2wtMS4xLjFnL2Ny eXB0by9wb2x5MTMwNS9wb2x5MTMwNV9wbWV0aC5jLnMzOTB4LWVjYwkyMDIwLTA0LTIxIDE0OjIy OjM5LjAwMDAwMDAwMCArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9wb2x5MTMwNS9w b2x5MTMwNV9wbWV0aC5jCTIwMjAtMDUtMTggMTI6NDU6NDQuNTc5MjY2NjI3ICswMjAwCi1AQCAt MTkyLDMgKzE5Miw4IEBAIGNvbnN0IEVWUF9QS0VZX01FVEhPRCBwb2x5MTMwNV9wa2V5X21ldGgK LSAgICAgcGtleV9wb2x5MTMwNV9jdHJsLAotICAgICBwa2V5X3BvbHkxMzA1X2N0cmxfc3RyCi0g fTsKLSsKLStjb25zdCBFVlBfUEtFWV9NRVRIT0QgKnBvbHkxMzA1X3BrZXlfbWV0aG9kKHZvaWQp Ci0rewotKyAgICByZXR1cm4gJnBvbHkxMzA1X3BrZXlfbWV0aDsKLSt9Ci1kaWZmIC11cCBvcGVu c3NsLTEuMS4xZy9jcnlwdG8vcnNhL3JzYV9wbWV0aC5jLnMzOTB4LWVjYyBvcGVuc3NsLTEuMS4x Zy9jcnlwdG8vcnNhL3JzYV9wbWV0aC5jCi0tLS0gb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3JzYS9y c2FfcG1ldGguYy5zMzkweC1lY2MJMjAyMC0wNS0xOCAxMjo0NTo0MC43OTgyMzM3NjYgKzAyMDAK LSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vcnNhL3JzYV9wbWV0aC5jCTIwMjAtMDUtMTggMTI6 NDU6NDQuNTgwMjY2NjM1ICswMjAwCi1AQCAtNzg5LDYgKzc4OSwxMSBAQCBjb25zdCBFVlBfUEtF WV9NRVRIT0QgcnNhX3BrZXlfbWV0aCA9IHsKLSAgICAgcGtleV9yc2FfY3RybF9zdHIKLSB9Owot IAotK2NvbnN0IEVWUF9QS0VZX01FVEhPRCAqcnNhX3BrZXlfbWV0aG9kKHZvaWQpCi0rewotKyAg ICByZXR1cm4gJnJzYV9wa2V5X21ldGg7Ci0rfQotKwotIC8qCi0gICogQ2FsbGVkIGZvciBQU1Mg c2lnbiBvciB2ZXJpZnkgaW5pdGlhbGlzYXRpb246IGNoZWNrcyBQU1MgcGFyYW1ldGVyCi0gICog c2FuaXR5IGFuZCBzZXRzIGFueSByZXN0cmljdGlvbnMgb24ga2V5IHVzYWdlLgotQEAgLTg1OSwz ICs4NjQsOCBAQCBjb25zdCBFVlBfUEtFWV9NRVRIT0QgcnNhX3Bzc19wa2V5X21ldGgKLSAgICAg cGtleV9yc2FfY3RybCwKLSAgICAgcGtleV9yc2FfY3RybF9zdHIKLSB9OwotKwotK2NvbnN0IEVW UF9QS0VZX01FVEhPRCAqcnNhX3Bzc19wa2V5X21ldGhvZCh2b2lkKQotK3sKLSsgICAgcmV0dXJu ICZyc2FfcHNzX3BrZXlfbWV0aDsKLSt9Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8v czM5MHhfYXJjaC5oLnMzOTB4LWVjYyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8vczM5MHhfYXJjaC5o Ci0tLS0gb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3MzOTB4X2FyY2guaC5zMzkweC1lY2MJMjAyMC0w NS0xOCAxMjo0NTo0MC42MDMyMzIwNzIgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9jcnlwdG8v czM5MHhfYXJjaC5oCTIwMjAtMDUtMTggMTI6NDU6NDQuNTgwMjY2NjM1ICswMjAwCi1AQCAtMjYs NiArMjYsMTIgQEAgdm9pZCBzMzkweF9rbWYoY29uc3QgdW5zaWduZWQgY2hhciAqaW4sCi0gICAg ICAgICAgICAgICAgdW5zaWduZWQgaW50IGZjLCB2b2lkICpwYXJhbSk7Ci0gdm9pZCBzMzkweF9r bWEoY29uc3QgdW5zaWduZWQgY2hhciAqYWFkLCBzaXplX3QgYWxlbiwgY29uc3QgdW5zaWduZWQg Y2hhciAqaW4sCi0gICAgICAgICAgICAgICAgc2l6ZV90IGxlbiwgdW5zaWduZWQgY2hhciAqb3V0 LCB1bnNpZ25lZCBpbnQgZmMsIHZvaWQgKnBhcmFtKTsKLStpbnQgczM5MHhfcGNjKHVuc2lnbmVk IGludCBmYywgdm9pZCAqcGFyYW0pOwotK2ludCBzMzkweF9rZHNhKHVuc2lnbmVkIGludCBmYywg dm9pZCAqcGFyYW0sIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmluLAotKyAgICAgICAgICAgICAgIHNp emVfdCBsZW4pOwotKwotK3ZvaWQgczM5MHhfZmxpcF9lbmRpYW4zMih1bnNpZ25lZCBjaGFyIGRz dFszMl0sIGNvbnN0IHVuc2lnbmVkIGNoYXIgc3JjWzMyXSk7Ci0rdm9pZCBzMzkweF9mbGlwX2Vu ZGlhbjY0KHVuc2lnbmVkIGNoYXIgZHN0WzY0XSwgY29uc3QgdW5zaWduZWQgY2hhciBzcmNbNjRd KTsKLSAKLSAvKgotICAqIFRoZSBmaWVsZCBlbGVtZW50cyBvZiBPUEVOU1NMX3MzOTB4Y2FwX1Ag YXJlIHRoZSA2NC1iaXQgd29yZHMgcmV0dXJuZWQgYnkKLUBAIC00NSw2ICs1MSw4IEBAIHN0cnVj dCBPUEVOU1NMX3MzOTB4Y2FwX3N0IHsKLSAgICAgdW5zaWduZWQgbG9uZyBsb25nIGttZlsyXTsK LSAgICAgdW5zaWduZWQgbG9uZyBsb25nIHBybm9bMl07Ci0gICAgIHVuc2lnbmVkIGxvbmcgbG9u ZyBrbWFbMl07Ci0rICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBwY2NbMl07Ci0rICAgIHVuc2lnbmVk IGxvbmcgbG9uZyBrZHNhWzJdOwotIH07Ci0gCi0gZXh0ZXJuIHN0cnVjdCBPUEVOU1NMX3MzOTB4 Y2FwX3N0IE9QRU5TU0xfczM5MHhjYXBfUDsKLUBAIC02NiwxMSArNzQsMTQgQEAgZXh0ZXJuIHN0 cnVjdCBPUEVOU1NMX3MzOTB4Y2FwX3N0IE9QRU5TUwotICMgZGVmaW5lIFMzOTBYX0tNRgkJMHg5 MAotICMgZGVmaW5lIFMzOTBYX1BSTk8JCTB4YTAKLSAjIGRlZmluZSBTMzkwWF9LTUEJCTB4YjAK LSsjIGRlZmluZSBTMzkwWF9QQ0MJCTB4YzAKLSsjIGRlZmluZSBTMzkwWF9LRFNBCQkweGQwCi0g Ci0gLyogRmFjaWxpdHkgQml0IE51bWJlcnMgKi8KLSAjIGRlZmluZSBTMzkwWF9WWAkJMTI5Ci0g IyBkZWZpbmUgUzM5MFhfVlhECQkxMzQKLSAjIGRlZmluZSBTMzkwWF9WWEUJCTEzNQotKyMgZGVm aW5lIFMzOTBYX01TQTkJCTE1NQkvKiBtZXNzYWdlLXNlY3VyaXR5LWFzc2lzdC1leHQuIDkgKi8K LSAKLSAvKiBGdW5jdGlvbiBDb2RlcyAqLwotIAotQEAgLTk0LDEwICsxMDUsMzIgQEAgZXh0ZXJu IHN0cnVjdCBPUEVOU1NMX3MzOTB4Y2FwX3N0IE9QRU5TUwotIC8qIHBybm8gKi8KLSAjIGRlZmlu ZSBTMzkwWF9UUk5HCQkxMTQKLSAKLSsvKiBwY2MgKi8KLSsjIGRlZmluZSBTMzkwWF9TQ0FMQVJf TVVMVElQTFlfUDI1Ngk2NAotKyMgZGVmaW5lIFMzOTBYX1NDQUxBUl9NVUxUSVBMWV9QMzg0CTY1 Ci0rIyBkZWZpbmUgUzM5MFhfU0NBTEFSX01VTFRJUExZX1A1MjEJNjYKLSsjIGRlZmluZSBTMzkw WF9TQ0FMQVJfTVVMVElQTFlfRUQyNTUxOSAgNzIKLSsjIGRlZmluZSBTMzkwWF9TQ0FMQVJfTVVM VElQTFlfRUQ0NDggICAgNzMKLSsjIGRlZmluZSBTMzkwWF9TQ0FMQVJfTVVMVElQTFlfWDI1NTE5 ICAgODAKLSsjIGRlZmluZSBTMzkwWF9TQ0FMQVJfTVVMVElQTFlfWDQ0OCAgICAgODEKLSsKLSsv KiBrZHNhICovCi0rIyBkZWZpbmUgUzM5MFhfRUNEU0FfVkVSSUZZX1AyNTYJMQotKyMgZGVmaW5l IFMzOTBYX0VDRFNBX1ZFUklGWV9QMzg0CTIKLSsjIGRlZmluZSBTMzkwWF9FQ0RTQV9WRVJJRllf UDUyMQkzCi0rIyBkZWZpbmUgUzM5MFhfRUNEU0FfU0lHTl9QMjU2CQk5Ci0rIyBkZWZpbmUgUzM5 MFhfRUNEU0FfU0lHTl9QMzg0CQkxMAotKyMgZGVmaW5lIFMzOTBYX0VDRFNBX1NJR05fUDUyMQkJ MTEKLSsjIGRlZmluZSBTMzkwWF9FRERTQV9WRVJJRllfRUQyNTUxOSAgICAgMzIKLSsjIGRlZmlu ZSBTMzkwWF9FRERTQV9WRVJJRllfRUQ0NDggICAgICAgMzYKLSsjIGRlZmluZSBTMzkwWF9FRERT QV9TSUdOX0VEMjU1MTkgICAgICAgNDAKLSsjIGRlZmluZSBTMzkwWF9FRERTQV9TSUdOX0VENDQ4 ICAgICAgICAgNDQKLSsKLSAvKiBSZWdpc3RlciAwIEZsYWdzICovCi0gIyBkZWZpbmUgUzM5MFhf REVDUllQVAkJMHg4MAotICMgZGVmaW5lIFMzOTBYX0tNQV9MUEMJCTB4MTAwCi0gIyBkZWZpbmUg UzM5MFhfS01BX0xBQUQJCTB4MjAwCi0gIyBkZWZpbmUgUzM5MFhfS01BX0hTCQkweDQwMAotKyMg ZGVmaW5lIFMzOTBYX0tEU0FfRAkJMHg4MAotIAotICNlbmRpZgotZGlmZiAtdXAgb3BlbnNzbC0x LjEuMWcvY3J5cHRvL3MzOTB4Y3B1aWQucGwuczM5MHgtZWNjIG9wZW5zc2wtMS4xLjFnL2NyeXB0 by9zMzkweGNwdWlkLnBsCi0tLS0gb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3MzOTB4Y3B1aWQucGwu czM5MHgtZWNjCTIwMjAtMDQtMjEgMTQ6MjI6MzkuMDAwMDAwMDAwICswMjAwCi0rKysgb3BlbnNz bC0xLjEuMWcvY3J5cHRvL3MzOTB4Y3B1aWQucGwJMjAyMC0wNS0xOCAxMjo0NTo0NC41ODEyNjY2 NDQgKzAyMDAKLUBAIC01OCw2ICs1OCwxMCBAQCBPUEVOU1NMX3MzOTB4X2ZhY2lsaXRpZXM6Ci0g CXN0ZwklcjAsUzM5MFhfUFJOTys4KCVyNCkKLSAJc3RnCSVyMCxTMzkwWF9LTUEoJXI0KQotIAlz dGcJJXIwLFMzOTBYX0tNQSs4KCVyNCkKLSsJc3RnCSVyMCxTMzkwWF9QQ0MoJXI0KQotKwlzdGcJ JXIwLFMzOTBYX1BDQys4KCVyNCkKLSsJc3RnCSVyMCxTMzkwWF9LRFNBKCVyNCkKLSsJc3RnCSVy MCxTMzkwWF9LRFNBKzgoJXI0KQotIAotIAkubG9uZwkweGIyYjA0MDAwCQkjIHN0ZmxlCTAoJXI0 KQotIAlicmMJOCwuTGRvbmUKLUBAIC02OCw2ICs3Miw3IEBAIE9QRU5TU0xfczM5MHhfZmFjaWxp dGllczoKLSAJLmxvbmcJMHhiMmIwNDAwMAkJIyBzdGZsZSAwKCVyNCkKLSAuTGRvbmU6Ci0gCWxt ZwklcjIsJXIzLFMzOTBYX1NURkxFKCVyNCkKLSsKLSAJdG1obAklcjIsMHg0MDAwCQkjIGNoZWNr IGZvciBtZXNzYWdlLXNlY3VyaXR5LWFzc2lzdAotIAlqegkuTHJldAotIAotQEAgLTkxLDYgKzk2 LDEzIEBAIE9QRU5TU0xfczM5MHhfZmFjaWxpdGllczoKLSAJbGEJJXIxLFMzOTBYX0tNQUMoJXI0 KQotIAkubG9uZwkweGI5MWUwMDQyCQkjIGttYWMgJXI0LCVyMgotIAotKwl0bWhoCSVyMywweDAw MDgJCSMgY2hlY2sgZm9yIG1lc3NhZ2Utc2VjdXJpdHktYXNzaXN0LTMKLSsJanoJLkxyZXQKLSsK LSsJbGdoaQklcjAsUzM5MFhfUVVFUlkJCSMgcXVlcnkgcGNjIGNhcGFiaWxpdHkgdmVjdG9yCi0r CWxhCSVyMSxTMzkwWF9QQ0MoJXI0KQotKwkubG9uZwkweGI5MmMwMDAwCQkjIHBjYwotKwotIAl0 bWhoCSVyMywweDAwMDQJCSMgY2hlY2sgZm9yIG1lc3NhZ2Utc2VjdXJpdHktYXNzaXN0LTQKLSAJ anoJLkxyZXQKLSAKLUBAIC0xMTQsNiArMTI2LDcgQEAgT1BFTlNTTF9zMzkweF9mYWNpbGl0aWVz OgotIAkubG9uZwkweGI5M2MwMDQyCQkjIHBybm8gJXI0LCVyMgotIAotIAlsZwklcjIsUzM5MFhf U1RGTEUrMTYoJXI0KQotKwotIAl0bWhsCSVyMiwweDIwMDAJCSMgY2hlY2sgZm9yIG1lc3NhZ2Ut c2VjdXJpdHktYXNzaXN0LTgKLSAJanoJLkxyZXQKLSAKLUBAIC0xMjEsNiArMTM0LDEzIEBAIE9Q RU5TU0xfczM5MHhfZmFjaWxpdGllczoKLSAJbGEJJXIxLFMzOTBYX0tNQSglcjQpCi0gCS5sb25n CTB4YjkyOTQwMjIJCSMga21hICVyMiwlcjQsJXIyCi0gCi0rCXRtaGwJJXIyLDB4MDAxMAkJIyBj aGVjayBmb3IgbWVzc2FnZS1zZWN1cml0eS1hc3Npc3QtOQotKwlqegkuTHJldAotKwotKwlsZ2hp CSVyMCxTMzkwWF9RVUVSWQkJIyBxdWVyeSBrZHNhIGNhcGFiaWxpdHkgdmVjdG9yCi0rCWxhCSVy MSxTMzkwWF9LRFNBKCVyNCkKLSsJLmxvbmcJMHhiOTNhMDAwMgkJIyBrZHNhICVyMCwlcjIKLSsK LSAuTHJldDoKLSAJYnIJJHJhCi0gLnNpemUJT1BFTlNTTF9zMzkweF9mYWNpbGl0aWVzLC4tT1BF TlNTTF9zMzkweF9mYWNpbGl0aWVzCi1AQCAtNDExLDYgKzQzMSwxMTMgQEAgczM5MHhfa21hOgot IF9fXwotIH0KLSAKLSsjIyMjIyMjIyMjIyMjIyMjCi0rIyBpbnQgczM5MHhfcGNjKHVuc2lnbmVk IGludCBmYywgdm9pZCAqcGFyYW0pCi0rewotK215ICgkZmMsJHBhcmFtKSA9IG1hcCgiJXIkXyIs KDIuLjMpKTsKLSskY29kZS49PDxfX187Ci0rLmdsb2JsCXMzOTB4X3BjYwotKy50eXBlCXMzOTB4 X3BjYyxcQGZ1bmN0aW9uCi0rLmFsaWduCTE2Ci0rczM5MHhfcGNjOgotKwlscgklcjAsJGZjCi0r CWwke2d9cgklcjEsJHBhcmFtCi0rCWxoaQklcjIsMAotKwotKwkubG9uZwkweGI5MmMwMDAwCSMg cGNjCi0rCWJyYwkxLC4tNAkJIyBwYXkgYXR0ZW50aW9uIHRvICJwYXJ0aWFsIGNvbXBsZXRpb24i Ci0rCWJyYwk3LC5McGNjX2VycgkjIGlmIENDPT0wIHJldHVybiAwLCBlbHNlIHJldHVybiAxCi0r LkxwY2Nfb3V0OgotKwlicgkkcmEKLSsuTHBjY19lcnI6Ci0rCWxoaQklcjIsMQotKwlqCS5McGNj X291dAotKy5zaXplCXMzOTB4X3BjYywuLXMzOTB4X3BjYwotK19fXwotK30KLSsKLSsjIyMjIyMj IyMjIyMjIyMjCi0rIyBpbnQgczM5MHhfa2RzYSh1bnNpZ25lZCBpbnQgZmMsIHZvaWQgKnBhcmFt LAotKyMgICAgICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqaW4sIHNpemVfdCBsZW4p Ci0rewotK215ICgkZmMsJHBhcmFtLCRpbiwkbGVuKSA9IG1hcCgiJXIkXyIsKDIuLjUpKTsKLSsk Y29kZS49PDxfX187Ci0rLmdsb2JsCXMzOTB4X2tkc2EKLSsudHlwZQlzMzkweF9rZHNhLFxAZnVu Y3Rpb24KLSsuYWxpZ24JMTYKLStzMzkweF9rZHNhOgotKwlscgklcjAsJGZjCi0rCWwke2d9cgkl cjEsJHBhcmFtCi0rCWxoaQklcjIsMAotKwotKwkubG9uZwkweGI5M2EwMDA0CSMga2RzYSAlcjAs JGluCi0rCWJyYwkxLC4tNAkJIyBwYXkgYXR0ZW50aW9uIHRvICJwYXJ0aWFsIGNvbXBsZXRpb24i Ci0rCWJyYwk3LC5Ma2RzYV9lcnIJIyBpZiBDQz09MCByZXR1cm4gMCwgZWxzZSByZXR1cm4gMQot Ky5Ma2RzYV9vdXQ6Ci0rCWJyCSRyYQotKy5Ma2RzYV9lcnI6Ci0rCWxoaQklcjIsMQotKwlqCS5M a2RzYV9vdXQKLSsuc2l6ZQlzMzkweF9rZHNhLC4tczM5MHhfa2RzYQotK19fXwotK30KLSsKLSsj IyMjIyMjIyMjIyMjIyMjCi0rIyB2b2lkIHMzOTB4X2ZsaXBfZW5kaWFuMzIodW5zaWduZWQgY2hh ciBkc3RbMzJdLCBjb25zdCB1bnNpZ25lZCBjaGFyIHNyY1szMl0pCi0rewotK215ICgkZHN0LCRz cmMpID0gbWFwKCIlciRfIiwoMi4uMykpOwotKyRjb2RlLj08PF9fXzsKLSsuZ2xvYmwJczM5MHhf ZmxpcF9lbmRpYW4zMgotKy50eXBlCXMzOTB4X2ZsaXBfZW5kaWFuMzIsXEBmdW5jdGlvbgotKy5h bGlnbgkxNgotK3MzOTB4X2ZsaXBfZW5kaWFuMzI6Ci0rCWxydmcJJXIwLDAoJXIwLCRzcmMpCi0r CWxydmcJJXIxLDgoJXIwLCRzcmMpCi0rCWxydmcJJXI0LDE2KCVyMCwkc3JjKQotKwlscnZnCSVy NSwyNCglcjAsJHNyYykKLSsJc3RnCSVyMCwyNCglcjAsJGRzdCkKLSsJc3RnCSVyMSwxNiglcjAs JGRzdCkKLSsJc3RnCSVyNCw4KCVyMCwkZHN0KQotKwlzdGcJJXI1LDAoJXIwLCRkc3QpCi0rCWJy CSRyYQotKy5zaXplCXMzOTB4X2ZsaXBfZW5kaWFuMzIsLi1zMzkweF9mbGlwX2VuZGlhbjMyCi0r X19fCi0rfQotKwotKyMjIyMjIyMjIyMjIyMjIyMKLSsjIHZvaWQgczM5MHhfZmxpcF9lbmRpYW42 NCh1bnNpZ25lZCBjaGFyIGRzdFs2NF0sIGNvbnN0IHVuc2lnbmVkIGNoYXIgc3JjWzY0XSkKLSt7 Ci0rbXkgKCRkc3QsJHNyYykgPSBtYXAoIiVyJF8iLCgyLi4zKSk7Ci0rJGNvZGUuPTw8X19fOwot Ky5nbG9ibAlzMzkweF9mbGlwX2VuZGlhbjY0Ci0rLnR5cGUJczM5MHhfZmxpcF9lbmRpYW42NCxc QGZ1bmN0aW9uCi0rLmFsaWduCTE2Ci0rczM5MHhfZmxpcF9lbmRpYW42NDoKLSsJc3RtZwklcjYs JXI5LDYqJFNJWkVfVCgkc3ApCi0rCi0rCWxydmcJJXIwLDAoJXIwLCRzcmMpCi0rCWxydmcJJXIx LDgoJXIwLCRzcmMpCi0rCWxydmcJJXI0LDE2KCVyMCwkc3JjKQotKwlscnZnCSVyNSwyNCglcjAs JHNyYykKLSsJbHJ2ZwklcjYsMzIoJXIwLCRzcmMpCi0rCWxydmcJJXI3LDQwKCVyMCwkc3JjKQot KwlscnZnCSVyOCw0OCglcjAsJHNyYykKLSsJbHJ2ZwklcjksNTYoJXIwLCRzcmMpCi0rCXN0Zwkl cjAsNTYoJXIwLCRkc3QpCi0rCXN0ZwklcjEsNDgoJXIwLCRkc3QpCi0rCXN0ZwklcjQsNDAoJXIw LCRkc3QpCi0rCXN0ZwklcjUsMzIoJXIwLCRkc3QpCi0rCXN0ZwklcjYsMjQoJXIwLCRkc3QpCi0r CXN0ZwklcjcsMTYoJXIwLCRkc3QpCi0rCXN0ZwklcjgsOCglcjAsJGRzdCkKLSsJc3RnCSVyOSww KCVyMCwkZHN0KQotKwotKwlsbWcJJXI2LCVyOSw2KiRTSVpFX1QoJHNwKQotKwlicgkkcmEKLSsu c2l6ZQlzMzkweF9mbGlwX2VuZGlhbjY0LC4tczM5MHhfZmxpcF9lbmRpYW42NAotK19fXwotK30K LSsKLSAkY29kZS49PDxfX187Ci0gLnNlY3Rpb24JLmluaXQKLSAJYnJhc2wJJHJhLE9QRU5TU0xf Y3B1aWRfc2V0dXAKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9zaXBoYXNoL3NpcGhh c2hfcG1ldGguYy5zMzkweC1lY2Mgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3NpcGhhc2gvc2lwaGFz aF9wbWV0aC5jCi0tLS0gb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3NpcGhhc2gvc2lwaGFzaF9wbWV0 aC5jLnMzOTB4LWVjYwkyMDIwLTA0LTIxIDE0OjIyOjM5LjAwMDAwMDAwMCArMDIwMAotKysrIG9w ZW5zc2wtMS4xLjFnL2NyeXB0by9zaXBoYXNoL3NpcGhhc2hfcG1ldGguYwkyMDIwLTA1LTE4IDEy OjQ1OjQ0LjU4MTI2NjY0NCArMDIwMAotQEAgLTIwMywzICsyMDMsOCBAQCBjb25zdCBFVlBfUEtF WV9NRVRIT0Qgc2lwaGFzaF9wa2V5X21ldGgKLSAgICAgcGtleV9zaXBoYXNoX2N0cmwsCi0gICAg IHBrZXlfc2lwaGFzaF9jdHJsX3N0cgotIH07Ci0rCi0rY29uc3QgRVZQX1BLRVlfTUVUSE9EICpz aXBoYXNoX3BrZXlfbWV0aG9kKHZvaWQpCi0rewotKyAgICByZXR1cm4gJnNpcGhhc2hfcGtleV9t ZXRoOwotK30KLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9zbTIvc20yX3BtZXRoLmMu czM5MHgtZWNjIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9zbTIvc20yX3BtZXRoLmMKLS0tLSBvcGVu c3NsLTEuMS4xZy9jcnlwdG8vc20yL3NtMl9wbWV0aC5jLnMzOTB4LWVjYwkyMDIwLTA0LTIxIDE0 OjIyOjM5LjAwMDAwMDAwMCArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFnL2NyeXB0by9zbTIvc20y X3BtZXRoLmMJMjAyMC0wNS0xOCAxMjo0NTo0NC41ODIyNjY2NTMgKzAyMDAKLUBAIC0zMjcsMyAr MzI3LDggQEAgY29uc3QgRVZQX1BLRVlfTUVUSE9EIHNtMl9wa2V5X21ldGggPSB7Ci0gCi0gICAg IHBrZXlfc20yX2RpZ2VzdF9jdXN0b20KLSB9OwotKwotK2NvbnN0IEVWUF9QS0VZX01FVEhPRCAq c20yX3BrZXlfbWV0aG9kKHZvaWQpCi0rewotKyAgICByZXR1cm4gJnNtMl9wa2V5X21ldGg7Ci0r fQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9jcnlwdG8vZXZwLmguczM5MHgtZWNj IG9wZW5zc2wtMS4xLjFnL2luY2x1ZGUvY3J5cHRvL2V2cC5oCi0tLS0gb3BlbnNzbC0xLjEuMWcv aW5jbHVkZS9jcnlwdG8vZXZwLmguczM5MHgtZWNjCTIwMjAtMDUtMTggMTI6NDU6NDAuODM0MjM0 MDc5ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9jcnlwdG8vZXZwLmgJMjAyMC0w NS0xOCAxMjo0NTo0NC41NzcyNjY2MDkgKzAyMDAKLUBAIC00NTksMyArNDU5LDIyIEBAIHZvaWQg ZXZwX2VuY29kZV9jdHhfc2V0X2ZsYWdzKEVWUF9FTkNPREUKLSAjZGVmaW5lIEVWUF9FTkNPREVf Q1RYX05PX05FV0xJTkVTICAgICAgICAgIDEKLSAvKiBVc2UgdGhlIFNSUCBiYXNlNjQgYWxwaGFi ZXQgaW5zdGVhZCBvZiB0aGUgc3RhbmRhcmQgb25lICovCi0gI2RlZmluZSBFVlBfRU5DT0RFX0NU WF9VU0VfU1JQX0FMUEhBQkVUICAgICAyCi0rCi0rY29uc3QgRVZQX1BLRVlfTUVUSE9EICpjbWFj X3BrZXlfbWV0aG9kKHZvaWQpOwotK2NvbnN0IEVWUF9QS0VZX01FVEhPRCAqZGhfcGtleV9tZXRo b2Qodm9pZCk7Ci0rY29uc3QgRVZQX1BLRVlfTUVUSE9EICpkaHhfcGtleV9tZXRob2Qodm9pZCk7 Ci0rY29uc3QgRVZQX1BLRVlfTUVUSE9EICpkc2FfcGtleV9tZXRob2Qodm9pZCk7Ci0rY29uc3Qg RVZQX1BLRVlfTUVUSE9EICplY19wa2V5X21ldGhvZCh2b2lkKTsKLStjb25zdCBFVlBfUEtFWV9N RVRIT0QgKnNtMl9wa2V5X21ldGhvZCh2b2lkKTsKLStjb25zdCBFVlBfUEtFWV9NRVRIT0QgKmVj eDI1NTE5X3BrZXlfbWV0aG9kKHZvaWQpOwotK2NvbnN0IEVWUF9QS0VZX01FVEhPRCAqZWN4NDQ4 X3BrZXlfbWV0aG9kKHZvaWQpOwotK2NvbnN0IEVWUF9QS0VZX01FVEhPRCAqZWQyNTUxOV9wa2V5 X21ldGhvZCh2b2lkKTsKLStjb25zdCBFVlBfUEtFWV9NRVRIT0QgKmVkNDQ4X3BrZXlfbWV0aG9k KHZvaWQpOwotK2NvbnN0IEVWUF9QS0VZX01FVEhPRCAqaG1hY19wa2V5X21ldGhvZCh2b2lkKTsK LStjb25zdCBFVlBfUEtFWV9NRVRIT0QgKnJzYV9wa2V5X21ldGhvZCh2b2lkKTsKLStjb25zdCBF VlBfUEtFWV9NRVRIT0QgKnJzYV9wc3NfcGtleV9tZXRob2Qodm9pZCk7Ci0rY29uc3QgRVZQX1BL RVlfTUVUSE9EICpzY3J5cHRfcGtleV9tZXRob2Qodm9pZCk7Ci0rY29uc3QgRVZQX1BLRVlfTUVU SE9EICp0bHMxX3ByZl9wa2V5X21ldGhvZCh2b2lkKTsKLStjb25zdCBFVlBfUEtFWV9NRVRIT0Qg KmhrZGZfcGtleV9tZXRob2Qodm9pZCk7Ci0rY29uc3QgRVZQX1BLRVlfTUVUSE9EICpwb2x5MTMw NV9wa2V5X21ldGhvZCh2b2lkKTsKLStjb25zdCBFVlBfUEtFWV9NRVRIT0QgKnNpcGhhc2hfcGtl eV9tZXRob2Qodm9pZCk7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9pbmNsdWRlL2ludGVybmFs L2NvbnN0YW50X3RpbWUuaC5zMzkweC1lY2Mgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9pbnRlcm5h bC9jb25zdGFudF90aW1lLmgKLS0tLSBvcGVuc3NsLTEuMS4xZy9pbmNsdWRlL2ludGVybmFsL2Nv bnN0YW50X3RpbWUuaC5zMzkweC1lY2MJMjAyMC0wNC0yMSAxNDoyMjozOS4wMDAwMDAwMDAgKzAy MDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9pbmNsdWRlL2ludGVybmFsL2NvbnN0YW50X3RpbWUuaAky MDIwLTA1LTE4IDEyOjQ1OjQ0LjU4MjI2NjY1MyArMDIwMAotQEAgLTM1Myw2ICszNTMsMzQgQEAg c3RhdGljIG9zc2xfaW5saW5lIHZvaWQgY29uc3RhbnRfdGltZV9jbwotIH0KLSAKLSAvKgotKyAq IG1hc2sgbXVzdCBiZSAweEZGIG9yIDB4MDAuCi0rICogImNvbnN0YW50IHRpbWUiIGlzIHBlciBs ZW4uCi0rICoKLSsgKiBpZiAobWFzaykgewotKyAqICAgICB1bnNpZ25lZCBjaGFyIHRtcFtsZW5d OwotKyAqCi0rICogICAgIG1lbWNweSh0bXAsIGEsIGxlbik7Ci0rICogICAgIG1lbWNweShhLCBi KTsKLSsgKiAgICAgbWVtY3B5KGIsIHRtcCk7Ci0rICogfQotKyAqLwotK3N0YXRpYyBvc3NsX2lu bGluZSB2b2lkIGNvbnN0YW50X3RpbWVfY29uZF9zd2FwX2J1ZmYodW5zaWduZWQgY2hhciBtYXNr LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dW5zaWduZWQgY2hhciAqYSwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHVuc2lnbmVkIGNoYXIgKmIsCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgbGVuKQotK3sKLSsgICAgc2l6 ZV90IGk7Ci0rICAgIHVuc2lnbmVkIGNoYXIgdG1wOwotKwotKyAgICBmb3IgKGkgPSAwOyBpIDwg bGVuOyBpKyspIHsKLSsgICAgICAgIHRtcCA9IGFbaV0gXiBiW2ldOwotKyAgICAgICAgdG1wICY9 IG1hc2s7Ci0rICAgICAgICBhW2ldIF49IHRtcDsKLSsgICAgICAgIGJbaV0gXj0gdG1wOwotKyAg ICB9Ci0rfQotKwotKy8qCi0gICogdGFibGUgaXMgYSB0d28gZGltZW5zaW9uYWwgYXJyYXkgb2Yg Ynl0ZXMuIEVhY2ggcm93IGhhcyByb3dzaXplIGVsZW1lbnRzLgotICAqIENvcGllcyByb3cgbnVt YmVyIGlkeCBpbnRvIG91dC4gcm93c2l6ZSBhbmQgbnVtcm93cyBhcmUgbm90IGNvbnNpZGVyZWQK LSAgKiBwcml2YXRlLgotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9vcGVuc3NsL2Vj ZXJyLmguczM5MHgtZWNjIG9wZW5zc2wtMS4xLjFnL2luY2x1ZGUvb3BlbnNzbC9lY2Vyci5oCi0t LS0gb3BlbnNzbC0xLjEuMWcvaW5jbHVkZS9vcGVuc3NsL2VjZXJyLmguczM5MHgtZWNjCTIwMjAt MDQtMjEgMTQ6MjI6MzkuMDAwMDAwMDAwICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvaW5jbHVk ZS9vcGVuc3NsL2VjZXJyLmgJMjAyMC0wNS0xOCAxMjo0NTo0NC41ODMyNjY2NjIgKzAyMDAKLUBA IC00Miw2ICs0MiwxMSBAQCBpbnQgRVJSX2xvYWRfRUNfc3RyaW5ncyh2b2lkKTsKLSAjICBkZWZp bmUgRUNfRl9FQ0RTQV9TSUdOX1NFVFVQICAgICAgICAgICAgICAgICAgICAgICAgICAgIDI0OAot ICMgIGRlZmluZSBFQ19GX0VDRFNBX1NJR19ORVcgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgMjY1Ci0gIyAgZGVmaW5lIEVDX0ZfRUNEU0FfVkVSSUZZICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAyNTMKLSsjICBkZWZpbmUgRUNfRl9FQ0RTQV9TSU1QTEVfU0lHTl9TRVRVUCAg ICAgICAgICAgICAgICAgICAgIDMxMAotKyMgIGRlZmluZSBFQ19GX0VDRFNBX1NJTVBMRV9TSUdO X1NJRyAgICAgICAgICAgICAgICAgICAgICAgMzExCi0rIyAgZGVmaW5lIEVDX0ZfRUNEU0FfU0lN UExFX1ZFUklGWV9TSUcgICAgICAgICAgICAgICAgICAgICAzMTIKLSsjICBkZWZpbmUgRUNfRl9F Q0RTQV9TMzkwWF9OSVNUUF9TSUdOX1NJRyAgICAgICAgICAgICAgICAgIDMxMwotKyMgIGRlZmlu ZSBFQ19GX0VDRFNBX1MzOTBYX05JU1RQX1ZFUklGWV9TSUcgICAgICAgICAgICAgICAgMzE0Ci0g IyAgZGVmaW5lIEVDX0ZfRUNEX0lURU1fVkVSSUZZICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAyNzAKLSAjICBkZWZpbmUgRUNfRl9FQ0tFWV9QQVJBTTJUWVBFICAgICAgICAgICAgICAgICAg ICAgICAgICAgIDIyMwotICMgIGRlZmluZSBFQ19GX0VDS0VZX1BBUkFNX0RFQ09ERSAgICAgICAg ICAgICAgICAgICAgICAgICAgMjEyCi1AQCAtMTg1LDYgKzE5MCw3IEBAIGludCBFUlJfbG9hZF9F Q19zdHJpbmdzKHZvaWQpOwotICMgIGRlZmluZSBFQ19GX08ySV9FQ1BVQkxJQ0tFWSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgMTUyCi0gIyAgZGVmaW5lIEVDX0ZfT0xEX0VDX1BSSVZfREVD T0RFICAgICAgICAgICAgICAgICAgICAgICAgICAyMjIKLSAjICBkZWZpbmUgRUNfRl9PU1NMX0VD REhfQ09NUFVURV9LRVkgICAgICAgICAgICAgICAgICAgICAgIDI0NwotKyMgIGRlZmluZSBFQ19G X09TU0xfRUNEU0FfU0lHTl9TRVRVUCAgICAgICAgICAgICAgICAgICAgICAgMzAwCi0gIyAgZGVm aW5lIEVDX0ZfT1NTTF9FQ0RTQV9TSUdOX1NJRyAgICAgICAgICAgICAgICAgICAgICAgICAyNDkK LSAjICBkZWZpbmUgRUNfRl9PU1NMX0VDRFNBX1ZFUklGWV9TSUcgICAgICAgICAgICAgICAgICAg ICAgIDI1MAotICMgIGRlZmluZSBFQ19GX1BLRVlfRUNEX0NUUkwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgMjcxCi1AQCAtMjAwLDYgKzIwNiwxMiBAQCBpbnQgRVJSX2xvYWRfRUNfc3Ry aW5ncyh2b2lkKTsKLSAjICBkZWZpbmUgRUNfRl9QS0VZX0VDX0tFWUdFTiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDE5OQotICMgIGRlZmluZSBFQ19GX1BLRVlfRUNfUEFSQU1HRU4gICAg ICAgICAgICAgICAgICAgICAgICAgICAgMjE5Ci0gIyAgZGVmaW5lIEVDX0ZfUEtFWV9FQ19TSUdO ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMTgKLSsjICAgZGVmaW5lIEVDX0ZfUzM5 MFhfUEtFWV9FQ0RfRElHRVNUU0lHTjI1NTE5ICAgICAgICAgICAgIDMyMAotKyMgICBkZWZpbmUg RUNfRl9TMzkwWF9QS0VZX0VDRF9ESUdFU1RTSUdONDQ4ICAgICAgICAgICAgICAgMzIxCi0rIyAg IGRlZmluZSBFQ19GX1MzOTBYX1BLRVlfRUNEX0tFWUdFTjI1NTE5ICAgICAgICAgICAgICAgICAz MjIKLSsjICAgZGVmaW5lIEVDX0ZfUzM5MFhfUEtFWV9FQ0RfS0VZR0VONDQ4ICAgICAgICAgICAg ICAgICAgIDMyMwotKyMgICBkZWZpbmUgRUNfRl9TMzkwWF9QS0VZX0VDWF9LRVlHRU4yNTUxOSAg ICAgICAgICAgICAgICAgMzI0Ci0rIyAgIGRlZmluZSBFQ19GX1MzOTBYX1BLRVlfRUNYX0tFWUdF TjQ0OCAgICAgICAgICAgICAgICAgICAzMjUKLSAjICBkZWZpbmUgRUNfRl9WQUxJREFURV9FQ1hf REVSSVZFICAgICAgICAgICAgICAgICAgICAgICAgIDI3OAotIAotIC8qCi1AQCAtMjEyLDYgKzIy NCw3IEBAIGludCBFUlJfbG9hZF9FQ19zdHJpbmdzKHZvaWQpOwotICMgIGRlZmluZSBFQ19SX0NB Tk5PVF9JTlZFUlQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTY1Ci0gIyAgZGVmaW5l IEVDX1JfQ09PUkRJTkFURVNfT1VUX09GX1JBTkdFICAgICAgICAgICAgICAgICAgICAxNDYKLSAj ICBkZWZpbmUgRUNfUl9DVVJWRV9ET0VTX05PVF9TVVBQT1JUX0VDREggICAgICAgICAgICAgICAg IDE2MAotKyMgIGRlZmluZSBFQ19SX0NVUlZFX0RPRVNfTk9UX1NVUFBPUlRfRUNEU0EgICAgICAg ICAgICAgICAgMTcwCi0gIyAgZGVmaW5lIEVDX1JfQ1VSVkVfRE9FU19OT1RfU1VQUE9SVF9TSUdO SU5HICAgICAgICAgICAgICAxNTkKLSAjICBkZWZpbmUgRUNfUl9EMklfRUNQS1BBUkFNRVRFUlNf RkFJTFVSRSAgICAgICAgICAgICAgICAgIDExNwotICMgIGRlZmluZSBFQ19SX0RFQ09ERV9FUlJP UiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTQyCi1kaWZmIC11cCBvcGVuc3NsLTEu MS4xZy90ZXN0L3JlY2lwZXMvMzAtdGVzdF9ldnBfZGF0YS9ldnBwa2V5LnR4dC5zMzkweC1lY2Mg b3BlbnNzbC0xLjEuMWcvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwcGtleS50eHQK LS0tLSBvcGVuc3NsLTEuMS4xZy90ZXN0L3JlY2lwZXMvMzAtdGVzdF9ldnBfZGF0YS9ldnBwa2V5 LnR4dC5zMzkweC1lY2MJMjAyMC0wNC0yMSAxNDoyMjozOS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBv cGVuc3NsLTEuMS4xZy90ZXN0L3JlY2lwZXMvMzAtdGVzdF9ldnBfZGF0YS9ldnBwa2V5LnR4dAky MDIwLTA1LTE4IDEyOjQ1OjQ0LjU5MDI2NjcyMiArMDIwMAotQEAgLTgxNCw2ICs4MTQsOCBAQCBQ dWJsaWNLZXlSYXc9Qm9iLTQ0OC1QVUJMSUMtUmF3Olg0NDg6M2ViCi0gCi0gUHJpdlB1YktleVBh aXIgPSBCb2ItNDQ4LVJhdzpCb2ItNDQ4LVBVQkxJQy1SYXcKLSAKLStQdWJsaWNLZXlSYXc9Qm9i LTQ0OC1QVUJMSUMtUmF3LU5vbkNhbm9uaWNhbDpYNDQ4OmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYKLSsKLSBEZXJpdmU9QWxpY2UtNDQ4Ci0g UGVlcktleT1Cb2ItNDQ4LVBVQkxJQwotIFNoYXJlZFNlY3JldD0wN2ZmZjQxODFhYzZjYzk1ZWMx YzE2YTk0YTBmNzRkMTJkYTIzMmNlNDBhNzc1NTIyODFkMjgyYmI2MGMwYjU2ZmQyNDY0YzMzNTU0 MzkzNjUyMWMyNDQwMzA4NWQ1OWE0NDlhNTAzNzUxNGE4NzlkCi1AQCAtODMwLDYgKzgzMiwxMSBA QCBEZXJpdmU9Qm9iLTQ0OC1SYXcKLSBQZWVyS2V5PUFsaWNlLTQ0OC1QVUJMSUMtUmF3Ci0gU2hh cmVkU2VjcmV0PTA3ZmZmNDE4MWFjNmNjOTVlYzFjMTZhOTRhMGY3NGQxMmRhMjMyY2U0MGE3NzU1 MjI4MWQyODJiYjYwYzBiNTZmZDI0NjRjMzM1NTQzOTM2NTIxYzI0NDAzMDg1ZDU5YTQ0OWE1MDM3 NTE0YTg3OWQKLSAKLSsjIFNlbGYtZ2VuZXJhdGVkIG5vbi1jYW5vbmljYWwKLStEZXJpdmU9QWxp Y2UtNDQ4LVJhdwotK1BlZXJLZXk9Qm9iLTQ0OC1QVUJMSUMtUmF3LU5vbkNhbm9uaWNhbAotK1No YXJlZFNlY3JldD02NmUyZTY4MmIxZjhlNjhjODA5ZjFiYjNlNDA2YmQ4MjY5MjFkOWMxYTViZmJm Y2JhYjdhZTcyZmVlY2VlNjM2NjBlYWJkNTQ5MzRmMzM4MjA2MWQxNzYwN2Y1ODFhOTBiZGFjOTE3 YTA2NDk1OWZiCi0rCi0gIyBJbGxlZ2FsIHNpZ24vdmVyaWZ5IG9wZXJhdGlvbnMgd2l0aCBYNDQ4 IGtleQotIAotIFNpZ249QWxpY2UtNDQ4CgpkaWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1zMzkw eC11cGRhdGUucGF0Y2ggYi9vcGVuc3NsLTEuMS4xLXMzOTB4LXVwZGF0ZS5wYXRjaApkZWxldGVk IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODMwNjFhZi4uMDAwMDAwMAotLS0gYS9vcGVuc3NsLTEu MS4xLXMzOTB4LXVwZGF0ZS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDU1MDIgKzAsMCBAQAot ZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWUvY3J5cHRvL2NoYWNoYS9hc20vY2hhY2hhLXMzOTB4LnBs LnMzOTB4LXVwZGF0ZSBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vY2hhY2hhL2FzbS9jaGFjaGEtczM5 MHgucGwKLS0tLSBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vY2hhY2hhL2FzbS9jaGFjaGEtczM5MHgu cGwuczM5MHgtdXBkYXRlCTIwMjAtMDMtMTcgMTU6MzE6MTcuMDAwMDAwMDAwICswMTAwCi0rKysg b3BlbnNzbC0xLjEuMWUvY3J5cHRvL2NoYWNoYS9hc20vY2hhY2hhLXMzOTB4LnBsCTIwMjAtMDMt MTkgMTY6NDU6MDUuNDgzNDQwMTI5ICswMTAwCi1AQCAtMjAsNDEgKzIwLDUzIEBACi0gIwotICMg MyB0aW1lcyBmYXN0ZXIgdGhhbiBjb21waWxlci1nZW5lcmF0ZWQgY29kZS4KLSAKLS0kZmxhdm91 ciA9IHNoaWZ0OwotKyMKLSsjIEF1Z3VzdCAyMDE4Ci0rIwotKyMgQWRkIHZ4IGNvZGUgcGF0aDog NHgidmVydGljYWwiLgotKyMKLSsjIENvcHlyaWdodCBJQk0gQ29ycC4gMjAxOAotKyMgQXV0aG9y OiBQYXRyaWNrIFN0ZXVlciA8cGF0cmljay5zdGV1ZXJAZGUuaWJtLmNvbT4KLSsKLSsjCi0rIyBG ZWJydWFyeSAyMDE5Ci0rIwotKyMgQWRkIDZ4Imhvcml6b250YWwiIFZYIGltcGxlbWVudGF0aW9u LiBJdCdzIH4yNSUgZmFzdGVyIHRoYW4gSUJNJ3MKLSsjIDR4InZlcnRpY2FsIiBzdWJtaXNzaW9u IFtvbiB6MTNdIGFuZCA+MyBmYXN0ZXIgdGhhbiBzY2FsYXIgY29kZS4KLSsjIEJ1dCB0byBoYXJu ZXNzIG92ZXJoZWFkcyByZXZlcnQgdG8gdHJhbnNsaXRlcmF0aW9uIG9mIFZTWCBjb2RlIHBhdGgK LSsjIGZyb20gY2hhY2hhLXBwYyBtb2R1bGUsIHdoaWNoIGlzIGFsc28gNHgidmVydGljYWwiLCB0 byBoYW5kbGUgaW5wdXRzCi0rIyBub3QgbG9uZ2VyIHRoYW4gMjU2IGJ5dGVzLgotKwotK3VzZSBz dHJpY3Q7Ci0rdXNlIEZpbmRCaW4gcXcoJEJpbik7Ci0rdXNlIGxpYiAiJEJpbi8uLi8uLiI7Ci0r dXNlIHBlcmxhc206OnMzOTB4IHF3KDpERUZBVUxUIDpWWCBBVVRPTE9BRCBMQUJFTCBJTkNMVURF KTsKLSAKLStteSAkZmxhdm91ciA9IHNoaWZ0OwotKwotK215ICgkeiwkU0laRV9UKTsKLSBpZiAo JGZsYXZvdXIgPX4gLzNbMTJdLykgewotKwkkej0wOwkjIFMvMzkwIEFCSQotIAkkU0laRV9UPTQ7 Ci0tCSRnPSIiOwotIH0gZWxzZSB7Ci0rCSR6PTE7CSMgelNlcmllcyBBQkkKLSAJJFNJWkVfVD04 OwotLQkkZz0iZyI7Ci0gfQotIAotK215ICRvdXRwdXQ7Ci0gd2hpbGUgKCgkb3V0cHV0PXNoaWZ0 KSAmJiAoJG91dHB1dCF+L1x3W1x3XC1dKlwuXHcrJC8pKSB7fQotLW9wZW4gU1RET1VULCI+JG91 dHB1dCI7Ci0tCi0tc3ViIEFVVE9MT0FEKCkJCSMgdGh1bmsgW3NpbXBsaWZpZWRdIHg4Ni1zdHls ZSBwZXJsYXNtCi0teyBteSAkb3Bjb2RlID0gJEFVVE9MT0FEOyAkb3Bjb2RlID1+IHMvLio6Oi8v OwotLSAgICAkY29kZSAuPSAiXHQkb3Bjb2RlXHQiLmpvaW4oJywnLEBfKS4iXG4iOwotLX0KLSAK LSBteSAkc3A9IiVyMTUiOwotLQotIG15ICRzdGRmcmFtZT0xNiokU0laRV9UKzQqODsKLS1teSAk ZnJhbWU9JHN0ZGZyYW1lKzQqMjA7Ci0tCi0tbXkgKCRvdXQsJGlucCwkbGVuLCRrZXksJGNvdW50 ZXIpPW1hcCgiJXIkXyIsKDIuLjYpKTsKLSAKLStzdWIgUk9VTkQgewotIG15IEB4PW1hcCgiJXIk XyIsKDAuLjcsIngiLCJ4IiwieCIsIngiLCgxMC4uMTMpKSk7Ci0gbXkgQHQ9bWFwKCIlciRfIiwo OCw5KSk7Ci0tCi0tc3ViIFJPVU5EIHsKLSBteSAoJGEwLCRiMCwkYzAsJGQwKT1AXzsKLSBteSAo JGExLCRiMSwkYzEsJGQxKT1tYXAoKCRfJn4zKSsoKCRfKzEpJjMpLCgkYTAsJGIwLCRjMCwkZDAp KTsKLSBteSAoJGEyLCRiMiwkYzIsJGQyKT1tYXAoKCRfJn4zKSsoKCRfKzEpJjMpLCgkYTEsJGIx LCRjMSwkZDEpKTsKLSBteSAoJGEzLCRiMywkYzMsJGQzKT1tYXAoKCRfJn4zKSsoKCRfKzEpJjMp LCgkYTIsJGIyLCRjMiwkZDIpKTsKLS1teSAoJHhjLCR4Y18pPW1hcCgiXCIkX1wiIixAdCk7Ci0t bXkgQHg9bWFwKCJcIiRfXCIiLEB4KTsKLStteSAoJHhjLCR4Y18pPW1hcCgiJF8iLEB0KTsKLSAK LSAJIyBDb25zaWRlciBvcmRlciBpbiB3aGljaCB2YXJpYWJsZXMgYXJlIGFkZHJlc3NlZCBieSB0 aGVpcgotIAkjIGluZGV4OgotQEAgLTc4LDI0OSArOTAsOTY3IEBAIG15IEB4PW1hcCgiXCIkX1wi IixAeCk7Ci0gCSMgJ2MnIHN0b3JlcyBhbmQgbG9hZHMgaW4gdGhlIG1pZGRsZSwgYnV0IG5vbmUg aW4gdGhlIGJlZ2lubmluZwotIAkjIG9yIGVuZC4KLSAKLS0JKAotLQkiJmFscgkoQHhbJGEwXSxA eFskYjBdKSIsCSMgUTEKLS0JICImYWxyCShAeFskYTFdLEB4WyRiMV0pIiwJIyBRMgotLQkiJnhy CShAeFskZDBdLEB4WyRhMF0pIiwKLS0JICImeHIJKEB4WyRkMV0sQHhbJGExXSkiLAotLQkiJnJs bAkoQHhbJGQwXSxAeFskZDBdLDE2KSIsCi0tCSAiJnJsbAkoQHhbJGQxXSxAeFskZDFdLDE2KSIs Ci0tCi0tCSImYWxyCSgkeGMsQHhbJGQwXSkiLAotLQkgIiZhbHIJKCR4Y18sQHhbJGQxXSkiLAot LQkiJnhyCShAeFskYjBdLCR4YykiLAotLQkgIiZ4cgkoQHhbJGIxXSwkeGNfKSIsCi0tCSImcmxs CShAeFskYjBdLEB4WyRiMF0sMTIpIiwKLS0JICImcmxsCShAeFskYjFdLEB4WyRiMV0sMTIpIiwK LS0KLS0JIiZhbHIJKEB4WyRhMF0sQHhbJGIwXSkiLAotLQkgIiZhbHIJKEB4WyRhMV0sQHhbJGIx XSkiLAotLQkiJnhyCShAeFskZDBdLEB4WyRhMF0pIiwKLS0JICImeHIJKEB4WyRkMV0sQHhbJGEx XSkiLAotLQkiJnJsbAkoQHhbJGQwXSxAeFskZDBdLDgpIiwKLS0JICImcmxsCShAeFskZDFdLEB4 WyRkMV0sOCkiLAotLQotLQkiJmFscgkoJHhjLEB4WyRkMF0pIiwKLS0JICImYWxyCSgkeGNfLEB4 WyRkMV0pIiwKLS0JIiZ4cgkoQHhbJGIwXSwkeGMpIiwKLS0JICImeHIJKEB4WyRiMV0sJHhjXyki LAotLQkiJnJsbAkoQHhbJGIwXSxAeFskYjBdLDcpIiwKLS0JICImcmxsCShAeFskYjFdLEB4WyRi MV0sNykiLAotLQotLQkiJnN0bQkoJHhjLCR4Y18sJyRzdGRmcmFtZSs0KjgrNCokYzAoJHNwKScp IiwJIyByZWxvYWQgcGFpciBvZiAnYydzCi0tCSImbG0JKCR4YywkeGNfLCckc3RkZnJhbWUrNCo4 KzQqJGMyKCRzcCknKSIsCi0tCi0tCSImYWxyCShAeFskYTJdLEB4WyRiMl0pIiwJIyBRMwotLQkg IiZhbHIJKEB4WyRhM10sQHhbJGIzXSkiLAkjIFE0Ci0tCSImeHIJKEB4WyRkMl0sQHhbJGEyXSki LAotLQkgIiZ4cgkoQHhbJGQzXSxAeFskYTNdKSIsCi0tCSImcmxsCShAeFskZDJdLEB4WyRkMl0s MTYpIiwKLS0JICImcmxsCShAeFskZDNdLEB4WyRkM10sMTYpIiwKLS0KLS0JIiZhbHIJKCR4YyxA eFskZDJdKSIsCi0tCSAiJmFscgkoJHhjXyxAeFskZDNdKSIsCi0tCSImeHIJKEB4WyRiMl0sJHhj KSIsCi0tCSAiJnhyCShAeFskYjNdLCR4Y18pIiwKLS0JIiZybGwJKEB4WyRiMl0sQHhbJGIyXSwx MikiLAotLQkgIiZybGwJKEB4WyRiM10sQHhbJGIzXSwxMikiLAotLQotLQkiJmFscgkoQHhbJGEy XSxAeFskYjJdKSIsCi0tCSAiJmFscgkoQHhbJGEzXSxAeFskYjNdKSIsCi0tCSImeHIJKEB4WyRk Ml0sQHhbJGEyXSkiLAotLQkgIiZ4cgkoQHhbJGQzXSxAeFskYTNdKSIsCi0tCSImcmxsCShAeFsk ZDJdLEB4WyRkMl0sOCkiLAotLQkgIiZybGwJKEB4WyRkM10sQHhbJGQzXSw4KSIsCi0tCi0tCSIm YWxyCSgkeGMsQHhbJGQyXSkiLAotLQkgIiZhbHIJKCR4Y18sQHhbJGQzXSkiLAotLQkiJnhyCShA eFskYjJdLCR4YykiLAotLQkgIiZ4cgkoQHhbJGIzXSwkeGNfKSIsCi0tCSImcmxsCShAeFskYjJd LEB4WyRiMl0sNykiLAotLQkgIiZybGwJKEB4WyRiM10sQHhbJGIzXSw3KSIKLS0JKTsKLS19Ci0t Ci0tJGNvZGUuPTw8X19fOwotLS50ZXh0Ci0tCi0tLmdsb2JsCUNoYUNoYTIwX2N0cjMyCi0tLnR5 cGUJQ2hhQ2hhMjBfY3RyMzIsXEBmdW5jdGlvbgotLS5hbGlnbgkzMgotLUNoYUNoYTIwX2N0cjMy OgotLQlsdCR7Z31yCSRsZW4sJGxlbgkJCSMgJGxlbj09MD8KLS0JYnpyCSVyMTQKLS0JYSR7Z31o aQkkbGVuLC02NAotLQlsJHtnfWhpCSVyMSwtJGZyYW1lCi0tCXN0bSR7Z30JJXI2LCVyMTUsYDYq JFNJWkVfVGAoJHNwKQotLQlzbCR7Z31yCSRvdXQsJGlucAkJCSMgZGlmZmVyZW5jZQotLQlsYQkk bGVuLDAoJGlucCwkbGVuKQkJIyBlbmQgb2YgaW5wdXQgbWludXMgNjQKLS0JbGFybAklcjcsLkxz aWdtYQotLQlsZ3IJJXIwLCRzcAotLQlsYQkkc3AsMCglcjEsJHNwKQotLQlzdCR7Z30JJXIwLDAo JHNwKQotLQotLQlsbWcJJXI4LCVyMTEsMCgka2V5KQkJIyBsb2FkIGtleQotLQlsbWcJJXIxMiwl cjEzLDAoJGNvdW50ZXIpCQkjIGxvYWQgY291bnRlcgotLQlsbWcJJXI2LCVyNywwKCVyNykJCQkj IGxvYWQgc2lnbWEgY29uc3RhbnQKLS0KLS0JbGEJJXIxNCwwKCRpbnApCi0tCXN0JHtnfQkkb3V0 LCRmcmFtZSszKiRTSVpFX1QoJHNwKQotLQlzdCR7Z30JJGxlbiwkZnJhbWUrNCokU0laRV9UKCRz cCkKLS0Jc3RtZwklcjYsJXIxMywkc3RkZnJhbWUoJHNwKQkJIyBjb3B5IGtleSBzY2hlZHVsZSB0 byBzdGFjawotLQlzcmxnCUB4WzEyXSwlcjEyLDMyCQkJIyAzMi1iaXQgY291bnRlciB2YWx1ZQot LQlqCS5Mb29wX291dGVyCi0tCi0tLmFsaWduCTE2Ci0tLkxvb3Bfb3V0ZXI6Ci0tCWxtCUB4WzBd LEB4WzddLCRzdGRmcmFtZSs0KjAoJHNwKQkJIyBsb2FkIHhbMF0teFs3XQotLQlsbQlAdFswXSxA dFsxXSwkc3RkZnJhbWUrNCoxMCgkc3ApCQkjIGxvYWQgeFsxMF0teFsxMV0KLS0JbG0JQHhbMTNd LEB4WzE1XSwkc3RkZnJhbWUrNCoxMygkc3ApCSMgbG9hZCB4WzEzXS14WzE1XQotLQlzdG0JQHRb MF0sQHRbMV0sJHN0ZGZyYW1lKzQqOCs0KjEwKCRzcCkJIyBvZmZsb2FkIHhbMTBdLXhbMTFdCi0t CWxtCUB0WzBdLEB0WzFdLCRzdGRmcmFtZSs0KjgoJHNwKQkJIyBsb2FkIHhbOF0teFs5XQotLQlz dAlAeFsxMl0sJHN0ZGZyYW1lKzQqMTIoJHNwKQkJIyBzYXZlIGNvdW50ZXIKLS0Jc3Qke2d9CSVy MTQsJGZyYW1lKzIqJFNJWkVfVCgkc3ApCQkjIHNhdmUgaW5wdXQgcG9pbnRlcgotLQlsaGkJJXIx NCwxMAotLQlqCS5Mb29wCi0tCi0tLmFsaWduCTQKLS0uTG9vcDoKLS1fX18KLS0JZm9yZWFjaCAo JlJPVU5EKDAsIDQsIDgsMTIpKSB7IGV2YWw7IH0KLS0JZm9yZWFjaCAoJlJPVU5EKDAsIDUsMTAs MTUpKSB7IGV2YWw7IH0KLS0kY29kZS49PDxfX187Ci0tCWJyY3QJJXIxNCwuTG9vcAotLQotLQls JHtnfQklcjE0LCRmcmFtZSsyKiRTSVpFX1QoJHNwKQkJIyBwdWxsIGlucHV0IHBvaW50ZXIKLS0J c3RtCUB0WzBdLEB0WzFdLCRzdGRmcmFtZSs0KjgrNCo4KCRzcCkJIyBvZmZsb2FkIHhbOF0teFs5 XQotLQlsbSR7Z30JQHRbMF0sQHRbMV0sJGZyYW1lKzMqJFNJWkVfVCgkc3ApCi0tCi0tCWFsCUB4 WzBdLCRzdGRmcmFtZSs0KjAoJHNwKQkjIGFjY3VtdWxhdGUga2V5IHNjaGVkdWxlCi0tCWFsCUB4 WzFdLCRzdGRmcmFtZSs0KjEoJHNwKQotLQlhbAlAeFsyXSwkc3RkZnJhbWUrNCoyKCRzcCkKLS0J YWwJQHhbM10sJHN0ZGZyYW1lKzQqMygkc3ApCi0tCWFsCUB4WzRdLCRzdGRmcmFtZSs0KjQoJHNw KQotLQlhbAlAeFs1XSwkc3RkZnJhbWUrNCo1KCRzcCkKLS0JYWwJQHhbNl0sJHN0ZGZyYW1lKzQq Nigkc3ApCi0tCWFsCUB4WzddLCRzdGRmcmFtZSs0KjcoJHNwKQotLQlscnZyCUB4WzBdLEB4WzBd Ci0tCWxydnIJQHhbMV0sQHhbMV0KLS0JbHJ2cglAeFsyXSxAeFsyXQotLQlscnZyCUB4WzNdLEB4 WzNdCi0tCWxydnIJQHhbNF0sQHhbNF0KLS0JbHJ2cglAeFs1XSxAeFs1XQotLQlscnZyCUB4WzZd LEB4WzZdCi0tCWxydnIJQHhbN10sQHhbN10KLS0JYWwJQHhbMTJdLCRzdGRmcmFtZSs0KjEyKCRz cCkKLS0JYWwJQHhbMTNdLCRzdGRmcmFtZSs0KjEzKCRzcCkKLS0JYWwJQHhbMTRdLCRzdGRmcmFt ZSs0KjE0KCRzcCkKLS0JYWwJQHhbMTVdLCRzdGRmcmFtZSs0KjE1KCRzcCkKLS0JbHJ2cglAeFsx Ml0sQHhbMTJdCi0tCWxydnIJQHhbMTNdLEB4WzEzXQotLQlscnZyCUB4WzE0XSxAeFsxNF0KLS0J bHJ2cglAeFsxNV0sQHhbMTVdCi0tCi0tCWxhCUB0WzBdLDAoQHRbMF0sJXIxNCkJCSMgcmVjb25z dHJ1Y3Qgb3V0cHV0IHBvaW50ZXIKLS0JY2wke2d9cgklcjE0LEB0WzFdCi0tCWpoCS5MdGFpbAot LQotLQl4CUB4WzBdLDQqMCglcjE0KQkJCSMgeG9yIHdpdGggaW5wdXQKLS0JeAlAeFsxXSw0KjEo JXIxNCkKLS0Jc3QJQHhbMF0sNCowKEB0WzBdKQkJIyBzdG9yZSBvdXRwdXQKLS0JeAlAeFsyXSw0 KjIoJXIxNCkKLS0Jc3QJQHhbMV0sNCoxKEB0WzBdKQotLQl4CUB4WzNdLDQqMyglcjE0KQotLQlz dAlAeFsyXSw0KjIoQHRbMF0pCi0tCXgJQHhbNF0sNCo0KCVyMTQpCi0tCXN0CUB4WzNdLDQqMyhA dFswXSkKLS0JIGxtCUB4WzBdLEB4WzNdLCRzdGRmcmFtZSs0KjgrNCo4KCRzcCkJIyBsb2FkIHhb OF0teFsxMV0KLS0JeAlAeFs1XSw0KjUoJXIxNCkKLS0Jc3QJQHhbNF0sNCo0KEB0WzBdKQotLQl4 CUB4WzZdLDQqNiglcjE0KQotLQkgYWwJQHhbMF0sJHN0ZGZyYW1lKzQqOCgkc3ApCi0tCXN0CUB4 WzVdLDQqNShAdFswXSkKLS0JeAlAeFs3XSw0KjcoJXIxNCkKLS0JIGFsCUB4WzFdLCRzdGRmcmFt ZSs0KjkoJHNwKQotLQlzdAlAeFs2XSw0KjYoQHRbMF0pCi0tCXgJQHhbMTJdLDQqMTIoJXIxNCkK LS0JIGFsCUB4WzJdLCRzdGRmcmFtZSs0KjEwKCRzcCkKLS0Jc3QJQHhbN10sNCo3KEB0WzBdKQot LQl4CUB4WzEzXSw0KjEzKCVyMTQpCi0tCSBhbAlAeFszXSwkc3RkZnJhbWUrNCoxMSgkc3ApCi0t CXN0CUB4WzEyXSw0KjEyKEB0WzBdKQotLQl4CUB4WzE0XSw0KjE0KCVyMTQpCi0tCXN0CUB4WzEz XSw0KjEzKEB0WzBdKQotLQl4CUB4WzE1XSw0KjE1KCVyMTQpCi0tCXN0CUB4WzE0XSw0KjE0KEB0 WzBdKQotLQkgbHJ2cglAeFswXSxAeFswXQotLQlzdAlAeFsxNV0sNCoxNShAdFswXSkKLS0JIGxy dnIJQHhbMV0sQHhbMV0KLS0JIGxydnIJQHhbMl0sQHhbMl0KLS0JIGxydnIJQHhbM10sQHhbM10K LS0JbGhpCUB4WzEyXSwxCi0tCSB4CUB4WzBdLDQqOCglcjE0KQotLQlhbAlAeFsxMl0sJHN0ZGZy YW1lKzQqMTIoJHNwKQkjIGluY3JlbWVudCBjb3VudGVyCi0tCSB4CUB4WzFdLDQqOSglcjE0KQot LQkgc3QJQHhbMF0sNCo4KEB0WzBdKQotLQkgeAlAeFsyXSw0KjEwKCVyMTQpCi0tCSBzdAlAeFsx XSw0KjkoQHRbMF0pCi0tCSB4CUB4WzNdLDQqMTEoJXIxNCkKLS0JIHN0CUB4WzJdLDQqMTAoQHRb MF0pCi0tCSBzdAlAeFszXSw0KjExKEB0WzBdKQotLQotLQljbCR7Z31yCSVyMTQsQHRbMV0JCQkj IGRvbmUgeWV0PwotLQlsYQklcjE0LDY0KCVyMTQpCi0tCWpsCS5Mb29wX291dGVyCi0tCi0tLkxk b25lOgotLQl4Z3IJJXIwLCVyMAotLQl4Z3IJJXIxLCVyMQotLQl4Z3IJJXIyLCVyMgotLQl4Z3IJ JXIzLCVyMwotLQlzdG1nCSVyMCwlcjMsJHN0ZGZyYW1lKzQqNCgkc3ApCSMgd2lwZSBrZXkgY29w eQotLQlzdG1nCSVyMCwlcjMsJHN0ZGZyYW1lKzQqMTIoJHNwKQotLQotLQlsbSR7Z30JJXI2LCVy MTUsYCRmcmFtZSs2KiRTSVpFX1RgKCRzcCkKLS0JYnIJJXIxNAotLQotLS5hbGlnbgkxNgotLS5M dGFpbDoKLS0JbGEJQHRbMV0sNjQoJHRbMV0pCi0tCXN0bQlAeFswXSxAeFs3XSwkc3RkZnJhbWUr NCowKCRzcCkKLS0Jc2wke2d9cglAdFsxXSwlcjE0Ci0tCWxtCUB4WzBdLEB4WzNdLCRzdGRmcmFt ZSs0KjgrNCo4KCRzcCkKLS0JbCR7Z31oaQlAeFs2XSwwCi0tCXN0bQlAeFsxMl0sQHhbMTVdLCRz dGRmcmFtZSs0KjEyKCRzcCkKLS0JYWwJQHhbMF0sJHN0ZGZyYW1lKzQqOCgkc3ApCi0tCWFsCUB4 WzFdLCRzdGRmcmFtZSs0KjkoJHNwKQotLQlhbAlAeFsyXSwkc3RkZnJhbWUrNCoxMCgkc3ApCi0t CWFsCUB4WzNdLCRzdGRmcmFtZSs0KjExKCRzcCkKLS0JbHJ2cglAeFswXSxAeFswXQotLQlscnZy CUB4WzFdLEB4WzFdCi0tCWxydnIJQHhbMl0sQHhbMl0KLS0JbHJ2cglAeFszXSxAeFszXQotLQlz dG0JQHhbMF0sQHhbM10sJHN0ZGZyYW1lKzQqOCgkc3ApCi0tCi0tLkxvb3BfdGFpbDoKLS0JbGxn YwlAeFs0XSwwKEB4WzZdLCVyMTQpCi0tCWxsZ2MJQHhbNV0sJHN0ZGZyYW1lKEB4WzZdLCRzcCkK LS0JeHIJQHhbNV0sQHhbNF0KLS0Jc3RjCUB4WzVdLDAoQHhbNl0sQHRbMF0pCi0tCWxhCUB4WzZd LDEoQHhbNl0pCi0tCWJyY3QJQHRbMV0sLkxvb3BfdGFpbAotLQotLQlqCS5MZG9uZQotLS5zaXpl CUNoYUNoYTIwX2N0cjMyLC4tQ2hhQ2hhMjBfY3RyMzIKLS0KLS0uYWxpZ24JMzIKLS0uTHNpZ21h OgotLS5sb25nCTB4NjE3MDc4NjUsMHgzMzIwNjQ2ZSwweDc5NjIyZDMyLDB4NmIyMDY1NzQJIyBl bmRpYW4tbmV1dHJhbAotLS5hc2NpegkiQ2hhQ2hhMjAgZm9yIHMzOTB4LCBDUllQVE9HQU1TIGJ5 IDxhcHByb1xAb3BlbnNzbC5vcmc+IgotLS5hbGlnbgk0Ci0tX19fCi0rCWFscgkoQHhbJGEwXSxA eFskYjBdKTsJIyBRMQotKwkgYWxyCShAeFskYTFdLEB4WyRiMV0pOwkjIFEyCi0rCXhyCShAeFsk ZDBdLEB4WyRhMF0pOwotKwkgeHIJKEB4WyRkMV0sQHhbJGExXSk7Ci0rCXJsbAkoQHhbJGQwXSxA eFskZDBdLDE2KTsKLSsJIHJsbAkoQHhbJGQxXSxAeFskZDFdLDE2KTsKLSsKLSsJYWxyCSgkeGMs QHhbJGQwXSk7Ci0rCSBhbHIJKCR4Y18sQHhbJGQxXSk7Ci0rCXhyCShAeFskYjBdLCR4Yyk7Ci0r CSB4cgkoQHhbJGIxXSwkeGNfKTsKLSsJcmxsCShAeFskYjBdLEB4WyRiMF0sMTIpOwotKwkgcmxs CShAeFskYjFdLEB4WyRiMV0sMTIpOwotKwotKwlhbHIJKEB4WyRhMF0sQHhbJGIwXSk7Ci0rCSBh bHIJKEB4WyRhMV0sQHhbJGIxXSk7Ci0rCXhyCShAeFskZDBdLEB4WyRhMF0pOwotKwkgeHIJKEB4 WyRkMV0sQHhbJGExXSk7Ci0rCXJsbAkoQHhbJGQwXSxAeFskZDBdLDgpOwotKwkgcmxsCShAeFsk ZDFdLEB4WyRkMV0sOCk7Ci0rCi0rCWFscgkoJHhjLEB4WyRkMF0pOwotKwkgYWxyCSgkeGNfLEB4 WyRkMV0pOwotKwl4cgkoQHhbJGIwXSwkeGMpOwotKwkgeHIJKEB4WyRiMV0sJHhjXyk7Ci0rCXJs bAkoQHhbJGIwXSxAeFskYjBdLDcpOwotKwkgcmxsCShAeFskYjFdLEB4WyRiMV0sNyk7Ci0rCi0r CXN0bQkoJHhjLCR4Y18sIiRzdGRmcmFtZSs0KjgrNCokYzAoJHNwKSIpOwkjIHJlbG9hZCBwYWly IG9mICdjJ3MKLSsJbG0JKCR4YywkeGNfLCIkc3RkZnJhbWUrNCo4KzQqJGMyKCRzcCkiKTsKLSsK LSsJYWxyCShAeFskYTJdLEB4WyRiMl0pOwkjIFEzCi0rCSBhbHIJKEB4WyRhM10sQHhbJGIzXSk7 CSMgUTQKLSsJeHIJKEB4WyRkMl0sQHhbJGEyXSk7Ci0rCSB4cgkoQHhbJGQzXSxAeFskYTNdKTsK LSsJcmxsCShAeFskZDJdLEB4WyRkMl0sMTYpOwotKwkgcmxsCShAeFskZDNdLEB4WyRkM10sMTYp OwotKwotKwlhbHIJKCR4YyxAeFskZDJdKTsKLSsJIGFscgkoJHhjXyxAeFskZDNdKTsKLSsJeHIJ KEB4WyRiMl0sJHhjKTsKLSsJIHhyCShAeFskYjNdLCR4Y18pOwotKwlybGwJKEB4WyRiMl0sQHhb JGIyXSwxMik7Ci0rCSBybGwJKEB4WyRiM10sQHhbJGIzXSwxMik7Ci0rCi0rCWFscgkoQHhbJGEy XSxAeFskYjJdKTsKLSsJIGFscgkoQHhbJGEzXSxAeFskYjNdKTsKLSsJeHIJKEB4WyRkMl0sQHhb JGEyXSk7Ci0rCSB4cgkoQHhbJGQzXSxAeFskYTNdKTsKLSsJcmxsCShAeFskZDJdLEB4WyRkMl0s OCk7Ci0rCSBybGwJKEB4WyRkM10sQHhbJGQzXSw4KTsKLSsKLSsJYWxyCSgkeGMsQHhbJGQyXSk7 Ci0rCSBhbHIJKCR4Y18sQHhbJGQzXSk7Ci0rCXhyCShAeFskYjJdLCR4Yyk7Ci0rCSB4cgkoQHhb JGIzXSwkeGNfKTsKLSsJcmxsCShAeFskYjJdLEB4WyRiMl0sNyk7Ci0rCSBybGwJKEB4WyRiM10s QHhbJGIzXSw3KTsKLSt9Ci0rCi0rc3ViIFZYX2xhbmVfUk9VTkQgewotK215ICgkYTAsJGIwLCRj MCwkZDApPUBfOwotK215ICgkYTEsJGIxLCRjMSwkZDEpPW1hcCgoJF8mfjMpKygoJF8rMSkmMyks KCRhMCwkYjAsJGMwLCRkMCkpOwotK215ICgkYTIsJGIyLCRjMiwkZDIpPW1hcCgoJF8mfjMpKygo JF8rMSkmMyksKCRhMSwkYjEsJGMxLCRkMSkpOwotK215ICgkYTMsJGIzLCRjMywkZDMpPW1hcCgo JF8mfjMpKygoJF8rMSkmMyksKCRhMiwkYjIsJGMyLCRkMikpOwotK215IEB4PW1hcCgiJXYkXyIs KDAuLjE1KSk7Ci0gCi0tZm9yZWFjaCAoc3BsaXQoIlxuIiwkY29kZSkpIHsKLS0Jcy9cYChbXlxg XSopXGAvZXZhbCAkMS9nZTsKLSsJdmFmCShAeFskYTBdLEB4WyRhMF0sQHhbJGIwXSk7CSMgUTEK LSsJdngJKEB4WyRkMF0sQHhbJGQwXSxAeFskYTBdKTsKLSsJdmVybGxmCShAeFskZDBdLEB4WyRk MF0sMTYpOwotKwl2YWYJKEB4WyRhMV0sQHhbJGExXSxAeFskYjFdKTsJIyBRMgotKwl2eAkoQHhb JGQxXSxAeFskZDFdLEB4WyRhMV0pOwotKwl2ZXJsbGYJKEB4WyRkMV0sQHhbJGQxXSwxNik7Ci0r CXZhZgkoQHhbJGEyXSxAeFskYTJdLEB4WyRiMl0pOwkjIFEzCi0rCXZ4CShAeFskZDJdLEB4WyRk Ml0sQHhbJGEyXSk7Ci0rCXZlcmxsZgkoQHhbJGQyXSxAeFskZDJdLDE2KTsKLSsJdmFmCShAeFsk YTNdLEB4WyRhM10sQHhbJGIzXSk7CSMgUTQKLSsJdngJKEB4WyRkM10sQHhbJGQzXSxAeFskYTNd KTsKLSsJdmVybGxmCShAeFskZDNdLEB4WyRkM10sMTYpOwotKwotKwl2YWYJKEB4WyRjMF0sQHhb JGMwXSxAeFskZDBdKTsKLSsJdngJKEB4WyRiMF0sQHhbJGIwXSxAeFskYzBdKTsKLSsJdmVybGxm CShAeFskYjBdLEB4WyRiMF0sMTIpOwotKwl2YWYJKEB4WyRjMV0sQHhbJGMxXSxAeFskZDFdKTsK LSsJdngJKEB4WyRiMV0sQHhbJGIxXSxAeFskYzFdKTsKLSsJdmVybGxmCShAeFskYjFdLEB4WyRi MV0sMTIpOwotKwl2YWYJKEB4WyRjMl0sQHhbJGMyXSxAeFskZDJdKTsKLSsJdngJKEB4WyRiMl0s QHhbJGIyXSxAeFskYzJdKTsKLSsJdmVybGxmCShAeFskYjJdLEB4WyRiMl0sMTIpOwotKwl2YWYJ KEB4WyRjM10sQHhbJGMzXSxAeFskZDNdKTsKLSsJdngJKEB4WyRiM10sQHhbJGIzXSxAeFskYzNd KTsKLSsJdmVybGxmCShAeFskYjNdLEB4WyRiM10sMTIpOwotKwotKwl2YWYJKEB4WyRhMF0sQHhb JGEwXSxAeFskYjBdKTsKLSsJdngJKEB4WyRkMF0sQHhbJGQwXSxAeFskYTBdKTsKLSsJdmVybGxm CShAeFskZDBdLEB4WyRkMF0sOCk7Ci0rCXZhZgkoQHhbJGExXSxAeFskYTFdLEB4WyRiMV0pOwot Kwl2eAkoQHhbJGQxXSxAeFskZDFdLEB4WyRhMV0pOwotKwl2ZXJsbGYJKEB4WyRkMV0sQHhbJGQx XSw4KTsKLSsJdmFmCShAeFskYTJdLEB4WyRhMl0sQHhbJGIyXSk7Ci0rCXZ4CShAeFskZDJdLEB4 WyRkMl0sQHhbJGEyXSk7Ci0rCXZlcmxsZgkoQHhbJGQyXSxAeFskZDJdLDgpOwotKwl2YWYJKEB4 WyRhM10sQHhbJGEzXSxAeFskYjNdKTsKLSsJdngJKEB4WyRkM10sQHhbJGQzXSxAeFskYTNdKTsK LSsJdmVybGxmCShAeFskZDNdLEB4WyRkM10sOCk7Ci0rCi0rCXZhZgkoQHhbJGMwXSxAeFskYzBd LEB4WyRkMF0pOwotKwl2eAkoQHhbJGIwXSxAeFskYjBdLEB4WyRjMF0pOwotKwl2ZXJsbGYJKEB4 WyRiMF0sQHhbJGIwXSw3KTsKLSsJdmFmCShAeFskYzFdLEB4WyRjMV0sQHhbJGQxXSk7Ci0rCXZ4 CShAeFskYjFdLEB4WyRiMV0sQHhbJGMxXSk7Ci0rCXZlcmxsZgkoQHhbJGIxXSxAeFskYjFdLDcp OwotKwl2YWYJKEB4WyRjMl0sQHhbJGMyXSxAeFskZDJdKTsKLSsJdngJKEB4WyRiMl0sQHhbJGIy XSxAeFskYzJdKTsKLSsJdmVybGxmCShAeFskYjJdLEB4WyRiMl0sNyk7Ci0rCXZhZgkoQHhbJGMz XSxAeFskYzNdLEB4WyRkM10pOwotKwl2eAkoQHhbJGIzXSxAeFskYjNdLEB4WyRjM10pOwotKwl2 ZXJsbGYJKEB4WyRiM10sQHhbJGIzXSw3KTsKLSt9Ci0gCi0tCXByaW50ICRfLCJcbiI7Ci0rc3Vi IFZYX1JPVU5EIHsKLStteSBAYT1AX1swLi41XTsKLStteSBAYj1AX1s2Li4xMV07Ci0rbXkgQGM9 QF9bMTIuLjE3XTsKLStteSBAZD1AX1sxOC4uMjNdOwotK215ICRvZGQ9QF9bMjRdOwotKwotKwl2 YWYJCShAYVskX10sQGFbJF9dLEBiWyRfXSkgZm9yICgwLi41KTsKLSsJdngJCShAZFskX10sQGRb JF9dLEBhWyRfXSkgZm9yICgwLi41KTsKLSsJdmVybGxmCQkoQGRbJF9dLEBkWyRfXSwxNikgZm9y ICgwLi41KTsKLSsKLSsJdmFmCQkoQGNbJF9dLEBjWyRfXSxAZFskX10pIGZvciAoMC4uNSk7Ci0r CXZ4CQkoQGJbJF9dLEBiWyRfXSxAY1skX10pIGZvciAoMC4uNSk7Ci0rCXZlcmxsZgkJKEBiWyRf XSxAYlskX10sMTIpIGZvciAoMC4uNSk7Ci0rCi0rCXZhZgkJKEBhWyRfXSxAYVskX10sQGJbJF9d KSBmb3IgKDAuLjUpOwotKwl2eAkJKEBkWyRfXSxAZFskX10sQGFbJF9dKSBmb3IgKDAuLjUpOwot Kwl2ZXJsbGYJCShAZFskX10sQGRbJF9dLDgpIGZvciAoMC4uNSk7Ci0rCi0rCXZhZgkJKEBjWyRf XSxAY1skX10sQGRbJF9dKSBmb3IgKDAuLjUpOwotKwl2eAkJKEBiWyRfXSxAYlskX10sQGNbJF9d KSBmb3IgKDAuLjUpOwotKwl2ZXJsbGYJCShAYlskX10sQGJbJF9dLDcpIGZvciAoMC4uNSk7Ci0r Ci0rCXZzbGRiCQkoQGNbJF9dLEBjWyRfXSxAY1skX10sOCkgZm9yICgwLi41KTsKLSsJdnNsZGIJ CShAYlskX10sQGJbJF9dLEBiWyRfXSwkb2RkPzEyOjQpIGZvciAoMC4uNSk7Ci0rCXZzbGRiCQko QGRbJF9dLEBkWyRfXSxAZFskX10sJG9kZD80OjEyKSBmb3IgKDAuLjUpOwotIH0KLS1jbG9zZSBT VERPVVQgb3IgZGllICJlcnJvciBjbG9zaW5nIFNURE9VVDogJCEiOwotKwotK1BFUkxBU01fQkVH SU4oJG91dHB1dCk7Ci0rCi0rSU5DTFVERQkoInMzOTB4X2FyY2guaCIpOwotK1RFWFQJKCk7Ci0r Ci0rIyMjIyMjIyMjIyMjIyMjIwotKyMgdm9pZCBDaGFDaGEyMF9jdHIzMih1bnNpZ25lZCBjaGFy ICpvdXQsIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmlucCwgc2l6ZV90IGxlbiwKLSsjICAgICAgICAg ICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgaW50IGtleVs4XSwgY29uc3QgdW5zaWduZWQgaW50 IGNvdW50ZXJbNF0pCi0rbXkgKCRvdXQsJGlucCwkbGVuLCRrZXksJGNvdW50ZXIpPW1hcCgiJXIk XyIsKDIuLjYpKTsKLSt7Ci0rbXkgJGZyYW1lPSRzdGRmcmFtZSs0KjIwOwotK215IEB4PW1hcCgi JXIkXyIsKDAuLjcsIngiLCJ4IiwieCIsIngiLCgxMC4uMTMpKSk7Ci0rbXkgQHQ9bWFwKCIlciRf IiwoOCw5KSk7Ci0rCi0rR0xPQkwJKCJDaGFDaGEyMF9jdHIzMiIpOwotK1RZUEUJKCJDaGFDaGEy MF9jdHIzMiIsIlxAZnVuY3Rpb24iKTsKLStBTElHTgkoMzIpOwotK0xBQkVMCSgiQ2hhQ2hhMjBf Y3RyMzIiKTsKLSsJbGFybAkoIiVyMSIsIk9QRU5TU0xfczM5MHhjYXBfUCIpOwotKwotKwlsZ2hp CSgiJXIwIiw2NCk7Ci0rJnskej8JXCZsdGdyOlwmbHRyfQkoJGxlbiwkbGVuKTsJCSMgbGVuPT0w PwotKwlienIJKCIlcjE0Iik7Ci0rCWxnCSgiJXIxIiwiUzM5MFhfU1RGTEUrMTYoJXIxKSIpOwot KyZ7JHo/CVwmY2xncjpcJmNscn0JKCRsZW4sIiVyMCIpOwotKwlqbGUJKCIuTHNob3J0Iik7Ci0r Ci0rCXRtaGgJKCIlcjEiLDB4NDAwMCk7CQkJIyBjaGVjayBmb3IgdnggYml0Ci0rCWpuegkoIi5M Q2hhQ2hhMjBfY3RyMzJfdngiKTsKLSsKLStMQUJFTAkoIi5Mc2hvcnQiKTsKLSsmeyR6PwlcJmFn aGk6XCZhaGl9CSgkbGVuLC02NCk7Ci0rJnskej8JXCZsZ2hpOlwmbGhpfQkoIiVyMSIsLSRmcmFt ZSk7Ci0rJnskej8JXCZzdG1nOlwmc3RtfQkoIiVyNiIsIiVyMTUiLCI2KiRTSVpFX1QoJHNwKSIp OwotKyZ7JHo/CVwmc2xncjpcJnNscn0JKCRvdXQsJGlucCk7CSMgZGlmZmVyZW5jZQotKwlsYQko JGxlbiwiMCgkaW5wLCRsZW4pIik7CSMgZW5kIG9mIGlucHV0IG1pbnVzIDY0Ci0rCWxhcmwJKCIl cjciLCIuTHNpZ21hIik7Ci0rCWxncgkoIiVyMCIsJHNwKTsKLSsJbGEJKCRzcCwiMCglcjEsJHNw KSIpOwotKyZ7JHo/CVwmc3RnOlwmc3R9CSgiJXIwIiwiMCgkc3ApIik7Ci0rCi0rCWxtZwkoIiVy OCIsIiVyMTEiLCIwKCRrZXkpIik7CSMgbG9hZCBrZXkKLSsJbG1nCSgiJXIxMiIsIiVyMTMiLCIw KCRjb3VudGVyKSIpOwkjIGxvYWQgY291bnRlcgotKwlsbWcJKCIlcjYiLCIlcjciLCIwKCVyNyki KTsJIyBsb2FkIHNpZ21hIGNvbnN0YW50Ci0rCi0rCWxhCSgiJXIxNCIsIjAoJGlucCkiKTsKLSsm eyR6PwlcJnN0ZzpcJnN0fQkoJG91dCwiJGZyYW1lKzMqJFNJWkVfVCgkc3ApIik7Ci0rJnskej8J XCZzdGc6XCZzdH0JKCRsZW4sIiRmcmFtZSs0KiRTSVpFX1QoJHNwKSIpOwotKwlzdG1nCSgiJXI2 IiwiJXIxMyIsIiRzdGRmcmFtZSgkc3ApIik7IyBjb3B5IGtleSBzY2hlZHVsZSB0byBzdGFjawot KwlzcmxnCShAeFsxMl0sIiVyMTIiLDMyKTsJIyAzMi1iaXQgY291bnRlciB2YWx1ZQotKwlqCSgi Lkxvb3Bfb3V0ZXIiKTsKLSsKLStBTElHTgkoMTYpOwotK0xBQkVMCSgiLkxvb3Bfb3V0ZXIiKTsK LSsJbG0JKEB4WzBdLEB4WzddLCIkc3RkZnJhbWUrNCowKCRzcCkiKTsJIyBsb2FkIHhbMF0teFs3 XQotKwlsbQkoQHRbMF0sQHRbMV0sIiRzdGRmcmFtZSs0KjEwKCRzcCkiKTsJIyBsb2FkIHhbMTBd LXhbMTFdCi0rCWxtCShAeFsxM10sQHhbMTVdLCIkc3RkZnJhbWUrNCoxMygkc3ApIik7CSMgbG9h ZCB4WzEzXS14WzE1XQotKwlzdG0JKEB0WzBdLEB0WzFdLCIkc3RkZnJhbWUrNCo4KzQqMTAoJHNw KSIpOyMgb2ZmbG9hZCB4WzEwXS14WzExXQotKwlsbQkoQHRbMF0sQHRbMV0sIiRzdGRmcmFtZSs0 KjgoJHNwKSIpOwkjIGxvYWQgeFs4XS14WzldCi0rCXN0CShAeFsxMl0sIiRzdGRmcmFtZSs0KjEy KCRzcCkiKTsJIyBzYXZlIGNvdW50ZXIKLSsmeyR6PwlcJnN0ZzpcJnN0fQkoIiVyMTQiLCIkZnJh bWUrMiokU0laRV9UKCRzcCkiKTsjIHNhdmUgaW5wdXQgcG9pbnRlcgotKwlsaGkJKCIlcjE0Iiwx MCk7Ci0rCWoJKCIuTG9vcCIpOwotKwotK0FMSUdOCSg0KTsKLStMQUJFTAkoIi5Mb29wIik7Ci0r CVJPVU5ECSgwLCA0LCA4LDEyKTsKLSsJUk9VTkQJKDAsIDUsMTAsMTUpOwotKwlicmN0CSgiJXIx NCIsIi5Mb29wIik7Ci0rCi0rJnskej8JXCZsZzpcJmx9CSgiJXIxNCIsIiRmcmFtZSsyKiRTSVpF X1QoJHNwKSIpOyMgcHVsbCBpbnB1dCBwb2ludGVyCi0rCXN0bQkoQHRbMF0sQHRbMV0sIiRzdGRm cmFtZSs0KjgrNCo4KCRzcCkiKTsJIyBvZmZsb2FkIHhbOF0teFs5XQotKyZ7JHo/CVwmbG1nOlwm bG19CShAdFswXSxAdFsxXSwiJGZyYW1lKzMqJFNJWkVfVCgkc3ApIik7Ci0rCi0rCWFsCShAeFsw XSwiJHN0ZGZyYW1lKzQqMCgkc3ApIik7CSMgYWNjdW11bGF0ZSBrZXkgc2NoZWR1bGUKLSsJYWwJ KEB4WzFdLCIkc3RkZnJhbWUrNCoxKCRzcCkiKTsKLSsJYWwJKEB4WzJdLCIkc3RkZnJhbWUrNCoy KCRzcCkiKTsKLSsJYWwJKEB4WzNdLCIkc3RkZnJhbWUrNCozKCRzcCkiKTsKLSsJYWwJKEB4WzRd LCIkc3RkZnJhbWUrNCo0KCRzcCkiKTsKLSsJYWwJKEB4WzVdLCIkc3RkZnJhbWUrNCo1KCRzcCki KTsKLSsJYWwJKEB4WzZdLCIkc3RkZnJhbWUrNCo2KCRzcCkiKTsKLSsJYWwJKEB4WzddLCIkc3Rk ZnJhbWUrNCo3KCRzcCkiKTsKLSsJbHJ2cgkoQHhbMF0sQHhbMF0pOwotKwlscnZyCShAeFsxXSxA eFsxXSk7Ci0rCWxydnIJKEB4WzJdLEB4WzJdKTsKLSsJbHJ2cgkoQHhbM10sQHhbM10pOwotKwls cnZyCShAeFs0XSxAeFs0XSk7Ci0rCWxydnIJKEB4WzVdLEB4WzVdKTsKLSsJbHJ2cgkoQHhbNl0s QHhbNl0pOwotKwlscnZyCShAeFs3XSxAeFs3XSk7Ci0rCWFsCShAeFsxMl0sIiRzdGRmcmFtZSs0 KjEyKCRzcCkiKTsKLSsJYWwJKEB4WzEzXSwiJHN0ZGZyYW1lKzQqMTMoJHNwKSIpOwotKwlhbAko QHhbMTRdLCIkc3RkZnJhbWUrNCoxNCgkc3ApIik7Ci0rCWFsCShAeFsxNV0sIiRzdGRmcmFtZSs0 KjE1KCRzcCkiKTsKLSsJbHJ2cgkoQHhbMTJdLEB4WzEyXSk7Ci0rCWxydnIJKEB4WzEzXSxAeFsx M10pOwotKwlscnZyCShAeFsxNF0sQHhbMTRdKTsKLSsJbHJ2cgkoQHhbMTVdLEB4WzE1XSk7Ci0r Ci0rCWxhCShAdFswXSwiMChAdFswXSwlcjE0KSIpOwkjIHJlY29uc3RydWN0IG91dHB1dCBwb2lu dGVyCi0rJnskej8JXCZjbGdyOlwmY2xyfQkoIiVyMTQiLEB0WzFdKTsKLSsJamgJKCIuTHRhaWwi KTsKLSsKLSsJeAkoQHhbMF0sIjQqMCglcjE0KSIpOwkjIHhvciB3aXRoIGlucHV0Ci0rCXgJKEB4 WzFdLCI0KjEoJXIxNCkiKTsKLSsJc3QJKEB4WzBdLCI0KjAoQHRbMF0pIik7CSMgc3RvcmUgb3V0 cHV0Ci0rCXgJKEB4WzJdLCI0KjIoJXIxNCkiKTsKLSsJc3QJKEB4WzFdLCI0KjEoQHRbMF0pIik7 Ci0rCXgJKEB4WzNdLCI0KjMoJXIxNCkiKTsKLSsJc3QJKEB4WzJdLCI0KjIoQHRbMF0pIik7Ci0r CXgJKEB4WzRdLCI0KjQoJXIxNCkiKTsKLSsJc3QJKEB4WzNdLCI0KjMoQHRbMF0pIik7Ci0rCSBs bQkoQHhbMF0sQHhbM10sIiRzdGRmcmFtZSs0KjgrNCo4KCRzcCkiKTsJIyBsb2FkIHhbOF0teFsx MV0KLSsJeAkoQHhbNV0sIjQqNSglcjE0KSIpOwotKwlzdAkoQHhbNF0sIjQqNChAdFswXSkiKTsK LSsJeAkoQHhbNl0sIjQqNiglcjE0KSIpOwotKwkgYWwJKEB4WzBdLCIkc3RkZnJhbWUrNCo4KCRz cCkiKTsKLSsJc3QJKEB4WzVdLCI0KjUoQHRbMF0pIik7Ci0rCXgJKEB4WzddLCI0KjcoJXIxNCki KTsKLSsJIGFsCShAeFsxXSwiJHN0ZGZyYW1lKzQqOSgkc3ApIik7Ci0rCXN0CShAeFs2XSwiNCo2 KEB0WzBdKSIpOwotKwl4CShAeFsxMl0sIjQqMTIoJXIxNCkiKTsKLSsJIGFsCShAeFsyXSwiJHN0 ZGZyYW1lKzQqMTAoJHNwKSIpOwotKwlzdAkoQHhbN10sIjQqNyhAdFswXSkiKTsKLSsJeAkoQHhb MTNdLCI0KjEzKCVyMTQpIik7Ci0rCSBhbAkoQHhbM10sIiRzdGRmcmFtZSs0KjExKCRzcCkiKTsK LSsJc3QJKEB4WzEyXSwiNCoxMihAdFswXSkiKTsKLSsJeAkoQHhbMTRdLCI0KjE0KCVyMTQpIik7 Ci0rCXN0CShAeFsxM10sIjQqMTMoQHRbMF0pIik7Ci0rCXgJKEB4WzE1XSwiNCoxNSglcjE0KSIp OwotKwlzdAkoQHhbMTRdLCI0KjE0KEB0WzBdKSIpOwotKwkgbHJ2cgkoQHhbMF0sQHhbMF0pOwot KwlzdAkoQHhbMTVdLCI0KjE1KEB0WzBdKSIpOwotKwkgbHJ2cgkoQHhbMV0sQHhbMV0pOwotKwkg bHJ2cgkoQHhbMl0sQHhbMl0pOwotKwkgbHJ2cgkoQHhbM10sQHhbM10pOwotKwlsaGkJKEB4WzEy XSwxKTsKLSsJIHgJKEB4WzBdLCI0KjgoJXIxNCkiKTsKLSsJYWwJKEB4WzEyXSwiJHN0ZGZyYW1l KzQqMTIoJHNwKSIpOwkjIGluY3JlbWVudCBjb3VudGVyCi0rCSB4CShAeFsxXSwiNCo5KCVyMTQp Iik7Ci0rCSBzdAkoQHhbMF0sIjQqOChAdFswXSkiKTsKLSsJIHgJKEB4WzJdLCI0KjEwKCVyMTQp Iik7Ci0rCSBzdAkoQHhbMV0sIjQqOShAdFswXSkiKTsKLSsJIHgJKEB4WzNdLCI0KjExKCVyMTQp Iik7Ci0rCSBzdAkoQHhbMl0sIjQqMTAoQHRbMF0pIik7Ci0rCSBzdAkoQHhbM10sIjQqMTEoQHRb MF0pIik7Ci0rCi0rJnskej8JXCZjbGdyOlwmY2xyfQkoIiVyMTQiLEB0WzFdKTsJIyBkb25lIHll dD8KLSsJbGEJKCIlcjE0IiwiNjQoJXIxNCkiKTsKLSsJamwJKCIuTG9vcF9vdXRlciIpOwotKwot K0xBQkVMCSgiLkxkb25lIik7Ci0rCXhncgkoIiVyMCIsIiVyMCIpOwotKwl4Z3IJKCIlcjEiLCIl cjEiKTsKLSsJeGdyCSgiJXIyIiwiJXIyIik7Ci0rCXhncgkoIiVyMyIsIiVyMyIpOwotKwlzdG1n CSgiJXIwIiwiJXIzIiwiJHN0ZGZyYW1lKzQqNCgkc3ApIik7CSMgd2lwZSBrZXkgY29weQotKwlz dG1nCSgiJXIwIiwiJXIzIiwiJHN0ZGZyYW1lKzQqMTIoJHNwKSIpOwotKwotKyZ7JHo/CVwmbG1n OlwmbG19CSgiJXI2IiwiJXIxNSIsIiRmcmFtZSs2KiRTSVpFX1QoJHNwKSIpOwotKwlicgkoIiVy MTQiKTsKLSsKLStBTElHTgkoMTYpOwotK0xBQkVMCSgiLkx0YWlsIik7Ci0rCWxhCShAdFsxXSwi NjQoJHRbMV0pIik7Ci0rCXN0bQkoQHhbMF0sQHhbN10sIiRzdGRmcmFtZSs0KjAoJHNwKSIpOwot KyZ7JHo/CVwmc2xncjpcJnNscn0JKEB0WzFdLCIlcjE0Iik7Ci0rCWxtCShAeFswXSxAeFszXSwi JHN0ZGZyYW1lKzQqOCs0KjgoJHNwKSIpOwotKyZ7JHo/CVwmbGdoaTpcJmxoaX0JKEB4WzZdLDAp OwotKwlzdG0JKEB4WzEyXSxAeFsxNV0sIiRzdGRmcmFtZSs0KjEyKCRzcCkiKTsKLSsJYWwJKEB4 WzBdLCIkc3RkZnJhbWUrNCo4KCRzcCkiKTsKLSsJYWwJKEB4WzFdLCIkc3RkZnJhbWUrNCo5KCRz cCkiKTsKLSsJYWwJKEB4WzJdLCIkc3RkZnJhbWUrNCoxMCgkc3ApIik7Ci0rCWFsCShAeFszXSwi JHN0ZGZyYW1lKzQqMTEoJHNwKSIpOwotKwlscnZyCShAeFswXSxAeFswXSk7Ci0rCWxydnIJKEB4 WzFdLEB4WzFdKTsKLSsJbHJ2cgkoQHhbMl0sQHhbMl0pOwotKwlscnZyCShAeFszXSxAeFszXSk7 Ci0rCXN0bQkoQHhbMF0sQHhbM10sIiRzdGRmcmFtZSs0KjgoJHNwKSIpOwotKwotK0xBQkVMCSgi Lkxvb3BfdGFpbCIpOwotKwlsbGdjCShAeFs0XSwiMChAeFs2XSwlcjE0KSIpOwotKwlsbGdjCShA eFs1XSwiJHN0ZGZyYW1lKEB4WzZdLCRzcCkiKTsKLSsJeHIJKEB4WzVdLEB4WzRdKTsKLSsJc3Rj CShAeFs1XSwiMChAeFs2XSxAdFswXSkiKTsKLSsJbGEJKEB4WzZdLCIxKEB4WzZdKSIpOwotKwli cmN0CShAdFsxXSwiLkxvb3BfdGFpbCIpOwotKwotKwlqCSgiLkxkb25lIik7Ci0rU0laRQkoIkNo YUNoYTIwX2N0cjMyIiwiLi1DaGFDaGEyMF9jdHIzMiIpOwotK30KLSsKLSsjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMKLSsjIDR4InZlcnRpY2FsIiBsYXlvdXQgbWluaW1pemVzIGFtb3VudCBvZiBpbnN0cnVjdGlv bnMsIGJ1dCBwaXBlbGluZQotKyMgcnVucyB1bmRlcnV0aWxpemVkIFtiZWNhdXNlIG9mIHZlY3Rv ciBpbnN0cnVjdGlvbnMnIGhpZ2ggbGF0ZW5jeV0uCi0rIyBPbiB0aGUgb3RoZXIgaGFuZCBtaW5p bXVtIGFtb3VudCBvZiBkYXRhIGl0IHRha2VzIHRvIGZ1bGx5IHV0aWxpemUKLSsjIHRoZSBwaXBl bGluZSBpcyBoaWdoZXIsIHNvIHRoYXQgZWZmZWN0aXZlbHksIHNob3J0IGlucHV0cyB3b3VsZCBi ZQotKyMgcHJvY2Vzc2VkIHNsb3dlci4gSGVuY2UgdGhpcyBjb2RlIHBhdGggdGFyZ2V0aW5nIDw9 MjU2IGJ5dGVzIGxlbmd0aHMuCi0rIwotK3sKLStteSAoJHhhMCwkeGExLCR4YTIsJHhhMywgJHhi MCwkeGIxLCR4YjIsJHhiMywKLSsgICAgJHhjMCwkeGMxLCR4YzIsJHhjMywgJHhkMCwkeGQxLCR4 ZDIsJHhkMyk9bWFwKCIldiRfIiwoMC4uMTUpKTsKLStteSBASz1tYXAoIiV2JF8iLCgxNi4uMTkp KTsKLStteSAkQ1RSPSIldjI2IjsKLStteSAoJHh0MCwkeHQxLCR4dDIsJHh0Myk9bWFwKCIldiRf IiwoMjcuLjMwKSk7Ci0rbXkgJGJlcGVybT0iJXYzMSI7Ci0rbXkgKCR4MDAsJHgxMCwkeDIwLCR4 MzApPSgwLG1hcCgiciRfIiwoOC4uMTApKSk7Ci0rbXkgJEZSQU1FPSRzdGRmcmFtZSs0KjE2Owot KwotK0FMSUdOCSgzMik7Ci0rTEFCRUwJKCJDaGFDaGEyMF9jdHIzMl80eCIpOwotK0xBQkVMCSgi LkxDaGFDaGEyMF9jdHIzMl80eCIpOwotKyZ7JHo/CVwmc3RtZzpcJnN0bX0JKCIlcjYiLCIlcjci LCI2KiRTSVpFX1QoJHNwKSIpOwotK2lmICghJHopIHsKLSsJc3RkCSgiJWY0IiwiMTYqJFNJWkVf VCsyKjgoJHNwKSIpOwotKwlzdGQJKCIlZjYiLCIxNiokU0laRV9UKzMqOCgkc3ApIik7Ci0rfQot KyZ7JHo/CVwmbGdoaTpcJmxoaX0JKCIlcjEiLC0kRlJBTUUpOwotKwlsZ3IJKCIlcjAiLCRzcCk7 Ci0rCWxhCSgkc3AsIjAoJXIxLCRzcCkiKTsKLSsmeyR6PwlcJnN0ZzpcJnN0fQkoIiVyMCIsIjAo JHNwKSIpOwkjIGJhY2stY2hhaW4KLStpZiAoJHopIHsKLSsJc3RkCSgiJWY4IiwiJHN0ZGZyYW1l KzgqMCgkc3ApIik7Ci0rCXN0ZAkoIiVmOSIsIiRzdGRmcmFtZSs4KjEoJHNwKSIpOwotKwlzdGQJ KCIlZjEwIiwiJHN0ZGZyYW1lKzgqMigkc3ApIik7Ci0rCXN0ZAkoIiVmMTEiLCIkc3RkZnJhbWUr OCozKCRzcCkiKTsKLSsJc3RkCSgiJWYxMiIsIiRzdGRmcmFtZSs4KjQoJHNwKSIpOwotKwlzdGQJ KCIlZjEzIiwiJHN0ZGZyYW1lKzgqNSgkc3ApIik7Ci0rCXN0ZAkoIiVmMTQiLCIkc3RkZnJhbWUr OCo2KCRzcCkiKTsKLSsJc3RkCSgiJWYxNSIsIiRzdGRmcmFtZSs4KjcoJHNwKSIpOwotK30KLSsJ bGFybAkoIiVyNyIsIi5Mc2lnbWEiKTsKLSsJbGhpCSgiJXIwIiwxMCk7Ci0rCWxoaQkoIiVyMSIs MCk7Ci0rCi0rCXZsCShAS1swXSwiMCglcjcpIik7CQkjIGxvYWQgc2lnbWEKLSsJdmwJKEBLWzFd LCIwKCRrZXkpIik7CQkjIGxvYWQga2V5Ci0rCXZsCShAS1syXSwiMTYoJGtleSkiKTsKLSsJdmwJ KEBLWzNdLCIwKCRjb3VudGVyKSIpOwkJIyBsb2FkIGNvdW50ZXIKLSsKLSsJdmwJKCRiZXBlcm0s IjB4NDAoJXI3KSIpOwotKwl2bAkoJHh0MSwiMHg1MCglcjcpIik7Ci0rCXZyZXBmCSgkQ1RSLEBL WzNdLDApOwotKwl2bHZnZgkoQEtbM10sIiVyMSIsMCk7CQkjIGNsZWFyIEBLWzNdLndvcmRbMF0K LSsJdmFmCSgkQ1RSLCRDVFIsJHh0MSk7Ci0rCi0rI0xBQkVMCSgiLkxvb3Bfb3V0ZXJfNHgiKTsK LSsJdmxtCSgkeGEwLCR4YTMsIjB4NjAoJXI3KSIpOwkjIGxvYWQgW3NtYXNoZWRdIHNpZ21hCi0r Ci0rCXZyZXBmCSgkeGIwLEBLWzFdLDApOwkJCSMgc21hc2ggdGhlIGtleQotKwl2cmVwZgkoJHhi MSxAS1sxXSwxKTsKLSsJdnJlcGYJKCR4YjIsQEtbMV0sMik7Ci0rCXZyZXBmCSgkeGIzLEBLWzFd LDMpOwotKwotKwl2cmVwZgkoJHhjMCxAS1syXSwwKTsKLSsJdnJlcGYJKCR4YzEsQEtbMl0sMSk7 Ci0rCXZyZXBmCSgkeGMyLEBLWzJdLDIpOwotKwl2cmVwZgkoJHhjMyxAS1syXSwzKTsKLSsKLSsJ dmxyCSgkeGQwLCRDVFIpOwotKwl2cmVwZgkoJHhkMSxAS1szXSwxKTsKLSsJdnJlcGYJKCR4ZDIs QEtbM10sMik7Ci0rCXZyZXBmCSgkeGQzLEBLWzNdLDMpOwotKwotK0xBQkVMCSgiLkxvb3BfNHgi KTsKLSsJVlhfbGFuZV9ST1VORCgwLCA0LCA4LDEyKTsKLSsJVlhfbGFuZV9ST1VORCgwLCA1LDEw LDE1KTsKLSsJYnJjdAkoIiVyMCIsIi5Mb29wXzR4Iik7Ci0rCi0rCXZhZgkoJHhkMCwkeGQwLCRD VFIpOwotKwotKwl2bXJoZgkoJHh0MCwkeGEwLCR4YTEpOwkJIyB0cmFuc3Bvc2UgZGF0YQotKwl2 bXJoZgkoJHh0MSwkeGEyLCR4YTMpOwotKwl2bXJsZgkoJHh0MiwkeGEwLCR4YTEpOwotKwl2bXJs ZgkoJHh0MywkeGEyLCR4YTMpOwotKwl2cGRpCSgkeGEwLCR4dDAsJHh0MSwwYjAwMDApOwotKwl2 cGRpCSgkeGExLCR4dDAsJHh0MSwwYjAxMDEpOwotKwl2cGRpCSgkeGEyLCR4dDIsJHh0MywwYjAw MDApOwotKwl2cGRpCSgkeGEzLCR4dDIsJHh0MywwYjAxMDEpOwotKwotKwl2bXJoZgkoJHh0MCwk eGIwLCR4YjEpOwotKwl2bXJoZgkoJHh0MSwkeGIyLCR4YjMpOwotKwl2bXJsZgkoJHh0MiwkeGIw LCR4YjEpOwotKwl2bXJsZgkoJHh0MywkeGIyLCR4YjMpOwotKwl2cGRpCSgkeGIwLCR4dDAsJHh0 MSwwYjAwMDApOwotKwl2cGRpCSgkeGIxLCR4dDAsJHh0MSwwYjAxMDEpOwotKwl2cGRpCSgkeGIy LCR4dDIsJHh0MywwYjAwMDApOwotKwl2cGRpCSgkeGIzLCR4dDIsJHh0MywwYjAxMDEpOwotKwot Kwl2bXJoZgkoJHh0MCwkeGMwLCR4YzEpOwotKwl2bXJoZgkoJHh0MSwkeGMyLCR4YzMpOwotKwl2 bXJsZgkoJHh0MiwkeGMwLCR4YzEpOwotKwl2bXJsZgkoJHh0MywkeGMyLCR4YzMpOwotKwl2cGRp CSgkeGMwLCR4dDAsJHh0MSwwYjAwMDApOwotKwl2cGRpCSgkeGMxLCR4dDAsJHh0MSwwYjAxMDEp OwotKwl2cGRpCSgkeGMyLCR4dDIsJHh0MywwYjAwMDApOwotKwl2cGRpCSgkeGMzLCR4dDIsJHh0 MywwYjAxMDEpOwotKwotKwl2bXJoZgkoJHh0MCwkeGQwLCR4ZDEpOwotKwl2bXJoZgkoJHh0MSwk eGQyLCR4ZDMpOwotKwl2bXJsZgkoJHh0MiwkeGQwLCR4ZDEpOwotKwl2bXJsZgkoJHh0MywkeGQy LCR4ZDMpOwotKwl2cGRpCSgkeGQwLCR4dDAsJHh0MSwwYjAwMDApOwotKwl2cGRpCSgkeGQxLCR4 dDAsJHh0MSwwYjAxMDEpOwotKwl2cGRpCSgkeGQyLCR4dDIsJHh0MywwYjAwMDApOwotKwl2cGRp CSgkeGQzLCR4dDIsJHh0MywwYjAxMDEpOwotKwotKwkjdnJlcGlmCSgkeHQwLDQpOwotKwkjdmFm CSgkQ1RSLCRDVFIsJHh0MCk7CQkjIG5leHQgY291bnRlciB2YWx1ZQotKwotKwl2YWYJKCR4YTAs JHhhMCxAS1swXSk7Ci0rCXZhZgkoJHhiMCwkeGIwLEBLWzFdKTsKLSsJdmFmCSgkeGMwLCR4YzAs QEtbMl0pOwotKwl2YWYJKCR4ZDAsJHhkMCxAS1szXSk7Ci0rCi0rCXZwZXJtCSgkeGEwLCR4YTAs JHhhMCwkYmVwZXJtKTsKLSsJdnBlcm0JKCR4YjAsJHhiMCwkeGIwLCRiZXBlcm0pOwotKwl2cGVy bQkoJHhjMCwkeGMwLCR4YzAsJGJlcGVybSk7Ci0rCXZwZXJtCSgkeGQwLCR4ZDAsJHhkMCwkYmVw ZXJtKTsKLSsKLSsJIyZ7JHo/CVwmY2xnZmk6XCZjbGZpfSAoJGxlbiwweDQwKTsKLSsJI2psCSgi Lkx0YWlsXzR4Iik7Ci0rCi0rCXZsbQkoJHh0MCwkeHQzLCIwKCRpbnApIik7Ci0rCi0rCXZ4CSgk eHQwLCR4dDAsJHhhMCk7Ci0rCXZ4CSgkeHQxLCR4dDEsJHhiMCk7Ci0rCXZ4CSgkeHQyLCR4dDIs JHhjMCk7Ci0rCXZ4CSgkeHQzLCR4dDMsJHhkMCk7Ci0rCi0rCXZzdG0JKCR4dDAsJHh0MywiMCgk b3V0KSIpOwotKwotKwlsYQkoJGlucCwiMHg0MCgkaW5wKSIpOwotKwlsYQkoJG91dCwiMHg0MCgk b3V0KSIpOwotKyZ7JHo/CVwmYWdoaTpcJmFoaX0JKCRsZW4sLTB4NDApOwotKwkjamUJKCIuTGRv bmVfNHgiKTsKLSsKLSsJdmFmCSgkeGEwLCR4YTEsQEtbMF0pOwotKwl2YWYJKCR4YjAsJHhiMSxA S1sxXSk7Ci0rCXZhZgkoJHhjMCwkeGMxLEBLWzJdKTsKLSsJdmFmCSgkeGQwLCR4ZDEsQEtbM10p OwotKwotKwl2cGVybQkoJHhhMCwkeGEwLCR4YTAsJGJlcGVybSk7Ci0rCXZwZXJtCSgkeGIwLCR4 YjAsJHhiMCwkYmVwZXJtKTsKLSsJdnBlcm0JKCR4YzAsJHhjMCwkeGMwLCRiZXBlcm0pOwotKwl2 cGVybQkoJHhkMCwkeGQwLCR4ZDAsJGJlcGVybSk7Ci0rCi0rJnskej8JXCZjbGdmaTpcJmNsZml9 ICgkbGVuLDB4NDApOwotKwlqbAkoIi5MdGFpbF80eCIpOwotKwotKwl2bG0JKCR4dDAsJHh0Mywi MCgkaW5wKSIpOwotKwotKwl2eAkoJHh0MCwkeHQwLCR4YTApOwotKwl2eAkoJHh0MSwkeHQxLCR4 YjApOwotKwl2eAkoJHh0MiwkeHQyLCR4YzApOwotKwl2eAkoJHh0MywkeHQzLCR4ZDApOwotKwot Kwl2c3RtCSgkeHQwLCR4dDMsIjAoJG91dCkiKTsKLSsKLSsJbGEJKCRpbnAsIjB4NDAoJGlucCki KTsKLSsJbGEJKCRvdXQsIjB4NDAoJG91dCkiKTsKLSsmeyR6PwlcJmFnaGk6XCZhaGl9CSgkbGVu LC0weDQwKTsKLSsJamUJKCIuTGRvbmVfNHgiKTsKLSsKLSsJdmFmCSgkeGEwLCR4YTIsQEtbMF0p OwotKwl2YWYJKCR4YjAsJHhiMixAS1sxXSk7Ci0rCXZhZgkoJHhjMCwkeGMyLEBLWzJdKTsKLSsJ dmFmCSgkeGQwLCR4ZDIsQEtbM10pOwotKwotKwl2cGVybQkoJHhhMCwkeGEwLCR4YTAsJGJlcGVy bSk7Ci0rCXZwZXJtCSgkeGIwLCR4YjAsJHhiMCwkYmVwZXJtKTsKLSsJdnBlcm0JKCR4YzAsJHhj MCwkeGMwLCRiZXBlcm0pOwotKwl2cGVybQkoJHhkMCwkeGQwLCR4ZDAsJGJlcGVybSk7Ci0rCi0r Jnskej8JXCZjbGdmaTpcJmNsZml9ICgkbGVuLDB4NDApOwotKwlqbAkoIi5MdGFpbF80eCIpOwot KwotKwl2bG0JKCR4dDAsJHh0MywiMCgkaW5wKSIpOwotKwotKwl2eAkoJHh0MCwkeHQwLCR4YTAp OwotKwl2eAkoJHh0MSwkeHQxLCR4YjApOwotKwl2eAkoJHh0MiwkeHQyLCR4YzApOwotKwl2eAko JHh0MywkeHQzLCR4ZDApOwotKwotKwl2c3RtCSgkeHQwLCR4dDMsIjAoJG91dCkiKTsKLSsKLSsJ bGEJKCRpbnAsIjB4NDAoJGlucCkiKTsKLSsJbGEJKCRvdXQsIjB4NDAoJG91dCkiKTsKLSsmeyR6 PwlcJmFnaGk6XCZhaGl9CSgkbGVuLC0weDQwKTsKLSsJamUJKCIuTGRvbmVfNHgiKTsKLSsKLSsJ dmFmCSgkeGEwLCR4YTMsQEtbMF0pOwotKwl2YWYJKCR4YjAsJHhiMyxAS1sxXSk7Ci0rCXZhZgko JHhjMCwkeGMzLEBLWzJdKTsKLSsJdmFmCSgkeGQwLCR4ZDMsQEtbM10pOwotKwotKwl2cGVybQko JHhhMCwkeGEwLCR4YTAsJGJlcGVybSk7Ci0rCXZwZXJtCSgkeGIwLCR4YjAsJHhiMCwkYmVwZXJt KTsKLSsJdnBlcm0JKCR4YzAsJHhjMCwkeGMwLCRiZXBlcm0pOwotKwl2cGVybQkoJHhkMCwkeGQw LCR4ZDAsJGJlcGVybSk7Ci0rCi0rJnskej8JXCZjbGdmaTpcJmNsZml9ICgkbGVuLDB4NDApOwot KwlqbAkoIi5MdGFpbF80eCIpOwotKwotKwl2bG0JKCR4dDAsJHh0MywiMCgkaW5wKSIpOwotKwot Kwl2eAkoJHh0MCwkeHQwLCR4YTApOwotKwl2eAkoJHh0MSwkeHQxLCR4YjApOwotKwl2eAkoJHh0 MiwkeHQyLCR4YzApOwotKwl2eAkoJHh0MywkeHQzLCR4ZDApOwotKwotKwl2c3RtCSgkeHQwLCR4 dDMsIjAoJG91dCkiKTsKLSsKLSsJI2xhCSRpbnAsMHg0MCgkaW5wKSk7Ci0rCSNsYQkkb3V0LDB4 NDAoJG91dCkpOwotKwkjbGhpCSVyMCwxMCk7Ci0rCSMmeyR6PwlcJmFnaGk6XCZhaGl9CSRsZW4s LTB4NDApOwotKwkjam5lCS5Mb29wX291dGVyXzR4KTsKLSsKLStMQUJFTAkoIi5MZG9uZV80eCIp OwotK2lmICghJHopIHsKLSsJbGQJKCIlZjQiLCIkRlJBTUUrMTYqJFNJWkVfVCsyKjgoJHNwKSIp OwotKwlsZAkoIiVmNiIsIiRGUkFNRSsxNiokU0laRV9UKzMqOCgkc3ApIik7Ci0rfSBlbHNlIHsK LSsJbGQJKCIlZjgiLCIkc3RkZnJhbWUrOCowKCRzcCkiKTsKLSsJbGQJKCIlZjkiLCIkc3RkZnJh bWUrOCoxKCRzcCkiKTsKLSsJbGQJKCIlZjEwIiwiJHN0ZGZyYW1lKzgqMigkc3ApIik7Ci0rCWxk CSgiJWYxMSIsIiRzdGRmcmFtZSs4KjMoJHNwKSIpOwotKwlsZAkoIiVmMTIiLCIkc3RkZnJhbWUr OCo0KCRzcCkiKTsKLSsJbGQJKCIlZjEzIiwiJHN0ZGZyYW1lKzgqNSgkc3ApIik7Ci0rCWxkCSgi JWYxNCIsIiRzdGRmcmFtZSs4KjYoJHNwKSIpOwotKwlsZAkoIiVmMTUiLCIkc3RkZnJhbWUrOCo3 KCRzcCkiKTsKLSt9Ci0rJnskej8JXCZsbWc6XCZsbX0JKCIlcjYiLCIlcjciLCIkRlJBTUUrNiok U0laRV9UKCRzcCkiKTsKLSsJbGEJKCRzcCwiJEZSQU1FKCRzcCkiKTsKLSsJYnIJKCIlcjE0Iik7 Ci0rCi0rQUxJR04JKDE2KTsKLStMQUJFTAkoIi5MdGFpbF80eCIpOwotK2lmICghJHopIHsKLSsJ dmxyCSgkeHQwLCR4YjApOwotKwlsZAkoIiVmNCIsIiRGUkFNRSsxNiokU0laRV9UKzIqOCgkc3Ap Iik7Ci0rCWxkCSgiJWY2IiwiJEZSQU1FKzE2KiRTSVpFX1QrMyo4KCRzcCkiKTsKLSsKLSsJdnN0 CSgkeGEwLCIkc3RkZnJhbWUrMHgwMCgkc3ApIik7Ci0rCXZzdAkoJHh0MCwiJHN0ZGZyYW1lKzB4 MTAoJHNwKSIpOwotKwl2c3QJKCR4YzAsIiRzdGRmcmFtZSsweDIwKCRzcCkiKTsKLSsJdnN0CSgk eGQwLCIkc3RkZnJhbWUrMHgzMCgkc3ApIik7Ci0rfSBlbHNlIHsKLSsJdmxyCSgkeHQwLCR4YzAp OwotKwlsZAkoIiVmOCIsIiRzdGRmcmFtZSs4KjAoJHNwKSIpOwotKwlsZAkoIiVmOSIsIiRzdGRm cmFtZSs4KjEoJHNwKSIpOwotKwlsZAkoIiVmMTAiLCIkc3RkZnJhbWUrOCoyKCRzcCkiKTsKLSsJ bGQJKCIlZjExIiwiJHN0ZGZyYW1lKzgqMygkc3ApIik7Ci0rCXZscgkoJHh0MSwkeGQwKTsKLSsJ bGQJKCIlZjEyIiwiJHN0ZGZyYW1lKzgqNCgkc3ApIik7Ci0rCWxkCSgiJWYxMyIsIiRzdGRmcmFt ZSs4KjUoJHNwKSIpOwotKwlsZAkoIiVmMTQiLCIkc3RkZnJhbWUrOCo2KCRzcCkiKTsKLSsJbGQJ KCIlZjE1IiwiJHN0ZGZyYW1lKzgqNygkc3ApIik7Ci0rCi0rCXZzdAkoJHhhMCwiJHN0ZGZyYW1l KzB4MDAoJHNwKSIpOwotKwl2c3QJKCR4YjAsIiRzdGRmcmFtZSsweDEwKCRzcCkiKTsKLSsJdnN0 CSgkeHQwLCIkc3RkZnJhbWUrMHgyMCgkc3ApIik7Ci0rCXZzdAkoJHh0MSwiJHN0ZGZyYW1lKzB4 MzAoJHNwKSIpOwotK30KLSsJbGdoaQkoIiVyMSIsMCk7Ci0rCi0rTEFCRUwJKCIuTG9vcF90YWls XzR4Iik7Ci0rCWxsZ2MJKCIlcjUiLCIwKCVyMSwkaW5wKSIpOwotKwlsbGdjCSgiJXI2IiwiJHN0 ZGZyYW1lKCVyMSwkc3ApIik7Ci0rCXhyCSgiJXI2IiwiJXI1Iik7Ci0rCXN0YwkoIiVyNiIsIjAo JXIxLCRvdXQpIik7Ci0rCWxhCSgiJXIxIiwiMSglcjEpIik7Ci0rCWJyY3QJKCRsZW4sIi5Mb29w X3RhaWxfNHgiKTsKLSsKLSsmeyR6PwlcJmxtZzpcJmxtfQkoIiVyNiIsIiVyNyIsIiRGUkFNRSs2 KiRTSVpFX1QoJHNwKSIpOwotKwlsYQkoJHNwLCIkRlJBTUUoJHNwKSIpOwotKwlicgkoIiVyMTQi KTsKLStTSVpFCSgiQ2hhQ2hhMjBfY3RyMzJfNHgiLCIuLUNoYUNoYTIwX2N0cjMyXzR4Iik7Ci0r fQotKwotKyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIwotKyMgNngiaG9yaXpvbnRhbCIgbGF5b3V0IGlzIG9wdGlt YWwgZml0IGZvciB0aGUgcGxhdGZvcm0gaW4gaXRzIGN1cnJlbnQKLSsjIHNoYXBlLCBtb3JlIHNw ZWNpZmljYWxseSBmb3IgZ2l2ZW4gdmVjdG9yIGluc3RydWN0aW9ucycgbGF0ZW5jeS4gV2VsbCwK LSsjIGNvbXB1dGF0aW9uYWwgcGFydCBvZiA4eCJ2ZXJ0aWNhbCIgd291bGQgYmUgZmFzdGVyLCBi dXQgaXQgY29uc3VtZXMKLSsjIGFsbCByZWdpc3RlcnMgYW5kIGRlYWxpbmcgd2l0aCB0aGF0IHdp bGwgZGltaW5pc2ggdGhlIHJldHVybi4uLgotKyMKLSt7Ci0rbXkgKCRhMCwkYjAsJGMwLCRkMCwg JGExLCRiMSwkYzEsJGQxLAotKyAgICAkYTIsJGIyLCRjMiwkZDIsICRhMywkYjMsJGMzLCRkMywK LSsgICAgJGE0LCRiNCwkYzQsJGQ0LCAkYTUsJGI1LCRjNSwkZDUpPW1hcCgiJXYkXyIsKDAuLjIz KSk7Ci0rbXkgQEs9bWFwKCIldiRfIiwoMjcsMjQuLjI2KSk7Ci0rbXkgKCR0MCwkdDEsJHQyLCR0 Myk9bWFwKCIldiRfIiwyNy4uMzApOwotK215ICRiZXBlcm09IiV2MzEiOwotK215ICRGUkFNRT0k c3RkZnJhbWUgKyA0KjE2OwotKwotK0dMT0JMCSgiQ2hhQ2hhMjBfY3RyMzJfdngiKTsKLStBTElH TgkoMzIpOwotK0xBQkVMCSgiQ2hhQ2hhMjBfY3RyMzJfdngiKTsKLStMQUJFTAkoIi5MQ2hhQ2hh MjBfY3RyMzJfdngiKTsKLSsmeyR6PwlcJmNsZ2ZpOlwmY2xmaX0JKCRsZW4sMjU2KTsKLSsJamxl CSgiLkxDaGFDaGEyMF9jdHIzMl80eCIpOwotKyZ7JHo/CVwmc3RtZzpcJnN0bX0JKCIlcjYiLCIl cjciLCI2KiRTSVpFX1QoJHNwKSIpOwotK2lmICghJHopIHsKLSsJc3RkCSgiJWY0IiwiMTYqJFNJ WkVfVCsyKjgoJHNwKSIpOwotKwlzdGQJKCIlZjYiLCIxNiokU0laRV9UKzMqOCgkc3ApIik7Ci0r fQotKyZ7JHo/CVwmbGdoaTpcJmxoaX0JKCIlcjEiLC0kRlJBTUUpOwotKwlsZ3IJKCIlcjAiLCRz cCk7Ci0rCWxhCSgkc3AsIjAoJXIxLCRzcCkiKTsKLSsmeyR6PwlcJnN0ZzpcJnN0fQkoIiVyMCIs IjAoJHNwKSIpOwkjIGJhY2stY2hhaW4KLStpZiAoJHopIHsKLSsJc3RkCSgiJWY4IiwiJEZSQU1F LTgqOCgkc3ApIik7Ci0rCXN0ZAkoIiVmOSIsIiRGUkFNRS04KjcoJHNwKSIpOwotKwlzdGQJKCIl ZjEwIiwiJEZSQU1FLTgqNigkc3ApIik7Ci0rCXN0ZAkoIiVmMTEiLCIkRlJBTUUtOCo1KCRzcCki KTsKLSsJc3RkCSgiJWYxMiIsIiRGUkFNRS04KjQoJHNwKSIpOwotKwlzdGQJKCIlZjEzIiwiJEZS QU1FLTgqMygkc3ApIik7Ci0rCXN0ZAkoIiVmMTQiLCIkRlJBTUUtOCoyKCRzcCkiKTsKLSsJc3Rk CSgiJWYxNSIsIiRGUkFNRS04KjEoJHNwKSIpOwotK30KLSsJbGFybAkoIiVyNyIsIi5Mc2lnbWEi KTsKLSsJbGhpCSgiJXIwIiwxMCk7Ci0rCi0rCXZsbQkoQEtbMV0sQEtbMl0sIjAoJGtleSkiKTsJ IyBsb2FkIGtleQotKwl2bAkoQEtbM10sIjAoJGNvdW50ZXIpIik7CQkjIGxvYWQgY291bnRlcgot KwotKwl2bG0JKEBLWzBdLCIkYmVwZXJtIiwiMCglcjcpIik7CSMgbG9hZCBzaWdtYSwgaW5jcmVt ZW50cywgLi4uCi0rCi0rTEFCRUwJKCIuTG9vcF9vdXRlcl92eCIpOwotKwl2bHIJKCRhMCxAS1sw XSk7Ci0rCXZscgkoJGIwLEBLWzFdKTsKLSsJdmxyCSgkYTEsQEtbMF0pOwotKwl2bHIJKCRiMSxA S1sxXSk7Ci0rCXZscgkoJGEyLEBLWzBdKTsKLSsJdmxyCSgkYjIsQEtbMV0pOwotKwl2bHIJKCRh MyxAS1swXSk7Ci0rCXZscgkoJGIzLEBLWzFdKTsKLSsJdmxyCSgkYTQsQEtbMF0pOwotKwl2bHIJ KCRiNCxAS1sxXSk7Ci0rCXZscgkoJGE1LEBLWzBdKTsKLSsJdmxyCSgkYjUsQEtbMV0pOwotKwot Kwl2bHIJKCRkMCxAS1szXSk7Ci0rCXZhZgkoJGQxLEBLWzNdLCR0MSk7CQkjIEtbM10rMQotKwl2 YWYJKCRkMixAS1szXSwkdDIpOwkJIyBLWzNdKzIKLSsJdmFmCSgkZDMsQEtbM10sJHQzKTsJCSMg S1szXSszCi0rCXZhZgkoJGQ0LCRkMiwkdDIpOwkJCSMgS1szXSs0Ci0rCXZhZgkoJGQ1LCRkMiwk dDMpOwkJCSMgS1szXSs1Ci0rCi0rCXZscgkoJGMwLEBLWzJdKTsKLSsJdmxyCSgkYzEsQEtbMl0p OwotKwl2bHIJKCRjMixAS1syXSk7Ci0rCXZscgkoJGMzLEBLWzJdKTsKLSsJdmxyCSgkYzQsQEtb Ml0pOwotKwl2bHIJKCRjNSxAS1syXSk7Ci0rCi0rCXZscgkoJHQxLCRkMSk7Ci0rCXZscgkoJHQy LCRkMik7Ci0rCXZscgkoJHQzLCRkMyk7Ci0rCi0rQUxJR04JKDQpOwotK0xBQkVMCSgiLkxvb3Bf dngiKTsKLSsKLSsJVlhfUk9VTkQoJGEwLCRhMSwkYTIsJGEzLCRhNCwkYTUsCi0rCQkgJGIwLCRi MSwkYjIsJGIzLCRiNCwkYjUsCi0rCQkgJGMwLCRjMSwkYzIsJGMzLCRjNCwkYzUsCi0rCQkgJGQw LCRkMSwkZDIsJGQzLCRkNCwkZDUsCi0rCQkgMCk7Ci0rCi0rCVZYX1JPVU5EKCRhMCwkYTEsJGEy LCRhMywkYTQsJGE1LAotKwkJICRiMCwkYjEsJGIyLCRiMywkYjQsJGI1LAotKwkJICRjMCwkYzEs JGMyLCRjMywkYzQsJGM1LAotKwkJICRkMCwkZDEsJGQyLCRkMywkZDQsJGQ1LAotKwkJIDEpOwot KwotKwlicmN0CSgiJXIwIiwiLkxvb3BfdngiKTsKLSsKLSsJdmFmCSgkYTAsJGEwLEBLWzBdKTsK LSsJdmFmCSgkYjAsJGIwLEBLWzFdKTsKLSsJdmFmCSgkYzAsJGMwLEBLWzJdKTsKLSsJdmFmCSgk ZDAsJGQwLEBLWzNdKTsKLSsJdmFmCSgkYTEsJGExLEBLWzBdKTsKLSsJdmFmCSgkZDEsJGQxLCR0 MSk7CQkJIyArS1szXSsxCi0rCi0rCXZwZXJtCSgkYTAsJGEwLCRhMCwkYmVwZXJtKTsKLSsJdnBl cm0JKCRiMCwkYjAsJGIwLCRiZXBlcm0pOwotKwl2cGVybQkoJGMwLCRjMCwkYzAsJGJlcGVybSk7 Ci0rCXZwZXJtCSgkZDAsJGQwLCRkMCwkYmVwZXJtKTsKLSsKLSsmeyR6PwlcJmNsZ2ZpOlwmY2xm aX0JKCRsZW4sMHg0MCk7Ci0rCWpsCSgiLkx0YWlsX3Z4Iik7Ci0rCi0rCXZhZgkoJGQyLCRkMiwk dDIpOwkJCSMgK0tbM10rMgotKwl2YWYJKCRkMywkZDMsJHQzKTsJCQkjICtLWzNdKzMKLSsJdmxt CSgkdDAsJHQzLCIwKCRpbnApIik7Ci0rCi0rCXZ4CSgkYTAsJGEwLCR0MCk7Ci0rCXZ4CSgkYjAs JGIwLCR0MSk7Ci0rCXZ4CSgkYzAsJGMwLCR0Mik7Ci0rCXZ4CSgkZDAsJGQwLCR0Myk7Ci0rCi0r CXZsbQkoQEtbMF0sJHQzLCIwKCVyNykiKTsJCSMgcmUtbG9hZCBzaWdtYSBhbmQgaW5jcmVtZW50 cwotKwotKwl2c3RtCSgkYTAsJGQwLCIwKCRvdXQpIik7Ci0rCi0rCWxhCSgkaW5wLCIweDQwKCRp bnApIik7Ci0rCWxhCSgkb3V0LCIweDQwKCRvdXQpIik7Ci0rJnskej8JXCZhZ2hpOlwmYWhpfQko JGxlbiwtMHg0MCk7Ci0rCWplCSgiLkxkb25lX3Z4Iik7Ci0rCi0rCXZhZgkoJGIxLCRiMSxAS1sx XSk7Ci0rCXZhZgkoJGMxLCRjMSxAS1syXSk7Ci0rCi0rCXZwZXJtCSgkYTAsJGExLCRhMSwkYmVw ZXJtKTsKLSsJdnBlcm0JKCRiMCwkYjEsJGIxLCRiZXBlcm0pOwotKwl2cGVybQkoJGMwLCRjMSwk YzEsJGJlcGVybSk7Ci0rCXZwZXJtCSgkZDAsJGQxLCRkMSwkYmVwZXJtKTsKLSsKLSsmeyR6Pwlc JmNsZ2ZpOlwmY2xmaX0gKCRsZW4sMHg0MCk7Ci0rCWpsCSgiLkx0YWlsX3Z4Iik7Ci0rCi0rCXZs bQkoJGExLCRkMSwiMCgkaW5wKSIpOwotKwotKwl2eAkoJGEwLCRhMCwkYTEpOwotKwl2eAkoJGIw LCRiMCwkYjEpOwotKwl2eAkoJGMwLCRjMCwkYzEpOwotKwl2eAkoJGQwLCRkMCwkZDEpOwotKwot Kwl2c3RtCSgkYTAsJGQwLCIwKCRvdXQpIik7Ci0rCi0rCWxhCSgkaW5wLCIweDQwKCRpbnApIik7 Ci0rCWxhCSgkb3V0LCIweDQwKCRvdXQpIik7Ci0rJnskej8JXCZhZ2hpOlwmYWhpfQkoJGxlbiwt MHg0MCk7Ci0rCWplCSgiLkxkb25lX3Z4Iik7Ci0rCi0rCXZhZgkoJGEyLCRhMixAS1swXSk7Ci0r CXZhZgkoJGIyLCRiMixAS1sxXSk7Ci0rCXZhZgkoJGMyLCRjMixAS1syXSk7Ci0rCi0rCXZwZXJt CSgkYTAsJGEyLCRhMiwkYmVwZXJtKTsKLSsJdnBlcm0JKCRiMCwkYjIsJGIyLCRiZXBlcm0pOwot Kwl2cGVybQkoJGMwLCRjMiwkYzIsJGJlcGVybSk7Ci0rCXZwZXJtCSgkZDAsJGQyLCRkMiwkYmVw ZXJtKTsKLSsKLSsmeyR6PwlcJmNsZ2ZpOlwmY2xmaX0JKCRsZW4sMHg0MCk7Ci0rCWpsCSgiLkx0 YWlsX3Z4Iik7Ci0rCi0rCXZsbQkoJGExLCRkMSwiMCgkaW5wKSIpOwotKwotKwl2eAkoJGEwLCRh MCwkYTEpOwotKwl2eAkoJGIwLCRiMCwkYjEpOwotKwl2eAkoJGMwLCRjMCwkYzEpOwotKwl2eAko JGQwLCRkMCwkZDEpOwotKwotKwl2c3RtCSgkYTAsJGQwLCIwKCRvdXQpIik7Ci0rCi0rCWxhCSgk aW5wLCIweDQwKCRpbnApIik7Ci0rCWxhCSgkb3V0LCIweDQwKCRvdXQpIik7Ci0rJnskej8JXCZh Z2hpOlwmYWhpfQkoJGxlbiwtMHg0MCk7Ci0rCWplCSgiLkxkb25lX3Z4Iik7Ci0rCi0rCXZhZgko JGEzLCRhMyxAS1swXSk7Ci0rCXZhZgkoJGIzLCRiMyxAS1sxXSk7Ci0rCXZhZgkoJGMzLCRjMyxA S1syXSk7Ci0rCXZhZgkoJGQyLEBLWzNdLCR0Myk7CQkjIEtbM10rMwotKwotKwl2cGVybQkoJGEw LCRhMywkYTMsJGJlcGVybSk7Ci0rCXZwZXJtCSgkYjAsJGIzLCRiMywkYmVwZXJtKTsKLSsJdnBl cm0JKCRjMCwkYzMsJGMzLCRiZXBlcm0pOwotKwl2cGVybQkoJGQwLCRkMywkZDMsJGJlcGVybSk7 Ci0rCi0rJnskej8JXCZjbGdmaTpcJmNsZml9CSgkbGVuLDB4NDApOwotKwlqbAkoIi5MdGFpbF92 eCIpOwotKwotKwl2YWYJKCRkMywkZDIsJHQxKTsJCQkjIEtbM10rNAotKwl2bG0JKCRhMSwkZDEs IjAoJGlucCkiKTsKLSsKLSsJdngJKCRhMCwkYTAsJGExKTsKLSsJdngJKCRiMCwkYjAsJGIxKTsK LSsJdngJKCRjMCwkYzAsJGMxKTsKLSsJdngJKCRkMCwkZDAsJGQxKTsKLSsKLSsJdnN0bQkoJGEw LCRkMCwiMCgkb3V0KSIpOwotKwotKwlsYQkoJGlucCwiMHg0MCgkaW5wKSIpOwotKwlsYQkoJG91 dCwiMHg0MCgkb3V0KSIpOwotKyZ7JHo/CVwmYWdoaTpcJmFoaX0JKCRsZW4sLTB4NDApOwotKwlq ZQkoIi5MZG9uZV92eCIpOwotKwotKwl2YWYJKCRhNCwkYTQsQEtbMF0pOwotKwl2YWYJKCRiNCwk YjQsQEtbMV0pOwotKwl2YWYJKCRjNCwkYzQsQEtbMl0pOwotKwl2YWYJKCRkNCwkZDQsJGQzKTsJ CQkjICtLWzNdKzQKLSsJdmFmCSgkZDMsJGQzLCR0MSk7CQkJIyBLWzNdKzUKLSsJdmFmCShAS1sz XSwkZDIsJHQzKTsJCSMgS1szXSs9NgotKwotKwl2cGVybQkoJGEwLCRhNCwkYTQsJGJlcGVybSk7 Ci0rCXZwZXJtCSgkYjAsJGI0LCRiNCwkYmVwZXJtKTsKLSsJdnBlcm0JKCRjMCwkYzQsJGM0LCRi ZXBlcm0pOwotKwl2cGVybQkoJGQwLCRkNCwkZDQsJGJlcGVybSk7Ci0rCi0rJnskej8JXCZjbGdm aTpcJmNsZml9CSgkbGVuLDB4NDApOwotKwlqbAkoIi5MdGFpbF92eCIpOwotKwotKwl2bG0JKCRh MSwkZDEsIjAoJGlucCkiKTsKLSsKLSsJdngJKCRhMCwkYTAsJGExKTsKLSsJdngJKCRiMCwkYjAs JGIxKTsKLSsJdngJKCRjMCwkYzAsJGMxKTsKLSsJdngJKCRkMCwkZDAsJGQxKTsKLSsKLSsJdnN0 bQkoJGEwLCRkMCwiMCgkb3V0KSIpOwotKwotKwlsYQkoJGlucCwiMHg0MCgkaW5wKSIpOwotKwls YQkoJG91dCwiMHg0MCgkb3V0KSIpOwotKyZ7JHo/CVwmYWdoaTpcJmFoaX0JKCRsZW4sLTB4NDAp OwotKwlqZQkoIi5MZG9uZV92eCIpOwotKwotKwl2YWYJKCRhNSwkYTUsQEtbMF0pOwotKwl2YWYJ KCRiNSwkYjUsQEtbMV0pOwotKwl2YWYJKCRjNSwkYzUsQEtbMl0pOwotKwl2YWYJKCRkNSwkZDUs JGQzKTsJCQkjICtLWzNdKzUKLSsKLSsJdnBlcm0JKCRhMCwkYTUsJGE1LCRiZXBlcm0pOwotKwl2 cGVybQkoJGIwLCRiNSwkYjUsJGJlcGVybSk7Ci0rCXZwZXJtCSgkYzAsJGM1LCRjNSwkYmVwZXJt KTsKLSsJdnBlcm0JKCRkMCwkZDUsJGQ1LCRiZXBlcm0pOwotKwotKyZ7JHo/CVwmY2xnZmk6XCZj bGZpfSAoJGxlbiwweDQwKTsKLSsJamwJKCIuTHRhaWxfdngiKTsKLSsKLSsJdmxtCSgkYTEsJGQx LCIwKCRpbnApIik7Ci0rCi0rCXZ4CSgkYTAsJGEwLCRhMSk7Ci0rCXZ4CSgkYjAsJGIwLCRiMSk7 Ci0rCXZ4CSgkYzAsJGMwLCRjMSk7Ci0rCXZ4CSgkZDAsJGQwLCRkMSk7Ci0rCi0rCXZzdG0JKCRh MCwkZDAsIjAoJG91dCkiKTsKLSsKLSsJbGEJKCRpbnAsIjB4NDAoJGlucCkiKTsKLSsJbGEJKCRv dXQsIjB4NDAoJG91dCkiKTsKLSsJbGhpCSgiJXIwIiwxMCk7Ci0rJnskej8JXCZhZ2hpOlwmYWhp fQkoJGxlbiwtMHg0MCk7Ci0rCWpuZQkoIi5Mb29wX291dGVyX3Z4Iik7Ci0rCi0rTEFCRUwJKCIu TGRvbmVfdngiKTsKLStpZiAoISR6KSB7Ci0rCWxkCSgiJWY0IiwiJEZSQU1FKzE2KiRTSVpFX1Qr Mio4KCRzcCkiKTsKLSsJbGQJKCIlZjYiLCIkRlJBTUUrMTYqJFNJWkVfVCszKjgoJHNwKSIpOwot K30gZWxzZSB7Ci0rCWxkCSgiJWY4IiwiJEZSQU1FLTgqOCgkc3ApIik7Ci0rCWxkCSgiJWY5Iiwi JEZSQU1FLTgqNygkc3ApIik7Ci0rCWxkCSgiJWYxMCIsIiRGUkFNRS04KjYoJHNwKSIpOwotKwls ZAkoIiVmMTEiLCIkRlJBTUUtOCo1KCRzcCkiKTsKLSsJbGQJKCIlZjEyIiwiJEZSQU1FLTgqNCgk c3ApIik7Ci0rCWxkCSgiJWYxMyIsIiRGUkFNRS04KjMoJHNwKSIpOwotKwlsZAkoIiVmMTQiLCIk RlJBTUUtOCoyKCRzcCkiKTsKLSsJbGQJKCIlZjE1IiwiJEZSQU1FLTgqMSgkc3ApIik7Ci0rfQot KyZ7JHo/CVwmbG1nOlwmbG19CSgiJXI2IiwiJXI3IiwiJEZSQU1FKzYqJFNJWkVfVCgkc3ApIik7 Ci0rCWxhCSgkc3AsIiRGUkFNRSgkc3ApIik7Ci0rCWJyCSgiJXIxNCIpOwotKwotK0FMSUdOCSgx Nik7Ci0rTEFCRUwJKCIuTHRhaWxfdngiKTsKLStpZiAoISR6KSB7Ci0rCWxkCSgiJWY0IiwiJEZS QU1FKzE2KiRTSVpFX1QrMio4KCRzcCkiKTsKLSsJbGQJKCIlZjYiLCIkRlJBTUUrMTYqJFNJWkVf VCszKjgoJHNwKSIpOwotK30gZWxzZSB7Ci0rCWxkCSgiJWY4IiwiJEZSQU1FLTgqOCgkc3ApIik7 Ci0rCWxkCSgiJWY5IiwiJEZSQU1FLTgqNygkc3ApIik7Ci0rCWxkCSgiJWYxMCIsIiRGUkFNRS04 KjYoJHNwKSIpOwotKwlsZAkoIiVmMTEiLCIkRlJBTUUtOCo1KCRzcCkiKTsKLSsJbGQJKCIlZjEy IiwiJEZSQU1FLTgqNCgkc3ApIik7Ci0rCWxkCSgiJWYxMyIsIiRGUkFNRS04KjMoJHNwKSIpOwot KwlsZAkoIiVmMTQiLCIkRlJBTUUtOCoyKCRzcCkiKTsKLSsJbGQJKCIlZjE1IiwiJEZSQU1FLTgq MSgkc3ApIik7Ci0rfQotKwl2c3RtCSgkYTAsJGQwLCIkc3RkZnJhbWUoJHNwKSIpOwotKwlsZ2hp CSgiJXIxIiwwKTsKLSsKLStMQUJFTAkoIi5Mb29wX3RhaWxfdngiKTsKLSsJbGxnYwkoIiVyNSIs IjAoJXIxLCRpbnApIik7Ci0rCWxsZ2MJKCIlcjYiLCIkc3RkZnJhbWUoJXIxLCRzcCkiKTsKLSsJ eHIJKCIlcjYiLCIlcjUiKTsKLSsJc3RjCSgiJXI2IiwiMCglcjEsJG91dCkiKTsKLSsJbGEJKCIl cjEiLCIxKCVyMSkiKTsKLSsJYnJjdAkoJGxlbiwiLkxvb3BfdGFpbF92eCIpOwotKwotKyZ7JHo/ CVwmbG1nOlwmbG19CSgiJXI2IiwiJXI3IiwiJEZSQU1FKzYqJFNJWkVfVCgkc3ApIik7Ci0rCWxh CSgkc3AsIiRGUkFNRSgkc3ApIik7Ci0rCWJyCSgiJXIxNCIpOwotK1NJWkUJKCJDaGFDaGEyMF9j dHIzMl92eCIsIi4tQ2hhQ2hhMjBfY3RyMzJfdngiKTsKLSt9Ci0rIyMjIyMjIyMjIyMjIyMjIwot KwotK0FMSUdOCSgzMik7Ci0rTEFCRUwJKCIuTHNpZ21hIik7Ci0rTE9ORwkoMHg2MTcwNzg2NSww eDMzMjA2NDZlLDB4Nzk2MjJkMzIsMHg2YjIwNjU3NCk7CSMgZW5kaWFuLW5ldXRyYWwgc2lnbWEK LStMT05HCSgxLDAsMCwwKTsKLStMT05HCSgyLDAsMCwwKTsKLStMT05HCSgzLDAsMCwwKTsKLStM T05HCSgweDAzMDIwMTAwLDB4MDcwNjA1MDQsMHgwYjBhMDkwOCwweDBmMGUwZDBjKTsJIyBieXRl IHN3YXAKLSsKLStMT05HCSgwLDEsMiwzKTsKLStMT05HCSgweDYxNzA3ODY1LDB4NjE3MDc4NjUs MHg2MTcwNzg2NSwweDYxNzA3ODY1KTsJIyBzbWFzaGVkIHNpZ21hCi0rTE9ORwkoMHgzMzIwNjQ2 ZSwweDMzMjA2NDZlLDB4MzMyMDY0NmUsMHgzMzIwNjQ2ZSk7Ci0rTE9ORwkoMHg3OTYyMmQzMiww eDc5NjIyZDMyLDB4Nzk2MjJkMzIsMHg3OTYyMmQzMik7Ci0rTE9ORwkoMHg2YjIwNjU3NCwweDZi MjA2NTc0LDB4NmIyMDY1NzQsMHg2YjIwNjU3NCk7Ci0rCi0rQVNDSVoJKCJcIkNoYUNoYTIwIGZv ciBzMzkweCwgQ1JZUFRPR0FNUyBieSA8YXBwcm9cQG9wZW5zc2wub3JnPlwiIik7Ci0rQUxJR04J KDQpOwotKwotK1BFUkxBU01fRU5EKCk7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZS9jcnlwdG8v cGVybGFzbS9zMzkweC5wbS5zMzkweC11cGRhdGUgb3BlbnNzbC0xLjEuMWUvY3J5cHRvL3Blcmxh c20vczM5MHgucG0KLS0tLSBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vcGVybGFzbS9zMzkweC5wbS5z MzkweC11cGRhdGUJMjAyMC0wMy0xOSAxNjoyMDoyMi4wMzkyMjczOTQgKzAxMDAKLSsrKyBvcGVu c3NsLTEuMS4xZS9jcnlwdG8vcGVybGFzbS9zMzkweC5wbQkyMDIwLTAzLTE5IDE2OjIwOjIyLjAz OTIyNzM5NCArMDEwMAotQEAgLTAsMCArMSwzMDYwIEBACi0rIyEvdXNyL2Jpbi9lbnYgcGVybAot KyMgQ29weXJpZ2h0IDIwMTggVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRz IFJlc2VydmVkLgotKyMKLSsjIExpY2Vuc2VkIHVuZGVyIHRoZSBPcGVuU1NMIGxpY2Vuc2UgKHRo ZSAiTGljZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCi0rIyB0aGlzIGZpbGUgZXhjZXB0IGluIGNv bXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gIFlvdSBjYW4gb2J0YWluIGEgY29weQotKyMgaW4g dGhlIGZpbGUgTElDRU5TRSBpbiB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBvciBhdAotKyMgaHR0 cHM6Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2UuaHRtbAotKwotKyMgQ29weXJpZ2h0 IElCTSBDb3JwLiAyMDE4Ci0rIyBBdXRob3I6IFBhdHJpY2sgU3RldWVyIDxwYXRyaWNrLnN0ZXVl ckBkZS5pYm0uY29tPgotKwotK3BhY2thZ2UgcGVybGFzbTo6czM5MHg7Ci0rCi0rdXNlIHN0cmlj dDsKLSt1c2Ugd2FybmluZ3M7Ci0rdXNlIENhcnAgcXcoY29uZmVzcyk7Ci0rdXNlIEV4cG9ydGVy IHF3KGltcG9ydCk7Ci0rCi0rb3VyIEBFWFBPUlQ9cXcoUEVSTEFTTV9CRUdJTiBQRVJMQVNNX0VO RCk7Ci0rb3VyIEBFWFBPUlRfT0s9cXcoQVVUT0xPQUQgTEFCRUwgSU5DTFVERSBzdGZsZSk7Ci0r b3VyICVFWFBPUlRfVEFHUz0oCi0rCU1TQSA9PiBbcXcoa21hYyBrbSBrbWMga2ltZCBrbG1kKV0s Ci0rCU1TQTQgPT4gW3F3KGttZiBrbW8gcGNjIGttY3RyKV0sCi0rCU1TQTUgPT4gW3F3KHBwbm8g cHJubyldLAotKwlNU0E4ID0+IFtxdyhrbWEpXSwKLSsJVlggPT4gW3F3KHZnZWYgdmdlZyB2Z2Jt IHZ6ZXJvIHZvbmUgdmdtIHZnbWIgdmdtaCB2Z21mIHZnbWcKLSsJICAgIHZsIHZsciB2bHJlcCB2 bHJlcGIgdmxyZXBoIHZscmVwZiB2bHJlcGcgdmxlYiB2bGVoIHZsZWYgdmxlZyB2bGVpYgotKwkg ICAgdmxlaWggdmxlaWYgdmxlaWcgdmxndiB2bGd2YiB2bGd2aCB2bGd2ZiB2bGd2ZyB2bGxleiB2 bGxlemIgdmxsZXpoCi0rCSAgICB2bGxlemYgdmxsZXpnIHZsbSB2bGJiIHZsdmcgdmx2Z2Igdmx2 Z2ggdmx2Z2Ygdmx2Z2cgdmx2Z3AKLSsJICAgIHZsbCB2bXJoIHZtcmhiIHZtcmhoIHZtcmhmIHZt cmhnIHZtcmwgdm1ybGIgdm1ybGggdm1ybGYgdm1ybGcgdnBrCi0rCSAgICB2cGtoIHZwa2YgdnBr ZyB2cGtzIHZwa3NoIHZwa3NmIHZwa3NnIHZwa3NocyB2cGtzZnMgdnBrc2dzIHZwa2xzCi0rCSAg ICB2cGtsc2ggdnBrbHNmIHZwa2xzZyB2cGtsc2hzIHZwa2xzZnMgdnBrbHNncyB2cGVybSB2cGRp IHZyZXAgdnJlcGIKLSsJICAgIHZyZXBoIHZyZXBmIHZyZXBnIHZyZXBpIHZyZXBpYiB2cmVwaWgg dnJlcGlmIHZyZXBpZyB2c2NlZiB2c2NlZwotKwkgICAgdnNlbCB2c2VnIHZzZWdiIHZzZWdoIHZz ZWdmIHZzdCB2c3RlYiB2c3RlaCB2c3RlZiB2c3RlZyB2c3RtIHZzdGwKLSsJICAgIHZ1cGggdnVw aGIgdnVwaGggdnVwaGYgdnVwbGggdnVwbGhiIHZ1cGxoaCB2dXBsaGYgdnVwbCB2dXBsYiB2dXBs aHcKLSsJICAgIHZ1cGxmIHZ1cGxsIHZ1cGxsYiB2dXBsbGggdnVwbGxmIHZhIHZhYiB2YWggdmFm IHZhZyB2YXEgdmFjYyB2YWNjYgotKwkgICAgdmFjY2ggdmFjY2YgdmFjY2cgdmFjY3EgdmFjIHZh Y3EgdmFjY2MgdmFjY2NxIHZuIHZuYyB2YXZnIHZhdmdiCi0rCSAgICB2YXZnaCB2YXZnZiB2YXZn ZyB2YXZnbCB2YXZnbGIgdmF2Z2xoIHZhdmdsZiB2YXZnbGcgdmNrc20gdmVjXyB2ZWNiCi0rCSAg ICB2ZWNoIHZlY2YgdmVjZyB2ZWNsIHZlY2xiIHZlY2xoIHZlY2xmIHZlY2xnIHZjZXEgdmNlcWIg dmNlcWggdmNlcWYKLSsJICAgIHZjZXFnIHZjZXFicyB2Y2VxaHMgdmNlcWZzIHZjZXFncyB2Y2gg dmNoYiB2Y2hoIHZjaGYgdmNoZyB2Y2hicwotKwkgICAgdmNoaHMgdmNoZnMgdmNoZ3MgdmNobCB2 Y2hsYiB2Y2hsaCB2Y2hsZiB2Y2hsZyB2Y2hsYnMgdmNobGhzIHZjaGxmcwotKwkgICAgdmNobGdz IHZjbHogdmNsemIgdmNsemggdmNsemYgdmNsemcgdmN0eiB2Y3R6YiB2Y3R6aCB2Y3R6ZiB2Y3R6 ZwotKwkgICAgdnggdmdmbSB2Z2ZtYiB2Z2ZtaCB2Z2ZtZiB2Z2ZtZyB2Z2ZtYSB2Z2ZtYWIgdmdm bWFoIHZnZm1hZiB2Z2ZtYWcKLSsJICAgIHZsYyB2bGNiIHZsY2ggdmxjZiB2bGNnIHZscCB2bHBi IHZscGggdmxwZiB2bHBnIHZteCB2bXhiIHZteGggdm14ZgotKwkgICAgdm14ZyB2bXhsIHZteGxi IHZteGxoIHZteGxmIHZteGxnIHZtbiB2bW5iIHZtbmggdm1uZiB2bW5nIHZtbmwKLSsJICAgIHZt bmxiIHZtbmxoIHZtbmxmIHZtbmxnIHZtYWwgdm1hbGIgdm1hbGh3IHZtYWxmIHZtYWggdm1haGIg dm1haGgKLSsJICAgIHZtYWhmIHZtYWxoIHZtYWxoYiB2bWFsaGggdm1hbGhmIHZtYWUgdm1hZWIg dm1hZWggdm1hZWYgdm1hbGUKLSsJICAgIHZtYWxlYiB2bWFsZWggdm1hbGVmIHZtYW8gdm1hb2Ig dm1hb2ggdm1hb2Ygdm1hbG8gdm1hbG9iIHZtYWxvaAotKwkgICAgdm1hbG9mIHZtaCB2bWhiIHZt aGggdm1oZiB2bWxoIHZtbGhiIHZtbGhoIHZtbGhmIHZtbCB2bWxiIHZtbGh3Ci0rCSAgICB2bWxm IHZtZSB2bWViIHZtZWggdm1lZiB2bWxlIHZtbGViIHZtbGVoIHZtbGVmIHZtbyB2bW9iIHZtb2gg dm1vZgotKwkgICAgdm1sbyB2bWxvYiB2bWxvaCB2bWxvZiB2bm8gdm5vdCB2byB2cG9wY3QgdmVy bGx2IHZlcmxsdmIgdmVybGx2aAotKwkgICAgdmVybGx2ZiB2ZXJsbHZnIHZlcmxsIHZlcmxsYiB2 ZXJsbGggdmVybGxmIHZlcmxsZyB2ZXJpbSB2ZXJpbWIKLSsJICAgIHZlcmltaCB2ZXJpbWYgdmVy aW1nIHZlc2x2IHZlc2x2YiB2ZXNsdmggdmVzbHZmIHZlc2x2ZyB2ZXNsIHZlc2xiCi0rCSAgICB2 ZXNsaCB2ZXNsZiB2ZXNsZyB2ZXNyYXYgdmVzcmF2YiB2ZXNyYXZoIHZlc3JhdmYgdmVzcmF2ZyB2 ZXNyYQotKwkgICAgdmVzcmFiIHZlc3JhaCB2ZXNyYWYgdmVzcmFnIHZlc3JsdiB2ZXNybHZiIHZl c3JsdmggdmVzcmx2ZiB2ZXNybHZnCi0rCSAgICB2ZXNybCB2ZXNybGIgdmVzcmxoIHZlc3JsZiB2 ZXNybGcgdnNsIHZzbGIgdnNsZGIgdnNyYSB2c3JhYiB2c3JsCi0rCSAgICB2c3JsYiB2cyB2c2Ig dnNoIHZzZiB2c2cgdnNxIHZzY2JpIHZzY2JpYiB2c2NiaWggdnNjYmlmIHZzY2JpZwotKwkgICAg dnNjYmlxIHZzYmkgdnNiaXEgdnNiY2JpIHZzYmNiaXEgdnN1bWcgdnN1bWdoIHZzdW1nZiB2c3Vt cSB2c3VtcWYKLSsJICAgIHZzdW1xZyB2c3VtIHZzdW1iIHZzdW1oIHZ0bSB2ZmFlIHZmYWViIHZm YWVoIHZmYWVmIHZmYWVicyB2ZmFlaHMKLSsJICAgIHZmYWVmcyB2ZmFlemIgdmZhZXpoIHZmYWV6 ZiB2ZmFlemJzIHZmYWV6aHMgdmZhZXpmcyB2ZmVlIHZmZWViCi0rCSAgICB2ZmVlaCB2ZmVlZiB2 ZmVlYnMgdmZlZWhzIHZmZWVmcyB2ZmVlemIgdmZlZXpoIHZmZWV6ZiB2ZmVlemJzCi0rCSAgICB2 ZmVlemhzIHZmZWV6ZnMgdmZlbmUgdmZlbmViIHZmZW5laCB2ZmVuZWYgdmZlbmVicyB2ZmVuZWhz IHZmZW5lZnMKLSsJICAgIHZmZW5lemIgdmZlbmV6aCB2ZmVuZXpmIHZmZW5lemJzIHZmZW5lemhz IHZmZW5lemZzIHZpc3RyIHZpc3RyYgotKwkgICAgdmlzdHJoIHZpc3RyZiB2aXN0cmJzIHZpc3Ry aHMgdmlzdHJmcyB2c3RyYyB2c3RyY2IgdnN0cmNoIHZzdHJjZgotKwkgICAgdnN0cmNicyB2c3Ry Y2hzIHZzdHJjZnMgdnN0cmN6YiB2c3RyY3poIHZzdHJjemYgdnN0cmN6YnMgdnN0cmN6aHMKLSsJ ICAgIHZzdHJjemZzIHZmYSB2ZmFkYiB3ZmFkYiB3ZmMgd2ZjZGIgd2ZrIHdma2RiIHZmY2UgdmZj ZWRiIHdmY2VkYgotKwkgICAgdmZjZWRicyB3ZmNlZGJzIHZmY2ggdmZjaGRiIHdmY2hkYiB2ZmNo ZGJzIHdmY2hkYnMgdmZjaGUgdmZjaGVkYgotKwkgICAgd2ZjaGVkYiB2ZmNoZWRicyB3ZmNoZWRi cyB2Y2RnIHZjZGdiIHdjZGdiIHZjZGxnIHZjZGxnYiB3Y2RsZ2IgdmNnZAotKwkgICAgdmNnZGIg d2NnZGIgdmNsZ2QgdmNsZ2RiIHdjbGdkYiB2ZmQgdmZkZGIgd2ZkZGIgdmZpIHZmaWRiIHdmaWRi Ci0rCSAgICB2bGRlIHZsZGViIHdsZGViIHZsZWQgdmxlZGIgd2xlZGIgdmZtIHZmbWRiIHdmbWRi IHZmbWEgdmZtYWRiCi0rCSAgICB3Zm1hZGIgdmZtcyB2Zm1zZGIgd2Ztc2RiIHZmcHNvIHZmcHNv ZGIgd2Zwc29kYiB2ZmxjZGIgd2ZsY2RiCi0rCSAgICB2ZmxuZGIgd2ZsbmRiIHZmbHBkYiB3Zmxw ZGIgdmZzcSB2ZnNxZGIgd2ZzcWRiIHZmcyB2ZnNkYiB3ZnNkYgotKwkgICAgdmZ0Y2kgdmZ0Y2lk YiB3ZnRjaWRiKV0sCi0rCVZYRSA9PiBbcXcodmJwZXJtIHZsbGV6bGYgdm1zbCB2bXNsZyB2bngg dm5uIHZvYyB2cG9wY3RiIHZwb3BjdGgKLSsJICAgIHZwb3BjdGYgdnBvcGN0ZyB2ZmFzYiB3ZmFz YiB3ZmF4YiB3ZmNzYiB3ZmN4YiB3ZmtzYiB3Zmt4YiB2ZmNlc2IKLSsJICAgIHZmY2VzYnMgd2Zj ZXNiIHdmY2VzYnMgd2ZjZXhiIHdmY2V4YnMgdmZjaHNiIHZmY2hzYnMgd2ZjaHNiIHdmY2hzYnMK LSsJICAgIHdmY2h4YiB3ZmNoeGJzIHZmY2hlc2IgdmZjaGVzYnMgd2ZjaGVzYiB3ZmNoZXNicyB3 ZmNoZXhiIHdmY2hleGJzCi0rCSAgICB2ZmRzYiB3ZmRzYiB3ZmR4YiB2ZmlzYiB3ZmlzYiB3Zml4 YiB2ZmxsIHZmbGxzIHdmbGxzIHdmbGxkIHZmbHIKLSsJICAgIHZmbHJkIHdmbHJkIHdmbHJ4IHZm bWF4IHZmbWF4c2IgdmZtYXhkYiB3Zm1heHNiIHdmbWF4ZGIgd2ZtYXh4YgotKwkgICAgdmZtaW4g dmZtaW5zYiB2Zm1pbmRiIHdmbWluc2Igd2ZtaW5kYiB3Zm1pbnhiIHZmbXNiIHdmbXNiIHdmbXhi Ci0rCSAgICB2Zm5tYSB2Zm5tcyB2Zm1hc2Igd2ZtYXNiIHdmbWF4YiB2Zm1zc2Igd2Ztc3NiIHdm bXN4YiB2Zm5tYXNiCi0rCSAgICB2Zm5tYWRiIHdmbm1hc2Igd2ZubWFkYiB3Zm5tYXhiIHZmbm1z c2IgdmZubXNkYiB3Zm5tc3NiIHdmbm1zZGIKLSsJICAgIHdmbm1zeGIgdmZwc29zYiB3ZnBzb3Ni IHZmbGNzYiB3Zmxjc2IgdmZsbnNiIHdmbG5zYiB2Zmxwc2Igd2ZscHNiCi0rCSAgICB2ZnBzb3hi IHdmcHNveGIgdmZsY3hiIHdmbGN4YiB2ZmxueGIgd2ZsbnhiIHZmbHB4YiB3ZmxweGIgdmZzcXNi Ci0rCSAgICB3ZnNxc2Igd2ZzcXhiIHZmc3NiIHdmc3NiIHdmc3hiIHZmdGNpc2Igd2Z0Y2lzYiB3 ZnRjaXhiKV0sCi0rCVZYRCA9PiBbcXcodmxybHIgdmxybCB2c3RybHIgdnN0cmwgdmFwIHZjcCB2 Y3ZiIHZjdmJnIHZjdmQgdmN2ZGcgdmRwCi0rCSAgICB2bGlwIHZtcCB2bXNwIHZwa3ogdnBzb3Ag dnJwIHZzZHAgdnNycCB2c3AgdnRwIHZ1cGt6KV0sCi0rKTsKLStFeHBvcnRlcjo6ZXhwb3J0X29r X3RhZ3MocXcoTVNBIE1TQTQgTVNBNSBNU0E4IFZYIFZYRSBWWEQpKTsKLSsKLStvdXIgJEFVVE9M T0FEOwotKwotK215ICRHUj0nKD86JXIpPyhbMC05XXwxWzAtNV0pJzsKLStteSAkVlI9Jyg/OiV2 KT8oWzAtOV18MVswLTldfDJbMC05XXwzWzAtMV0pJzsKLSsKLStteSAoJGZpbGUsJG91dCk7Ci0r Ci0rc3ViIFBFUkxBU01fQkVHSU4KLSt7Ci0rCSgkZmlsZSwkb3V0KT0oc2hpZnQsIiIpOwotK30K LStzdWIgUEVSTEFTTV9FTkQKLSt7Ci0rCWlmIChkZWZpbmVkKCRmaWxlKSkgewotKwkJb3Blbiht eSAkZmQsJz4nLCRmaWxlKXx8ZGllKCJjYW4ndCBvcGVuICRmaWxlOiAkISIpOwotKwkJcHJpbnQo eyRmZH0kb3V0KTsKLSsJCWNsb3NlKCRmZCk7Ci0rCX0gZWxzZSB7Ci0rCQlwcmludCgkb3V0KTsK LSsJfQotK30KLSsKLStzdWIgQVVUT0xPQUQgewotKwljb25mZXNzKGVycigiUEFSU0UiKSkgaWYg KGdyZXAoIWRlZmluZWQoJF8pLEBfKSk7Ci0rCW15ICR0b2tlbjsKLSsJZm9yICgkQVVUT0xPQUQp IHsKLSsJCSR0b2tlbj0iLiQxIiBpZiAoL14uKjo6KFtBLVpfXSspJC8pOwkjIHVwcGVyY2FzZTog ZGlyZWN0aXZlCi0rCQkkdG9rZW49Ilx0JDEiIGlmICgvXi4qOjooW2Etel0rKSQvKTsJIyBsb3dl cmNhc2U6IG1uZW1vbmljCi0rCQljb25mZXNzKGVycigiUEFSU0UiKSkgaWYgKCFkZWZpbmVkKCR0 b2tlbikpOwotKwl9Ci0rCSR0b2tlbi49Ilx0IiBpZiAoJCNfPj0wKTsKLSsJJG91dC49JHRva2Vu LmpvaW4oJywnLEBfKS4iXG4iOwotK30KLSsKLStzdWIgTEFCRUwgewkJCQkJCSMgbGFiZWwgZGly ZWN0aXZlCi0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9MCk7Ci0rCW15ICgkbGFi ZWwpPUBfOwotKwkkb3V0Lj0iJGxhYmVsOlxuIjsKLSt9Ci0rCi0rc3ViIElOQ0xVREUgewotKwlj b25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTApOwotKwlteSAoJGZpbGUpPUBfOwotKwkk b3V0Lj0iI2luY2x1ZGUgXCIkZmlsZVwiXG4iOwotK30KLSsKLSsjCi0rIyBNbmVtb25pY3MKLSsj Ci0rCi0rc3ViIHN0ZmxlIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0wKTsK LSsJUygweGIyYjAsQF8pOwotK30KLSsKLSsjIE1TQQotKwotK3N1YiBrbWFjIHsKLSsJY29uZmVz cyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0xKTsKLSsJUlJFKDB4YjkxZSxAXyk7Ci0rfQotKwot K3N1YiBrbSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9MSk7Ci0rCVJSRSgw eGI5MmUsQF8pOwotK30KLSsKLStzdWIga21jIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBp ZiAoJCNfIT0xKTsKLSsJUlJFKDB4YjkyZixAXyk7Ci0rfQotKwotK3N1YiBraW1kIHsKLSsJY29u ZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0xKTsKLSsJUlJFKDB4YjkzZSxAXyk7Ci0rfQot KwotK3N1YiBrbG1kIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0xKTsKLSsJ UlJFKDB4YjkzZixAXyk7Ci0rfQotKwotKyMgTVNBNAotKwotK3N1YiBrbWYgewotKwljb25mZXNz KGVycigiQVJHTlVNIikpIGlmICgkI18hPTEpOwotKwlSUkUoMHhiOTJhLEBfKTsKLSt9Ci0rCi0r c3ViIGttbyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9MSk7Ci0rCVJSRSgw eGI5MmIsQF8pOwotK30KLSsKLStzdWIgcGNjIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBp ZiAoJCNfIT0tMSk7Ci0rCVJSRSgweGI5MmMsQF8pOwotK30KLSsKLStzdWIga21jdHIgewotKwlj b25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlSUkZiKDB4YjkyZCxAXyk7Ci0r fQotKwotKyMgTVNBNQotKwotK3N1YiBwcm5vIHsKLSsJcHBubyhAXyk7Ci0rfQotKwotK3N1YiBw cG5vIHsJCQkJCQkjIGRlcHJlY2F0ZWQsIHVzZSBwcm5vCi0rCWNvbmZlc3MoZXJyKCJBUkdOVU0i KSkgaWYgKCQjXyE9MSk7Ci0rCVJSRSgweGI5M2MsQF8pOwotK30KLSsKLSsjIE1TQTgKLSsKLStz dWIga21hIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJUlJGYigw eGI5MjksQF8pOwotK30KLSsKLSsjIFZYIC0gU3VwcG9ydCBJbnN0cnVjdGlvbnMKLSsKLStzdWIg dmdlZiB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZSVigweGU3 MTMsQF8pOwotK30KLStzdWIgdmdlZyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQj XyE9Mik7Ci0rCVZSVigweGU3MTIsQF8pOwotK30KLSsKLStzdWIgdmdibSB7Ci0rCWNvbmZlc3Mo ZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9MSk7Ci0rCVZSSWEoMHhlNzQ0LEBfKTsKLSt9Ci0rc3Vi IHZ6ZXJvIHsKLSsJdmdibShAXywwKTsKLSt9Ci0rc3ViIHZvbmUgewotKwl2Z2JtKEBfLDB4ZmZm Zik7Ci0rfQotKwotK3N1YiB2Z20gewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18h PTMpOwotKwlWUkliKDB4ZTc0NixAXyk7Ci0rfQotK3N1YiB2Z21iIHsKLSsJdmdtKEBfLDApOwot K30KLStzdWIgdmdtaCB7Ci0rCXZnbShAXywxKTsKLSt9Ci0rc3ViIHZnbWYgewotKwl2Z20oQF8s Mik7Ci0rfQotK3N1YiB2Z21nIHsKLSsJdmdtKEBfLDMpOwotK30KLSsKLStzdWIgdmwgewotKwlj b25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI188MXx8JCNfPjIpOwotKwlWUlgoMHhlNzA2LEBf KTsKLSt9Ci0rCi0rc3ViIHZsciB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9 MSk7Ci0rCVZSUmEoMHhlNzU2LEBfKTsKLSt9Ci0rCi0rc3ViIHZscmVwIHsKLSsJY29uZmVzcyhl cnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJYKDB4ZTcwNSxAXyk7Ci0rfQotK3N1YiB2 bHJlcGIgewotKwl2bHJlcChAXywwKTsKLSt9Ci0rc3ViIHZscmVwaCB7Ci0rCXZscmVwKEBfLDEp OwotK30KLStzdWIgdmxyZXBmIHsKLSsJdmxyZXAoQF8sMik7Ci0rfQotK3N1YiB2bHJlcGcgewot Kwl2bHJlcChAXywzKTsKLSt9Ci0rCi0rc3ViIHZsZWIgewotKwljb25mZXNzKGVycigiQVJHTlVN IikpIGlmICgkI18hPTIpOwotKwlWUlgoMHhlNzAwLEBfKTsKLSt9Ci0rc3ViIHZsZWggewotKwlj b25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlWUlgoMHhlNzAxLEBfKTsKLSt9 Ci0rc3ViIHZsZWYgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlW UlgoMHhlNzAzLEBfKTsKLSt9Ci0rc3ViIHZsZWcgewotKwljb25mZXNzKGVycigiQVJHTlVNIikp IGlmICgkI18hPTIpOwotKwlWUlgoMHhlNzAyLEBfKTsKLSt9Ci0rCi0rc3ViIHZsZWliIHsKLSsJ Y29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJJYSgweGU3NDAsQF8pOwot K30KLStzdWIgdmxlaWggewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwot KwlWUklhKDB4ZTc0MSxAXyk7Ci0rfQotK3N1YiB2bGVpZiB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdO VU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZSSWEoMHhlNzQzLEBfKTsKLSt9Ci0rc3ViIHZsZWlnIHsK LSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJJYSgweGU3NDIsQF8p OwotK30KLSsKLStzdWIgdmxndiB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9 Myk7Ci0rCVZSU2MoMHhlNzIxLEBfKTsKLSt9Ci0rc3ViIHZsZ3ZiIHsKLSsJdmxndihAXywwKTsK LSt9Ci0rc3ViIHZsZ3ZoIHsKLSsJdmxndihAXywxKTsKLSt9Ci0rc3ViIHZsZ3ZmIHsKLSsJdmxn dihAXywyKTsKLSt9Ci0rc3ViIHZsZ3ZnIHsKLSsJdmxndihAXywzKTsKLSt9Ci0rCi0rc3ViIHZs bGV6IHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJYKDB4ZTcw NCxAXyk7Ci0rfQotK3N1YiB2bGxlemIgewotKwl2bGxleihAXywwKTsKLSt9Ci0rc3ViIHZsbGV6 aCB7Ci0rCXZsbGV6KEBfLDEpOwotK30KLStzdWIgdmxsZXpmIHsKLSsJdmxsZXooQF8sMik7Ci0r fQotK3N1YiB2bGxlemcgewotKwl2bGxleihAXywzKTsKLSt9Ci0rCi0rc3ViIHZsbSB7Ci0rCWNv bmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXzwyfHwkI18+Myk7Ci0rCVZSU2EoMHhlNzM2LEBf KTsKLSt9Ci0rCi0rc3ViIHZsYmIgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18h PTIpOwotKwlWUlgoMHhlNzA3LEBfKTsKLSt9Ci0rCi0rc3ViIHZsdmcgewotKwljb25mZXNzKGVy cigiQVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlNiKDB4ZTcyMixAXyk7Ci0rfQotK3N1YiB2 bHZnYiB7Ci0rCXZsdmcoQF8sMCk7Ci0rfQotK3N1YiB2bHZnaCB7Ci0rCXZsdmcoQF8sMSk7Ci0r fQotK3N1YiB2bHZnZiB7Ci0rCXZsdmcoQF8sMik7Ci0rfQotK3N1YiB2bHZnZyB7Ci0rCXZsdmco QF8sMyk7Ci0rfQotKwotK3N1YiB2bHZncCB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYg KCQjXyE9Mik7Ci0rCVZSUmYoMHhlNzYyLEBfKTsKLSt9Ci0rCi0rc3ViIHZsbCB7Ci0rCWNvbmZl c3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZSU2IoMHhlNzM3LEBfKTsKLSt9Ci0r Ci0rc3ViIHZtcmggewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlW UlJjKDB4ZTc2MSxAXyk7Ci0rfQotK3N1YiB2bXJoYiB7Ci0rCXZtcmgoQF8sMCk7Ci0rfQotK3N1 YiB2bXJoaCB7Ci0rCXZtcmgoQF8sMSk7Ci0rfQotK3N1YiB2bXJoZiB7Ci0rCXZtcmgoQF8sMik7 Ci0rfQotK3N1YiB2bXJoZyB7Ci0rCXZtcmgoQF8sMyk7Ci0rfQotKwotK3N1YiB2bXJsIHsKLSsJ Y29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0zKTsKLSsJVlJSYygweGU3NjAsQF8pOwot K30KLStzdWIgdm1ybGIgewotKwl2bXJsKEBfLDApOwotK30KLStzdWIgdm1ybGggewotKwl2bXJs KEBfLDEpOwotK30KLStzdWIgdm1ybGYgewotKwl2bXJsKEBfLDIpOwotK30KLStzdWIgdm1ybGcg ewotKwl2bXJsKEBfLDMpOwotK30KLSsKLStzdWIgdnBrIHsKLSsJY29uZmVzcyhlcnIoIkFSR05V TSIpKSBpZiAoJCNfIT0zKTsKLSsJVlJSYygweGU3OTQsQF8pOwotK30KLStzdWIgdnBraCB7Ci0r CXZwayhAXywxKTsKLSt9Ci0rc3ViIHZwa2YgewotKwl2cGsoQF8sMik7Ci0rfQotK3N1YiB2cGtn IHsKLSsJdnBrKEBfLDMpOwotK30KLSsKLStzdWIgdnBrcyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdO VU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmIoMHhlNzk3LEBfKTsKLSt9Ci0rc3ViIHZwa3NoIHsK LSsJdnBrcyhAXywxLDApOwotK30KLStzdWIgdnBrc2YgewotKwl2cGtzKEBfLDIsMCk7Ci0rfQot K3N1YiB2cGtzZyB7Ci0rCXZwa3MoQF8sMywwKTsKLSt9Ci0rc3ViIHZwa3NocyB7Ci0rCXZwa3Mo QF8sMSwxKTsKLSt9Ci0rc3ViIHZwa3NmcyB7Ci0rCXZwa3MoQF8sMiwxKTsKLSt9Ci0rc3ViIHZw a3NncyB7Ci0rCXZwa3MoQF8sMywxKTsKLSt9Ci0rCi0rc3ViIHZwa2xzIHsKLSsJY29uZmVzcyhl cnIoIkFSR05VTSIpKSBpZiAoJCNfIT00KTsKLSsJVlJSYigweGU3OTUsQF8pOwotK30KLStzdWIg dnBrbHNoIHsKLSsJdnBrbHMoQF8sMSwwKTsKLSt9Ci0rc3ViIHZwa2xzZiB7Ci0rCXZwa2xzKEBf LDIsMCk7Ci0rfQotK3N1YiB2cGtsc2cgewotKwl2cGtscyhAXywzLDApOwotK30KLStzdWIgdnBr bHNocyB7Ci0rCXZwa2xzKEBfLDEsMSk7Ci0rfQotK3N1YiB2cGtsc2ZzIHsKLSsJdnBrbHMoQF8s MiwxKTsKLSt9Ci0rc3ViIHZwa2xzZ3MgewotKwl2cGtscyhAXywzLDEpOwotK30KLSsKLStzdWIg dnBlcm0gewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJlKDB4 ZTc4YyxAXyk7Ci0rfQotKwotK3N1YiB2cGRpIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBp ZiAoJCNfIT0zKTsKLSsJVlJSYygweGU3ODQsQF8pOwotK30KLSsKLStzdWIgdnJlcCB7Ci0rCWNv bmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCVZSSWMoMHhlNzRkLEBfKTsKLSt9 Ci0rc3ViIHZyZXBiIHsKLSsJdnJlcChAXywwKTsKLSt9Ci0rc3ViIHZyZXBoIHsKLSsJdnJlcChA XywxKTsKLSt9Ci0rc3ViIHZyZXBmIHsKLSsJdnJlcChAXywyKTsKLSt9Ci0rc3ViIHZyZXBnIHsK LSsJdnJlcChAXywzKTsKLSt9Ci0rCi0rc3ViIHZyZXBpIHsKLSsJY29uZmVzcyhlcnIoIkFSR05V TSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJJYSgweGU3NDUsQF8pOwotK30KLStzdWIgdnJlcGliIHsK LSsJdnJlcGkoQF8sMCk7Ci0rfQotK3N1YiB2cmVwaWggewotKwl2cmVwaShAXywxKTsKLSt9Ci0r c3ViIHZyZXBpZiB7Ci0rCXZyZXBpKEBfLDIpOwotK30KLStzdWIgdnJlcGlnIHsKLSsJdnJlcGko QF8sMyk7Ci0rfQotKwotK3N1YiB2c2NlZiB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYg KCQjXyE9Mik7Ci0rCVZSVigweGU3MWIsQF8pOwotK30KLStzdWIgdnNjZWcgewotKwljb25mZXNz KGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlWUlYoMHhlNzFhLEBfKTsKLSt9Ci0rCi0r c3ViIHZzZWwgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJl KDB4ZTc4ZCxAXyk7Ci0rfQotKwotK3N1YiB2c2VnIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIp KSBpZiAoJCNfIT0yKTsKLSsJVlJSYSgweGU3NWYsQF8pOwotK30KLStzdWIgdnNlZ2IgewotKwl2 c2VnKEBfLDApOwotK30KLStzdWIgdnNlZ2ggewotKwl2c2VnKEBfLDEpOwotK30KLStzdWIgdnNl Z2YgewotKwl2c2VnKEBfLDIpOwotK30KLSsKLStzdWIgdnN0IHsKLSsJY29uZmVzcyhlcnIoIkFS R05VTSIpKSBpZiAoJCNfPDF8fCQjXz4yKTsKLSsJVlJYKDB4ZTcwZSxAXyk7Ci0rfQotKwotK3N1 YiB2c3RlYiB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZSWCgw eGU3MDgsQF8pOwotK30KLStzdWIgdnN0ZWggewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlm ICgkI18hPTIpOwotKwlWUlgoMHhlNzA5LEBfKTsKLSt9Ci0rc3ViIHZzdGVmIHsKLSsJY29uZmVz cyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJYKDB4ZTcwYixAXyk7Ci0rfQotK3N1 YiB2c3RlZyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZSWCgw eGU3MGEsQF8pOwotK30KLSsKLStzdWIgdnN0bSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkg aWYgKCQjXzwyfHwkI18+Myk7Ci0rCVZSU2EoMHhlNzNlLEBfKTsKLSt9Ci0rCi0rc3ViIHZzdGwg ewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlWUlNiKDB4ZTczZixA Xyk7Ci0rfQotKwotK3N1YiB2dXBoIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNf IT0yKTsKLSsJVlJSYSgweGU3ZDcsQF8pOwotK30KLStzdWIgdnVwaGIgewotKwl2dXBoKEBfLDAp OwotK30KLStzdWIgdnVwaGggewotKwl2dXBoKEBfLDEpOwotK30KLStzdWIgdnVwaGYgewotKwl2 dXBoKEBfLDIpOwotK30KLSsKLStzdWIgdnVwbGggewotKwljb25mZXNzKGVycigiQVJHTlVNIikp IGlmICgkI18hPTIpOwotKwlWUlJhKDB4ZTdkNSxAXyk7Ci0rfQotK3N1YiB2dXBsaGIgewotKwl2 dXBsaChAXywwKTsKLSt9Ci0rc3ViIHZ1cGxoaCB7Ci0rCXZ1cGxoKEBfLDEpOwotK30KLStzdWIg dnVwbGhmIHsKLSsJdnVwbGgoQF8sMik7Ci0rfQotKwotK3N1YiB2dXBsIHsKLSsJY29uZmVzcyhl cnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJSYSgweGU3ZDYsQF8pOwotK30KLStzdWIg dnVwbGIgewotKwl2dXBsKEBfLDApOwotK30KLStzdWIgdnVwbGh3IHsKLSsJdnVwbChAXywxKTsK LSt9Ci0rc3ViIHZ1cGxmIHsKLSsJdnVwbChAXywyKTsKLSt9Ci0rCi0rc3ViIHZ1cGxsIHsKLSsJ Y29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJSYSgweGU3ZDQsQF8pOwot K30KLStzdWIgdnVwbGxiIHsKLSsJdnVwbGwoQF8sMCk7Ci0rfQotK3N1YiB2dXBsbGggewotKwl2 dXBsbChAXywxKTsKLSt9Ci0rc3ViIHZ1cGxsZiB7Ci0rCXZ1cGxsKEBfLDIpOwotK30KLSsKLSsj IFZYIC0gSW50ZWdlciBJbnN0cnVjdGlvbnMKLSsKLStzdWIgdmEgewotKwljb25mZXNzKGVycigi QVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJjKDB4ZTdmMyxAXyk7Ci0rfQotK3N1YiB2YWIg ewotKwl2YShAXywwKTsKLSt9Ci0rc3ViIHZhaCB7Ci0rCXZhKEBfLDEpOwotK30KLStzdWIgdmFm IHsKLSsJdmEoQF8sMik7Ci0rfQotK3N1YiB2YWcgewotKwl2YShAXywzKTsKLSt9Ci0rc3ViIHZh cSB7Ci0rCXZhKEBfLDQpOwotK30KLSsKLStzdWIgdmFjYyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdO VU0iKSkgaWYgKCQjXyE9Myk7Ci0rCVZSUmMoMHhlN2YxLEBfKTsKLSt9Ci0rc3ViIHZhY2NiIHsK LSsJdmFjYyhAXywwKTsKLSt9Ci0rc3ViIHZhY2NoIHsKLSsJdmFjYyhAXywxKTsKLSt9Ci0rc3Vi IHZhY2NmIHsKLSsJdmFjYyhAXywyKTsKLSt9Ci0rc3ViIHZhY2NnIHsKLSsJdmFjYyhAXywzKTsK LSt9Ci0rc3ViIHZhY2NxIHsKLSsJdmFjYyhAXyw0KTsKLSt9Ci0rCi0rc3ViIHZhYyB7Ci0rCWNv bmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmQoMHhlN2JiLEBfKTsKLSt9 Ci0rc3ViIHZhY3EgewotKwl2YWMoQF8sNCk7Ci0rfQotKwotK3N1YiB2YWNjYyB7Ci0rCWNvbmZl c3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmQoMHhlN2I5LEBfKTsKLSt9Ci0r c3ViIHZhY2NjcSB7Ci0rCXZhY2NjKEBfLDQpOwotK30KLSsKLStzdWIgdm4gewotKwljb25mZXNz KGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlWUlJjKDB4ZTc2OCxAXyk7Ci0rfQotKwot K3N1YiB2bmMgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlWUlJj KDB4ZTc2OSxAXyk7Ci0rfQotKwotK3N1YiB2YXZnIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIp KSBpZiAoJCNfIT0zKTsKLSsJVlJSYygweGU3ZjIsQF8pOwotK30KLStzdWIgdmF2Z2IgewotKwl2 YXZnKEBfLDApOwotK30KLStzdWIgdmF2Z2ggewotKwl2YXZnKEBfLDEpOwotK30KLStzdWIgdmF2 Z2YgewotKwl2YXZnKEBfLDIpOwotK30KLStzdWIgdmF2Z2cgewotKwl2YXZnKEBfLDMpOwotK30K LSsKLStzdWIgdmF2Z2wgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwot KwlWUlJjKDB4ZTdmMCxAXyk7Ci0rfQotK3N1YiB2YXZnbGIgewotKwl2YXZnbChAXywwKTsKLSt9 Ci0rc3ViIHZhdmdsaCB7Ci0rCXZhdmdsKEBfLDEpOwotK30KLStzdWIgdmF2Z2xmIHsKLSsJdmF2 Z2woQF8sMik7Ci0rfQotK3N1YiB2YXZnbGcgewotKwl2YXZnbChAXywzKTsKLSt9Ci0rCi0rc3Vi IHZja3NtIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJSYygw eGU3NjYsQF8pOwotK30KLSsKLStzdWIgdmVjXyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkg aWYgKCQjXyE9Mik7Ci0rCVZSUmEoMHhlN2RiLEBfKTsKLSt9Ci0rc3ViIHZlY2IgewotKwl2ZWNf KEBfLDApOwotK30KLStzdWIgdmVjaCB7Ci0rCXZlY18oQF8sMSk7Ci0rfQotK3N1YiB2ZWNmIHsK LSsJdmVjXyhAXywyKTsKLSt9Ci0rc3ViIHZlY2cgewotKwl2ZWNfKEBfLDMpOwotK30KLSsKLStz dWIgdmVjbCB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZSUmEo MHhlN2Q5LEBfKTsKLSt9Ci0rc3ViIHZlY2xiIHsKLSsJdmVjbChAXywwKTsKLSt9Ci0rc3ViIHZl Y2xoIHsKLSsJdmVjbChAXywxKTsKLSt9Ci0rc3ViIHZlY2xmIHsKLSsJdmVjbChAXywyKTsKLSt9 Ci0rc3ViIHZlY2xnIHsKLSsJdmVjbChAXywzKTsKLSt9Ci0rCi0rc3ViIHZjZXEgewotKwljb25m ZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTQpOwotKwlWUlJiKDB4ZTdmOCxAXyk7Ci0rfQot K3N1YiB2Y2VxYiB7Ci0rCXZjZXEoQF8sMCwwKTsKLSt9Ci0rc3ViIHZjZXFoIHsKLSsJdmNlcShA XywxLDApOwotK30KLStzdWIgdmNlcWYgewotKwl2Y2VxKEBfLDIsMCk7Ci0rfQotK3N1YiB2Y2Vx ZyB7Ci0rCXZjZXEoQF8sMywwKTsKLSt9Ci0rc3ViIHZjZXFicyB7Ci0rCXZjZXEoQF8sMCwxKTsK LSt9Ci0rc3ViIHZjZXFocyB7Ci0rCXZjZXEoQF8sMSwxKTsKLSt9Ci0rc3ViIHZjZXFmcyB7Ci0r CXZjZXEoQF8sMiwxKTsKLSt9Ci0rc3ViIHZjZXFncyB7Ci0rCXZjZXEoQF8sMywxKTsKLSt9Ci0r Ci0rc3ViIHZjaCB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZS UmIoMHhlN2ZiLEBfKTsKLSt9Ci0rc3ViIHZjaGIgewotKwl2Y2goQF8sMCwwKTsKLSt9Ci0rc3Vi IHZjaGggewotKwl2Y2goQF8sMSwwKTsKLSt9Ci0rc3ViIHZjaGYgewotKwl2Y2goQF8sMiwwKTsK LSt9Ci0rc3ViIHZjaGcgewotKwl2Y2goQF8sMywwKTsKLSt9Ci0rc3ViIHZjaGJzIHsKLSsJdmNo KEBfLDAsMSk7Ci0rfQotK3N1YiB2Y2hocyB7Ci0rCXZjaChAXywxLDEpOwotK30KLStzdWIgdmNo ZnMgewotKwl2Y2goQF8sMiwxKTsKLSt9Ci0rc3ViIHZjaGdzIHsKLSsJdmNoKEBfLDMsMSk7Ci0r fQotKwotK3N1YiB2Y2hsIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT00KTsK LSsJVlJSYigweGU3ZjksQF8pOwotK30KLStzdWIgdmNobGIgewotKwl2Y2hsKEBfLDAsMCk7Ci0r fQotK3N1YiB2Y2hsaCB7Ci0rCXZjaGwoQF8sMSwwKTsKLSt9Ci0rc3ViIHZjaGxmIHsKLSsJdmNo bChAXywyLDApOwotK30KLStzdWIgdmNobGcgewotKwl2Y2hsKEBfLDMsMCk7Ci0rfQotK3N1YiB2 Y2hsYnMgewotKwl2Y2hsKEBfLDAsMSk7Ci0rfQotK3N1YiB2Y2hsaHMgewotKwl2Y2hsKEBfLDEs MSk7Ci0rfQotK3N1YiB2Y2hsZnMgewotKwl2Y2hsKEBfLDIsMSk7Ci0rfQotK3N1YiB2Y2hsZ3Mg ewotKwl2Y2hsKEBfLDMsMSk7Ci0rfQotKwotK3N1YiB2Y2x6IHsKLSsJY29uZmVzcyhlcnIoIkFS R05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJSYSgweGU3NTMsQF8pOwotK30KLStzdWIgdmNsemIg ewotKwl2Y2x6KEBfLDApOwotK30KLStzdWIgdmNsemggewotKwl2Y2x6KEBfLDEpOwotK30KLStz dWIgdmNsemYgewotKwl2Y2x6KEBfLDIpOwotK30KLStzdWIgdmNsemcgewotKwl2Y2x6KEBfLDMp OwotK30KLSsKLStzdWIgdmN0eiB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9 Mik7Ci0rCVZSUmEoMHhlNzUyLEBfKTsKLSt9Ci0rc3ViIHZjdHpiIHsKLSsJdmN0eihAXywwKTsK LSt9Ci0rc3ViIHZjdHpoIHsKLSsJdmN0eihAXywxKTsKLSt9Ci0rc3ViIHZjdHpmIHsKLSsJdmN0 eihAXywyKTsKLSt9Ci0rc3ViIHZjdHpnIHsKLSsJdmN0eihAXywzKTsKLSt9Ci0rCi0rc3ViIHZ4 IHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJSYygweGU3NmQs QF8pOwotK30KLSsKLStzdWIgdmdmbSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQj XyE9Myk7Ci0rCVZSUmMoMHhlN2I0LEBfKTsKLSt9Ci0rc3ViIHZnZm1iIHsKLSsJdmdmbShAXyww KTsKLSt9Ci0rc3ViIHZnZm1oIHsKLSsJdmdmbShAXywxKTsKLSt9Ci0rc3ViIHZnZm1mIHsKLSsJ dmdmbShAXywyKTsKLSt9Ci0rc3ViIHZnZm1nIHsKLSsJdmdmbShAXywzKTsKLSt9Ci0rCi0rc3Vi IHZnZm1hIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT00KTsKLSsJVlJSZCgw eGU3YmMsQF8pOwotK30KLStzdWIgdmdmbWFiIHsKLSsJdmdmbWEoQF8sMCk7Ci0rfQotK3N1YiB2 Z2ZtYWggewotKwl2Z2ZtYShAXywxKTsKLSt9Ci0rc3ViIHZnZm1hZiB7Ci0rCXZnZm1hKEBfLDIp OwotK30KLStzdWIgdmdmbWFnIHsKLSsJdmdmbWEoQF8sMyk7Ci0rfQotKwotK3N1YiB2bGMgewot Kwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlWUlJhKDB4ZTdkZSxAXyk7 Ci0rfQotK3N1YiB2bGNiIHsKLSsJdmxjKEBfLDApOwotK30KLStzdWIgdmxjaCB7Ci0rCXZsYyhA XywxKTsKLSt9Ci0rc3ViIHZsY2YgewotKwl2bGMoQF8sMik7Ci0rfQotK3N1YiB2bGNnIHsKLSsJ dmxjKEBfLDMpOwotK30KLSsKLStzdWIgdmxwIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBp ZiAoJCNfIT0yKTsKLSsJVlJSYSgweGU3ZGYsQF8pOwotK30KLStzdWIgdmxwYiB7Ci0rCXZscChA XywwKTsKLSt9Ci0rc3ViIHZscGggewotKwl2bHAoQF8sMSk7Ci0rfQotK3N1YiB2bHBmIHsKLSsJ dmxwKEBfLDIpOwotK30KLStzdWIgdmxwZyB7Ci0rCXZscChAXywzKTsKLSt9Ci0rCi0rc3ViIHZt eCB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCVZSUmMoMHhlN2Zm LEBfKTsKLSt9Ci0rc3ViIHZteGIgewotKwl2bXgoQF8sMCk7Ci0rfQotK3N1YiB2bXhoIHsKLSsJ dm14KEBfLDEpOwotK30KLStzdWIgdm14ZiB7Ci0rCXZteChAXywyKTsKLSt9Ci0rc3ViIHZteGcg ewotKwl2bXgoQF8sMyk7Ci0rfQotKwotK3N1YiB2bXhsIHsKLSsJY29uZmVzcyhlcnIoIkFSR05V TSIpKSBpZiAoJCNfIT0zKTsKLSsJVlJSYygweGU3ZmQsQF8pOwotK30KLStzdWIgdm14bGIgewot Kwl2bXhsKEBfLDApOwotK30KLStzdWIgdm14bGggewotKwl2bXhsKEBfLDEpOwotK30KLStzdWIg dm14bGYgewotKwl2bXhsKEBfLDIpOwotK30KLStzdWIgdm14bGcgewotKwl2bXhsKEBfLDMpOwot K30KLSsKLStzdWIgdm1uIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0zKTsK LSsJVlJSYygweGU3ZmUsQF8pOwotK30KLStzdWIgdm1uYiB7Ci0rCXZtbihAXywwKTsKLSt9Ci0r c3ViIHZtbmggewotKwl2bW4oQF8sMSk7Ci0rfQotK3N1YiB2bW5mIHsKLSsJdm1uKEBfLDIpOwot K30KLStzdWIgdm1uZyB7Ci0rCXZtbihAXywzKTsKLSt9Ci0rCi0rc3ViIHZtbmwgewotKwljb25m ZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJjKDB4ZTdmYyxAXyk7Ci0rfQot K3N1YiB2bW5sYiB7Ci0rCXZtbmwoQF8sMCk7Ci0rfQotK3N1YiB2bW5saCB7Ci0rCXZtbmwoQF8s MSk7Ci0rfQotK3N1YiB2bW5sZiB7Ci0rCXZtbmwoQF8sMik7Ci0rfQotK3N1YiB2bW5sZyB7Ci0r CXZtbmwoQF8sMyk7Ci0rfQotKwotK3N1YiB2bWFsIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIp KSBpZiAoJCNfIT00KTsKLSsJVlJSZCgweGU3YWEsQF8pOwotK30KLStzdWIgdm1hbGIgewotKwl2 bWFsKEBfLDApOwotK30KLStzdWIgdm1hbGh3IHsKLSsJdm1hbChAXywxKTsKLSt9Ci0rc3ViIHZt YWxmIHsKLSsJdm1hbChAXywyKTsKLSt9Ci0rCi0rc3ViIHZtYWggewotKwljb25mZXNzKGVycigi QVJHTlVNIikpIGlmICgkI18hPTQpOwotKwlWUlJkKDB4ZTdhYixAXyk7Ci0rfQotK3N1YiB2bWFo YiB7Ci0rCXZtYWgoQF8sMCk7Ci0rfQotK3N1YiB2bWFoaCB7Ci0rCXZtYWgoQF8sMSk7Ci0rfQot K3N1YiB2bWFoZiB7Ci0rCXZtYWgoQF8sMik7Ci0rfQotKwotK3N1YiB2bWFsaCB7Ci0rCWNvbmZl c3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmQoMHhlN2E5LEBfKTsKLSt9Ci0r c3ViIHZtYWxoYiB7Ci0rCXZtYWxoKEBfLDApOwotK30KLStzdWIgdm1hbGhoIHsKLSsJdm1hbGgo QF8sMSk7Ci0rfQotK3N1YiB2bWFsaGYgewotKwl2bWFsaChAXywyKTsKLSt9Ci0rCi0rc3ViIHZt YWUgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTQpOwotKwlWUlJkKDB4ZTdh ZSxAXyk7Ci0rfQotK3N1YiB2bWFlYiB7Ci0rCXZtYWUoQF8sMCk7Ci0rfQotK3N1YiB2bWFlaCB7 Ci0rCXZtYWUoQF8sMSk7Ci0rfQotK3N1YiB2bWFlZiB7Ci0rCXZtYWUoQF8sMik7Ci0rfQotKwot K3N1YiB2bWFsZSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZS UmQoMHhlN2FjLEBfKTsKLSt9Ci0rc3ViIHZtYWxlYiB7Ci0rCXZtYWxlKEBfLDApOwotK30KLStz dWIgdm1hbGVoIHsKLSsJdm1hbGUoQF8sMSk7Ci0rfQotK3N1YiB2bWFsZWYgewotKwl2bWFsZShA XywyKTsKLSt9Ci0rCi0rc3ViIHZtYW8gewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgk I18hPTQpOwotKwlWUlJkKDB4ZTdhZixAXyk7Ci0rfQotK3N1YiB2bWFvYiB7Ci0rCXZtYW8oQF8s MCk7Ci0rfQotK3N1YiB2bWFvaCB7Ci0rCXZtYW8oQF8sMSk7Ci0rfQotK3N1YiB2bWFvZiB7Ci0r CXZtYW8oQF8sMik7Ci0rfQotKwotK3N1YiB2bWFsbyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0i KSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmQoMHhlN2FkLEBfKTsKLSt9Ci0rc3ViIHZtYWxvYiB7Ci0r CXZtYWxvKEBfLDApOwotK30KLStzdWIgdm1hbG9oIHsKLSsJdm1hbG8oQF8sMSk7Ci0rfQotK3N1 YiB2bWFsb2YgewotKwl2bWFsbyhAXywyKTsKLSt9Ci0rCi0rc3ViIHZtaCB7Ci0rCWNvbmZlc3Mo ZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCVZSUmMoMHhlN2EzLEBfKTsKLSt9Ci0rc3Vi IHZtaGIgewotKwl2bWgoQF8sMCk7Ci0rfQotK3N1YiB2bWhoIHsKLSsJdm1oKEBfLDEpOwotK30K LStzdWIgdm1oZiB7Ci0rCXZtaChAXywyKTsKLSt9Ci0rCi0rc3ViIHZtbGggewotKwljb25mZXNz KGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJjKDB4ZTdhMSxAXyk7Ci0rfQotK3N1 YiB2bWxoYiB7Ci0rCXZtbGgoQF8sMCk7Ci0rfQotK3N1YiB2bWxoaCB7Ci0rCXZtbGgoQF8sMSk7 Ci0rfQotK3N1YiB2bWxoZiB7Ci0rCXZtbGgoQF8sMik7Ci0rfQotKwotK3N1YiB2bWwgewotKwlj b25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJjKDB4ZTdhMixAXyk7Ci0r fQotK3N1YiB2bWxiIHsKLSsJdm1sKEBfLDApOwotK30KLStzdWIgdm1saHcgewotKwl2bWwoQF8s MSk7Ci0rfQotK3N1YiB2bWxmIHsKLSsJdm1sKEBfLDIpOwotK30KLSsKLStzdWIgdm1lIHsKLSsJ Y29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0zKTsKLSsJVlJSYygweGU3YTYsQF8pOwot K30KLStzdWIgdm1lYiB7Ci0rCXZtZShAXywwKTsKLSt9Ci0rc3ViIHZtZWggewotKwl2bWUoQF8s MSk7Ci0rfQotK3N1YiB2bWVmIHsKLSsJdm1lKEBfLDIpOwotK30KLSsKLStzdWIgdm1sZSB7Ci0r CWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCVZSUmMoMHhlN2E0LEBfKTsK LSt9Ci0rc3ViIHZtbGViIHsKLSsJdm1sZShAXywwKTsKLSt9Ci0rc3ViIHZtbGVoIHsKLSsJdm1s ZShAXywxKTsKLSt9Ci0rc3ViIHZtbGVmIHsKLSsJdm1sZShAXywyKTsKLSt9Ci0rCi0rc3ViIHZt byB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCVZSUmMoMHhlN2E3 LEBfKTsKLSt9Ci0rc3ViIHZtb2IgewotKwl2bW8oQF8sMCk7Ci0rfQotK3N1YiB2bW9oIHsKLSsJ dm1vKEBfLDEpOwotK30KLStzdWIgdm1vZiB7Ci0rCXZtbyhAXywyKTsKLSt9Ci0rCi0rc3ViIHZt bG8gewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJjKDB4ZTdh NSxAXyk7Ci0rfQotK3N1YiB2bWxvYiB7Ci0rCXZtbG8oQF8sMCk7Ci0rfQotK3N1YiB2bWxvaCB7 Ci0rCXZtbG8oQF8sMSk7Ci0rfQotK3N1YiB2bWxvZiB7Ci0rCXZtbG8oQF8sMik7Ci0rfQotKwot K3N1YiB2bm8gewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlWUlJj KDB4ZTc2YixAXyk7Ci0rfQotK3N1YiB2bm90IHsKLSsJdm5vKEBfLCRfWzFdKTsKLSt9Ci0rCi0r c3ViIHZvIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJSYygw eGU3NmEsQF8pOwotK30KLSsKLStzdWIgdnBvcGN0IHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIp KSBpZiAoJCNfIT0yKTsKLSsJVlJSYSgweGU3NTAsQF8pOwotK30KLSsKLStzdWIgdmVybGx2IHsK LSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0zKTsKLSsJVlJSYygweGU3NzMsQF8p OwotK30KLStzdWIgdmVybGx2YiB7Ci0rCXZlcmxsdihAXywwKTsKLSt9Ci0rc3ViIHZlcmxsdmgg ewotKwl2ZXJsbHYoQF8sMSk7Ci0rfQotK3N1YiB2ZXJsbHZmIHsKLSsJdmVybGx2KEBfLDIpOwot K30KLStzdWIgdmVybGx2ZyB7Ci0rCXZlcmxsdihAXywzKTsKLSt9Ci0rCi0rc3ViIHZlcmxsIHsK LSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0zKTsKLSsJVlJTYSgweGU3MzMsQF8p OwotK30KLStzdWIgdmVybGxiIHsKLSsJdmVybGwoQF8sMCk7Ci0rfQotK3N1YiB2ZXJsbGggewot Kwl2ZXJsbChAXywxKTsKLSt9Ci0rc3ViIHZlcmxsZiB7Ci0rCXZlcmxsKEBfLDIpOwotK30KLStz dWIgdmVybGxnIHsKLSsJdmVybGwoQF8sMyk7Ci0rfQotKwotK3N1YiB2ZXJpbSB7Ci0rCWNvbmZl c3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSSWQoMHhlNzcyLEBfKTsKLSt9Ci0r c3ViIHZlcmltYiB7Ci0rCXZlcmltKEBfLDApOwotK30KLStzdWIgdmVyaW1oIHsKLSsJdmVyaW0o QF8sMSk7Ci0rfQotK3N1YiB2ZXJpbWYgewotKwl2ZXJpbShAXywyKTsKLSt9Ci0rc3ViIHZlcmlt ZyB7Ci0rCXZlcmltKEBfLDMpOwotK30KLSsKLStzdWIgdmVzbHYgewotKwljb25mZXNzKGVycigi QVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJjKDB4ZTc3MCxAXyk7Ci0rfQotK3N1YiB2ZXNs dmIgewotKwl2ZXNsdihAXywwKTsKLSt9Ci0rc3ViIHZlc2x2aCB7Ci0rCXZlc2x2KEBfLDEpOwot K30KLStzdWIgdmVzbHZmIHsKLSsJdmVzbHYoQF8sMik7Ci0rfQotK3N1YiB2ZXNsdmcgewotKwl2 ZXNsdihAXywzKTsKLSt9Ci0rCi0rc3ViIHZlc2wgewotKwljb25mZXNzKGVycigiQVJHTlVNIikp IGlmICgkI18hPTMpOwotKwlWUlNhKDB4ZTczMCxAXyk7Ci0rfQotK3N1YiB2ZXNsYiB7Ci0rCXZl c2woQF8sMCk7Ci0rfQotK3N1YiB2ZXNsaCB7Ci0rCXZlc2woQF8sMSk7Ci0rfQotK3N1YiB2ZXNs ZiB7Ci0rCXZlc2woQF8sMik7Ci0rfQotK3N1YiB2ZXNsZyB7Ci0rCXZlc2woQF8sMyk7Ci0rfQot KwotK3N1YiB2ZXNyYXYgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwot KwlWUlJjKDB4ZTc3YSxAXyk7Ci0rfQotK3N1YiB2ZXNyYXZiIHsKLSsJdmVzcmF2KEBfLDApOwot K30KLStzdWIgdmVzcmF2aCB7Ci0rCXZlc3JhdihAXywxKTsKLSt9Ci0rc3ViIHZlc3JhdmYgewot Kwl2ZXNyYXYoQF8sMik7Ci0rfQotK3N1YiB2ZXNyYXZnIHsKLSsJdmVzcmF2KEBfLDMpOwotK30K LSsKLStzdWIgdmVzcmEgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwot KwlWUlNhKDB4ZTczYSxAXyk7Ci0rfQotK3N1YiB2ZXNyYWIgewotKwl2ZXNyYShAXywwKTsKLSt9 Ci0rc3ViIHZlc3JhaCB7Ci0rCXZlc3JhKEBfLDEpOwotK30KLStzdWIgdmVzcmFmIHsKLSsJdmVz cmEoQF8sMik7Ci0rfQotK3N1YiB2ZXNyYWcgewotKwl2ZXNyYShAXywzKTsKLSt9Ci0rCi0rc3Vi IHZlc3JsdiB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCVZSUmMo MHhlNzc4LEBfKTsKLSt9Ci0rc3ViIHZlc3JsdmIgewotKwl2ZXNybHYoQF8sMCk7Ci0rfQotK3N1 YiB2ZXNybHZoIHsKLSsJdmVzcmx2KEBfLDEpOwotK30KLStzdWIgdmVzcmx2ZiB7Ci0rCXZlc3Js dihAXywyKTsKLSt9Ci0rc3ViIHZlc3JsdmcgewotKwl2ZXNybHYoQF8sMyk7Ci0rfQotKwotK3N1 YiB2ZXNybCB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCVZSU2Eo MHhlNzM4LEBfKTsKLSt9Ci0rc3ViIHZlc3JsYiB7Ci0rCXZlc3JsKEBfLDApOwotK30KLStzdWIg dmVzcmxoIHsKLSsJdmVzcmwoQF8sMSk7Ci0rfQotK3N1YiB2ZXNybGYgewotKwl2ZXNybChAXywy KTsKLSt9Ci0rc3ViIHZlc3JsZyB7Ci0rCXZlc3JsKEBfLDMpOwotK30KLSsKLStzdWIgdnNsIHsK LSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJSYygweGU3NzQsQF8p OwotK30KLSsKLStzdWIgdnNsYiB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9 Mik7Ci0rCVZSUmMoMHhlNzc1LEBfKTsKLSt9Ci0rCi0rc3ViIHZzbGRiIHsKLSsJY29uZmVzcyhl cnIoIkFSR05VTSIpKSBpZiAoJCNfIT0zKTsKLSsJVlJJZCgweGU3NzcsQF8pOwotK30KLSsKLStz dWIgdnNyYSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZSUmMo MHhlNzdlLEBfKTsKLSt9Ci0rCi0rc3ViIHZzcmFiIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIp KSBpZiAoJCNfIT0yKTsKLSsJVlJSYygweGU3N2YsQF8pOwotK30KLSsKLStzdWIgdnNybCB7Ci0r CWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZSUmMoMHhlNzdjLEBfKTsK LSt9Ci0rCi0rc3ViIHZzcmxiIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0y KTsKLSsJVlJSYygweGU3N2QsQF8pOwotK30KLSsKLStzdWIgdnMgewotKwljb25mZXNzKGVycigi QVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJjKDB4ZTdmNyxAXyk7Ci0rfQotK3N1YiB2c2Ig ewotKwl2cyhAXywwKTsKLSt9Ci0rc3ViIHZzaCB7Ci0rCXZzKEBfLDEpOwotK30KLStzdWIgdnNm IHsKLSsJdnMoQF8sMik7Ci0rfQotK3N1YiB2c2cgewotKwl2cyhAXywzKTsKLSt9Ci0rc3ViIHZz cSB7Ci0rCXZzKEBfLDQpOwotK30KLSsKLStzdWIgdnNjYmkgewotKwljb25mZXNzKGVycigiQVJH TlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJjKDB4ZTdmNSxAXyk7Ci0rfQotK3N1YiB2c2NiaWIg ewotKwl2c2NiaShAXywwKTsKLSt9Ci0rc3ViIHZzY2JpaCB7Ci0rCXZzY2JpKEBfLDEpOwotK30K LStzdWIgdnNjYmlmIHsKLSsJdnNjYmkoQF8sMik7Ci0rfQotK3N1YiB2c2NiaWcgewotKwl2c2Ni aShAXywzKTsKLSt9Ci0rc3ViIHZzY2JpcSB7Ci0rCXZzY2JpKEBfLDQpOwotK30KLSsKLStzdWIg dnNiaSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmQoMHhl N2JmLEBfKTsKLSt9Ci0rc3ViIHZzYmlxIHsKLSsJdnNiaShAXyw0KTsKLSt9Ci0rCi0rc3ViIHZz YmNiaSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmQoMHhl N2JkLEBfKTsKLSt9Ci0rc3ViIHZzYmNiaXEgewotKwl2c2JjYmkoQF8sNCk7Ci0rfQotKwotK3N1 YiB2c3VtZyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCVZSUmMo MHhlNzY1LEBfKTsKLSt9Ci0rc3ViIHZzdW1naCB7Ci0rCXZzdW1nKEBfLDEpOwotK30KLStzdWIg dnN1bWdmIHsKLSsJdnN1bWcoQF8sMik7Ci0rfQotKwotK3N1YiB2c3VtcSB7Ci0rCWNvbmZlc3Mo ZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCVZSUmMoMHhlNzY3LEBfKTsKLSt9Ci0rc3Vi IHZzdW1xZiB7Ci0rCXZzdW1xKEBfLDIpOwotK30KLStzdWIgdnN1bXFnIHsKLSsJdnN1bXEoQF8s Myk7Ci0rfQotKwotK3N1YiB2c3VtIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNf IT0zKTsKLSsJVlJSYygweGU3NjQsQF8pOwotK30KLStzdWIgdnN1bWIgewotKwl2c3VtKEBfLDAp OwotK30KLStzdWIgdnN1bWggewotKwl2c3VtKEBfLDEpOwotK30KLSsKLStzdWIgdnRtIHsKLSsJ Y29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0xKTsKLSsJVlJSYSgweGU3ZDgsQF8pOwot K30KLSsKLSsjIFZYIC0gU3RyaW5nIEluc3RydWN0aW9ucwotKwotK3N1YiB2ZmFlIHsKLSsJY29u ZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfPDN8fCQjXz40KTsKLSsJVlJSYigweGU3ODIsQF8p OwotK30KLStzdWIgdmZhZWIgewotKwl2ZmFlKEBfWzAuLjJdLDAsJF9bM10pOwotK30KLStzdWIg dmZhZWggewotKwl2ZmFlKEBfWzAuLjJdLDEsJF9bM10pOwotK30KLStzdWIgdmZhZWYgewotKwl2 ZmFlKEBfWzAuLjJdLDIsJF9bM10pOwotK30KLStzdWIgdmZhZWJzIHsKLSsJJF9bM109MCBpZiAo IWRlZmluZWQoJF9bM10pKTsKLSsJdmZhZShAX1swLi4yXSwwLDB4MXwkX1szXSk7Ci0rfQotK3N1 YiB2ZmFlaHMgewotKwkkX1szXT0wIGlmICghZGVmaW5lZCgkX1szXSkpOwotKwl2ZmFlKEBfWzAu LjJdLDEsMHgxfCRfWzNdKTsKLSt9Ci0rc3ViIHZmYWVmcyB7Ci0rCSRfWzNdPTAgaWYgKCFkZWZp bmVkKCRfWzNdKSk7Ci0rCXZmYWUoQF9bMC4uMl0sMiwweDF8JF9bM10pOwotK30KLStzdWIgdmZh ZXpiIHsKLSsJJF9bM109MCBpZiAoIWRlZmluZWQoJF9bM10pKTsKLSsJdmZhZShAX1swLi4yXSww LDB4MnwkX1szXSk7Ci0rfQotK3N1YiB2ZmFlemggewotKwkkX1szXT0wIGlmICghZGVmaW5lZCgk X1szXSkpOwotKwl2ZmFlKEBfWzAuLjJdLDEsMHgyfCRfWzNdKTsKLSt9Ci0rc3ViIHZmYWV6ZiB7 Ci0rCSRfWzNdPTAgaWYgKCFkZWZpbmVkKCRfWzNdKSk7Ci0rCXZmYWUoQF9bMC4uMl0sMiwweDJ8 JF9bM10pOwotK30KLStzdWIgdmZhZXpicyB7Ci0rCSRfWzNdPTAgaWYgKCFkZWZpbmVkKCRfWzNd KSk7Ci0rCXZmYWUoQF9bMC4uMl0sMCwweDN8JF9bM10pOwotK30KLStzdWIgdmZhZXpocyB7Ci0r CSRfWzNdPTAgaWYgKCFkZWZpbmVkKCRfWzNdKSk7Ci0rCXZmYWUoQF9bMC4uMl0sMSwweDN8JF9b M10pOwotK30KLStzdWIgdmZhZXpmcyB7Ci0rCSRfWzNdPTAgaWYgKCFkZWZpbmVkKCRfWzNdKSk7 Ci0rCXZmYWUoQF9bMC4uMl0sMiwweDN8JF9bM10pOwotK30KLSsKLStzdWIgdmZlZSB7Ci0rCWNv bmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXzwzfHwkI18+NCk7Ci0rCVZSUmIoMHhlNzgwLEBf KTsKLSt9Ci0rc3ViIHZmZWViIHsKLSsJdmZlZShAX1swLi4yXSwwLCRfWzNdKTsKLSt9Ci0rc3Vi IHZmZWVoIHsKLSsJdmZlZShAX1swLi4yXSwxLCRfWzNdKTsKLSt9Ci0rc3ViIHZmZWVmIHsKLSsJ dmZlZShAX1swLi4yXSwyLCRfWzNdKTsKLSt9Ci0rc3ViIHZmZWVicyB7Ci0rCXZmZWUoQF8sMCwx KTsKLSt9Ci0rc3ViIHZmZWVocyB7Ci0rCXZmZWUoQF8sMSwxKTsKLSt9Ci0rc3ViIHZmZWVmcyB7 Ci0rCXZmZWUoQF8sMiwxKTsKLSt9Ci0rc3ViIHZmZWV6YiB7Ci0rCXZmZWUoQF8sMCwyKTsKLSt9 Ci0rc3ViIHZmZWV6aCB7Ci0rCXZmZWUoQF8sMSwyKTsKLSt9Ci0rc3ViIHZmZWV6ZiB7Ci0rCXZm ZWUoQF8sMiwyKTsKLSt9Ci0rc3ViIHZmZWV6YnMgewotKwl2ZmVlKEBfLDAsMyk7Ci0rfQotK3N1 YiB2ZmVlemhzIHsKLSsJdmZlZShAXywxLDMpOwotK30KLStzdWIgdmZlZXpmcyB7Ci0rCXZmZWUo QF8sMiwzKTsKLSt9Ci0rCi0rc3ViIHZmZW5lIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBp ZiAoJCNfPDN8fCQjXz40KTsKLSsJVlJSYigweGU3ODEsQF8pOwotK30KLStzdWIgdmZlbmViIHsK LSsJdmZlbmUoQF9bMC4uMl0sMCwkX1szXSk7Ci0rfQotK3N1YiB2ZmVuZWggewotKwl2ZmVuZShA X1swLi4yXSwxLCRfWzNdKTsKLSt9Ci0rc3ViIHZmZW5lZiB7Ci0rCXZmZW5lKEBfWzAuLjJdLDIs JF9bM10pOwotK30KLStzdWIgdmZlbmVicyB7Ci0rCXZmZW5lKEBfLDAsMSk7Ci0rfQotK3N1YiB2 ZmVuZWhzIHsKLSsJdmZlbmUoQF8sMSwxKTsKLSt9Ci0rc3ViIHZmZW5lZnMgewotKwl2ZmVuZShA XywyLDEpOwotK30KLStzdWIgdmZlbmV6YiB7Ci0rCXZmZW5lKEBfLDAsMik7Ci0rfQotK3N1YiB2 ZmVuZXpoIHsKLSsJdmZlbmUoQF8sMSwyKTsKLSt9Ci0rc3ViIHZmZW5lemYgewotKwl2ZmVuZShA XywyLDIpOwotK30KLStzdWIgdmZlbmV6YnMgewotKwl2ZmVuZShAXywwLDMpOwotK30KLStzdWIg dmZlbmV6aHMgewotKwl2ZmVuZShAXywxLDMpOwotK30KLStzdWIgdmZlbmV6ZnMgewotKwl2ZmVu ZShAXywyLDMpOwotK30KLSsKLStzdWIgdmlzdHIgewotKwljb25mZXNzKGVycigiQVJHTlVNIikp IGlmICgkI188Mnx8JCNfPjMpOwotKwlWUlJhKDB4ZTc1YyxAX1swLi4yXSwwLCRfWzNdKTsKLSt9 Ci0rc3ViIHZpc3RyYiB7Ci0rCXZpc3RyKEBfWzAuLjFdLDAsJF9bMl0pOwotK30KLStzdWIgdmlz dHJoIHsKLSsJdmlzdHIoQF9bMC4uMV0sMSwkX1syXSk7Ci0rfQotK3N1YiB2aXN0cmYgewotKwl2 aXN0cihAX1swLi4xXSwyLCRfWzJdKTsKLSt9Ci0rc3ViIHZpc3RyYnMgewotKwl2aXN0cihAXyww LDEpOwotK30KLStzdWIgdmlzdHJocyB7Ci0rCXZpc3RyKEBfLDEsMSk7Ci0rfQotK3N1YiB2aXN0 cmZzIHsKLSsJdmlzdHIoQF8sMiwxKTsKLSt9Ci0rCi0rc3ViIHZzdHJjIHsKLSsJY29uZmVzcyhl cnIoIkFSR05VTSIpKSBpZiAoJCNfPDR8fCQjXz41KTsKLSsJVlJSZCgweGU3OGEsQF8pOwotK30K LStzdWIgdnN0cmNiIHsKLSsJdnN0cmMoQF9bMC4uM10sMCwkX1s0XSk7Ci0rfQotK3N1YiB2c3Ry Y2ggewotKwl2c3RyYyhAX1swLi4zXSwxLCRfWzRdKTsKLSt9Ci0rc3ViIHZzdHJjZiB7Ci0rCXZz dHJjKEBfWzAuLjNdLDIsJF9bNF0pOwotK30KLStzdWIgdnN0cmNicyB7Ci0rCSRfWzRdPTAgaWYg KCFkZWZpbmVkKCRfWzRdKSk7Ci0rCXZzdHJjKEBfWzAuLjNdLDAsMHgxfCRfWzRdKTsKLSt9Ci0r c3ViIHZzdHJjaHMgewotKwkkX1s0XT0wIGlmICghZGVmaW5lZCgkX1s0XSkpOwotKwl2c3RyYyhA X1swLi4zXSwxLDB4MXwkX1s0XSk7Ci0rfQotK3N1YiB2c3RyY2ZzIHsKLSsJJF9bNF09MCBpZiAo IWRlZmluZWQoJF9bNF0pKTsKLSsJdnN0cmMoQF9bMC4uM10sMiwweDF8JF9bNF0pOwotK30KLStz dWIgdnN0cmN6YiB7Ci0rCSRfWzRdPTAgaWYgKCFkZWZpbmVkKCRfWzRdKSk7Ci0rCXZzdHJjKEBf WzAuLjNdLDAsMHgyfCRfWzRdKTsKLSt9Ci0rc3ViIHZzdHJjemggewotKwkkX1s0XT0wIGlmICgh ZGVmaW5lZCgkX1s0XSkpOwotKwl2c3RyYyhAX1swLi4zXSwxLDB4MnwkX1s0XSk7Ci0rfQotK3N1 YiB2c3RyY3pmIHsKLSsJJF9bNF09MCBpZiAoIWRlZmluZWQoJF9bNF0pKTsKLSsJdnN0cmMoQF9b MC4uM10sMiwweDJ8JF9bNF0pOwotK30KLStzdWIgdnN0cmN6YnMgewotKwkkX1s0XT0wIGlmICgh ZGVmaW5lZCgkX1s0XSkpOwotKwl2c3RyYyhAX1swLi4zXSwwLDB4M3wkX1s0XSk7Ci0rfQotK3N1 YiB2c3RyY3pocyB7Ci0rCSRfWzRdPTAgaWYgKCFkZWZpbmVkKCRfWzRdKSk7Ci0rCXZzdHJjKEBf WzAuLjNdLDEsMHgzfCRfWzRdKTsKLSt9Ci0rc3ViIHZzdHJjemZzIHsKLSsJJF9bNF09MCBpZiAo IWRlZmluZWQoJF9bNF0pKTsKLSsJdnN0cmMoQF9bMC4uM10sMiwweDN8JF9bNF0pOwotK30KLSsK LSsjIFZYIC0gRmxvYXRpbmctcG9pbnQgSW5zdHJ1Y3Rpb25zCi0rCi0rc3ViIHZmYSB7Ci0rCWNv bmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmMoMHhlN2UzLEBfKTsKLSt9 Ci0rc3ViIHZmYWRiIHsKLSsJdmZhKEBfLDMsMCk7Ci0rfQotK3N1YiB3ZmFkYiB7Ci0rCXZmYShA XywzLDgpOwotK30KLSsKLStzdWIgd2ZjIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAo JCNfIT0zKTsKLSsJVlJSYSgweGU3Y2IsQF8pOwotK30KLStzdWIgd2ZjZGIgewotKwl3ZmMoQF8s MywwKTsKLSt9Ci0rCi0rc3ViIHdmayB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQj XyE9Myk7Ci0rCVZSUmEoMHhlN2NhLEBfKTsKLSt9Ci0rc3ViIHdma3NiIHsKLSsJd2ZrKEBfLDIs MCk7Ci0rfQotK3N1YiB3ZmtkYiB7Ci0rCXdmayhAXywzLDApOwotK30KLStzdWIgd2ZreGIgewot Kwl3ZmsoQF8sNCwwKTsKLSt9Ci0rCi0rc3ViIHZmY2UgewotKwljb25mZXNzKGVycigiQVJHTlVN IikpIGlmICgkI18hPTUpOwotKwlWUlJjKDB4ZTdlOCxAXyk7Ci0rfQotK3N1YiB2ZmNlZGIgewot Kwl2ZmNlKEBfLDMsMCwwKTsKLSt9Ci0rc3ViIHZmY2VkYnMgewotKwl2ZmNlKEBfLDMsMCwxKTsK LSt9Ci0rc3ViIHdmY2VkYiB7Ci0rCXZmY2UoQF8sMyw4LDApOwotK30KLStzdWIgd2ZjZWRicyB7 Ci0rCXZmY2UoQF8sMyw4LDEpOwotK30KLSsKLStzdWIgdmZjaCB7Ci0rCWNvbmZlc3MoZXJyKCJB UkdOVU0iKSkgaWYgKCQjXyE9NSk7Ci0rCVZSUmMoMHhlN2ViLEBfKTsKLSt9Ci0rc3ViIHZmY2hk YiB7Ci0rCXZmY2goQF8sMywwLDApOwotK30KLStzdWIgdmZjaGRicyB7Ci0rCXZmY2goQF8sMyww LDEpOwotK30KLStzdWIgd2ZjaGRiIHsKLSsJdmZjaChAXywzLDgsMCk7Ci0rfQotK3N1YiB3ZmNo ZGJzIHsKLSsJdmZjaChAXywzLDgsMSk7Ci0rfQotKwotK3N1YiB2ZmNoZSB7Ci0rCWNvbmZlc3Mo ZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NSk7Ci0rCVZSUmMoMHhlN2VhLEBfKTsKLSt9Ci0rc3Vi IHZmY2hlZGIgewotKwl2ZmNoZShAXywzLDAsMCk7Ci0rfQotK3N1YiB2ZmNoZWRicyB7Ci0rCXZm Y2hlKEBfLDMsMCwxKTsKLSt9Ci0rc3ViIHdmY2hlZGIgewotKwl2ZmNoZShAXywzLDgsMCk7Ci0r fQotK3N1YiB3ZmNoZWRicyB7Ci0rCXZmY2hlKEBfLDMsOCwxKTsKLSt9Ci0rCi0rc3ViIHZjZGcg ewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTQpOwotKwlWUlJhKDB4ZTdjMyxA Xyk7Ci0rfQotK3N1YiB2Y2RnYiB7Ci0rCXZjZGcoQF9bMC4uMV0sMyxAX1syLi4zXSk7Ci0rfQot K3N1YiB3Y2RnYiB7Ci0rCXZjZGcoQF9bMC4uMV0sMywweDh8JF9bMl0sJF9bM10pOwotK30KLSsK LStzdWIgdmNkbGcgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTQpOwotKwlW UlJhKDB4ZTdjMSxAXyk7Ci0rfQotK3N1YiB2Y2RsZ2IgewotKwl2Y2RsZyhAX1swLi4xXSwzLEBf WzIuLjNdKTsKLSt9Ci0rc3ViIHdjZGxnYiB7Ci0rCXZjZGxnKEBfWzAuLjFdLDMsMHg4fCRfWzJd LCRfWzNdKTsKLSt9Ci0rCi0rc3ViIHZjZ2QgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlm ICgkI18hPTQpOwotKwlWUlJhKDB4ZTdjMixAXyk7Ci0rfQotK3N1YiB2Y2dkYiB7Ci0rCXZjZ2Qo QF9bMC4uMV0sMyxAX1syLi4zXSk7Ci0rfQotK3N1YiB3Y2dkYiB7Ci0rCXZjZ2QoQF9bMC4uMV0s MywweDh8JF9bMl0sJF9bM10pOwotK30KLSsKLStzdWIgdmNsZ2QgewotKwljb25mZXNzKGVycigi QVJHTlVNIikpIGlmICgkI18hPTQpOwotKwlWUlJhKDB4ZTdjMCxAXyk7Ci0rfQotK3N1YiB2Y2xn ZGIgewotKwl2Y2xnZChAX1swLi4xXSwzLEBfWzIuLjNdKTsKLSt9Ci0rc3ViIHdjbGdkYiB7Ci0r CXZjbGdkKEBfWzAuLjFdLDMsMHg4fCRfWzJdLCRfWzNdKTsKLSt9Ci0rCi0rc3ViIHZmZCB7Ci0r CWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmMoMHhlN2U1LEBfKTsK LSt9Ci0rc3ViIHZmZGRiIHsKLSsJdmZkKEBfLDMsMCk7Ci0rfQotK3N1YiB3ZmRkYiB7Ci0rCXZm ZChAXywzLDgpOwotK30KLSsKLStzdWIgdmZpIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBp ZiAoJCNfIT00KTsKLSsJVlJSYSgweGU3YzcsQF8pOwotK30KLStzdWIgdmZpZGIgewotKwl2Zmko QF9bMC4uMV0sMyxAX1syLi4zXSk7Ci0rfQotK3N1YiB3ZmlkYiB7Ci0rCXZmaShAX1swLi4xXSwz LDB4OHwkX1syXSwkX1szXSk7Ci0rfQotKwotK3N1YiB2bGRlIHsJIyBkZXByZWNhdGVkLCB1c2Ug dmZsbAotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTMpOwotKwlWUlJhKDB4ZTdj NCxAXyk7Ci0rfQotK3N1YiB2bGRlYiB7CSMgZGVwcmVjYXRlZCwgdXNlIHZmbGxzCi0rCXZsZGUo QF8sMiwwKTsKLSt9Ci0rc3ViIHdsZGViIHsJIyBkZXByZWNhdGVkLCB1c2Ugd2ZsbHMKLSsJdmxk ZShAXywyLDgpOwotK30KLSsKLStzdWIgdmxlZCB7CSMgZGVwcmVjYXRlZCwgdXNlIHZmbHIKLSsJ Y29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT00KTsKLSsJVlJSYSgweGU3YzUsQF8pOwot K30KLStzdWIgdmxlZGIgewkjIGRlcHJlY2F0ZWQsIHVzZSB2ZmxyZAotKwl2bGVkKEBfWzAuLjFd LDMsQF9bMi4uM10pOwotK30KLStzdWIgd2xlZGIgewkjIGRlcHJlY2F0ZWQsIHVzZSB3ZmxyZAot Kwl2bGVkKEBfWzAuLjFdLDMsMHg4fCRfWzJdLCRfWzNdKTsKLSt9Ci0rCi0rc3ViIHZmbSB7Ci0r CWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmMoMHhlN2U3LEBfKTsK LSt9Ci0rc3ViIHZmbWRiIHsKLSsJdmZtKEBfLDMsMCk7Ci0rfQotK3N1YiB3Zm1kYiB7Ci0rCXZm bShAXywzLDgpOwotK30KLSsKLStzdWIgdmZtYSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkg aWYgKCQjXyE9NSk7Ci0rCVZSUmUoMHhlNzhmLEBfKTsKLSt9Ci0rc3ViIHZmbWFkYiB7Ci0rCXZm bWEoQF8sMCwzKTsKLSt9Ci0rc3ViIHdmbWFkYiB7Ci0rCXZmbWEoQF8sOCwzKTsKLSt9Ci0rCi0r c3ViIHZmbXMgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTUpOwotKwlWUlJl KDB4ZTc4ZSxAXyk7Ci0rfQotK3N1YiB2Zm1zZGIgewotKwl2Zm1zKEBfLDAsMyk7Ci0rfQotK3N1 YiB3Zm1zZGIgewotKwl2Zm1zKEBfLDgsMyk7Ci0rfQotKwotK3N1YiB2ZnBzbyB7Ci0rCWNvbmZl c3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSUmEoMHhlN2NjLEBfKTsKLSt9Ci0r c3ViIHZmcHNvZGIgewotKwl2ZnBzbyhAX1swLi4xXSwzLDAsJF9bMl0pOwotK30KLStzdWIgd2Zw c29kYiB7Ci0rCXZmcHNvKEBfWzAuLjFdLDMsOCwkX1syXSk7Ci0rfQotK3N1YiB2ZmxjZGIgewot Kwl2ZnBzbyhAXywzLDAsMCk7Ci0rfQotK3N1YiB3ZmxjZGIgewotKwl2ZnBzbyhAXywzLDgsMCk7 Ci0rfQotK3N1YiB2ZmxuZGIgewotKwl2ZnBzbyhAXywzLDAsMSk7Ci0rfQotK3N1YiB3ZmxuZGIg ewotKwl2ZnBzbyhAXywzLDgsMSk7Ci0rfQotK3N1YiB2ZmxwZGIgewotKwl2ZnBzbyhAXywzLDAs Mik7Ci0rfQotK3N1YiB3ZmxwZGIgewotKwl2ZnBzbyhAXywzLDgsMik7Ci0rfQotKwotK3N1YiB2 ZnNxIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0zKTsKLSsJVlJSYSgweGU3 Y2UsQF8pOwotK30KLStzdWIgdmZzcWRiIHsKLSsJdmZzcShAXywzLDApOwotK30KLStzdWIgd2Zz cWRiIHsKLSsJdmZzcShAXywzLDgpOwotK30KLSsKLStzdWIgdmZzIHsKLSsJY29uZmVzcyhlcnIo IkFSR05VTSIpKSBpZiAoJCNfIT00KTsKLSsJVlJSYygweGU3ZTIsQF8pOwotK30KLStzdWIgdmZz ZGIgewotKwl2ZnMoQF8sMywwKTsKLSt9Ci0rc3ViIHdmc2RiIHsKLSsJdmZzKEBfLDMsOCk7Ci0r fQotKwotK3N1YiB2ZnRjaSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7 Ci0rCVZSSWUoMHhlNzRhLEBfKTsKLSt9Ci0rc3ViIHZmdGNpZGIgewotKwl2ZnRjaShAXywzLDAp OwotK30KLStzdWIgd2Z0Y2lkYiB7Ci0rCXZmdGNpKEBfLDMsOCk7Ci0rfQotKwotKyMgVlhFIC0g U3VwcG9ydCBJbnN0cnVjdGlvbnMKLSsKLStzdWIgdmJwZXJtIHsKLSsJY29uZmVzcyhlcnIoIkFS R05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlJSYygweGU3ODUsQF8pOwotK30KLSsKLStzdWIgdmxs ZXpsZiB7Ci0rCXZsbGV6KEBfLDYpOwotK30KLSsKLSsjIFZYRSAtIEludGVnZXIgSW5zdHJ1Y3Rp b25zCi0rCi0rc3ViIHZtc2wgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTUp OwotKwlWUlJkKDB4ZTdiOCxAXyk7Ci0rfQotK3N1YiB2bXNsZyB7Ci0rCXZtc2woQF9bMC4uM10s MywkX1s0XSk7Ci0rfQotKwotK3N1YiB2bnggewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlm ICgkI18hPTIpOwotKwlWUlJjKDB4ZTc2YyxAXyk7Ci0rfQotKwotK3N1YiB2bm4gewotKwljb25m ZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlWUlJjKDB4ZTc2ZSxAXyk7Ci0rfQot KwotK3N1YiB2b2MgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlW UlJjKDB4ZTc2ZixAXyk7Ci0rfQotKwotK3N1YiB2cG9wY3RiIHsKLSsJdnBvcGN0KEBfLDApOwot K30KLStzdWIgdnBvcGN0aCB7Ci0rCXZwb3BjdChAXywxKTsKLSt9Ci0rc3ViIHZwb3BjdGYgewot Kwl2cG9wY3QoQF8sMik7Ci0rfQotK3N1YiB2cG9wY3RnIHsKLSsJdnBvcGN0KEBfLDMpOwotK30K LSsKLSsjIFZYRSAtIEZsb2F0aW5nLVBvaW50IEluc3RydWN0aW9ucwotKwotK3N1YiB2ZmFzYiB7 Ci0rCXZmYShAXywyLDApOwotK30KLStzdWIgd2Zhc2IgewotKwl2ZmEoQF8sMiw4KTsKLSt9Ci0r c3ViIHdmYXhiIHsKLSsJdmZhKEBfLDQsOCk7Ci0rfQotKwotK3N1YiB3ZmNzYiB7Ci0rCXdmYyhA XywyLDApOwotK30KLStzdWIgd2ZjeGIgewotKwl3ZmMoQF8sNCwwKTsKLSt9Ci0rCi0rc3ViIHZm Y2VzYiB7Ci0rCXZmY2UoQF8sMiwwLDApOwotK30KLStzdWIgdmZjZXNicyB7Ci0rCXZmY2UoQF8s MiwwLDEpOwotK30KLStzdWIgd2ZjZXNiIHsKLSsJdmZjZShAXywyLDgsMCk7Ci0rfQotK3N1YiB3 ZmNlc2JzIHsKLSsJdmZjZShAXywyLDgsMSk7Ci0rfQotK3N1YiB3ZmNleGIgewotKwl2ZmNlKEBf LDQsOCwwKTsKLSt9Ci0rc3ViIHdmY2V4YnMgewotKwl2ZmNlKEBfLDQsOCwxKTsKLSt9Ci0rCi0r c3ViIHZmY2hzYiB7Ci0rCXZmY2goQF8sMiwwLDApOwotK30KLStzdWIgdmZjaHNicyB7Ci0rCXZm Y2goQF8sMiwwLDEpOwotK30KLStzdWIgd2ZjaHNiIHsKLSsJdmZjaChAXywyLDgsMCk7Ci0rfQot K3N1YiB3ZmNoc2JzIHsKLSsJdmZjaChAXywyLDgsMSk7Ci0rfQotK3N1YiB3ZmNoeGIgewotKwl2 ZmNoKEBfLDQsOCwwKTsKLSt9Ci0rc3ViIHdmY2h4YnMgewotKwl2ZmNoKEBfLDQsOCwxKTsKLSt9 Ci0rCi0rc3ViIHZmY2hlc2IgewotKwl2ZmNoZShAXywyLDAsMCk7Ci0rfQotK3N1YiB2ZmNoZXNi cyB7Ci0rCXZmY2hlKEBfLDIsMCwxKTsKLSt9Ci0rc3ViIHdmY2hlc2IgewotKwl2ZmNoZShAXywy LDgsMCk7Ci0rfQotK3N1YiB3ZmNoZXNicyB7Ci0rCXZmY2hlKEBfLDIsOCwxKTsKLSt9Ci0rc3Vi IHdmY2hleGIgewotKwl2ZmNoZShAXyw0LDgsMCk7Ci0rfQotK3N1YiB3ZmNoZXhicyB7Ci0rCXZm Y2hlKEBfLDQsOCwxKTsKLSt9Ci0rCi0rc3ViIHZmZHNiIHsKLSsJdmZkKEBfLDIsMCk7Ci0rfQot K3N1YiB3ZmRzYiB7Ci0rCXZmZChAXywyLDgpOwotK30KLStzdWIgd2ZkeGIgewotKwl2ZmQoQF8s NCw4KTsKLSt9Ci0rCi0rc3ViIHZmaXNiIHsKLSsJdmZpKEBfWzAuLjFdLDIsQF9bMi4uM10pOwot K30KLStzdWIgd2Zpc2IgewotKwl2ZmkoQF9bMC4uMV0sMiwweDh8JF9bMl0sJF9bM10pOwotK30K LStzdWIgd2ZpeGIgewotKwl2ZmkoQF9bMC4uMV0sNCwweDh8JF9bMl0sJF9bM10pOwotK30KLSsK LStzdWIgdmZsbCB7Ci0rCXZsZGUoQF8pOwotK30KLStzdWIgdmZsbHMgewotKwl2ZmxsKEBfLDIs MCk7Ci0rfQotK3N1YiB3ZmxscyB7Ci0rCXZmbGwoQF8sMiw4KTsKLSt9Ci0rc3ViIHdmbGxkIHsK LSsJdmZsbChAXywzLDgpOwotK30KLSsKLStzdWIgdmZsciB7Ci0rCXZsZWQoQF8pOwotK30KLStz dWIgdmZscmQgewotKwl2ZmxyKEBfWzAuLjFdLDMsQF9bMi4uM10pOwotK30KLStzdWIgd2ZscmQg ewotKwl2ZmxyKEBfWzAuLjFdLDMsMHg4fCRfWzJdLCRfWzNdKTsKLSt9Ci0rc3ViIHdmbHJ4IHsK LSsJdmZscihAX1swLi4xXSw0LDB4OHwkX1syXSwkX1szXSk7Ci0rfQotKwotK3N1YiB2Zm1heCB7 Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NSk7Ci0rCVZSUmMoMHhlN2VmLEBf KTsKLSt9Ci0rc3ViIHZmbWF4c2IgewotKwl2Zm1heChAX1swLi4yXSwyLDAsJF9bM10pOwotK30K LStzdWIgdmZtYXhkYiB7Ci0rCXZmbWF4KEBfWzAuLjJdLDMsMCwkX1szXSk7Ci0rfQotK3N1YiB3 Zm1heHNiIHsKLSsJdmZtYXgoQF9bMC4uMl0sMiw4LCRfWzNdKTsKLSt9Ci0rc3ViIHdmbWF4ZGIg ewotKwl2Zm1heChAX1swLi4yXSwzLDgsJF9bM10pOwotK30KLStzdWIgd2ZtYXh4YiB7Ci0rCXZm bWF4KEBfWzAuLjJdLDQsOCwkX1szXSk7Ci0rfQotKwotK3N1YiB2Zm1pbiB7Ci0rCWNvbmZlc3Mo ZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NSk7Ci0rCVZSUmMoMHhlN2VlLEBfKTsKLSt9Ci0rc3Vi IHZmbWluc2IgewotKwl2Zm1pbihAX1swLi4yXSwyLDAsJF9bNV0pOwotK30KLStzdWIgdmZtaW5k YiB7Ci0rCXZmbWluKEBfWzAuLjJdLDMsMCwkX1s1XSk7Ci0rfQotK3N1YiB3Zm1pbnNiIHsKLSsJ dmZtaW4oQF9bMC4uMl0sMiw4LCRfWzVdKTsKLSt9Ci0rc3ViIHdmbWluZGIgewotKwl2Zm1pbihA X1swLi4yXSwzLDgsJF9bNV0pOwotK30KLStzdWIgd2ZtaW54YiB7Ci0rCXZmbWluKEBfWzAuLjJd LDQsOCwkX1s1XSk7Ci0rfQotKwotK3N1YiB2Zm1zYiB7Ci0rCXZmbShAXywyLDApOwotK30KLStz dWIgd2Ztc2IgewotKwl2Zm0oQF8sMiw4KTsKLSt9Ci0rc3ViIHdmbXhiIHsKLSsJdmZtKEBfLDQs OCk7Ci0rfQotKwotK3N1YiB2Zm1hc2IgewotKwl2Zm1hKEBfLDAsMik7Ci0rfQotK3N1YiB3Zm1h c2IgewotKwl2Zm1hKEBfLDgsMik7Ci0rfQotK3N1YiB3Zm1heGIgewotKwl2Zm1hKEBfLDgsNCk7 Ci0rfQotKwotK3N1YiB2Zm1zc2IgewotKwl2Zm1zKEBfLDAsMik7Ci0rfQotK3N1YiB3Zm1zc2Ig ewotKwl2Zm1zKEBfLDgsMik7Ci0rfQotK3N1YiB3Zm1zeGIgewotKwl2Zm1zKEBfLDgsNCk7Ci0r fQotKwotK3N1YiB2Zm5tYSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NSk7 Ci0rCVZSUmUoMHhlNzlmLEBfKTsKLSt9Ci0rc3ViIHZmbm1hc2IgewotKwl2Zm5tYShAXywwLDIp OwotK30KLStzdWIgdmZubWFkYiB7Ci0rCXZmbm1hKEBfLDAsMyk7Ci0rfQotK3N1YiB3Zm5tYXNi IHsKLSsJdmZubWEoQF8sOCwyKTsKLSt9Ci0rc3ViIHdmbm1hZGIgewotKwl2Zm5tYShAXyw4LDMp OwotK30KLStzdWIgd2ZubWF4YiB7Ci0rCXZmbm1hKEBfLDgsNCk7Ci0rfQotKwotK3N1YiB2Zm5t cyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NSk7Ci0rCVZSUmUoMHhlNzll LEBfKTsKLSt9Ci0rc3ViIHZmbm1zc2IgewotKwl2Zm5tcyhAXywwLDIpOwotK30KLStzdWIgdmZu bXNkYiB7Ci0rCXZmbm1zKEBfLDAsMyk7Ci0rfQotK3N1YiB3Zm5tc3NiIHsKLSsJdmZubXMoQF8s OCwyKTsKLSt9Ci0rc3ViIHdmbm1zZGIgewotKwl2Zm5tcyhAXyw4LDMpOwotK30KLStzdWIgd2Zu bXN4YiB7Ci0rCXZmbm1zKEBfLDgsNCk7Ci0rfQotKwotK3N1YiB2ZnBzb3NiIHsKLSsJdmZwc28o QF9bMC4uMV0sMiwwLCRfWzJdKTsKLSt9Ci0rc3ViIHdmcHNvc2IgewotKwl2ZnBzbyhAX1swLi4x XSwyLDgsJF9bMl0pOwotK30KLStzdWIgdmZsY3NiIHsKLSsJdmZwc28oQF8sMiwwLDApOwotK30K LStzdWIgd2ZsY3NiIHsKLSsJdmZwc28oQF8sMiw4LDApOwotK30KLStzdWIgdmZsbnNiIHsKLSsJ dmZwc28oQF8sMiwwLDEpOwotK30KLStzdWIgd2ZsbnNiIHsKLSsJdmZwc28oQF8sMiw4LDEpOwot K30KLStzdWIgdmZscHNiIHsKLSsJdmZwc28oQF8sMiwwLDIpOwotK30KLStzdWIgd2ZscHNiIHsK LSsJdmZwc28oQF8sMiw4LDIpOwotK30KLStzdWIgdmZwc294YiB7Ci0rCXZmcHNvKEBfWzAuLjFd LDQsMCwkX1syXSk7Ci0rfQotK3N1YiB3ZnBzb3hiIHsKLSsJdmZwc28oQF9bMC4uMV0sNCw4LCRf WzJdKTsKLSt9Ci0rc3ViIHZmbGN4YiB7Ci0rCXZmcHNvKEBfLDQsMCwwKTsKLSt9Ci0rc3ViIHdm bGN4YiB7Ci0rCXZmcHNvKEBfLDQsOCwwKTsKLSt9Ci0rc3ViIHZmbG54YiB7Ci0rCXZmcHNvKEBf LDQsMCwxKTsKLSt9Ci0rc3ViIHdmbG54YiB7Ci0rCXZmcHNvKEBfLDQsOCwxKTsKLSt9Ci0rc3Vi IHZmbHB4YiB7Ci0rCXZmcHNvKEBfLDQsMCwyKTsKLSt9Ci0rc3ViIHdmbHB4YiB7Ci0rCXZmcHNv KEBfLDQsOCwyKTsKLSt9Ci0rCi0rc3ViIHZmc3FzYiB7Ci0rCXZmc3EoQF8sMiwwKTsKLSt9Ci0r c3ViIHdmc3FzYiB7Ci0rCXZmc3EoQF8sMiw4KTsKLSt9Ci0rc3ViIHdmc3F4YiB7Ci0rCXZmc3Eo QF8sNCw4KTsKLSt9Ci0rCi0rc3ViIHZmc3NiIHsKLSsJdmZzKEBfLDIsMCk7Ci0rfQotK3N1YiB3 ZnNzYiB7Ci0rCXZmcyhAXywyLDgpOwotK30KLStzdWIgd2ZzeGIgewotKwl2ZnMoQF8sNCw4KTsK LSt9Ci0rCi0rc3ViIHZmdGNpc2IgewotKwl2ZnRjaShAXywyLDApOwotK30KLStzdWIgd2Z0Y2lz YiB7Ci0rCXZmdGNpKEBfLDIsOCk7Ci0rfQotK3N1YiB3ZnRjaXhiIHsKLSsJdmZ0Y2koQF8sNCw4 KTsKLSt9Ci0rCi0rIyBWWEQgLSBTdXBwb3J0IEluc3RydWN0aW9ucwotKwotK3N1YiB2bHJsciB7 Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZSU2QoMHhlNjM3LEBf KTsKLSt9Ci0rCi0rc3ViIHZscmwgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18h PTIpOwotKwlWU0koMHhlNjM1LEBfKTsKLSt9Ci0rCi0rc3ViIHZzdHJsciB7Ci0rCWNvbmZlc3Mo ZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZSU2QoMHhlNjNmLEBfKTsKLSt9Ci0rCi0r c3ViIHZzdHJsIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJVlNJ KDB4ZTYzZCxAXyk7Ci0rfQotKwotK3N1YiB2YXAgewotKwljb25mZXNzKGVycigiQVJHTlVNIikp IGlmICgkI18hPTQpOwotKwlWUklmKDB4ZTY3MSxAXyk7Ci0rfQotKwotK3N1YiB2Y3AgewotKwlj b25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlWUlJoKDB4ZTY3NyxAXyk7Ci0r fQotKwotK3N1YiB2Y3ZiIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsK LSsJVlJSaSgweGU2NTAsQF8pOwotK30KLSsKLStzdWIgdmN2YmcgewotKwljb25mZXNzKGVycigi QVJHTlVNIikpIGlmICgkI18hPTIpOwotKwlWUlJpKDB4ZTY1MixAXyk7Ci0rfQotKwotK3N1YiB2 Y3ZkIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0zKTsKLSsJVlJJaSgweGU2 NTgsQF8pOwotK30KLSsKLStzdWIgdmN2ZGcgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlm ICgkI18hPTMpOwotKwlWUklpKDB4ZTY1YSxAXyk7Ci0rfQotKwotK3N1YiB2ZHAgewotKwljb25m ZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTQpOwotKwlWUklmKDB4ZTY3YSxAXyk7Ci0rfQot KwotK3N1YiB2bGlwIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0yKTsKLSsJ VlJJaCgweGU2NDksQF8pOwotK30KLSsKLStzdWIgdm1wIHsKLSsJY29uZmVzcyhlcnIoIkFSR05V TSIpKSBpZiAoJCNfIT00KTsKLSsJVlJJZigweGU2NzgsQF8pOwotK30KLSsKLStzdWIgdm1zcCB7 Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCVZSSWYoMHhlNjc5LEBf KTsKLSt9Ci0rCi0rc3ViIHZwa3ogewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18h PTIpOwotKwlWU0koMHhlNjM0LEBfKTsKLSt9Ci0rCi0rc3ViIHZwc29wIHsKLSsJY29uZmVzcyhl cnIoIkFSR05VTSIpKSBpZiAoJCNfIT00KTsKLSsJVlJJZygweGU2NWIsQF8pOwotK30KLSsKLStz dWIgdnJwIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT00KTsKLSsJVlJJZigw eGU2N2IsQF8pOwotK30KLSsKLStzdWIgdnNkcCB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkg aWYgKCQjXyE9NCk7Ci0rCVZSSWYoMHhlNjdlLEBfKTsKLSt9Ci0rCi0rc3ViIHZzcnAgewotKwlj b25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTQpOwotKwlWUklnKDB4ZTY1OSxAXyk7Ci0r fQotKwotK3N1YiB2c3AgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTQpOwot KwlWUklmKDB4ZTY3MyxAXyk7Ci0rfQotKwotK3N1YiB2dHAgewotKwljb25mZXNzKGVycigiQVJH TlVNIikpIGlmICgkI18hPTApOwotKwlWUlJnKDB4ZTY1ZixAXyk7Ci0rfQotKwotK3N1YiB2dXBr eiB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Mik7Ci0rCVZTSSgweGU2M2Ms QF8pOwotK30KLSsKLSsjCi0rIyBJbnN0cnVjdGlvbiBGb3JtYXRzCi0rIwotKwotK3N1YiBSUkUg ewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI188MHx8MjwkI18pOwotKwlteSAkb3Bz PWpvaW4oJywnLEBfWzEuLiQjX10pOwotKwlteSAkbWVtbj0oY2FsbGVyKDEpKVszXTsKLSsJJG1l bW49fnMvXi4qOjovLzsKLSsJbXkgKCRvcGNvZGUsJHIxLCRyMik9KHNoaWZ0LGdldF9SKHNoaWZ0 KSxnZXRfUihzaGlmdCkpOwotKwotKwkkb3V0Lj0iXHQubG9uZ1x0Ii5zcHJpbnRmKCIlIzAxMHgi LCgkb3Bjb2RlPDwxNnwkcjE8PDR8JHIyKSk7Ci0rCSRvdXQuPSJcdCMgJG1lbW5cdCRvcHNcbiIK LSt9Ci0rCi0rc3ViIFJSRmIgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI188M3x8 NDwkI18pOwotKwlteSAkb3BzPWpvaW4oJywnLEBfWzEuLiQjX10pOwotKwlteSAkbWVtbj0oY2Fs bGVyKDEpKVszXTsKLSsJJG1lbW49fnMvXi4qOjovLzsKLSsJbXkgKCRvcGNvZGUsJHIxLCRyMywk cjIsJG00KT0oc2hpZnQsZ2V0X1Ioc2hpZnQpLGdldF9SKHNoaWZ0KQotKwkgICAgLGdldF9SKHNo aWZ0KSxnZXRfTShzaGlmdCkpOwotKwotKwkkb3V0Lj0iXHQubG9uZ1x0IgotKwkgICAgLnNwcmlu dGYoIiUjMDEweCIsKCRvcGNvZGU8PDE2fCRyMzw8MTJ8JG00PDw4fCRyMTw8NHwkcjIpKTsKLSsJ JG91dC49Ilx0IyAkbWVtblx0JG9wc1xuIgotK30KLSsKLStzdWIgUyB7Ci0rCWNvbmZlc3MoZXJy KCJBUkdOVU0iKSkgaWYgKCQjXzwwfHwxPCQjXyk7Ci0rCW15ICRvcHM9am9pbignLCcsQF9bMS4u JCNfXSk7Ci0rCW15ICRtZW1uPShjYWxsZXIoMSkpWzNdOwotKwkkbWVtbj1+cy9eLio6Oi8vOwot KwlteSAoJG9wY29kZSwkZDIsJGIyKT0oc2hpZnQsZ2V0X0RCKHNoaWZ0KSk7Ci0rCi0rCSRvdXQu PSJcdC5sb25nXHQiLnNwcmludGYoIiUjMDEweCIsKCRvcGNvZGU8PDE2fCRiMjw8MTJ8JGQyKSk7 Ci0rCSRvdXQuPSJcdCMgJG1lbW5cdCRvcHNcbiIKLSt9Ci0rCi0rc3ViIFZSSWEgewotKwljb25m ZXNzKGVycigiQVJHTlVNIikpIGlmICgkI188Mnx8MzwkI18pOwotKwlteSAkb3BzPWpvaW4oJywn LEBfWzEuLiQjX10pOwotKwlteSAkbWVtbj0oY2FsbGVyKDEpKVszXTsKLSsJJG1lbW49fnMvXi4q OjovLzsKLSsJbXkgKCRvcGNvZGUsJHYxLCRpMiwkbTMpPShzaGlmdCxnZXRfVihzaGlmdCksZ2V0 X0koc2hpZnQsMTYpLAotKwkgICAgZ2V0X00oc2hpZnQpKTsKLSsKLSsJJG91dC49Ilx0LndvcmRc dCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoJG9wY29kZSYweGZmMDB8KCR2MSYweGYpPDw0 KSkuIiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsJGkyKS4iLCI7Ci0rCSRvdXQuPXNwcmlu dGYoIiUjMDZ4IiwoJG0zPDwxMnxSWEIoJHYxKTw8OHwkb3Bjb2RlJjB4ZmYpKTsKLSsJJG91dC49 Ilx0IyAkbWVtblx0JG9wc1xuIgotK30KLSsKLStzdWIgVlJJYiB7Ci0rCWNvbmZlc3MoZXJyKCJB UkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCW15ICRvcHM9am9pbignLCcsQF9bMS4uJCNfXSk7Ci0r CW15ICRtZW1uPShjYWxsZXIoMSkpWzNdOwotKwkkbWVtbj1+cy9eLio6Oi8vOwotKwlteSAoJG9w Y29kZSwkdjEsJGkyLCRpMywkbTQpPShzaGlmdCxnZXRfVihzaGlmdCksZ2V0X0koc2hpZnQsOCks Ci0rCSAgICAsZ2V0X0koc2hpZnQsOCksZ2V0X00oc2hpZnQpKTsKLSsKLSsJJG91dC49Ilx0Lndv cmRcdCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoJG9wY29kZSYweGZmMDB8KCR2MSYweGYp PDw0KSkuIiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRpMjw8OHwkaTMpKS4iLCI7Ci0r CSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoJG00PDwxMnxSWEIoJHYxKTw8OHwkb3Bjb2RlJjB4ZmYp KTsKLSsJJG91dC49Ilx0IyAkbWVtblx0JG9wc1xuIgotK30KLSsKLStzdWIgVlJJYyB7Ci0rCWNv bmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9NCk7Ci0rCW15ICRvcHM9am9pbignLCcsQF9b MS4uJCNfXSk7Ci0rCW15ICRtZW1uPShjYWxsZXIoMSkpWzNdOwotKwkkbWVtbj1+cy9eLio6Oi8v OwotKwlteSAoJG9wY29kZSwkdjEsJHYzLCRpMiwkbTQpPShzaGlmdCxnZXRfVihzaGlmdCksZ2V0 X1Yoc2hpZnQpLAotKwkgICAgLGdldF9JKHNoaWZ0LDE2KSxnZXRfTShzaGlmdCkpOwotKwotKwkk b3V0Lj0iXHQud29yZFx0IjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkb3Bjb2RlJjB4ZmYw MHwoJHYxJjB4Zik8PDQpfCgkdjMmMHhmKSkuIiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIs JGkyKS4iLCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoJG00PDwxMnxSWEIoJHYxLCR2Myk8 PDh8JG9wY29kZSYweGZmKSk7Ci0rCSRvdXQuPSJcdCMgJG1lbW5cdCRvcHNcbiIKLSt9Ci0rCi0r c3ViIFZSSWQgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI188NHx8JCNfPjUpOwot KwlteSAkb3BzPWpvaW4oJywnLEBfWzEuLiQjX10pOwotKwlteSAkbWVtbj0oY2FsbGVyKDEpKVsz XTsKLSsJJG1lbW49fnMvXi4qOjovLzsKLSsJbXkgKCRvcGNvZGUsJHYxLCR2MiwkdjMsJGk0LCRt NSk9KHNoaWZ0LGdldF9WKHNoaWZ0KSxnZXRfVihzaGlmdCksCi0rCSAgICAsZ2V0X1Yoc2hpZnQp LGdldF9JKHNoaWZ0LDgpLGdldF9NKHNoaWZ0KSk7Ci0rCi0rCSRvdXQuPSJcdC53b3JkXHQiOwot Kwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRvcGNvZGUmMHhmZjAwfCgkdjEmMHhmKTw8NCl8KCR2 MiYweGYpKS4iLCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoKCR2MyYweGYpPDwxMnwkaTQp KS4iLCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoJG01PDwxMnxSWEIoJHYxLCR2MiwkdjMp PDw4fCRvcGNvZGUmMHhmZikpOwotKwkkb3V0Lj0iXHQjICRtZW1uXHQkb3BzXG4iCi0rfQotKwot K3N1YiBWUkllIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT01KTsKLSsJbXkg JG9wcz1qb2luKCcsJyxAX1sxLi4kI19dKTsKLSsJbXkgJG1lbW49KGNhbGxlcigxKSlbM107Ci0r CSRtZW1uPX5zL14uKjo6Ly87Ci0rCW15ICgkb3Bjb2RlLCR2MSwkdjIsJGkzLCRtNCwkbTUpPShz aGlmdCxnZXRfVihzaGlmdCksZ2V0X1Yoc2hpZnQpLAotKwkgICAgLGdldF9JKHNoaWZ0LDEyKSxn ZXRfTShzaGlmdCksZ2V0X00oc2hpZnQpKTsKLSsKLSsJJG91dC49Ilx0LndvcmRcdCI7Ci0rCSRv dXQuPXNwcmludGYoIiUjMDZ4IiwoJG9wY29kZSYweGZmMDB8KCR2MSYweGYpPDw0KXwoJHYyJjB4 ZikpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkaTM8PDR8JG01KSkuIiwiOwotKwkk b3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRtNDw8MTJ8UlhCKCR2MSwkdjIpPDw4fCRvcGNvZGUmMHhm ZikpOwotKwkkb3V0Lj0iXHQjICRtZW1uXHQkb3BzXG4iCi0rfQotKwotK3N1YiBWUklmIHsKLSsJ Y29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT01KTsKLSsJbXkgJG9wcz1qb2luKCcsJyxA X1sxLi4kI19dKTsKLSsJbXkgJG1lbW49KGNhbGxlcigxKSlbM107Ci0rCSRtZW1uPX5zL14uKjo6 Ly87Ci0rCW15ICgkb3Bjb2RlLCR2MSwkdjIsJHYzLCRpNCwkbTUpPShzaGlmdCxnZXRfVihzaGlm dCksZ2V0X1Yoc2hpZnQpLAotKwkgICAgLGdldF9WKHNoaWZ0KSxnZXRfSShzaGlmdCw4KSxnZXRf TShzaGlmdCkpOwotKwotKwkkb3V0Lj0iXHQud29yZFx0IjsKLSsJJG91dC49c3ByaW50ZigiJSMw NngiLCgkb3Bjb2RlJjB4ZmYwMHwoJHYxJjB4Zik8PDQpfCgkdjImMHhmKSkuIiwiOwotKwkkb3V0 Lj1zcHJpbnRmKCIlIzA2eCIsKCgkdjMmMHhmKTw8MTJ8JG01PDw0KXwkaTQ+PjQpLiIsIjsKLSsJ JG91dC49c3ByaW50ZigiJSMwNngiLCgoJGk0JjB4Zik8PDEyfFJYQigkdjEsJHYyLCR2Myk8PDh8 JG9wY29kZSYweGZmKSk7Ci0rCSRvdXQuPSJcdCMgJG1lbW5cdCRvcHNcbiIKLSt9Ci0rCi0rc3Vi IFZSSWcgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTUpOwotKwlteSAkb3Bz PWpvaW4oJywnLEBfWzEuLiQjX10pOwotKwlteSAkbWVtbj0oY2FsbGVyKDEpKVszXTsKLSsJJG1l bW49fnMvXi4qOjovLzsKLSsJbXkgKCRvcGNvZGUsJHYxLCR2MiwkaTMsJGk0LCRtNSk9KHNoaWZ0 LGdldF9WKHNoaWZ0KSxnZXRfVihzaGlmdCksCi0rCSAgICAsZ2V0X0koc2hpZnQsOCksZ2V0X0ko c2hpZnQsOCksZ2V0X00oc2hpZnQpKTsKLSsKLSsJJG91dC49Ilx0LndvcmRcdCI7Ci0rCSRvdXQu PXNwcmludGYoIiUjMDZ4IiwoJG9wY29kZSYweGZmMDB8KCR2MSYweGYpPDw0KXwoJHYyJjB4Zikp LiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkaTQ8PDh8JG01PDw0fCRpMz4+NCkpLiIs IjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgoJGkzJjB4Zik8PDEyfFJYQigkdjEsJHYyKTw8 OHwkb3Bjb2RlJjB4ZmYpKTsKLSsJJG91dC49Ilx0IyAkbWVtblx0JG9wc1xuIgotK30KLSsKLStz dWIgVlJJaCB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCW15ICRv cHM9am9pbignLCcsQF9bMS4uJCNfXSk7Ci0rCW15ICRtZW1uPShjYWxsZXIoMSkpWzNdOwotKwkk bWVtbj1+cy9eLio6Oi8vOwotKwlteSAoJG9wY29kZSwkdjEsJGkyLCRpMyk9KHNoaWZ0LGdldF9W KHNoaWZ0KSxnZXRfSShzaGlmdCwxNiksCi0rCSAgICBnZXRfSShzaGlmdCw0KSk7Ci0rCi0rCSRv dXQuPSJcdC53b3JkXHQiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRvcGNvZGUmMHhmZjAw fCgkdjEmMHhmKTw8NCkpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCRpMikuIiwiOwot Kwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRpMzw8MTJ8UlhCKCR2MSk8PDh8JG9wY29kZSYweGZm KSk7Ci0rCSRvdXQuPSJcdCMgJG1lbW5cdCRvcHNcbiIKLSt9Ci0rCi0rc3ViIFZSSWkgewotKwlj b25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTQpOwotKwlteSAkb3BzPWpvaW4oJywnLEBf WzEuLiQjX10pOwotKwlteSAkbWVtbj0oY2FsbGVyKDEpKVszXTsKLSsJJG1lbW49fnMvXi4qOjov LzsKLSsJbXkgKCRvcGNvZGUsJHYxLCRyMiwkaTMsJG00KT0oc2hpZnQsZ2V0X1Yoc2hpZnQpLGdl dF9SKHNoaWZ0KSwKLSsJICAgICxnZXRfSShzaGlmdCw4KSxnZXRfTShzaGlmdCkpOwotKwotKwkk b3V0Lj0iXHQud29yZFx0IjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkb3Bjb2RlJjB4ZmYw MHwoJHYxJjB4Zik8PDQpfCRyMikuIiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRtNDw8 NHwkaTM+PjQpKS4iLCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoKCRpMyYweGYpPDwxMnxS WEIoJHYxKTw8OHwkb3Bjb2RlJjB4ZmYpKTsKLSsJJG91dC49Ilx0IyAkbWVtblx0JG9wc1xuIgot K30KLSsKLStzdWIgVlJSYSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXzwyfHw1 PCQjXyk7Ci0rCW15ICRvcHM9am9pbignLCcsQF9bMS4uJCNfXSk7Ci0rCW15ICRtZW1uPShjYWxs ZXIoMSkpWzNdOwotKwkkbWVtbj1+cy9eLio6Oi8vOwotKwlteSAoJG9wY29kZSwkdjEsJHYyLCRt MywkbTQsJG01KT0oc2hpZnQsZ2V0X1Yoc2hpZnQpLGdldF9WKHNoaWZ0KSwKLSsJICAgIGdldF9N KHNoaWZ0KSxnZXRfTShzaGlmdCksZ2V0X00oc2hpZnQpKTsKLSsKLSsJJG91dC49Ilx0LndvcmRc dCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoJG9wY29kZSYweGZmMDB8KCR2MSYweGYpPDw0 fCgkdjImMHhmKSkpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkbTU8PDR8JG00KSku IiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRtMzw8MTJ8UlhCKCR2MSwkdjIpPDw4fCRv cGNvZGUmMHhmZikpOwotKwkkb3V0Lj0iXHQjICRtZW1uXHQkb3BzXG4iCi0rfQotKwotK3N1YiBW UlJiIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfPDN8fDU8JCNfKTsKLSsJbXkg JG9wcz1qb2luKCcsJyxAX1sxLi4kI19dKTsKLSsJbXkgJG1lbW49KGNhbGxlcigxKSlbM107Ci0r CSRtZW1uPX5zL14uKjo6Ly87Ci0rCW15ICgkb3Bjb2RlLCR2MSwkdjIsJHYzLCRtNCwkbTUpPShz aGlmdCxnZXRfVihzaGlmdCksZ2V0X1Yoc2hpZnQpLAotKwkgICAgZ2V0X1Yoc2hpZnQpLGdldF9N KHNoaWZ0KSxnZXRfTShzaGlmdCkpOwotKwotKwkkb3V0Lj0iXHQud29yZFx0IjsKLSsJJG91dC49 c3ByaW50ZigiJSMwNngiLCgkb3Bjb2RlJjB4ZmYwMHwoJHYxJjB4Zik8PDR8KCR2MiYweGYpKSku IiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCgkdjMmMHhmKTw8MTJ8JG01PDw0KSkuIiwi OwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRtNDw8MTJ8UlhCKCR2MSwkdjIsJHYzKTw8OHwk b3Bjb2RlJjB4ZmYpKTsKLSsJJG91dC49Ilx0IyAkbWVtblx0JG9wc1xuIgotK30KLSsKLStzdWIg VlJSYyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXzwzfHw2PCQjXyk7Ci0rCW15 ICRvcHM9am9pbignLCcsQF9bMS4uJCNfXSk7Ci0rCW15ICRtZW1uPShjYWxsZXIoMSkpWzNdOwot KwkkbWVtbj1+cy9eLio6Oi8vOwotKwlteSAoJG9wY29kZSwkdjEsJHYyLCR2MywkbTQsJG01LCRt Nik9KHNoaWZ0LGdldF9WKHNoaWZ0KSxnZXRfVihzaGlmdCksCi0rCSAgICBnZXRfVihzaGlmdCks Z2V0X00oc2hpZnQpLGdldF9NKHNoaWZ0KSxnZXRfTShzaGlmdCkpOwotKwotKwkkb3V0Lj0iXHQu d29yZFx0IjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkb3Bjb2RlJjB4ZmYwMHwoJHYxJjB4 Zik8PDR8KCR2MiYweGYpKSkuIiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCgkdjMmMHhm KTw8MTJ8JG02PDw0fCRtNSkpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkbTQ8PDEy fFJYQigkdjEsJHYyLCR2Myk8PDh8JG9wY29kZSYweGZmKSk7Ci0rCSRvdXQuPSJcdCMgJG1lbW5c dCRvcHNcbiIKLSt9Ci0rCi0rc3ViIFZSUmQgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlm ICgkI188NHx8NjwkI18pOwotKwlteSAkb3BzPWpvaW4oJywnLEBfWzEuLiQjX10pOwotKwlteSAk bWVtbj0oY2FsbGVyKDEpKVszXTsKLSsJJG1lbW49fnMvXi4qOjovLzsKLSsJbXkgKCRvcGNvZGUs JHYxLCR2MiwkdjMsJHY0LCRtNSwkbTYpPShzaGlmdCxnZXRfVihzaGlmdCksZ2V0X1Yoc2hpZnQp LAotKwkgICAgZ2V0X1Yoc2hpZnQpLGdldF9WKHNoaWZ0KSxnZXRfTShzaGlmdCksZ2V0X00oc2hp ZnQpKTsKLSsKLSsJJG91dC49Ilx0LndvcmRcdCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4Iiwo JG9wY29kZSYweGZmMDB8KCR2MSYweGYpPDw0fCgkdjImMHhmKSkpLiIsIjsKLSsJJG91dC49c3By aW50ZigiJSMwNngiLCgoJHYzJjB4Zik8PDEyfCRtNTw8OHwkbTY8PDQpKS4iLCI7Ci0rCSRvdXQu PXNwcmludGYoIiUjMDZ4IiwoKCR2NCYweGYpPDwxMnxSWEIoJHYxLCR2MiwkdjMsJHY0KTw8OHwk b3Bjb2RlJjB4ZmYpKTsKLSsJJG91dC49Ilx0IyAkbWVtblx0JG9wc1xuIgotK30KLSsKLStzdWIg VlJSZSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXzw0fHw2PCQjXyk7Ci0rCW15 ICRvcHM9am9pbignLCcsQF9bMS4uJCNfXSk7Ci0rCW15ICRtZW1uPShjYWxsZXIoMSkpWzNdOwot KwkkbWVtbj1+cy9eLio6Oi8vOwotKwlteSAoJG9wY29kZSwkdjEsJHYyLCR2MywkdjQsJG01LCRt Nik9KHNoaWZ0LGdldF9WKHNoaWZ0KSxnZXRfVihzaGlmdCksCi0rCSAgICBnZXRfVihzaGlmdCks Z2V0X1Yoc2hpZnQpLGdldF9NKHNoaWZ0KSxnZXRfTShzaGlmdCkpOwotKwotKwkkb3V0Lj0iXHQu d29yZFx0IjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkb3Bjb2RlJjB4ZmYwMHwoJHYxJjB4 Zik8PDR8KCR2MiYweGYpKSkuIiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCgkdjMmMHhm KTw8MTJ8JG02PDw4fCRtNSkpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgoJHY0JjB4 Zik8PDEyfFJYQigkdjEsJHYyLCR2MywkdjQpPDw4fCRvcGNvZGUmMHhmZikpOwotKwkkb3V0Lj0i XHQjICRtZW1uXHQkb3BzXG4iCi0rfQotKwotK3N1YiBWUlJmIHsKLSsJY29uZmVzcyhlcnIoIkFS R05VTSIpKSBpZiAoJCNfIT0zKTsKLSsJbXkgJG9wcz1qb2luKCcsJyxAX1sxLi4kI19dKTsKLSsJ bXkgJG1lbW49KGNhbGxlcigxKSlbM107Ci0rCSRtZW1uPX5zL14uKjo6Ly87Ci0rCW15ICgkb3Bj b2RlLCR2MSwkcjIsJHIzKT0oc2hpZnQsZ2V0X1Yoc2hpZnQpLGdldF9SKHNoaWZ0KSwKLSsJICAg IGdldF9SKHNoaWZ0KSk7Ci0rCi0rCSRvdXQuPSJcdC53b3JkXHQiOwotKwkkb3V0Lj1zcHJpbnRm KCIlIzA2eCIsKCRvcGNvZGUmMHhmZjAwfCgkdjEmMHhmKTw8NHwkcjIpKS4iLCI7Ci0rCSRvdXQu PXNwcmludGYoIiUjMDZ4IiwoJHIzPDwxMikpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngi LChSWEIoJHYxKTw8OHwkb3Bjb2RlJjB4ZmYpKTsKLSsJJG91dC49Ilx0IyAkbWVtblx0JG9wc1xu IgotK30KLSsKLStzdWIgVlJSZyB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9 MSk7Ci0rCW15ICRvcHM9am9pbignLCcsQF9bMS4uJCNfXSk7Ci0rCW15ICRtZW1uPShjYWxsZXIo MSkpWzNdOwotKwkkbWVtbj1+cy9eLio6Oi8vOwotKwlteSAoJG9wY29kZSwkdjEpPShzaGlmdCxn ZXRfVihzaGlmdCkpOwotKwotKwkkb3V0Lj0iXHQud29yZFx0IjsKLSsJJG91dC49c3ByaW50Zigi JSMwNngiLCgkb3Bjb2RlJjB4ZmYwMHwoJHYxJjB4ZikpKS4iLCI7Ci0rCSRvdXQuPXNwcmludGYo IiUjMDZ4IiwweDAwMDApLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLChSWEIoMCwkdjEp PDw4fCRvcGNvZGUmMHhmZikpOwotKwkkb3V0Lj0iXHQjICRtZW1uXHQkb3BzXG4iCi0rfQotKwot K3N1YiBWUlJoIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfPDJ8fCQjXz4zKTsK LSsJbXkgJG9wcz1qb2luKCcsJyxAX1sxLi4kI19dKTsKLSsJbXkgJG1lbW49KGNhbGxlcigxKSlb M107Ci0rCSRtZW1uPX5zL14uKjo6Ly87Ci0rCW15ICgkb3Bjb2RlLCR2MSwkdjIsJG0zKT0oc2hp ZnQsZ2V0X1Yoc2hpZnQpLGdldF9WKHNoaWZ0KSwKLSsJICAgIGdldF9NKHNoaWZ0KSk7Ci0rCi0r CSRvdXQuPSJcdC53b3JkXHQiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRvcGNvZGUmMHhm ZjAwfCgkdjEmMHhmKSkpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgoJHYyJjB4Zik8 PDEyfCRtMzw8NCkpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLChSWEIoMCwkdjEsJHYy KTw8OHwkb3Bjb2RlJjB4ZmYpKTsKLSsJJG91dC49Ilx0IyAkbWVtblx0JG9wc1xuIgotK30KLSsK LStzdWIgVlJSaSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCW15 ICRvcHM9am9pbignLCcsQF9bMS4uJCNfXSk7Ci0rCW15ICRtZW1uPShjYWxsZXIoMSkpWzNdOwot KwkkbWVtbj1+cy9eLio6Oi8vOwotKwlteSAoJG9wY29kZSwkcjEsJHYyLCRtMyk9KHNoaWZ0LGdl dF9SKHNoaWZ0KSxnZXRfVihzaGlmdCksCi0rCSAgICBnZXRfTShzaGlmdCkpOwotKwotKwkkb3V0 Lj0iXHQud29yZFx0IjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkb3Bjb2RlJjB4ZmYwMHwk cjE8PDR8KCR2MiYweGYpKSkuIiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRtMzw8NCkp LiJcLCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoUlhCKDAsJHYyKTw8OHwkb3Bjb2RlJjB4 ZmYpKTsKLSsJJG91dC49Ilx0IyAkbWVtblx0JG9wc1xuIgotK30KLSsKLStzdWIgVlJTYSB7Ci0r CWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXzwzfHwkI18+NCk7Ci0rCW15ICRvcHM9am9p bignLCcsQF9bMS4uJCNfXSk7Ci0rCW15ICRtZW1uPShjYWxsZXIoMSkpWzNdOwotKwkkbWVtbj1+ cy9eLio6Oi8vOwotKwlteSAoJG9wY29kZSwkdjEsJHYzLCRkMiwkYjIsJG00KT0oc2hpZnQsZ2V0 X1Yoc2hpZnQpLGdldF9WKHNoaWZ0KSwKLSsJICAgIGdldF9EQihzaGlmdCksZ2V0X00oc2hpZnQp KTsKLSsKLSsJJG91dC49Ilx0LndvcmRcdCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoJG9w Y29kZSYweGZmMDB8KCR2MSYweGYpPDw0fCgkdjMmMHhmKSkpLiIsIjsKLSsJJG91dC49c3ByaW50 ZigiJSMwNngiLCgkYjI8PDEyfCRkMikpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgk bTQ8PDEyfFJYQigkdjEsJHYzKTw8OHwkb3Bjb2RlJjB4ZmYpKTsKLSsJJG91dC49Ilx0IyAkbWVt blx0JG9wc1xuIgotK30KLSsKLStzdWIgVlJTYiB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkg aWYgKCQjXzwzfHwkI18+NCk7Ci0rCW15ICRvcHM9am9pbignLCcsQF9bMS4uJCNfXSk7Ci0rCW15 ICRtZW1uPShjYWxsZXIoMSkpWzNdOwotKwkkbWVtbj1+cy9eLio6Oi8vOwotKwlteSAoJG9wY29k ZSwkdjEsJHIzLCRkMiwkYjIsJG00KT0oc2hpZnQsZ2V0X1Yoc2hpZnQpLGdldF9SKHNoaWZ0KSwK LSsJICAgIGdldF9EQihzaGlmdCksZ2V0X00oc2hpZnQpKTsKLSsKLSsJJG91dC49Ilx0LndvcmRc dCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoJG9wY29kZSYweGZmMDB8KCR2MSYweGYpPDw0 fCRyMykpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkYjI8PDEyfCRkMikpLiIsIjsK LSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkbTQ8PDEyfFJYQigkdjEpPDw4fCRvcGNvZGUmMHhm ZikpOwotKwkkb3V0Lj0iXHQjICRtZW1uXHQkb3BzXG4iCi0rfQotKwotK3N1YiBWUlNjIHsKLSsJ Y29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT00KTsKLSsJbXkgJG9wcz1qb2luKCcsJyxA X1sxLi4kI19dKTsKLSsJbXkgJG1lbW49KGNhbGxlcigxKSlbM107Ci0rCSRtZW1uPX5zL14uKjo6 Ly87Ci0rCW15ICgkb3Bjb2RlLCRyMSwkdjMsJGQyLCRiMiwkbTQpPShzaGlmdCxnZXRfUihzaGlm dCksZ2V0X1Yoc2hpZnQpLAotKwkgICAgZ2V0X0RCKHNoaWZ0KSxnZXRfTShzaGlmdCkpOwotKwot Kwkkb3V0Lj0iXHQud29yZFx0IjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkb3Bjb2RlJjB4 ZmYwMHwkcjE8PDR8KCR2MyYweGYpKSkuIiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRi Mjw8MTJ8JGQyKSkuIiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRtNDw8MTJ8UlhCKDAs JHYzKTw8OHwkb3Bjb2RlJjB4ZmYpKTsKLSsJJG91dC49Ilx0IyAkbWVtblx0JG9wc1xuIgotK30K LSsKLStzdWIgVlJTZCB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0r CW15ICRvcHM9am9pbignLCcsQF9bMS4uJCNfXSk7Ci0rCW15ICRtZW1uPShjYWxsZXIoMSkpWzNd OwotKwkkbWVtbj1+cy9eLio6Oi8vOwotKwlteSAoJG9wY29kZSwkdjEsJHIzLCRkMiwkYjIpPShz aGlmdCxnZXRfVihzaGlmdCksZ2V0X1Ioc2hpZnQpLAotKwkgICAgZ2V0X0RCKHNoaWZ0KSk7Ci0r Ci0rCSRvdXQuPSJcdC53b3JkXHQiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRvcGNvZGUm MHhmZjAwfCRyMykpLiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgkYjI8PDEyfCRkMikp LiIsIjsKLSsJJG91dC49c3ByaW50ZigiJSMwNngiLCgoJHYxJjB4Zik8PDEyfFJYQigwLDAsMCwk djEpPDw4fCRvcGNvZGUmMHhmZikpOwotKwkkb3V0Lj0iXHQjICRtZW1uXHQkb3BzXG4iCi0rfQot KwotK3N1YiBWUlYgewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI188Mnx8JCNfPjMp OwotKwlteSAkb3BzPWpvaW4oJywnLEBfWzEuLiQjX10pOwotKwlteSAkbWVtbj0oY2FsbGVyKDEp KVszXTsKLSsJJG1lbW49fnMvXi4qOjovLzsKLSsJbXkgKCRvcGNvZGUsJHYxLCRkMiwkdjIsJGIy LCRtMyk9KHNoaWZ0LGdldF9WKHNoaWZ0KSxnZXRfRFZCKHNoaWZ0KSwKLSsJICAgIGdldF9NKHNo aWZ0KSk7Ci0rCi0rCSRvdXQuPSJcdC53b3JkXHQiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIs KCRvcGNvZGUmMHhmZjAwfCgkdjEmMHhmKTw8NHwoJHYyJjB4ZikpKS4iLCI7Ci0rCSRvdXQuPXNw cmludGYoIiUjMDZ4IiwoJGIyPDwxMnwkZDIpKS4iLCI7Ci0rCSRvdXQuPXNwcmludGYoIiUjMDZ4 IiwoJG0zPDwxMnxSWEIoJHYxLCR2Mik8PDh8JG9wY29kZSYweGZmKSk7Ci0rCSRvdXQuPSJcdCMg JG1lbW5cdCRvcHNcbiIKLSt9Ci0rCi0rc3ViIFZSWCB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0i KSkgaWYgKCQjXzwyfHwkI18+Myk7Ci0rCW15ICRvcHM9am9pbignLCcsQF9bMS4uJCNfXSk7Ci0r CW15ICRtZW1uPShjYWxsZXIoMSkpWzNdOwotKwkkbWVtbj1+cy9eLio6Oi8vOwotKwlteSAoJG9w Y29kZSwkdjEsJGQyLCR4MiwkYjIsJG0zKT0oc2hpZnQsZ2V0X1Yoc2hpZnQpLGdldF9EWEIoc2hp ZnQpLAotKwkgICAgZ2V0X00oc2hpZnQpKTsKLSsKLSsJJG91dC49Ilx0LndvcmRcdCI7Ci0rCSRv dXQuPXNwcmludGYoIiUjMDZ4IiwoJG9wY29kZSYweGZmMDB8KCR2MSYweGYpPDw0fCgkeDIpKSku IiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIlIzA2eCIsKCRiMjw8MTJ8JGQyKSkuIiwiOwotKwkkb3V0 Lj1zcHJpbnRmKCIlIzA2eCIsKCRtMzw8MTJ8UlhCKCR2MSk8PDh8JG9wY29kZSYweGZmKSk7Ci0r CSRvdXQuPSJcdCMgJG1lbW5cdCRvcHNcbiIKLSt9Ci0rCi0rc3ViIFZTSSB7Ci0rCWNvbmZlc3Mo ZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9Myk7Ci0rCW15ICRvcHM9am9pbignLCcsQF9bMS4uJCNf XSk7Ci0rCW15ICRtZW1uPShjYWxsZXIoMSkpWzNdOwotKwkkbWVtbj1+cy9eLio6Oi8vOwotKwlt eSAoJG9wY29kZSwkdjEsJGQyLCRiMiwkaTMpPShzaGlmdCxnZXRfVihzaGlmdCksZ2V0X0RCKHNo aWZ0KSwKLSsJICAgIGdldF9JKHNoaWZ0LDgpKTsKLSsKLSsJJG91dC49Ilx0LndvcmRcdCI7Ci0r CSRvdXQuPXNwcmludGYoIiUjMDZ4IiwoJG9wY29kZSYweGZmMDB8JGkzKSkuIiwiOwotKwkkb3V0 Lj1zcHJpbnRmKCIlIzA2eCIsKCRiMjw8MTJ8JGQyKSkuIiwiOwotKwkkb3V0Lj1zcHJpbnRmKCIl IzA2eCIsKCgkdjEmMHhmKTw8MTJ8UlhCKDAsMCwwLCR2MSk8PDh8JG9wY29kZSYweGZmKSk7Ci0r CSRvdXQuPSJcdCMgJG1lbW5cdCRvcHNcbiIKLSt9Ci0rCi0rIwotKyMgSW50ZXJuYWwKLSsjCi0r Ci0rc3ViIGdldF9SIHsKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0wKTsKLSsJ bXkgJHI7Ci0rCi0rCWZvciAoc2hpZnQpIHsKLSsJCWlmICghZGVmaW5lZCkgewotKwkJCSRyPTA7 Ci0rCQl9IGVsc2lmICgvXiRHUiQvKSB7Ci0rCQkJJHI9JDE7Ci0rCQl9IGVsc2UgewotKwkJCWNv bmZlc3MoZXJyKCJQQVJTRSIpKTsKLSsJCX0KLSsJfQotKwljb25mZXNzKGVycigiQVJHUkFOR0Ui KSkgaWYgKCRyJn4weGYpOwotKwotKwlyZXR1cm4gJHI7Ci0rfQotKwotK3N1YiBnZXRfViB7Ci0r CWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9MCk7Ci0rCW15ICR2OwotKwotKwlmb3Ig KHNoaWZ0KSB7Ci0rCQlpZiAoIWRlZmluZWQpIHsKLSsJCQkkdj0wOwotKwkJfSBlbHNpZiAoL14k VlIkLykgewotKwkJCSR2PSQxOwotKwkJfSBlbHNlIHsKLSsJCQljb25mZXNzKGVycigiUEFSU0Ui KSk7Ci0rCQl9Ci0rCX0KLSsJY29uZmVzcyhlcnIoIkFSR1JBTkdFIikpIGlmICgkdiZ+MHgxZik7 Ci0rCi0rCXJldHVybiAkdjsKLSt9Ci0rCi0rc3ViIGdldF9JIHsKLSsJY29uZmVzcyhlcnIoIkFS R05VTSIpKSBpZiAoJCNfIT0xKTsKLSsJbXkgKCRpLCRiaXRzKT0oc2hpZnQsc2hpZnQpOwotKwot KwkkaT1kZWZpbmVkKCRpKT8oZXZhbCgkaSkpOigwKTsKLSsJY29uZmVzcyhlcnIoIlBBUlNFIikp IGlmICghZGVmaW5lZCgkaSkpOwotKwljb25mZXNzKGVycigiQVJHUkFOR0UiKSkgaWYgKGFicygk aSkmfigyKiokYml0cy0xKSk7Ci0rCi0rCXJldHVybiAkaSYoMioqJGJpdHMtMSk7Ci0rfQotKwot K3N1YiBnZXRfTSB7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9MCk7Ci0rCW15 ICRtPXNoaWZ0OwotKwotKwkkbT1kZWZpbmVkKCRtKT8oZXZhbCgkbSkpOigwKTsKLSsJY29uZmVz cyhlcnIoIlBBUlNFIikpIGlmICghZGVmaW5lZCgkbSkpOwotKwljb25mZXNzKGVycigiQVJHUkFO R0UiKSkgaWYgKCRtJn4weGYpOwotKwotKwlyZXR1cm4gJG07Ci0rfQotKwotK3N1YiBnZXRfREIK LSt7Ci0rCWNvbmZlc3MoZXJyKCJBUkdOVU0iKSkgaWYgKCQjXyE9MCk7Ci0rCW15ICgkZCwkYik7 Ci0rCi0rCWZvciAoc2hpZnQpIHsKLSsJCWlmICghZGVmaW5lZCkgewotKwkJCSgkZCwkYik9KDAs MCk7Ci0rCQl9IGVsc2lmICgvXiguKylcKCRHUlwpJC8pIHsKLSsJCQkoJGQsJGIpPShldmFsKCQx KSwkMik7Ci0rCQkJY29uZmVzcyhlcnIoIlBBUlNFIikpIGlmICghZGVmaW5lZCgkZCkpOwotKwkJ fSBlbHNpZiAoL14oLispJC8pIHsKLSsJCQkoJGQsJGIpPShldmFsKCQxKSwwKTsKLSsJCQljb25m ZXNzKGVycigiUEFSU0UiKSkgaWYgKCFkZWZpbmVkKCRkKSk7Ci0rCQl9IGVsc2UgewotKwkJCWNv bmZlc3MoZXJyKCJQQVJTRSIpKTsKLSsJCX0KLSsJfQotKwljb25mZXNzKGVycigiQVJHUkFOR0Ui KSkgaWYgKCRkJn4weGZmZnx8JGImfjB4Zik7Ci0rCi0rCXJldHVybiAoJGQsJGIpOwotK30KLSsK LStzdWIgZ2V0X0RWQgotK3sKLSsJY29uZmVzcyhlcnIoIkFSR05VTSIpKSBpZiAoJCNfIT0wKTsK LSsJbXkgKCRkLCR2LCRiKTsKLSsKLSsJZm9yIChzaGlmdCkgewotKwkJaWYgKCFkZWZpbmVkKSB7 Ci0rCQkJKCRkLCR2LCRiKT0oMCwwLDApOwotKwkJfSBlbHNpZiAoL14oLispXCgkVlIsJEdSXCkk LykgewotKwkJCSgkZCwkdiwkYik9KGV2YWwoJDEpLCQyLCQzKTsKLSsJCQljb25mZXNzKGVycigi UEFSU0UiKSkgaWYgKCFkZWZpbmVkKCRkKSk7Ci0rCQl9IGVsc2lmICgvXiguKylcKCRHUlwpJC8p IHsKLSsJCQkoJGQsJHYsJGIpPShldmFsKCQxKSwwLCQyKTsKLSsJCQljb25mZXNzKGVycigiUEFS U0UiKSkgaWYgKCFkZWZpbmVkKCRkKSk7Ci0rCQl9IGVsc2lmICgvXiguKykkLykgewotKwkJCSgk ZCwkdiwkYik9KGV2YWwoJDEpLDAsMCk7Ci0rCQkJY29uZmVzcyhlcnIoIlBBUlNFIikpIGlmICgh ZGVmaW5lZCgkZCkpOwotKwkJfSBlbHNlIHsKLSsJCQljb25mZXNzKGVycigiUEFSU0UiKSk7Ci0r CQl9Ci0rCX0KLSsJY29uZmVzcyhlcnIoIkFSR1JBTkdFIikpIGlmICgkZCZ+MHhmZmZ8fCR2Jn4w eDFmfHwkYiZ+MHhmKTsKLSsKLSsJcmV0dXJuICgkZCwkdiwkYik7Ci0rfQotKwotK3N1YiBnZXRf RFhCCi0rewotKwljb25mZXNzKGVycigiQVJHTlVNIikpIGlmICgkI18hPTApOwotKwlteSAoJGQs JHgsJGIpOwotKwotKwlmb3IgKHNoaWZ0KSB7Ci0rCQlpZiAoIWRlZmluZWQpIHsKLSsJCQkoJGQs JHgsJGIpPSgwLDAsMCk7Ci0rCQl9IGVsc2lmICgvXiguKylcKCRHUiwkR1JcKSQvKSB7Ci0rCQkJ KCRkLCR4LCRiKT0oZXZhbCgkMSksJDIsJDMpOwotKwkJCWNvbmZlc3MoZXJyKCJQQVJTRSIpKSBp ZiAoIWRlZmluZWQoJGQpKTsKLSsJCX0gZWxzaWYgKC9eKC4rKVwoJEdSXCkkLykgewotKwkJCSgk ZCwkeCwkYik9KGV2YWwoJDEpLDAsJDIpOwotKwkJCWNvbmZlc3MoZXJyKCJQQVJTRSIpKSBpZiAo IWRlZmluZWQoJGQpKTsKLSsJCX0gZWxzaWYgKC9eKC4rKSQvKSB7Ci0rCQkJKCRkLCR4LCRiKT0o ZXZhbCgkMSksMCwwKTsKLSsJCQljb25mZXNzKGVycigiUEFSU0UiKSkgaWYgKCFkZWZpbmVkKCRk KSk7Ci0rCQl9IGVsc2UgewotKwkJCWNvbmZlc3MoZXJyKCJQQVJTRSIpKTsKLSsJCX0KLSsJfQot Kwljb25mZXNzKGVycigiQVJHUkFOR0UiKSkgaWYgKCRkJn4weGZmZnx8JHgmfjB4Znx8JGImfjB4 Zik7Ci0rCi0rCXJldHVybiAoJGQsJHgsJGIpOwotK30KLSsKLStzdWIgUlhCCi0rewotKwljb25m ZXNzKGVycigiQVJHTlVNIikpIGlmICgkI188MHx8MzwkI18pOwotKwlteSAkcnhiPTA7Ci0rCi0r CSRyeGJ8PTB4MDggaWYgKGRlZmluZWQoJF9bMF0pJiYoJF9bMF0mMHgxMCkpOwotKwkkcnhifD0w eDA0IGlmIChkZWZpbmVkKCRfWzFdKSYmKCRfWzFdJjB4MTApKTsKLSsJJHJ4Ynw9MHgwMiBpZiAo ZGVmaW5lZCgkX1syXSkmJigkX1syXSYweDEwKSk7Ci0rCSRyeGJ8PTB4MDEgaWYgKGRlZmluZWQo JF9bM10pJiYoJF9bM10mMHgxMCkpOwotKwotKwlyZXR1cm4gJHJ4YjsKLSt9Ci0rCi0rc3ViIGVy ciB7Ci0rCW15ICVFUlIJCT0KLSsJKAotKwkJQVJHTlVNCT0+CSdXcm9uZyBudW1iZXIgb2YgYXJn dW1lbnRzJywKLSsJCUFSR1JBTkdFPT4JJ0FyZ3VtZW50IG91dCBvZiByYW5nZScsCi0rCQlQQVJT RQk9PgknUGFyc2UgZXJyb3InLAotKwkpOwotKwljb25mZXNzKCRFUlJ7QVJHTlVNfSkgaWYgKCQj XyE9MCk7Ci0rCi0rCXJldHVybiAkRVJSeyRfWzBdfTsKLSt9Ci0rCi0rMTsKLWRpZmYgLXVwIG9w ZW5zc2wtMS4xLjFlL2NyeXB0by9wb2x5MTMwNS9hc20vcG9seTEzMDUtczM5MHgucGwuczM5MHgt dXBkYXRlIG9wZW5zc2wtMS4xLjFlL2NyeXB0by9wb2x5MTMwNS9hc20vcG9seTEzMDUtczM5MHgu cGwKLS0tLSBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vcG9seTEzMDUvYXNtL3BvbHkxMzA1LXMzOTB4 LnBsLnMzOTB4LXVwZGF0ZQkyMDIwLTAzLTE5IDE2OjIwOjIyLjA0MTIyNzM1OSArMDEwMAotKysr IG9wZW5zc2wtMS4xLjFlL2NyeXB0by9wb2x5MTMwNS9hc20vcG9seTEzMDUtczM5MHgucGwJMjAy MC0wMy0xOSAxNjoyMzoyMi4zNjQwOTgyNTcgKzAxMDAKLUBAIC0yNCwyMDQgKzI0LDk2MSBAQAot ICMKLSAjIE9uIHNpZGUgbm90ZSwgejEzIGVuYWJsZXMgdmVjdG9yIGJhc2UgMl4yNiBpbXBsZW1l bnRhdGlvbi4uLgotIAotLSRmbGF2b3VyID0gc2hpZnQ7Ci0rIwotKyMgSmFudWFyeSAyMDE5Ci0r IwotKyMgQWRkIHZ4IGNvZGUgcGF0aCAoYmFzZSAyXjI2KS4KLSsjCi0rIyBDb3B5cmlnaHQgSUJN IENvcnAuIDIwMTkKLSsjIEF1dGhvcjogUGF0cmljayBTdGV1ZXIgPHBhdHJpY2suc3RldWVyQGRl LmlibS5jb20+Ci0rCi0rIwotKyMgSmFudWFyeSAyMDE5Ci0rIwotKyMgQWRkIHZlY3RvciBiYXNl IDJeMjYgaW1wbGVtZW50YXRpb24uIEl0J3MgcHJvYmxlbWF0aWMgdG8gYWNjdXJhdGVseQotKyMg bWVhc3VyZSBwZXJmb3JtYW5jZSwgYmVjYXVzZSByZWZlcmVuY2Ugc3lzdGVtIGlzIGhhcmRseSBp ZGxlLiBCdXQKLSsjIGl0J3Mgc3ViLWN5Y2xlLCBpLmUuIGxlc3MgdGhhbiAxIGN5Y2xlIHBlciBw cm9jZXNzZWQgYnl0ZSwgYW5kIGl0J3MKLSsjID49MjAlIGZhc3RlciB0aGFuIElCTSdzIHN1Ym1p c3Npb24gb24gbG9uZyBpbnB1dHMsIGFuZCBtdWNoIGZhc3RlciBvbgotKyMgc2hvcnQgb25lcywg YmVjYXVzZSBjYWxjdWxhdGlvbiBvZiBrZXkgcG93ZXJzIGlzIHBvc3Rwb25lZCB0aWxsIHdlCi0r IyBrbm93IHRoYXQgaW5wdXQgaXMgbG9uZyBlbm91Z2ggdG8ganVzdGlmeSB0aGUgYWRkaXRpb25h bCBvdmVyaGVhZC4KLSsKLSt1c2Ugc3RyaWN0OwotK3VzZSBGaW5kQmluIHF3KCRCaW4pOwotK3Vz ZSBsaWIgIiRCaW4vLi4vLi4iOwotK3VzZSBwZXJsYXNtOjpzMzkweCBxdyg6REVGQVVMVCA6Vlgg QVVUT0xPQUQgTEFCRUwgSU5DTFVERSk7Ci0rCi0rbXkgJGZsYXZvdXIgPSBzaGlmdDsKLSAKLStt eSAoJHosJFNJWkVfVCk7Ci0gaWYgKCRmbGF2b3VyID1+IC8zWzEyXS8pIHsKLSsJJHo9MDsJIyBT LzM5MCBBQkkKLSAJJFNJWkVfVD00OwotLQkkZz0iIjsKLSB9IGVsc2UgewotKwkkej0xOwkjIHpT ZXJpZXMgQUJJCi0gCSRTSVpFX1Q9ODsKLS0JJGc9ImciOwotIH0KLSAKLStteSAkb3V0cHV0Owot IHdoaWxlICgoJG91dHB1dD1zaGlmdCkgJiYgKCRvdXRwdXQhfi9cd1tcd1wtXSpcLlx3KyQvKSkg e30KLS1vcGVuIFNURE9VVCwiPiRvdXRwdXQiOwotIAotLSRzcD0iJXIxNSI7Ci0rbXkgJHN0ZGZy YW1lPTE2KiRTSVpFX1QrNCo4OwotK215ICRzcD0iJXIxNSI7Ci0gCi0gbXkgKCRjdHgsJGlucCwk bGVuLCRwYWRiaXQpID0gbWFwKCIlciRfIiwoMi4uNSkpOwotIAotLSRjb2RlLj08PF9fXzsKLS0u dGV4dAotK1BFUkxBU01fQkVHSU4oJG91dHB1dCk7Ci0gCi0tLmdsb2JsCXBvbHkxMzA1X2luaXQK LS0udHlwZQlwb2x5MTMwNV9pbml0LFxAZnVuY3Rpb24KLS0uYWxpZ24JMTYKLS1wb2x5MTMwNV9p bml0OgotLQlsZ2hpCSVyMCwwCi0tCWxnaGkJJXIxLC0xCi0tCXN0ZwklcjAsMCgkY3R4KQkJIyB6 ZXJvIGhhc2ggdmFsdWUKLS0Jc3RnCSVyMCw4KCRjdHgpCi0tCXN0ZwklcjAsMTYoJGN0eCkKLS0K LS0JY2wke2d9cgkkaW5wLCVyMAotLQlqZQkuTG5vX2tleQotLQotLQlscnZnCSVyNCwwKCRpbnAp CQkjIGxvYWQgbGl0dGxlLWVuZGlhbiBrZXkKLS0JbHJ2ZwklcjUsOCgkaW5wKQotLQotLQluaWhs CSVyMSwweGZmYzAJCSMgMHhmZmZmZmZjMGZmZmZmZmZmCi0tCXNybGcJJXIwLCVyMSw0CQkjIDB4 MGZmZmZmZmMwZmZmZmZmZgotLQlzcmxnCSVyMSwlcjEsNAotLQluaWxsCSVyMSwweGZmZmMJCSMg MHgwZmZmZmZmYzBmZmZmZmZjCi0tCi0tCW5ncgklcjQsJXIwCi0tCW5ncgklcjUsJXIxCi0tCi0t CXN0ZwklcjQsMzIoJGN0eCkKLS0Jc3RnCSVyNSw0MCgkY3R4KQotLQotLS5Mbm9fa2V5OgotLQls Z2hpCSVyMiwwCi0tCWJyCSVyMTQKLS0uc2l6ZQlwb2x5MTMwNV9pbml0LC4tcG9seTEzMDVfaW5p dAotLV9fXwotK0lOQ0xVREUJKCJzMzkweF9hcmNoLmgiKTsKLStURVhUCSgpOwotKwotKyMjIyMj IyMjIyMjIyMjIyMKLSsjIHN0YXRpYyB2b2lkIHBvbHkxMzA1X2luaXQodm9pZCAqY3R4LCBjb25z dCB1bnNpZ25lZCBjaGFyIGtleVsxNl0pCi0rewotK0dMT0JMCSgicG9seTEzMDVfaW5pdCIpOwot K1RZUEUJKCJwb2x5MTMwNV9pbml0IiwiXEBmdW5jdGlvbiIpOwotK0FMSUdOCSgxNik7Ci0rTEFC RUwJKCJwb2x5MTMwNV9pbml0Iik7Ci0rCWxnaGkJKCIlcjAiLDApOwotKwlsZ2hpCSgiJXIxIiwt MSk7Ci0rCXN0ZwkoIiVyMCIsIjAoJGN0eCkiKTsJCSMgemVybyBoYXNoIHZhbHVlCi0rCXN0Zwko IiVyMCIsIjgoJGN0eCkiKTsKLSsJc3RnCSgiJXIwIiwiMTYoJGN0eCkiKTsKLSsJc3QJKCIlcjAi LCIyNCgkY3R4KSIpOwkJIyBjbGVhciBpc19iYXNlMl8yNgotKwlsZ3IJKCIlcjUiLCRjdHgpOwkJ CSMgcmVhc3NpZ24gJGN0eAotKwlsZ2hpCSgiJXIyIiwwKTsKLSsKLSsmeyR6PwlcJmNsZ3I6XCZj bHJ9CSgkaW5wLCIlcjAiKTsKLSsJamUJKCIuTG5vX2tleSIpOwotKwotKwlscnZnCSgiJXIyIiwi MCgkaW5wKSIpOwkJIyBsb2FkIGxpdHRsZS1lbmRpYW4ga2V5Ci0rCWxydmcJKCIlcjMiLCI4KCRp bnApIik7Ci0rCi0rCW5paGwJKCIlcjEiLDB4ZmZjMCk7CQkJIyAweGZmZmZmZmMwZmZmZmZmZmYK LSsJc3JsZwkoIiVyMCIsIiVyMSIsNCk7CQkjIDB4MGZmZmZmZmMwZmZmZmZmZgotKwlzcmxnCSgi JXIxIiwiJXIxIiw0KTsKLSsJbmlsbAkoIiVyMSIsMHhmZmZjKTsJCQkjIDB4MGZmZmZmZmMwZmZm ZmZmYwotKwotKwluZ3IJKCIlcjIiLCIlcjAiKTsKLSsJbmdyCSgiJXIzIiwiJXIxIik7Ci0rCi0r CXN0bWcJKCIlcjIiLCIlcjMiLCIzMiglcjUpIik7Ci0rCi0rCWxhcmwJKCIlcjEiLCJPUEVOU1NM X3MzOTB4Y2FwX1AiKTsKLSsJbGcJKCIlcjAiLCIxNiglcjEpIik7Ci0rCXNybGcJKCIlcjAiLCIl cjAiLDYyKTsKLSsJbmlsbAkoIiVyMCIsMSk7CQkJIyBleHRyYWN0IHZ4IGJpdAotKwlsY2dyCSgi JXIwIiwiJXIwIik7Ci0rCWxhcmwJKCIlcjEiLCIuTHBvbHkxMzA1X2Jsb2NrcyIpOwotKwlsYXJs CSgiJXIyIiwiLkxwb2x5MTMwNV9ibG9ja3NfdngiKTsKLSsJbGFybAkoIiVyMyIsIi5McG9seTEz MDVfZW1pdCIpOwotKyZ7JHo/CVwmeGdyOlwmeHJ9CSgiJXIyIiwiJXIxIik7CQkjIHNlbGVjdCBi ZXR3ZWVuIHNjYWxhciBhbmQgdmVjdG9yCi0rJnskej8JXCZuZ3I6XCZucn0JKCIlcjIiLCIlcjAi KTsKLSsmeyR6PwlcJnhncjpcJnhyfQkoIiVyMiIsIiVyMSIpOwotKyZ7JHo/CVwmc3RtZzpcJnN0 bX0JKCIlcjIiLCIlcjMiLCIwKCVyNCkiKTsKLSsJbGdoaQkoIiVyMiIsMSk7Ci0rTEFCRUwJKCIu TG5vX2tleSIpOwotKwlicgkoIiVyMTQiKTsKLStTSVpFCSgicG9seTEzMDVfaW5pdCIsIi4tcG9s eTEzMDVfaW5pdCIpOwotK30KLSsKLSsjIyMjIyMjIyMjIyMjIyMjCi0rIyBzdGF0aWMgdm9pZCBw b2x5MTMwNV9ibG9ja3Modm9pZCAqY3R4LCBjb25zdCB1bnNpZ25lZCBjaGFyICppbnAsCi0rIyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGxlbiwgdTMyIHBhZGJpdCkKLSB7Ci0g bXkgKCRkMGhpLCRkMGxvLCRkMWhpLCRkMWxvLCR0MCwkaDAsJHQxLCRoMSwkaDIpID0gbWFwKCIl ciRfIiwoNi4uMTQpKTsKLSBteSAoJHIwLCRyMSwkczEpID0gbWFwKCIlciRfIiwoMC4uMikpOwot IAotLSRjb2RlLj08PF9fXzsKLS0uZ2xvYmwJcG9seTEzMDVfYmxvY2tzCi0tLnR5cGUJcG9seTEz MDVfYmxvY2tzLFxAZnVuY3Rpb24KLS0uYWxpZ24JMTYKLS1wb2x5MTMwNV9ibG9ja3M6Ci0tCXNy bCR7Z30JJGxlbiw0CQkJIyBmaXhlZC11cCBpbiA2NC1iaXQgYnVpbGQKLS0JbGdoaQklcjAsMAot LQljbCR7Z31yCSRsZW4sJXIwCi0tCWplCS5Mbm9fZGF0YQotLQotLQlzdG0ke2d9CSVyNiwlcjE0 LGA2KiRTSVpFX1RgKCRzcCkKLS0KLS0JbGxnZnIgICAkcGFkYml0LCRwYWRiaXQJCSMgY2xlYXIg dXBwZXIgaGFsZiwgbXVjaCBuZWVkZWQgd2l0aAotLQkJCQkJIyBub24tNjQtYml0IEFCSQotLQls ZwkkcjAsMzIoJGN0eCkJCSMgbG9hZCBrZXkKLS0JbGcJJHIxLDQwKCRjdHgpCi0tCi0tCWxnCSRo MCwwKCRjdHgpCQkjIGxvYWQgaGFzaCB2YWx1ZQotLQlsZwkkaDEsOCgkY3R4KQotLQlsZwkkaDIs MTYoJGN0eCkKLS0KLS0Jc3QkZwkkY3R4LGAyKiRTSVpFX1RgKCRzcCkJIyBvZmYtbG9hZCAkY3R4 Ci0tCXNybGcJJHMxLCRyMSwyCi0tCWFsZ3IJJHMxLCRyMQkJCSMgczEgPSByMSArIHIxPj4yCi0t CWoJLkxvb3AKLS0KLS0uYWxpZ24JMTYKLS0uTG9vcDoKLS0JbHJ2ZwkkZDBsbywwKCRpbnApCQkj IGxvYWQgbGl0dGxlLWVuZGlhbiBpbnB1dAotLQlscnZnCSRkMWxvLDgoJGlucCkKLS0JbGEJJGlu cCwxNigkaW5wKQotLQotLQlhbGdyCSRkMGxvLCRoMAkJIyBhY2N1bXVsYXRlIGlucHV0Ci0tCWFs Y2dyCSRkMWxvLCRoMQotLQotLQlsZ3IJJGgwLCRkMGxvCi0tCW1sZ3IJJGQwaGksJHIwCQkjIGgw KnIwCSAgLT4gJGQwaGk6JGQwbG8KLS0JbGdyCSRoMSwkZDFsbwotLQltbGdyCSRkMWhpLCRzMQkJ IyBoMSo1KnIxIC0+ICRkMWhpOiRkMWxvCi0tCi0tCW1sZ3IJJHQwLCRyMQkJCSMgaDAqcjEgICAt PiAkdDA6JGgwCi0tCW1sZ3IJJHQxLCRyMAkJCSMgaDEqcjAgICAtPiAkdDE6JGgxCi0tCWFsY2dy CSRoMiwkcGFkYml0Ci0tCi0tCWFsZ3IJJGQwbG8sJGQxbG8KLS0JbGdyCSRkMWxvLCRoMgotLQlh bGNncgkkZDBoaSwkZDFoaQotLQlsZ2hpCSRkMWhpLDAKLS0KLS0JYWxncgkkaDEsJGgwCi0tCWFs Y2dyCSR0MSwkdDAKLS0KLS0JbXNncgkkZDFsbywkczEJCSMgaDIqczEKLS0JbXNncgkkaDIsJHIw CQkJIyBoMipyMAotLQotLQlhbGdyCSRoMSwkZDFsbwotLQlhbGNncgkkdDEsJGQxaGkJCSMgJGQx aGkgaXMgemVybwotLQotLQlhbGdyCSRoMSwkZDBoaQotLQlhbGNncgkkaDIsJHQxCi0tCi0tCWxn aGkJJGgwLC00CQkJIyBmaW5hbCByZWR1Y3Rpb24gc3RlcAotLQluZ3IJJGgwLCRoMgotLQlzcmxn CSR0MCwkaDIsMgotLQlhbGdyCSRoMCwkdDAKLS0JbGdoaQkkdDEsMwotLQluZ3IJJGgyLCR0MQot LQotLQlhbGdyCSRoMCwkZDBsbwotLQlhbGNncgkkaDEsJGQxaGkJCSMgJGQxaGkgaXMgc3RpbGwg emVybwotLQlhbGNncgkkaDIsJGQxaGkJCSMgJGQxaGkgaXMgc3RpbGwgemVybwotLQotLQlicmN0 JGcJJGxlbiwuTG9vcAotLQotLQlsJGcJJGN0eCxgMiokU0laRV9UYCgkc3ApCSMgcmVzdG9yZSAk Y3R4Ci0tCi0tCXN0ZwkkaDAsMCgkY3R4KQkJIyBzdG9yZSBoYXNoIHZhbHVlCi0tCXN0ZwkkaDEs OCgkY3R4KQotLQlzdGcJJGgyLDE2KCRjdHgpCi0tCi0tCWxtJHtnfQklcjYsJXIxNCxgNiokU0la RV9UYCgkc3ApCi0tLkxub19kYXRhOgotLQlicgklcjE0Ci0tLnNpemUJcG9seTEzMDVfYmxvY2tz LC4tcG9seTEzMDVfYmxvY2tzCi0tX19fCi0rR0xPQkwJKCJwb2x5MTMwNV9ibG9ja3MiKTsKLStU WVBFCSgicG9seTEzMDVfYmxvY2tzIiwiXEBmdW5jdGlvbiIpOwotK0FMSUdOCSgxNik7Ci0rTEFC RUwJKCJwb2x5MTMwNV9ibG9ja3MiKTsKLStMQUJFTAkoIi5McG9seTEzMDVfYmxvY2tzIik7Ci0r Jnskej8JXCZsdGdyOlwmbHRyfQkoIiVyMCIsJGxlbik7Ci0rCWp6CSgiLkxub19kYXRhIik7Ci0r Ci0rJnskej8JXCZzdG1nOlwmc3RtfQkoIiVyNiIsIiVyMTQiLCI2KiRTSVpFX1QoJHNwKSIpOwot KwotKwlsZwkoJGgwLCIwKCRjdHgpIik7CQkjIGxvYWQgaGFzaCB2YWx1ZQotKwlsZwkoJGgxLCI4 KCRjdHgpIik7Ci0rCWxnCSgkaDIsIjE2KCRjdHgpIik7Ci0rCi0rTEFCRUwJKCIuTHBvbHkxMzA1 X2Jsb2Nrc19lbnRyeSIpOwotK2lmICgkeikgewotKwlzcmxnCSgkbGVuLCRsZW4sNCk7Ci0rfSBl bHNlIHsKLSsJc3JsCSgkbGVuLDQpOwotK30KLSsJbGxnZnIgICAoJHBhZGJpdCwkcGFkYml0KTsJ CSMgY2xlYXIgdXBwZXIgaGFsZiwgbXVjaCBuZWVkZWQgd2l0aAotKwkJCQkJCSMgbm9uLTY0LWJp dCBBQkkKLSsJbGcJKCRyMCwiMzIoJGN0eCkiKTsJCSMgbG9hZCBrZXkKLSsJbGcJKCRyMSwiNDAo JGN0eCkiKTsKLSsKLSsmeyR6PwlcJnN0ZzpcJnN0fQkoJGN0eCwiMiokU0laRV9UKCRzcCkiKTsJ IyBvZmYtbG9hZCAkY3R4Ci0rCXNybGcJKCRzMSwkcjEsMik7Ci0rCWFsZ3IJKCRzMSwkcjEpOwkJ CSMgczEgPSByMSArIHIxPj4yCi0rCWoJKCIuTG9vcCIpOwotKwotK0FMSUdOCSgxNik7Ci0rTEFC RUwJKCIuTG9vcCIpOwotKwlscnZnCSgkZDBsbywiMCgkaW5wKSIpOwkJIyBsb2FkIGxpdHRsZS1l bmRpYW4gaW5wdXQKLSsJbHJ2ZwkoJGQxbG8sIjgoJGlucCkiKTsKLSsJbGEJKCRpbnAsIjE2KCRp bnApIik7Ci0rCi0rCWFsZ3IJKCRkMGxvLCRoMCk7CQkJIyBhY2N1bXVsYXRlIGlucHV0Ci0rCWFs Y2dyCSgkZDFsbywkaDEpOwotKwlhbGNncgkoJGgyLCRwYWRiaXQpOwotKwotKwlsZ3IJKCRoMCwk ZDBsbyk7Ci0rCW1sZ3IJKCRkMGhpLCRyMCk7CQkJIyBoMCpyMAkgIC0+ICRkMGhpOiRkMGxvCi0r CWxncgkoJGgxLCRkMWxvKTsKLSsJbWxncgkoJGQxaGksJHMxKTsJCQkjIGgxKjUqcjEgLT4gJGQx aGk6JGQxbG8KLSsKLSsJbWxncgkoJHQwLCRyMSk7CQkJIyBoMCpyMSAgIC0+ICR0MDokaDAKLSsJ bWxncgkoJHQxLCRyMCk7CQkJIyBoMSpyMCAgIC0+ICR0MTokaDEKLSsKLSsJYWxncgkoJGQwbG8s JGQxbG8pOwotKwlsZ3IJKCRkMWxvLCRoMik7Ci0rCWFsY2dyCSgkZDBoaSwkZDFoaSk7Ci0rCWxn aGkJKCRkMWhpLDApOwotKwotKwlhbGdyCSgkaDEsJGgwKTsKLSsJYWxjZ3IJKCR0MSwkdDApOwot KwotKwltc2dyCSgkZDFsbywkczEpOwkJCSMgaDIqczEKLSsJbXNncgkoJGgyLCRyMCk7CQkJIyBo MipyMAotKwotKwlhbGdyCSgkaDEsJGQxbG8pOwotKwlhbGNncgkoJHQxLCRkMWhpKTsJCQkjICRk MWhpIGlzIHplcm8KLSsKLSsJYWxncgkoJGgxLCRkMGhpKTsKLSsJYWxjZ3IJKCRoMiwkdDEpOwot KwotKwlsZ2hpCSgkaDAsLTQpOwkJCSMgZmluYWwgcmVkdWN0aW9uIHN0ZXAKLSsJbmdyCSgkaDAs JGgyKTsKLSsJc3JsZwkoJHQwLCRoMiwyKTsKLSsJYWxncgkoJGgwLCR0MCk7Ci0rCWxnaGkJKCR0 MSwzKTsKLSsJbmdyCSgkaDIsJHQxKTsKLSsKLSsJYWxncgkoJGgwLCRkMGxvKTsKLSsJYWxjZ3IJ KCRoMSwkZDFoaSk7CQkJIyAkZDFoaSBpcyBzdGlsbCB6ZXJvCi0rCWFsY2dyCSgkaDIsJGQxaGkp OwkJCSMgJGQxaGkgaXMgc3RpbGwgemVybwotKwotKyZ7JHo/CVwmYnJjdGc6XCZicmN0fQkoJGxl biwiLkxvb3AiKTsKLSsKLSsmeyR6PwlcJmxnOlwmbH0JKCRjdHgsIjIqJFNJWkVfVCgkc3ApIik7 IyByZXN0b3JlICRjdHgKLSsKLSsJc3RnCSgkaDAsIjAoJGN0eCkiKTsJCSMgc3RvcmUgaGFzaCB2 YWx1ZQotKwlzdGcJKCRoMSwiOCgkY3R4KSIpOwotKwlzdGcJKCRoMiwiMTYoJGN0eCkiKTsKLSsK LSsmeyR6PwlcJmxtZzpcJmxtfQkoIiVyNiIsIiVyMTQiLCI2KiRTSVpFX1QoJHNwKSIpOwotK0xB QkVMCSgiLkxub19kYXRhIik7Ci0rCWJyCSgiJXIxNCIpOwotK1NJWkUJKCJwb2x5MTMwNV9ibG9j a3MiLCIuLXBvbHkxMzA1X2Jsb2NrcyIpOwotIH0KLSsKLSsjIyMjIyMjIyMjIyMjIyMjCi0rIyBz dGF0aWMgdm9pZCBwb2x5MTMwNV9ibG9ja3Nfdngodm9pZCAqY3R4LCBjb25zdCB1bnNpZ25lZCBj aGFyICppbnAsCi0rIyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZV90IGxlbiwg dTMyIHBhZGJpdCkKLSt7Ci0rbXkgKCRIMCwgJEgxLCAkSDIsICRIMywgJEg0KSA9IG1hcCgiJXYk XyIsKDAuLjQpKTsKLStteSAoJEkwLCAkSTEsICRJMiwgJEkzLCAkSTQpID0gbWFwKCIldiRfIiwo NS4uOSkpOwotK215ICgkUjAsICRSMSwgJFMxLCAkUjIsICRTMikgPSBtYXAoIiV2JF8iLCgxMC4u MTQpKTsKLStteSAgICAgICgkUjMsICRTMywgJFI0LCAkUzQpID0gbWFwKCIldiRfIiwoMTUuLjE4 KSk7Ci0rbXkgKCRBQ0MwLCAkQUNDMSwgJEFDQzIsICRBQ0MzLCAkQUNDNCkgPSBtYXAoIiV2JF8i LCgxOS4uMjMpKTsKLStteSAgICAgICgkVDEsICRUMiwgJFQzLCAkVDQpID0gbWFwKCIldiRfIiwo MjQuLjI3KSk7Ci0rbXkgKCRtYXNrMjYsJGJzd2FwbG8sJGJzd2FwaGksJGJzd2FwbWkpID0gbWFw KCIldiRfIiwoMjguLjMxKSk7Ci0rCi0rbXkgKCRkMiwkZDAsJGgwLCRkMSwkaDEsJGgyKT1tYXAo IiVyJF8iLCg5Li4xNCkpOwotKwotK1RZUEUJKCJwb2x5MTMwNV9ibG9ja3NfdngiLCJcQGZ1bmN0 aW9uIik7Ci0rQUxJR04JKDE2KTsKLStMQUJFTAkoInBvbHkxMzA1X2Jsb2Nrc192eCIpOwotK0xB QkVMCSgiLkxwb2x5MTMwNV9ibG9ja3NfdngiKTsKLSsmeyR6PwlcJmNsZ2ZpOlwmY2xmaX0gKCRs ZW4sMTI4KTsKLSsJamhlCSgiX19wb2x5MTMwNV9ibG9ja3NfdngiKTsKLSsKLSsmeyR6PwlcJnN0 bWc6XCZzdG19CSgiJXI2IiwiJXIxNCIsIjYqJFNJWkVfVCgkc3ApIik7Ci0rCi0rCWxnCSgkZDAs IjAoJGN0eCkiKTsKLSsJbGcJKCRkMSwiOCgkY3R4KSIpOwotKwlsZwkoJGQyLCIxNigkY3R4KSIp OwotKwotKwlsbGdmcgkoIiVyMCIsJGQwKTsJCQkjIGJhc2UgMl4yNiAtPiBiYXNlIDJeNjQKLSsJ c3JsZwkoJGgwLCRkMCwzMik7Ci0rCWxsZ2ZyCSgiJXIxIiwkZDEpOwotKwlzcmxnCSgkaDEsJGQx LDMyKTsKLSsJc3JsZwkoJGgyLCRkMiwzMik7Ci0rCi0rCXNsbGcJKCIlcjAiLCIlcjAiLDI2KTsK LSsJYWxncgkoJGgwLCIlcjAiKTsKLSsJc2xsZwkoIiVyMCIsJGgxLDUyKTsKLSsJc3JsZwkoJGgx LCRoMSwxMik7Ci0rCXNsbGcJKCIlcjEiLCIlcjEiLDE0KTsKLSsJYWxncgkoJGgwLCIlcjAiKTsK LSsJYWxjZ3IJKCRoMSwiJXIxIik7Ci0rCXNsbGcJKCIlcjAiLCRoMiw0MCk7Ci0rCXNybGcJKCRo MiwkaDIsMjQpOwotKwlsZ2hpCSgiJXIxIiwwKTsKLSsJYWxncgkoJGgxLCIlcjAiKTsKLSsJYWxj Z3IJKCRoMiwiJXIxIik7Ci0rCi0rCWxsZ2YJKCIlcjAiLCIyNCgkY3R4KSIpOwkJIyBpc19iYXNl Ml8yNgotKwlsY2dyCSgiJXIwIiwiJXIwIik7Ci0rCi0rCXhncgkoJGgwLCRkMCk7CQkJIyBjaG9v c2UgYmV0d2VlbiByYWRpeGVzCi0rCXhncgkoJGgxLCRkMSk7Ci0rCXhncgkoJGgyLCRkMik7Ci0r CW5ncgkoJGgwLCIlcjAiKTsKLSsJbmdyCSgkaDEsIiVyMCIpOwotKwluZ3IJKCRoMiwiJXIwIik7 Ci0rCXhncgkoJGgwLCRkMCk7Ci0rCXhncgkoJGgxLCRkMSk7Ci0rCXhncgkoJGgyLCRkMik7Ci0r Ci0rCWxoaQkoIiVyMCIsMCk7Ci0rCXN0CSgiJXIwIiwiMjQoJGN0eCkiKTsJCSMgY2xlYXIgaXNf YmFzZTJfMjYKLSsKLSsJagkoIi5McG9seTEzMDVfYmxvY2tzX2VudHJ5Iik7Ci0rU0laRQkoInBv bHkxMzA1X2Jsb2Nrc192eCIsIi4tcG9seTEzMDVfYmxvY2tzX3Z4Iik7Ci0rCi0rVFlQRQkoIl9f cG9seTEzMDVfbXVsIiwiXEBmdW5jdGlvbiIpOwotK0FMSUdOCSgxNik7Ci0rTEFCRUwJKCJfX3Bv bHkxMzA1X211bCIpOwotKwl2bWxvZgkJKCRBQ0MwLCRIMCwkUjApOwotKwl2bWxvZgkJKCRBQ0Mx LCRIMCwkUjEpOwotKwl2bWxvZgkJKCRBQ0MyLCRIMCwkUjIpOwotKwl2bWxvZgkJKCRBQ0MzLCRI MCwkUjMpOwotKwl2bWxvZgkJKCRBQ0M0LCRIMCwkUjQpOwotKwotKwl2bWFsb2YJCSgkQUNDMCwk SDEsJFM0LCRBQ0MwKTsKLSsJdm1hbG9mCQkoJEFDQzEsJEgxLCRSMCwkQUNDMSk7Ci0rCXZtYWxv ZgkJKCRBQ0MyLCRIMSwkUjEsJEFDQzIpOwotKwl2bWFsb2YJCSgkQUNDMywkSDEsJFIyLCRBQ0Mz KTsKLSsJdm1hbG9mCQkoJEFDQzQsJEgxLCRSMywkQUNDNCk7Ci0rCi0rCXZtYWxvZgkJKCRBQ0Mw LCRIMiwkUzMsJEFDQzApOwotKwl2bWFsb2YJCSgkQUNDMSwkSDIsJFM0LCRBQ0MxKTsKLSsJdm1h bG9mCQkoJEFDQzIsJEgyLCRSMCwkQUNDMik7Ci0rCXZtYWxvZgkJKCRBQ0MzLCRIMiwkUjEsJEFD QzMpOwotKwl2bWFsb2YJCSgkQUNDNCwkSDIsJFIyLCRBQ0M0KTsKLSsKLSsJdm1hbG9mCQkoJEFD QzAsJEgzLCRTMiwkQUNDMCk7Ci0rCXZtYWxvZgkJKCRBQ0MxLCRIMywkUzMsJEFDQzEpOwotKwl2 bWFsb2YJCSgkQUNDMiwkSDMsJFM0LCRBQ0MyKTsKLSsJdm1hbG9mCQkoJEFDQzMsJEgzLCRSMCwk QUNDMyk7Ci0rCXZtYWxvZgkJKCRBQ0M0LCRIMywkUjEsJEFDQzQpOwotKwotKwl2bWFsb2YJCSgk QUNDMCwkSDQsJFMxLCRBQ0MwKTsKLSsJdm1hbG9mCQkoJEFDQzEsJEg0LCRTMiwkQUNDMSk7Ci0r CXZtYWxvZgkJKCRBQ0MyLCRINCwkUzMsJEFDQzIpOwotKwl2bWFsb2YJCSgkQUNDMywkSDQsJFM0 LCRBQ0MzKTsKLSsJdm1hbG9mCQkoJEFDQzQsJEg0LCRSMCwkQUNDNCk7Ci0rCi0rCSMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK LSsJIyBsYXp5IHJlZHVjdGlvbgotKwotKwl2ZXNybGcJCSgkSDQsJEFDQzMsMjYpOwotKwl2ZXNy bGcJCSgkSDEsJEFDQzAsMjYpOwotKwl2bgkJKCRIMywkQUNDMywkbWFzazI2KTsKLSsJdm4JCSgk SDAsJEFDQzAsJG1hc2syNik7Ci0rCXZhZwkJKCRINCwkSDQsJEFDQzQpOwkjIGgzIC0+IGg0Ci0r CXZhZwkJKCRIMSwkSDEsJEFDQzEpOwkjIGgwIC0+IGgxCi0rCi0rCXZlc3JsZwkJKCRBQ0M0LCRI NCwyNik7Ci0rCXZlc3JsZwkJKCRBQ0MxLCRIMSwyNik7Ci0rCXZuCQkoJEg0LCRINCwkbWFzazI2 KTsKLSsJdm4JCSgkSDEsJEgxLCRtYXNrMjYpOwotKwl2YWcJCSgkSDAsJEgwLCRBQ0M0KTsKLSsJ dmFnCQkoJEgyLCRBQ0MyLCRBQ0MxKTsJIyBoMSAtPiBoMgotKwotKwl2ZXNsZwkJKCRBQ0M0LCRB Q0M0LDIpOwkjIDw8MgotKwl2ZXNybGcJCSgkQUNDMiwkSDIsMjYpOwotKwl2bgkJKCRIMiwkSDIs JG1hc2syNik7Ci0rCXZhZwkJKCRIMCwkSDAsJEFDQzQpOwkjIGg0IC0+IGgwCi0rCXZhZwkJKCRI MywkSDMsJEFDQzIpOwkjIGgyIC0+IGgzCi0rCi0rCXZlc3JsZwkJKCRBQ0MwLCRIMCwyNik7Ci0r CXZlc3JsZwkJKCRBQ0MzLCRIMywyNik7Ci0rCXZuCQkoJEgwLCRIMCwkbWFzazI2KTsKLSsJdm4J CSgkSDMsJEgzLCRtYXNrMjYpOwotKwl2YWcJCSgkSDEsJEgxLCRBQ0MwKTsJIyBoMCAtPiBoMQot Kwl2YWcJCSgkSDQsJEg0LCRBQ0MzKTsJIyBoMyAtPiBoNAotKwlicgkJKCIlcjE0Iik7Ci0rU0la RQkoIl9fcG9seTEzMDVfbXVsIiwiLi1fX3BvbHkxMzA1X211bCIpOwotKwotK1RZUEUJKCJfX3Bv bHkxMzA1X2Jsb2Nrc192eCIsIlxAZnVuY3Rpb24iKTsKLStBTElHTgkoMTYpOwotK0xBQkVMCSgi X19wb2x5MTMwNV9ibG9ja3NfdngiKTsKLSsmeyR6PwlcJmxncjpcJmxyfQkoIiVyMCIsJHNwKTsK LSsmeyR6PwlcJnN0bWc6XCZzdG19CSgiJXIxMCIsIiVyMTUiLCIxMCokU0laRV9UKCRzcCkiKTsK LStpZiAoISR6KSB7Ci0rCXN0ZAkoIiVmNCIsIjE2KiRTSVpFX1QrMio4KCRzcCkiKTsKLSsJc3Rk CSgiJWY2IiwiMTYqJFNJWkVfVCszKjgoJHNwKSIpOwotKwlhaGkJKCRzcCwtJHN0ZGZyYW1lKTsK LSsJc3QJKCIlcjAiLCIwKCRzcCkiKTsJCSMgYmFjay1jaGFpbgotKwotKwlsbGdmcgkoJGxlbiwk bGVuKTsJCQkjIHNvIHRoYXQgc3JsZyB3b3JrcyBvbiAkbGVuCi0rfSBlbHNlIHsKLSsJYWdoaQko JHNwLCItKCRzdGRmcmFtZSs4KjgpIik7Ci0rCXN0ZwkoIiVyMCIsIjAoJHNwKSIpOwkJIyBiYWNr LWNoYWluCi0rCi0rCXN0ZAkoIiVmOCIsIiRzdGRmcmFtZSswKjgoJHNwKSIpOwotKwlzdGQJKCIl ZjkiLCIkc3RkZnJhbWUrMSo4KCRzcCkiKTsKLSsJc3RkCSgiJWYxMCIsIiRzdGRmcmFtZSsyKjgo JHNwKSIpOwotKwlzdGQJKCIlZjExIiwiJHN0ZGZyYW1lKzMqOCgkc3ApIik7Ci0rCXN0ZAkoIiVm MTIiLCIkc3RkZnJhbWUrNCo4KCRzcCkiKTsKLSsJc3RkCSgiJWYxMyIsIiRzdGRmcmFtZSs1Kjgo JHNwKSIpOwotKwlzdGQJKCIlZjE0IiwiJHN0ZGZyYW1lKzYqOCgkc3ApIik7Ci0rCXN0ZAkoIiVm MTUiLCIkc3RkZnJhbWUrNyo4KCRzcCkiKTsKLSt9Ci0rCWxhcmwJKCIlcjEiLCIuTGNvbnN0Iik7 Ci0rCXZnbWcJKCRtYXNrMjYsMzgsNjMpOwotKwl2bG0JKCRic3dhcGxvLCRic3dhcG1pLCIxNigl cjEpIik7Ci0rCi0rCSZsdAkoIiVyMCIsIjI0KCRjdHgpIik7CQkjIGlzX2Jhc2UyXzI2PwotKwlq bnoJKCIuTHNraXBfaW5pdCIpOwotKwotKwlsZwkoJGgwLCIzMigkY3R4KSIpOwkJIyBsb2FkIGtl eSBiYXNlIDJeNjQKLSsJbGcJKCRoMSwiNDAoJGN0eCkiKTsKLSsKLSsJcmlzYmcJKCRkMCwkaDAs MzgsMHg4MCs2MywzOCk7CSMgYmFzZSAyXjY0IC0+IDJeMjYKLSsJc3JsZwkoJGQxLCRoMCw1Mik7 Ci0rCXJpc2JnCSgkaDAsJGgwLDM4LDB4ODArNjMsMCk7Ci0rCXZsdmdnCSgkUjAsJGgwLDApOwot KwlyaXNiZwkoJGQxLCRoMSwzOCw1MSwxMik7Ci0rCXZsdmdnCSgkUjEsJGQwLDApOwotKwlyaXNi ZwkoJGQwLCRoMSwzOCw2Myw1MCk7Ci0rCXZsdmdnCSgkUjIsJGQxLDApOwotKwlzcmxnCSgkZDEs JGgxLDQwKTsKLSsJdmx2Z2cJKCRSMywkZDAsMCk7Ci0rCXZsdmdnCSgkUjQsJGQxLDApOwotKwot Kwl2ZXNsZwkoJFMxLCRSMSwyKTsKLSsJdmVzbGcJKCRTMiwkUjIsMik7Ci0rCXZlc2xnCSgkUzMs JFIzLDIpOwotKwl2ZXNsZwkoJFM0LCRSNCwyKTsKLSsJdmxyCSgkSDAsJFIwKTsKLSsJdmxyCSgk SDEsJFIxKTsKLSsJdmxyCSgkSDIsJFIyKTsKLSsJdmxyCSgkSDMsJFIzKTsKLSsJdmxyCSgkSDQs JFI0KTsKLSsJdmFnCSgkUzEsJFMxLCRSMSk7CQkJIyAqIDUKLSsJdmFnCSgkUzIsJFMyLCRSMik7 Ci0rCXZhZwkoJFMzLCRTMywkUjMpOwotKwl2YWcJKCRTNCwkUzQsJFI0KTsKLSsKLSsJYnJhc2wJ KCIlcjE0IiwiX19wb2x5MTMwNV9tdWwiKTsJIyByXjE6LSAqIHJeMTotCi0rCi0rCXZwZGkJKCRS MCwkSDAsJFIwLDApOwkJIyByXjI6cl4xCi0rCXZwZGkJKCRSMSwkSDEsJFIxLDApOwotKwl2cGRp CSgkUjIsJEgyLCRSMiwwKTsKLSsJdnBkaQkoJFIzLCRIMywkUjMsMCk7Ci0rCXZwZGkJKCRSNCwk SDQsJFI0LDApOwotKwl2cGRpCSgkSDAsJEgwLCRIMCwwKTsJCSMgcl4yOnJeMgotKwl2cGRpCSgk SDEsJEgxLCRIMSwwKTsKLSsJdnBkaQkoJEgyLCRIMiwkSDIsMCk7Ci0rCXZwZGkJKCRIMywkSDMs JEgzLDApOwotKwl2cGRpCSgkSDQsJEg0LCRINCwwKTsKLSsJdmVzbGcJKCRTMSwkUjEsMik7Ci0r CXZlc2xnCSgkUzIsJFIyLDIpOwotKwl2ZXNsZwkoJFMzLCRSMywyKTsKLSsJdmVzbGcJKCRTNCwk UjQsMik7Ci0rCXZhZwkoJFMxLCRTMSwkUjEpOwkJCSMgKiA1Ci0rCXZhZwkoJFMyLCRTMiwkUjIp OwotKwl2YWcJKCRTMywkUzMsJFIzKTsKLSsJdmFnCSgkUzQsJFM0LCRSNCk7Ci0rCi0rCWJyYXNs CSgiJXIxNCxfX3BvbHkxMzA1X211bCIpOwkjIHJeMjpyXjIgKiByXjI6cl4xCi0rCi0rCXZsCSgk STAsIjAoJXIxKSIpOwkJCSMgYm9ycm93ICRJMAotKwl2cGVybQkoJFIwLCRSMCwkSDAsJEkwKTsJ CSMgcl4yOnJeNDpyXjE6cl4zCi0rCXZwZXJtCSgkUjEsJFIxLCRIMSwkSTApOwotKwl2cGVybQko JFIyLCRSMiwkSDIsJEkwKTsKLSsJdnBlcm0JKCRSMywkUjMsJEgzLCRJMCk7Ci0rCXZwZXJtCSgk UjQsJFI0LCRINCwkSTApOwotKwl2ZXNsZgkoJFMxLCRSMSwyKTsKLSsJdmVzbGYJKCRTMiwkUjIs Mik7Ci0rCXZlc2xmCSgkUzMsJFIzLDIpOwotKwl2ZXNsZgkoJFM0LCRSNCwyKTsKLSsJdmFmCSgk UzEsJFMxLCRSMSk7CQkJIyAqIDUKLSsJdmFmCSgkUzIsJFMyLCRSMik7Ci0rCXZhZgkoJFMzLCRT MywkUjMpOwotKwl2YWYJKCRTNCwkUzQsJFI0KTsKLSsKLSsJbGcJKCRoMCwiMCgkY3R4KSIpOwkJ IyBsb2FkIGhhc2ggYmFzZSAyXjY0Ci0rCWxnCSgkaDEsIjgoJGN0eCkiKTsKLSsJbGcJKCRoMiwi MTYoJGN0eCkiKTsKLSsKLSsJdnplcm8JKCRIMCk7Ci0rCXZ6ZXJvCSgkSDEpOwotKwl2emVybwko JEgyKTsKLSsJdnplcm8JKCRIMyk7Ci0rCXZ6ZXJvCSgkSDQpOwotKwotKwlyaXNiZwkoJGQwLCRo MCwzOCwweDgwKzYzLDM4KTsJIyBiYXNlIDJeNjQgLT4gMl4yNgotKwlzcmxnCSgkZDEsJGgwLDUy KTsKLSsJcmlzYmcJKCRoMCwkaDAsMzgsMHg4MCs2MywwKTsKLSsJdmx2Z2cJKCRIMCwkaDAsMCk7 Ci0rCXJpc2JnCSgkZDEsJGgxLDM4LDUxLDEyKTsKLSsJdmx2Z2cJKCRIMSwkZDAsMCk7Ci0rCXJp c2JnCSgkZDAsJGgxLDM4LDYzLDUwKTsKLSsJdmx2Z2cJKCRIMiwkZDEsMCk7Ci0rCXNybGcJKCRk MSwkaDEsNDApOwotKwl2bHZnZwkoJEgzLCRkMCwwKTsKLSsJcmlzYmcJKCRkMSwkaDIsMzcsMzks MjQpOwotKwl2bHZnZwkoJEg0LCRkMSwwKTsKLSsKLSsJbGhpCSgiJXIwIiwxKTsKLSsJc3QJKCIl cjAiLCIyNCgkY3R4KSIpOwkJIyBzZXQgaXNfYmFzZTJfMjYKLSsKLSsJdnN0bQkoJFIwLCRTNCwi NDgoJGN0eCkiKTsJCSMgc2F2ZSBrZXkgc2NoZWR1bGUgYmFzZSAyXjI2Ci0rCi0rCXZwZGkJKCRS MCwkUjAsJFIwLDApOwkJIyBicm9hZGNhc3Qgcl4yOnJeNAotKwl2cGRpCSgkUjEsJFIxLCRSMSww KTsKLSsJdnBkaQkoJFMxLCRTMSwkUzEsMCk7Ci0rCXZwZGkJKCRSMiwkUjIsJFIyLDApOwotKwl2 cGRpCSgkUzIsJFMyLCRTMiwwKTsKLSsJdnBkaQkoJFIzLCRSMywkUjMsMCk7Ci0rCXZwZGkJKCRT MywkUzMsJFMzLDApOwotKwl2cGRpCSgkUjQsJFI0LCRSNCwwKTsKLSsJdnBkaQkoJFM0LCRTNCwk UzQsMCk7Ci0rCi0rCWoJKCIuTG9hZGVkX2hhc2giKTsKLSsKLStBTElHTgkoMTYpOwotK0xBQkVM CSgiLkxza2lwX2luaXQiKTsKLSsJdmxsZXpmCSgkSDAsIjAoJGN0eCkiKTsJCSMgbG9hZCBoYXNo IGJhc2UgMl4yNgotKwl2bGxlemYJKCRIMSwiNCgkY3R4KSIpOwotKwl2bGxlemYJKCRIMiwiOCgk Y3R4KSIpOwotKwl2bGxlemYJKCRIMywiMTIoJGN0eCkiKTsKLSsJdmxsZXpmCSgkSDQsIjE2KCRj dHgpIik7Ci0rCi0rCXZscmVwZwkoJFIwLCIweDMwKCRjdHgpIik7CQkjIGJyb2FkY2FzdCByXjI6 cl40Ci0rCXZscmVwZwkoJFIxLCIweDQwKCRjdHgpIik7Ci0rCXZscmVwZwkoJFMxLCIweDUwKCRj dHgpIik7Ci0rCXZscmVwZwkoJFIyLCIweDYwKCRjdHgpIik7Ci0rCXZscmVwZwkoJFMyLCIweDcw KCRjdHgpIik7Ci0rCXZscmVwZwkoJFIzLCIweDgwKCRjdHgpIik7Ci0rCXZscmVwZwkoJFMzLCIw eDkwKCRjdHgpIik7Ci0rCXZscmVwZwkoJFI0LCIweGEwKCRjdHgpIik7Ci0rCXZscmVwZwkoJFM0 LCIweGIwKCRjdHgpIik7Ci0rCi0rTEFCRUwJKCIuTG9hZGVkX2hhc2giKTsKLSsJdnplcm8JKCRJ MSk7Ci0rCXZ6ZXJvCSgkSTMpOwotKwotKwl2bG0JKCRUMSwkVDQsIjB4MDAoJGlucCkiKTsJCSMg bG9hZCBmaXJzdCBpbnB1dCBibG9jawotKwlsYQkoJGlucCwiMHg0MCgkaW5wKSIpOwotKwl2Z21n CSgkbWFzazI2LDYsMzEpOwotKwl2Z21mCSgkSTQsNSw1KTsJCQkjIHBhZGJpdDw8MgotKwotKwl2 cGVybQkoJEkwLCRUMywkVDQsJGJzd2FwbG8pOwotKwl2cGVybQkoJEkyLCRUMywkVDQsJGJzd2Fw bWkpOwotKwl2cGVybQkoJFQzLCRUMywkVDQsJGJzd2FwaGkpOwotKwotKwl2ZXJpbWcJKCRJMSwk STAsJG1hc2syNiw2KTsJCSMgPj4yNgotKwl2ZXNsZwkoJEkwLCRJMCwzMik7Ci0rCXZlc2xnCSgk STIsJEkyLDI4KTsJCQkjID4+NAotKwl2ZXJpbWcJKCRJMywkVDMsJG1hc2syNiwxOCk7CQkjID4+ MTQKLSsJdmVyaW1nCSgkSTQsJFQzLCRtYXNrMjYsNTgpOwkJIyA+PjM4Ci0rCXZuCSgkSTAsJEkw LCRtYXNrMjYpOwotKwl2bgkoJEkyLCRJMiwkbWFzazI2KTsKLSsJdmVzcmxmCSgkSTQsJEk0LDIp OwkJCSMgPj4yCi0rCi0rCXZnbWcJKCRtYXNrMjYsMzgsNjMpOwotKwl2cGVybQkoJFQzLCRUMSwk VDIsJGJzd2FwbG8pOwotKwl2cGVybQkoJFQ0LCRUMSwkVDIsJGJzd2FwaGkpOwotKwl2cGVybQko JFQyLCRUMSwkVDIsJGJzd2FwbWkpOwotKwotKwl2ZXJpbWcJKCRJMCwkVDMsJG1hc2syNiwwKTsK LSsJdmVyaW1nCSgkSTEsJFQzLCRtYXNrMjYsMzgpOwkJIyA+PjI2Ci0rCXZlcmltZwkoJEkyLCRU MiwkbWFzazI2LDYwKTsJCSMgPj40Ci0rCXZlcmltZwkoJEkzLCRUNCwkbWFzazI2LDUwKTsJCSMg Pj4xNAotKwl2ZXNybGcJKCRUNCwkVDQsNDApOwotKwl2bwkoJEk0LCRJNCwkVDQpOwotKwotKwlz cmxnCSgiJXIwIiwkbGVuLDYpOwotKyZ7JHo/CVwmYWdoaTpcJmFoaX0JKCIlcjAiLC0xKTsKLSsK LStBTElHTgkoMTYpOwotK0xBQkVMCSgiLkxvb3BfdngiKTsKLSsJdm1sZWYJCSgkQUNDMCwkSTAs JFIwKTsKLSsJdm1sZWYJCSgkQUNDMSwkSTAsJFIxKTsKLSsJdm1sZWYJCSgkQUNDMiwkSTAsJFIy KTsKLSsJdm1sZWYJCSgkQUNDMywkSTAsJFIzKTsKLSsJdm1sZWYJCSgkQUNDNCwkSTAsJFI0KTsK LSsKLSsJdm1hbGVmCQkoJEFDQzAsJEkxLCRTNCwkQUNDMCk7Ci0rCXZtYWxlZgkJKCRBQ0MxLCRJ MSwkUjAsJEFDQzEpOwotKwl2bWFsZWYJCSgkQUNDMiwkSTEsJFIxLCRBQ0MyKTsKLSsJdm1hbGVm CQkoJEFDQzMsJEkxLCRSMiwkQUNDMyk7Ci0rCXZtYWxlZgkJKCRBQ0M0LCRJMSwkUjMsJEFDQzQp OwotKwotKwkgdmFmCQkoJEgyLCRIMiwkSTIpOwotKwkgdmFmCQkoJEgwLCRIMCwkSTApOwotKwkg dmFmCQkoJEgzLCRIMywkSTMpOwotKwkgdmFmCQkoJEgxLCRIMSwkSTEpOwotKwkgdmFmCQkoJEg0 LCRINCwkSTQpOwotKwotKwl2bWFsZWYJCSgkQUNDMCwkSTIsJFMzLCRBQ0MwKTsKLSsJdm1hbGVm CQkoJEFDQzEsJEkyLCRTNCwkQUNDMSk7Ci0rCXZtYWxlZgkJKCRBQ0MyLCRJMiwkUjAsJEFDQzIp OwotKwl2bWFsZWYJCSgkQUNDMywkSTIsJFIxLCRBQ0MzKTsKLSsJdm1hbGVmCQkoJEFDQzQsJEky LCRSMiwkQUNDNCk7Ci0rCi0rCSB2bG0JCSgkVDEsJFQ0LCIweDAwKCRpbnApIik7CSMgbG9hZCBu ZXh0IGlucHV0IGJsb2NrCi0rCSBsYQkJKCRpbnAsIjB4NDAoJGlucCkiKTsKLSsJIHZnbWcJCSgk bWFzazI2LDYsMzEpOwotKwotKwl2bWFsZWYJCSgkQUNDMCwkSTMsJFMyLCRBQ0MwKTsKLSsJdm1h bGVmCQkoJEFDQzEsJEkzLCRTMywkQUNDMSk7Ci0rCXZtYWxlZgkJKCRBQ0MyLCRJMywkUzQsJEFD QzIpOwotKwl2bWFsZWYJCSgkQUNDMywkSTMsJFIwLCRBQ0MzKTsKLSsJdm1hbGVmCQkoJEFDQzQs JEkzLCRSMSwkQUNDNCk7Ci0rCi0rCSB2cGVybQkJKCRJMCwkVDMsJFQ0LCRic3dhcGxvKTsKLSsJ IHZwZXJtCQkoJEkyLCRUMywkVDQsJGJzd2FwbWkpOwotKwkgdnBlcm0JCSgkVDMsJFQzLCRUNCwk YnN3YXBoaSk7Ci0rCi0rCXZtYWxlZgkJKCRBQ0MwLCRJNCwkUzEsJEFDQzApOwotKwl2bWFsZWYJ CSgkQUNDMSwkSTQsJFMyLCRBQ0MxKTsKLSsJdm1hbGVmCQkoJEFDQzIsJEk0LCRTMywkQUNDMik7 Ci0rCXZtYWxlZgkJKCRBQ0MzLCRJNCwkUzQsJEFDQzMpOwotKwl2bWFsZWYJCSgkQUNDNCwkSTQs JFIwLCRBQ0M0KTsKLSsKLSsJIHZlcmltZwkJKCRJMSwkSTAsJG1hc2syNiw2KTsJIyA+PjI2Ci0r CSB2ZXNsZwkJKCRJMCwkSTAsMzIpOwotKwkgdmVzbGcJCSgkSTIsJEkyLDI4KTsJCSMgPj40Ci0r CSB2ZXJpbWcJCSgkSTMsJFQzLCRtYXNrMjYsMTgpOwkjID4+MTQKLSsKLSsJdm1hbG9mCQkoJEFD QzAsJEgwLCRSMCwkQUNDMCk7Ci0rCXZtYWxvZgkJKCRBQ0MxLCRIMCwkUjEsJEFDQzEpOwotKwl2 bWFsb2YJCSgkQUNDMiwkSDAsJFIyLCRBQ0MyKTsKLSsJdm1hbG9mCQkoJEFDQzMsJEgwLCRSMywk QUNDMyk7Ci0rCXZtYWxvZgkJKCRBQ0M0LCRIMCwkUjQsJEFDQzQpOwotKwotKwkgdmdtZgkJKCRJ NCw1LDUpOwkJIyBwYWRiaXQ8PDIKLSsJIHZlcmltZwkJKCRJNCwkVDMsJG1hc2syNiw1OCk7CSMg Pj4zOAotKwkgdm4JCSgkSTAsJEkwLCRtYXNrMjYpOwotKwkgdm4JCSgkSTIsJEkyLCRtYXNrMjYp OwotKwkgdmVzcmxmCQkoJEk0LCRJNCwyKTsJCSMgPj4yCi0rCi0rCXZtYWxvZgkJKCRBQ0MwLCRI MSwkUzQsJEFDQzApOwotKwl2bWFsb2YJCSgkQUNDMSwkSDEsJFIwLCRBQ0MxKTsKLSsJdm1hbG9m CQkoJEFDQzIsJEgxLCRSMSwkQUNDMik7Ci0rCXZtYWxvZgkJKCRBQ0MzLCRIMSwkUjIsJEFDQzMp OwotKwl2bWFsb2YJCSgkQUNDNCwkSDEsJFIzLCRBQ0M0KTsKLSsKLSsJIHZnbWcJCSgkbWFzazI2 LDM4LDYzKTsKLSsJIHZwZXJtCQkoJFQzLCRUMSwkVDIsJGJzd2FwbG8pOwotKwkgdnBlcm0JCSgk VDQsJFQxLCRUMiwkYnN3YXBoaSk7Ci0rCSB2cGVybQkJKCRUMiwkVDEsJFQyLCRic3dhcG1pKTsK LSsKLSsJdm1hbG9mCQkoJEFDQzAsJEgyLCRTMywkQUNDMCk7Ci0rCXZtYWxvZgkJKCRBQ0MxLCRI MiwkUzQsJEFDQzEpOwotKwl2bWFsb2YJCSgkQUNDMiwkSDIsJFIwLCRBQ0MyKTsKLSsJdm1hbG9m CQkoJEFDQzMsJEgyLCRSMSwkQUNDMyk7Ci0rCXZtYWxvZgkJKCRBQ0M0LCRIMiwkUjIsJEFDQzQp OwotKwotKwkgdmVyaW1nCQkoJEkwLCRUMywkbWFzazI2LDApOwotKwkgdmVyaW1nCQkoJEkxLCRU MywkbWFzazI2LDM4KTsJIyA+PjI2Ci0rCSB2ZXJpbWcJCSgkSTIsJFQyLCRtYXNrMjYsNjApOwkj ID4+NAotKwotKwl2bWFsb2YJCSgkQUNDMCwkSDMsJFMyLCRBQ0MwKTsKLSsJdm1hbG9mCQkoJEFD QzEsJEgzLCRTMywkQUNDMSk7Ci0rCXZtYWxvZgkJKCRBQ0MyLCRIMywkUzQsJEFDQzIpOwotKwl2 bWFsb2YJCSgkQUNDMywkSDMsJFIwLCRBQ0MzKTsKLSsJdm1hbG9mCQkoJEFDQzQsJEgzLCRSMSwk QUNDNCk7Ci0rCi0rCSB2ZXJpbWcJCSgkSTMsJFQ0LCRtYXNrMjYsNTApOwkjID4+MTQKLSsJIHZl c3JsZwkJKCRUNCwkVDQsNDApOwotKwkgdm8JCSgkSTQsJEk0LCRUNCk7Ci0rCi0rCXZtYWxvZgkJ KCRBQ0MwLCRINCwkUzEsJEFDQzApOwotKwl2bWFsb2YJCSgkQUNDMSwkSDQsJFMyLCRBQ0MxKTsK LSsJdm1hbG9mCQkoJEFDQzIsJEg0LCRTMywkQUNDMik7Ci0rCXZtYWxvZgkJKCRBQ0MzLCRINCwk UzQsJEFDQzMpOwotKwl2bWFsb2YJCSgkQUNDNCwkSDQsJFIwLCRBQ0M0KTsKLSsKLSsJIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IwotKwkjIGxhenkgcmVkdWN0aW9uIGFzIGRpc2N1c3NlZCBpbiAiTkVPTiBjcnlwdG8iIGJ5IEQu Si4gQmVybnN0ZWluCi0rCSMgYW5kIFAuIFNjaHdhYmUKLSsKLSsJdmVzcmxnCQkoJEg0LCRBQ0Mz LDI2KTsKLSsJdmVzcmxnCQkoJEgxLCRBQ0MwLDI2KTsKLSsJdm4JCSgkSDMsJEFDQzMsJG1hc2sy Nik7Ci0rCXZuCQkoJEgwLCRBQ0MwLCRtYXNrMjYpOwotKwl2YWcJCSgkSDQsJEg0LCRBQ0M0KTsJ IyBoMyAtPiBoNAotKwl2YWcJCSgkSDEsJEgxLCRBQ0MxKTsJIyBoMCAtPiBoMQotKwotKwl2ZXNy bGcJCSgkQUNDNCwkSDQsMjYpOwotKwl2ZXNybGcJCSgkQUNDMSwkSDEsMjYpOwotKwl2bgkJKCRI NCwkSDQsJG1hc2syNik7Ci0rCXZuCQkoJEgxLCRIMSwkbWFzazI2KTsKLSsJdmFnCQkoJEgwLCRI MCwkQUNDNCk7Ci0rCXZhZwkJKCRIMiwkQUNDMiwkQUNDMSk7CSMgaDEgLT4gaDIKLSsKLSsJdmVz bGcJCSgkQUNDNCwkQUNDNCwyKTsJIyA8PDIKLSsJdmVzcmxnCQkoJEFDQzIsJEgyLDI2KTsKLSsJ dm4JCSgkSDIsJEgyLCRtYXNrMjYpOwotKwl2YWcJCSgkSDAsJEgwLCRBQ0M0KTsJIyBoNCAtPiBo MAotKwl2YWcJCSgkSDMsJEgzLCRBQ0MyKTsJIyBoMiAtPiBoMwotKwotKwl2ZXNybGcJCSgkQUND MCwkSDAsMjYpOwotKwl2ZXNybGcJCSgkQUNDMywkSDMsMjYpOwotKwl2bgkJKCRIMCwkSDAsJG1h c2syNik7Ci0rCXZuCQkoJEgzLCRIMywkbWFzazI2KTsKLSsJdmFnCQkoJEgxLCRIMSwkQUNDMCk7 CSMgaDAgLT4gaDEKLSsJdmFnCQkoJEg0LCRINCwkQUNDMyk7CSMgaDMgLT4gaDQKLSsKLSsmeyR6 PwlcJmJyY3RnOlwmYnJjdH0JKCIlcjAiLCIuTG9vcF92eCIpOwotKwotKwl2bG0JKCRSMCwkUzQs IjQ4KCRjdHgpIik7CQkjIGxvYWQgYWxsIHBvd2VycwotKwotKwlsZ2hpCSgiJXIwIiwweDMwKTsK LSsmeyR6PwlcJmxjZ3I6XCZsY3J9CSgkbGVuLCRsZW4pOwotKyZ7JHo/CVwmbmdyOlwmbnJ9CSgk bGVuLCIlcjAiKTsKLSsmeyR6PwlcJnNsZ3I6XCZzbHJ9CSgkaW5wLCRsZW4pOwotKwotK0xBQkVM CSgiLkxhc3QiKTsKLSsJdm1sZWYJKCRBQ0MwLCRJMCwkUjApOwotKwl2bWxlZgkoJEFDQzEsJEkw LCRSMSk7Ci0rCXZtbGVmCSgkQUNDMiwkSTAsJFIyKTsKLSsJdm1sZWYJKCRBQ0MzLCRJMCwkUjMp OwotKwl2bWxlZgkoJEFDQzQsJEkwLCRSNCk7Ci0rCi0rCXZtYWxlZgkoJEFDQzAsJEkxLCRTNCwk QUNDMCk7Ci0rCXZtYWxlZgkoJEFDQzEsJEkxLCRSMCwkQUNDMSk7Ci0rCXZtYWxlZgkoJEFDQzIs JEkxLCRSMSwkQUNDMik7Ci0rCXZtYWxlZgkoJEFDQzMsJEkxLCRSMiwkQUNDMyk7Ci0rCXZtYWxl ZgkoJEFDQzQsJEkxLCRSMywkQUNDNCk7Ci0rCi0rCSB2YWYJKCRIMCwkSDAsJEkwKTsKLSsJIHZh ZgkoJEgxLCRIMSwkSTEpOwotKwkgdmFmCSgkSDIsJEgyLCRJMik7Ci0rCSB2YWYJKCRIMywkSDMs JEkzKTsKLSsJIHZhZgkoJEg0LCRINCwkSTQpOwotKwotKwl2bWFsZWYJKCRBQ0MwLCRJMiwkUzMs JEFDQzApOwotKwl2bWFsZWYJKCRBQ0MxLCRJMiwkUzQsJEFDQzEpOwotKwl2bWFsZWYJKCRBQ0My LCRJMiwkUjAsJEFDQzIpOwotKwl2bWFsZWYJKCRBQ0MzLCRJMiwkUjEsJEFDQzMpOwotKwl2bWFs ZWYJKCRBQ0M0LCRJMiwkUjIsJEFDQzQpOwotKwotKwl2bWFsZWYJKCRBQ0MwLCRJMywkUzIsJEFD QzApOwotKwl2bWFsZWYJKCRBQ0MxLCRJMywkUzMsJEFDQzEpOwotKwl2bWFsZWYJKCRBQ0MyLCRJ MywkUzQsJEFDQzIpOwotKwl2bWFsZWYJKCRBQ0MzLCRJMywkUjAsJEFDQzMpOwotKwl2bWFsZWYJ KCRBQ0M0LCRJMywkUjEsJEFDQzQpOwotKwotKwl2bWFsZWYJKCRBQ0MwLCRJNCwkUzEsJEFDQzAp OwotKwl2bWFsZWYJKCRBQ0MxLCRJNCwkUzIsJEFDQzEpOwotKwl2bWFsZWYJKCRBQ0MyLCRJNCwk UzMsJEFDQzIpOwotKwl2bWFsZWYJKCRBQ0MzLCRJNCwkUzQsJEFDQzMpOwotKwl2bWFsZWYJKCRB Q0M0LCRJNCwkUjAsJEFDQzQpOwotKwotKwl2bWFsb2YJKCRBQ0MwLCRIMCwkUjAsJEFDQzApOwot Kwl2bWFsb2YJKCRBQ0MxLCRIMCwkUjEsJEFDQzEpOwotKwl2bWFsb2YJKCRBQ0MyLCRIMCwkUjIs JEFDQzIpOwotKwl2bWFsb2YJKCRBQ0MzLCRIMCwkUjMsJEFDQzMpOwotKwl2bWFsb2YJKCRBQ0M0 LCRIMCwkUjQsJEFDQzQpOwotKwotKwl2bWFsb2YJKCRBQ0MwLCRIMSwkUzQsJEFDQzApOwotKwl2 bWFsb2YJKCRBQ0MxLCRIMSwkUjAsJEFDQzEpOwotKwl2bWFsb2YJKCRBQ0MyLCRIMSwkUjEsJEFD QzIpOwotKwl2bWFsb2YJKCRBQ0MzLCRIMSwkUjIsJEFDQzMpOwotKwl2bWFsb2YJKCRBQ0M0LCRI MSwkUjMsJEFDQzQpOwotKwotKwl2bWFsb2YJKCRBQ0MwLCRIMiwkUzMsJEFDQzApOwotKwl2bWFs b2YJKCRBQ0MxLCRIMiwkUzQsJEFDQzEpOwotKwl2bWFsb2YJKCRBQ0MyLCRIMiwkUjAsJEFDQzIp OwotKwl2bWFsb2YJKCRBQ0MzLCRIMiwkUjEsJEFDQzMpOwotKwl2bWFsb2YJKCRBQ0M0LCRIMiwk UjIsJEFDQzQpOwotKwotKwl2bWFsb2YJKCRBQ0MwLCRIMywkUzIsJEFDQzApOwotKwl2bWFsb2YJ KCRBQ0MxLCRIMywkUzMsJEFDQzEpOwotKwl2bWFsb2YJKCRBQ0MyLCRIMywkUzQsJEFDQzIpOwot Kwl2bWFsb2YJKCRBQ0MzLCRIMywkUjAsJEFDQzMpOwotKwl2bWFsb2YJKCRBQ0M0LCRIMywkUjEs JEFDQzQpOwotKwotKwl2bWFsb2YJKCRBQ0MwLCRINCwkUzEsJEFDQzApOwotKwl2bWFsb2YJKCRB Q0MxLCRINCwkUzIsJEFDQzEpOwotKwl2bWFsb2YJKCRBQ0MyLCRINCwkUzMsJEFDQzIpOwotKwl2 bWFsb2YJKCRBQ0MzLCRINCwkUzQsJEFDQzMpOwotKwl2bWFsb2YJKCRBQ0M0LCRINCwkUjAsJEFD QzQpOwotKwotKwkjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjCi0rCSMgaG9yaXpvbnRhbCBhZGRpdGlvbgotKwotKwl2emVybwko JEgwKTsKLSsJdnN1bXFnCSgkQUNDMCwkQUNDMCwkSDApOwotKwl2c3VtcWcJKCRBQ0MxLCRBQ0Mx LCRIMCk7Ci0rCXZzdW1xZwkoJEFDQzIsJEFDQzIsJEgwKTsKLSsJdnN1bXFnCSgkQUNDMywkQUND MywkSDApOwotKwl2c3VtcWcJKCRBQ0M0LCRBQ0M0LCRIMCk7Ci0rCi0rCSMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKLSsJIyBs YXp5IHJlZHVjdGlvbgotKwotKwl2ZXNybGcJKCRINCwkQUNDMywyNik7Ci0rCXZlc3JsZwkoJEgx LCRBQ0MwLDI2KTsKLSsJdm4JKCRIMywkQUNDMywkbWFzazI2KTsKLSsJdm4JKCRIMCwkQUNDMCwk bWFzazI2KTsKLSsJdmFnCSgkSDQsJEg0LCRBQ0M0KTsJCSMgaDMgLT4gaDQKLSsJdmFnCSgkSDEs JEgxLCRBQ0MxKTsJCSMgaDAgLT4gaDEKLSsKLSsJdmVzcmxnCSgkQUNDNCwkSDQsMjYpOwotKwl2 ZXNybGcJKCRBQ0MxLCRIMSwyNik7Ci0rCXZuCSgkSDQsJEg0LCRtYXNrMjYpOwotKwl2bgkoJEgx LCRIMSwkbWFzazI2KTsKLSsJdmFnCSgkSDAsJEgwLCRBQ0M0KTsKLSsJdmFnCSgkSDIsJEFDQzIs JEFDQzEpOwkJIyBoMSAtPiBoMgotKwotKwl2ZXNsZwkoJEFDQzQsJEFDQzQsMik7CQkjIDw8Mgot Kwl2ZXNybGcJKCRBQ0MyLCRIMiwyNik7Ci0rCXZuCSgkSDIsJEgyLCRtYXNrMjYpOwotKwl2YWcJ KCRIMCwkSDAsJEFDQzQpOwkJIyBoNCAtPiBoMAotKwl2YWcJKCRIMywkSDMsJEFDQzIpOwkJIyBo MiAtPiBoMwotKwotKwl2ZXNybGcJKCRBQ0MwLCRIMCwyNik7Ci0rCXZlc3JsZwkoJEFDQzMsJEgz LDI2KTsKLSsJdm4JKCRIMCwkSDAsJG1hc2syNik7Ci0rCXZuCSgkSDMsJEgzLCRtYXNrMjYpOwot Kwl2YWcJKCRIMSwkSDEsJEFDQzApOwkJIyBoMCAtPiBoMQotKwl2YWcJKCRINCwkSDQsJEFDQzMp OwkJIyBoMyAtPiBoNAotKwotKyZ7JHo/CVwmY2xnZmk6XCZjbGZpfSAoJGxlbiwwKTsKLSsJamUJ KCIuTGRvbmUiKTsKLSsKLSsJdmxtCSgkVDEsJFQ0LCIweDAwKCRpbnApIik7CQkjIGxvYWQgbGFz dCBwYXJ0aWFsIGJsb2NrCi0rCXZnbWcJKCRtYXNrMjYsNiwzMSk7Ci0rCXZnbWYJKCRJNCw1LDUp OwkJCSMgcGFkYml0PDwyCi0rCi0rCXZwZXJtCSgkSTAsJFQzLCRUNCwkYnN3YXBsbyk7Ci0rCXZw ZXJtCSgkSTIsJFQzLCRUNCwkYnN3YXBtaSk7Ci0rCXZwZXJtCSgkVDMsJFQzLCRUNCwkYnN3YXBo aSk7Ci0rCi0rCXZsCSgkQUNDMCwiMHgzMCgkbGVuLCVyMSkiKTsJIyBib3Jyb3cgJEFDQzAsMQot Kwl2bAkoJEFDQzEsIjB4NjAoJGxlbiwlcjEpIik7Ci0rCi0rCXZlcmltZwkoJEkxLCRJMCwkbWFz azI2LDYpOwkJIyA+PjI2Ci0rCXZlc2xnCSgkSTAsJEkwLDMyKTsKLSsJdmVzbGcJKCRJMiwkSTIs MjgpOwkJCSMgPj40Ci0rCXZlcmltZwkoJEkzLCRUMywkbWFzazI2LDE4KTsJCSMgPj4xNAotKwl2 ZXJpbWcJKCRJNCwkVDMsJG1hc2syNiw1OCk7CQkjID4+MzgKLSsJdm4JKCRJMCwkSTAsJG1hc2sy Nik7Ci0rCXZuCSgkSTIsJEkyLCRtYXNrMjYpOwotKwl2ZXNybGYJKCRJNCwkSTQsMik7CQkJIyA+ PjIKLSsKLSsJdmdtZwkoJG1hc2syNiwzOCw2Myk7Ci0rCXZwZXJtCSgkVDMsJFQxLCRUMiwkYnN3 YXBsbyk7Ci0rCXZwZXJtCSgkVDQsJFQxLCRUMiwkYnN3YXBoaSk7Ci0rCXZwZXJtCSgkVDIsJFQx LCRUMiwkYnN3YXBtaSk7Ci0rCi0rCXZlcmltZwkoJEkwLCRUMywkbWFzazI2LDApOwotKwl2ZXJp bWcJKCRJMSwkVDMsJG1hc2syNiwzOCk7CQkjID4+MjYKLSsJdmVyaW1nCSgkSTIsJFQyLCRtYXNr MjYsNjApOwkJIyA+PjQKLSsJdmVyaW1nCSgkSTMsJFQ0LCRtYXNrMjYsNTApOwkJIyA+PjE0Ci0r CXZlc3JsZwkoJFQ0LCRUNCw0MCk7Ci0rCXZvCSgkSTQsJEk0LCRUNCk7Ci0rCi0rCXZwZXJtCSgk SDAsJEgwLCRIMCwkQUNDMCk7CQkjIG1vdmUgaGFzaCB0byByaWdodCBsYW5lCi0rCXZuCSgkSTAs JEkwLCRBQ0MxKTsJCSMgbWFzayByZWR1bmRhbnQgbGFuZVtzXQotKwl2cGVybQkoJEgxLCRIMSwk SDEsJEFDQzApOwotKwl2bgkoJEkxLCRJMSwkQUNDMSk7Ci0rCXZwZXJtCSgkSDIsJEgyLCRIMiwk QUNDMCk7Ci0rCXZuCSgkSTIsJEkyLCRBQ0MxKTsKLSsJdnBlcm0JKCRIMywkSDMsJEgzLCRBQ0Mw KTsKLSsJdm4JKCRJMywkSTMsJEFDQzEpOwotKwl2cGVybQkoJEg0LCRINCwkSDQsJEFDQzApOwot Kwl2bgkoJEk0LCRJNCwkQUNDMSk7Ci0rCi0rCXZhZgkoJEkwLCRJMCwkSDApOwkJCSMgYWNjdW11 bGF0ZSBoYXNoCi0rCXZ6ZXJvCSgkSDApOwkJCQkjIHdpcGUgaGFzaCB2YWx1ZQotKwl2YWYJKCRJ MSwkSTEsJEgxKTsKLSsJdnplcm8JKCRIMSk7Ci0rCXZhZgkoJEkyLCRJMiwkSDIpOwotKwl2emVy bwkoJEgyKTsKLSsJdmFmCSgkSTMsJEkzLCRIMyk7Ci0rCXZ6ZXJvCSgkSDMpOwotKwl2YWYJKCRJ NCwkSTQsJEg0KTsKLSsJdnplcm8JKCRINCk7Ci0rCi0rJnskej8JXCZsZ2hpOlwmbGhpfQkoJGxl biwwKTsKLSsJagkoIi5MYXN0Iik7Ci0rCSMgSSBkb24ndCBib3RoZXIgdG8gdGVsbCBhcGFydCBj YXNlcyB3aGVuIG9ubHkgb25lIG11bHRpcGxpY2F0aW9uCi0rCSMgcGFzcyBpcyBzdWZmaWNpZW50 LCBiZWNhdXNlIEkgYXJndWUgdGhhdCBtaXNwcmVkaWN0ZWQgYnJhbmNoCi0rCSMgcGVuYWx0aWVz IGFyZSBjb21wYXJhYmxlIHRvIG92ZXJoZWFkIG9mIHNvbWV0aW1lcyByZWR1bmRhbnQKLSsJIyBt dWx0aXBsaWNhdGlvbiBwYXNzLi4uCi0rCi0rTEFCRUwJKCIuTGRvbmUiKTsKLSsJdnN0ZWYJKCRI MCwiMCgkY3R4KSIsMyk7CQkjIHN0b3JlIGhhc2ggYmFzZSAyXjI2Ci0rCXZzdGVmCSgkSDEsIjQo JGN0eCkiLDMpOwotKwl2c3RlZgkoJEgyLCI4KCRjdHgpIiwzKTsKLSsJdnN0ZWYJKCRIMywiMTIo JGN0eCkiLDMpOwotKwl2c3RlZgkoJEg0LCIxNigkY3R4KSIsMyk7Ci0rCi0raWYgKCR6KSB7Ci0r CWxkCSgiJWY4IiwiJHN0ZGZyYW1lKzAqOCgkc3ApIik7Ci0rCWxkCSgiJWY5IiwiJHN0ZGZyYW1l KzEqOCgkc3ApIik7Ci0rCWxkCSgiJWYxMCIsIiRzdGRmcmFtZSsyKjgoJHNwKSIpOwotKwlsZAko IiVmMTEiLCIkc3RkZnJhbWUrMyo4KCRzcCkiKTsKLSsJbGQJKCIlZjEyIiwiJHN0ZGZyYW1lKzQq OCgkc3ApIik7Ci0rCWxkCSgiJWYxMyIsIiRzdGRmcmFtZSs1KjgoJHNwKSIpOwotKwlsZAkoIiVm MTQiLCIkc3RkZnJhbWUrNio4KCRzcCkiKTsKLSsJbGQJKCIlZjE1IiwiJHN0ZGZyYW1lKzcqOCgk c3ApIik7Ci0rJnskej8JXCZsbWc6XCZsbX0JKCIlcjEwIiwiJXIxNSIsIiRzdGRmcmFtZSs4Kjgr MTAqJFNJWkVfVCgkc3ApIik7Ci0rfSBlbHNlIHsKLSsJbGQJKCIlZjQiLCIkc3RkZnJhbWUrMTYq JFNJWkVfVCsyKjgoJHNwKSIpOwotKwlsZAkoIiVmNiIsIiRzdGRmcmFtZSsxNiokU0laRV9UKzMq OCgkc3ApIik7Ci0rJnskej8JXCZsbWc6XCZsbX0JKCIlcjEwIiwiJXIxNSIsIiRzdGRmcmFtZSsx MCokU0laRV9UKCRzcCkiKTsKLSt9Ci0rCWJyCSgiJXIxNCIpOwotK1NJWkUJKCJfX3BvbHkxMzA1 X2Jsb2Nrc192eCIsIi4tX19wb2x5MTMwNV9ibG9ja3NfdngiKTsKLSt9Ci0rCi0rIyMjIyMjIyMj IyMjIyMjIwotKyMgc3RhdGljIHZvaWQgcG9seTEzMDVfZW1pdCh2b2lkICpjdHgsIHVuc2lnbmVk IGNoYXIgbWFjWzE2XSwKLSsjICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdTMyIG5v bmNlWzRdKQotIHsKLSBteSAoJG1hYywkbm9uY2UpPSgkaW5wLCRsZW4pOwotLW15ICgkaDAsJGgx LCRoMiwkZDAsJGQxKT1tYXAoIiVyJF8iLCg1Li45KSk7Ci0rbXkgKCRoMCwkaDEsJGgyLCRkMCwk ZDEsJGQyKT1tYXAoIiVyJF8iLCg1Li4xMCkpOwotIAotLSRjb2RlLj08PF9fXzsKLS0uZ2xvYmwJ cG9seTEzMDVfZW1pdAotLS50eXBlCXBvbHkxMzA1X2VtaXQsXEBmdW5jdGlvbgotLS5hbGlnbgkx NgotLXBvbHkxMzA1X2VtaXQ6Ci0tCXN0bSR7Z30JJXI2LCVyOSxgNiokU0laRV9UYCgkc3ApCi0t Ci0tCWxnCSRoMCwwKCRjdHgpCi0tCWxnCSRoMSw4KCRjdHgpCi0tCWxnCSRoMiwxNigkY3R4KQot LQotLQlsZ2hpCSVyMCw1Ci0tCWxnaGkJJXIxLDAKLS0JbGdyCSRkMCwkaDAKLS0JbGdyCSRkMSwk aDEKLS0KLS0JYWxncgkkaDAsJXIwCQkJIyBjb21wYXJlIHRvIG1vZHVsdXMKLS0JYWxjZ3IJJGgx LCVyMQotLQlhbGNncgkkaDIsJXIxCi0tCi0tCXNybGcJJGgyLCRoMiwyCQkjIGRpZCBpdCBib3Jy b3cvY2Fycnk/Ci0tCXNsZ3IJJXIxLCRoMgkJCSMgMC0kaDI+PjIKLS0JbGcJJGgyLDAoJG5vbmNl KQkJIyBsb2FkIG5vbmNlCi0tCWxnaGkJJXIwLC0xCi0tCWxnCSRjdHgsOCgkbm9uY2UpCi0tCXhn cgklcjAsJXIxCQkJIyB+JXIxCi0tCi0tCW5ncgkkaDAsJXIxCi0tCW5ncgkkZDAsJXIwCi0tCW5n cgkkaDEsJXIxCi0tCW5ncgkkZDEsJXIwCi0tCW9ncgkkaDAsJGQwCi0tCXJsbGcJJGQwLCRoMiwz MgkJIyBmbGlwIG5vbmNlIHdvcmRzCi0tCW9ncgkkaDEsJGQxCi0tCXJsbGcJJGQxLCRjdHgsMzIK LS0KLS0JYWxncgkkaDAsJGQwCQkJIyBhY2N1bXVsYXRlIG5vbmNlCi0tCWFsY2dyCSRoMSwkZDEK LS0KLS0Jc3RydmcJJGgwLDAoJG1hYykJCSMgd3JpdGUgbGl0dGxlLWVuZGlhbiByZXN1bHQKLS0J c3RydmcJJGgxLDgoJG1hYykKLS0KLS0JbG0ke2d9CSVyNiwlcjksYDYqJFNJWkVfVGAoJHNwKQot LQlicgklcjE0Ci0tLnNpemUJcG9seTEzMDVfZW1pdCwuLXBvbHkxMzA1X2VtaXQKLS0KLS0uc3Ry aW5nCSJQb2x5MTMwNSBmb3IgczM5MHgsIENSWVBUT0dBTVMgYnkgPGFwcHJvXEBvcGVuc3NsLm9y Zz4iCi0tX19fCi0rR0xPQkwJKCJwb2x5MTMwNV9lbWl0Iik7Ci0rVFlQRQkoInBvbHkxMzA1X2Vt aXQiLCJcQGZ1bmN0aW9uIik7Ci0rQUxJR04JKDE2KTsKLStMQUJFTAkoInBvbHkxMzA1X2VtaXQi KTsKLStMQUJFTAkoIi5McG9seTEzMDVfZW1pdCIpOwotKyZ7JHo/CVwmc3RtZzpcJnN0bX0JKCIl cjYiLCIlcjEwIiwiNiokU0laRV9UKCRzcCkiKTsKLSsKLSsJbGcJKCRkMCwiMCgkY3R4KSIpOwot KwlsZwkoJGQxLCI4KCRjdHgpIik7Ci0rCWxnCSgkZDIsIjE2KCRjdHgpIik7Ci0rCi0rCWxsZ2Zy CSgiJXIwIiwkZDApOwkJCSMgYmFzZSAyXjI2IC0+IGJhc2UgMl42NAotKwlzcmxnCSgkaDAsJGQw LDMyKTsKLSsJbGxnZnIJKCIlcjEiLCRkMSk7Ci0rCXNybGcJKCRoMSwkZDEsMzIpOwotKwlzcmxn CSgkaDIsJGQyLDMyKTsKLSsKLSsJc2xsZwkoIiVyMCIsIiVyMCIsMjYpOwotKwlhbGdyCSgkaDAs IiVyMCIpOwotKwlzbGxnCSgiJXIwIiwkaDEsNTIpOwotKwlzcmxnCSgkaDEsJGgxLDEyKTsKLSsJ c2xsZwkoIiVyMSIsIiVyMSIsMTQpOwotKwlhbGdyCSgkaDAsIiVyMCIpOwotKwlhbGNncgkoJGgx LCIlcjEiKTsKLSsJc2xsZwkoIiVyMCIsJGgyLDQwKTsKLSsJc3JsZwkoJGgyLCRoMiwyNCk7Ci0r CWxnaGkJKCIlcjEiLDApOwotKwlhbGdyCSgkaDEsIiVyMCIpOwotKwlhbGNncgkoJGgyLCIlcjEi KTsKLSsKLSsJbGxnZgkoIiVyMCIsIjI0KCRjdHgpIik7CQkjIGlzX2Jhc2UyXzI2Ci0rCWxjZ3IJ KCIlcjAiLCIlcjAiKTsKLSsKLSsJeGdyCSgkaDAsJGQwKTsJCQkjIGNob29zZSBiZXR3ZWVuIHJh ZGl4ZXMKLSsJeGdyCSgkaDEsJGQxKTsKLSsJeGdyCSgkaDIsJGQyKTsKLSsJbmdyCSgkaDAsIiVy MCIpOwotKwluZ3IJKCRoMSwiJXIwIik7Ci0rCW5ncgkoJGgyLCIlcjAiKTsKLSsJeGdyCSgkaDAs JGQwKTsKLSsJeGdyCSgkaDEsJGQxKTsKLSsJeGdyCSgkaDIsJGQyKTsKLSsKLSsJbGdoaQkoIiVy MCIsNSk7Ci0rCWxncgkoJGQwLCRoMCk7Ci0rCWxncgkoJGQxLCRoMSk7Ci0rCi0rCWFsZ3IJKCRo MCwiJXIwIik7CQkJIyBjb21wYXJlIHRvIG1vZHVsdXMKLSsJYWxjZ3IJKCRoMSwiJXIxIik7Ci0r CWFsY2dyCSgkaDIsIiVyMSIpOwotKwotKwlzcmxnCSgkaDIsJGgyLDIpOwkJCSMgZGlkIGl0IGJv cnJvdy9jYXJyeT8KLSsJc2xncgkoIiVyMSIsJGgyKTsJCQkJIyAwLSRoMj4+MgotKwlsZwkoJGQy LCIwKCRub25jZSkiKTsJCSMgbG9hZCBub25jZQotKwlsZwkoJGN0eCwiOCgkbm9uY2UpIik7Ci0r Ci0rCXhncgkoJGgwLCRkMCk7Ci0rCXhncgkoJGgxLCRkMSk7Ci0rCW5ncgkoJGgwLCIlcjEiKTsK LSsJbmdyCSgkaDEsIiVyMSIpOwotKwl4Z3IJKCRoMCwkZDApOwotKwlybGxnCSgkZDAsJGQyLDMy KTsJCQkjIGZsaXAgbm9uY2Ugd29yZHMKLSsJeGdyCSgkaDEsJGQxKTsKLSsJcmxsZwkoJGQxLCRj dHgsMzIpOwotKwotKwlhbGdyCSgkaDAsJGQwKTsJCQkjIGFjY3VtdWxhdGUgbm9uY2UKLSsJYWxj Z3IJKCRoMSwkZDEpOwotKwotKwlzdHJ2ZwkoJGgwLCIwKCRtYWMpIik7CQkjIHdyaXRlIGxpdHRs ZS1lbmRpYW4gcmVzdWx0Ci0rCXN0cnZnCSgkaDEsIjgoJG1hYykiKTsKLSsKLSsmeyR6PwlcJmxt ZzpcJmxtfQkoIiVyNiIsIiVyMTAiLCI2KiRTSVpFX1QoJHNwKSIpOwotKwlicgkoIiVyMTQiKTsK LStTSVpFCSgicG9seTEzMDVfZW1pdCIsIi4tcG9seTEzMDVfZW1pdCIpOwotIH0KLSAKLS0kY29k ZSA9fiBzL1xgKFteXGBdKilcYC9ldmFsICQxL2dlbTsKLS0kY29kZSA9fiBzL1xiKHNybGdccysp KCVyWzAtOV0rXHMqLClccyooWzAtOV0rKS8kMSQyJDIkMy9nbTsKLSsjIyMjIyMjIyMjIyMjIyMj Ci0rCi0rQUxJR04JKDE2KTsKLStMQUJFTAkoIi5MY29uc3QiKTsKLStMT05HCSgweDA0MDUwNjA3 LDB4MTQxNTE2MTcsMHgwYzBkMGUwZiwweDFjMWQxZTFmKTsJIyBtZXJnZSBvZGQKLStMT05HCSgw eDA3MDYwNTA0LDB4MDMwMjAxMDAsMHgxNzE2MTUxNCwweDEzMTIxMTEwKTsJIyBieXRlIHN3YXAg bWFza3MKLStMT05HCSgweDBmMGUwZDBjLDB4MGIwYTA5MDgsMHgxZjFlMWQxYywweDFiMWExOTE4 KTsKLStMT05HCSgweDAwMDAwMDAwLDB4MDkwODA3MDYsMHgwMDAwMDAwMCwweDE5MTgxNzE2KTsK LSsKLStMT05HCSgweDAwMDAwMDAwLDB4MDAwMDAwMDAsMHgwMDAwMDAwMCwweDBjMGQwZTBmKTsJ IyBtYWdpYyB0YWlsIG1hc2tzCi0rTE9ORwkoMHgwYzBkMGUwZiwweDAwMDAwMDAwLDB4MDAwMDAw MDAsMHgwMDAwMDAwMCk7Ci0rTE9ORwkoMHgwMDAwMDAwMCwweDAwMDAwMDAwLDB4MGMwZDBlMGYs MHgwMDAwMDAwMCk7Ci0rCi0rTE9ORwkoMHhmZmZmZmZmZiwweDAwMDAwMDAwLDB4ZmZmZmZmZmYs MHhmZmZmZmZmZik7Ci0rTE9ORwkoMHhmZmZmZmZmZiwweDAwMDAwMDAwLDB4ZmZmZmZmZmYsMHgw MDAwMDAwMCk7Ci0rTE9ORwkoMHgwMDAwMDAwMCwweDAwMDAwMDAwLDB4ZmZmZmZmZmYsMHgwMDAw MDAwMCk7Ci0rCi0rU1RSSU5HCSgiXCJQb2x5MTMwNSBmb3IgczM5MHgsIENSWVBUT0dBTVMgYnkg PGFwcHJvXEBvcGVuc3NsLm9yZz5cIiIpOwotIAotLXByaW50ICRjb2RlOwotLWNsb3NlIFNURE9V VCBvciBkaWUgImVycm9yIGNsb3NpbmcgU1RET1VUOiAkISI7Ci0rUEVSTEFTTV9FTkQoKTsKLWRp ZmYgLXVwIG9wZW5zc2wtMS4xLjFlL2NyeXB0by9wb2x5MTMwNS9idWlsZC5pbmZvLnMzOTB4LXVw ZGF0ZSBvcGVuc3NsLTEuMS4xZS9jcnlwdG8vcG9seTEzMDUvYnVpbGQuaW5mbwotLS0tIG9wZW5z c2wtMS4xLjFlL2NyeXB0by9wb2x5MTMwNS9idWlsZC5pbmZvLnMzOTB4LXVwZGF0ZQkyMDIwLTAz LTE3IDE1OjMxOjE3LjAwMDAwMDAwMCArMDEwMAotKysrIG9wZW5zc2wtMS4xLjFlL2NyeXB0by9w b2x5MTMwNS9idWlsZC5pbmZvCTIwMjAtMDMtMTkgMTY6MjA6MjIuMDQyMjI3MzQyICswMTAwCi1A QCAtMTgsNiArMTgsNyBAQCBJTkNMVURFW3BvbHkxMzA1LWFybXY4Lm9dPS4uCi0gR0VORVJBVEVb cG9seTEzMDUtbWlwcy5TXT1hc20vcG9seTEzMDUtbWlwcy5wbCAkKFBFUkxBU01fU0NIRU1FKQot IElOQ0xVREVbcG9seTEzMDUtbWlwcy5vXT0uLgotIEdFTkVSQVRFW3BvbHkxMzA1LXMzOTB4LlNd PWFzbS9wb2x5MTMwNS1zMzkweC5wbCAkKFBFUkxBU01fU0NIRU1FKQotK0lOQ0xVREVbcG9seTEz MDUtczM5MHgub109Li4KLSAKLSBCRUdJTlJBV1tNYWtlZmlsZSh1bml4KV0KLSB7LSAkYnVpbGRk aXIgLX0vcG9seTEzMDUtJS5TOgl7LSAkc291cmNlZGlyIC19L2FzbS9wb2x5MTMwNS0lLnBsCgpk aWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1zZWNsZXZlbC5wYXRjaCBiL29wZW5zc2wtMS4xLjEt c2VjbGV2ZWwucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM2NzUxYTUuLjAw MDAwMDAKLS0tIGEvb3BlbnNzbC0xLjEuMS1zZWNsZXZlbC5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDE2MCArMCwwIEBACi1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy9jcnlwdG8veDUwOS94NTA5 X3ZmeS5jLnNlY2xldmVsIG9wZW5zc2wtMS4xLjFnL2NyeXB0by94NTA5L3g1MDlfdmZ5LmMKLS0t LSBvcGVuc3NsLTEuMS4xZy9jcnlwdG8veDUwOS94NTA5X3ZmeS5jLnNlY2xldmVsCTIwMjAtMDQt MjEgMTQ6MjI6MzkuMDAwMDAwMDAwICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvY3J5cHRvL3g1 MDkveDUwOV92ZnkuYwkyMDIwLTA2LTA1IDE3OjE2OjU0LjgzNTUzNjgyMyArMDIwMAotQEAgLTMy MjUsNiArMzIyNSw3IEBAIHN0YXRpYyBpbnQgYnVpbGRfY2hhaW4oWDUwOV9TVE9SRV9DVFggKmMK LSB9Ci0gCi0gc3RhdGljIGNvbnN0IGludCBtaW5iaXRzX3RhYmxlW10gPSB7IDgwLCAxMTIsIDEy OCwgMTkyLCAyNTYgfTsKLStzdGF0aWMgY29uc3QgaW50IG1pbmJpdHNfZGlnZXN0X3RhYmxlW10g PSB7IDgwLCA4MCwgMTI4LCAxOTIsIDI1NiB9OwotIHN0YXRpYyBjb25zdCBpbnQgTlVNX0FVVEhf TEVWRUxTID0gT1NTTF9ORUxFTShtaW5iaXRzX3RhYmxlKTsKLSAKLSAvKgotQEAgLTMyNzYsNiAr MzI3NywxMSBAQCBzdGF0aWMgaW50IGNoZWNrX3NpZ19sZXZlbChYNTA5X1NUT1JFX0NUCi0gCi0g ICAgIGlmICghWDUwOV9nZXRfc2lnbmF0dXJlX2luZm8oY2VydCwgTlVMTCwgTlVMTCwgJnNlY2Jp dHMsIE5VTEwpKQotICAgICAgICAgcmV0dXJuIDA7Ci0tCi0tICAgIHJldHVybiBzZWNiaXRzID49 IG1pbmJpdHNfdGFibGVbbGV2ZWwgLSAxXTsKLSsgICAgLyoKLSsgICAgICogQWxsb3cgU0hBMSBp biBTRUNMRVZFTCAyIGluIG5vbi1GSVBTIG1vZGUgb3Igd2hlbiB0aGUgbWFnaWMKLSsgICAgICog ZGlzYWJsZSBTSEExIGZsYWcgaXMgbm90IHNldC4KLSsgICAgICovCi0rICAgIGlmICgoY3R4LT5w YXJhbS0+ZmxhZ3MgJiAweDQwMDAwMDAwKSB8fCBGSVBTX21vZGUoKSkKLSsgICAgICAgIHJldHVy biBzZWNiaXRzID49IG1pbmJpdHNfdGFibGVbbGV2ZWwgLSAxXTsKLSsgICAgcmV0dXJuIHNlY2Jp dHMgPj0gbWluYml0c19kaWdlc3RfdGFibGVbbGV2ZWwgLSAxXTsKLSB9Ci1kaWZmIC11cCBvcGVu c3NsLTEuMS4xZy9kb2MvbWFuMy9TU0xfQ1RYX3NldF9zZWN1cml0eV9sZXZlbC5wb2Quc2VjbGV2 ZWwgb3BlbnNzbC0xLjEuMWcvZG9jL21hbjMvU1NMX0NUWF9zZXRfc2VjdXJpdHlfbGV2ZWwucG9k Ci0tLS0gb3BlbnNzbC0xLjEuMWcvZG9jL21hbjMvU1NMX0NUWF9zZXRfc2VjdXJpdHlfbGV2ZWwu cG9kLnNlY2xldmVsCTIwMjAtMDQtMjEgMTQ6MjI6MzkuMDAwMDAwMDAwICswMjAwCi0rKysgb3Bl bnNzbC0xLjEuMWcvZG9jL21hbjMvU1NMX0NUWF9zZXRfc2VjdXJpdHlfbGV2ZWwucG9kCTIwMjAt MDYtMDQgMTU6NDg6MDEuNjA4MTc4ODMzICswMjAwCi1AQCAtODEsOCArODEsMTAgQEAgdXNpbmcg TUQ1IGZvciB0aGUgTUFDIGlzIGFsc28gcHJvaGliaXRlZAotIAotID1pdGVtIEI8TGV2ZWwgMj4K LSAKLS1TZWN1cml0eSBsZXZlbCBzZXQgdG8gMTEyIGJpdHMgb2Ygc2VjdXJpdHkuIEFzIGEgcmVz dWx0IFJTQSwgRFNBIGFuZCBESCBrZXlzCi0tc2hvcnRlciB0aGFuIDIwNDggYml0cyBhbmQgRUND IGtleXMgc2hvcnRlciB0aGFuIDIyNCBiaXRzIGFyZSBwcm9oaWJpdGVkLgotK1NlY3VyaXR5IGxl dmVsIHNldCB0byAxMTIgYml0cyBvZiBzZWN1cml0eSB3aXRoIHRoZSBleGNlcHRpb24gb2YgU0hB MSBhbGxvd2VkCi0rZm9yIHNpZ25hdHVyZXMuCi0rQXMgYSByZXN1bHQgUlNBLCBEU0EgYW5kIERI IGtleXMgc2hvcnRlciB0aGFuIDIwNDggYml0cyBhbmQgRUNDIGtleXMKLStzaG9ydGVyIHRoYW4g MjI0IGJpdHMgYXJlIHByb2hpYml0ZWQuCi0gSW4gYWRkaXRpb24gdG8gdGhlIGxldmVsIDEgZXhj bHVzaW9ucyBhbnkgY2lwaGVyIHN1aXRlIHVzaW5nIFJDNCBpcyBhbHNvCi0gcHJvaGliaXRlZC4g U1NMIHZlcnNpb24gMyBpcyBhbHNvIG5vdCBhbGxvd2VkLiBDb21wcmVzc2lvbiBpcyBkaXNhYmxl ZC4KLSAKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFnL3NzbC9zc2xfY2VydC5jLnNlY2xldmVsIG9w ZW5zc2wtMS4xLjFnL3NzbC9zc2xfY2VydC5jCi0tLS0gb3BlbnNzbC0xLjEuMWcvc3NsL3NzbF9j ZXJ0LmMuc2VjbGV2ZWwJMjAyMC0wNC0yMSAxNDoyMjozOS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBv cGVuc3NsLTEuMS4xZy9zc2wvc3NsX2NlcnQuYwkyMDIwLTA2LTA1IDE3OjEwOjExLjg0MjE5ODQw MSArMDIwMAotQEAgLTI3LDYgKzI3LDcgQEAKLSBzdGF0aWMgaW50IHNzbF9zZWN1cml0eV9kZWZh dWx0X2NhbGxiYWNrKGNvbnN0IFNTTCAqcywgY29uc3QgU1NMX0NUWCAqY3R4LAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IG9wLCBpbnQgYml0cywgaW50IG5p ZCwgdm9pZCAqb3RoZXIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB2b2lkICpleCk7Ci0rc3RhdGljIHVuc2lnbmVkIGxvbmcgc2hhMV9kaXNhYmxlKGNvbnN0IFNT TCAqcywgY29uc3QgU1NMX0NUWCAqY3R4KTsKLSAKLSBzdGF0aWMgQ1JZUFRPX09OQ0Ugc3NsX3g1 MDlfc3RvcmVfY3R4X29uY2UgPSBDUllQVE9fT05DRV9TVEFUSUNfSU5JVDsKLSBzdGF0aWMgdm9s YXRpbGUgaW50IHNzbF94NTA5X3N0b3JlX2N0eF9pZHggPSAtMTsKLUBAIC0zOTYsNyArMzk3LDcg QEAgaW50IHNzbF92ZXJpZnlfY2VydF9jaGFpbihTU0wgKnMsIFNUQUNLXwotICAgICBYNTA5X1ZF UklGWV9QQVJBTV9zZXRfYXV0aF9sZXZlbChwYXJhbSwgU1NMX2dldF9zZWN1cml0eV9sZXZlbChz KSk7Ci0gCi0gICAgIC8qIFNldCBzdWl0ZSBCIGZsYWdzIGlmIG5lZWRlZCAqLwotLSAgICBYNTA5 X1NUT1JFX0NUWF9zZXRfZmxhZ3MoY3R4LCB0bHMxX3N1aXRlYihzKSk7Ci0rICAgIFg1MDlfU1RP UkVfQ1RYX3NldF9mbGFncyhjdHgsIHRsczFfc3VpdGViKHMpIHwgc2hhMV9kaXNhYmxlKHMsIE5V TEwpKTsKLSAgICAgaWYgKCFYNTA5X1NUT1JFX0NUWF9zZXRfZXhfZGF0YQotICAgICAgICAgKGN0 eCwgU1NMX2dldF9leF9kYXRhX1g1MDlfU1RPUkVfQ1RYX2lkeCgpLCBzKSkgewotICAgICAgICAg Z290byBlbmQ7Ci1AQCAtOTUzLDEyICs5NTQsMzMgQEAgc3RhdGljIGludCBzc2xfc2VjdXJpdHlf ZGVmYXVsdF9jYWxsYmFjawotICAgICAgICAgICAgIHJldHVybiAwOwotICAgICAgICAgYnJlYWs7 Ci0gICAgIGRlZmF1bHQ6Ci0rICAgICAgICAvKiBhbGxvdyBTSEExIGluIFNFQ0xFVkVMIDIgaW4g bm9uIEZJUFMgbW9kZSAqLwotKyAgICAgICAgaWYgKG5pZCA9PSBOSURfc2hhMSAmJiBtaW5iaXRz ID09IDExMiAmJiAhc2hhMV9kaXNhYmxlKHMsIGN0eCkpCi0rICAgICAgICAgICAgYnJlYWs7Ci0g ICAgICAgICBpZiAoYml0cyA8IG1pbmJpdHMpCi0gICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAg IH0KLSAgICAgcmV0dXJuIDE7Ci0gfQotIAotK3N0YXRpYyB1bnNpZ25lZCBsb25nIHNoYTFfZGlz YWJsZShjb25zdCBTU0wgKnMsIGNvbnN0IFNTTF9DVFggKmN0eCkKLSt7Ci0rICAgIHVuc2lnbmVk IGxvbmcgcmV0ID0gMHg0MDAwMDAwMDsgLyogYSBtYWdpY2FsIGludGVybmFsIHZhbHVlIHVzZWQg YnkgWDUwOV9WRVJJRllfUEFSQU0gKi8KLSsgICAgY29uc3QgQ0VSVCAqYzsKLSsKLSsgICAgaWYg KEZJUFNfbW9kZSgpKQotKyAgICAgICAgcmV0dXJuIHJldDsKLSsKLSsgICAgaWYgKGN0eCAhPSBO VUxMKSB7Ci0rICAgICAgIGMgPSBjdHgtPmNlcnQ7Ci0rICAgIH0gZWxzZSB7Ci0rICAgICAgIGMg PSBzLT5jZXJ0OwotKyAgICB9Ci0rICAgIGlmICh0bHMxX2NlcnRfc2lnYWxnc19oYXZlX3NoYTEo YykpCi0rICAgICAgICByZXR1cm4gMDsKLSsgICAgcmV0dXJuIHJldDsKLSt9Ci0rCi0gaW50IHNz bF9zZWN1cml0eShjb25zdCBTU0wgKnMsIGludCBvcCwgaW50IGJpdHMsIGludCBuaWQsIHZvaWQg Km90aGVyKQotIHsKLSAgICAgcmV0dXJuIHMtPmNlcnQtPnNlY19jYihzLCBOVUxMLCBvcCwgYml0 cywgbmlkLCBvdGhlciwgcy0+Y2VydC0+c2VjX2V4KTsKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFn L3NzbC9zc2xfbG9jYWwuaC5zZWNsZXZlbCBvcGVuc3NsLTEuMS4xZy9zc2wvc3NsX2xvY2FsLmgK LS0tLSBvcGVuc3NsLTEuMS4xZy9zc2wvc3NsX2xvY2FsLmguc2VjbGV2ZWwJMjAyMC0wNi0wNCAx NTo0ODowMS42MDIxNzg3ODMgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xZy9zc2wvc3NsX2xvY2Fs LmgJMjAyMC0wNi0wNSAxNzowMjoyMi42NjYzMTM0MTAgKzAyMDAKLUBAIC0yNTc2LDYgKzI1NzYs NyBAQCBfX293dXIgaW50IHRsczFfc2F2ZV9zaWdhbGdzKFNTTCAqcywgUEFDCi0gX19vd3VyIGlu dCB0bHMxX3Byb2Nlc3Nfc2lnYWxncyhTU0wgKnMpOwotIF9fb3d1ciBpbnQgdGxzMV9zZXRfcGVl cl9sZWdhY3lfc2lnYWxnKFNTTCAqcywgY29uc3QgRVZQX1BLRVkgKnBrZXkpOwotIF9fb3d1ciBp bnQgdGxzMV9sb29rdXBfbWQoY29uc3QgU0lHQUxHX0xPT0tVUCAqbHUsIGNvbnN0IEVWUF9NRCAq KnBtZCk7Ci0raW50IHRsczFfY2VydF9zaWdhbGdzX2hhdmVfc2hhMShjb25zdCBDRVJUICpjKTsK LSBfX293dXIgc2l6ZV90IHRsczEyX2dldF9wc2lnYWxncyhTU0wgKnMsIGludCBzZW50LCBjb25z dCB1aW50MTZfdCAqKnBzaWdzKTsKLSAjICBpZm5kZWYgT1BFTlNTTF9OT19FQwotIF9fb3d1ciBp bnQgdGxzX2NoZWNrX3NpZ2FsZ19jdXJ2ZShjb25zdCBTU0wgKnMsIGludCBjdXJ2ZSk7Ci1kaWZm IC11cCBvcGVuc3NsLTEuMS4xZy9zc2wvdDFfbGliLmMuc2VjbGV2ZWwgb3BlbnNzbC0xLjEuMWcv c3NsL3QxX2xpYi5jCi0tLS0gb3BlbnNzbC0xLjEuMWcvc3NsL3QxX2xpYi5jLnNlY2xldmVsCTIw MjAtMDYtMDQgMTU6NDg6MDEuNjU0MTc5MjIxICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvc3Ns L3QxX2xpYi5jCTIwMjAtMDYtMDUgMTc6MDI6NDAuMjY4NDU5MTU3ICswMjAwCi1AQCAtMjE0NSw2 ICsyMTQ1LDM2IEBAIGludCB0bHMxX3NldF9zaWdhbGdzKENFUlQgKmMsIGNvbnN0IGludAotICAg ICByZXR1cm4gMDsKLSB9Ci0gCi0rc3RhdGljIGludCB0bHMxX3NpZ2FsZ3NfaGF2ZV9zaGExKGNv bnN0IHVpbnQxNl90ICpzaWdhbGdzLCBzaXplX3Qgc2lnYWxnc2xlbikKLSt7Ci0rICAgIHNpemVf dCBpOwotKwotKyAgICBmb3IgKGkgPSAwOyBpIDwgc2lnYWxnc2xlbjsgaSsrLCBzaWdhbGdzKysp IHsKLSsgICAgICAgIGNvbnN0IFNJR0FMR19MT09LVVAgKmx1ID0gdGxzMV9sb29rdXBfc2lnYWxn KCpzaWdhbGdzKTsKLSsKLSsgICAgICAgIGlmIChsdSA9PSBOVUxMKQotKyAgICAgICAgICAgIGNv bnRpbnVlOwotKyAgICAgICAgaWYgKGx1LT5oYXNoID09IE5JRF9zaGExKQotKyAgICAgICAgICAg IHJldHVybiAxOwotKyAgICB9Ci0rICAgIHJldHVybiAwOwotK30KLSsKLSsKLStpbnQgdGxzMV9j ZXJ0X3NpZ2FsZ3NfaGF2ZV9zaGExKGNvbnN0IENFUlQgKmMpCi0rewotKyAgICBpZiAoYy0+Y2xp ZW50X3NpZ2FsZ3MgIT0gTlVMTCkgewotKyAgICAgICAgaWYgKHRsczFfc2lnYWxnc19oYXZlX3No YTEoYy0+Y2xpZW50X3NpZ2FsZ3MsIGMtPmNsaWVudF9zaWdhbGdzbGVuKSkKLSsgICAgICAgICAg ICByZXR1cm4gMTsKLSsgICAgfQotKyAgICBpZiAoYy0+Y29uZl9zaWdhbGdzICE9IE5VTEwpIHsK LSsgICAgICAgIGlmICh0bHMxX3NpZ2FsZ3NfaGF2ZV9zaGExKGMtPmNvbmZfc2lnYWxncywgYy0+ Y29uZl9zaWdhbGdzbGVuKSkKLSsgICAgICAgICAgICByZXR1cm4gMTsKLSsgICAgICAgIHJldHVy biAwOwotKyAgICB9Ci0rICAgIHJldHVybiAxOwotK30KLSsKLSBzdGF0aWMgaW50IHRsczFfY2hl Y2tfc2lnX2FsZyhTU0wgKnMsIFg1MDkgKngsIGludCBkZWZhdWx0X25pZCkKLSB7Ci0gICAgIGlu dCBzaWdfbmlkLCB1c2VfcGNfc2lnYWxncyA9IDA7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xZy90 ZXN0L3JlY2lwZXMvMjUtdGVzdF92ZXJpZnkudC5zZWNsZXZlbCBvcGVuc3NsLTEuMS4xZy90ZXN0 L3JlY2lwZXMvMjUtdGVzdF92ZXJpZnkudAotLS0tIG9wZW5zc2wtMS4xLjFnL3Rlc3QvcmVjaXBl cy8yNS10ZXN0X3ZlcmlmeS50LnNlY2xldmVsCTIwMjAtMDQtMjEgMTQ6MjI6MzkuMDAwMDAwMDAw ICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMWcvdGVzdC9yZWNpcGVzLzI1LXRlc3RfdmVyaWZ5LnQJ MjAyMC0wNi0wNCAxNTo0ODowMS42MDgxNzg4MzMgKzAyMDAKLUBAIC0zNDYsOCArMzQ2LDggQEAg b2sodmVyaWZ5KCJlZS1wc3Mtc2hhMS1jZXJ0IiwgInNzbHNlcnZlcgotIG9rKHZlcmlmeSgiZWUt cHNzLXNoYTI1Ni1jZXJ0IiwgInNzbHNlcnZlciIsIFsicm9vdC1jZXJ0Il0sIFsiY2EtY2VydCJd LCApLAotICAgICAiQ0Egd2l0aCBQU1Mgc2lnbmF0dXJlIHVzaW5nIFNIQTI1NiIpOwotIAotLW9r KCF2ZXJpZnkoImVlLXBzcy1zaGExLWNlcnQiLCAic3Nsc2VydmVyIiwgWyJyb290LWNlcnQiXSwg WyJjYS1jZXJ0Il0sICItYXV0aF9sZXZlbCIsICIyIiksCi0tICAgICJSZWplY3QgUFNTIHNpZ25h dHVyZSB1c2luZyBTSEExIGFuZCBhdXRoIGxldmVsIDIiKTsKLStvayghdmVyaWZ5KCJlZS1wc3Mt c2hhMS1jZXJ0IiwgInNzbHNlcnZlciIsIFsicm9vdC1jZXJ0Il0sIFsiY2EtY2VydCJdLCAiLWF1 dGhfbGV2ZWwiLCAiMyIpLAotKyAgICAiUmVqZWN0IFBTUyBzaWduYXR1cmUgdXNpbmcgU0hBMSBh bmQgYXV0aCBsZXZlbCAzIik7Ci0gCi0gb2sodmVyaWZ5KCJlZS1wc3Mtc2hhMjU2LWNlcnQiLCAi c3Nsc2VydmVyIiwgWyJyb290LWNlcnQiXSwgWyJjYS1jZXJ0Il0sICItYXV0aF9sZXZlbCIsICIy IiksCi0gICAgICJQU1Mgc2lnbmF0dXJlIHVzaW5nIFNIQTI1NiBhbmQgYXV0aCBsZXZlbCAyIik7 CgpkaWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1zc2gta2RmLnBhdGNoIGIvb3BlbnNzbC0xLjEu MS1zc2gta2RmLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYmY3MWM0Li4w MDAwMDAwCi0tLSBhL29wZW5zc2wtMS4xLjEtc3NoLWtkZi5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDU2MTIgKzAsMCBAQAotY29tbWl0IDFlNjYyYTQzZjA0MjBjZmRjNDBkMDFjZDcwYzI3ZmEx YzIyMGE1N2UKLUF1dGhvcjogU2ltbyBTb3JjZSA8c2ltb0ByZWRoYXQuY29tPgotRGF0ZTogICBX ZWQgU2VwIDE5IDE2OjIzOjQ1IDIwMTggLTA0MDAKLQotICAgIEltcGxlbWVudCBTU0ggS0RGCi0g ICAgCi0gICAgU1NIJ3MgS0RGIGlzIGRlZmluZWQgaW4gUkZDIDQyNTMgaW4gU2VjdGlvbiA3LjIK LSAgICAKLSAgICBTaWduZWQtb2ZmLWJ5OiBTaW1vIFNvcmNlIDxzaW1vQHJlZGhhdC5jb20+Ci0g ICAgCi0gICAgUmV2aWV3ZWQtYnk6IFBhdWwgRGFsZSA8cGF1bC5kYWxlQG9yYWNsZS5jb20+Ci0g ICAgUmV2aWV3ZWQtYnk6IE1hdHQgQ2Fzd2VsbCA8bWF0dEBvcGVuc3NsLm9yZz4KLSAgICAoTWVy Z2VkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL29wZW5zc2wvb3BlbnNzbC9wdWxsLzcyOTApCi0K LWRpZmYgLS1naXQgYS9jcnlwdG8vZXJyL29wZW5zc2wudHh0IGIvY3J5cHRvL2Vyci9vcGVuc3Ns LnR4dAotaW5kZXggYWU2N2RhYzdmNi4uZTdlZDJmOGQ2MyAxMDA2NDQKLS0tLSBhL2NyeXB0by9l cnIvb3BlbnNzbC50eHQKLSsrKyBiL2NyeXB0by9lcnIvb3BlbnNzbC50eHQKLUBAIC04MjgsNiAr ODI4LDEwIEBAIEtERl9GX0tERl9TQ1JZUFRfQ1RSTF9VSU5UMzI6MTIxOmtkZl9zY3J5cHRfY3Ry bF91aW50MzIKLSBLREZfRl9LREZfU0NSWVBUX0NUUkxfVUlOVDY0OjEyMjprZGZfc2NyeXB0X2N0 cmxfdWludDY0Ci0gS0RGX0ZfS0RGX1NDUllQVF9ERVJJVkU6MTIzOmtkZl9zY3J5cHRfZGVyaXZl Ci0gS0RGX0ZfS0RGX1NDUllQVF9ORVc6MTI0OmtkZl9zY3J5cHRfbmV3Ci0rS0RGX0ZfS0RGX1NT SEtERl9DVFJMOjEzMDprZGZfc3Noa2RmX2N0cmwKLStLREZfRl9LREZfU1NIS0RGX0NUUkxfU1RS OjEzMTprZGZfc3Noa2RmX2N0cmxfc3RyCi0rS0RGX0ZfS0RGX1NTSEtERl9ERVJJVkU6MTMyOmtk Zl9zc2hrZGZfZGVyaXZlCi0rS0RGX0ZfS0RGX1NTSEtERl9ORVc6MTMzOmtkZl9zc2hrZGZfbmV3 Ci0gS0RGX0ZfS0RGX1RMUzFfUFJGX0NUUkxfU1RSOjEyNTprZGZfdGxzMV9wcmZfY3RybF9zdHIK LSBLREZfRl9LREZfVExTMV9QUkZfREVSSVZFOjEyNjprZGZfdGxzMV9wcmZfZGVyaXZlCi0gS0RG X0ZfS0RGX1RMUzFfUFJGX05FVzoxMjc6a2RmX3RsczFfcHJmX25ldwotQEAgLTIzMjAsNiArMjMy NCw5IEBAIEtERl9SX01JU1NJTkdfUEFTUzoxMTA6bWlzc2luZyBwYXNzCi0gS0RGX1JfTUlTU0lO R19TQUxUOjExMTptaXNzaW5nIHNhbHQKLSBLREZfUl9NSVNTSU5HX1NFQ1JFVDoxMDc6bWlzc2lu ZyBzZWNyZXQKLSBLREZfUl9NSVNTSU5HX1NFRUQ6MTA2Om1pc3Npbmcgc2VlZAotK0tERl9SX01J U1NJTkdfU0VTU0lPTl9JRDoxMTM6bWlzc2luZyBzZXNzaW9uIGlkCi0rS0RGX1JfTUlTU0lOR19U WVBFOjExNDptaXNzaW5nIHR5cGUKLStLREZfUl9NSVNTSU5HX1hDR0hBU0g6MTE1Om1pc3Npbmcg eGNnaGFzaAotIEtERl9SX1VOS05PV05fUEFSQU1FVEVSX1RZUEU6MTAzOnVua25vd24gcGFyYW1l dGVyIHR5cGUKLSBLREZfUl9WQUxVRV9FUlJPUjoxMDg6dmFsdWUgZXJyb3IKLSBLREZfUl9WQUxV RV9NSVNTSU5HOjEwMjp2YWx1ZSBtaXNzaW5nCi1kaWZmIC0tZ2l0IGEvY3J5cHRvL2V2cC9rZGZf bGliLmMgYi9jcnlwdG8vZXZwL2tkZl9saWIuYwotaW5kZXggMDVmNWNlYzNhOS4uODExZmU3Mjdm NiAxMDA2NDQKLS0tLSBhL2NyeXB0by9ldnAva2RmX2xpYi5jCi0rKysgYi9jcnlwdG8vZXZwL2tk Zl9saWIuYwotQEAgLTI5LDcgKzI5LDggQEAgc3RhdGljIGNvbnN0IEVWUF9LREZfTUVUSE9EICpz dGFuZGFyZF9tZXRob2RzW10gPSB7Ci0gICAgICZzY3J5cHRfa2RmX21ldGgsCi0gI2VuZGlmCi0g ICAgICZ0bHMxX3ByZl9rZGZfbWV0aCwKLS0gICAgJmhrZGZfa2RmX21ldGgKLSsgICAgJmhrZGZf a2RmX21ldGgsCi0rICAgICZzc2hrZGZfa2RmX21ldGgsCi0gfTsKLSAKLSBERUNMQVJFX09CSl9C U0VBUkNIX0NNUF9GTihjb25zdCBFVlBfS0RGX01FVEhPRCAqLCBjb25zdCBFVlBfS0RGX01FVEhP RCAqLAotZGlmZiAtLWdpdCBhL2luY2x1ZGUvY3J5cHRvL2V2cC5oIGIvaW5jbHVkZS9jcnlwdG8v ZXZwLmgKLWluZGV4IGExMDllNTYxYjMuLjhjMzEzYzY1YWMgMTAwNjQ0Ci0tLS0gYS9pbmNsdWRl L2NyeXB0by9ldnAuaAotKysrIGIvaW5jbHVkZS9jcnlwdG8vZXZwLmgKLUBAIC0xMjksNiArMTI5 LDcgQEAgZXh0ZXJuIGNvbnN0IEVWUF9LREZfTUVUSE9EIHBia2RmMl9rZGZfbWV0aDsKLSBleHRl cm4gY29uc3QgRVZQX0tERl9NRVRIT0Qgc2NyeXB0X2tkZl9tZXRoOwotIGV4dGVybiBjb25zdCBF VlBfS0RGX01FVEhPRCB0bHMxX3ByZl9rZGZfbWV0aDsKLSBleHRlcm4gY29uc3QgRVZQX0tERl9N RVRIT0QgaGtkZl9rZGZfbWV0aDsKLStleHRlcm4gY29uc3QgRVZQX0tERl9NRVRIT0Qgc3Noa2Rm X2tkZl9tZXRoOwotIAotIHN0cnVjdCBldnBfbWRfc3QgewotICAgICBpbnQgdHlwZTsKLWRpZmYg LS1naXQgYS9jcnlwdG8va2RmL2J1aWxkLmluZm8gYi9jcnlwdG8va2RmL2J1aWxkLmluZm8KLWlu ZGV4IGRjZTk2MGU5ZTEuLmY0ODNjNzc5ZGQgMTAwNjQ0Ci0tLS0gYS9jcnlwdG8va2RmL2J1aWxk LmluZm8KLSsrKyBiL2NyeXB0by9rZGYvYnVpbGQuaW5mbwotQEAgLTEsMyArMSwzIEBACi0gTElC Uz0uLi8uLi9saWJjcnlwdG8KLSBTT1VSQ0VbLi4vLi4vbGliY3J5cHRvXT1cCi0tICAgICAgICB0 bHMxX3ByZi5jIGtkZl9lcnIuYyBrZGZfdXRpbC5jIGhrZGYuYyBzY3J5cHQuYyBwYmtkZjIuYwot KyAgICAgICAgdGxzMV9wcmYuYyBrZGZfZXJyLmMga2RmX3V0aWwuYyBoa2RmLmMgc2NyeXB0LmMg cGJrZGYyLmMgc3Noa2RmLmMKLWRpZmYgLS1naXQgYS9jcnlwdG8va2RmL2tkZl9lcnIuYyBiL2Ny eXB0by9rZGYva2RmX2Vyci5jCi1pbmRleCBiMmEwYzBlYmZjLi5iNDY3ODc3NWRkIDEwMDY0NAot LS0tIGEvY3J5cHRvL2tkZi9rZGZfZXJyLmMKLSsrKyBiL2NyeXB0by9rZGYva2RmX2Vyci5jCi1A QCAtMzEsNiArMzEsMTEgQEAgc3RhdGljIGNvbnN0IEVSUl9TVFJJTkdfREFUQSBLREZfc3RyX2Z1 bmN0c1tdID0gewotICAgICAgImtkZl9zY3J5cHRfY3RybF91aW50NjQifSwKLSAgICAge0VSUl9Q QUNLKEVSUl9MSUJfS0RGLCBLREZfRl9LREZfU0NSWVBUX0RFUklWRSwgMCksICJrZGZfc2NyeXB0 X2Rlcml2ZSJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIEtERl9GX0tERl9TQ1JZUFRf TkVXLCAwKSwgImtkZl9zY3J5cHRfbmV3In0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwg S0RGX0ZfS0RGX1NTSEtERl9DVFJMLCAwKSwgImtkZl9zc2hrZGZfY3RybCJ9LAotKyAgICB7RVJS X1BBQ0soRVJSX0xJQl9LREYsIEtERl9GX0tERl9TU0hLREZfQ1RSTF9TVFIsIDApLAotKyAgICAg ImtkZl9zc2hrZGZfY3RybF9zdHIifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCBLREZf Rl9LREZfU1NIS0RGX0RFUklWRSwgMCksICJrZGZfc3Noa2RmX2Rlcml2ZSJ9LAotKyAgICB7RVJS X1BBQ0soRVJSX0xJQl9LREYsIEtERl9GX0tERl9TU0hLREZfTkVXLCAwKSwgImtkZl9zc2hrZGZf bmV3In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgS0RGX0ZfS0RGX1RMUzFfUFJGX0NU UkxfU1RSLCAwKSwKLSAgICAgICJrZGZfdGxzMV9wcmZfY3RybF9zdHIifSwKLSAgICAge0VSUl9Q QUNLKEVSUl9MSUJfS0RGLCBLREZfRl9LREZfVExTMV9QUkZfREVSSVZFLCAwKSwKLUBAIC03MCw2 ICs3NSw5IEBAIHN0YXRpYyBjb25zdCBFUlJfU1RSSU5HX0RBVEEgS0RGX3N0cl9yZWFzb25zW10g PSB7Ci0gICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwgMCwgS0RGX1JfTUlTU0lOR19TQUxUKSwg Im1pc3Npbmcgc2FsdCJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYsIDAsIEtERl9SX01J U1NJTkdfU0VDUkVUKSwgIm1pc3Npbmcgc2VjcmV0In0sCi0gICAgIHtFUlJfUEFDSyhFUlJfTElC X0tERiwgMCwgS0RGX1JfTUlTU0lOR19TRUVEKSwgIm1pc3Npbmcgc2VlZCJ9LAotKyAgICB7RVJS X1BBQ0soRVJSX0xJQl9LREYsIDAsIEtERl9SX01JU1NJTkdfU0VTU0lPTl9JRCksICJtaXNzaW5n IHNlc3Npb24gaWQifSwKLSsgICAge0VSUl9QQUNLKEVSUl9MSUJfS0RGLCAwLCBLREZfUl9NSVNT SU5HX1RZUEUpLCAibWlzc2luZyB0eXBlIn0sCi0rICAgIHtFUlJfUEFDSyhFUlJfTElCX0tERiwg MCwgS0RGX1JfTUlTU0lOR19YQ0dIQVNIKSwgIm1pc3NpbmcgeGNnaGFzaCJ9LAotICAgICB7RVJS X1BBQ0soRVJSX0xJQl9LREYsIDAsIEtERl9SX1VOS05PV05fUEFSQU1FVEVSX1RZUEUpLAotICAg ICAidW5rbm93biBwYXJhbWV0ZXIgdHlwZSJ9LAotICAgICB7RVJSX1BBQ0soRVJSX0xJQl9LREYs IDAsIEtERl9SX1ZBTFVFX0VSUk9SKSwgInZhbHVlIGVycm9yIn0sCi1kaWZmIC0tZ2l0IGEvY3J5 cHRvL2tkZi9zc2hrZGYuYyBiL2NyeXB0by9rZGYvc3Noa2RmLmMKLW5ldyBmaWxlIG1vZGUgMTAw NjQ0Ci1pbmRleCAwMDAwMDAwMDAwLi4yNGYzN2NiZWQ0Ci0tLS0gL2Rldi9udWxsCi0rKysgYi9j cnlwdG8va2RmL3NzaGtkZi5jCi1AQCAtMCwwICsxLDI4OCBAQAotKy8qCi0rICogQ29weXJpZ2h0 IDIwMTgtMjAxOCBUaGUgT3BlblNTTCBQcm9qZWN0IEF1dGhvcnMuIEFsbCBSaWdodHMgUmVzZXJ2 ZWQuCi0rICoKLSsgKiBMaWNlbnNlZCB1bmRlciB0aGUgT3BlblNTTCBsaWNlbnNlICh0aGUgIkxp Y2Vuc2UiKS4gIFlvdSBtYXkgbm90IHVzZQotKyAqIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxp YW5jZSB3aXRoIHRoZSBMaWNlbnNlLiAgWW91IGNhbiBvYnRhaW4gYSBjb3B5Ci0rICogaW4gdGhl IGZpbGUgTElDRU5TRSBpbiB0aGUgc291cmNlIGRpc3RyaWJ1dGlvbiBvciBhdAotKyAqIGh0dHBz Oi8vd3d3Lm9wZW5zc2wub3JnL3NvdXJjZS9saWNlbnNlLmh0bWwKLSsgKi8KLSsKLSsjaW5jbHVk ZSA8c3RkbGliLmg+Ci0rI2luY2x1ZGUgPHN0ZGFyZy5oPgotKyNpbmNsdWRlIDxzdHJpbmcuaD4K LSsjaW5jbHVkZSA8b3BlbnNzbC9ldnAuaD4KLSsjaW5jbHVkZSA8b3BlbnNzbC9rZGYuaD4KLSsj aW5jbHVkZSAiaW50ZXJuYWwvY3J5cHRsaWIuaCIKLSsjaW5jbHVkZSAiY3J5cHRvL2V2cC5oIgot KyNpbmNsdWRlICJrZGZfbG9jYWwuaCIKLSsKLSsvKiBTZWUgUkZDIDQyNTMsIFNlY3Rpb24gNy4y ICovCi0rCi0rc3RhdGljIHZvaWQga2RmX3NzaGtkZl9yZXNldChFVlBfS0RGX0lNUEwgKmltcGwp OwotK3N0YXRpYyBpbnQgU1NIS0RGKGNvbnN0IEVWUF9NRCAqZXZwX21kLAotKyAgICAgICAgICAg ICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKmtleSwgc2l6ZV90IGtleV9sZW4sCi0rICAgICAg ICAgICAgICAgICAgY29uc3QgdW5zaWduZWQgY2hhciAqeGNnaGFzaCwgc2l6ZV90IHhjZ2hhc2hf bGVuLAotKyAgICAgICAgICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNlc3Npb25faWQs IHNpemVfdCBzZXNzaW9uX2lkX2xlbiwKLSsgICAgICAgICAgICAgICAgICBjaGFyIHR5cGUsIHVu c2lnbmVkIGNoYXIgKm9rZXksIHNpemVfdCBva2V5X2xlbik7Ci0rCi0rc3RydWN0IGV2cF9rZGZf aW1wbF9zdCB7Ci0rICAgIGNvbnN0IEVWUF9NRCAqbWQ7Ci0rICAgIHVuc2lnbmVkIGNoYXIgKmtl eTsgLyogSyAqLwotKyAgICBzaXplX3Qga2V5X2xlbjsKLSsgICAgdW5zaWduZWQgY2hhciAqeGNn aGFzaDsgLyogSCAqLwotKyAgICBzaXplX3QgeGNnaGFzaF9sZW47Ci0rICAgIGNoYXIgdHlwZTsg LyogWCAqLwotKyAgICB1bnNpZ25lZCBjaGFyICpzZXNzaW9uX2lkOwotKyAgICBzaXplX3Qgc2Vz c2lvbl9pZF9sZW47Ci0rfTsKLSsKLStzdGF0aWMgRVZQX0tERl9JTVBMICprZGZfc3Noa2RmX25l dyh2b2lkKQotK3sKLSsgICAgRVZQX0tERl9JTVBMICppbXBsOwotKwotKyAgICBpZiAoKGltcGwg PSBPUEVOU1NMX3phbGxvYyhzaXplb2YoKmltcGwpKSkgPT0gTlVMTCkKLSsgICAgICAgIEtERmVy cihLREZfRl9LREZfU1NIS0RGX05FVywgRVJSX1JfTUFMTE9DX0ZBSUxVUkUpOwotKyAgICByZXR1 cm4gaW1wbDsKLSt9Ci0rCi0rc3RhdGljIHZvaWQga2RmX3NzaGtkZl9mcmVlKEVWUF9LREZfSU1Q TCAqaW1wbCkKLSt7Ci0rICAgIGtkZl9zc2hrZGZfcmVzZXQoaW1wbCk7Ci0rICAgIE9QRU5TU0xf ZnJlZShpbXBsKTsKLSt9Ci0rCi0rc3RhdGljIHZvaWQga2RmX3NzaGtkZl9yZXNldChFVlBfS0RG X0lNUEwgKmltcGwpCi0rewotKyAgICBPUEVOU1NMX2NsZWFyX2ZyZWUoaW1wbC0+a2V5LCBpbXBs LT5rZXlfbGVuKTsKLSsgICAgT1BFTlNTTF9jbGVhcl9mcmVlKGltcGwtPnhjZ2hhc2gsIGltcGwt PnhjZ2hhc2hfbGVuKTsKLSsgICAgT1BFTlNTTF9jbGVhcl9mcmVlKGltcGwtPnNlc3Npb25faWQs IGltcGwtPnNlc3Npb25faWRfbGVuKTsKLSsgICAgbWVtc2V0KGltcGwsIDAsIHNpemVvZigqaW1w bCkpOwotK30KLSsKLStzdGF0aWMgaW50IGtkZl9zc2hrZGZfcGFyc2VfYnVmZmVyX2FyZyh1bnNp Z25lZCBjaGFyICoqZHN0LCBzaXplX3QgKmRzdF9sZW4sCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdmFfbGlzdCBhcmdzKQotK3sKLSsgICAgY29uc3QgdW5zaWduZWQg Y2hhciAqcDsKLSsgICAgc2l6ZV90IGxlbjsKLSsKLSsgICAgcCA9IHZhX2FyZyhhcmdzLCBjb25z dCB1bnNpZ25lZCBjaGFyICopOwotKyAgICBsZW4gPSB2YV9hcmcoYXJncywgc2l6ZV90KTsKLSsg ICAgT1BFTlNTTF9jbGVhcl9mcmVlKCpkc3QsICpkc3RfbGVuKTsKLSsgICAgKmRzdCA9IE9QRU5T U0xfbWVtZHVwKHAsIGxlbik7Ci0rICAgIGlmICgqZHN0ID09IE5VTEwpCi0rICAgICAgICByZXR1 cm4gMDsKLSsKLSsgICAgKmRzdF9sZW4gPSBsZW47Ci0rICAgIHJldHVybiAxOwotK30KLSsKLStz dGF0aWMgaW50IGtkZl9zc2hrZGZfY3RybChFVlBfS0RGX0lNUEwgKmltcGwsIGludCBjbWQsIHZh X2xpc3QgYXJncykKLSt7Ci0rICAgIGludCB0OwotKwotKyAgICBzd2l0Y2ggKGNtZCkgewotKyAg ICBjYXNlIEVWUF9LREZfQ1RSTF9TRVRfTUQ6Ci0rICAgICAgICBpbXBsLT5tZCA9IHZhX2FyZyhh cmdzLCBjb25zdCBFVlBfTUQgKik7Ci0rICAgICAgICBpZiAoaW1wbC0+bWQgPT0gTlVMTCkKLSsg ICAgICAgICAgICByZXR1cm4gMDsKLSsKLSsgICAgICAgIHJldHVybiAxOwotKwotKyAgICBjYXNl IEVWUF9LREZfQ1RSTF9TRVRfS0VZOgotKyAgICAgICAgcmV0dXJuIGtkZl9zc2hrZGZfcGFyc2Vf YnVmZmVyX2FyZygmaW1wbC0+a2V5LAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAmaW1wbC0+a2V5X2xlbiwgYXJncyk7Ci0rCi0rICAgIGNhc2UgRVZQX0tERl9D VFJMX1NFVF9TU0hLREZfWENHSEFTSDoKLSsgICAgICAgIHJldHVybiBrZGZfc3Noa2RmX3BhcnNl X2J1ZmZlcl9hcmcoJmltcGwtPnhjZ2hhc2gsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICZpbXBsLT54Y2doYXNoX2xlbiwgYXJncyk7Ci0rCi0rICAgIGNhc2Ug RVZQX0tERl9DVFJMX1NFVF9TU0hLREZfU0VTU0lPTl9JRDoKLSsgICAgICAgIHJldHVybiBrZGZf c3Noa2RmX3BhcnNlX2J1ZmZlcl9hcmcoJmltcGwtPnNlc3Npb25faWQsCi0rICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZpbXBsLT5zZXNzaW9uX2lkX2xlbiwgYXJn cyk7Ci0rCi0rICAgIGNhc2UgRVZQX0tERl9DVFJMX1NFVF9TU0hLREZfVFlQRToKLSsgICAgICAg IHQgPSB2YV9hcmcoYXJncywgaW50KTsKLSsgICAgICAgIGlmICh0IDwgNjUgfHwgdCA+IDcwKSB7 Ci0rICAgICAgICAgICAgS0RGZXJyKEtERl9GX0tERl9TU0hLREZfQ1RSTCwgS0RGX1JfVkFMVUVf RVJST1IpOwotKyAgICAgICAgICAgIHJldHVybiAwOwotKyAgICAgICAgfQotKwotKyAgICAgICAg aW1wbC0+dHlwZSA9IChjaGFyKXQ7Ci0rICAgICAgICByZXR1cm4gMTsKLSsKLSsgICAgZGVmYXVs dDoKLSsgICAgICAgIHJldHVybiAtMjsKLSsKLSsgICAgfQotK30KLSsKLStzdGF0aWMgaW50IGtk Zl9zc2hrZGZfY3RybF9zdHIoRVZQX0tERl9JTVBMICppbXBsLCBjb25zdCBjaGFyICp0eXBlLAot KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICp2YWx1ZSkKLSt7Ci0r ICAgIGlmICh2YWx1ZSA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfS0RGX1NTSEtE Rl9DVFJMX1NUUiwgS0RGX1JfVkFMVUVfTUlTU0lORyk7Ci0rICAgICAgICByZXR1cm4gMDsKLSsg ICAgfQotKwotKyAgICBpZiAoc3RyY21wKHR5cGUsICJtZCIpID09IDApCi0rICAgICAgICByZXR1 cm4ga2RmX21kMmN0cmwoaW1wbCwga2RmX3NzaGtkZl9jdHJsLCBFVlBfS0RGX0NUUkxfU0VUX01E LCB2YWx1ZSk7Ci0rCi0rICAgIGlmIChzdHJjbXAodHlwZSwgImtleSIpID09IDApCi0rICAgICAg ICByZXR1cm4ga2RmX3N0cjJjdHJsKGltcGwsIGtkZl9zc2hrZGZfY3RybCwKLSsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgRVZQX0tERl9DVFJMX1NFVF9LRVksIHZhbHVlKTsKLSsKLSsgICAg aWYgKHN0cmNtcCh0eXBlLCAiaGV4a2V5IikgPT0gMCkKLSsgICAgICAgIHJldHVybiBrZGZfaGV4 MmN0cmwoaW1wbCwga2RmX3NzaGtkZl9jdHJsLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICBFVlBfS0RGX0NUUkxfU0VUX0tFWSwgdmFsdWUpOwotKwotKyAgICBpZiAoc3RyY21wKHR5cGUs ICJ4Y2doYXNoIikgPT0gMCkKLSsgICAgICAgIHJldHVybiBrZGZfc3RyMmN0cmwoaW1wbCwga2Rm X3NzaGtkZl9jdHJsLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBFVlBfS0RGX0NUUkxf U0VUX1NTSEtERl9YQ0dIQVNILCB2YWx1ZSk7Ci0rCi0rICAgIGlmIChzdHJjbXAodHlwZSwgImhl eHhjZ2hhc2giKSA9PSAwKQotKyAgICAgICAgcmV0dXJuIGtkZl9oZXgyY3RybChpbXBsLCBrZGZf c3Noa2RmX2N0cmwsCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVWUF9LREZfQ1RSTF9T RVRfU1NIS0RGX1hDR0hBU0gsIHZhbHVlKTsKLSsKLSsgICAgaWYgKHN0cmNtcCh0eXBlLCAic2Vz c2lvbl9pZCIpID09IDApCi0rICAgICAgICByZXR1cm4ga2RmX3N0cjJjdHJsKGltcGwsIGtkZl9z c2hrZGZfY3RybCwKLSsgICAgICAgICAgICAgICAgICAgICAgICAgICAgRVZQX0tERl9DVFJMX1NF VF9TU0hLREZfU0VTU0lPTl9JRCwgdmFsdWUpOwotKwotKyAgICBpZiAoc3RyY21wKHR5cGUsICJo ZXhzZXNzaW9uX2lkIikgPT0gMCkKLSsgICAgICAgIHJldHVybiBrZGZfaGV4MmN0cmwoaW1wbCwg a2RmX3NzaGtkZl9jdHJsLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBFVlBfS0RGX0NU UkxfU0VUX1NTSEtERl9TRVNTSU9OX0lELCB2YWx1ZSk7Ci0rCi0rICAgIGlmIChzdHJjbXAodHlw ZSwgInR5cGUiKSA9PSAwKSB7Ci0rICAgICAgICBpZiAoc3RybGVuKHZhbHVlKSAhPSAxKSB7Ci0r ICAgICAgICAgICAgS0RGZXJyKEtERl9GX0tERl9TU0hLREZfQ1RSTF9TVFIsIEtERl9SX1ZBTFVF X0VSUk9SKTsKLSsgICAgICAgICAgICByZXR1cm4gMDsKLSsgICAgICAgIH0KLSsKLSsgICAgICAg IHJldHVybiBjYWxsX2N0cmwoa2RmX3NzaGtkZl9jdHJsLCBpbXBsLCBFVlBfS0RGX0NUUkxfU0VU X1NTSEtERl9UWVBFLAotKyAgICAgICAgICAgICAgICAgICAgICAgICAoaW50KXZhbHVlWzBdKTsK LSsgICAgfQotKwotKyAgICBLREZlcnIoS0RGX0ZfS0RGX1NTSEtERl9DVFJMX1NUUiwgS0RGX1Jf VU5LTk9XTl9QQVJBTUVURVJfVFlQRSk7Ci0rICAgIHJldHVybiAtMjsKLSt9Ci0rCi0rc3RhdGlj IHNpemVfdCBrZGZfc3Noa2RmX3NpemUoRVZQX0tERl9JTVBMICppbXBsKQotK3sKLSsgICAgcmV0 dXJuIFNJWkVfTUFYOwotK30KLSsKLStzdGF0aWMgaW50IGtkZl9zc2hrZGZfZGVyaXZlKEVWUF9L REZfSU1QTCAqaW1wbCwgdW5zaWduZWQgY2hhciAqa2V5LAotKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgc2l6ZV90IGtleWxlbikKLSt7Ci0rICAgIGlmIChpbXBsLT5tZCA9PSBOVUxMKSB7 Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfS0RGX1NTSEtERl9ERVJJVkUsIEtERl9SX01JU1NJTkdf TUVTU0FHRV9ESUdFU1QpOwotKyAgICAgICAgcmV0dXJuIDA7Ci0rICAgIH0KLSsgICAgaWYgKGlt cGwtPmtleSA9PSBOVUxMKSB7Ci0rICAgICAgICBLREZlcnIoS0RGX0ZfS0RGX1NTSEtERl9ERVJJ VkUsIEtERl9SX01JU1NJTkdfS0VZKTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rICAg IGlmIChpbXBsLT54Y2doYXNoID09IE5VTEwpIHsKLSsgICAgICAgIEtERmVycihLREZfRl9LREZf U1NIS0RGX0RFUklWRSwgS0RGX1JfTUlTU0lOR19YQ0dIQVNIKTsKLSsgICAgICAgIHJldHVybiAw OwotKyAgICB9Ci0rICAgIGlmIChpbXBsLT5zZXNzaW9uX2lkID09IE5VTEwpIHsKLSsgICAgICAg IEtERmVycihLREZfRl9LREZfU1NIS0RGX0RFUklWRSwgS0RGX1JfTUlTU0lOR19TRVNTSU9OX0lE KTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rICAgIGlmIChpbXBsLT50eXBlID09IDAp IHsKLSsgICAgICAgIEtERmVycihLREZfRl9LREZfU1NIS0RGX0RFUklWRSwgS0RGX1JfTUlTU0lO R19UWVBFKTsKLSsgICAgICAgIHJldHVybiAwOwotKyAgICB9Ci0rICAgIHJldHVybiBTU0hLREYo aW1wbC0+bWQsIGltcGwtPmtleSwgaW1wbC0+a2V5X2xlbiwKLSsgICAgICAgICAgICAgICAgICBp bXBsLT54Y2doYXNoLCBpbXBsLT54Y2doYXNoX2xlbiwKLSsgICAgICAgICAgICAgICAgICBpbXBs LT5zZXNzaW9uX2lkLCBpbXBsLT5zZXNzaW9uX2lkX2xlbiwKLSsgICAgICAgICAgICAgICAgICBp bXBsLT50eXBlLCBrZXksIGtleWxlbik7Ci0rfQotKwotK2NvbnN0IEVWUF9LREZfTUVUSE9EIHNz aGtkZl9rZGZfbWV0aCA9IHsKLSsgICAgRVZQX0tERl9TU0hLREYsCi0rICAgIGtkZl9zc2hrZGZf bmV3LAotKyAgICBrZGZfc3Noa2RmX2ZyZWUsCi0rICAgIGtkZl9zc2hrZGZfcmVzZXQsCi0rICAg IGtkZl9zc2hrZGZfY3RybCwKLSsgICAga2RmX3NzaGtkZl9jdHJsX3N0ciwKLSsgICAga2RmX3Nz aGtkZl9zaXplLAotKyAgICBrZGZfc3Noa2RmX2Rlcml2ZSwKLSt9OwotKwotK3N0YXRpYyBpbnQg U1NIS0RGKGNvbnN0IEVWUF9NRCAqZXZwX21kLAotKyAgICAgICAgICAgICAgICAgIGNvbnN0IHVu c2lnbmVkIGNoYXIgKmtleSwgc2l6ZV90IGtleV9sZW4sCi0rICAgICAgICAgICAgICAgICAgY29u c3QgdW5zaWduZWQgY2hhciAqeGNnaGFzaCwgc2l6ZV90IHhjZ2hhc2hfbGVuLAotKyAgICAgICAg ICAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNoYXIgKnNlc3Npb25faWQsIHNpemVfdCBzZXNzaW9u X2lkX2xlbiwKLSsgICAgICAgICAgICAgICAgICBjaGFyIHR5cGUsIHVuc2lnbmVkIGNoYXIgKm9r ZXksIHNpemVfdCBva2V5X2xlbikKLSt7Ci0rICAgIEVWUF9NRF9DVFggKm1kID0gTlVMTDsKLSsg ICAgdW5zaWduZWQgY2hhciBkaWdlc3RbRVZQX01BWF9NRF9TSVpFXTsKLSsgICAgdW5zaWduZWQg aW50IGRzaXplID0gMDsKLSsgICAgc2l6ZV90IGN1cnNpemUgPSAwOwotKyAgICBpbnQgcmV0ID0g MDsKLSsKLSsgICAgbWQgPSBFVlBfTURfQ1RYX25ldygpOwotKyAgICBpZiAobWQgPT0gTlVMTCkK LSsgICAgICAgIHJldHVybiAwOwotKwotKyAgICBpZiAoIUVWUF9EaWdlc3RJbml0X2V4KG1kLCBl dnBfbWQsIE5VTEwpKQotKyAgICAgICAgZ290byBvdXQ7Ci0rCi0rICAgIGlmICghRVZQX0RpZ2Vz dFVwZGF0ZShtZCwga2V5LCBrZXlfbGVuKSkKLSsgICAgICAgIGdvdG8gb3V0OwotKwotKyAgICBp ZiAoIUVWUF9EaWdlc3RVcGRhdGUobWQsIHhjZ2hhc2gsIHhjZ2hhc2hfbGVuKSkKLSsgICAgICAg IGdvdG8gb3V0OwotKwotKyAgICBpZiAoIUVWUF9EaWdlc3RVcGRhdGUobWQsICZ0eXBlLCAxKSkK LSsgICAgICAgIGdvdG8gb3V0OwotKwotKyAgICBpZiAoIUVWUF9EaWdlc3RVcGRhdGUobWQsIHNl c3Npb25faWQsIHNlc3Npb25faWRfbGVuKSkKLSsgICAgICAgIGdvdG8gb3V0OwotKwotKyAgICBp ZiAoIUVWUF9EaWdlc3RGaW5hbF9leChtZCwgZGlnZXN0LCAmZHNpemUpKQotKyAgICAgICAgZ290 byBvdXQ7Ci0rCi0rICAgIGlmIChva2V5X2xlbiA8IGRzaXplKSB7Ci0rICAgICAgICBtZW1jcHko b2tleSwgZGlnZXN0LCBva2V5X2xlbik7Ci0rICAgICAgICByZXQgPSAxOwotKyAgICAgICAgZ290 byBvdXQ7Ci0rICAgIH0KLSsKLSsgICAgbWVtY3B5KG9rZXksIGRpZ2VzdCwgZHNpemUpOwotKwot KyAgICBmb3IgKGN1cnNpemUgPSBkc2l6ZTsgY3Vyc2l6ZSA8IG9rZXlfbGVuOyBjdXJzaXplICs9 IGRzaXplKSB7Ci0rCi0rICAgICAgICBpZiAoIUVWUF9EaWdlc3RJbml0X2V4KG1kLCBldnBfbWQs IE5VTEwpKQotKyAgICAgICAgICAgIGdvdG8gb3V0OwotKwotKyAgICAgICAgaWYgKCFFVlBfRGln ZXN0VXBkYXRlKG1kLCBrZXksIGtleV9sZW4pKQotKyAgICAgICAgICAgIGdvdG8gb3V0OwotKwot KyAgICAgICAgaWYgKCFFVlBfRGlnZXN0VXBkYXRlKG1kLCB4Y2doYXNoLCB4Y2doYXNoX2xlbikp Ci0rICAgICAgICAgICAgZ290byBvdXQ7Ci0rCi0rICAgICAgICBpZiAoIUVWUF9EaWdlc3RVcGRh dGUobWQsIG9rZXksIGN1cnNpemUpKQotKyAgICAgICAgICAgIGdvdG8gb3V0OwotKwotKyAgICAg ICAgaWYgKCFFVlBfRGlnZXN0RmluYWxfZXgobWQsIGRpZ2VzdCwgJmRzaXplKSkKLSsgICAgICAg ICAgICBnb3RvIG91dDsKLSsKLSsgICAgICAgIGlmIChva2V5X2xlbiA8IGN1cnNpemUgKyBkc2l6 ZSkgewotKyAgICAgICAgICAgIG1lbWNweShva2V5ICsgY3Vyc2l6ZSwgZGlnZXN0LCBva2V5X2xl biAtIGN1cnNpemUpOwotKyAgICAgICAgICAgIHJldCA9IDE7Ci0rICAgICAgICAgICAgZ290byBv dXQ7Ci0rICAgICAgICB9Ci0rCi0rICAgICAgICBtZW1jcHkob2tleSArIGN1cnNpemUsIGRpZ2Vz dCwgZHNpemUpOwotKyAgICB9Ci0rCi0rICAgIHJldCA9IDE7Ci0rCi0rb3V0OgotKyAgICBFVlBf TURfQ1RYX2ZyZWUobWQpOwotKyAgICBPUEVOU1NMX2NsZWFuc2UoZGlnZXN0LCBFVlBfTUFYX01E X1NJWkUpOwotKyAgICByZXR1cm4gcmV0OwotK30KLSsKLWRpZmYgLS1naXQgYS9jcnlwdG8vb2Jq ZWN0cy9vYmpfZGF0LmggYi9jcnlwdG8vb2JqZWN0cy9vYmpfZGF0LmgKLWluZGV4IDlhYjFhMTRi OWUuLjgxNjQ2ZmRhNTIgMTAwNjQ0Ci0tLS0gYS9jcnlwdG8vb2JqZWN0cy9vYmpfZGF0LmgKLSsr KyBiL2NyeXB0by9vYmplY3RzL29ial9kYXQuaAotQEAgLTEwNzgsNyArMTA3OCw3IEBAIHN0YXRp YyBjb25zdCB1bnNpZ25lZCBjaGFyIHNvWzc3NjJdID0gewotICAgICAweDJBLDB4ODYsMHg0OCww eDg2LDB4RjcsMHgwRCwweDAyLDB4MEQsICAgICAgIC8qIFsgNzc1M10gT0JKX2htYWNXaXRoU0hB NTEyXzI1NiAqLwotIH07Ci0gCi0tI2RlZmluZSBOVU1fTklEIDExOTUKLSsjZGVmaW5lIE5VTV9O SUQgMTE5NgotIHN0YXRpYyBjb25zdCBBU04xX09CSkVDVCBuaWRfb2Jqc1tOVU1fTklEXSA9IHsK LSAgICAgeyJVTkRFRiIsICJ1bmRlZmluZWQiLCBOSURfdW5kZWZ9LAotICAgICB7InJzYWRzaSIs ICJSU0EgRGF0YSBTZWN1cml0eSwgSW5jLiIsIE5JRF9yc2Fkc2ksIDYsICZzb1swXX0sCi1AQCAt MjI3NSw5ICsyMjc1LDEwIEBAIHN0YXRpYyBjb25zdCBBU04xX09CSkVDVCBuaWRfb2Jqc1tOVU1f TklEXSA9IHsKLSAgICAgeyJtYWdtYS1tYWMiLCAibWFnbWEtbWFjIiwgTklEX21hZ21hX21hY30s Ci0gICAgIHsiaG1hY1dpdGhTSEE1MTItMjI0IiwgImhtYWNXaXRoU0hBNTEyLTIyNCIsIE5JRF9o bWFjV2l0aFNIQTUxMl8yMjQsIDgsICZzb1s3NzQ1XX0sCi0gICAgIHsiaG1hY1dpdGhTSEE1MTIt MjU2IiwgImhtYWNXaXRoU0hBNTEyLTI1NiIsIE5JRF9obWFjV2l0aFNIQTUxMl8yNTYsIDgsICZz b1s3NzUzXX0sCi0rICAgIHsiU1NIS0RGIiwgInNzaGtkZiIsIE5JRF9zc2hrZGZ9LAotIH07Ci0g Ci0tI2RlZmluZSBOVU1fU04gMTE4NgotKyNkZWZpbmUgTlVNX1NOIDExODcKLSBzdGF0aWMgY29u c3QgdW5zaWduZWQgaW50IHNuX29ianNbTlVNX1NOXSA9IHsKLSAgICAgIDM2NCwgICAgLyogIkFE X0RWQ1MiICovCi0gICAgICA0MTksICAgIC8qICJBRVMtMTI4LUNCQyIgKi8KLUBAIC0yNTU1LDYg KzI1NTYsNyBAQCBzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IHNuX29ianNbTlVNX1NOXSA9IHsK LSAgICAgIDE2NywgICAgLyogIlNNSU1FLUNBUFMiICovCi0gICAgICAxMDAsICAgIC8qICJTTiIg Ki8KLSAgICAgMTAwNiwgICAgLyogIlNOSUxTIiAqLwotKyAgICAxMTk1LCAgICAvKiAiU1NIS0RG IiAqLwotICAgICAgIDE2LCAgICAvKiAiU1QiICovCi0gICAgICAxNDMsICAgIC8qICJTWE5ldElE IiAqLwotICAgICAxMDYyLCAgICAvKiAiU2lwSGFzaCIgKi8KLUBAIC0zNDY3LDcgKzM0NjksNyBA QCBzdGF0aWMgY29uc3QgdW5zaWduZWQgaW50IHNuX29ianNbTlVNX1NOXSA9IHsKLSAgICAgMTA5 MywgICAgLyogIng1MDlFeHRBZG1pc3Npb24iICovCi0gfTsKLSAKLS0jZGVmaW5lIE5VTV9MTiAx MTg2Ci0rI2RlZmluZSBOVU1fTE4gMTE4NwotIHN0YXRpYyBjb25zdCB1bnNpZ25lZCBpbnQgbG5f b2Jqc1tOVU1fTE5dID0gewotICAgICAgMzYzLCAgICAvKiAiQUQgVGltZSBTdGFtcGluZyIgKi8K LSAgICAgIDQwNSwgICAgLyogIkFOU0kgWDkuNjIiICovCi1AQCAtNDYwOSw2ICs0NjExLDcgQEAg c3RhdGljIGNvbnN0IHVuc2lnbmVkIGludCBsbl9vYmpzW05VTV9MTl0gPSB7Ci0gICAgIDExMzks ICAgIC8qICJzbTQtY3RyIiAqLwotICAgICAxMTMzLCAgICAvKiAic200LWVjYiIgKi8KLSAgICAg MTEzNSwgICAgLyogInNtNC1vZmIiICovCi0rICAgIDExOTUsICAgIC8qICJzc2hrZGYiICovCi0g ICAgICAgMTYsICAgIC8qICJzdGF0ZU9yUHJvdmluY2VOYW1lIiAqLwotICAgICAgNjYwLCAgICAv KiAic3RyZWV0QWRkcmVzcyIgKi8KLSAgICAgIDQ5OCwgICAgLyogInN1YnRyZWVNYXhpbXVtUXVh bGl0eSIgKi8KLWRpZmYgLS1naXQgYS9jcnlwdG8vb2JqZWN0cy9vYmpfbWFjLm51bSBiL2NyeXB0 by9vYmplY3RzL29ial9tYWMubnVtCi1pbmRleCAxYjZhOWM2MWExLi4yMzFjMTgzODRhIDEwMDY0 NAotLS0tIGEvY3J5cHRvL29iamVjdHMvb2JqX21hYy5udW0KLSsrKyBiL2NyeXB0by9vYmplY3Rz L29ial9tYWMubnVtCi1AQCAtMTE5MiwzICsxMTkyLDQgQEAgbWFnbWFfY2ZiCQkxMTkxCi0gbWFn bWFfbWFjCQkxMTkyCi0gaG1hY1dpdGhTSEE1MTJfMjI0CQkxMTkzCi0gaG1hY1dpdGhTSEE1MTJf MjU2CQkxMTk0Ci0rc3Noa2RmCQkxMTk1Ci1kaWZmIC0tZ2l0IGEvY3J5cHRvL29iamVjdHMvb2Jq ZWN0cy50eHQgYi9jcnlwdG8vb2JqZWN0cy9vYmplY3RzLnR4dAotaW5kZXggNmRiYzQxY2UzNy4u NWRlZDg4ZTUyNSAxMDA2NDQKLS0tLSBhL2NyeXB0by9vYmplY3RzL29iamVjdHMudHh0Ci0rKysg Yi9jcnlwdG8vb2JqZWN0cy9vYmplY3RzLnR4dAotQEAgLTE2MDAsNiArMTYwMCw5IEBAIHNlY2ct c2NoZW1lIDE0IDMgOiBkaFNpbmdsZVBhc3MtY29mYWN0b3JESC1zaGE1MTJrZGYtc2NoZW1lCi0g IyBOSUQgZm9yIEhLREYKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBIS0RGICAgICAg ICAgICAgICA6IGhrZGYKLSAKLSsjIE5JRCBmb3IgU1NIS0RGCi0rICAgICAgICAgICAgICAgICAg ICAgICAgICAgIDogU1NIS0RGICAgICAgICAgICAgOiBzc2hrZGYKLSsKLSAjIFJGQyA0NTU2Ci0g MSAzIDYgMSA1IDIgMyA6IGlkLXBraW5pdAotIGlkLXBraW5pdCA0ICAgICAgICAgICAgICAgICAg ICAgOiBwa0luaXRDbGllbnRBdXRoICAgICAgOiBQS0lOSVQgQ2xpZW50IEF1dGgKLWRpZmYgLS1n aXQgYS9kb2MvbWFuNy9FVlBfS0RGX1NTSEtERi5wb2QgYi9kb2MvbWFuNy9FVlBfS0RGX1NTSEtE Ri5wb2QKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMDAwLi45Yzk3MzRlN2Mz Ci0tLS0gL2Rldi9udWxsCi0rKysgYi9kb2MvbWFuNy9FVlBfS0RGX1NTSEtERi5wb2QKLUBAIC0w LDAgKzEsMTc1IEBACi0rPXBvZAotKwotKz1oZWFkMSBOQU1FCi0rCi0rRVZQX0tERl9TU0hLREYg LSBUaGUgU1NIS0RGIEVWUF9LREYgaW1wbGVtZW50YXRpb24KLSsKLSs9aGVhZDEgREVTQ1JJUFRJ T04KLSsKLStTdXBwb3J0IGZvciBjb21wdXRpbmcgdGhlIEI8U1NIS0RGPiBLREYgdGhyb3VnaCB0 aGUgQjxFVlBfS0RGPiBBUEkuCi0rCi0rVGhlIEVWUF9LREZfU1NIS0RGIGFsZ29yaXRobSBpbXBs ZW1lbnRzIHRoZSBTU0hLREYga2V5IGRlcml2YXRpb24gZnVuY3Rpb24uCi0rSXQgaXMgZGVmaW5l ZCBpbiBSRkMgNDI1Mywgc2VjdGlvbiA3LjIgYW5kIGlzIHVzZWQgYnkgU1NIIHRvIGRlcml2ZSBJ VnMsCi0rZW5jcnlwdGlvbiBrZXlzIGFuZCBpbnRlZ3JpdHkga2V5cy4KLStGaXZlIGlucHV0cyBh cmUgcmVxdWlyZWQgdG8gcGVyZm9ybSBrZXkgZGVyaXZhdGlvbjogVGhlIGhhc2hpbmcgZnVuY3Rp b24KLSsoZm9yIGV4YW1wbGUgU0hBMjU2KSwgdGhlIEluaXRpYWwgS2V5LCB0aGUgRXhjaGFuZ2Ug SGFzaCwgdGhlIFNlc3Npb24gSUQsCi0rYW5kIHRoZSBkZXJpdmF0aW9uIGtleSB0eXBlLgotKwot Kz1oZWFkMiBOdW1lcmljIGlkZW50aXR5Ci0rCi0rQjxFVlBfS0RGX1NTSEtERj4gaXMgdGhlIG51 bWVyaWMgaWRlbnRpdHkgZm9yIHRoaXMgaW1wbGVtZW50YXRpb247IGl0Ci0rY2FuIGJlIHVzZWQg d2l0aCB0aGUgRVZQX0tERl9DVFhfbmV3X2lkKCkgZnVuY3Rpb24uCi0rCi0rPWhlYWQyIFN1cHBv cnRlZCBjb250cm9scwotKwotK1RoZSBzdXBwb3J0ZWQgY29udHJvbHMgYXJlOgotKwotKz1vdmVy IDQKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRfTUQ+Ci0rCi0rPWl0ZW0gQjxFVlBfS0RG X0NUUkxfU0VUX0tFWT4KLSsKLStUaGVzZSBjb250cm9scyB3b3JrIGFzIGRlc2NyaWJlZCBpbiBM PEVWUF9LREZfQ1RYKDMpL0NPTlRST0xTPi4KLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRf U1NIS0RGX1hDR0hBU0g+Ci0rCi0rPWl0ZW0gQjxFVlBfS0RGX0NUUkxfU0VUX1NTSEtERl9TRVNT SU9OX0lEPgotKwotK1RoZXNlIGNvbnRyb2xzIGV4cGVjdCB0d28gYXJndW1lbnRzOiBDPHVuc2ln bmVkIGNoYXIgKmJ1ZmZlcj4sIEM8c2l6ZV90IGxlbmd0aD4KLSsKLStUaGV5IHNldCB0aGUgcmVz cGVjdGl2ZSB2YWx1ZXMgdG8gdGhlIGZpcnN0IEI8bGVuZ3RoPiBieXRlcyBvZiB0aGUgYnVmZmVy Ci0rQjxidWZmZXI+LiBJZiBhIHZhbHVlIGlzIGFscmVhZHkgc2V0LCB0aGUgY29udGVudHMgYXJl IHJlcGxhY2VkLgotKwotK0VWUF9LREZfY3RybF9zdHIoKSB0YWtlcyB0d28gdHlwZSBzdHJpbmdz IGZvciB0aGVzZSBjb250cm9sczoKLSsKLSs9b3ZlciA0Ci0rCi0rPWl0ZW0gInhjZ2hhc2giCi0r Ci0rPWl0ZW0gInNlc3Npb25faWQiCi0rCi0rVGhlIHZhbHVlIHN0cmluZyBpcyB1c2VkIGFzIGlz LgotKwotKz1pdGVtICJoZXh4Y2doYXNoIgotKwotKz1pdGVtICJoZXhzZXNzaW9uX2lkIgotKwot K1RoZSB2YWx1ZSBzdHJpbmcgaXMgZXhwZWN0ZWQgdG8gYmUgYSBoZXhhZGVjaW1hbCBudW1iZXIs IHdoaWNoIHdpbGwgYmUKLStkZWNvZGVkIGJlZm9yZSBiZWluZyBwYXNzZWQgb24gYXMgdGhlIGNv bnRyb2wgdmFsdWUuCi0rCi0rPWJhY2sKLSsKLSs9aXRlbSBCPEVWUF9LREZfQ1RSTF9TRVRfU1NI S0RGX1RZUEU+Ci0rCi0rVGhpcyBjb250cm9sIGV4cGVjdHMgb25lIGFyZ3VtZW50OiBDPGludCBt b2RlPgotKwotK1NldHMgdGhlIHR5cGUgZm9yIHRoZSBTU0hIS0RGIG9wZXJhdGlvbi4gVGhlcmUg YXJlIHNpeCBzdXBwb3J0ZWQgdHlwZXM6Ci0rCi0rPW92ZXIgNAotKwotKz1pdGVtIEVWUF9LREZf U1NIS0RGX1RZUEVfSU5JTklUQUxfSVZfQ0xJX1RPX1NSVgotKwotK1RoZSBJbml0aWFsIElWIGZy b20gY2xpZW50IHRvIHNlcnZlci4KLStBIHNpbmdsZSBjaGFyIG9mIHZhbHVlIDY1IChBU0NJSSBj aGFyICdBJykuCi0rCi0rPWl0ZW0gRVZQX0tERl9TU0hLREZfVFlQRV9JTklOSVRBTF9JVl9TUlZf VE9fQ0xJCi0rCi0rVGhlIEluaXRpYWwgSVYgZnJvbSBzZXJ2ZXIgdG8gY2xpZW50Ci0rQSBzaW5n bGUgY2hhciBvZiB2YWx1ZSA2NiAoQVNDSUkgY2hhciAnQicpLgotKwotKz1pdGVtIEVWUF9LREZf U1NIS0RGX1RZUEVfRU5DUllQVElPTl9LRVlfQ0xJX1RPX1NSVgotKwotK1RoZSBFbmNyeXB0aW9u IEtleSBmcm9tIGNsaWVudCB0byBzZXJ2ZXIKLStBIHNpbmdsZSBjaGFyIG9mIHZhbHVlIDY3IChB U0NJSSBjaGFyICdDJykuCi0rCi0rPWl0ZW0gRVZQX0tERl9TU0hLREZfVFlQRV9FTkNSWVBUSU9O X0tFWV9TUlZfVE9fQ0xJCi0rCi0rVGhlIEVuY3J5cHRpb24gS2V5IGZyb20gc2VydmVyIHRvIGNs aWVudAotK0Egc2luZ2xlIGNoYXIgb2YgdmFsdWUgNjggKEFTQ0lJIGNoYXIgJ0QnKS4KLSsKLSs9 aXRlbSBFVlBfS0RGX1NTSEtERl9UWVBFX0lOVEVHUklUWV9LRVlfQ0xJX1RPX1NSVgotKwotK1Ro ZSBJbnRlZ3JpdHkgS2V5IGZyb20gY2xpZW50IHRvIHNlcnZlcgotK0Egc2luZ2xlIGNoYXIgb2Yg dmFsdWUgNjkgKEFTQ0lJIGNoYXIgJ0UnKS4KLSsKLSs9aXRlbSBFVlBfS0RGX1NTSEtERl9UWVBF X0lOVEVHUklUWV9LRVlfU1JWX1RPX0NMSQotKwotK1RoZSBJbnRlZ3JpdHkgS2V5IGZyb20gY2xp ZW50IHRvIHNlcnZlcgotK0Egc2luZ2xlIGNoYXIgb2YgdmFsdWUgNzAgKEFTQ0lJIGNoYXIgJ0Yn KS4KLSsKLSs9YmFjawotKwotK0VWUF9LREZfY3RybF9zdHIoKSB0eXBlIHN0cmluZzogInR5cGUi Ci0rCi0rVGhlIHZhbHVlIGlzIGEgc3RyaW5nIG9mIGxlbmd0aCBvbmUgY2hhcmFjdGVyLiBUaGUg b25seSB2YWxpZCB2YWx1ZXMKLSthcmUgdGhlIG51bWVyaWNhbCB2YWx1ZXMgb2YgdGhlIEFTQ0lJ IGNhcmFjdGVyczogIkEiICg2NSkgdG8gIkYiICg3MCkuCi0rCi0rPWJhY2sKLSsKLSs9aGVhZDEg Tk9URVMKLSsKLStBIGNvbnRleHQgZm9yIFNTSEtERiBjYW4gYmUgb2J0YWluZWQgYnkgY2FsbGlu ZzoKLSsKLSsgRVZQX0tERl9DVFggKmtjdHggPSBFVlBfS0RGX0NUWF9uZXdfaWQoRVZQX0tERl9T U0hLREYpOwotKwotK1RoZSBvdXRwdXQgbGVuZ3RoIG9mIHRoZSBTU0hLREYgZGVyaXZhdGlvbiBp cyBzcGVjaWZpZWQgdmlhIHRoZSBDPGtleWxlbj4KLStwYXJhbWV0ZXIgdG8gdGhlIEw8RVZQX0tE Rl9kZXJpdmUoMyk+IGZ1bmN0aW9uLgotK1NpbmNlIHRoZSBTU0hLREYgb3V0cHV0IGxlbmd0aCBp cyB2YXJpYWJsZSwgY2FsbGluZyBMPEVWUF9LREZfc2l6ZSgpPgotK3RvIG9idGFpbiB0aGUgcmVx dWlzaXRlIGxlbmd0aCBpcyBub3QgbWVhbmluZ2Z1bC4gVGhlIGNhbGxlciBtdXN0Ci0rYWxsb2Nh dGUgYSBidWZmZXIgb2YgdGhlIGRlc2lyZWQgbGVuZ3RoLCBhbmQgcGFzcyB0aGF0IGJ1ZmZlciB0 byB0aGUKLStMPEVWUF9LREZfZGVyaXZlKDMpPiBmdW5jdGlvbiBhbG9uZyB3aXRoIHRoZSBkZXNp cmVkIGxlbmd0aC4KLSsKLSs9aGVhZDEgRVhBTVBMRQotKwotK1RoaXMgZXhhbXBsZSBkZXJpdmVz IGFuIDggYnl0ZSBJViB1c2luZyBTSEEtMjU2IHdpdGggYSAxSyAia2V5IiBhbmQgYXBwcm9wcmlh dGUKLSsieGNnaGFzaCIgYW5kICJzZXNzaW9uX2lkIiB2YWx1ZXM6Ci0rCi0rIEVWUF9LREZfQ1RY ICprY3R4OwotKyB1bnNpZ25lZCBjaGFyIGtleVsxMDI0XSA9ICIwMTIzNC4uLiI7Ci0rIHVuc2ln bmVkIGNoYXIgeGNnaGFzaFszMl0gPSAiMDEyMzQ1Li4uIjsKLSsgdW5zaWduZWQgY2hhciBzZXNz aW9uX2lkWzMyXSA9ICIwMTIzNDUuLi4iOwotKyB1bnNpZ25lZCBjaGFyIG91dFs4XTsKLSsgc2l6 ZV90IG91dGxlbiA9IHNpemVvZihvdXQpOwotKyBrY3R4ID0gRVZQX0tERl9DVFhfbmV3X2lkKEVW UF9LREZfU1NIS0RGKTsKLSsKLSsgaWYgKEVWUF9LREZfQ1RYX3NldF9tZChrY3R4LCBFVlBfc2hh MjU2KCkpIDw9IDApCi0rICAgICAvKiBFcnJvciAqLwotKyBpZiAoRVZQX0tERl9DVFhfc2V0MV9r ZXkoa2N0eCwga2V5LCAxMDI0KSA8PSAwKQotKyAgICAgLyogRXJyb3IgKi8KLSsgaWYgKEVWUF9L REZfQ1RYX3NldDFfc3Noa2RmX3hjZ2hhc2goa2N0eCwgeGNnaGFzaCwgMzIpIDw9IDApCi0rICAg ICAvKiBFcnJvciAqLwotKyBpZiAoRVZQX0tERl9DVFhfc2V0MV9zc2hrZGZfc2Vzc2lvbl9pZChr Y3R4LCBzZXNzaW9uX2lkLCAzMikgPD0gMCkKLSsgICAgIC8qIEVycm9yICovCi0rIGlmIChFVlBf S0RGX0NUWF9zZXRfc3Noa2RmX3R5cGUoa2N0eCwKLSsgICAgICAgICAgICAgICAgICAgIEVWUF9L REZfU1NIS0RGX1RZUEVfSU5JTklUQUxfSVZfQ0xJX1RPX1NSVikgPD0gMCkKLSsgICAgIC8qIEVy cm9yICovCi0rIGlmIChFVlBfS0RGX2Rlcml2ZShrY3R4LCBvdXQsICZvdXRsZW4pIDw9IDApCi0r ICAgICAvKiBFcnJvciAqLwotKwotKwotKz1oZWFkMSBDT05GT1JNSU5HIFRPCi0rCi0rUkZDIDQy NTMKLSsKLSs9aGVhZDEgU0VFIEFMU08KLSsKLStMPEVWUF9LREZfQ1RYPiwKLStMPEVWUF9LREZf Q1RYX25ld19pZCgzKT4sCi0rTDxFVlBfS0RGX0NUWF9mcmVlKDMpPiwKLStMPEVWUF9LREZfY3Ry bCgzKT4sCi0rTDxFVlBfS0RGX3NpemUoMyk+LAotK0w8RVZQX0tERl9kZXJpdmUoMyk+LAotK0w8 RVZQX0tERl9DVFgoMykvQ09OVFJPTFM+Ci0rCi0rPWhlYWQxIENPUFlSSUdIVAotKwotK0NvcHly aWdodCAyMDE2LTIwMTggVGhlIE9wZW5TU0wgUHJvamVjdCBBdXRob3JzLiBBbGwgUmlnaHRzIFJl c2VydmVkLgotKwotK0xpY2Vuc2VkIHVuZGVyIHRoZSBPcGVuU1NMIGxpY2Vuc2UgKHRoZSAiTGlj ZW5zZSIpLiAgWW91IG1heSBub3QgdXNlCi0rdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNl IHdpdGggdGhlIExpY2Vuc2UuICBZb3UgY2FuIG9idGFpbiBhIGNvcHkKLStpbiB0aGUgZmlsZSBM SUNFTlNFIGluIHRoZSBzb3VyY2UgZGlzdHJpYnV0aW9uIG9yIGF0Ci0rTDxodHRwczovL3d3dy5v cGVuc3NsLm9yZy9zb3VyY2UvbGljZW5zZS5odG1sPi4KLSsKLSs9Y3V0Ci0rCi1kaWZmIC0tZ2l0 IGEvaW5jbHVkZS9vcGVuc3NsL2tkZi5oIGIvaW5jbHVkZS9vcGVuc3NsL2tkZi5oCi1pbmRleCAx NmNhZWQ1MjczLi4zNjJhYjE0Y2ZmIDEwMDY0NAotLS0tIGEvaW5jbHVkZS9vcGVuc3NsL2tkZi5o Ci0rKysgYi9pbmNsdWRlL29wZW5zc2wva2RmLmgKLUBAIC0yMCw2ICsyMCw3IEBAIGV4dGVybiAi QyIgewotICMgZGVmaW5lIEVWUF9LREZfU0NSWVBUICAgICBOSURfaWRfc2NyeXB0Ci0gIyBkZWZp bmUgRVZQX0tERl9UTFMxX1BSRiAgIE5JRF90bHMxX3ByZgotICMgZGVmaW5lIEVWUF9LREZfSEtE RiAgICAgICBOSURfaGtkZgotKyMgZGVmaW5lIEVWUF9LREZfU1NIS0RGICAgICBOSURfc3Noa2Rm Ci0gCi0gRVZQX0tERl9DVFggKkVWUF9LREZfQ1RYX25ld19pZChpbnQgaWQpOwotIHZvaWQgRVZQ X0tERl9DVFhfZnJlZShFVlBfS0RGX0NUWCAqY3R4KTsKLUBAIC00NywxMSArNDgsMjAgQEAgaW50 IEVWUF9LREZfZGVyaXZlKEVWUF9LREZfQ1RYICpjdHgsIHVuc2lnbmVkIGNoYXIgKmtleSwgc2l6 ZV90IGtleWxlbik7Ci0gIyBkZWZpbmUgRVZQX0tERl9DVFJMX1NFVF9TQ1JZUFRfTiAgICAgIDB4 MGQgLyogdWludDY0X3QgKi8KLSAjIGRlZmluZSBFVlBfS0RGX0NUUkxfU0VUX1NDUllQVF9SICAg ICAgMHgwZSAvKiB1aW50MzJfdCAqLwotICMgZGVmaW5lIEVWUF9LREZfQ1RSTF9TRVRfU0NSWVBU X1AgICAgICAweDBmIC8qIHVpbnQzMl90ICovCi0rIyBkZWZpbmUgRVZQX0tERl9DVFJMX1NFVF9T U0hLREZfWENHSEFTSCAgICAweDEwIC8qIHVuc2lnbmVkIGNoYXIgKiwgc2l6ZV90ICovCi0rIyBk ZWZpbmUgRVZQX0tERl9DVFJMX1NFVF9TU0hLREZfU0VTU0lPTl9JRCAweDExIC8qIHVuc2lnbmVk IGNoYXIgKiwgc2l6ZV90ICovCi0rIyBkZWZpbmUgRVZQX0tERl9DVFJMX1NFVF9TU0hLREZfVFlQ RSAgICAgICAweDEyIC8qIGludCAqLwotIAotICMgZGVmaW5lIEVWUF9LREZfSEtERl9NT0RFX0VY VFJBQ1RfQU5EX0VYUEFORCAgMAotICMgZGVmaW5lIEVWUF9LREZfSEtERl9NT0RFX0VYVFJBQ1Rf T05MWSAgICAgICAgMQotICMgZGVmaW5lIEVWUF9LREZfSEtERl9NT0RFX0VYUEFORF9PTkxZICAg ICAgICAgMgotIAotKyNkZWZpbmUgRVZQX0tERl9TU0hLREZfVFlQRV9JTklUSUFMX0lWX0NMSV9U T19TUlYgNjUKLSsjZGVmaW5lIEVWUF9LREZfU1NIS0RGX1RZUEVfSU5JVElBTF9JVl9TUlZfVE9f Q0xJIDY2Ci0rI2RlZmluZSBFVlBfS0RGX1NTSEtERl9UWVBFX0VOQ1JZUFRJT05fS0VZX0NMSV9U T19TUlYgNjcKLSsjZGVmaW5lIEVWUF9LREZfU1NIS0RGX1RZUEVfRU5DUllQVElPTl9LRVlfU1JW X1RPX0NMSSA2OAotKyNkZWZpbmUgRVZQX0tERl9TU0hLREZfVFlQRV9JTlRFR1JJVFlfS0VZX0NM SV9UT19TUlYgNjkKLSsjZGVmaW5lIEVWUF9LREZfU1NIS0RGX1RZUEVfSU5URUdSSVRZX0tFWV9T UlZfVE9fQ0xJIDcwCi0gCi0gLyoqKiogVGhlIGxlZ2FjeSBQS0VZLWJhc2VkIEtERiBBUEkgZm9s bG93cy4gKioqKi8KLSAKLWRpZmYgLS1naXQgYS9pbmNsdWRlL29wZW5zc2wva2RmZXJyLmggYi9p bmNsdWRlL29wZW5zc2wva2RmZXJyLmgKLWluZGV4IDAxOTFmMmIyMWQuLmZmMTNjY2I2NDkgMTAw NjQ0Ci0tLS0gYS9pbmNsdWRlL29wZW5zc2wva2RmZXJyLmgKLSsrKyBiL2luY2x1ZGUvb3BlbnNz bC9rZGZlcnIuaAotQEAgLTMyLDYgKzMyLDEwIEBAIGludCBFUlJfbG9hZF9LREZfc3RyaW5ncyh2 b2lkKTsKLSAjIGRlZmluZSBLREZfRl9LREZfU0NSWVBUX0NUUkxfVUlOVDY0ICAgICAgICAgICAg ICAgICAgICAgMTIyCi0gIyBkZWZpbmUgS0RGX0ZfS0RGX1NDUllQVF9ERVJJVkUgICAgICAgICAg ICAgICAgICAgICAgICAgIDEyMwotICMgZGVmaW5lIEtERl9GX0tERl9TQ1JZUFRfTkVXICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAxMjQKLSsjIGRlZmluZSBLREZfRl9LREZfU1NIS0RGX0NU UkwgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMwCi0rIyBkZWZpbmUgS0RGX0ZfS0RGX1NT SEtERl9DVFJMX1NUUiAgICAgICAgICAgICAgICAgICAgICAgIDEzMQotKyMgZGVmaW5lIEtERl9G X0tERl9TU0hLREZfREVSSVZFICAgICAgICAgICAgICAgICAgICAgICAgICAxMzIKLSsjIGRlZmlu ZSBLREZfRl9LREZfU1NIS0RGX05FVyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTMzCi0g IyBkZWZpbmUgS0RGX0ZfS0RGX1RMUzFfUFJGX0NUUkxfU1RSICAgICAgICAgICAgICAgICAgICAg IDEyNQotICMgZGVmaW5lIEtERl9GX0tERl9UTFMxX1BSRl9ERVJJVkUgICAgICAgICAgICAgICAg ICAgICAgICAxMjYKLSAjIGRlZmluZSBLREZfRl9LREZfVExTMV9QUkZfTkVXICAgICAgICAgICAg ICAgICAgICAgICAgICAgMTI3Ci1AQCAtNjIsNiArNjYsOSBAQCBpbnQgRVJSX2xvYWRfS0RGX3N0 cmluZ3Modm9pZCk7Ci0gIyBkZWZpbmUgS0RGX1JfTUlTU0lOR19TQUxUICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDExMQotICMgZGVmaW5lIEtERl9SX01JU1NJTkdfU0VDUkVUICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAxMDcKLSAjIGRlZmluZSBLREZfUl9NSVNTSU5HX1NFRUQg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTA2Ci0rIyBkZWZpbmUgS0RGX1JfTUlTU0lO R19TRVNTSU9OX0lEICAgICAgICAgICAgICAgICAgICAgICAgIDExMwotKyMgZGVmaW5lIEtERl9S X01JU1NJTkdfVFlQRSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMTQKLSsjIGRlZmlu ZSBLREZfUl9NSVNTSU5HX1hDR0hBU0ggICAgICAgICAgICAgICAgICAgICAgICAgICAgMTE1Ci0g IyBkZWZpbmUgS0RGX1JfVU5LTk9XTl9QQVJBTUVURVJfVFlQRSAgICAgICAgICAgICAgICAgICAg IDEwMwotICMgZGVmaW5lIEtERl9SX1ZBTFVFX0VSUk9SICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAxMDgKLSAjIGRlZmluZSBLREZfUl9WQUxVRV9NSVNTSU5HICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMTAyCi1kaWZmIC0tZ2l0IGEvaW5jbHVkZS9vcGVuc3NsL29ial9tYWMu aCBiL2luY2x1ZGUvb3BlbnNzbC9vYmpfbWFjLmgKLWluZGV4IDMxZmFkNDY0MGYuLmJhZjJiZDhk YjQgMTAwNjQ0Ci0tLS0gYS9pbmNsdWRlL29wZW5zc2wvb2JqX21hYy5oCi0rKysgYi9pbmNsdWRl L29wZW5zc2wvb2JqX21hYy5oCi1AQCAtNDk3MCw2ICs0OTcwLDEwIEBACi0gI2RlZmluZSBMTl9o a2RmICAgICAgICAgImhrZGYiCi0gI2RlZmluZSBOSURfaGtkZiAgICAgICAgICAgICAgICAxMDM2 Ci0gCi0rI2RlZmluZSBTTl9zc2hrZGYgICAgICAgICAgICAgICAiU1NIS0RGIgotKyNkZWZpbmUg TE5fc3Noa2RmICAgICAgICAgICAgICAgInNzaGtkZiIKLSsjZGVmaW5lIE5JRF9zc2hrZGYgICAg ICAgICAgICAgIDEyMDMKLSsKLSAjZGVmaW5lIFNOX2lkX3BraW5pdCAgICAgICAgICAgICJpZC1w a2luaXQiCi0gI2RlZmluZSBOSURfaWRfcGtpbml0ICAgICAgICAgICAxMDMxCi0gI2RlZmluZSBP QkpfaWRfcGtpbml0ICAgICAgICAgICAxTCwzTCw2TCwxTCw1TCwyTCwzTAotZGlmZiAtLWdpdCBh L3Rlc3QvcmVjaXBlcy8zMC10ZXN0X2V2cF9kYXRhL2V2cGtkZi50eHQgYi90ZXN0L3JlY2lwZXMv MzAtdGVzdF9ldnBfZGF0YS9ldnBrZGYudHh0Ci1pbmRleCAyODVjNDMxMWE2Li43ZjJkY2QyMjkx IDEwMDY0NAotLS0tIGEvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwa2RmLnR4dAot KysrIGIvdGVzdC9yZWNpcGVzLzMwLXRlc3RfZXZwX2RhdGEvZXZwa2RmLnR4dAotQEAgLTQzMywz ICs0MzMsNDg1NiBAQCBDdHJsLml0ZXIgPSBpdGVyOjEKLSBDdHJsLmRpZ2VzdCA9IGRpZ2VzdDpz aGE1MTIKLSBPdXRwdXQgPSAwMGVmNDJjZGJmYzk4ZDI5ZGIyMDk3NjYwOGU0NTU1NjdmZGRkZjE0 Ci0gCi0rVGl0bGUgPSBTU0hLREYgdGVzdHMgKGZyb20gTklTVCBDQVZTIDE0LjEgdGVzdCB2ZWN0 b3JzKQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODA1NWJhZTkzMWMwN2ZkODI0YmYxMGFkZDE5MDJiNmZiYzdjNjY1MzQ3 MzgzNDk4YTY4NjkyOWZmNWEyNWY4ZTQwY2I2NjQ1ZWE4MTRmYjFhNWUwYTExZjg1MmY4NjI1NTY0 MWU1ZWQ5ODZlODNhNzhiYzgyNjk0ODBlYWMwYjBkZmQ3NzBjYWI5MmU3YTI4ZGQ4N2ZmNDUyNDY2 ZDZhZTg2N2NlYWQ2M2IzNjZiMWMyODZlNmM0ODExYTlmMTRjMjdhZWExNGM1MTcxZDQ5Yjc4YzA2 ZTM3MzVkMzZlNmEzYmUzMjFkZDVmYzgyMzA4ZjM0ZWUxY2IxN2ZiYTk0YTU5Ci0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDphNGViZDQ1OTM0ZjU2NzkyYjUxMTJkY2Q3NWExMDc1ZmRjODg5 MjQ1Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphNGViZDQ1OTM0ZjU2Nzky YjUxMTJkY2Q3NWExMDc1ZmRjODg5MjQ1Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0g ZTJmNjI3YzBiNDNmMWFjMQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA1NWJhZTkzMWMwN2ZkODI0YmYxMGFkZDE5MDJi NmZiYzdjNjY1MzQ3MzgzNDk4YTY4NjkyOWZmNWEyNWY4ZTQwY2I2NjQ1ZWE4MTRmYjFhNWUwYTEx Zjg1MmY4NjI1NTY0MWU1ZWQ5ODZlODNhNzhiYzgyNjk0ODBlYWMwYjBkZmQ3NzBjYWI5MmU3YTI4 ZGQ4N2ZmNDUyNDY2ZDZhZTg2N2NlYWQ2M2IzNjZiMWMyODZlNmM0ODExYTlmMTRjMjdhZWExNGM1 MTcxZDQ5Yjc4YzA2ZTM3MzVkMzZlNmEzYmUzMjFkZDVmYzgyMzA4ZjM0ZWUxY2IxN2ZiYTk0YTU5 Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDphNGViZDQ1OTM0ZjU2NzkyYjUxMTJkY2Q3 NWExMDc1ZmRjODg5MjQ1Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphNGVi ZDQ1OTM0ZjU2NzkyYjUxMTJkY2Q3NWExMDc1ZmRjODg5MjQ1Ci0rQ3RybC50eXBlID0gdHlwZTpC Ci0rT3V0cHV0ID0gNTg0NzE0NDVmMzQyYjE4MQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA1NWJhZTkzMWMwN2ZkODI0 YmYxMGFkZDE5MDJiNmZiYzdjNjY1MzQ3MzgzNDk4YTY4NjkyOWZmNWEyNWY4ZTQwY2I2NjQ1ZWE4 MTRmYjFhNWUwYTExZjg1MmY4NjI1NTY0MWU1ZWQ5ODZlODNhNzhiYzgyNjk0ODBlYWMwYjBkZmQ3 NzBjYWI5MmU3YTI4ZGQ4N2ZmNDUyNDY2ZDZhZTg2N2NlYWQ2M2IzNjZiMWMyODZlNmM0ODExYTlm MTRjMjdhZWExNGM1MTcxZDQ5Yjc4YzA2ZTM3MzVkMzZlNmEzYmUzMjFkZDVmYzgyMzA4ZjM0ZWUx Y2IxN2ZiYTk0YTU5Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDphNGViZDQ1OTM0ZjU2 NzkyYjUxMTJkY2Q3NWExMDc1ZmRjODg5MjQ1Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDphNGViZDQ1OTM0ZjU2NzkyYjUxMTJkY2Q3NWExMDc1ZmRjODg5MjQ1Ci0rQ3RybC50 eXBlID0gdHlwZTpDCi0rT3V0cHV0ID0gMWNhOWQzMTBmODZkNTFmNmNiOGU3MDA3Y2IyYjIyMGQ1 NWM1MjgxY2U2ODBiNTMzCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStD dHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDU1YmFlOTMxYzA3ZmQ4MjRiZjEwYWRkMTkwMmI2 ZmJjN2M2NjUzNDczODM0OThhNjg2OTI5ZmY1YTI1ZjhlNDBjYjY2NDVlYTgxNGZiMWE1ZTBhMTFm ODUyZjg2MjU1NjQxZTVlZDk4NmU4M2E3OGJjODI2OTQ4MGVhYzBiMGRmZDc3MGNhYjkyZTdhMjhk ZDg3ZmY0NTI0NjZkNmFlODY3Y2VhZDYzYjM2NmIxYzI4NmU2YzQ4MTFhOWYxNGMyN2FlYTE0YzUx NzFkNDliNzhjMDZlMzczNWQzNmU2YTNiZTMyMWRkNWZjODIzMDhmMzRlZTFjYjE3ZmJhOTRhNTkK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmE0ZWJkNDU5MzRmNTY3OTJiNTExMmRjZDc1 YTEwNzVmZGM4ODkyNDUKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmE0ZWJk NDU5MzRmNTY3OTJiNTExMmRjZDc1YTEwNzVmZGM4ODkyNDUKLStDdHJsLnR5cGUgPSB0eXBlOkQK LStPdXRwdXQgPSAyYzYwZGY4NjAzZDM0Y2MxZGJiMDNjMTFmNzI1YTQ0YjQ0MDA4ODUxYzczZDY4 NDQKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMDgwNTViYWU5MzFjMDdmZDgyNGJmMTBhZGQxOTAyYjZmYmM3YzY2NTM0NzM4 MzQ5OGE2ODY5MjlmZjVhMjVmOGU0MGNiNjY0NWVhODE0ZmIxYTVlMGExMWY4NTJmODYyNTU2NDFl NWVkOTg2ZTgzYTc4YmM4MjY5NDgwZWFjMGIwZGZkNzcwY2FiOTJlN2EyOGRkODdmZjQ1MjQ2NmQ2 YWU4NjdjZWFkNjNiMzY2YjFjMjg2ZTZjNDgxMWE5ZjE0YzI3YWVhMTRjNTE3MWQ0OWI3OGMwNmUz NzM1ZDM2ZTZhM2JlMzIxZGQ1ZmM4MjMwOGYzNGVlMWNiMTdmYmE5NGE1OQotK0N0cmwuaGV4eGNn aGFzaCA9IGhleHhjZ2hhc2g6YTRlYmQ0NTkzNGY1Njc5MmI1MTEyZGNkNzVhMTA3NWZkYzg4OTI0 NQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTRlYmQ0NTkzNGY1Njc5MmI1 MTEyZGNkNzVhMTA3NWZkYzg4OTI0NQotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IDQ3 MmViOGEyNjE2NmFlNmFhOGUwNjg2OGU0NWMzYjI2ZTZlZWVkMDYKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwNTViYWU5 MzFjMDdmZDgyNGJmMTBhZGQxOTAyYjZmYmM3YzY2NTM0NzM4MzQ5OGE2ODY5MjlmZjVhMjVmOGU0 MGNiNjY0NWVhODE0ZmIxYTVlMGExMWY4NTJmODYyNTU2NDFlNWVkOTg2ZTgzYTc4YmM4MjY5NDgw ZWFjMGIwZGZkNzcwY2FiOTJlN2EyOGRkODdmZjQ1MjQ2NmQ2YWU4NjdjZWFkNjNiMzY2YjFjMjg2 ZTZjNDgxMWE5ZjE0YzI3YWVhMTRjNTE3MWQ0OWI3OGMwNmUzNzM1ZDM2ZTZhM2JlMzIxZGQ1ZmM4 MjMwOGYzNGVlMWNiMTdmYmE5NGE1OQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YTRl YmQ0NTkzNGY1Njc5MmI1MTEyZGNkNzVhMTA3NWZkYzg4OTI0NQotK0N0cmwuaGV4c2Vzc2lvbl9p ZCA9IGhleHNlc3Npb25faWQ6YTRlYmQ0NTkzNGY1Njc5MmI1MTEyZGNkNzVhMTA3NWZkYzg4OTI0 NQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGUzZTJmZGI5ZDdiYzIxMTY1YTNkYmU0 N2UxZWNlYjc3NjQzOTBiYWIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBlYzZmMmM1ZjA1MTdmZDkyZjczMDU2N2Jk NzgzMTM4MzAyOTE3YzI3NzU1MmIxYjNmZGYyYjY3ZDZlZGI2ZmE4MWJkMTdmN2ViYmUzMzliNTRi MTcxMzQxZTY1MjJiOTE2MTFmODI3NGNjODg2NTJhNDU4ZjgwNDEyNjEwNDA4MThhMjY4NDk3ZTk0 OWUxMmY1NzI3MTMxOGIyYjMxOTRjMjk3NjBjYmI3NjdjMGZjODgzM2IyNzI5OTRlMTg2ODJkYTgw N2U2YzlmMjM1ZDg4ZWY4OWMyMDNjNmY3NTZkMjVjYzJiZWExOTliMDJjOTU1YjhiNDBjYmMwNGY5 MjA4Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDplZTQwZWVmNjFiZWEzZGE4YzJiMWNl YzQwZmM0Y2RhYzg5MmEyNjI2Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpj YTlhYWQyNDRlMjQ3OTdmZDM0OGQxMjUwMzg3YzhhYTQ1YTAxMTBhCi0rQ3RybC50eXBlID0gdHlw ZTpBCi0rT3V0cHV0ID0gNTVhMTAxNTc1N2RlODRjYgotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGVjNmYyYzVmMDUx N2ZkOTJmNzMwNTY3YmQ3ODMxMzgzMDI5MTdjMjc3NTUyYjFiM2ZkZjJiNjdkNmVkYjZmYTgxYmQx N2Y3ZWJiZTMzOWI1NGIxNzEzNDFlNjUyMmI5MTYxMWY4Mjc0Y2M4ODY1MmE0NThmODA0MTI2MTA0 MDgxOGEyNjg0OTdlOTQ5ZTEyZjU3MjcxMzE4YjJiMzE5NGMyOTc2MGNiYjc2N2MwZmM4ODMzYjI3 Mjk5NGUxODY4MmRhODA3ZTZjOWYyMzVkODhlZjg5YzIwM2M2Zjc1NmQyNWNjMmJlYTE5OWIwMmM5 NTViOGI0MGNiYzA0ZjkyMDgKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmVlNDBlZWY2 MWJlYTNkYThjMmIxY2VjNDBmYzRjZGFjODkyYTI2MjYKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOmNhOWFhZDI0NGUyNDc5N2ZkMzQ4ZDEyNTAzODdjOGFhNDVhMDExMGEKLStD dHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA3ZTU3ZjYxZDU3MzVmNGZiCi0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4 MTAwZWM2ZjJjNWYwNTE3ZmQ5MmY3MzA1NjdiZDc4MzEzODMwMjkxN2MyNzc1NTJiMWIzZmRmMmI2 N2Q2ZWRiNmZhODFiZDE3ZjdlYmJlMzM5YjU0YjE3MTM0MWU2NTIyYjkxNjExZjgyNzRjYzg4NjUy YTQ1OGY4MDQxMjYxMDQwODE4YTI2ODQ5N2U5NDllMTJmNTcyNzEzMThiMmIzMTk0YzI5NzYwY2Ji NzY3YzBmYzg4MzNiMjcyOTk0ZTE4NjgyZGE4MDdlNmM5ZjIzNWQ4OGVmODljMjAzYzZmNzU2ZDI1 Y2MyYmVhMTk5YjAyYzk1NWI4YjQwY2JjMDRmOTIwOAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6ZWU0MGVlZjYxYmVhM2RhOGMyYjFjZWM0MGZjNGNkYWM4OTJhMjYyNgotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6Y2E5YWFkMjQ0ZTI0Nzk3ZmQzNDhkMTI1MDM4N2M4 YWE0NWEwMTEwYQotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IGRkMWMyNGJkZTFhZjg0 NWU4MjIwNzU0MWUzZTE3M2FlYzgyMmZiOTA0YTk0YWUzYwotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGVjNmYyYzVm MDUxN2ZkOTJmNzMwNTY3YmQ3ODMxMzgzMDI5MTdjMjc3NTUyYjFiM2ZkZjJiNjdkNmVkYjZmYTgx YmQxN2Y3ZWJiZTMzOWI1NGIxNzEzNDFlNjUyMmI5MTYxMWY4Mjc0Y2M4ODY1MmE0NThmODA0MTI2 MTA0MDgxOGEyNjg0OTdlOTQ5ZTEyZjU3MjcxMzE4YjJiMzE5NGMyOTc2MGNiYjc2N2MwZmM4ODMz YjI3Mjk5NGUxODY4MmRhODA3ZTZjOWYyMzVkODhlZjg5YzIwM2M2Zjc1NmQyNWNjMmJlYTE5OWIw MmM5NTViOGI0MGNiYzA0ZjkyMDgKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmVlNDBl ZWY2MWJlYTNkYThjMmIxY2VjNDBmYzRjZGFjODkyYTI2MjYKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOmNhOWFhZDI0NGUyNDc5N2ZkMzQ4ZDEyNTAzODdjOGFhNDVhMDExMGEK LStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBjYmJmZGM5NDQyYWY2ZGI3ZjhjNGRjYWE0 YjBiNWQwMTYzZTBlMjA0NDc2YWEyYTAKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6 U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBlYzZmMmM1ZjA1MTdmZDkyZjcz MDU2N2JkNzgzMTM4MzAyOTE3YzI3NzU1MmIxYjNmZGYyYjY3ZDZlZGI2ZmE4MWJkMTdmN2ViYmUz MzliNTRiMTcxMzQxZTY1MjJiOTE2MTFmODI3NGNjODg2NTJhNDU4ZjgwNDEyNjEwNDA4MThhMjY4 NDk3ZTk0OWUxMmY1NzI3MTMxOGIyYjMxOTRjMjk3NjBjYmI3NjdjMGZjODgzM2IyNzI5OTRlMTg2 ODJkYTgwN2U2YzlmMjM1ZDg4ZWY4OWMyMDNjNmY3NTZkMjVjYzJiZWExOTliMDJjOTU1YjhiNDBj YmMwNGY5MjA4Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDplZTQwZWVmNjFiZWEzZGE4 YzJiMWNlYzQwZmM0Y2RhYzg5MmEyNjI2Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDpjYTlhYWQyNDRlMjQ3OTdmZDM0OGQxMjUwMzg3YzhhYTQ1YTAxMTBhCi0rQ3RybC50eXBl ID0gdHlwZTpFCi0rT3V0cHV0ID0gZTE1M2UwNDg4NmMwZGM0NDZkZGU5YTliM2IxM2VmYjc3MTUx NzY0ZAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODEwMGVjNmYyYzVmMDUxN2ZkOTJmNzMwNTY3YmQ3ODMxMzgzMDI5MTdj Mjc3NTUyYjFiM2ZkZjJiNjdkNmVkYjZmYTgxYmQxN2Y3ZWJiZTMzOWI1NGIxNzEzNDFlNjUyMmI5 MTYxMWY4Mjc0Y2M4ODY1MmE0NThmODA0MTI2MTA0MDgxOGEyNjg0OTdlOTQ5ZTEyZjU3MjcxMzE4 YjJiMzE5NGMyOTc2MGNiYjc2N2MwZmM4ODMzYjI3Mjk5NGUxODY4MmRhODA3ZTZjOWYyMzVkODhl Zjg5YzIwM2M2Zjc1NmQyNWNjMmJlYTE5OWIwMmM5NTViOGI0MGNiYzA0ZjkyMDgKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmVlNDBlZWY2MWJlYTNkYThjMmIxY2VjNDBmYzRjZGFjODky YTI2MjYKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmNhOWFhZDI0NGUyNDc5 N2ZkMzQ4ZDEyNTAzODdjOGFhNDVhMDExMGEKLStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQg PSBjOGU0ZjYxYmQ2YjVhYmIyYzZlMDZlY2E3YjMwMjM0OTQzNWU0ODQyCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAw YTNiZWViZmY0MTBhN2NkYzBhYzU2ZGFkMDE1MmE3ZjZkYTZiMWQ0MTk1Mjg1Y2U5NmY4YjU5OTMw ZDhjM2NjYmM1MThiYzA0M2ViNjAzNjIzODhlYTg3YzIwZGIzYjQ5MGI0OTBiYTliOTBmMDg2MDA0 YmEzZTM4OWNiM2E3MTVkNDc3YzJiMWU0ODBlMzQxOWMzNmNkODNlMjM3ZTI0MTQ2MmVlNzk3NThm NGZmNWJmN2E1ZTFlYWU1OGE2ODM0Nzc4YTY1OGM2MGIyZTE1N2QzNmIxNjM3MWY5NzY2MGFkNGFi ZmQ0YTI3MDNkYmE3Y2FiMDU1YmU0Yzc3OGI2MgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6YjgxOTE1YTk2NTYxMjhkMmFkZDVlNTc0MTkxNGQ3NjUyMjZmOTNlMgotK0N0cmwuaGV4c2Vz c2lvbl9pZCA9IGhleHNlc3Npb25faWQ6Mjg3MmUwYzkyZmMzMDc0ZDRmNDBlNDA4YTJlYmQ4M2Uy ZmM3YmNjZAotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IDA1NGVhZjVkN2RlYTMxZTcK LSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMDgxMDBhM2JlZWJmZjQxMGE3Y2RjMGFjNTZkYWQwMTUyYTdmNmRhNmIxZDQxOTUy ODVjZTk2ZjhiNTk5MzBkOGMzY2NiYzUxOGJjMDQzZWI2MDM2MjM4OGVhODdjMjBkYjNiNDkwYjQ5 MGJhOWI5MGYwODYwMDRiYTNlMzg5Y2IzYTcxNWQ0NzdjMmIxZTQ4MGUzNDE5YzM2Y2Q4M2UyMzdl MjQxNDYyZWU3OTc1OGY0ZmY1YmY3YTVlMWVhZTU4YTY4MzQ3NzhhNjU4YzYwYjJlMTU3ZDM2YjE2 MzcxZjk3NjYwYWQ0YWJmZDRhMjcwM2RiYTdjYWIwNTViZTRjNzc4YjYyCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDpiODE5MTVhOTY1NjEyOGQyYWRkNWU1NzQxOTE0ZDc2NTIyNmY5M2Uy Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoyODcyZTBjOTJmYzMwNzRkNGY0 MGU0MDhhMmViZDgzZTJmYzdiY2NkCi0rQ3RybC50eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0gNmNl NTg2YzEyN2RhMDEwZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGEzYmVlYmZmNDEwYTdjZGMwYWM1NmRhZDAxNTJh N2Y2ZGE2YjFkNDE5NTI4NWNlOTZmOGI1OTkzMGQ4YzNjY2JjNTE4YmMwNDNlYjYwMzYyMzg4ZWE4 N2MyMGRiM2I0OTBiNDkwYmE5YjkwZjA4NjAwNGJhM2UzODljYjNhNzE1ZDQ3N2MyYjFlNDgwZTM0 MTljMzZjZDgzZTIzN2UyNDE0NjJlZTc5NzU4ZjRmZjViZjdhNWUxZWFlNThhNjgzNDc3OGE2NThj NjBiMmUxNTdkMzZiMTYzNzFmOTc2NjBhZDRhYmZkNGEyNzAzZGJhN2NhYjA1NWJlNGM3NzhiNjIK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmI4MTkxNWE5NjU2MTI4ZDJhZGQ1ZTU3NDE5 MTRkNzY1MjI2ZjkzZTIKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjI4NzJl MGM5MmZjMzA3NGQ0ZjQwZTQwOGEyZWJkODNlMmZjN2JjY2QKLStDdHJsLnR5cGUgPSB0eXBlOkMK LStPdXRwdXQgPSA3OTA3YmYzZDdjNThjZTcyNzE0YjJhZGIxYTE0ZjE1NjE5NGIxNDM3OGE0YTdj NDkKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMDgxMDBhM2JlZWJmZjQxMGE3Y2RjMGFjNTZkYWQwMTUyYTdmNmRhNmIxZDQx OTUyODVjZTk2ZjhiNTk5MzBkOGMzY2NiYzUxOGJjMDQzZWI2MDM2MjM4OGVhODdjMjBkYjNiNDkw YjQ5MGJhOWI5MGYwODYwMDRiYTNlMzg5Y2IzYTcxNWQ0NzdjMmIxZTQ4MGUzNDE5YzM2Y2Q4M2Uy MzdlMjQxNDYyZWU3OTc1OGY0ZmY1YmY3YTVlMWVhZTU4YTY4MzQ3NzhhNjU4YzYwYjJlMTU3ZDM2 YjE2MzcxZjk3NjYwYWQ0YWJmZDRhMjcwM2RiYTdjYWIwNTViZTRjNzc4YjYyCi0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDpiODE5MTVhOTY1NjEyOGQyYWRkNWU1NzQxOTE0ZDc2NTIyNmY5 M2UyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoyODcyZTBjOTJmYzMwNzRk NGY0MGU0MDhhMmViZDgzZTJmYzdiY2NkCi0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0g YzM0NzU3ZGMxMDRlN2I4MTFmNjU1MGJiYzM4ODhlMWQ0Mjk3NTc4ZmQ4OGIyY2E1Ci0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDA4MTAwYTNiZWViZmY0MTBhN2NkYzBhYzU2ZGFkMDE1MmE3ZjZkYTZiMWQ0MTk1Mjg1Y2U5NmY4 YjU5OTMwZDhjM2NjYmM1MThiYzA0M2ViNjAzNjIzODhlYTg3YzIwZGIzYjQ5MGI0OTBiYTliOTBm MDg2MDA0YmEzZTM4OWNiM2E3MTVkNDc3YzJiMWU0ODBlMzQxOWMzNmNkODNlMjM3ZTI0MTQ2MmVl Nzk3NThmNGZmNWJmN2E1ZTFlYWU1OGE2ODM0Nzc4YTY1OGM2MGIyZTE1N2QzNmIxNjM3MWY5NzY2 MGFkNGFiZmQ0YTI3MDNkYmE3Y2FiMDU1YmU0Yzc3OGI2MgotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6YjgxOTE1YTk2NTYxMjhkMmFkZDVlNTc0MTkxNGQ3NjUyMjZmOTNlMgotK0N0cmwu aGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6Mjg3MmUwYzkyZmMzMDc0ZDRmNDBlNDA4YTJl YmQ4M2UyZmM3YmNjZAotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IGU0NjNlMDVlZjcw ZTYxZjk5NGVlM2NkMjBkNTA0Y2I2ZWRkYjliMWEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1k ID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBhM2JlZWJmZjQxMGE3 Y2RjMGFjNTZkYWQwMTUyYTdmNmRhNmIxZDQxOTUyODVjZTk2ZjhiNTk5MzBkOGMzY2NiYzUxOGJj MDQzZWI2MDM2MjM4OGVhODdjMjBkYjNiNDkwYjQ5MGJhOWI5MGYwODYwMDRiYTNlMzg5Y2IzYTcx NWQ0NzdjMmIxZTQ4MGUzNDE5YzM2Y2Q4M2UyMzdlMjQxNDYyZWU3OTc1OGY0ZmY1YmY3YTVlMWVh ZTU4YTY4MzQ3NzhhNjU4YzYwYjJlMTU3ZDM2YjE2MzcxZjk3NjYwYWQ0YWJmZDRhMjcwM2RiYTdj YWIwNTViZTRjNzc4YjYyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpiODE5MTVhOTY1 NjEyOGQyYWRkNWU1NzQxOTE0ZDc2NTIyNmY5M2UyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDoyODcyZTBjOTJmYzMwNzRkNGY0MGU0MDhhMmViZDgzZTJmYzdiY2NkCi0rQ3Ry bC50eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gNjc2Y2YxZGZjODg3ZTEyMjM1M2VlYWQyYjFlNjQ0 ZjlkOWRlZjk0NAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAxNzM1N2RlNjAzNDRhMTI1Y2E0MWQ5ZWE1MWViMzA0YTU3 MWQ3ZjBhYTM3YTVlMzZkNGI3YTU0NzM1NDZmNzIyNjU4M2NlZmU3YzA2ZjZmOTRiOTdkYTBkYTI1 MTcxOTBmYTAyYTAzMzdhM2JjOWRkZmVlYjY4Yjk1MzYxM2Q0ZDVlNDczNzgzZjEzN2E4MjI0NmI4 MjYwZmIzNDUxMzYzYWRkYTE4MTNhY2RmNmIxMDg2MWUwMjJlMjNhMDBkYjliNWE4OTNmY2VmZDZi NjQ3ZjZhNzM5MDRhYTljM2I1M2U1ZDg3OWQ3ZTg0ZjA1MmRmYWJlMTVhMjdjMWYzYWE5Ci0rQ3Ry bC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyOGZjZjNiYzYwMGY2YmIwYjk1OTRiMDEyODNkMDg1 ZTE0OWIyNTg2Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo0ZDZiOTA5ODhk ZTQ1ZGZkMDhlODE2NzUwNGE2MjUzYTg1NTJjMjAwCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0 cHV0ID0gYmM0YjUxNjQ5MTFiYzg3YgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpT SEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAxNzM1N2RlNjAzNDRhMTI1Y2E0MWQ5 ZWE1MWViMzA0YTU3MWQ3ZjBhYTM3YTVlMzZkNGI3YTU0NzM1NDZmNzIyNjU4M2NlZmU3YzA2ZjZm OTRiOTdkYTBkYTI1MTcxOTBmYTAyYTAzMzdhM2JjOWRkZmVlYjY4Yjk1MzYxM2Q0ZDVlNDczNzgz ZjEzN2E4MjI0NmI4MjYwZmIzNDUxMzYzYWRkYTE4MTNhY2RmNmIxMDg2MWUwMjJlMjNhMDBkYjli NWE4OTNmY2VmZDZiNjQ3ZjZhNzM5MDRhYTljM2I1M2U1ZDg3OWQ3ZTg0ZjA1MmRmYWJlMTVhMjdj MWYzYWE5Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyOGZjZjNiYzYwMGY2YmIwYjk1 OTRiMDEyODNkMDg1ZTE0OWIyNTg2Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDo0ZDZiOTA5ODhkZTQ1ZGZkMDhlODE2NzUwNGE2MjUzYTg1NTJjMjAwCi0rQ3RybC50eXBlID0g dHlwZTpCCi0rT3V0cHV0ID0gZDc5MWM1OTg2YjI3MjU3ZQotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAxNzM1N2RlNjAz NDRhMTI1Y2E0MWQ5ZWE1MWViMzA0YTU3MWQ3ZjBhYTM3YTVlMzZkNGI3YTU0NzM1NDZmNzIyNjU4 M2NlZmU3YzA2ZjZmOTRiOTdkYTBkYTI1MTcxOTBmYTAyYTAzMzdhM2JjOWRkZmVlYjY4Yjk1MzYx M2Q0ZDVlNDczNzgzZjEzN2E4MjI0NmI4MjYwZmIzNDUxMzYzYWRkYTE4MTNhY2RmNmIxMDg2MWUw MjJlMjNhMDBkYjliNWE4OTNmY2VmZDZiNjQ3ZjZhNzM5MDRhYTljM2I1M2U1ZDg3OWQ3ZTg0ZjA1 MmRmYWJlMTVhMjdjMWYzYWE5Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyOGZjZjNi YzYwMGY2YmIwYjk1OTRiMDEyODNkMDg1ZTE0OWIyNTg2Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDo0ZDZiOTA5ODhkZTQ1ZGZkMDhlODE2NzUwNGE2MjUzYTg1NTJjMjAwCi0r Q3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0ID0gZGU4ZTk5YmIzZjYwY2NmMDU4MzcxMjUyOGFh M2RkMDQxOGZkYjkwZDBhNTg4MDEyCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDE3MzU3ZGU2MDM0NGExMjVjYTQxZDll YTUxZWIzMDRhNTcxZDdmMGFhMzdhNWUzNmQ0YjdhNTQ3MzU0NmY3MjI2NTgzY2VmZTdjMDZmNmY5 NGI5N2RhMGRhMjUxNzE5MGZhMDJhMDMzN2EzYmM5ZGRmZWViNjhiOTUzNjEzZDRkNWU0NzM3ODNm MTM3YTgyMjQ2YjgyNjBmYjM0NTEzNjNhZGRhMTgxM2FjZGY2YjEwODYxZTAyMmUyM2EwMGRiOWI1 YTg5M2ZjZWZkNmI2NDdmNmE3MzkwNGFhOWMzYjUzZTVkODc5ZDdlODRmMDUyZGZhYmUxNWEyN2Mx ZjNhYTkKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjI4ZmNmM2JjNjAwZjZiYjBiOTU5 NGIwMTI4M2QwODVlMTQ5YjI1ODYKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OjRkNmI5MDk4OGRlNDVkZmQwOGU4MTY3NTA0YTYyNTNhODU1MmMyMDAKLStDdHJsLnR5cGUgPSB0 eXBlOkQKLStPdXRwdXQgPSBmMzdmNzVhNjg1ZjFlYWY0ZmQyNzBiOTQ2ZDg0NzM0ZTk2YWEzYjRl ZDEzMGFmYzYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMDgwMTczNTdkZTYwMzQ0YTEyNWNhNDFkOWVhNTFlYjMwNGE1NzFk N2YwYWEzN2E1ZTM2ZDRiN2E1NDczNTQ2ZjcyMjY1ODNjZWZlN2MwNmY2Zjk0Yjk3ZGEwZGEyNTE3 MTkwZmEwMmEwMzM3YTNiYzlkZGZlZWI2OGI5NTM2MTNkNGQ1ZTQ3Mzc4M2YxMzdhODIyNDZiODI2 MGZiMzQ1MTM2M2FkZGExODEzYWNkZjZiMTA4NjFlMDIyZTIzYTAwZGI5YjVhODkzZmNlZmQ2YjY0 N2Y2YTczOTA0YWE5YzNiNTNlNWQ4NzlkN2U4NGYwNTJkZmFiZTE1YTI3YzFmM2FhOQotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MjhmY2YzYmM2MDBmNmJiMGI5NTk0YjAxMjgzZDA4NWUx NDliMjU4NgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NGQ2YjkwOTg4ZGU0 NWRmZDA4ZTgxNjc1MDRhNjI1M2E4NTUyYzIwMAotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1 dCA9IDY1OGYwNGIwZjU5YWFiMDcxYjllMTFlYzlmZjE4N2VlMTBlODAyNTQKLSsKLStLREYgPSBT U0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgw MTczNTdkZTYwMzQ0YTEyNWNhNDFkOWVhNTFlYjMwNGE1NzFkN2YwYWEzN2E1ZTM2ZDRiN2E1NDcz NTQ2ZjcyMjY1ODNjZWZlN2MwNmY2Zjk0Yjk3ZGEwZGEyNTE3MTkwZmEwMmEwMzM3YTNiYzlkZGZl ZWI2OGI5NTM2MTNkNGQ1ZTQ3Mzc4M2YxMzdhODIyNDZiODI2MGZiMzQ1MTM2M2FkZGExODEzYWNk ZjZiMTA4NjFlMDIyZTIzYTAwZGI5YjVhODkzZmNlZmQ2YjY0N2Y2YTczOTA0YWE5YzNiNTNlNWQ4 NzlkN2U4NGYwNTJkZmFiZTE1YTI3YzFmM2FhOQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6MjhmY2YzYmM2MDBmNmJiMGI5NTk0YjAxMjgzZDA4NWUxNDliMjU4NgotK0N0cmwuaGV4c2Vz c2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NGQ2YjkwOTg4ZGU0NWRmZDA4ZTgxNjc1MDRhNjI1M2E4 NTUyYzIwMAotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGIwMzA4MDkyMjJmZjdhMTJi MGRmMzUwNzJkNjdmMzE0YWIxZDVlZGEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6 U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwM2MzY2UyYjE5ZTBjYWRmOGFkMDI0 MzhjNjk1ZWZjZDMwMThjODMzNjU3MzE4YmZhZWY3YjljMjc4Y2Q3ZThkN2IzYTIyNDlmOWQ1ODY4 MzJjM2RlZTcyN2FkYTE2NzA1NmZmMWZlYmM5MjEwMTg2YmE0N2NjMWRmYWFmMDgxMDFmYjg5NzQy ZWJmNGYzZTI5MWEyMGM5NGE3YTZmNzg3Nzc5OTE1MWQxNzdlMTYzY2UzZTU3ZWY4NjNjMGNkYTAz MTEyNjVmYmFjMTU3ODc5MTUwYTcxNWUzMDkzOTJiM2U1MjFkY2YwMzIyNDcxN2ZmNWUwMDMwZTQ4 MGYyMGRmZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NDZhNjc0YzUzMjQ2MGE4MGNk YzVjNmRhOWE4YzNiZGY0ZjNmZjYxNAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6YWVkZWI2NGRmNzExOWRiNTMyMDJlOTU5ZGM4NGJlM2U1Mjg1NTEyZAotK0N0cmwudHlwZSA9 IHR5cGU6QQotK091dHB1dCA9IDdhNzRlYzc5OWVmMTY4NjUKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwM2MzY2UyYjE5 ZTBjYWRmOGFkMDI0MzhjNjk1ZWZjZDMwMThjODMzNjU3MzE4YmZhZWY3YjljMjc4Y2Q3ZThkN2Iz YTIyNDlmOWQ1ODY4MzJjM2RlZTcyN2FkYTE2NzA1NmZmMWZlYmM5MjEwMTg2YmE0N2NjMWRmYWFm MDgxMDFmYjg5NzQyZWJmNGYzZTI5MWEyMGM5NGE3YTZmNzg3Nzc5OTE1MWQxNzdlMTYzY2UzZTU3 ZWY4NjNjMGNkYTAzMTEyNjVmYmFjMTU3ODc5MTUwYTcxNWUzMDkzOTJiM2U1MjFkY2YwMzIyNDcx N2ZmNWUwMDMwZTQ4MGYyMGRmZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NDZhNjc0 YzUzMjQ2MGE4MGNkYzVjNmRhOWE4YzNiZGY0ZjNmZjYxNAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6YWVkZWI2NGRmNzExOWRiNTMyMDJlOTU5ZGM4NGJlM2U1Mjg1NTEyZAot K0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDZlNTQ0ZmM2ZGIwY2ExYmEKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MDgwM2MzY2UyYjE5ZTBjYWRmOGFkMDI0MzhjNjk1ZWZjZDMwMThjODMzNjU3MzE4YmZhZWY3Yjlj Mjc4Y2Q3ZThkN2IzYTIyNDlmOWQ1ODY4MzJjM2RlZTcyN2FkYTE2NzA1NmZmMWZlYmM5MjEwMTg2 YmE0N2NjMWRmYWFmMDgxMDFmYjg5NzQyZWJmNGYzZTI5MWEyMGM5NGE3YTZmNzg3Nzc5OTE1MWQx NzdlMTYzY2UzZTU3ZWY4NjNjMGNkYTAzMTEyNjVmYmFjMTU3ODc5MTUwYTcxNWUzMDkzOTJiM2U1 MjFkY2YwMzIyNDcxN2ZmNWUwMDMwZTQ4MGYyMGRmZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6NDZhNjc0YzUzMjQ2MGE4MGNkYzVjNmRhOWE4YzNiZGY0ZjNmZjYxNAotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YWVkZWI2NGRmNzExOWRiNTMyMDJlOTU5ZGM4NGJl M2U1Mjg1NTEyZAotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDY1ODIyNmIxYjEwYjIw MzNmYTg4ODM4YjYxOTU3MmIxOGU4MWU4MGM3NjUwNzkxOAotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAzYzNjZTJiMTll MGNhZGY4YWQwMjQzOGM2OTVlZmNkMzAxOGM4MzM2NTczMThiZmFlZjdiOWMyNzhjZDdlOGQ3YjNh MjI0OWY5ZDU4NjgzMmMzZGVlNzI3YWRhMTY3MDU2ZmYxZmViYzkyMTAxODZiYTQ3Y2MxZGZhYWYw ODEwMWZiODk3NDJlYmY0ZjNlMjkxYTIwYzk0YTdhNmY3ODc3Nzk5MTUxZDE3N2UxNjNjZTNlNTdl Zjg2M2MwY2RhMDMxMTI2NWZiYWMxNTc4NzkxNTBhNzE1ZTMwOTM5MmIzZTUyMWRjZjAzMjI0NzE3 ZmY1ZTAwMzBlNDgwZjIwZGZmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0NmE2NzRj NTMyNDYwYTgwY2RjNWM2ZGE5YThjM2JkZjRmM2ZmNjE0Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDphZWRlYjY0ZGY3MTE5ZGI1MzIwMmU5NTlkYzg0YmUzZTUyODU1MTJkCi0r Q3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gMzI3Mjk4Yzg2NjA2ODVlZmNiMDFjNWMwZGY0 OWZhZWJiMTVjMGU5M2IwZjZjNjVkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDNjM2NlMmIxOWUwY2FkZjhhZDAyNDM4 YzY5NWVmY2QzMDE4YzgzMzY1NzMxOGJmYWVmN2I5YzI3OGNkN2U4ZDdiM2EyMjQ5ZjlkNTg2ODMy YzNkZWU3MjdhZGExNjcwNTZmZjFmZWJjOTIxMDE4NmJhNDdjYzFkZmFhZjA4MTAxZmI4OTc0MmVi ZjRmM2UyOTFhMjBjOTRhN2E2Zjc4Nzc3OTkxNTFkMTc3ZTE2M2NlM2U1N2VmODYzYzBjZGEwMzEx MjY1ZmJhYzE1Nzg3OTE1MGE3MTVlMzA5MzkyYjNlNTIxZGNmMDMyMjQ3MTdmZjVlMDAzMGU0ODBm MjBkZmYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjQ2YTY3NGM1MzI0NjBhODBjZGM1 YzZkYTlhOGMzYmRmNGYzZmY2MTQKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OmFlZGViNjRkZjcxMTlkYjUzMjAyZTk1OWRjODRiZTNlNTI4NTUxMmQKLStDdHJsLnR5cGUgPSB0 eXBlOkUKLStPdXRwdXQgPSA2YjYxOGExMGFlYWExMmM5YThkMmJjYjEwZTk3NTYwNTU4MmMwMGU1 Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhl eGtleTowMDAwMDA4MDNjM2NlMmIxOWUwY2FkZjhhZDAyNDM4YzY5NWVmY2QzMDE4YzgzMzY1NzMx OGJmYWVmN2I5YzI3OGNkN2U4ZDdiM2EyMjQ5ZjlkNTg2ODMyYzNkZWU3MjdhZGExNjcwNTZmZjFm ZWJjOTIxMDE4NmJhNDdjYzFkZmFhZjA4MTAxZmI4OTc0MmViZjRmM2UyOTFhMjBjOTRhN2E2Zjc4 Nzc3OTkxNTFkMTc3ZTE2M2NlM2U1N2VmODYzYzBjZGEwMzExMjY1ZmJhYzE1Nzg3OTE1MGE3MTVl MzA5MzkyYjNlNTIxZGNmMDMyMjQ3MTdmZjVlMDAzMGU0ODBmMjBkZmYKLStDdHJsLmhleHhjZ2hh c2ggPSBoZXh4Y2doYXNoOjQ2YTY3NGM1MzI0NjBhODBjZGM1YzZkYTlhOGMzYmRmNGYzZmY2MTQK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmFlZGViNjRkZjcxMTlkYjUzMjAy ZTk1OWRjODRiZTNlNTI4NTUxMmQKLStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQgPSA2ZDRj ZTUwZGE5ZGU5MGQ2Zjc0NmU4MTJhMmU3NGJjZDkyMWY1NjEyCi0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDc1OTU3ZjQ2 NGY1YTc5ODVlMWEzZmZiN2Q1ODE0ZmY5Y2ViOGZiMTU4NGEzZjVjYzQ1NGMzNzEzOWU5Yjg4MDk0 MDQ0MmNjZTJhZWY5NGQ5ZDA0NjJjNGRjMzEzZWQ3YThjYzNmOWE1OGMzOGE5OGVmMDIzNmUzY2M3 OGZiNjNiNmY4MmU5YzUwMzA5N2I3YTA4ZWYyMjYxZGRhNjhjN2JmZTlmODNhYzc5MGQxZjlmZjU3 NjA1ZDI0ZjRiZGZlZGRlMjNjYzVhYWJiYTI0OGJjOTFkM2ZlMWQ0Mzk0NDg1YmM0NDIxNzMwYTI5 NzY5NGMwOWJkZjAyNGFjMmVhYzMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjBhNzBi NGYyNmIxOTg1ZDQ4ZWNlNTQwZjFkZTYzMDRmZGIzODIxMmYKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOjJmMGNlMGUyZGEyZTJiZjExZWFlMmFiOThlOTczNDQxMmQ0N2ExOWEK LStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSBiNjU1ODM5YWJjYjFhN2I4Ci0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDA4MDc1OTU3ZjQ2NGY1YTc5ODVlMWEzZmZiN2Q1ODE0ZmY5Y2ViOGZiMTU4NGEzZjVjYzQ1NGMz NzEzOWU5Yjg4MDk0MDQ0MmNjZTJhZWY5NGQ5ZDA0NjJjNGRjMzEzZWQ3YThjYzNmOWE1OGMzOGE5 OGVmMDIzNmUzY2M3OGZiNjNiNmY4MmU5YzUwMzA5N2I3YTA4ZWYyMjYxZGRhNjhjN2JmZTlmODNh Yzc5MGQxZjlmZjU3NjA1ZDI0ZjRiZGZlZGRlMjNjYzVhYWJiYTI0OGJjOTFkM2ZlMWQ0Mzk0NDg1 YmM0NDIxNzMwYTI5NzY5NGMwOWJkZjAyNGFjMmVhYzMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOjBhNzBiNGYyNmIxOTg1ZDQ4ZWNlNTQwZjFkZTYzMDRmZGIzODIxMmYKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjJmMGNlMGUyZGEyZTJiZjExZWFlMmFiOThlOTcz NDQxMmQ0N2ExOWEKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA5OGY5ZWM5ODA4MzFh OGJjCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9 IGhleGtleTowMDAwMDA4MDc1OTU3ZjQ2NGY1YTc5ODVlMWEzZmZiN2Q1ODE0ZmY5Y2ViOGZiMTU4 NGEzZjVjYzQ1NGMzNzEzOWU5Yjg4MDk0MDQ0MmNjZTJhZWY5NGQ5ZDA0NjJjNGRjMzEzZWQ3YThj YzNmOWE1OGMzOGE5OGVmMDIzNmUzY2M3OGZiNjNiNmY4MmU5YzUwMzA5N2I3YTA4ZWYyMjYxZGRh NjhjN2JmZTlmODNhYzc5MGQxZjlmZjU3NjA1ZDI0ZjRiZGZlZGRlMjNjYzVhYWJiYTI0OGJjOTFk M2ZlMWQ0Mzk0NDg1YmM0NDIxNzMwYTI5NzY5NGMwOWJkZjAyNGFjMmVhYzMKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjBhNzBiNGYyNmIxOTg1ZDQ4ZWNlNTQwZjFkZTYzMDRmZGIzODIx MmYKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjJmMGNlMGUyZGEyZTJiZjEx ZWFlMmFiOThlOTczNDQxMmQ0N2ExOWEKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAz MWE2M2I2NGNmYThiNmExMmJhMTY1MDk2ZGFkOGQxMjdjZDNmM2I2NzY5OGI2NzAKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MDgwNzU5NTdmNDY0ZjVhNzk4NWUxYTNmZmI3ZDU4MTRmZjljZWI4ZmIxNTg0YTNmNWNjNDU0YzM3 MTM5ZTliODgwOTQwNDQyY2NlMmFlZjk0ZDlkMDQ2MmM0ZGMzMTNlZDdhOGNjM2Y5YTU4YzM4YTk4 ZWYwMjM2ZTNjYzc4ZmI2M2I2ZjgyZTljNTAzMDk3YjdhMDhlZjIyNjFkZGE2OGM3YmZlOWY4M2Fj NzkwZDFmOWZmNTc2MDVkMjRmNGJkZmVkZGUyM2NjNWFhYmJhMjQ4YmM5MWQzZmUxZDQzOTQ0ODVi YzQ0MjE3MzBhMjk3Njk0YzA5YmRmMDI0YWMyZWFjMwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6MGE3MGI0ZjI2YjE5ODVkNDhlY2U1NDBmMWRlNjMwNGZkYjM4MjEyZgotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MmYwY2UwZTJkYTJlMmJmMTFlYWUyYWI5OGU5NzM0 NDEyZDQ3YTE5YQotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDhiZDc5NjMzOTY3Yjky ZjAwMzlhMzhhMmQ0MjFlMTI4NDBlYTVjMzFiNDNjNGU5MAotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA3NTk1N2Y0NjRm NWE3OTg1ZTFhM2ZmYjdkNTgxNGZmOWNlYjhmYjE1ODRhM2Y1Y2M0NTRjMzcxMzllOWI4ODA5NDA0 NDJjY2UyYWVmOTRkOWQwNDYyYzRkYzMxM2VkN2E4Y2MzZjlhNThjMzhhOThlZjAyMzZlM2NjNzhm YjYzYjZmODJlOWM1MDMwOTdiN2EwOGVmMjI2MWRkYTY4YzdiZmU5ZjgzYWM3OTBkMWY5ZmY1NzYw NWQyNGY0YmRmZWRkZTIzY2M1YWFiYmEyNDhiYzkxZDNmZTFkNDM5NDQ4NWJjNDQyMTczMGEyOTc2 OTRjMDliZGYwMjRhYzJlYWMzCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDowYTcwYjRm MjZiMTk4NWQ0OGVjZTU0MGYxZGU2MzA0ZmRiMzgyMTJmCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDoyZjBjZTBlMmRhMmUyYmYxMWVhZTJhYjk4ZTk3MzQ0MTJkNDdhMTlhCi0r Q3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gMzdlY2NhZGU3M2I0MjJkMTEwOGUzOTBlYWEy OGM2NDZiNTU0YTcyMQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA3NTk1N2Y0NjRmNWE3OTg1ZTFhM2ZmYjdkNTgxNGZm OWNlYjhmYjE1ODRhM2Y1Y2M0NTRjMzcxMzllOWI4ODA5NDA0NDJjY2UyYWVmOTRkOWQwNDYyYzRk YzMxM2VkN2E4Y2MzZjlhNThjMzhhOThlZjAyMzZlM2NjNzhmYjYzYjZmODJlOWM1MDMwOTdiN2Ew OGVmMjI2MWRkYTY4YzdiZmU5ZjgzYWM3OTBkMWY5ZmY1NzYwNWQyNGY0YmRmZWRkZTIzY2M1YWFi YmEyNDhiYzkxZDNmZTFkNDM5NDQ4NWJjNDQyMTczMGEyOTc2OTRjMDliZGYwMjRhYzJlYWMzCi0r Q3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDowYTcwYjRmMjZiMTk4NWQ0OGVjZTU0MGYxZGU2 MzA0ZmRiMzgyMTJmCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoyZjBjZTBl MmRhMmUyYmYxMWVhZTJhYjk4ZTk3MzQ0MTJkNDdhMTlhCi0rQ3RybC50eXBlID0gdHlwZTpGCi0r T3V0cHV0ID0gMDEzYTIwZmM4ZjUzZWYwOGFhZTBhODM2Yjk0MTAxNTNhODc3OTgzYQotKwotK0tE RiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAwODEwMGMwNTBhYTNkODQ4NzUwYWY2OWQxYzA0ZDZjYjBhMWVmOGE0ZjI1YmU0YjE2YzkyN2Zm NzMxM2U4MzY4MGIxYjdhOTJiNjEwMGZhNzczY2VhOTk1OGZjN2VmYjFhNDc1ZmM3MWVkYThiZThl ZmM5MmFkMTk4YTM0ZDZhZTAxN2YxMmI3NmYzOWM4MmI3NDE5OTRiMGQ0MmFkYTE4MDdmYTc4MDM4 NzZkMjFkOTNiMTI5ZDc1ZGM5YWJhNDgxMWVmNTE5MjVlNDllNGJmNGY1MzEzZThmZWUwNjI1ZDg3 MjdkYThiY2IxNWViMTVkYTJkMjM3MDgyZmM1NDk5NjIxZWYKLStDdHJsLmhleHhjZ2hhc2ggPSBo ZXh4Y2doYXNoOjVlYTI1NjhlZTdkZGNkYjMyNjBkZmRmNTRlMTVlNGQ0OTRjYTkwMjMKLStDdHJs LmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmJjODk4OGFjNWY5MDU4ZWU3NjUzNjQ3MmIx NzA2YzVjMzM4YmQxMTQKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSAxMmY2YzNhYzYw ZDZlZTNiCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtl eSA9IGhleGtleTowMDAwMDA4MTAwYzA1MGFhM2Q4NDg3NTBhZjY5ZDFjMDRkNmNiMGExZWY4YTRm MjViZTRiMTZjOTI3ZmY3MzEzZTgzNjgwYjFiN2E5MmI2MTAwZmE3NzNjZWE5OTU4ZmM3ZWZiMWE0 NzVmYzcxZWRhOGJlOGVmYzkyYWQxOThhMzRkNmFlMDE3ZjEyYjc2ZjM5YzgyYjc0MTk5NGIwZDQy YWRhMTgwN2ZhNzgwMzg3NmQyMWQ5M2IxMjlkNzVkYzlhYmE0ODExZWY1MTkyNWU0OWU0YmY0ZjUz MTNlOGZlZTA2MjVkODcyN2RhOGJjYjE1ZWIxNWRhMmQyMzcwODJmYzU0OTk2MjFlZgotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NWVhMjU2OGVlN2RkY2RiMzI2MGRmZGY1NGUxNWU0ZDQ5 NGNhOTAyMwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YmM4OTg4YWM1Zjkw NThlZTc2NTM2NDcyYjE3MDZjNWMzMzhiZDExNAotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1 dCA9IDUzNmQxMDZlMDBhZWM2ZmQKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hB MQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBjMDUwYWEzZDg0ODc1MGFmNjlkMWMw NGQ2Y2IwYTFlZjhhNGYyNWJlNGIxNmM5MjdmZjczMTNlODM2ODBiMWI3YTkyYjYxMDBmYTc3M2Nl YTk5NThmYzdlZmIxYTQ3NWZjNzFlZGE4YmU4ZWZjOTJhZDE5OGEzNGQ2YWUwMTdmMTJiNzZmMzlj ODJiNzQxOTk0YjBkNDJhZGExODA3ZmE3ODAzODc2ZDIxZDkzYjEyOWQ3NWRjOWFiYTQ4MTFlZjUx OTI1ZTQ5ZTRiZjRmNTMxM2U4ZmVlMDYyNWQ4NzI3ZGE4YmNiMTVlYjE1ZGEyZDIzNzA4MmZjNTQ5 OTYyMWVmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1ZWEyNTY4ZWU3ZGRjZGIzMjYw ZGZkZjU0ZTE1ZTRkNDk0Y2E5MDIzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDpiYzg5ODhhYzVmOTA1OGVlNzY1MzY0NzJiMTcwNmM1YzMzOGJkMTE0Ci0rQ3RybC50eXBlID0g dHlwZTpDCi0rT3V0cHV0ID0gMjZiOGVjNjY4NTRkMGYwYWE5OGY2ODg4YmU2MjhlYmM3NTkwMGMz NzM4ZDQ3ODk0Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhl eGtleSA9IGhleGtleTowMDAwMDA4MTAwYzA1MGFhM2Q4NDg3NTBhZjY5ZDFjMDRkNmNiMGExZWY4 YTRmMjViZTRiMTZjOTI3ZmY3MzEzZTgzNjgwYjFiN2E5MmI2MTAwZmE3NzNjZWE5OTU4ZmM3ZWZi MWE0NzVmYzcxZWRhOGJlOGVmYzkyYWQxOThhMzRkNmFlMDE3ZjEyYjc2ZjM5YzgyYjc0MTk5NGIw ZDQyYWRhMTgwN2ZhNzgwMzg3NmQyMWQ5M2IxMjlkNzVkYzlhYmE0ODExZWY1MTkyNWU0OWU0YmY0 ZjUzMTNlOGZlZTA2MjVkODcyN2RhOGJjYjE1ZWIxNWRhMmQyMzcwODJmYzU0OTk2MjFlZgotK0N0 cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NWVhMjU2OGVlN2RkY2RiMzI2MGRmZGY1NGUxNWU0 ZDQ5NGNhOTAyMwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YmM4OTg4YWM1 ZjkwNThlZTc2NTM2NDcyYjE3MDZjNWMzMzhiZDExNAotK0N0cmwudHlwZSA9IHR5cGU6RAotK091 dHB1dCA9IGQ1ZDNiMzgxNzIxNGVlYjNiZjI5MmRmZmM3N2RhZWFiMDYyYWM3ZmNkMmUzYTJiZAot KwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhr ZXk6MDAwMDAwODEwMGMwNTBhYTNkODQ4NzUwYWY2OWQxYzA0ZDZjYjBhMWVmOGE0ZjI1YmU0YjE2 YzkyN2ZmNzMxM2U4MzY4MGIxYjdhOTJiNjEwMGZhNzczY2VhOTk1OGZjN2VmYjFhNDc1ZmM3MWVk YThiZThlZmM5MmFkMTk4YTM0ZDZhZTAxN2YxMmI3NmYzOWM4MmI3NDE5OTRiMGQ0MmFkYTE4MDdm YTc4MDM4NzZkMjFkOTNiMTI5ZDc1ZGM5YWJhNDgxMWVmNTE5MjVlNDllNGJmNGY1MzEzZThmZWUw NjI1ZDg3MjdkYThiY2IxNWViMTVkYTJkMjM3MDgyZmM1NDk5NjIxZWYKLStDdHJsLmhleHhjZ2hh c2ggPSBoZXh4Y2doYXNoOjVlYTI1NjhlZTdkZGNkYjMyNjBkZmRmNTRlMTVlNGQ0OTRjYTkwMjMK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmJjODk4OGFjNWY5MDU4ZWU3NjUz NjQ3MmIxNzA2YzVjMzM4YmQxMTQKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSAwMTQ2 MTNhZWYyMjE5NDMwN2JjMDY3OGY2ZWRkMWNjZmYyNDBhZGZhCi0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwYzA1MGFh M2Q4NDg3NTBhZjY5ZDFjMDRkNmNiMGExZWY4YTRmMjViZTRiMTZjOTI3ZmY3MzEzZTgzNjgwYjFi N2E5MmI2MTAwZmE3NzNjZWE5OTU4ZmM3ZWZiMWE0NzVmYzcxZWRhOGJlOGVmYzkyYWQxOThhMzRk NmFlMDE3ZjEyYjc2ZjM5YzgyYjc0MTk5NGIwZDQyYWRhMTgwN2ZhNzgwMzg3NmQyMWQ5M2IxMjlk NzVkYzlhYmE0ODExZWY1MTkyNWU0OWU0YmY0ZjUzMTNlOGZlZTA2MjVkODcyN2RhOGJjYjE1ZWIx NWRhMmQyMzcwODJmYzU0OTk2MjFlZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NWVh MjU2OGVlN2RkY2RiMzI2MGRmZGY1NGUxNWU0ZDQ5NGNhOTAyMwotK0N0cmwuaGV4c2Vzc2lvbl9p ZCA9IGhleHNlc3Npb25faWQ6YmM4OTg4YWM1ZjkwNThlZTc2NTM2NDcyYjE3MDZjNWMzMzhiZDEx NAotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDUwNTdiNGNjMmMzMDBmNzU0NmQzNThh NzVkYWY1ODIzM2I3MWRhMWEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBmMDAzODg0MThiZTI4YWUzMjM1YzViNjQw ZDAwMGRmNDRmNmU2NTc4MmNhZDc4MzcyNmE1MDdlMmM2NDVhMDU2MzA3ZjFhYjdiNGNkMjRkMzg2 NDAxMTgxMDVkNzQxNWMyZWNlYTc3ZTMzZTdiOGE5ZGM5ZDIwNWUzZmRmYjcxODc2OTc1NDIxM2Mw NzgyZWUxOGM3ZGIxNDA4ZTc4MDM2OWJjY2ZiODIzMzU4MWNkYTRmYmIxMzNiM2M0MWQwYTdhZmE2 OTk2ZjMxZjhkZDM2ZmEzZGQ4MmVmYjIzZGNhYTFlYzVlMzdjYWFlM2FmNjM5MTIzMTkwZmU3Nzk1 OTgzCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpmYzQ4Yzg1YWM0OGVlOTdiZTNjZTQ1 YzEwODA3YTY2NmU4ZTliNjM5Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpk MzZlOGMwNzBiOTc3OTVkZmIxMGEzYzJlNDFlNGQwZDcwMzgyNjA2Ci0rQ3RybC50eXBlID0gdHlw ZTpBCi0rT3V0cHV0ID0gZDE2MGY5MWYzNjAyN2ZmOQotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGYwMDM4ODQxOGJl MjhhZTMyMzVjNWI2NDBkMDAwZGY0NGY2ZTY1NzgyY2FkNzgzNzI2YTUwN2UyYzY0NWEwNTYzMDdm MWFiN2I0Y2QyNGQzODY0MDExODEwNWQ3NDE1YzJlY2VhNzdlMzNlN2I4YTlkYzlkMjA1ZTNmZGZi NzE4NzY5NzU0MjEzYzA3ODJlZTE4YzdkYjE0MDhlNzgwMzY5YmNjZmI4MjMzNTgxY2RhNGZiYjEz M2IzYzQxZDBhN2FmYTY5OTZmMzFmOGRkMzZmYTNkZDgyZWZiMjNkY2FhMWVjNWUzN2NhYWUzYWY2 MzkxMjMxOTBmZTc3OTU5ODMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmZjNDhjODVh YzQ4ZWU5N2JlM2NlNDVjMTA4MDdhNjY2ZThlOWI2MzkKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOmQzNmU4YzA3MGI5Nzc5NWRmYjEwYTNjMmU0MWU0ZDBkNzAzODI2MDYKLStD dHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSAwZDAyZWMzMTA2NjNiYmNjCi0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4 MTAwZjAwMzg4NDE4YmUyOGFlMzIzNWM1YjY0MGQwMDBkZjQ0ZjZlNjU3ODJjYWQ3ODM3MjZhNTA3 ZTJjNjQ1YTA1NjMwN2YxYWI3YjRjZDI0ZDM4NjQwMTE4MTA1ZDc0MTVjMmVjZWE3N2UzM2U3Yjhh OWRjOWQyMDVlM2ZkZmI3MTg3Njk3NTQyMTNjMDc4MmVlMThjN2RiMTQwOGU3ODAzNjliY2NmYjgy MzM1ODFjZGE0ZmJiMTMzYjNjNDFkMGE3YWZhNjk5NmYzMWY4ZGQzNmZhM2RkODJlZmIyM2RjYWEx ZWM1ZTM3Y2FhZTNhZjYzOTEyMzE5MGZlNzc5NTk4MwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6ZmM0OGM4NWFjNDhlZTk3YmUzY2U0NWMxMDgwN2E2NjZlOGU5YjYzOQotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZDM2ZThjMDcwYjk3Nzk1ZGZiMTBhM2MyZTQxZTRk MGQ3MDM4MjYwNgotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDAzYjY2ZjQ1MWFkOTNh MDE5MTRkZDMzNzJkOTgwYmVhM2RlOTQ5OTNlMTc2ZWEwMQotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGYwMDM4ODQx OGJlMjhhZTMyMzVjNWI2NDBkMDAwZGY0NGY2ZTY1NzgyY2FkNzgzNzI2YTUwN2UyYzY0NWEwNTYz MDdmMWFiN2I0Y2QyNGQzODY0MDExODEwNWQ3NDE1YzJlY2VhNzdlMzNlN2I4YTlkYzlkMjA1ZTNm ZGZiNzE4NzY5NzU0MjEzYzA3ODJlZTE4YzdkYjE0MDhlNzgwMzY5YmNjZmI4MjMzNTgxY2RhNGZi YjEzM2IzYzQxZDBhN2FmYTY5OTZmMzFmOGRkMzZmYTNkZDgyZWZiMjNkY2FhMWVjNWUzN2NhYWUz YWY2MzkxMjMxOTBmZTc3OTU5ODMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmZjNDhj ODVhYzQ4ZWU5N2JlM2NlNDVjMTA4MDdhNjY2ZThlOWI2MzkKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOmQzNmU4YzA3MGI5Nzc5NWRmYjEwYTNjMmU0MWU0ZDBkNzAzODI2MDYK LStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBjMmRiNzY3Y2JiZGYyZjgzOWViMmYzN2Fk YTg3YTA0MWQyMjBiOWY1ODg0MmQwZGIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6 U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBmMDAzODg0MThiZTI4YWUzMjM1 YzViNjQwZDAwMGRmNDRmNmU2NTc4MmNhZDc4MzcyNmE1MDdlMmM2NDVhMDU2MzA3ZjFhYjdiNGNk MjRkMzg2NDAxMTgxMDVkNzQxNWMyZWNlYTc3ZTMzZTdiOGE5ZGM5ZDIwNWUzZmRmYjcxODc2OTc1 NDIxM2MwNzgyZWUxOGM3ZGIxNDA4ZTc4MDM2OWJjY2ZiODIzMzU4MWNkYTRmYmIxMzNiM2M0MWQw YTdhZmE2OTk2ZjMxZjhkZDM2ZmEzZGQ4MmVmYjIzZGNhYTFlYzVlMzdjYWFlM2FmNjM5MTIzMTkw ZmU3Nzk1OTgzCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpmYzQ4Yzg1YWM0OGVlOTdi ZTNjZTQ1YzEwODA3YTY2NmU4ZTliNjM5Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDpkMzZlOGMwNzBiOTc3OTVkZmIxMGEzYzJlNDFlNGQwZDcwMzgyNjA2Ci0rQ3RybC50eXBl ID0gdHlwZTpFCi0rT3V0cHV0ID0gMGIyOTQ0YzI2ZGNmNGNjODc3Y2RjNTVjNGU5YjFiODE1NWUz ODc0YgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODEwMGYwMDM4ODQxOGJlMjhhZTMyMzVjNWI2NDBkMDAwZGY0NGY2ZTY1 NzgyY2FkNzgzNzI2YTUwN2UyYzY0NWEwNTYzMDdmMWFiN2I0Y2QyNGQzODY0MDExODEwNWQ3NDE1 YzJlY2VhNzdlMzNlN2I4YTlkYzlkMjA1ZTNmZGZiNzE4NzY5NzU0MjEzYzA3ODJlZTE4YzdkYjE0 MDhlNzgwMzY5YmNjZmI4MjMzNTgxY2RhNGZiYjEzM2IzYzQxZDBhN2FmYTY5OTZmMzFmOGRkMzZm YTNkZDgyZWZiMjNkY2FhMWVjNWUzN2NhYWUzYWY2MzkxMjMxOTBmZTc3OTU5ODMKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmZjNDhjODVhYzQ4ZWU5N2JlM2NlNDVjMTA4MDdhNjY2ZThl OWI2MzkKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmQzNmU4YzA3MGI5Nzc5 NWRmYjEwYTNjMmU0MWU0ZDBkNzAzODI2MDYKLStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQg PSBmNzk3N2Q1NzRjN2Q5ZTRmMzRlY2Q2YjQwNWM3NjU5NjNmMGRmZTU3Ci0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAw OWRjNjEyNzhhNzlmZGIwMGVlOTM3YzA0MTg2NjhhYzAxNzZmZGZkMDI5N2ViYzg2ZWUzOTFlM2U4 ZGIxNDdmMDFkNzgyNjUwZjFlMzAzOTFkM2MxZmU2MjQyNTg0MjExOWZlNDFiNzYyNDNlZDQ3ZjZj MzAzNzBkZDFjYzFiMTBlM2JkYWMyNzMwMjg3YjBlNTkwMWU0ODc1NjNkNzAwZDU2MDc4ZWQ4OGQy MGMzMDAyNTBhM2RhNWYyMTI4ZGI1NjIzMGQ5MGJiOTllOTBhY2E4MGRhNDQ2ZDhkZGRhYzQ5ZTJm MmRiMWIzN2Y5ZTFiNjU4MzRhZGY4ZmRiY2QzMQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6M2M2M2E1NTJhYzUzMTNkMjE5ZWMzMGYxZTkyNmUyYzUyZTk5MjkyOQotK0N0cmwuaGV4c2Vz c2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTE3ZTBlOWNjMjc0MWQ4NjFmNGM3MTk1YzI5Yzc1ZTRj MzhlOWJhMAotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IGU0Mzg3ODE4YWI3ZjRmYTYK LSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMDgxMDA5ZGM2MTI3OGE3OWZkYjAwZWU5MzdjMDQxODY2OGFjMDE3NmZkZmQwMjk3 ZWJjODZlZTM5MWUzZThkYjE0N2YwMWQ3ODI2NTBmMWUzMDM5MWQzYzFmZTYyNDI1ODQyMTE5ZmU0 MWI3NjI0M2VkNDdmNmMzMDM3MGRkMWNjMWIxMGUzYmRhYzI3MzAyODdiMGU1OTAxZTQ4NzU2M2Q3 MDBkNTYwNzhlZDg4ZDIwYzMwMDI1MGEzZGE1ZjIxMjhkYjU2MjMwZDkwYmI5OWU5MGFjYTgwZGE0 NDZkOGRkZGFjNDllMmYyZGIxYjM3ZjllMWI2NTgzNGFkZjhmZGJjZDMxCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDozYzYzYTU1MmFjNTMxM2QyMTllYzMwZjFlOTI2ZTJjNTJlOTkyOTI5 Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphMTdlMGU5Y2MyNzQxZDg2MWY0 YzcxOTVjMjljNzVlNGMzOGU5YmEwCi0rQ3RybC50eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0gMWRh YWJlYmNjOGEwNjRkZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDlkYzYxMjc4YTc5ZmRiMDBlZTkzN2MwNDE4NjY4 YWMwMTc2ZmRmZDAyOTdlYmM4NmVlMzkxZTNlOGRiMTQ3ZjAxZDc4MjY1MGYxZTMwMzkxZDNjMWZl NjI0MjU4NDIxMTlmZTQxYjc2MjQzZWQ0N2Y2YzMwMzcwZGQxY2MxYjEwZTNiZGFjMjczMDI4N2Iw ZTU5MDFlNDg3NTYzZDcwMGQ1NjA3OGVkODhkMjBjMzAwMjUwYTNkYTVmMjEyOGRiNTYyMzBkOTBi Yjk5ZTkwYWNhODBkYTQ0NmQ4ZGRkYWM0OWUyZjJkYjFiMzdmOWUxYjY1ODM0YWRmOGZkYmNkMzEK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjNjNjNhNTUyYWM1MzEzZDIxOWVjMzBmMWU5 MjZlMmM1MmU5OTI5MjkKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmExN2Uw ZTljYzI3NDFkODYxZjRjNzE5NWMyOWM3NWU0YzM4ZTliYTAKLStDdHJsLnR5cGUgPSB0eXBlOkMK LStPdXRwdXQgPSA5ZmZmYWQzYWVjNTNjZDcxOWMxZDUwMDg1MGMyZjM4ZDhlZWEwNDYwNmY3OGI0 MDIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMDgxMDA5ZGM2MTI3OGE3OWZkYjAwZWU5MzdjMDQxODY2OGFjMDE3NmZkZmQw Mjk3ZWJjODZlZTM5MWUzZThkYjE0N2YwMWQ3ODI2NTBmMWUzMDM5MWQzYzFmZTYyNDI1ODQyMTE5 ZmU0MWI3NjI0M2VkNDdmNmMzMDM3MGRkMWNjMWIxMGUzYmRhYzI3MzAyODdiMGU1OTAxZTQ4NzU2 M2Q3MDBkNTYwNzhlZDg4ZDIwYzMwMDI1MGEzZGE1ZjIxMjhkYjU2MjMwZDkwYmI5OWU5MGFjYTgw ZGE0NDZkOGRkZGFjNDllMmYyZGIxYjM3ZjllMWI2NTgzNGFkZjhmZGJjZDMxCi0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDozYzYzYTU1MmFjNTMxM2QyMTllYzMwZjFlOTI2ZTJjNTJlOTky OTI5Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphMTdlMGU5Y2MyNzQxZDg2 MWY0YzcxOTVjMjljNzVlNGMzOGU5YmEwCi0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0g NmIxOTZiY2UyYWEyYmQ5MTJmZmQ2N2E5NGZjNDJkZWMxMDUxMzc2ZjczZWMzY2UyCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDA4MTAwOWRjNjEyNzhhNzlmZGIwMGVlOTM3YzA0MTg2NjhhYzAxNzZmZGZkMDI5N2ViYzg2ZWUz OTFlM2U4ZGIxNDdmMDFkNzgyNjUwZjFlMzAzOTFkM2MxZmU2MjQyNTg0MjExOWZlNDFiNzYyNDNl ZDQ3ZjZjMzAzNzBkZDFjYzFiMTBlM2JkYWMyNzMwMjg3YjBlNTkwMWU0ODc1NjNkNzAwZDU2MDc4 ZWQ4OGQyMGMzMDAyNTBhM2RhNWYyMTI4ZGI1NjIzMGQ5MGJiOTllOTBhY2E4MGRhNDQ2ZDhkZGRh YzQ5ZTJmMmRiMWIzN2Y5ZTFiNjU4MzRhZGY4ZmRiY2QzMQotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6M2M2M2E1NTJhYzUzMTNkMjE5ZWMzMGYxZTkyNmUyYzUyZTk5MjkyOQotK0N0cmwu aGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTE3ZTBlOWNjMjc0MWQ4NjFmNGM3MTk1YzI5 Yzc1ZTRjMzhlOWJhMAotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IGJlYWI1ODM5MDZl NmJlZDAwNTU1OGMxMDJhNWI1ZmQ2ZWU3MTQ4NWYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1k ID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA5ZGM2MTI3OGE3OWZk YjAwZWU5MzdjMDQxODY2OGFjMDE3NmZkZmQwMjk3ZWJjODZlZTM5MWUzZThkYjE0N2YwMWQ3ODI2 NTBmMWUzMDM5MWQzYzFmZTYyNDI1ODQyMTE5ZmU0MWI3NjI0M2VkNDdmNmMzMDM3MGRkMWNjMWIx MGUzYmRhYzI3MzAyODdiMGU1OTAxZTQ4NzU2M2Q3MDBkNTYwNzhlZDg4ZDIwYzMwMDI1MGEzZGE1 ZjIxMjhkYjU2MjMwZDkwYmI5OWU5MGFjYTgwZGE0NDZkOGRkZGFjNDllMmYyZGIxYjM3ZjllMWI2 NTgzNGFkZjhmZGJjZDMxCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozYzYzYTU1MmFj NTMxM2QyMTllYzMwZjFlOTI2ZTJjNTJlOTkyOTI5Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDphMTdlMGU5Y2MyNzQxZDg2MWY0YzcxOTVjMjljNzVlNGMzOGU5YmEwCi0rQ3Ry bC50eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gMTA1MTQwNTk0YjViOTA2MWRlN2ZmMmFmYWMwOWJj ZTgxYjc1ZDZjNgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGRmNzViYjdjZTBiNjY0MzFjYTA3M2E1NzY4ZGJjNjkz MGIwMjRiOGQ2ODA0YTVlZjlmM2YzYzkzNDFiOGM4YjcyMTZlYWYyNjUzNmFjNjcxYWIzNjBlZmY1 Njg1MDJlNTk2YWRiZjQxYjc5NWQzMjlkMTM2ZWJlNDRjNjBmZjRmZmQ1OGVkOTliNDBhMjI4Y2Fi NmM4ZWQ5NzMzNzAyZTc1Zjc3NTBlNThmMDRjYmI3ODQwMmVlYzI4NzcyMDVhMGJhM2Y0ODMxODU0 MzQ4OWRjNDg4NWRjZGM1MWM0NjU4YWNiYzI4ZjlhODJjNTYzYWMyMGI1ODJjZmY4YzQzMmQKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmMwOGRkZDQwODMyY2M5NmZlMzczYjY3YTQ4NTBi ODY4NDhlNDhmNzAKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjQ3N2M4ZDMy ZTczYTQ3NTcwN2UwMDg1Y2YyMzVkNjA1ZWQ1NjRhMWMKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStP dXRwdXQgPSBlZjk4MmM4ZmQwZmQ0NjRmCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwZGY3NWJiN2NlMGI2NjQzMWNh MDczYTU3NjhkYmM2OTMwYjAyNGI4ZDY4MDRhNWVmOWYzZjNjOTM0MWI4YzhiNzIxNmVhZjI2NTM2 YWM2NzFhYjM2MGVmZjU2ODUwMmU1OTZhZGJmNDFiNzk1ZDMyOWQxMzZlYmU0NGM2MGZmNGZmZDU4 ZWQ5OWI0MGEyMjhjYWI2YzhlZDk3MzM3MDJlNzVmNzc1MGU1OGYwNGNiYjc4NDAyZWVjMjg3NzIw NWEwYmEzZjQ4MzE4NTQzNDg5ZGM0ODg1ZGNkYzUxYzQ2NThhY2JjMjhmOWE4MmM1NjNhYzIwYjU4 MmNmZjhjNDMyZAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YzA4ZGRkNDA4MzJjYzk2 ZmUzNzNiNjdhNDg1MGI4Njg0OGU0OGY3MAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6NDc3YzhkMzJlNzNhNDc1NzA3ZTAwODVjZjIzNWQ2MDVlZDU2NGExYwotK0N0cmwudHlw ZSA9IHR5cGU6QgotK091dHB1dCA9IDg0NWFkM2JhNGQzNTkzMjYKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBkZjc1 YmI3Y2UwYjY2NDMxY2EwNzNhNTc2OGRiYzY5MzBiMDI0YjhkNjgwNGE1ZWY5ZjNmM2M5MzQxYjhj OGI3MjE2ZWFmMjY1MzZhYzY3MWFiMzYwZWZmNTY4NTAyZTU5NmFkYmY0MWI3OTVkMzI5ZDEzNmVi ZTQ0YzYwZmY0ZmZkNThlZDk5YjQwYTIyOGNhYjZjOGVkOTczMzcwMmU3NWY3NzUwZTU4ZjA0Y2Ji Nzg0MDJlZWMyODc3MjA1YTBiYTNmNDgzMTg1NDM0ODlkYzQ4ODVkY2RjNTFjNDY1OGFjYmMyOGY5 YTgyYzU2M2FjMjBiNTgyY2ZmOGM0MzJkCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpj MDhkZGQ0MDgzMmNjOTZmZTM3M2I2N2E0ODUwYjg2ODQ4ZTQ4ZjcwCi0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDo0NzdjOGQzMmU3M2E0NzU3MDdlMDA4NWNmMjM1ZDYwNWVkNTY0 YTFjCi0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0ID0gZDllNTE2MDAxYjZiMWExNzI2OGU1 MDdmYTZlMTNmNmJjOWMzZGVkMDAyMGVmODQxCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9 IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwZGY3NWJiN2NlMGI2NjQz MWNhMDczYTU3NjhkYmM2OTMwYjAyNGI4ZDY4MDRhNWVmOWYzZjNjOTM0MWI4YzhiNzIxNmVhZjI2 NTM2YWM2NzFhYjM2MGVmZjU2ODUwMmU1OTZhZGJmNDFiNzk1ZDMyOWQxMzZlYmU0NGM2MGZmNGZm ZDU4ZWQ5OWI0MGEyMjhjYWI2YzhlZDk3MzM3MDJlNzVmNzc1MGU1OGYwNGNiYjc4NDAyZWVjMjg3 NzIwNWEwYmEzZjQ4MzE4NTQzNDg5ZGM0ODg1ZGNkYzUxYzQ2NThhY2JjMjhmOWE4MmM1NjNhYzIw YjU4MmNmZjhjNDMyZAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YzA4ZGRkNDA4MzJj Yzk2ZmUzNzNiNjdhNDg1MGI4Njg0OGU0OGY3MAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNl c3Npb25faWQ6NDc3YzhkMzJlNzNhNDc1NzA3ZTAwODVjZjIzNWQ2MDVlZDU2NGExYwotK0N0cmwu dHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGQ1N2QyZjNjMjViNTM2NDQyZDhjN2YzNmQ2Mjc3OGQw NmZiNmU3ZDRiNWM3YWI3NgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGRmNzViYjdjZTBiNjY0MzFjYTA3M2E1NzY4 ZGJjNjkzMGIwMjRiOGQ2ODA0YTVlZjlmM2YzYzkzNDFiOGM4YjcyMTZlYWYyNjUzNmFjNjcxYWIz NjBlZmY1Njg1MDJlNTk2YWRiZjQxYjc5NWQzMjlkMTM2ZWJlNDRjNjBmZjRmZmQ1OGVkOTliNDBh MjI4Y2FiNmM4ZWQ5NzMzNzAyZTc1Zjc3NTBlNThmMDRjYmI3ODQwMmVlYzI4NzcyMDVhMGJhM2Y0 ODMxODU0MzQ4OWRjNDg4NWRjZGM1MWM0NjU4YWNiYzI4ZjlhODJjNTYzYWMyMGI1ODJjZmY4YzQz MmQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmMwOGRkZDQwODMyY2M5NmZlMzczYjY3 YTQ4NTBiODY4NDhlNDhmNzAKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjQ3 N2M4ZDMyZTczYTQ3NTcwN2UwMDg1Y2YyMzVkNjA1ZWQ1NjRhMWMKLStDdHJsLnR5cGUgPSB0eXBl OkUKLStPdXRwdXQgPSBmMGI3NTQyNWIyNzFlYjgyNjQ1YjFmMTQyNGIyYTgzOGRiY2Y2Zjk4Ci0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDA4MTAwZGY3NWJiN2NlMGI2NjQzMWNhMDczYTU3NjhkYmM2OTMwYjAyNGI4ZDY4MDRh NWVmOWYzZjNjOTM0MWI4YzhiNzIxNmVhZjI2NTM2YWM2NzFhYjM2MGVmZjU2ODUwMmU1OTZhZGJm NDFiNzk1ZDMyOWQxMzZlYmU0NGM2MGZmNGZmZDU4ZWQ5OWI0MGEyMjhjYWI2YzhlZDk3MzM3MDJl NzVmNzc1MGU1OGYwNGNiYjc4NDAyZWVjMjg3NzIwNWEwYmEzZjQ4MzE4NTQzNDg5ZGM0ODg1ZGNk YzUxYzQ2NThhY2JjMjhmOWE4MmM1NjNhYzIwYjU4MmNmZjhjNDMyZAotK0N0cmwuaGV4eGNnaGFz aCA9IGhleHhjZ2hhc2g6YzA4ZGRkNDA4MzJjYzk2ZmUzNzNiNjdhNDg1MGI4Njg0OGU0OGY3MAot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NDc3YzhkMzJlNzNhNDc1NzA3ZTAw ODVjZjIzNWQ2MDVlZDU2NGExYwotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGNkZjU5 YjIzMjc1ODhmZmQxOGJlY2ZjMGU1YmI1MjYwMTQxMDE0MDEKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDA4NWE2MGJj Y2E4OGIwOTZjNDE4ZTgyNWYzZGU0ZmQ4OTIwZWNjZTYxN2FmYWRkYTJjYTgwMDFlOGViYTA3ZTU4 ZTYwZTcwYTlhMDViOGRkYzI5ZDU2MzZkMzNjNDA3ZDVmMjM5NTJiNjUzMjZlMTEzZjI4ZDg5YmM2 YmEzYTRjM2I3MWFlMjM5ZDZkMWJkMjk1NDY2NjgyZDFjNjc1YmRiODhhMzI1OWY0NzRmZTU0YTBm NDAwNGRkYzQ2YjQ0MjQ1MTY1NGUxZTY2ZDBjOTNkN2IzMTBmMjhhOGRiN2I5NWVlZTdhYmM2MWU3 MWRlZTMyMmI0ZTczMmJhZjllYzdjZTE4OWI4ODlkNTM2ZGExYTU1YTJjYzI5ZTE2NjZhYTljMGU3 MDJmNDQxMjIwNmJkMjA3MzAyZmU4NDA0M2M2NjQzOTRiZGUwZTBhNDdkMGE3YTk0N2M5NTk5N2Ux ZGJhZWVjZDJlZmFlMTJjYWNlZjhlYWIyZjZiMjQ3OGRlZGNlYmIzMjY0ODI3Y2YyMjZlMTNmODA4 MjkzMWRiNDEwZmJjMDMzNTJlN2RkZTgyZmQxZjU4Y2FhYjMxMTVhYTA2NWFjNmUyYTFjN2IxYzFi MmQ1ZmEzNDQ3YmY5ODM5ZDc2Y2ZhNTgyMmIwOTdiZmY5MTA2ZjM3ZWJhMTI1MDE0NQotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZGRlNmY4ZTA3MGVmMzJhMjdmZjA0YWQxMDQ1YzY1YjJk ZmEzM2UwMwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGRlNmY4ZTA3MGVm MzJhMjdmZjA0YWQxMDQ1YzY1YjJkZmEzM2UwMwotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1 dCA9IDc5YzkxOTVlNjgzYWUxMDc1MDk2MGNiNTVjNGQ0YzBiCi0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwODVhNjBi Y2NhODhiMDk2YzQxOGU4MjVmM2RlNGZkODkyMGVjY2U2MTdhZmFkZGEyY2E4MDAxZThlYmEwN2U1 OGU2MGU3MGE5YTA1YjhkZGMyOWQ1NjM2ZDMzYzQwN2Q1ZjIzOTUyYjY1MzI2ZTExM2YyOGQ4OWJj NmJhM2E0YzNiNzFhZTIzOWQ2ZDFiZDI5NTQ2NjY4MmQxYzY3NWJkYjg4YTMyNTlmNDc0ZmU1NGEw ZjQwMDRkZGM0NmI0NDI0NTE2NTRlMWU2NmQwYzkzZDdiMzEwZjI4YThkYjdiOTVlZWU3YWJjNjFl NzFkZWUzMjJiNGU3MzJiYWY5ZWM3Y2UxODliODg5ZDUzNmRhMWE1NWEyY2MyOWUxNjY2YWE5YzBl NzAyZjQ0MTIyMDZiZDIwNzMwMmZlODQwNDNjNjY0Mzk0YmRlMGUwYTQ3ZDBhN2E5NDdjOTU5OTdl MWRiYWVlY2QyZWZhZTEyY2FjZWY4ZWFiMmY2YjI0NzhkZWRjZWJiMzI2NDgyN2NmMjI2ZTEzZjgw ODI5MzFkYjQxMGZiYzAzMzUyZTdkZGU4MmZkMWY1OGNhYWIzMTE1YWEwNjVhYzZlMmExYzdiMWMx YjJkNWZhMzQ0N2JmOTgzOWQ3NmNmYTU4MjJiMDk3YmZmOTEwNmYzN2ViYTEyNTAxNDUKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmRkZTZmOGUwNzBlZjMyYTI3ZmYwNGFkMTA0NWM2NWIy ZGZhMzNlMDMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmRkZTZmOGUwNzBl ZjMyYTI3ZmYwNGFkMTA0NWM2NWIyZGZhMzNlMDMKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRw dXQgPSBlZjAwYjQ0OGFiOWZkNjUyM2JiNTE0M2EwYTgxODc1MAotKwotK0tERiA9IFNTSEtERgot K0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMDg1YTYw YmNjYTg4YjA5NmM0MThlODI1ZjNkZTRmZDg5MjBlY2NlNjE3YWZhZGRhMmNhODAwMWU4ZWJhMDdl NThlNjBlNzBhOWEwNWI4ZGRjMjlkNTYzNmQzM2M0MDdkNWYyMzk1MmI2NTMyNmUxMTNmMjhkODli YzZiYTNhNGMzYjcxYWUyMzlkNmQxYmQyOTU0NjY2ODJkMWM2NzViZGI4OGEzMjU5ZjQ3NGZlNTRh MGY0MDA0ZGRjNDZiNDQyNDUxNjU0ZTFlNjZkMGM5M2Q3YjMxMGYyOGE4ZGI3Yjk1ZWVlN2FiYzYx ZTcxZGVlMzIyYjRlNzMyYmFmOWVjN2NlMTg5Yjg4OWQ1MzZkYTFhNTVhMmNjMjllMTY2NmFhOWMw ZTcwMmY0NDEyMjA2YmQyMDczMDJmZTg0MDQzYzY2NDM5NGJkZTBlMGE0N2QwYTdhOTQ3Yzk1OTk3 ZTFkYmFlZWNkMmVmYWUxMmNhY2VmOGVhYjJmNmIyNDc4ZGVkY2ViYjMyNjQ4MjdjZjIyNmUxM2Y4 MDgyOTMxZGI0MTBmYmMwMzM1MmU3ZGRlODJmZDFmNThjYWFiMzExNWFhMDY1YWM2ZTJhMWM3YjFj MWIyZDVmYTM0NDdiZjk4MzlkNzZjZmE1ODIyYjA5N2JmZjkxMDZmMzdlYmExMjUwMTQ1Ci0rQ3Ry bC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpkZGU2ZjhlMDcwZWYzMmEyN2ZmMDRhZDEwNDVjNjVi MmRmYTMzZTAzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpkZGU2ZjhlMDcw ZWYzMmEyN2ZmMDRhZDEwNDVjNjViMmRmYTMzZTAzCi0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0 cHV0ID0gNTFjOGI0YWFmNWU0MjQ0M2JlMGFhM2M1MGFhN2UxZGQKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDA4NWE2 MGJjY2E4OGIwOTZjNDE4ZTgyNWYzZGU0ZmQ4OTIwZWNjZTYxN2FmYWRkYTJjYTgwMDFlOGViYTA3 ZTU4ZTYwZTcwYTlhMDViOGRkYzI5ZDU2MzZkMzNjNDA3ZDVmMjM5NTJiNjUzMjZlMTEzZjI4ZDg5 YmM2YmEzYTRjM2I3MWFlMjM5ZDZkMWJkMjk1NDY2NjgyZDFjNjc1YmRiODhhMzI1OWY0NzRmZTU0 YTBmNDAwNGRkYzQ2YjQ0MjQ1MTY1NGUxZTY2ZDBjOTNkN2IzMTBmMjhhOGRiN2I5NWVlZTdhYmM2 MWU3MWRlZTMyMmI0ZTczMmJhZjllYzdjZTE4OWI4ODlkNTM2ZGExYTU1YTJjYzI5ZTE2NjZhYTlj MGU3MDJmNDQxMjIwNmJkMjA3MzAyZmU4NDA0M2M2NjQzOTRiZGUwZTBhNDdkMGE3YTk0N2M5NTk5 N2UxZGJhZWVjZDJlZmFlMTJjYWNlZjhlYWIyZjZiMjQ3OGRlZGNlYmIzMjY0ODI3Y2YyMjZlMTNm ODA4MjkzMWRiNDEwZmJjMDMzNTJlN2RkZTgyZmQxZjU4Y2FhYjMxMTVhYTA2NWFjNmUyYTFjN2Ix YzFiMmQ1ZmEzNDQ3YmY5ODM5ZDc2Y2ZhNTgyMmIwOTdiZmY5MTA2ZjM3ZWJhMTI1MDE0NQotK0N0 cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZGRlNmY4ZTA3MGVmMzJhMjdmZjA0YWQxMDQ1YzY1 YjJkZmEzM2UwMwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGRlNmY4ZTA3 MGVmMzJhMjdmZjA0YWQxMDQ1YzY1YjJkZmEzM2UwMwotK0N0cmwudHlwZSA9IHR5cGU6RAotK091 dHB1dCA9IDQxNTNhNTg3Mzk3ZmIxNGRjM2ZhYWQwMjhmZGI3ZWNjCi0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwODVh NjBiY2NhODhiMDk2YzQxOGU4MjVmM2RlNGZkODkyMGVjY2U2MTdhZmFkZGEyY2E4MDAxZThlYmEw N2U1OGU2MGU3MGE5YTA1YjhkZGMyOWQ1NjM2ZDMzYzQwN2Q1ZjIzOTUyYjY1MzI2ZTExM2YyOGQ4 OWJjNmJhM2E0YzNiNzFhZTIzOWQ2ZDFiZDI5NTQ2NjY4MmQxYzY3NWJkYjg4YTMyNTlmNDc0ZmU1 NGEwZjQwMDRkZGM0NmI0NDI0NTE2NTRlMWU2NmQwYzkzZDdiMzEwZjI4YThkYjdiOTVlZWU3YWJj NjFlNzFkZWUzMjJiNGU3MzJiYWY5ZWM3Y2UxODliODg5ZDUzNmRhMWE1NWEyY2MyOWUxNjY2YWE5 YzBlNzAyZjQ0MTIyMDZiZDIwNzMwMmZlODQwNDNjNjY0Mzk0YmRlMGUwYTQ3ZDBhN2E5NDdjOTU5 OTdlMWRiYWVlY2QyZWZhZTEyY2FjZWY4ZWFiMmY2YjI0NzhkZWRjZWJiMzI2NDgyN2NmMjI2ZTEz ZjgwODI5MzFkYjQxMGZiYzAzMzUyZTdkZGU4MmZkMWY1OGNhYWIzMTE1YWEwNjVhYzZlMmExYzdi MWMxYjJkNWZhMzQ0N2JmOTgzOWQ3NmNmYTU4MjJiMDk3YmZmOTEwNmYzN2ViYTEyNTAxNDUKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmRkZTZmOGUwNzBlZjMyYTI3ZmYwNGFkMTA0NWM2 NWIyZGZhMzNlMDMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmRkZTZmOGUw NzBlZjMyYTI3ZmYwNGFkMTA0NWM2NWIyZGZhMzNlMDMKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStP dXRwdXQgPSBkMjNlMzYzNDcwNTJhMWNmYjRhNzc4OWRmNDg2MjdlOGEzMTM0NWM3Ci0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDEwMTAwODVhNjBiY2NhODhiMDk2YzQxOGU4MjVmM2RlNGZkODkyMGVjY2U2MTdhZmFkZGEyY2E4 MDAxZThlYmEwN2U1OGU2MGU3MGE5YTA1YjhkZGMyOWQ1NjM2ZDMzYzQwN2Q1ZjIzOTUyYjY1MzI2 ZTExM2YyOGQ4OWJjNmJhM2E0YzNiNzFhZTIzOWQ2ZDFiZDI5NTQ2NjY4MmQxYzY3NWJkYjg4YTMy NTlmNDc0ZmU1NGEwZjQwMDRkZGM0NmI0NDI0NTE2NTRlMWU2NmQwYzkzZDdiMzEwZjI4YThkYjdi OTVlZWU3YWJjNjFlNzFkZWUzMjJiNGU3MzJiYWY5ZWM3Y2UxODliODg5ZDUzNmRhMWE1NWEyY2My OWUxNjY2YWE5YzBlNzAyZjQ0MTIyMDZiZDIwNzMwMmZlODQwNDNjNjY0Mzk0YmRlMGUwYTQ3ZDBh N2E5NDdjOTU5OTdlMWRiYWVlY2QyZWZhZTEyY2FjZWY4ZWFiMmY2YjI0NzhkZWRjZWJiMzI2NDgy N2NmMjI2ZTEzZjgwODI5MzFkYjQxMGZiYzAzMzUyZTdkZGU4MmZkMWY1OGNhYWIzMTE1YWEwNjVh YzZlMmExYzdiMWMxYjJkNWZhMzQ0N2JmOTgzOWQ3NmNmYTU4MjJiMDk3YmZmOTEwNmYzN2ViYTEy NTAxNDUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmRkZTZmOGUwNzBlZjMyYTI3ZmYw NGFkMTA0NWM2NWIyZGZhMzNlMDMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OmRkZTZmOGUwNzBlZjMyYTI3ZmYwNGFkMTA0NWM2NWIyZGZhMzNlMDMKLStDdHJsLnR5cGUgPSB0 eXBlOkYKLStPdXRwdXQgPSBjMTI4NmU5MjY1NTkxMmQ5MjMxNTRjNDYwNzAyYTMxNDI0YmQ2YjAx Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhl eGtleTowMDAwMDEwMTAwYzA3MjRlMDc3ZDcyMzc0NDFlYjc5MDM5ZGViYWE4NTFjMGJmNDExZTY5 Y2Q1MzE0ZjNjNzJhYTQ1NzYwYzk5Njk5ODViMzQyOTFmYjY0YmY5NjRiNzE5ZDJiOTg5ZTQwYTBl OWZiY2NkYjIzNTM2YTc4ZjFiNTVlYmJkYTgwOWY4NjJlOGVjMzU2MWMxNWM0Mjg4NTk1NTQ2ZTA5 Nzg5Y2JjMjQ5MTA1MDA3MzIyMjM5Nzk1N2M5MDkwYjdmOGY5NmUzZmVmYmM1ZjQzOGM3MmNhOGJi NDhmNjMzN2UyMDhlZTliM2Y2MzBhOGM1YjQwYjlmYWZjYThlNTViZTBhMGNmNDA0Njg4NGEwYTA0 OWI0NTU3ZGE0ZGRiN2EzNDQyMjZmNDcwN2M3MDZlOTY0NjdiMTU2OGFkNGQxMDM2M2FhOWViMDRi OTFlZmJhZGEwYzFjMjkyNDc1Y2U5ODkzYTI3ZDRhMWRlYjRhMjYyZDk4MDE0MWU2Mzc1NmFkZjNk NWZiY2Y2ZWJkZTkxOWNmZDQ0MDUyOTg0NzA0YWY2YmEzNjBlMTkwZmVjZmM3MzBhNWU0NzA3ODVk MzA2MWVlNWY0OTVjZDY5N2FmOTdmOTBiYmMxMWYyZTRlNDFlNTdjZTI1ZjM0YjljNGVjOWYzYzA1 MWQ5NjRhZDBjMDM2YjQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjVhZTkzYmVkYTY3 NTU0NmM4YTc4Mzk3NDkyNWFjYTliMzY1YTZkOGUKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhz ZXNzaW9uX2lkOmJiMGJmZWIzM2I3ODQ3NGIyZDUzMjMyYjMxMjI1MDY5OTJjMGNhZTQKLStDdHJs LnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSA3MzlhZDUyZTQ1NGJhMzQ1NzczNWI3YzUzMDRjNjU3 OAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBo ZXhrZXk6MDAwMDAxMDEwMGMwNzI0ZTA3N2Q3MjM3NDQxZWI3OTAzOWRlYmFhODUxYzBiZjQxMWU2 OWNkNTMxNGYzYzcyYWE0NTc2MGM5OTY5OTg1YjM0MjkxZmI2NGJmOTY0YjcxOWQyYjk4OWU0MGEw ZTlmYmNjZGIyMzUzNmE3OGYxYjU1ZWJiZGE4MDlmODYyZThlYzM1NjFjMTVjNDI4ODU5NTU0NmUw OTc4OWNiYzI0OTEwNTAwNzMyMjIzOTc5NTdjOTA5MGI3ZjhmOTZlM2ZlZmJjNWY0MzhjNzJjYThi YjQ4ZjYzMzdlMjA4ZWU5YjNmNjMwYThjNWI0MGI5ZmFmY2E4ZTU1YmUwYTBjZjQwNDY4ODRhMGEw NDliNDU1N2RhNGRkYjdhMzQ0MjI2ZjQ3MDdjNzA2ZTk2NDY3YjE1NjhhZDRkMTAzNjNhYTllYjA0 YjkxZWZiYWRhMGMxYzI5MjQ3NWNlOTg5M2EyN2Q0YTFkZWI0YTI2MmQ5ODAxNDFlNjM3NTZhZGYz ZDVmYmNmNmViZGU5MTljZmQ0NDA1Mjk4NDcwNGFmNmJhMzYwZTE5MGZlY2ZjNzMwYTVlNDcwNzg1 ZDMwNjFlZTVmNDk1Y2Q2OTdhZjk3ZjkwYmJjMTFmMmU0ZTQxZTU3Y2UyNWYzNGI5YzRlYzlmM2Mw NTFkOTY0YWQwYzAzNmI0Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1YWU5M2JlZGE2 NzU1NDZjOGE3ODM5NzQ5MjVhY2E5YjM2NWE2ZDhlCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDpiYjBiZmViMzNiNzg0NzRiMmQ1MzIzMmIzMTIyNTA2OTkyYzBjYWU0Ci0rQ3Ry bC50eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0gM2JkOWY5ZDlmMDZhYTUyMWQyZjUzZTQwZmM1ZDlm OTAKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMTAxMDBjMDcyNGUwNzdkNzIzNzQ0MWViNzkwMzlkZWJhYTg1MWMwYmY0MTFl NjljZDUzMTRmM2M3MmFhNDU3NjBjOTk2OTk4NWIzNDI5MWZiNjRiZjk2NGI3MTlkMmI5ODllNDBh MGU5ZmJjY2RiMjM1MzZhNzhmMWI1NWViYmRhODA5Zjg2MmU4ZWMzNTYxYzE1YzQyODg1OTU1NDZl MDk3ODljYmMyNDkxMDUwMDczMjIyMzk3OTU3YzkwOTBiN2Y4Zjk2ZTNmZWZiYzVmNDM4YzcyY2E4 YmI0OGY2MzM3ZTIwOGVlOWIzZjYzMGE4YzViNDBiOWZhZmNhOGU1NWJlMGEwY2Y0MDQ2ODg0YTBh MDQ5YjQ1NTdkYTRkZGI3YTM0NDIyNmY0NzA3YzcwNmU5NjQ2N2IxNTY4YWQ0ZDEwMzYzYWE5ZWIw NGI5MWVmYmFkYTBjMWMyOTI0NzVjZTk4OTNhMjdkNGExZGViNGEyNjJkOTgwMTQxZTYzNzU2YWRm M2Q1ZmJjZjZlYmRlOTE5Y2ZkNDQwNTI5ODQ3MDRhZjZiYTM2MGUxOTBmZWNmYzczMGE1ZTQ3MDc4 NWQzMDYxZWU1ZjQ5NWNkNjk3YWY5N2Y5MGJiYzExZjJlNGU0MWU1N2NlMjVmMzRiOWM0ZWM5ZjNj MDUxZDk2NGFkMGMwMzZiNAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NWFlOTNiZWRh Njc1NTQ2YzhhNzgzOTc0OTI1YWNhOWIzNjVhNmQ4ZQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhl eHNlc3Npb25faWQ6YmIwYmZlYjMzYjc4NDc0YjJkNTMyMzJiMzEyMjUwNjk5MmMwY2FlNAotK0N0 cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDMzNWNkMjgxM2JlYmQzZDVlMWRkYTRjMWUxNGMy M2RlCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9 IGhleGtleTowMDAwMDEwMTAwYzA3MjRlMDc3ZDcyMzc0NDFlYjc5MDM5ZGViYWE4NTFjMGJmNDEx ZTY5Y2Q1MzE0ZjNjNzJhYTQ1NzYwYzk5Njk5ODViMzQyOTFmYjY0YmY5NjRiNzE5ZDJiOTg5ZTQw YTBlOWZiY2NkYjIzNTM2YTc4ZjFiNTVlYmJkYTgwOWY4NjJlOGVjMzU2MWMxNWM0Mjg4NTk1NTQ2 ZTA5Nzg5Y2JjMjQ5MTA1MDA3MzIyMjM5Nzk1N2M5MDkwYjdmOGY5NmUzZmVmYmM1ZjQzOGM3MmNh OGJiNDhmNjMzN2UyMDhlZTliM2Y2MzBhOGM1YjQwYjlmYWZjYThlNTViZTBhMGNmNDA0Njg4NGEw YTA0OWI0NTU3ZGE0ZGRiN2EzNDQyMjZmNDcwN2M3MDZlOTY0NjdiMTU2OGFkNGQxMDM2M2FhOWVi MDRiOTFlZmJhZGEwYzFjMjkyNDc1Y2U5ODkzYTI3ZDRhMWRlYjRhMjYyZDk4MDE0MWU2Mzc1NmFk ZjNkNWZiY2Y2ZWJkZTkxOWNmZDQ0MDUyOTg0NzA0YWY2YmEzNjBlMTkwZmVjZmM3MzBhNWU0NzA3 ODVkMzA2MWVlNWY0OTVjZDY5N2FmOTdmOTBiYmMxMWYyZTRlNDFlNTdjZTI1ZjM0YjljNGVjOWYz YzA1MWQ5NjRhZDBjMDM2YjQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjVhZTkzYmVk YTY3NTU0NmM4YTc4Mzk3NDkyNWFjYTliMzY1YTZkOGUKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOmJiMGJmZWIzM2I3ODQ3NGIyZDUzMjMyYjMxMjI1MDY5OTJjMGNhZTQKLStD dHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBmZDI1YzVhZTY0OTY0NWQ4YzBjZmZmMGQ0ZDhl N2E0NwotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAxMDEwMGMwNzI0ZTA3N2Q3MjM3NDQxZWI3OTAzOWRlYmFhODUxYzBiZjQx MWU2OWNkNTMxNGYzYzcyYWE0NTc2MGM5OTY5OTg1YjM0MjkxZmI2NGJmOTY0YjcxOWQyYjk4OWU0 MGEwZTlmYmNjZGIyMzUzNmE3OGYxYjU1ZWJiZGE4MDlmODYyZThlYzM1NjFjMTVjNDI4ODU5NTU0 NmUwOTc4OWNiYzI0OTEwNTAwNzMyMjIzOTc5NTdjOTA5MGI3ZjhmOTZlM2ZlZmJjNWY0MzhjNzJj YThiYjQ4ZjYzMzdlMjA4ZWU5YjNmNjMwYThjNWI0MGI5ZmFmY2E4ZTU1YmUwYTBjZjQwNDY4ODRh MGEwNDliNDU1N2RhNGRkYjdhMzQ0MjI2ZjQ3MDdjNzA2ZTk2NDY3YjE1NjhhZDRkMTAzNjNhYTll YjA0YjkxZWZiYWRhMGMxYzI5MjQ3NWNlOTg5M2EyN2Q0YTFkZWI0YTI2MmQ5ODAxNDFlNjM3NTZh ZGYzZDVmYmNmNmViZGU5MTljZmQ0NDA1Mjk4NDcwNGFmNmJhMzYwZTE5MGZlY2ZjNzMwYTVlNDcw Nzg1ZDMwNjFlZTVmNDk1Y2Q2OTdhZjk3ZjkwYmJjMTFmMmU0ZTQxZTU3Y2UyNWYzNGI5YzRlYzlm M2MwNTFkOTY0YWQwYzAzNmI0Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1YWU5M2Jl ZGE2NzU1NDZjOGE3ODM5NzQ5MjVhY2E5YjM2NWE2ZDhlCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDpiYjBiZmViMzNiNzg0NzRiMmQ1MzIzMmIzMTIyNTA2OTkyYzBjYWU0Ci0r Q3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gOTBlODk3NzNkMDQ2MjM1NTNkNGQyOThlNmFh NzU3ODFkOGE2NTQ0YgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGMwNzI0ZTA3N2Q3MjM3NDQxZWI3OTAzOWRlYmFh ODUxYzBiZjQxMWU2OWNkNTMxNGYzYzcyYWE0NTc2MGM5OTY5OTg1YjM0MjkxZmI2NGJmOTY0Yjcx OWQyYjk4OWU0MGEwZTlmYmNjZGIyMzUzNmE3OGYxYjU1ZWJiZGE4MDlmODYyZThlYzM1NjFjMTVj NDI4ODU5NTU0NmUwOTc4OWNiYzI0OTEwNTAwNzMyMjIzOTc5NTdjOTA5MGI3ZjhmOTZlM2ZlZmJj NWY0MzhjNzJjYThiYjQ4ZjYzMzdlMjA4ZWU5YjNmNjMwYThjNWI0MGI5ZmFmY2E4ZTU1YmUwYTBj ZjQwNDY4ODRhMGEwNDliNDU1N2RhNGRkYjdhMzQ0MjI2ZjQ3MDdjNzA2ZTk2NDY3YjE1NjhhZDRk MTAzNjNhYTllYjA0YjkxZWZiYWRhMGMxYzI5MjQ3NWNlOTg5M2EyN2Q0YTFkZWI0YTI2MmQ5ODAx NDFlNjM3NTZhZGYzZDVmYmNmNmViZGU5MTljZmQ0NDA1Mjk4NDcwNGFmNmJhMzYwZTE5MGZlY2Zj NzMwYTVlNDcwNzg1ZDMwNjFlZTVmNDk1Y2Q2OTdhZjk3ZjkwYmJjMTFmMmU0ZTQxZTU3Y2UyNWYz NGI5YzRlYzlmM2MwNTFkOTY0YWQwYzAzNmI0Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDo1YWU5M2JlZGE2NzU1NDZjOGE3ODM5NzQ5MjVhY2E5YjM2NWE2ZDhlCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpiYjBiZmViMzNiNzg0NzRiMmQ1MzIzMmIzMTIyNTA2OTky YzBjYWU0Ci0rQ3RybC50eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gODZhM2YwNWE1Zjg0NGIyM2Q3 ODdjY2NiZGEzN2EzZDc3M2E0ZDA0OQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpT SEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA0YzQ4NzI4YzgyOGEzNGE1ZmY5MDE4 OGNkNzQ5ZDVjY2Y4NDlkOGY5NmQ3ODA3MmJjOGMzYTc2NmU0YmUyYzRiZmRiOGQwMzEwMjI1ZjA1 YjAzNzNmYTU4MmI1YTllNzhiNmEwNWQ5NThhN2I4MmQ5NDRkMDA2OTdhMWVmMjExOWU3NTQ1YmRm MmM2ZGMyZThjYjIyMTVmZjU4YTAxNjNjMTE2YjBiMzI2Y2FhNTBlNjM4NGU0ZTRhYjQyNGJmYWRh NWQxNWFmMWQyMmYzNGRjNWY4YmZkNWM4MjNjNGI5MjUzZmU4NThhOWQ3ZjE3YmYwYmUxNzk1MWJj ZTc1MWI4YzJmMGIzYmUyNWJhZDYwNTRiMzlmYjJkNjg3ZDRlNjljMDdkNzlmNDk1MmU2NTMxNWIx ZjcxMmNlZTExNzA3YTQ5ODRmMjlkZjlhYWM3YTcyNzQ3NzJmNjBhMmYyMDdlYzZhMzVlMTQ3OGFh OWFlODA0NWRjNTM0MTdiMjIwYmY2MDEyNGQ5ODhlMzc2YmYxODQxNDQwMGJiZTJhYzQ2NTQ3MTZm ZDI2YjNhOTBhZTUzMjE1ZmY5MDYzNjRlZjgyYTA4Njg2YTE5NzcxMjZjNjRkNmQzZjM4MWU4NDc3 ZDU1ZjhlNzlhMGUwNzE5MDg5ZTA3M2ZmZmRiZjgyOGNkZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6ZWRlYWMzNjlmZDE5ZjdkZDFlOGU0OGQwYzY5ZjlkZjVmZTU0NzViNAotK0N0cmwu aGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MzBkOWNkOGQ2M2EyMDNhZWZmNGE5OWQ4YzI5 OTY3NmYyMWEyYzc0ZQotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IGQyZDA2ZDU4OWU2 ZTY5NjU1NmUzZDQ0ZDdkMDVkZWNiCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDRjNDg3MjhjODI4YTM0YTVmZjkwMTg4 Y2Q3NDlkNWNjZjg0OWQ4Zjk2ZDc4MDcyYmM4YzNhNzY2ZTRiZTJjNGJmZGI4ZDAzMTAyMjVmMDVi MDM3M2ZhNTgyYjVhOWU3OGI2YTA1ZDk1OGE3YjgyZDk0NGQwMDY5N2ExZWYyMTE5ZTc1NDViZGYy YzZkYzJlOGNiMjIxNWZmNThhMDE2M2MxMTZiMGIzMjZjYWE1MGU2Mzg0ZTRlNGFiNDI0YmZhZGE1 ZDE1YWYxZDIyZjM0ZGM1ZjhiZmQ1YzgyM2M0YjkyNTNmZTg1OGE5ZDdmMTdiZjBiZTE3OTUxYmNl NzUxYjhjMmYwYjNiZTI1YmFkNjA1NGIzOWZiMmQ2ODdkNGU2OWMwN2Q3OWY0OTUyZTY1MzE1YjFm NzEyY2VlMTE3MDdhNDk4NGYyOWRmOWFhYzdhNzI3NDc3MmY2MGEyZjIwN2VjNmEzNWUxNDc4YWE5 YWU4MDQ1ZGM1MzQxN2IyMjBiZjYwMTI0ZDk4OGUzNzZiZjE4NDE0NDAwYmJlMmFjNDY1NDcxNmZk MjZiM2E5MGFlNTMyMTVmZjkwNjM2NGVmODJhMDg2ODZhMTk3NzEyNmM2NGQ2ZDNmMzgxZTg0Nzdk NTVmOGU3OWEwZTA3MTkwODllMDczZmZmZGJmODI4Y2RlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDplZGVhYzM2OWZkMTlmN2RkMWU4ZTQ4ZDBjNjlmOWRmNWZlNTQ3NWI0Ci0rQ3RybC5o ZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDozMGQ5Y2Q4ZDYzYTIwM2FlZmY0YTk5ZDhjMjk5 Njc2ZjIxYTJjNzRlCi0rQ3RybC50eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0gMTRlM2E4ODZiNzE1 MjA2ZTgzN2I3MGZlN2MwMmI5NDEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hB MQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNGM0ODcyOGM4MjhhMzRhNWZmOTAxODhj ZDc0OWQ1Y2NmODQ5ZDhmOTZkNzgwNzJiYzhjM2E3NjZlNGJlMmM0YmZkYjhkMDMxMDIyNWYwNWIw MzczZmE1ODJiNWE5ZTc4YjZhMDVkOTU4YTdiODJkOTQ0ZDAwNjk3YTFlZjIxMTllNzU0NWJkZjJj NmRjMmU4Y2IyMjE1ZmY1OGEwMTYzYzExNmIwYjMyNmNhYTUwZTYzODRlNGU0YWI0MjRiZmFkYTVk MTVhZjFkMjJmMzRkYzVmOGJmZDVjODIzYzRiOTI1M2ZlODU4YTlkN2YxN2JmMGJlMTc5NTFiY2U3 NTFiOGMyZjBiM2JlMjViYWQ2MDU0YjM5ZmIyZDY4N2Q0ZTY5YzA3ZDc5ZjQ5NTJlNjUzMTViMWY3 MTJjZWUxMTcwN2E0OTg0ZjI5ZGY5YWFjN2E3Mjc0NzcyZjYwYTJmMjA3ZWM2YTM1ZTE0NzhhYTlh ZTgwNDVkYzUzNDE3YjIyMGJmNjAxMjRkOTg4ZTM3NmJmMTg0MTQ0MDBiYmUyYWM0NjU0NzE2ZmQy NmIzYTkwYWU1MzIxNWZmOTA2MzY0ZWY4MmEwODY4NmExOTc3MTI2YzY0ZDZkM2YzODFlODQ3N2Q1 NWY4ZTc5YTBlMDcxOTA4OWUwNzNmZmZkYmY4MjhjZGUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOmVkZWFjMzY5ZmQxOWY3ZGQxZThlNDhkMGM2OWY5ZGY1ZmU1NDc1YjQKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjMwZDljZDhkNjNhMjAzYWVmZjRhOTlkOGMyOTk2 NzZmMjFhMmM3NGUKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSA5ODYyNWNmOTc0MTgx OTI3M2EwZDY4NTJjYTdhYjU5MgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEx Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA0YzQ4NzI4YzgyOGEzNGE1ZmY5MDE4OGNk NzQ5ZDVjY2Y4NDlkOGY5NmQ3ODA3MmJjOGMzYTc2NmU0YmUyYzRiZmRiOGQwMzEwMjI1ZjA1YjAz NzNmYTU4MmI1YTllNzhiNmEwNWQ5NThhN2I4MmQ5NDRkMDA2OTdhMWVmMjExOWU3NTQ1YmRmMmM2 ZGMyZThjYjIyMTVmZjU4YTAxNjNjMTE2YjBiMzI2Y2FhNTBlNjM4NGU0ZTRhYjQyNGJmYWRhNWQx NWFmMWQyMmYzNGRjNWY4YmZkNWM4MjNjNGI5MjUzZmU4NThhOWQ3ZjE3YmYwYmUxNzk1MWJjZTc1 MWI4YzJmMGIzYmUyNWJhZDYwNTRiMzlmYjJkNjg3ZDRlNjljMDdkNzlmNDk1MmU2NTMxNWIxZjcx MmNlZTExNzA3YTQ5ODRmMjlkZjlhYWM3YTcyNzQ3NzJmNjBhMmYyMDdlYzZhMzVlMTQ3OGFhOWFl ODA0NWRjNTM0MTdiMjIwYmY2MDEyNGQ5ODhlMzc2YmYxODQxNDQwMGJiZTJhYzQ2NTQ3MTZmZDI2 YjNhOTBhZTUzMjE1ZmY5MDYzNjRlZjgyYTA4Njg2YTE5NzcxMjZjNjRkNmQzZjM4MWU4NDc3ZDU1 ZjhlNzlhMGUwNzE5MDg5ZTA3M2ZmZmRiZjgyOGNkZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6ZWRlYWMzNjlmZDE5ZjdkZDFlOGU0OGQwYzY5ZjlkZjVmZTU0NzViNAotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MzBkOWNkOGQ2M2EyMDNhZWZmNGE5OWQ4YzI5OTY3 NmYyMWEyYzc0ZQotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGE3YjI3M2YwNGQ1Mzc4 NTYwMTVlMDYwNzVjOTRjMzk4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEK LStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDRjNDg3MjhjODI4YTM0YTVmZjkwMTg4Y2Q3 NDlkNWNjZjg0OWQ4Zjk2ZDc4MDcyYmM4YzNhNzY2ZTRiZTJjNGJmZGI4ZDAzMTAyMjVmMDViMDM3 M2ZhNTgyYjVhOWU3OGI2YTA1ZDk1OGE3YjgyZDk0NGQwMDY5N2ExZWYyMTE5ZTc1NDViZGYyYzZk YzJlOGNiMjIxNWZmNThhMDE2M2MxMTZiMGIzMjZjYWE1MGU2Mzg0ZTRlNGFiNDI0YmZhZGE1ZDE1 YWYxZDIyZjM0ZGM1ZjhiZmQ1YzgyM2M0YjkyNTNmZTg1OGE5ZDdmMTdiZjBiZTE3OTUxYmNlNzUx YjhjMmYwYjNiZTI1YmFkNjA1NGIzOWZiMmQ2ODdkNGU2OWMwN2Q3OWY0OTUyZTY1MzE1YjFmNzEy Y2VlMTE3MDdhNDk4NGYyOWRmOWFhYzdhNzI3NDc3MmY2MGEyZjIwN2VjNmEzNWUxNDc4YWE5YWU4 MDQ1ZGM1MzQxN2IyMjBiZjYwMTI0ZDk4OGUzNzZiZjE4NDE0NDAwYmJlMmFjNDY1NDcxNmZkMjZi M2E5MGFlNTMyMTVmZjkwNjM2NGVmODJhMDg2ODZhMTk3NzEyNmM2NGQ2ZDNmMzgxZTg0NzdkNTVm OGU3OWEwZTA3MTkwODllMDczZmZmZGJmODI4Y2RlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNn aGFzaDplZGVhYzM2OWZkMTlmN2RkMWU4ZTQ4ZDBjNjlmOWRmNWZlNTQ3NWI0Ci0rQ3RybC5oZXhz ZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDozMGQ5Y2Q4ZDYzYTIwM2FlZmY0YTk5ZDhjMjk5Njc2 ZjIxYTJjNzRlCi0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gM2UxYWZhOTgwZDA1ZWMz MGU5YTU1MzMxYWMzMDFjMTAzMDU5OTllMgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA0YzQ4NzI4YzgyOGEzNGE1ZmY5 MDE4OGNkNzQ5ZDVjY2Y4NDlkOGY5NmQ3ODA3MmJjOGMzYTc2NmU0YmUyYzRiZmRiOGQwMzEwMjI1 ZjA1YjAzNzNmYTU4MmI1YTllNzhiNmEwNWQ5NThhN2I4MmQ5NDRkMDA2OTdhMWVmMjExOWU3NTQ1 YmRmMmM2ZGMyZThjYjIyMTVmZjU4YTAxNjNjMTE2YjBiMzI2Y2FhNTBlNjM4NGU0ZTRhYjQyNGJm YWRhNWQxNWFmMWQyMmYzNGRjNWY4YmZkNWM4MjNjNGI5MjUzZmU4NThhOWQ3ZjE3YmYwYmUxNzk1 MWJjZTc1MWI4YzJmMGIzYmUyNWJhZDYwNTRiMzlmYjJkNjg3ZDRlNjljMDdkNzlmNDk1MmU2NTMx NWIxZjcxMmNlZTExNzA3YTQ5ODRmMjlkZjlhYWM3YTcyNzQ3NzJmNjBhMmYyMDdlYzZhMzVlMTQ3 OGFhOWFlODA0NWRjNTM0MTdiMjIwYmY2MDEyNGQ5ODhlMzc2YmYxODQxNDQwMGJiZTJhYzQ2NTQ3 MTZmZDI2YjNhOTBhZTUzMjE1ZmY5MDYzNjRlZjgyYTA4Njg2YTE5NzcxMjZjNjRkNmQzZjM4MWU4 NDc3ZDU1ZjhlNzlhMGUwNzE5MDg5ZTA3M2ZmZmRiZjgyOGNkZQotK0N0cmwuaGV4eGNnaGFzaCA9 IGhleHhjZ2hhc2g6ZWRlYWMzNjlmZDE5ZjdkZDFlOGU0OGQwYzY5ZjlkZjVmZTU0NzViNAotK0N0 cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MzBkOWNkOGQ2M2EyMDNhZWZmNGE5OWQ4 YzI5OTY3NmYyMWEyYzc0ZQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGI5OTNjNDI1 NDY2OWM3YTUxZWQ3MTNkZGFmNzE3NGZkNTI5NmZlNTcKLSsKLStLREYgPSBTU0hLREYKLStDdHJs Lm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBmNmZhOTM0ZjMw M2E5ZGI3MjAzNTJmY2E1YTZiYWU2NzE4NTdkNDQwNTNkNjExMzJhNmQzNmQ3NmNlZTY4NmZkMzFl YTc5NjQwNzMwNmFkM2NiNTAwZjk5Yjg4ODE2NDFjZTMwNDIxNzkxMDE3OWNhMDNkMzYzOGM4OTQx OTEyNzU0MmQyZjZlZWE5OTljNjM3MDcwYTNhMmUyZDE3NDE5ZmQyZDUzYTIzZGMwYmJhZDEzMzMw ODlhNjRjMjMyYzQzMjhjYTVkNmRiMjMzNzc3YTkzOTMyNDA3NzQxYTlmZTRjOGVmZDEzZTlmMmY0 MTEzNjhmZDIwMzVkMDUxNzVmODcxMGI3OWE3N2JkNDc0OWRmMzAyN2VlZjQ0ZjFkMDUwZmQwMTQ1 OGNkMWM2ZDFmZTY3ZDc3NGY0ZTA1NjUzMzMwNWFkMzllY2Y1YTZlNDg5ODE4NmI4YjY2ZTk1Yzk1 NDYwODFjN2RmNmRmN2E0MzM4ODdiYjAzMzNkMGZiMTY0MThiYjJkMzk5YjJiZTBiMDI5NzhlNWJi Yzk3YjU3ZTY3ZTg4YWEwNzNiYTMyODBhMzg2MjA5MDI5YmRjM2Q4ZjQ0OGViMThlMjljODc4MTEx NDI2Mjk4MjdjNTRhYTE5ZDE1MGI2ZWI2ZmI3YTMzZDc0NmIxMWQyN2Q5ZDQ3NAotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6NmRmZmVkOTY0ZmQ0MDQ0Y2I5OWI1Zjg3NzBhYmVmODJkMDJj MWNkMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZDk4ZjFlODg0NjMzYzQ2 MzI1NjhlMWRkMGE1NGU0Yzg1MDhjMjc5ZAotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9 IGQ5YzBlZDZiN2ZiZjA2NmQ0ZjNjZmY3ZDI1ODVlZjViCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3Ry bC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwZjZmYTkzNGYz MDNhOWRiNzIwMzUyZmNhNWE2YmFlNjcxODU3ZDQ0MDUzZDYxMTMyYTZkMzZkNzZjZWU2ODZmZDMx ZWE3OTY0MDczMDZhZDNjYjUwMGY5OWI4ODgxNjQxY2UzMDQyMTc5MTAxNzljYTAzZDM2MzhjODk0 MTkxMjc1NDJkMmY2ZWVhOTk5YzYzNzA3MGEzYTJlMmQxNzQxOWZkMmQ1M2EyM2RjMGJiYWQxMzMz MDg5YTY0YzIzMmM0MzI4Y2E1ZDZkYjIzMzc3N2E5MzkzMjQwNzc0MWE5ZmU0YzhlZmQxM2U5ZjJm NDExMzY4ZmQyMDM1ZDA1MTc1Zjg3MTBiNzlhNzdiZDQ3NDlkZjMwMjdlZWY0NGYxZDA1MGZkMDE0 NThjZDFjNmQxZmU2N2Q3NzRmNGUwNTY1MzMzMDVhZDM5ZWNmNWE2ZTQ4OTgxODZiOGI2NmU5NWM5 NTQ2MDgxYzdkZjZkZjdhNDMzODg3YmIwMzMzZDBmYjE2NDE4YmIyZDM5OWIyYmUwYjAyOTc4ZTVi YmM5N2I1N2U2N2U4OGFhMDczYmEzMjgwYTM4NjIwOTAyOWJkYzNkOGY0NDhlYjE4ZTI5Yzg3ODEx MTQyNjI5ODI3YzU0YWExOWQxNTBiNmViNmZiN2EzM2Q3NDZiMTFkMjdkOWQ0NzQKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjZkZmZlZDk2NGZkNDA0NGNiOTliNWY4NzcwYWJlZjgyZDAy YzFjZDEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmQ5OGYxZTg4NDYzM2M0 NjMyNTY4ZTFkZDBhNTRlNGM4NTA4YzI3OWQKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQg PSBkYTEzODMzYWEyYzA4NmU1ZDc2NTk1MTMyZjRlNWZjNgotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGY2ZmE5MzRm MzAzYTlkYjcyMDM1MmZjYTVhNmJhZTY3MTg1N2Q0NDA1M2Q2MTEzMmE2ZDM2ZDc2Y2VlNjg2ZmQz MWVhNzk2NDA3MzA2YWQzY2I1MDBmOTliODg4MTY0MWNlMzA0MjE3OTEwMTc5Y2EwM2QzNjM4Yzg5 NDE5MTI3NTQyZDJmNmVlYTk5OWM2MzcwNzBhM2EyZTJkMTc0MTlmZDJkNTNhMjNkYzBiYmFkMTMz MzA4OWE2NGMyMzJjNDMyOGNhNWQ2ZGIyMzM3NzdhOTM5MzI0MDc3NDFhOWZlNGM4ZWZkMTNlOWYy ZjQxMTM2OGZkMjAzNWQwNTE3NWY4NzEwYjc5YTc3YmQ0NzQ5ZGYzMDI3ZWVmNDRmMWQwNTBmZDAx NDU4Y2QxYzZkMWZlNjdkNzc0ZjRlMDU2NTMzMzA1YWQzOWVjZjVhNmU0ODk4MTg2YjhiNjZlOTVj OTU0NjA4MWM3ZGY2ZGY3YTQzMzg4N2JiMDMzM2QwZmIxNjQxOGJiMmQzOTliMmJlMGIwMjk3OGU1 YmJjOTdiNTdlNjdlODhhYTA3M2JhMzI4MGEzODYyMDkwMjliZGMzZDhmNDQ4ZWIxOGUyOWM4Nzgx MTE0MjYyOTgyN2M1NGFhMTlkMTUwYjZlYjZmYjdhMzNkNzQ2YjExZDI3ZDlkNDc0Ci0rQ3RybC5o ZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo2ZGZmZWQ5NjRmZDQwNDRjYjk5YjVmODc3MGFiZWY4MmQw MmMxY2QxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpkOThmMWU4ODQ2MzNj NDYzMjU2OGUxZGQwYTU0ZTRjODUwOGMyNzlkCi0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0 ID0gOWUyNzQwMDU4N2I2NDYzOTdhNzY1NWJlMGU1NzYzZWMKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBmNmZhOTM0 ZjMwM2E5ZGI3MjAzNTJmY2E1YTZiYWU2NzE4NTdkNDQwNTNkNjExMzJhNmQzNmQ3NmNlZTY4NmZk MzFlYTc5NjQwNzMwNmFkM2NiNTAwZjk5Yjg4ODE2NDFjZTMwNDIxNzkxMDE3OWNhMDNkMzYzOGM4 OTQxOTEyNzU0MmQyZjZlZWE5OTljNjM3MDcwYTNhMmUyZDE3NDE5ZmQyZDUzYTIzZGMwYmJhZDEz MzMwODlhNjRjMjMyYzQzMjhjYTVkNmRiMjMzNzc3YTkzOTMyNDA3NzQxYTlmZTRjOGVmZDEzZTlm MmY0MTEzNjhmZDIwMzVkMDUxNzVmODcxMGI3OWE3N2JkNDc0OWRmMzAyN2VlZjQ0ZjFkMDUwZmQw MTQ1OGNkMWM2ZDFmZTY3ZDc3NGY0ZTA1NjUzMzMwNWFkMzllY2Y1YTZlNDg5ODE4NmI4YjY2ZTk1 Yzk1NDYwODFjN2RmNmRmN2E0MzM4ODdiYjAzMzNkMGZiMTY0MThiYjJkMzk5YjJiZTBiMDI5Nzhl NWJiYzk3YjU3ZTY3ZTg4YWEwNzNiYTMyODBhMzg2MjA5MDI5YmRjM2Q4ZjQ0OGViMThlMjljODc4 MTExNDI2Mjk4MjdjNTRhYTE5ZDE1MGI2ZWI2ZmI3YTMzZDc0NmIxMWQyN2Q5ZDQ3NAotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NmRmZmVkOTY0ZmQ0MDQ0Y2I5OWI1Zjg3NzBhYmVmODJk MDJjMWNkMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZDk4ZjFlODg0NjMz YzQ2MzI1NjhlMWRkMGE1NGU0Yzg1MDhjMjc5ZAotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1 dCA9IDkxYjk1ZDVjY2U3ZjJhZWMxNDc3NmY0OWY2NTJhMzA1Ci0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwZjZmYTkz NGYzMDNhOWRiNzIwMzUyZmNhNWE2YmFlNjcxODU3ZDQ0MDUzZDYxMTMyYTZkMzZkNzZjZWU2ODZm ZDMxZWE3OTY0MDczMDZhZDNjYjUwMGY5OWI4ODgxNjQxY2UzMDQyMTc5MTAxNzljYTAzZDM2Mzhj ODk0MTkxMjc1NDJkMmY2ZWVhOTk5YzYzNzA3MGEzYTJlMmQxNzQxOWZkMmQ1M2EyM2RjMGJiYWQx MzMzMDg5YTY0YzIzMmM0MzI4Y2E1ZDZkYjIzMzc3N2E5MzkzMjQwNzc0MWE5ZmU0YzhlZmQxM2U5 ZjJmNDExMzY4ZmQyMDM1ZDA1MTc1Zjg3MTBiNzlhNzdiZDQ3NDlkZjMwMjdlZWY0NGYxZDA1MGZk MDE0NThjZDFjNmQxZmU2N2Q3NzRmNGUwNTY1MzMzMDVhZDM5ZWNmNWE2ZTQ4OTgxODZiOGI2NmU5 NWM5NTQ2MDgxYzdkZjZkZjdhNDMzODg3YmIwMzMzZDBmYjE2NDE4YmIyZDM5OWIyYmUwYjAyOTc4 ZTViYmM5N2I1N2U2N2U4OGFhMDczYmEzMjgwYTM4NjIwOTAyOWJkYzNkOGY0NDhlYjE4ZTI5Yzg3 ODExMTQyNjI5ODI3YzU0YWExOWQxNTBiNmViNmZiN2EzM2Q3NDZiMTFkMjdkOWQ0NzQKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjZkZmZlZDk2NGZkNDA0NGNiOTliNWY4NzcwYWJlZjgy ZDAyYzFjZDEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmQ5OGYxZTg4NDYz M2M0NjMyNTY4ZTFkZDBhNTRlNGM4NTA4YzI3OWQKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRw dXQgPSBhOTdkYzlhOTllMzdjOTgzYTQ5MjJjZDJlY2RmYTM5NGI3MTE0MWNlCi0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEw MTAwZjZmYTkzNGYzMDNhOWRiNzIwMzUyZmNhNWE2YmFlNjcxODU3ZDQ0MDUzZDYxMTMyYTZkMzZk NzZjZWU2ODZmZDMxZWE3OTY0MDczMDZhZDNjYjUwMGY5OWI4ODgxNjQxY2UzMDQyMTc5MTAxNzlj YTAzZDM2MzhjODk0MTkxMjc1NDJkMmY2ZWVhOTk5YzYzNzA3MGEzYTJlMmQxNzQxOWZkMmQ1M2Ey M2RjMGJiYWQxMzMzMDg5YTY0YzIzMmM0MzI4Y2E1ZDZkYjIzMzc3N2E5MzkzMjQwNzc0MWE5ZmU0 YzhlZmQxM2U5ZjJmNDExMzY4ZmQyMDM1ZDA1MTc1Zjg3MTBiNzlhNzdiZDQ3NDlkZjMwMjdlZWY0 NGYxZDA1MGZkMDE0NThjZDFjNmQxZmU2N2Q3NzRmNGUwNTY1MzMzMDVhZDM5ZWNmNWE2ZTQ4OTgx ODZiOGI2NmU5NWM5NTQ2MDgxYzdkZjZkZjdhNDMzODg3YmIwMzMzZDBmYjE2NDE4YmIyZDM5OWIy YmUwYjAyOTc4ZTViYmM5N2I1N2U2N2U4OGFhMDczYmEzMjgwYTM4NjIwOTAyOWJkYzNkOGY0NDhl YjE4ZTI5Yzg3ODExMTQyNjI5ODI3YzU0YWExOWQxNTBiNmViNmZiN2EzM2Q3NDZiMTFkMjdkOWQ0 NzQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjZkZmZlZDk2NGZkNDA0NGNiOTliNWY4 NzcwYWJlZjgyZDAyYzFjZDEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmQ5 OGYxZTg4NDYzM2M0NjMyNTY4ZTFkZDBhNTRlNGM4NTA4YzI3OWQKLStDdHJsLnR5cGUgPSB0eXBl OkYKLStPdXRwdXQgPSAxNzNkODQ2Zjk3OTBjNzQyY2E4NmFmNGJmZjVmOTY1YzYwODhhMDViCi0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDEwMDBhMzQxY2IxNDg1NTQwNDZhYzc5Njg2NDczYzdlOTI0NDg2YWU3OWM5ZGQxODc4 YTY0NzY4N2QzNTYyY2M4MWU1Mzc5YzIwZGY0NGVkZDZiZmE4YjlhMjZjZGMwNmM2ZWI1ZjAyMjcy ZjkwOTkyZWY1OGM2NWZlM2U5ODcyNWU5NDM0YTg1MTJhZWY0YzIwOTNkMjdjNTdhMWFlZTVmNWI2 ODYxMDI1MDAxZDIwYjViYzg2NjZjNDkzMDEwN2Y1NjMwMzViY2E2ZGRjOTFmZjlkMTVlYmI1NmQy NjI4MTQ2ZDNiYWEzYzZmODFkYzczNjAyNTE4YzJhZWY0OTA2ZTA4YjJmZmE2N2U0NTI4ZDkyYjFi M2JjYmQzYTllNDIxZDg2NDEzYmIzNTU1NzRiYjY4Zjk0YmY3NTIyMTkxOGNhNGY2NjI0NDQ1YjBh ZmEwYzI2ZTI3MDc4ODQ5MGNiYWIxYWJkNDFhNDIyMDBhYjllNzZhMmY4YjhmZmJlMGM1ZWY3YTIz MGI1YmY3MDE4Y2ZkMTcwY2NkMDA5MDU4MDkyZDI0NDZlYmU3M2M1ZjBiZjJkOWNlY2EzMTE1MDJh ZjYyMTg4MGViMThlNDZlZGM3ODMyNzY1YzAwZTI1OTlmYmI4MjQwMmIwMzllYjVjNWFlMzc2Njkw YTcxN2MwMzQ0Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0Y2VlOWIxODY3ZTk0OTEx ZThmOWZiZDllYzMzNzVkMjVjOTU1Zjk3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDoyYWVmZGFhNmYxNGFjM2VjMjAwYTk1MWZkNzQ0MzNjZGRjMDExOTNhCi0rQ3RybC50eXBl ID0gdHlwZTpBCi0rT3V0cHV0ID0gNmZhNDk2ODQ3Y2RhNzM2N2NiMzJiOGJlOWFhZTNmODUKLSsK LStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5 OjAwMDAwMTAwMGEzNDFjYjE0ODU1NDA0NmFjNzk2ODY0NzNjN2U5MjQ0ODZhZTc5YzlkZDE4Nzhh NjQ3Njg3ZDM1NjJjYzgxZTUzNzljMjBkZjQ0ZWRkNmJmYThiOWEyNmNkYzA2YzZlYjVmMDIyNzJm OTA5OTJlZjU4YzY1ZmUzZTk4NzI1ZTk0MzRhODUxMmFlZjRjMjA5M2QyN2M1N2ExYWVlNWY1YjY4 NjEwMjUwMDFkMjBiNWJjODY2NmM0OTMwMTA3ZjU2MzAzNWJjYTZkZGM5MWZmOWQxNWViYjU2ZDI2 MjgxNDZkM2JhYTNjNmY4MWRjNzM2MDI1MThjMmFlZjQ5MDZlMDhiMmZmYTY3ZTQ1MjhkOTJiMWIz YmNiZDNhOWU0MjFkODY0MTNiYjM1NTU3NGJiNjhmOTRiZjc1MjIxOTE4Y2E0ZjY2MjQ0NDViMGFm YTBjMjZlMjcwNzg4NDkwY2JhYjFhYmQ0MWE0MjIwMGFiOWU3NmEyZjhiOGZmYmUwYzVlZjdhMjMw YjViZjcwMThjZmQxNzBjY2QwMDkwNTgwOTJkMjQ0NmViZTczYzVmMGJmMmQ5Y2VjYTMxMTUwMmFm NjIxODgwZWIxOGU0NmVkYzc4MzI3NjVjMDBlMjU5OWZiYjgyNDAyYjAzOWViNWM1YWUzNzY2OTBh NzE3YzAzNDQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjRjZWU5YjE4NjdlOTQ5MTFl OGY5ZmJkOWVjMzM3NWQyNWM5NTVmOTcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9u X2lkOjJhZWZkYWE2ZjE0YWMzZWMyMDBhOTUxZmQ3NDQzM2NkZGMwMTE5M2EKLStDdHJsLnR5cGUg PSB0eXBlOkIKLStPdXRwdXQgPSA3MDJhYzg2MzY1MjBiN2M2MTY5ZGRjNjYwNzgxZGU5ZgotKwot K0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6 MDAwMDAxMDAwYTM0MWNiMTQ4NTU0MDQ2YWM3OTY4NjQ3M2M3ZTkyNDQ4NmFlNzljOWRkMTg3OGE2 NDc2ODdkMzU2MmNjODFlNTM3OWMyMGRmNDRlZGQ2YmZhOGI5YTI2Y2RjMDZjNmViNWYwMjI3MmY5 MDk5MmVmNThjNjVmZTNlOTg3MjVlOTQzNGE4NTEyYWVmNGMyMDkzZDI3YzU3YTFhZWU1ZjViNjg2 MTAyNTAwMWQyMGI1YmM4NjY2YzQ5MzAxMDdmNTYzMDM1YmNhNmRkYzkxZmY5ZDE1ZWJiNTZkMjYy ODE0NmQzYmFhM2M2ZjgxZGM3MzYwMjUxOGMyYWVmNDkwNmUwOGIyZmZhNjdlNDUyOGQ5MmIxYjNi Y2JkM2E5ZTQyMWQ4NjQxM2JiMzU1NTc0YmI2OGY5NGJmNzUyMjE5MThjYTRmNjYyNDQ0NWIwYWZh MGMyNmUyNzA3ODg0OTBjYmFiMWFiZDQxYTQyMjAwYWI5ZTc2YTJmOGI4ZmZiZTBjNWVmN2EyMzBi NWJmNzAxOGNmZDE3MGNjZDAwOTA1ODA5MmQyNDQ2ZWJlNzNjNWYwYmYyZDljZWNhMzExNTAyYWY2 MjE4ODBlYjE4ZTQ2ZWRjNzgzMjc2NWMwMGUyNTk5ZmJiODI0MDJiMDM5ZWI1YzVhZTM3NjY5MGE3 MTdjMDM0NAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NGNlZTliMTg2N2U5NDkxMWU4 ZjlmYmQ5ZWMzMzc1ZDI1Yzk1NWY5NwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6MmFlZmRhYTZmMTRhYzNlYzIwMGE5NTFmZDc0NDMzY2RkYzAxMTkzYQotK0N0cmwudHlwZSA9 IHR5cGU6QwotK091dHB1dCA9IDZmZmQ3MDMxODBhZjdjMjIwN2Q1ZmE5ZTQ2NzI3MmUzCi0rCi0r S0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTow MDAwMDEwMDBhMzQxY2IxNDg1NTQwNDZhYzc5Njg2NDczYzdlOTI0NDg2YWU3OWM5ZGQxODc4YTY0 NzY4N2QzNTYyY2M4MWU1Mzc5YzIwZGY0NGVkZDZiZmE4YjlhMjZjZGMwNmM2ZWI1ZjAyMjcyZjkw OTkyZWY1OGM2NWZlM2U5ODcyNWU5NDM0YTg1MTJhZWY0YzIwOTNkMjdjNTdhMWFlZTVmNWI2ODYx MDI1MDAxZDIwYjViYzg2NjZjNDkzMDEwN2Y1NjMwMzViY2E2ZGRjOTFmZjlkMTVlYmI1NmQyNjI4 MTQ2ZDNiYWEzYzZmODFkYzczNjAyNTE4YzJhZWY0OTA2ZTA4YjJmZmE2N2U0NTI4ZDkyYjFiM2Jj YmQzYTllNDIxZDg2NDEzYmIzNTU1NzRiYjY4Zjk0YmY3NTIyMTkxOGNhNGY2NjI0NDQ1YjBhZmEw YzI2ZTI3MDc4ODQ5MGNiYWIxYWJkNDFhNDIyMDBhYjllNzZhMmY4YjhmZmJlMGM1ZWY3YTIzMGI1 YmY3MDE4Y2ZkMTcwY2NkMDA5MDU4MDkyZDI0NDZlYmU3M2M1ZjBiZjJkOWNlY2EzMTE1MDJhZjYy MTg4MGViMThlNDZlZGM3ODMyNzY1YzAwZTI1OTlmYmI4MjQwMmIwMzllYjVjNWFlMzc2NjkwYTcx N2MwMzQ0Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0Y2VlOWIxODY3ZTk0OTExZThm OWZiZDllYzMzNzVkMjVjOTU1Zjk3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDoyYWVmZGFhNmYxNGFjM2VjMjAwYTk1MWZkNzQ0MzNjZGRjMDExOTNhCi0rQ3RybC50eXBlID0g dHlwZTpECi0rT3V0cHV0ID0gN2FlNTI4MWUzNzdmMjMwZGNjOTg1NGNmOTk1ZjY2M2QKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMTAwMGEzNDFjYjE0ODU1NDA0NmFjNzk2ODY0NzNjN2U5MjQ0ODZhZTc5YzlkZDE4NzhhNjQ3 Njg3ZDM1NjJjYzgxZTUzNzljMjBkZjQ0ZWRkNmJmYThiOWEyNmNkYzA2YzZlYjVmMDIyNzJmOTA5 OTJlZjU4YzY1ZmUzZTk4NzI1ZTk0MzRhODUxMmFlZjRjMjA5M2QyN2M1N2ExYWVlNWY1YjY4NjEw MjUwMDFkMjBiNWJjODY2NmM0OTMwMTA3ZjU2MzAzNWJjYTZkZGM5MWZmOWQxNWViYjU2ZDI2Mjgx NDZkM2JhYTNjNmY4MWRjNzM2MDI1MThjMmFlZjQ5MDZlMDhiMmZmYTY3ZTQ1MjhkOTJiMWIzYmNi ZDNhOWU0MjFkODY0MTNiYjM1NTU3NGJiNjhmOTRiZjc1MjIxOTE4Y2E0ZjY2MjQ0NDViMGFmYTBj MjZlMjcwNzg4NDkwY2JhYjFhYmQ0MWE0MjIwMGFiOWU3NmEyZjhiOGZmYmUwYzVlZjdhMjMwYjVi ZjcwMThjZmQxNzBjY2QwMDkwNTgwOTJkMjQ0NmViZTczYzVmMGJmMmQ5Y2VjYTMxMTUwMmFmNjIx ODgwZWIxOGU0NmVkYzc4MzI3NjVjMDBlMjU5OWZiYjgyNDAyYjAzOWViNWM1YWUzNzY2OTBhNzE3 YzAzNDQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjRjZWU5YjE4NjdlOTQ5MTFlOGY5 ZmJkOWVjMzM3NWQyNWM5NTVmOTcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OjJhZWZkYWE2ZjE0YWMzZWMyMDBhOTUxZmQ3NDQzM2NkZGMwMTE5M2EKLStDdHJsLnR5cGUgPSB0 eXBlOkUKLStPdXRwdXQgPSBmYmNiMTUyZGY3YTNmMTJhOGYxNzRmOWNhMzFiYjMxYjEyNGFlM2My Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhl eGtleTowMDAwMDEwMDBhMzQxY2IxNDg1NTQwNDZhYzc5Njg2NDczYzdlOTI0NDg2YWU3OWM5ZGQx ODc4YTY0NzY4N2QzNTYyY2M4MWU1Mzc5YzIwZGY0NGVkZDZiZmE4YjlhMjZjZGMwNmM2ZWI1ZjAy MjcyZjkwOTkyZWY1OGM2NWZlM2U5ODcyNWU5NDM0YTg1MTJhZWY0YzIwOTNkMjdjNTdhMWFlZTVm NWI2ODYxMDI1MDAxZDIwYjViYzg2NjZjNDkzMDEwN2Y1NjMwMzViY2E2ZGRjOTFmZjlkMTVlYmI1 NmQyNjI4MTQ2ZDNiYWEzYzZmODFkYzczNjAyNTE4YzJhZWY0OTA2ZTA4YjJmZmE2N2U0NTI4ZDky YjFiM2JjYmQzYTllNDIxZDg2NDEzYmIzNTU1NzRiYjY4Zjk0YmY3NTIyMTkxOGNhNGY2NjI0NDQ1 YjBhZmEwYzI2ZTI3MDc4ODQ5MGNiYWIxYWJkNDFhNDIyMDBhYjllNzZhMmY4YjhmZmJlMGM1ZWY3 YTIzMGI1YmY3MDE4Y2ZkMTcwY2NkMDA5MDU4MDkyZDI0NDZlYmU3M2M1ZjBiZjJkOWNlY2EzMTE1 MDJhZjYyMTg4MGViMThlNDZlZGM3ODMyNzY1YzAwZTI1OTlmYmI4MjQwMmIwMzllYjVjNWFlMzc2 NjkwYTcxN2MwMzQ0Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0Y2VlOWIxODY3ZTk0 OTExZThmOWZiZDllYzMzNzVkMjVjOTU1Zjk3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDoyYWVmZGFhNmYxNGFjM2VjMjAwYTk1MWZkNzQ0MzNjZGRjMDExOTNhCi0rQ3RybC50 eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gM2YwYzU3ZmJjY2ZiNzMwNmNmZjIzYmRhZjY5ZDcwYThh Mzk0YjM0YgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAxMDAxMWFmYjU5MDU1YjRlOGUwODQwZDc2YTJkMjhhM2VjMWNmM2Zl N2U0MzZiNTg1ZWFiMjljYzMxNDllMWZhNjEwZDk3OWZjYzE0ODNhMGVhMmI0MjZmOGUyNWJjODdi YWU5NGJkY2JlYWE4MDUwMWEzYzU1NGQ5OTZmMTY1NmFjOWJlNzVlY2VmYTQ2MjczYjNhYjhhNjY0 NjhjYjRhMTZiMzYzMGNiYzQxZGY0OWViZTM5MTdiNWFmYmEyNGQ2NjkyNjRlMTE2ODlmMWE0MDFh YmM1NTdhMGM0Y2YyMmFkOTMyMzA1NjY0MmMyYmY3ZmVhMDkwN2JhMjI3NGI3NjY2ZGQxNDRlNjZl MWYzOTM3MWExNGNjYWZhMDMwYmFkNGM2ZTA0ZjdiMjJmMWUxNGY5YTM3YWQ2YWFhMzY0MmY2NjA2 ODg2M2E3NGVkNGEwN2U4NzQ5NGYwYWNlNzcyYjY4Mjg0NWZiMjdlZmQ3ZjFhOTlmMDliNDE5ZjQz ZDg0NDMzMDI1MzRlNGM1OWMwZDNjNTk3MzZlNDczNzVmZjZlOTZjMTY3MjQ3YzUxOTZhN2M4ODQ5 YWRiNTI3ZTljY2JmYWU3OTdlYTMxMTE4MTk3ODE5N2Y5MjRkY2YwZGI3MzY3Zjg0YmFhMjdkYjZl NTU0YmE2Yjc2NDU1MGQyODM0ZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6N2NlZDdi NzI2NDRiZTY4MTYxNWU1MDNlY2FmZTBjOGY3MTI0Yzg1YgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6OTVkNGNhNWIwMTA3ZDNkOWY5NGVmODU3ZDdhNjRmNjg1ZDNmZWNkYwot K0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IDdlMzdlYTUyMTU2ZmFkMTkwMzcwOWUxZDMy Mjk3MjFmCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtl eSA9IGhleGtleTowMDAwMDEwMDExYWZiNTkwNTViNGU4ZTA4NDBkNzZhMmQyOGEzZWMxY2YzZmU3 ZTQzNmI1ODVlYWIyOWNjMzE0OWUxZmE2MTBkOTc5ZmNjMTQ4M2EwZWEyYjQyNmY4ZTI1YmM4N2Jh ZTk0YmRjYmVhYTgwNTAxYTNjNTU0ZDk5NmYxNjU2YWM5YmU3NWVjZWZhNDYyNzNiM2FiOGE2NjQ2 OGNiNGExNmIzNjMwY2JjNDFkZjQ5ZWJlMzkxN2I1YWZiYTI0ZDY2OTI2NGUxMTY4OWYxYTQwMWFi YzU1N2EwYzRjZjIyYWQ5MzIzMDU2NjQyYzJiZjdmZWEwOTA3YmEyMjc0Yjc2NjZkZDE0NGU2NmUx ZjM5MzcxYTE0Y2NhZmEwMzBiYWQ0YzZlMDRmN2IyMmYxZTE0ZjlhMzdhZDZhYWEzNjQyZjY2MDY4 ODYzYTc0ZWQ0YTA3ZTg3NDk0ZjBhY2U3NzJiNjgyODQ1ZmIyN2VmZDdmMWE5OWYwOWI0MTlmNDNk ODQ0MzMwMjUzNGU0YzU5YzBkM2M1OTczNmU0NzM3NWZmNmU5NmMxNjcyNDdjNTE5NmE3Yzg4NDlh ZGI1MjdlOWNjYmZhZTc5N2VhMzExMTgxOTc4MTk3ZjkyNGRjZjBkYjczNjdmODRiYWEyN2RiNmU1 NTRiYTZiNzY0NTUwZDI4MzRmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo3Y2VkN2I3 MjY0NGJlNjgxNjE1ZTUwM2VjYWZlMGM4ZjcxMjRjODViCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDo5NWQ0Y2E1YjAxMDdkM2Q5Zjk0ZWY4NTdkN2E2NGY2ODVkM2ZlY2RjCi0r Q3RybC50eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0gYzE1NTY5NTgzZGU0MTNlMDgyOTNiZjE2ODlh OWFmZTgKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMTAwMTFhZmI1OTA1NWI0ZThlMDg0MGQ3NmEyZDI4YTNlYzFjZjNmZTdl NDM2YjU4NWVhYjI5Y2MzMTQ5ZTFmYTYxMGQ5NzlmY2MxNDgzYTBlYTJiNDI2ZjhlMjViYzg3YmFl OTRiZGNiZWFhODA1MDFhM2M1NTRkOTk2ZjE2NTZhYzliZTc1ZWNlZmE0NjI3M2IzYWI4YTY2NDY4 Y2I0YTE2YjM2MzBjYmM0MWRmNDllYmUzOTE3YjVhZmJhMjRkNjY5MjY0ZTExNjg5ZjFhNDAxYWJj NTU3YTBjNGNmMjJhZDkzMjMwNTY2NDJjMmJmN2ZlYTA5MDdiYTIyNzRiNzY2NmRkMTQ0ZTY2ZTFm MzkzNzFhMTRjY2FmYTAzMGJhZDRjNmUwNGY3YjIyZjFlMTRmOWEzN2FkNmFhYTM2NDJmNjYwNjg4 NjNhNzRlZDRhMDdlODc0OTRmMGFjZTc3MmI2ODI4NDVmYjI3ZWZkN2YxYTk5ZjA5YjQxOWY0M2Q4 NDQzMzAyNTM0ZTRjNTljMGQzYzU5NzM2ZTQ3Mzc1ZmY2ZTk2YzE2NzI0N2M1MTk2YTdjODg0OWFk YjUyN2U5Y2NiZmFlNzk3ZWEzMTExODE5NzgxOTdmOTI0ZGNmMGRiNzM2N2Y4NGJhYTI3ZGI2ZTU1 NGJhNmI3NjQ1NTBkMjgzNGYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjdjZWQ3Yjcy NjQ0YmU2ODE2MTVlNTAzZWNhZmUwYzhmNzEyNGM4NWIKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOjk1ZDRjYTViMDEwN2QzZDlmOTRlZjg1N2Q3YTY0ZjY4NWQzZmVjZGMKLStD dHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAwYzg1MjI3NTM5ZjVlMzI4YzY0MTcyMjgwNzU5 ZDliZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAxMDAxMWFmYjU5MDU1YjRlOGUwODQwZDc2YTJkMjhhM2VjMWNmM2ZlN2U0 MzZiNTg1ZWFiMjljYzMxNDllMWZhNjEwZDk3OWZjYzE0ODNhMGVhMmI0MjZmOGUyNWJjODdiYWU5 NGJkY2JlYWE4MDUwMWEzYzU1NGQ5OTZmMTY1NmFjOWJlNzVlY2VmYTQ2MjczYjNhYjhhNjY0Njhj YjRhMTZiMzYzMGNiYzQxZGY0OWViZTM5MTdiNWFmYmEyNGQ2NjkyNjRlMTE2ODlmMWE0MDFhYmM1 NTdhMGM0Y2YyMmFkOTMyMzA1NjY0MmMyYmY3ZmVhMDkwN2JhMjI3NGI3NjY2ZGQxNDRlNjZlMWYz OTM3MWExNGNjYWZhMDMwYmFkNGM2ZTA0ZjdiMjJmMWUxNGY5YTM3YWQ2YWFhMzY0MmY2NjA2ODg2 M2E3NGVkNGEwN2U4NzQ5NGYwYWNlNzcyYjY4Mjg0NWZiMjdlZmQ3ZjFhOTlmMDliNDE5ZjQzZDg0 NDMzMDI1MzRlNGM1OWMwZDNjNTk3MzZlNDczNzVmZjZlOTZjMTY3MjQ3YzUxOTZhN2M4ODQ5YWRi NTI3ZTljY2JmYWU3OTdlYTMxMTE4MTk3ODE5N2Y5MjRkY2YwZGI3MzY3Zjg0YmFhMjdkYjZlNTU0 YmE2Yjc2NDU1MGQyODM0ZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6N2NlZDdiNzI2 NDRiZTY4MTYxNWU1MDNlY2FmZTBjOGY3MTI0Yzg1YgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhl eHNlc3Npb25faWQ6OTVkNGNhNWIwMTA3ZDNkOWY5NGVmODU3ZDdhNjRmNjg1ZDNmZWNkYwotK0N0 cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDNkYmM0MmQ5ZTcxMjhlODYxYjg3NzgxNTQ2Y2Vk YzhlCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9 IGhleGtleTowMDAwMDEwMDExYWZiNTkwNTViNGU4ZTA4NDBkNzZhMmQyOGEzZWMxY2YzZmU3ZTQz NmI1ODVlYWIyOWNjMzE0OWUxZmE2MTBkOTc5ZmNjMTQ4M2EwZWEyYjQyNmY4ZTI1YmM4N2JhZTk0 YmRjYmVhYTgwNTAxYTNjNTU0ZDk5NmYxNjU2YWM5YmU3NWVjZWZhNDYyNzNiM2FiOGE2NjQ2OGNi NGExNmIzNjMwY2JjNDFkZjQ5ZWJlMzkxN2I1YWZiYTI0ZDY2OTI2NGUxMTY4OWYxYTQwMWFiYzU1 N2EwYzRjZjIyYWQ5MzIzMDU2NjQyYzJiZjdmZWEwOTA3YmEyMjc0Yjc2NjZkZDE0NGU2NmUxZjM5 MzcxYTE0Y2NhZmEwMzBiYWQ0YzZlMDRmN2IyMmYxZTE0ZjlhMzdhZDZhYWEzNjQyZjY2MDY4ODYz YTc0ZWQ0YTA3ZTg3NDk0ZjBhY2U3NzJiNjgyODQ1ZmIyN2VmZDdmMWE5OWYwOWI0MTlmNDNkODQ0 MzMwMjUzNGU0YzU5YzBkM2M1OTczNmU0NzM3NWZmNmU5NmMxNjcyNDdjNTE5NmE3Yzg4NDlhZGI1 MjdlOWNjYmZhZTc5N2VhMzExMTgxOTc4MTk3ZjkyNGRjZjBkYjczNjdmODRiYWEyN2RiNmU1NTRi YTZiNzY0NTUwZDI4MzRmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo3Y2VkN2I3MjY0 NGJlNjgxNjE1ZTUwM2VjYWZlMGM4ZjcxMjRjODViCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDo5NWQ0Y2E1YjAxMDdkM2Q5Zjk0ZWY4NTdkN2E2NGY2ODVkM2ZlY2RjCi0rQ3Ry bC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gMWVjMGQxNWUzOGVhMWI0OGRhOTYzODM3ZGJmMzBj ZWY4NTVhOTJjNwotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDAxMWFmYjU5MDU1YjRlOGUwODQwZDc2YTJkMjhhM2VjMWNm M2ZlN2U0MzZiNTg1ZWFiMjljYzMxNDllMWZhNjEwZDk3OWZjYzE0ODNhMGVhMmI0MjZmOGUyNWJj ODdiYWU5NGJkY2JlYWE4MDUwMWEzYzU1NGQ5OTZmMTY1NmFjOWJlNzVlY2VmYTQ2MjczYjNhYjhh NjY0NjhjYjRhMTZiMzYzMGNiYzQxZGY0OWViZTM5MTdiNWFmYmEyNGQ2NjkyNjRlMTE2ODlmMWE0 MDFhYmM1NTdhMGM0Y2YyMmFkOTMyMzA1NjY0MmMyYmY3ZmVhMDkwN2JhMjI3NGI3NjY2ZGQxNDRl NjZlMWYzOTM3MWExNGNjYWZhMDMwYmFkNGM2ZTA0ZjdiMjJmMWUxNGY5YTM3YWQ2YWFhMzY0MmY2 NjA2ODg2M2E3NGVkNGEwN2U4NzQ5NGYwYWNlNzcyYjY4Mjg0NWZiMjdlZmQ3ZjFhOTlmMDliNDE5 ZjQzZDg0NDMzMDI1MzRlNGM1OWMwZDNjNTk3MzZlNDczNzVmZjZlOTZjMTY3MjQ3YzUxOTZhN2M4 ODQ5YWRiNTI3ZTljY2JmYWU3OTdlYTMxMTE4MTk3ODE5N2Y5MjRkY2YwZGI3MzY3Zjg0YmFhMjdk YjZlNTU0YmE2Yjc2NDU1MGQyODM0ZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6N2Nl ZDdiNzI2NDRiZTY4MTYxNWU1MDNlY2FmZTBjOGY3MTI0Yzg1YgotK0N0cmwuaGV4c2Vzc2lvbl9p ZCA9IGhleHNlc3Npb25faWQ6OTVkNGNhNWIwMTA3ZDNkOWY5NGVmODU3ZDdhNjRmNjg1ZDNmZWNk YwotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGVlYThlYTA0MmEwNzlmY2Y4NDE2YThi MjQ0ZmFmYWIzNWFkZWNhOGEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMmYxNGIxYWNkZjg3MWJlYzRlYTU3MjBhM2U5 MjFjZjE2YTc5NjU1OWIyYTA5NGEwZDFlNDUwMjFkY2FiZmYxNTJhMGUzZGNhNDExNTIzOTQ1NGRj NDA3YTY0NzRjOGZjZDM5NTI3M2E2NDg3YzY3MzY3MTA2MTBhZWI2MDc3MDdiN2VmODcyMDNhMDgx NjQ2YWY1M2JhMDM3ZjI5MzE2YTNkZWM0Y2U4MGVjMDQ3NzViODY5N2RiNDZmN2U0ZjRiMzhkNjlk ZTgzMmEyNWNmMGE1NDg0YzliMzZhNDg5NTBkNTBkZmU3N2FjNWRhNjNhMWMyMzE0ZmZhOGNiNjhm MGMyMDFiYmZiN2ExYTg5ODM3YjlmNTc0NjVkMTQ2MzViZGEyYWJmNjAxYTA2YmJkOGY3MGFmMDE2 OWMzOTIwOWRjZGE5ZmIxNDE2YTllYWRiNWVhNGRlYjM1ODU2NjE5MGE2MmE0NGQ2NzY1ZDlhMjVi NTE1N2VkNWUwZjUzMTdmMGVkM2Y2ZWFjZWJlMDdiYTIxNGUyZWY5ZjY1NGRiYzJmYTNkYzJmMjI3 MTI0YTNmNTZhNDA5MDVjOWM4NmNkNjRiMGVkODBjNDI5OWQ4NmY1OWQ1ZjA2YjljMDI2YTI4ZmVl YTVjNWZhZmJlN2JhOTAyODNkZTg2N2RkNTU4NTgKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2do YXNoOjVmYjZkZmYzMjcyY2I5NDk4NTZhNTdmMjY0NWE1NmQ5NTdkYzQ2MDYKLStDdHJsLmhleHNl c3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjUxNjBjYWI4MzZkODk5MTkzMDc3ZGM2NzQ4NWVmNDE2 NjllYzVkOGEKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSBmMmZhZWY2ZTI3NDgxNGVk N2NhNTQ0NDg0YWMyMWEzYQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDAyZjE0YjFhY2RmODcxYmVjNGVhNTcyMGEzZTky MWNmMTZhNzk2NTU5YjJhMDk0YTBkMWU0NTAyMWRjYWJmZjE1MmEwZTNkY2E0MTE1MjM5NDU0ZGM0 MDdhNjQ3NGM4ZmNkMzk1MjczYTY0ODdjNjczNjcxMDYxMGFlYjYwNzcwN2I3ZWY4NzIwM2EwODE2 NDZhZjUzYmEwMzdmMjkzMTZhM2RlYzRjZTgwZWMwNDc3NWI4Njk3ZGI0NmY3ZTRmNGIzOGQ2OWRl ODMyYTI1Y2YwYTU0ODRjOWIzNmE0ODk1MGQ1MGRmZTc3YWM1ZGE2M2ExYzIzMTRmZmE4Y2I2OGYw YzIwMWJiZmI3YTFhODk4MzdiOWY1NzQ2NWQxNDYzNWJkYTJhYmY2MDFhMDZiYmQ4ZjcwYWYwMTY5 YzM5MjA5ZGNkYTlmYjE0MTZhOWVhZGI1ZWE0ZGViMzU4NTY2MTkwYTYyYTQ0ZDY3NjVkOWEyNWI1 MTU3ZWQ1ZTBmNTMxN2YwZWQzZjZlYWNlYmUwN2JhMjE0ZTJlZjlmNjU0ZGJjMmZhM2RjMmYyMjcx MjRhM2Y1NmE0MDkwNWM5Yzg2Y2Q2NGIwZWQ4MGM0Mjk5ZDg2ZjU5ZDVmMDZiOWMwMjZhMjhmZWVh NWM1ZmFmYmU3YmE5MDI4M2RlODY3ZGQ1NTg1OAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6NWZiNmRmZjMyNzJjYjk0OTg1NmE1N2YyNjQ1YTU2ZDk1N2RjNDYwNgotK0N0cmwuaGV4c2Vz c2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NTE2MGNhYjgzNmQ4OTkxOTMwNzdkYzY3NDg1ZWY0MTY2 OWVjNWQ4YQotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDNjYTliYzBmM2M2NWMyNTdm YTE2MGE0ZDFjNWUzNTIwCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStD dHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDJmMTRiMWFjZGY4NzFiZWM0ZWE1NzIwYTNlOTIx Y2YxNmE3OTY1NTliMmEwOTRhMGQxZTQ1MDIxZGNhYmZmMTUyYTBlM2RjYTQxMTUyMzk0NTRkYzQw N2E2NDc0YzhmY2QzOTUyNzNhNjQ4N2M2NzM2NzEwNjEwYWViNjA3NzA3YjdlZjg3MjAzYTA4MTY0 NmFmNTNiYTAzN2YyOTMxNmEzZGVjNGNlODBlYzA0Nzc1Yjg2OTdkYjQ2ZjdlNGY0YjM4ZDY5ZGU4 MzJhMjVjZjBhNTQ4NGM5YjM2YTQ4OTUwZDUwZGZlNzdhYzVkYTYzYTFjMjMxNGZmYThjYjY4ZjBj MjAxYmJmYjdhMWE4OTgzN2I5ZjU3NDY1ZDE0NjM1YmRhMmFiZjYwMWEwNmJiZDhmNzBhZjAxNjlj MzkyMDlkY2RhOWZiMTQxNmE5ZWFkYjVlYTRkZWIzNTg1NjYxOTBhNjJhNDRkNjc2NWQ5YTI1YjUx NTdlZDVlMGY1MzE3ZjBlZDNmNmVhY2ViZTA3YmEyMTRlMmVmOWY2NTRkYmMyZmEzZGMyZjIyNzEy NGEzZjU2YTQwOTA1YzljODZjZDY0YjBlZDgwYzQyOTlkODZmNTlkNWYwNmI5YzAyNmEyOGZlZWE1 YzVmYWZiZTdiYTkwMjgzZGU4NjdkZDU1ODU4Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDo1ZmI2ZGZmMzI3MmNiOTQ5ODU2YTU3ZjI2NDVhNTZkOTU3ZGM0NjA2Ci0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo1MTYwY2FiODM2ZDg5OTE5MzA3N2RjNjc0ODVlZjQxNjY5 ZWM1ZDhhCi0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0ID0gZmNkZjA1NDViNTFhY2E2NTE1 YmNjZjZlZDBlY2I1ODIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMmYxNGIxYWNkZjg3MWJlYzRlYTU3MjBhM2U5MjFj ZjE2YTc5NjU1OWIyYTA5NGEwZDFlNDUwMjFkY2FiZmYxNTJhMGUzZGNhNDExNTIzOTQ1NGRjNDA3 YTY0NzRjOGZjZDM5NTI3M2E2NDg3YzY3MzY3MTA2MTBhZWI2MDc3MDdiN2VmODcyMDNhMDgxNjQ2 YWY1M2JhMDM3ZjI5MzE2YTNkZWM0Y2U4MGVjMDQ3NzViODY5N2RiNDZmN2U0ZjRiMzhkNjlkZTgz MmEyNWNmMGE1NDg0YzliMzZhNDg5NTBkNTBkZmU3N2FjNWRhNjNhMWMyMzE0ZmZhOGNiNjhmMGMy MDFiYmZiN2ExYTg5ODM3YjlmNTc0NjVkMTQ2MzViZGEyYWJmNjAxYTA2YmJkOGY3MGFmMDE2OWMz OTIwOWRjZGE5ZmIxNDE2YTllYWRiNWVhNGRlYjM1ODU2NjE5MGE2MmE0NGQ2NzY1ZDlhMjViNTE1 N2VkNWUwZjUzMTdmMGVkM2Y2ZWFjZWJlMDdiYTIxNGUyZWY5ZjY1NGRiYzJmYTNkYzJmMjI3MTI0 YTNmNTZhNDA5MDVjOWM4NmNkNjRiMGVkODBjNDI5OWQ4NmY1OWQ1ZjA2YjljMDI2YTI4ZmVlYTVj NWZhZmJlN2JhOTAyODNkZTg2N2RkNTU4NTgKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OjVmYjZkZmYzMjcyY2I5NDk4NTZhNTdmMjY0NWE1NmQ5NTdkYzQ2MDYKLStDdHJsLmhleHNlc3Np b25faWQgPSBoZXhzZXNzaW9uX2lkOjUxNjBjYWI4MzZkODk5MTkzMDc3ZGM2NzQ4NWVmNDE2Njll YzVkOGEKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSA4NmVhODk1YTMxMGMzYmJkMWFh YzIwOWIyMzYyZDU4YQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDAyZjE0YjFhY2RmODcxYmVjNGVhNTcyMGEzZTkyMWNm MTZhNzk2NTU5YjJhMDk0YTBkMWU0NTAyMWRjYWJmZjE1MmEwZTNkY2E0MTE1MjM5NDU0ZGM0MDdh NjQ3NGM4ZmNkMzk1MjczYTY0ODdjNjczNjcxMDYxMGFlYjYwNzcwN2I3ZWY4NzIwM2EwODE2NDZh ZjUzYmEwMzdmMjkzMTZhM2RlYzRjZTgwZWMwNDc3NWI4Njk3ZGI0NmY3ZTRmNGIzOGQ2OWRlODMy YTI1Y2YwYTU0ODRjOWIzNmE0ODk1MGQ1MGRmZTc3YWM1ZGE2M2ExYzIzMTRmZmE4Y2I2OGYwYzIw MWJiZmI3YTFhODk4MzdiOWY1NzQ2NWQxNDYzNWJkYTJhYmY2MDFhMDZiYmQ4ZjcwYWYwMTY5YzM5 MjA5ZGNkYTlmYjE0MTZhOWVhZGI1ZWE0ZGViMzU4NTY2MTkwYTYyYTQ0ZDY3NjVkOWEyNWI1MTU3 ZWQ1ZTBmNTMxN2YwZWQzZjZlYWNlYmUwN2JhMjE0ZTJlZjlmNjU0ZGJjMmZhM2RjMmYyMjcxMjRh M2Y1NmE0MDkwNWM5Yzg2Y2Q2NGIwZWQ4MGM0Mjk5ZDg2ZjU5ZDVmMDZiOWMwMjZhMjhmZWVhNWM1 ZmFmYmU3YmE5MDI4M2RlODY3ZGQ1NTg1OAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6 NWZiNmRmZjMyNzJjYjk0OTg1NmE1N2YyNjQ1YTU2ZDk1N2RjNDYwNgotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6NTE2MGNhYjgzNmQ4OTkxOTMwNzdkYzY3NDg1ZWY0MTY2OWVj NWQ4YQotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IDEyYTRmMmI3NDllMmJmODhjMWY4 NDM3ZTVmZjYxZGU3NjFmZDQ4YjMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hB MQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMmYxNGIxYWNkZjg3MWJlYzRlYTU3MjBh M2U5MjFjZjE2YTc5NjU1OWIyYTA5NGEwZDFlNDUwMjFkY2FiZmYxNTJhMGUzZGNhNDExNTIzOTQ1 NGRjNDA3YTY0NzRjOGZjZDM5NTI3M2E2NDg3YzY3MzY3MTA2MTBhZWI2MDc3MDdiN2VmODcyMDNh MDgxNjQ2YWY1M2JhMDM3ZjI5MzE2YTNkZWM0Y2U4MGVjMDQ3NzViODY5N2RiNDZmN2U0ZjRiMzhk NjlkZTgzMmEyNWNmMGE1NDg0YzliMzZhNDg5NTBkNTBkZmU3N2FjNWRhNjNhMWMyMzE0ZmZhOGNi NjhmMGMyMDFiYmZiN2ExYTg5ODM3YjlmNTc0NjVkMTQ2MzViZGEyYWJmNjAxYTA2YmJkOGY3MGFm MDE2OWMzOTIwOWRjZGE5ZmIxNDE2YTllYWRiNWVhNGRlYjM1ODU2NjE5MGE2MmE0NGQ2NzY1ZDlh MjViNTE1N2VkNWUwZjUzMTdmMGVkM2Y2ZWFjZWJlMDdiYTIxNGUyZWY5ZjY1NGRiYzJmYTNkYzJm MjI3MTI0YTNmNTZhNDA5MDVjOWM4NmNkNjRiMGVkODBjNDI5OWQ4NmY1OWQ1ZjA2YjljMDI2YTI4 ZmVlYTVjNWZhZmJlN2JhOTAyODNkZTg2N2RkNTU4NTgKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOjVmYjZkZmYzMjcyY2I5NDk4NTZhNTdmMjY0NWE1NmQ5NTdkYzQ2MDYKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjUxNjBjYWI4MzZkODk5MTkzMDc3ZGM2NzQ4NWVm NDE2NjllYzVkOGEKLStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQgPSBhM2E5Mjc2YTEyMGRi Mzc5ZWM3ODBlNDM0ODc5YTU0OTM1ZGI5NTRkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9 IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDYwY2MxOGViYmViOWIyNWNi MTZhNThiZmE0NzY0NDExMGNlYWI2N2YyNzRkYWY2NzE1N2U5MjNiNzBmNzc1YTQxNjhiYjc5MTFk MGU1MzA3NTA0NDM2NmU1MDNmYmZmY2YzZmNmOTI0OWU1NTFkNjkyMTE3MTViNjgxYmEzYTI4ZGQx MzNkYmFkYTI0ZGNmODBkMmJmNjdhMWQ2YzA0NzdmMTA4Zjg3NjNiMzBmZTI4YzZkMGI1NGU1OWU3 ZTU4MDY5MjQ1M2QwNWEzMGQzOGUxMzRkNjExN2NhOTk5YWNlODBhNTdkMDg4MjI4YjJhOWYwMDFl NTdkM2E4YjFjZGZmZTU1ZmRhMTk0ZjAxMTg5ZWMyYmIwZDk5ZmM4NTcwYTlkODIyYTk0ZGRkYjIy ZjRiYTNjODhmMmVlMTA0NWRhZmEyZDEwNmU1YzJjMDk1MTllNDdhZDllYWYyMzAxNTY5YzkyNThh MmRlZGE5ZDNlYTViMGM3M2YwMGQ4ZDEyNTc5ZTU5MzFkNTI1MzIyMGQ2MGVlYjEyZmNlZmM5OGJj OGYzOTBlNTJiM2I0MDcyODBhMzEyODM2Mjg5NjNjMTEzMWI2ZmQ1ODRiZTk0OGMzZmI0ZDMxNmZh NGExYjEzNTUxM2ExNzRjYWZiMGQzOTRiYjRhZmJlZTZjYmU3OTZlCi0rQ3RybC5oZXh4Y2doYXNo ID0gaGV4eGNnaGFzaDo1MDFjNzZlNmI1NzkxZTM0M2ZiNmU3NTk3ZTg5MGM3ZGVhN2YwNGU1Ci0r Q3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo2OGUxZjIyNWYyZTYzZGY3YmVkYmFi MTUxMTJiMzY3MGYwM2VlZDU2Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gZTUzZjJm NjFkODkxOWUwOTdjYjk5NjI3ZmU2NjgzODUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNjBjYzE4ZWJiZWI5YjI1Y2Ix NmE1OGJmYTQ3NjQ0MTEwY2VhYjY3ZjI3NGRhZjY3MTU3ZTkyM2I3MGY3NzVhNDE2OGJiNzkxMWQw ZTUzMDc1MDQ0MzY2ZTUwM2ZiZmZjZjNmY2Y5MjQ5ZTU1MWQ2OTIxMTcxNWI2ODFiYTNhMjhkZDEz M2RiYWRhMjRkY2Y4MGQyYmY2N2ExZDZjMDQ3N2YxMDhmODc2M2IzMGZlMjhjNmQwYjU0ZTU5ZTdl NTgwNjkyNDUzZDA1YTMwZDM4ZTEzNGQ2MTE3Y2E5OTlhY2U4MGE1N2QwODgyMjhiMmE5ZjAwMWU1 N2QzYThiMWNkZmZlNTVmZGExOTRmMDExODllYzJiYjBkOTlmYzg1NzBhOWQ4MjJhOTRkZGRiMjJm NGJhM2M4OGYyZWUxMDQ1ZGFmYTJkMTA2ZTVjMmMwOTUxOWU0N2FkOWVhZjIzMDE1NjljOTI1OGEy ZGVkYTlkM2VhNWIwYzczZjAwZDhkMTI1NzllNTkzMWQ1MjUzMjIwZDYwZWViMTJmY2VmYzk4YmM4 ZjM5MGU1MmIzYjQwNzI4MGEzMTI4MzYyODk2M2MxMTMxYjZmZDU4NGJlOTQ4YzNmYjRkMzE2ZmE0 YTFiMTM1NTEzYTE3NGNhZmIwZDM5NGJiNGFmYmVlNmNiZTc5NmUKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOjUwMWM3NmU2YjU3OTFlMzQzZmI2ZTc1OTdlODkwYzdkZWE3ZjA0ZTUKLStD dHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjY4ZTFmMjI1ZjJlNjNkZjdiZWRiYWIx NTExMmIzNjcwZjAzZWVkNTYKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSBjZWE4MGZk OGRjMDY2NTRlZDgwYjBlYzE1MDgzNTUzNwotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA2MGNjMThlYmJlYjliMjVjYjE2 YTU4YmZhNDc2NDQxMTBjZWFiNjdmMjc0ZGFmNjcxNTdlOTIzYjcwZjc3NWE0MTY4YmI3OTExZDBl NTMwNzUwNDQzNjZlNTAzZmJmZmNmM2ZjZjkyNDllNTUxZDY5MjExNzE1YjY4MWJhM2EyOGRkMTMz ZGJhZGEyNGRjZjgwZDJiZjY3YTFkNmMwNDc3ZjEwOGY4NzYzYjMwZmUyOGM2ZDBiNTRlNTllN2U1 ODA2OTI0NTNkMDVhMzBkMzhlMTM0ZDYxMTdjYTk5OWFjZTgwYTU3ZDA4ODIyOGIyYTlmMDAxZTU3 ZDNhOGIxY2RmZmU1NWZkYTE5NGYwMTE4OWVjMmJiMGQ5OWZjODU3MGE5ZDgyMmE5NGRkZGIyMmY0 YmEzYzg4ZjJlZTEwNDVkYWZhMmQxMDZlNWMyYzA5NTE5ZTQ3YWQ5ZWFmMjMwMTU2OWM5MjU4YTJk ZWRhOWQzZWE1YjBjNzNmMDBkOGQxMjU3OWU1OTMxZDUyNTMyMjBkNjBlZWIxMmZjZWZjOThiYzhm MzkwZTUyYjNiNDA3MjgwYTMxMjgzNjI4OTYzYzExMzFiNmZkNTg0YmU5NDhjM2ZiNGQzMTZmYTRh MWIxMzU1MTNhMTc0Y2FmYjBkMzk0YmI0YWZiZWU2Y2JlNzk2ZQotK0N0cmwuaGV4eGNnaGFzaCA9 IGhleHhjZ2hhc2g6NTAxYzc2ZTZiNTc5MWUzNDNmYjZlNzU5N2U4OTBjN2RlYTdmMDRlNQotK0N0 cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NjhlMWYyMjVmMmU2M2RmN2JlZGJhYjE1 MTEyYjM2NzBmMDNlZWQ1NgotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IGQ1YmE0NzVl NzM3YmVkMzQ5Yjg5MzFiYTM4ZDQyNmU5Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDYwY2MxOGViYmViOWIyNWNiMTZh NThiZmE0NzY0NDExMGNlYWI2N2YyNzRkYWY2NzE1N2U5MjNiNzBmNzc1YTQxNjhiYjc5MTFkMGU1 MzA3NTA0NDM2NmU1MDNmYmZmY2YzZmNmOTI0OWU1NTFkNjkyMTE3MTViNjgxYmEzYTI4ZGQxMzNk YmFkYTI0ZGNmODBkMmJmNjdhMWQ2YzA0NzdmMTA4Zjg3NjNiMzBmZTI4YzZkMGI1NGU1OWU3ZTU4 MDY5MjQ1M2QwNWEzMGQzOGUxMzRkNjExN2NhOTk5YWNlODBhNTdkMDg4MjI4YjJhOWYwMDFlNTdk M2E4YjFjZGZmZTU1ZmRhMTk0ZjAxMTg5ZWMyYmIwZDk5ZmM4NTcwYTlkODIyYTk0ZGRkYjIyZjRi YTNjODhmMmVlMTA0NWRhZmEyZDEwNmU1YzJjMDk1MTllNDdhZDllYWYyMzAxNTY5YzkyNThhMmRl ZGE5ZDNlYTViMGM3M2YwMGQ4ZDEyNTc5ZTU5MzFkNTI1MzIyMGQ2MGVlYjEyZmNlZmM5OGJjOGYz OTBlNTJiM2I0MDcyODBhMzEyODM2Mjg5NjNjMTEzMWI2ZmQ1ODRiZTk0OGMzZmI0ZDMxNmZhNGEx YjEzNTUxM2ExNzRjYWZiMGQzOTRiYjRhZmJlZTZjYmU3OTZlCi0rQ3RybC5oZXh4Y2doYXNoID0g aGV4eGNnaGFzaDo1MDFjNzZlNmI1NzkxZTM0M2ZiNmU3NTk3ZTg5MGM3ZGVhN2YwNGU1Ci0rQ3Ry bC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo2OGUxZjIyNWYyZTYzZGY3YmVkYmFiMTUx MTJiMzY3MGYwM2VlZDU2Ci0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gZjNlYTkyYjRm MzY1YWIyZmI4NDAzYWQ4ZWNkMmQxN2MKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6 U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNjBjYzE4ZWJiZWI5YjI1Y2IxNmE1 OGJmYTQ3NjQ0MTEwY2VhYjY3ZjI3NGRhZjY3MTU3ZTkyM2I3MGY3NzVhNDE2OGJiNzkxMWQwZTUz MDc1MDQ0MzY2ZTUwM2ZiZmZjZjNmY2Y5MjQ5ZTU1MWQ2OTIxMTcxNWI2ODFiYTNhMjhkZDEzM2Ri YWRhMjRkY2Y4MGQyYmY2N2ExZDZjMDQ3N2YxMDhmODc2M2IzMGZlMjhjNmQwYjU0ZTU5ZTdlNTgw NjkyNDUzZDA1YTMwZDM4ZTEzNGQ2MTE3Y2E5OTlhY2U4MGE1N2QwODgyMjhiMmE5ZjAwMWU1N2Qz YThiMWNkZmZlNTVmZGExOTRmMDExODllYzJiYjBkOTlmYzg1NzBhOWQ4MjJhOTRkZGRiMjJmNGJh M2M4OGYyZWUxMDQ1ZGFmYTJkMTA2ZTVjMmMwOTUxOWU0N2FkOWVhZjIzMDE1NjljOTI1OGEyZGVk YTlkM2VhNWIwYzczZjAwZDhkMTI1NzllNTkzMWQ1MjUzMjIwZDYwZWViMTJmY2VmYzk4YmM4ZjM5 MGU1MmIzYjQwNzI4MGEzMTI4MzYyODk2M2MxMTMxYjZmZDU4NGJlOTQ4YzNmYjRkMzE2ZmE0YTFi MTM1NTEzYTE3NGNhZmIwZDM5NGJiNGFmYmVlNmNiZTc5NmUKLStDdHJsLmhleHhjZ2hhc2ggPSBo ZXh4Y2doYXNoOjUwMWM3NmU2YjU3OTFlMzQzZmI2ZTc1OTdlODkwYzdkZWE3ZjA0ZTUKLStDdHJs LmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjY4ZTFmMjI1ZjJlNjNkZjdiZWRiYWIxNTEx MmIzNjcwZjAzZWVkNTYKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA0MWZhNzE4ODg0 NzM4ZmQ2ZmQ5ZWU5ZmQ1YWYwNWYwZGU5NDAwOTUyCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDYwY2MxOGViYmViOWIy NWNiMTZhNThiZmE0NzY0NDExMGNlYWI2N2YyNzRkYWY2NzE1N2U5MjNiNzBmNzc1YTQxNjhiYjc5 MTFkMGU1MzA3NTA0NDM2NmU1MDNmYmZmY2YzZmNmOTI0OWU1NTFkNjkyMTE3MTViNjgxYmEzYTI4 ZGQxMzNkYmFkYTI0ZGNmODBkMmJmNjdhMWQ2YzA0NzdmMTA4Zjg3NjNiMzBmZTI4YzZkMGI1NGU1 OWU3ZTU4MDY5MjQ1M2QwNWEzMGQzOGUxMzRkNjExN2NhOTk5YWNlODBhNTdkMDg4MjI4YjJhOWYw MDFlNTdkM2E4YjFjZGZmZTU1ZmRhMTk0ZjAxMTg5ZWMyYmIwZDk5ZmM4NTcwYTlkODIyYTk0ZGRk YjIyZjRiYTNjODhmMmVlMTA0NWRhZmEyZDEwNmU1YzJjMDk1MTllNDdhZDllYWYyMzAxNTY5Yzky NThhMmRlZGE5ZDNlYTViMGM3M2YwMGQ4ZDEyNTc5ZTU5MzFkNTI1MzIyMGQ2MGVlYjEyZmNlZmM5 OGJjOGYzOTBlNTJiM2I0MDcyODBhMzEyODM2Mjg5NjNjMTEzMWI2ZmQ1ODRiZTk0OGMzZmI0ZDMx NmZhNGExYjEzNTUxM2ExNzRjYWZiMGQzOTRiYjRhZmJlZTZjYmU3OTZlCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDo1MDFjNzZlNmI1NzkxZTM0M2ZiNmU3NTk3ZTg5MGM3ZGVhN2YwNGU1 Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo2OGUxZjIyNWYyZTYzZGY3YmVk YmFiMTUxMTJiMzY3MGYwM2VlZDU2Ci0rQ3RybC50eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gOTEz OTViYmQ5MGFiYjE0MGQwOTg0ZWQ1ZTc3ODM2NTkwYmY0NDY5NQotKwotK0tERiA9IFNTSEtERgot K0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA3MmExMDZk MTNlNTE0ODg3NzQ1N2I3YThjODUzY2ZhYmQxNTFkMWIxYWNkZTZkNzc2YjdhZmZjMjNjNjUzYTNi MWM4OTMzOThjN2Q4M2UwMzlmYmVhOWRjNzM5ZGMxNGYzYTkzNDhhZjE1NGY4NDBkMmY4OGUzYzE5 ODI3NThhZGVhZWI3OGNmZjA1MDA0NmQyNmE5YTEzMzkxMDk5ZWVhMDNlOWZiODUzZTk1YzExN2Vk YWFjNWIzNjczNmU2M2NiNWFkNzJiMzQ2Y2YxZmIzNDIxNjlmNWU1Mzg1OTE5ODhkYWVjODJlMGU5 YTJmNGE1N2RiMjJkZjhhZjkyNDI0ZjYzMTExZDg3OTkxMzQ1ZmQ0NDU4YWJhYjQyY2RiZmNiODRh YmIyMjI3MDE1NzVhNTAyNzRhN2M2Y2MzODM1NTc0MGNjMDRiZmFmZjMzNDY3YzgxNmE3MDI0MjE0 MmZkNTQ2N2IxNzEzZWVlYzFlMGQwZjJmY2ZhZjY2NjAyZGNjMzFjNDEwNWQ5MjhhNzE4NWViZjUz YTZlNzkyZjQxOWY1NzU3M2U2ZGM2ZDEyMjFlNjkwN2Y2YWQ5NThkMmEwYzhmZTA5NmNlNDNlNDAz MzE2YWU5MmY5M2FjZDFjYWM3ODc4YzkwMTFiYzcxZWZmODFkNDM1M2Q3YjBjMTNiMQotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6OWFjZjFmODA4YWVhYzViMTE0NjAxOTJjOGYxOTE0OTFi NjJmYzY2YQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NGM2NjJlNGRjNzY0 Y2JjYjFiM2VlZDRkZTQzNzVmODVjOGIyZjU2YwotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1 dCA9IDA0ZDNjMGEzZjVlMzNhZTM3M2M2MzdlZjQ1ODk3Nzc5Ci0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDcyYTEwNmQx M2U1MTQ4ODc3NDU3YjdhOGM4NTNjZmFiZDE1MWQxYjFhY2RlNmQ3NzZiN2FmZmMyM2M2NTNhM2Ix Yzg5MzM5OGM3ZDgzZTAzOWZiZWE5ZGM3MzlkYzE0ZjNhOTM0OGFmMTU0Zjg0MGQyZjg4ZTNjMTk4 Mjc1OGFkZWFlYjc4Y2ZmMDUwMDQ2ZDI2YTlhMTMzOTEwOTllZWEwM2U5ZmI4NTNlOTVjMTE3ZWRh YWM1YjM2NzM2ZTYzY2I1YWQ3MmIzNDZjZjFmYjM0MjE2OWY1ZTUzODU5MTk4OGRhZWM4MmUwZTlh MmY0YTU3ZGIyMmRmOGFmOTI0MjRmNjMxMTFkODc5OTEzNDVmZDQ0NThhYmFiNDJjZGJmY2I4NGFi YjIyMjcwMTU3NWE1MDI3NGE3YzZjYzM4MzU1NzQwY2MwNGJmYWZmMzM0NjdjODE2YTcwMjQyMTQy ZmQ1NDY3YjE3MTNlZWVjMWUwZDBmMmZjZmFmNjY2MDJkY2MzMWM0MTA1ZDkyOGE3MTg1ZWJmNTNh NmU3OTJmNDE5ZjU3NTczZTZkYzZkMTIyMWU2OTA3ZjZhZDk1OGQyYTBjOGZlMDk2Y2U0M2U0MDMz MTZhZTkyZjkzYWNkMWNhYzc4NzhjOTAxMWJjNzFlZmY4MWQ0MzUzZDdiMGMxM2IxCi0rQ3RybC5o ZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo5YWNmMWY4MDhhZWFjNWIxMTQ2MDE5MmM4ZjE5MTQ5MWI2 MmZjNjZhCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo0YzY2MmU0ZGM3NjRj YmNiMWIzZWVkNGRlNDM3NWY4NWM4YjJmNTZjCi0rQ3RybC50eXBlID0gdHlwZTpCCi0rT3V0cHV0 ID0gYzVhNDViZmJmNmQ3YzE0YzVkM2E5NTNiNDg0OGU0MzMKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNzJhMTA2ZDEz ZTUxNDg4Nzc0NTdiN2E4Yzg1M2NmYWJkMTUxZDFiMWFjZGU2ZDc3NmI3YWZmYzIzYzY1M2EzYjFj ODkzMzk4YzdkODNlMDM5ZmJlYTlkYzczOWRjMTRmM2E5MzQ4YWYxNTRmODQwZDJmODhlM2MxOTgy NzU4YWRlYWViNzhjZmYwNTAwNDZkMjZhOWExMzM5MTA5OWVlYTAzZTlmYjg1M2U5NWMxMTdlZGFh YzViMzY3MzZlNjNjYjVhZDcyYjM0NmNmMWZiMzQyMTY5ZjVlNTM4NTkxOTg4ZGFlYzgyZTBlOWEy ZjRhNTdkYjIyZGY4YWY5MjQyNGY2MzExMWQ4Nzk5MTM0NWZkNDQ1OGFiYWI0MmNkYmZjYjg0YWJi MjIyNzAxNTc1YTUwMjc0YTdjNmNjMzgzNTU3NDBjYzA0YmZhZmYzMzQ2N2M4MTZhNzAyNDIxNDJm ZDU0NjdiMTcxM2VlZWMxZTBkMGYyZmNmYWY2NjYwMmRjYzMxYzQxMDVkOTI4YTcxODVlYmY1M2E2 ZTc5MmY0MTlmNTc1NzNlNmRjNmQxMjIxZTY5MDdmNmFkOTU4ZDJhMGM4ZmUwOTZjZTQzZTQwMzMx NmFlOTJmOTNhY2QxY2FjNzg3OGM5MDExYmM3MWVmZjgxZDQzNTNkN2IwYzEzYjEKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjlhY2YxZjgwOGFlYWM1YjExNDYwMTkyYzhmMTkxNDkxYjYy ZmM2NmEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjRjNjYyZTRkYzc2NGNi Y2IxYjNlZWQ0ZGU0Mzc1Zjg1YzhiMmY1NmMKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQg PSAzYTE2ZDBkYTJmNzg1ZTJjMzI1YjQ1MTA5Nzc4OTEwYQotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA3MmExMDZkMTNl NTE0ODg3NzQ1N2I3YThjODUzY2ZhYmQxNTFkMWIxYWNkZTZkNzc2YjdhZmZjMjNjNjUzYTNiMWM4 OTMzOThjN2Q4M2UwMzlmYmVhOWRjNzM5ZGMxNGYzYTkzNDhhZjE1NGY4NDBkMmY4OGUzYzE5ODI3 NThhZGVhZWI3OGNmZjA1MDA0NmQyNmE5YTEzMzkxMDk5ZWVhMDNlOWZiODUzZTk1YzExN2VkYWFj NWIzNjczNmU2M2NiNWFkNzJiMzQ2Y2YxZmIzNDIxNjlmNWU1Mzg1OTE5ODhkYWVjODJlMGU5YTJm NGE1N2RiMjJkZjhhZjkyNDI0ZjYzMTExZDg3OTkxMzQ1ZmQ0NDU4YWJhYjQyY2RiZmNiODRhYmIy MjI3MDE1NzVhNTAyNzRhN2M2Y2MzODM1NTc0MGNjMDRiZmFmZjMzNDY3YzgxNmE3MDI0MjE0MmZk NTQ2N2IxNzEzZWVlYzFlMGQwZjJmY2ZhZjY2NjAyZGNjMzFjNDEwNWQ5MjhhNzE4NWViZjUzYTZl NzkyZjQxOWY1NzU3M2U2ZGM2ZDEyMjFlNjkwN2Y2YWQ5NThkMmEwYzhmZTA5NmNlNDNlNDAzMzE2 YWU5MmY5M2FjZDFjYWM3ODc4YzkwMTFiYzcxZWZmODFkNDM1M2Q3YjBjMTNiMQotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6OWFjZjFmODA4YWVhYzViMTE0NjAxOTJjOGYxOTE0OTFiNjJm YzY2YQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NGM2NjJlNGRjNzY0Y2Jj YjFiM2VlZDRkZTQzNzVmODVjOGIyZjU2YwotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9 IDkwMmIzOGRkNmM3NTk5NDVlNjcxYzFkZTdkOTllOTE4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3Ry bC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDcyYTEwNmQxM2U1 MTQ4ODc3NDU3YjdhOGM4NTNjZmFiZDE1MWQxYjFhY2RlNmQ3NzZiN2FmZmMyM2M2NTNhM2IxYzg5 MzM5OGM3ZDgzZTAzOWZiZWE5ZGM3MzlkYzE0ZjNhOTM0OGFmMTU0Zjg0MGQyZjg4ZTNjMTk4Mjc1 OGFkZWFlYjc4Y2ZmMDUwMDQ2ZDI2YTlhMTMzOTEwOTllZWEwM2U5ZmI4NTNlOTVjMTE3ZWRhYWM1 YjM2NzM2ZTYzY2I1YWQ3MmIzNDZjZjFmYjM0MjE2OWY1ZTUzODU5MTk4OGRhZWM4MmUwZTlhMmY0 YTU3ZGIyMmRmOGFmOTI0MjRmNjMxMTFkODc5OTEzNDVmZDQ0NThhYmFiNDJjZGJmY2I4NGFiYjIy MjcwMTU3NWE1MDI3NGE3YzZjYzM4MzU1NzQwY2MwNGJmYWZmMzM0NjdjODE2YTcwMjQyMTQyZmQ1 NDY3YjE3MTNlZWVjMWUwZDBmMmZjZmFmNjY2MDJkY2MzMWM0MTA1ZDkyOGE3MTg1ZWJmNTNhNmU3 OTJmNDE5ZjU3NTczZTZkYzZkMTIyMWU2OTA3ZjZhZDk1OGQyYTBjOGZlMDk2Y2U0M2U0MDMzMTZh ZTkyZjkzYWNkMWNhYzc4NzhjOTAxMWJjNzFlZmY4MWQ0MzUzZDdiMGMxM2IxCi0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDo5YWNmMWY4MDhhZWFjNWIxMTQ2MDE5MmM4ZjE5MTQ5MWI2MmZj NjZhCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo0YzY2MmU0ZGM3NjRjYmNi MWIzZWVkNGRlNDM3NWY4NWM4YjJmNTZjCi0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0g YjU3MzI0NGRlMzEyN2Y2YWE1NDU3ZTc5MjIxOWRjODlkZWZhYWVjZAotKwotK0tERiA9IFNTSEtE RgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA3MmEx MDZkMTNlNTE0ODg3NzQ1N2I3YThjODUzY2ZhYmQxNTFkMWIxYWNkZTZkNzc2YjdhZmZjMjNjNjUz YTNiMWM4OTMzOThjN2Q4M2UwMzlmYmVhOWRjNzM5ZGMxNGYzYTkzNDhhZjE1NGY4NDBkMmY4OGUz YzE5ODI3NThhZGVhZWI3OGNmZjA1MDA0NmQyNmE5YTEzMzkxMDk5ZWVhMDNlOWZiODUzZTk1YzEx N2VkYWFjNWIzNjczNmU2M2NiNWFkNzJiMzQ2Y2YxZmIzNDIxNjlmNWU1Mzg1OTE5ODhkYWVjODJl MGU5YTJmNGE1N2RiMjJkZjhhZjkyNDI0ZjYzMTExZDg3OTkxMzQ1ZmQ0NDU4YWJhYjQyY2RiZmNi ODRhYmIyMjI3MDE1NzVhNTAyNzRhN2M2Y2MzODM1NTc0MGNjMDRiZmFmZjMzNDY3YzgxNmE3MDI0 MjE0MmZkNTQ2N2IxNzEzZWVlYzFlMGQwZjJmY2ZhZjY2NjAyZGNjMzFjNDEwNWQ5MjhhNzE4NWVi ZjUzYTZlNzkyZjQxOWY1NzU3M2U2ZGM2ZDEyMjFlNjkwN2Y2YWQ5NThkMmEwYzhmZTA5NmNlNDNl NDAzMzE2YWU5MmY5M2FjZDFjYWM3ODc4YzkwMTFiYzcxZWZmODFkNDM1M2Q3YjBjMTNiMQotK0N0 cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6OWFjZjFmODA4YWVhYzViMTE0NjAxOTJjOGYxOTE0 OTFiNjJmYzY2YQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NGM2NjJlNGRj NzY0Y2JjYjFiM2VlZDRkZTQzNzVmODVjOGIyZjU2YwotK0N0cmwudHlwZSA9IHR5cGU6RgotK091 dHB1dCA9IDZjZDIyMTAwNWRkMWYwZGU0ZjQ3MmY0OGQxNWU2MWRjYzJlOTFlOTkKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MTAwMzY0NGY5ZWUyNGMzZWMyZTJmZTE2Y2RlY2UzMjZjZGY1YzEzMDllOTMxYmM0MWYyNDVkM2I3 NmYyYmRiZWYwYmFlNThlODUwZTEwZGNiZDBkMTgzNTZiNGY5ODk1N2EzYjk1ZjY0Yzg1ZDFhZjEy YWIwMWZlOTY3ZTUyYTYzMjc2MTA3NGYyNzQwNmEyOTYxODE5MmYxY2JlYmFlMmMyNWU0MmY2ZTlm YzAwYTczN2U0YzkyMzk4NDAzYWI5NDZhNmMzM2U2NzVlNTI5YjVjNzM2NGYzNmQ2NGYwN2ZmNjU4 ODk4NjZkZWU5OTI5M2JkNWJiNWY2NDU0YTc3YmJlMGNiZmQ3NDZkNTRlNWJjOTQ4YzYxN2M1YTFk NWQzZDJiNjVmYTZhODZjNWY0MmM1ZTAxZjkyYThlOTdhOTZmODQ4ZTUwZWNiMWI0OTVhMGU4NzMy M2I0NGY1YjlkZDI1YWIzNGE5NGMwNzdiNzQ5MDY1N2QxZDhmOWE5YWNlZjI3ODVkZTgyYjAyZWY5 ZmI2NzBmYWY4NDFhZTliNDc5ZDJkNTM4YWU4ZTM4ZWFmNmU3NGI4ODRjMThjOWRhZmMxOWI2Yzk3 MjhmZjM0MTE1Mzc1NTViM2IzYjY5ZjZmMDM5OTU4ZmZiMDc5MGU1OGIwOWJkOGM2MzgxOWVlNTBl YTUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjRkMzFmZGI2OGM4ZjQyZjM4Y2FlMjYw YmY2NDAyZTQ3ZGU5M2FhYzcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjQ3 Y2FhMmMwOWJiNGRjOWQ2YWViNjk3YTc2MDQ2YmRmMWZjZDg3OWIKLStDdHJsLnR5cGUgPSB0eXBl OkEKLStPdXRwdXQgPSA1ZjlkZWFmMmVlNGYwNWFmMGE4YTgxM2VmNmJiOTU0OQotKwotK0tERiA9 IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAx MDAzNjQ0ZjllZTI0YzNlYzJlMmZlMTZjZGVjZTMyNmNkZjVjMTMwOWU5MzFiYzQxZjI0NWQzYjc2 ZjJiZGJlZjBiYWU1OGU4NTBlMTBkY2JkMGQxODM1NmI0Zjk4OTU3YTNiOTVmNjRjODVkMWFmMTJh YjAxZmU5NjdlNTJhNjMyNzYxMDc0ZjI3NDA2YTI5NjE4MTkyZjFjYmViYWUyYzI1ZTQyZjZlOWZj MDBhNzM3ZTRjOTIzOTg0MDNhYjk0NmE2YzMzZTY3NWU1MjliNWM3MzY0ZjM2ZDY0ZjA3ZmY2NTg4 OTg2NmRlZTk5MjkzYmQ1YmI1ZjY0NTRhNzdiYmUwY2JmZDc0NmQ1NGU1YmM5NDhjNjE3YzVhMWQ1 ZDNkMmI2NWZhNmE4NmM1ZjQyYzVlMDFmOTJhOGU5N2E5NmY4NDhlNTBlY2IxYjQ5NWEwZTg3MzIz YjQ0ZjViOWRkMjVhYjM0YTk0YzA3N2I3NDkwNjU3ZDFkOGY5YTlhY2VmMjc4NWRlODJiMDJlZjlm YjY3MGZhZjg0MWFlOWI0NzlkMmQ1MzhhZThlMzhlYWY2ZTc0Yjg4NGMxOGM5ZGFmYzE5YjZjOTcy OGZmMzQxMTUzNzU1NWIzYjNiNjlmNmYwMzk5NThmZmIwNzkwZTU4YjA5YmQ4YzYzODE5ZWU1MGVh NQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NGQzMWZkYjY4YzhmNDJmMzhjYWUyNjBi ZjY0MDJlNDdkZTkzYWFjNwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NDdj YWEyYzA5YmI0ZGM5ZDZhZWI2OTdhNzYwNDZiZGYxZmNkODc5YgotK0N0cmwudHlwZSA9IHR5cGU6 QgotK091dHB1dCA9IGEyZWE0Yjc5NWY5YzlkZTFkNzg2ZDBjNzcxZGYyYjg0Ci0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEw MDM2NDRmOWVlMjRjM2VjMmUyZmUxNmNkZWNlMzI2Y2RmNWMxMzA5ZTkzMWJjNDFmMjQ1ZDNiNzZm MmJkYmVmMGJhZTU4ZTg1MGUxMGRjYmQwZDE4MzU2YjRmOTg5NTdhM2I5NWY2NGM4NWQxYWYxMmFi MDFmZTk2N2U1MmE2MzI3NjEwNzRmMjc0MDZhMjk2MTgxOTJmMWNiZWJhZTJjMjVlNDJmNmU5ZmMw MGE3MzdlNGM5MjM5ODQwM2FiOTQ2YTZjMzNlNjc1ZTUyOWI1YzczNjRmMzZkNjRmMDdmZjY1ODg5 ODY2ZGVlOTkyOTNiZDViYjVmNjQ1NGE3N2JiZTBjYmZkNzQ2ZDU0ZTViYzk0OGM2MTdjNWExZDVk M2QyYjY1ZmE2YTg2YzVmNDJjNWUwMWY5MmE4ZTk3YTk2Zjg0OGU1MGVjYjFiNDk1YTBlODczMjNi NDRmNWI5ZGQyNWFiMzRhOTRjMDc3Yjc0OTA2NTdkMWQ4ZjlhOWFjZWYyNzg1ZGU4MmIwMmVmOWZi NjcwZmFmODQxYWU5YjQ3OWQyZDUzOGFlOGUzOGVhZjZlNzRiODg0YzE4YzlkYWZjMTliNmM5NzI4 ZmYzNDExNTM3NTU1YjNiM2I2OWY2ZjAzOTk1OGZmYjA3OTBlNThiMDliZDhjNjM4MTllZTUwZWE1 Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0ZDMxZmRiNjhjOGY0MmYzOGNhZTI2MGJm NjQwMmU0N2RlOTNhYWM3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo0N2Nh YTJjMDliYjRkYzlkNmFlYjY5N2E3NjA0NmJkZjFmY2Q4NzliCi0rQ3RybC50eXBlID0gdHlwZTpD Ci0rT3V0cHV0ID0gMTNmODI4ZjhmMWU1NTMyYTA0ZjEzODY4MWJjODI1OWQKLSsKLStLREYgPSBT U0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAw MzY0NGY5ZWUyNGMzZWMyZTJmZTE2Y2RlY2UzMjZjZGY1YzEzMDllOTMxYmM0MWYyNDVkM2I3NmYy YmRiZWYwYmFlNThlODUwZTEwZGNiZDBkMTgzNTZiNGY5ODk1N2EzYjk1ZjY0Yzg1ZDFhZjEyYWIw MWZlOTY3ZTUyYTYzMjc2MTA3NGYyNzQwNmEyOTYxODE5MmYxY2JlYmFlMmMyNWU0MmY2ZTlmYzAw YTczN2U0YzkyMzk4NDAzYWI5NDZhNmMzM2U2NzVlNTI5YjVjNzM2NGYzNmQ2NGYwN2ZmNjU4ODk4 NjZkZWU5OTI5M2JkNWJiNWY2NDU0YTc3YmJlMGNiZmQ3NDZkNTRlNWJjOTQ4YzYxN2M1YTFkNWQz ZDJiNjVmYTZhODZjNWY0MmM1ZTAxZjkyYThlOTdhOTZmODQ4ZTUwZWNiMWI0OTVhMGU4NzMyM2I0 NGY1YjlkZDI1YWIzNGE5NGMwNzdiNzQ5MDY1N2QxZDhmOWE5YWNlZjI3ODVkZTgyYjAyZWY5ZmI2 NzBmYWY4NDFhZTliNDc5ZDJkNTM4YWU4ZTM4ZWFmNmU3NGI4ODRjMThjOWRhZmMxOWI2Yzk3Mjhm ZjM0MTE1Mzc1NTViM2IzYjY5ZjZmMDM5OTU4ZmZiMDc5MGU1OGIwOWJkOGM2MzgxOWVlNTBlYTUK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjRkMzFmZGI2OGM4ZjQyZjM4Y2FlMjYwYmY2 NDAyZTQ3ZGU5M2FhYzcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjQ3Y2Fh MmMwOWJiNGRjOWQ2YWViNjk3YTc2MDQ2YmRmMWZjZDg3OWIKLStDdHJsLnR5cGUgPSB0eXBlOkQK LStPdXRwdXQgPSA3MjMxY2U1ZmQ3MjUzOTFlMDU4Y2Q3ODgxNWY0NDYyNQotKwotK0tERiA9IFNT SEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDAz NjQ0ZjllZTI0YzNlYzJlMmZlMTZjZGVjZTMyNmNkZjVjMTMwOWU5MzFiYzQxZjI0NWQzYjc2ZjJi ZGJlZjBiYWU1OGU4NTBlMTBkY2JkMGQxODM1NmI0Zjk4OTU3YTNiOTVmNjRjODVkMWFmMTJhYjAx ZmU5NjdlNTJhNjMyNzYxMDc0ZjI3NDA2YTI5NjE4MTkyZjFjYmViYWUyYzI1ZTQyZjZlOWZjMDBh NzM3ZTRjOTIzOTg0MDNhYjk0NmE2YzMzZTY3NWU1MjliNWM3MzY0ZjM2ZDY0ZjA3ZmY2NTg4OTg2 NmRlZTk5MjkzYmQ1YmI1ZjY0NTRhNzdiYmUwY2JmZDc0NmQ1NGU1YmM5NDhjNjE3YzVhMWQ1ZDNk MmI2NWZhNmE4NmM1ZjQyYzVlMDFmOTJhOGU5N2E5NmY4NDhlNTBlY2IxYjQ5NWEwZTg3MzIzYjQ0 ZjViOWRkMjVhYjM0YTk0YzA3N2I3NDkwNjU3ZDFkOGY5YTlhY2VmMjc4NWRlODJiMDJlZjlmYjY3 MGZhZjg0MWFlOWI0NzlkMmQ1MzhhZThlMzhlYWY2ZTc0Yjg4NGMxOGM5ZGFmYzE5YjZjOTcyOGZm MzQxMTUzNzU1NWIzYjNiNjlmNmYwMzk5NThmZmIwNzkwZTU4YjA5YmQ4YzYzODE5ZWU1MGVhNQot K0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NGQzMWZkYjY4YzhmNDJmMzhjYWUyNjBiZjY0 MDJlNDdkZTkzYWFjNwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NDdjYWEy YzA5YmI0ZGM5ZDZhZWI2OTdhNzYwNDZiZGYxZmNkODc5YgotK0N0cmwudHlwZSA9IHR5cGU6RQot K091dHB1dCA9IDkzN2I3ZTE2ZWQwYjIzMjQyMDNjZGFlOTA0ZmM1NWNiZTI1MDY3YTEKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMTAwMzY0NGY5ZWUyNGMzZWMyZTJmZTE2Y2RlY2UzMjZjZGY1YzEzMDllOTMxYmM0MWYyNDVk M2I3NmYyYmRiZWYwYmFlNThlODUwZTEwZGNiZDBkMTgzNTZiNGY5ODk1N2EzYjk1ZjY0Yzg1ZDFh ZjEyYWIwMWZlOTY3ZTUyYTYzMjc2MTA3NGYyNzQwNmEyOTYxODE5MmYxY2JlYmFlMmMyNWU0MmY2 ZTlmYzAwYTczN2U0YzkyMzk4NDAzYWI5NDZhNmMzM2U2NzVlNTI5YjVjNzM2NGYzNmQ2NGYwN2Zm NjU4ODk4NjZkZWU5OTI5M2JkNWJiNWY2NDU0YTc3YmJlMGNiZmQ3NDZkNTRlNWJjOTQ4YzYxN2M1 YTFkNWQzZDJiNjVmYTZhODZjNWY0MmM1ZTAxZjkyYThlOTdhOTZmODQ4ZTUwZWNiMWI0OTVhMGU4 NzMyM2I0NGY1YjlkZDI1YWIzNGE5NGMwNzdiNzQ5MDY1N2QxZDhmOWE5YWNlZjI3ODVkZTgyYjAy ZWY5ZmI2NzBmYWY4NDFhZTliNDc5ZDJkNTM4YWU4ZTM4ZWFmNmU3NGI4ODRjMThjOWRhZmMxOWI2 Yzk3MjhmZjM0MTE1Mzc1NTViM2IzYjY5ZjZmMDM5OTU4ZmZiMDc5MGU1OGIwOWJkOGM2MzgxOWVl NTBlYTUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjRkMzFmZGI2OGM4ZjQyZjM4Y2Fl MjYwYmY2NDAyZTQ3ZGU5M2FhYzcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OjQ3Y2FhMmMwOWJiNGRjOWQ2YWViNjk3YTc2MDQ2YmRmMWZjZDg3OWIKLStDdHJsLnR5cGUgPSB0 eXBlOkYKLStPdXRwdXQgPSBkNzUzNmI5MTFkYzc5ZDU5NTM0NTViYTZlMTVjYjVmZWM3YzE0MDI1 Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMDgxMDA4ZGU2MGRmMDE5YzIzOTY2ZDIxNWQ5Yjg0OTBhYzQ5M2RmYWU1OWI5 OWRiZWZkYWQ4MWQyYzllNzYxMjA1YzkzYTY5NmRiZDllNTM4Y2M1N2NkM2UyNGMyNzk4ZDJjNTY1 NjFkNjgwM2U4ZWUyNGUxMTJiYWJlZjg0YWQ1YTJjNTcxYzU3MjMzOWYyYjM4ZjEzNDUxNjQzMTRm OGY0NzE0MDQ3ZjBjNjY2NTBmMTAwNTEwNDRmOGRjZDI1NmJmZTgxNzEzMDJhODFjZTEzZjQ3Zjcz NzVkYjgwYTZiYmY4Y2U3ZDhmOTZlMDNmYzYyNzVmZDVkYWNmYmRkMTY2NzkyCi0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDplNjlmYmJlZTkwZjBjYjdjNTc5OTZjNmYzZjllYzRjN2RlOWYw YzQzYjdjOTkzZWMzZWMxZDRjYQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 ZTY5ZmJiZWU5MGYwY2I3YzU3OTk2YzZmM2Y5ZWM0YzdkZTlmMGM0M2I3Yzk5M2VjM2VjMWQ0Y2EK LStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSA5ZmZmNmM2YTZkMWY1YzMxCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMDgxMDA4ZGU2MGRmMDE5YzIzOTY2ZDIxNWQ5Yjg0OTBhYzQ5M2RmYWU1OWI5OWRiZWZkYWQ4 MWQyYzllNzYxMjA1YzkzYTY5NmRiZDllNTM4Y2M1N2NkM2UyNGMyNzk4ZDJjNTY1NjFkNjgwM2U4 ZWUyNGUxMTJiYWJlZjg0YWQ1YTJjNTcxYzU3MjMzOWYyYjM4ZjEzNDUxNjQzMTRmOGY0NzE0MDQ3 ZjBjNjY2NTBmMTAwNTEwNDRmOGRjZDI1NmJmZTgxNzEzMDJhODFjZTEzZjQ3ZjczNzVkYjgwYTZi YmY4Y2U3ZDhmOTZlMDNmYzYyNzVmZDVkYWNmYmRkMTY2NzkyCi0rQ3RybC5oZXh4Y2doYXNoID0g aGV4eGNnaGFzaDplNjlmYmJlZTkwZjBjYjdjNTc5OTZjNmYzZjllYzRjN2RlOWYwYzQzYjdjOTkz ZWMzZWMxZDRjYQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZTY5ZmJiZWU5 MGYwY2I3YzU3OTk2YzZmM2Y5ZWM0YzdkZTlmMGM0M2I3Yzk5M2VjM2VjMWQ0Y2EKLStDdHJsLnR5 cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA4ZTBhZTc4YzY0ZDJmZTJhCi0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4 ZGU2MGRmMDE5YzIzOTY2ZDIxNWQ5Yjg0OTBhYzQ5M2RmYWU1OWI5OWRiZWZkYWQ4MWQyYzllNzYx MjA1YzkzYTY5NmRiZDllNTM4Y2M1N2NkM2UyNGMyNzk4ZDJjNTY1NjFkNjgwM2U4ZWUyNGUxMTJi YWJlZjg0YWQ1YTJjNTcxYzU3MjMzOWYyYjM4ZjEzNDUxNjQzMTRmOGY0NzE0MDQ3ZjBjNjY2NTBm MTAwNTEwNDRmOGRjZDI1NmJmZTgxNzEzMDJhODFjZTEzZjQ3ZjczNzVkYjgwYTZiYmY4Y2U3ZDhm OTZlMDNmYzYyNzVmZDVkYWNmYmRkMTY2NzkyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDplNjlmYmJlZTkwZjBjYjdjNTc5OTZjNmYzZjllYzRjN2RlOWYwYzQzYjdjOTkzZWMzZWMxZDRj YQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZTY5ZmJiZWU5MGYwY2I3YzU3 OTk2YzZmM2Y5ZWM0YzdkZTlmMGM0M2I3Yzk5M2VjM2VjMWQ0Y2EKLStDdHJsLnR5cGUgPSB0eXBl OkMKLStPdXRwdXQgPSA5MDQ0Zjk2M2ZmYjU2Yjk0NTU2YTM4YWFjNTM5OGE3MDcyZmZiYTYwMjU4 NTAwYmUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAwODEwMDhkZTYwZGYwMTljMjM5NjZkMjE1ZDliODQ5MGFjNDkzZGZh ZTU5Yjk5ZGJlZmRhZDgxZDJjOWU3NjEyMDVjOTNhNjk2ZGJkOWU1MzhjYzU3Y2QzZTI0YzI3OThk MmM1NjU2MWQ2ODAzZThlZTI0ZTExMmJhYmVmODRhZDVhMmM1NzFjNTcyMzM5ZjJiMzhmMTM0NTE2 NDMxNGY4ZjQ3MTQwNDdmMGM2NjY1MGYxMDA1MTA0NGY4ZGNkMjU2YmZlODE3MTMwMmE4MWNlMTNm NDdmNzM3NWRiODBhNmJiZjhjZTdkOGY5NmUwM2ZjNjI3NWZkNWRhY2ZiZGQxNjY3OTIKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmU2OWZiYmVlOTBmMGNiN2M1Nzk5NmM2ZjNmOWVjNGM3 ZGU5ZjBjNDNiN2M5OTNlYzNlYzFkNGNhCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDplNjlmYmJlZTkwZjBjYjdjNTc5OTZjNmYzZjllYzRjN2RlOWYwYzQzYjdjOTkzZWMzZWMx ZDRjYQotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGE4NjFhMzE3ZWE0MmIwNTA5MDFh ZmYzNjdiNWExZDBhYmQ1YzQ5N2M3NzMxMWJhMgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwOGRlNjBkZjAxOWMy Mzk2NmQyMTVkOWI4NDkwYWM0OTNkZmFlNTliOTlkYmVmZGFkODFkMmM5ZTc2MTIwNWM5M2E2OTZk YmQ5ZTUzOGNjNTdjZDNlMjRjMjc5OGQyYzU2NTYxZDY4MDNlOGVlMjRlMTEyYmFiZWY4NGFkNWEy YzU3MWM1NzIzMzlmMmIzOGYxMzQ1MTY0MzE0ZjhmNDcxNDA0N2YwYzY2NjUwZjEwMDUxMDQ0Zjhk Y2QyNTZiZmU4MTcxMzAyYTgxY2UxM2Y0N2Y3Mzc1ZGI4MGE2YmJmOGNlN2Q4Zjk2ZTAzZmM2Mjc1 ZmQ1ZGFjZmJkZDE2Njc5MgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZTY5ZmJiZWU5 MGYwY2I3YzU3OTk2YzZmM2Y5ZWM0YzdkZTlmMGM0M2I3Yzk5M2VjM2VjMWQ0Y2EKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmU2OWZiYmVlOTBmMGNiN2M1Nzk5NmM2ZjNmOWVj NGM3ZGU5ZjBjNDNiN2M5OTNlYzNlYzFkNGNhCi0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0 ID0gNDMyMjVkNjRiNmRhNmYwNzA5MjVhZDFjOGI3YWM4ODg5M2Y5YTdjYmEwZGZjNTVkZGVhNDJl ZWMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODEwMDhkZTYwZGYwMTljMjM5NjZkMjE1ZDliODQ5MGFjNDkzZGZhZTU5 Yjk5ZGJlZmRhZDgxZDJjOWU3NjEyMDVjOTNhNjk2ZGJkOWU1MzhjYzU3Y2QzZTI0YzI3OThkMmM1 NjU2MWQ2ODAzZThlZTI0ZTExMmJhYmVmODRhZDVhMmM1NzFjNTcyMzM5ZjJiMzhmMTM0NTE2NDMx NGY4ZjQ3MTQwNDdmMGM2NjY1MGYxMDA1MTA0NGY4ZGNkMjU2YmZlODE3MTMwMmE4MWNlMTNmNDdm NzM3NWRiODBhNmJiZjhjZTdkOGY5NmUwM2ZjNjI3NWZkNWRhY2ZiZGQxNjY3OTIKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmU2OWZiYmVlOTBmMGNiN2M1Nzk5NmM2ZjNmOWVjNGM3ZGU5 ZjBjNDNiN2M5OTNlYzNlYzFkNGNhCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDplNjlmYmJlZTkwZjBjYjdjNTc5OTZjNmYzZjllYzRjN2RlOWYwYzQzYjdjOTkzZWMzZWMxZDRj YQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGViMzFkYjI5YmJhZmNhMjc3M2Y4MTVm YTQ3OGQ5Mjc5NDMyODg1ODhlMzcxYWU5YmEwNDE0ZDk4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3Ry bC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBhMDNkODA3 ZmVmNDhhNTBkOGEwNGQ5YjY3MjE5NzljNTkwNDQxMmMzYmNmZTY5ZWJkNGMyNTU0ZGViZTgyYTY5 NWE2NmZiOWQ4NDRjNmVmM2FhNGI3NDVjMmE0YzhkYmM0YmEyNjc0MmUwZDExNTlkZWQ4M2VkY2Ew YmVjNjFjNzMwM2U4MWY5ZDdmMzE2OWI3Yzk3NTczYjkxODRlYzNjNTI4NmQ5NjQ2ZTk2NTk1ZjA2 NGQ2MTAxMzQzMTYyOGY1YzU3YmNiMWJmNzliY2QxYjAxNzdhYjQ1MjBjMWExYTliMzRiNTA2N2Q5 ZjQ2NWM5YjAzMTU0ZDU3ZjFiNDJmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDowM2Fm NGJkMTVhMzdhYTc4MTZkODI2MzMyZGNkOWRhYTE1Mzc3NzBmZDBiY2FmYmFmZTMwMDMzZAotK0N0 cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MzYwODRjYTNkYzUzNWIzN2Q1MzNkMDM0 ZDg5MWZhYmMyMGUzYjAyNzBiYjhjMDA4MDY2YmZhYzgKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStP dXRwdXQgPSBiZjJkNmUwM2JhOTMwYzcxCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBhMDNkODA3ZmVmNDhhNTBk OGEwNGQ5YjY3MjE5NzljNTkwNDQxMmMzYmNmZTY5ZWJkNGMyNTU0ZGViZTgyYTY5NWE2NmZiOWQ4 NDRjNmVmM2FhNGI3NDVjMmE0YzhkYmM0YmEyNjc0MmUwZDExNTlkZWQ4M2VkY2EwYmVjNjFjNzMw M2U4MWY5ZDdmMzE2OWI3Yzk3NTczYjkxODRlYzNjNTI4NmQ5NjQ2ZTk2NTk1ZjA2NGQ2MTAxMzQz MTYyOGY1YzU3YmNiMWJmNzliY2QxYjAxNzdhYjQ1MjBjMWExYTliMzRiNTA2N2Q5ZjQ2NWM5YjAz MTU0ZDU3ZjFiNDJmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDowM2FmNGJkMTVhMzdh YTc4MTZkODI2MzMyZGNkOWRhYTE1Mzc3NzBmZDBiY2FmYmFmZTMwMDMzZAotK0N0cmwuaGV4c2Vz c2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MzYwODRjYTNkYzUzNWIzN2Q1MzNkMDM0ZDg5MWZhYmMy MGUzYjAyNzBiYjhjMDA4MDY2YmZhYzgKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSBm ZjE0ZmFkYzE5YTBiZDhhCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBhMDNkODA3ZmVmNDhhNTBkOGEwNGQ5YjY3 MjE5NzljNTkwNDQxMmMzYmNmZTY5ZWJkNGMyNTU0ZGViZTgyYTY5NWE2NmZiOWQ4NDRjNmVmM2Fh NGI3NDVjMmE0YzhkYmM0YmEyNjc0MmUwZDExNTlkZWQ4M2VkY2EwYmVjNjFjNzMwM2U4MWY5ZDdm MzE2OWI3Yzk3NTczYjkxODRlYzNjNTI4NmQ5NjQ2ZTk2NTk1ZjA2NGQ2MTAxMzQzMTYyOGY1YzU3 YmNiMWJmNzliY2QxYjAxNzdhYjQ1MjBjMWExYTliMzRiNTA2N2Q5ZjQ2NWM5YjAzMTU0ZDU3ZjFi NDJmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDowM2FmNGJkMTVhMzdhYTc4MTZkODI2 MzMyZGNkOWRhYTE1Mzc3NzBmZDBiY2FmYmFmZTMwMDMzZAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6MzYwODRjYTNkYzUzNWIzN2Q1MzNkMDM0ZDg5MWZhYmMyMGUzYjAyNzBi YjhjMDA4MDY2YmZhYzgKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAzNGE3MDczNGVh ZWJlYjg2MDhjYmI5MTA5OGZhMTMzMjZmMzdjY2M1ZDQwODU4NGQKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGEw M2Q4MDdmZWY0OGE1MGQ4YTA0ZDliNjcyMTk3OWM1OTA0NDEyYzNiY2ZlNjllYmQ0YzI1NTRkZWJl ODJhNjk1YTY2ZmI5ZDg0NGM2ZWYzYWE0Yjc0NWMyYTRjOGRiYzRiYTI2NzQyZTBkMTE1OWRlZDgz ZWRjYTBiZWM2MWM3MzAzZTgxZjlkN2YzMTY5YjdjOTc1NzNiOTE4NGVjM2M1Mjg2ZDk2NDZlOTY1 OTVmMDY0ZDYxMDEzNDMxNjI4ZjVjNTdiY2IxYmY3OWJjZDFiMDE3N2FiNDUyMGMxYTFhOWIzNGI1 MDY3ZDlmNDY1YzliMDMxNTRkNTdmMWI0MmYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OjAzYWY0YmQxNWEzN2FhNzgxNmQ4MjYzMzJkY2Q5ZGFhMTUzNzc3MGZkMGJjYWZiYWZlMzAwMzNk Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDozNjA4NGNhM2RjNTM1YjM3ZDUz M2QwMzRkODkxZmFiYzIwZTNiMDI3MGJiOGMwMDgwNjZiZmFjOAotK0N0cmwudHlwZSA9IHR5cGU6 RAotK091dHB1dCA9IGY5OTNkYThmMmU4NDBiODM2Yzg5ODBmYTJkNzgwYTFiNGVlZWY3NzA0Njk4 OGVlZAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtl eSA9IGhleGtleTowMDAwMDA4MTAwYTAzZDgwN2ZlZjQ4YTUwZDhhMDRkOWI2NzIxOTc5YzU5MDQ0 MTJjM2JjZmU2OWViZDRjMjU1NGRlYmU4MmE2OTVhNjZmYjlkODQ0YzZlZjNhYTRiNzQ1YzJhNGM4 ZGJjNGJhMjY3NDJlMGQxMTU5ZGVkODNlZGNhMGJlYzYxYzczMDNlODFmOWQ3ZjMxNjliN2M5NzU3 M2I5MTg0ZWMzYzUyODZkOTY0NmU5NjU5NWYwNjRkNjEwMTM0MzE2MjhmNWM1N2JjYjFiZjc5YmNk MWIwMTc3YWI0NTIwYzFhMWE5YjM0YjUwNjdkOWY0NjVjOWIwMzE1NGQ1N2YxYjQyZgotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MDNhZjRiZDE1YTM3YWE3ODE2ZDgyNjMzMmRjZDlkYWEx NTM3NzcwZmQwYmNhZmJhZmUzMDAzM2QKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9u X2lkOjM2MDg0Y2EzZGM1MzViMzdkNTMzZDAzNGQ4OTFmYWJjMjBlM2IwMjcwYmI4YzAwODA2NmJm YWM4Ci0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gYTI3NDQ0MWM4NmRkMTQ2Y2ZhYjI1 ZDg3MzQ0YmQ1YTg4MGQzNzRkMzAwYWE4ZTFmZTQ5MTkzNzgKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGEwM2Q4 MDdmZWY0OGE1MGQ4YTA0ZDliNjcyMTk3OWM1OTA0NDEyYzNiY2ZlNjllYmQ0YzI1NTRkZWJlODJh Njk1YTY2ZmI5ZDg0NGM2ZWYzYWE0Yjc0NWMyYTRjOGRiYzRiYTI2NzQyZTBkMTE1OWRlZDgzZWRj YTBiZWM2MWM3MzAzZTgxZjlkN2YzMTY5YjdjOTc1NzNiOTE4NGVjM2M1Mjg2ZDk2NDZlOTY1OTVm MDY0ZDYxMDEzNDMxNjI4ZjVjNTdiY2IxYmY3OWJjZDFiMDE3N2FiNDUyMGMxYTFhOWIzNGI1MDY3 ZDlmNDY1YzliMDMxNTRkNTdmMWI0MmYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjAz YWY0YmQxNWEzN2FhNzgxNmQ4MjYzMzJkY2Q5ZGFhMTUzNzc3MGZkMGJjYWZiYWZlMzAwMzNkCi0r Q3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDozNjA4NGNhM2RjNTM1YjM3ZDUzM2Qw MzRkODkxZmFiYzIwZTNiMDI3MGJiOGMwMDgwNjZiZmFjOAotK0N0cmwudHlwZSA9IHR5cGU6Rgot K091dHB1dCA9IDc3NzRkYzQ4MzI0Y2NhMjQ5MDFiZWRjMzcyMjRjYjI5MWQ2MjAyZmI2YjVlMWQ5 MzE1YTliZDEwCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwu aGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBkMDllMzAwYzhiOTNiOGM3NTlmOTY5MTBiMzE5Yjhm ZDljOWM4YzFiNzA0YjY1NjQ5ZjUyNWI2YzE2NzMyZWUzN2Y0OTlhYzcyOWJkY2U5ZWE0OTM4MTE5 NTQ4NDllOGVlYjQ0OWNiMmY0NDg1ZmU3OGIwZjUzODAzODE3OGFkM2UxYjk1ZWYxM2ZjZjAxMzRm MTE5OWFkNzQyYjMxZDVmMjIyZWQ3OTI3MjgzYTAwOGM5NzAxNDNhZjQ2OTY1YWNkZTMyMTM5YzI0 NDhkYjVjYzExZmQ1NWU1MzQ3NzlmMWI1ZDc3NTdiMjdlM2EzODgxYTM1OTZiMGIwMDJmZjdlCi0r Q3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpiZTg1NTkzMzlhMWIyMzFhNTlhOGZlYWU5MDRj MDBkZWNhZjk3MGZmOGU4MzAxODY2MmM2NWZhOAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNl c3Npb25faWQ6YTgzNzhmZDE1ODY3N2ZhYzI5MmM1Y2NlOGE5ZWZkYmQ1YzVjOThlZTZmMDU2YTVl NmU3NzFiNmIKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSA3NWJjODJiMjcxMzExZjUz Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMDgxMDBkMDllMzAwYzhiOTNiOGM3NTlmOTY5MTBiMzE5YjhmZDljOWM4YzFi NzA0YjY1NjQ5ZjUyNWI2YzE2NzMyZWUzN2Y0OTlhYzcyOWJkY2U5ZWE0OTM4MTE5NTQ4NDllOGVl YjQ0OWNiMmY0NDg1ZmU3OGIwZjUzODAzODE3OGFkM2UxYjk1ZWYxM2ZjZjAxMzRmMTE5OWFkNzQy YjMxZDVmMjIyZWQ3OTI3MjgzYTAwOGM5NzAxNDNhZjQ2OTY1YWNkZTMyMTM5YzI0NDhkYjVjYzEx ZmQ1NWU1MzQ3NzlmMWI1ZDc3NTdiMjdlM2EzODgxYTM1OTZiMGIwMDJmZjdlCi0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDpiZTg1NTkzMzlhMWIyMzFhNTlhOGZlYWU5MDRjMDBkZWNhZjk3 MGZmOGU4MzAxODY2MmM2NWZhOAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 YTgzNzhmZDE1ODY3N2ZhYzI5MmM1Y2NlOGE5ZWZkYmQ1YzVjOThlZTZmMDU2YTVlNmU3NzFiNmIK LStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA2MDJkNjllNzdiOGMzMGIzCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMDgxMDBkMDllMzAwYzhiOTNiOGM3NTlmOTY5MTBiMzE5YjhmZDljOWM4YzFiNzA0YjY1NjQ5 ZjUyNWI2YzE2NzMyZWUzN2Y0OTlhYzcyOWJkY2U5ZWE0OTM4MTE5NTQ4NDllOGVlYjQ0OWNiMmY0 NDg1ZmU3OGIwZjUzODAzODE3OGFkM2UxYjk1ZWYxM2ZjZjAxMzRmMTE5OWFkNzQyYjMxZDVmMjIy ZWQ3OTI3MjgzYTAwOGM5NzAxNDNhZjQ2OTY1YWNkZTMyMTM5YzI0NDhkYjVjYzExZmQ1NWU1MzQ3 NzlmMWI1ZDc3NTdiMjdlM2EzODgxYTM1OTZiMGIwMDJmZjdlCi0rQ3RybC5oZXh4Y2doYXNoID0g aGV4eGNnaGFzaDpiZTg1NTkzMzlhMWIyMzFhNTlhOGZlYWU5MDRjMDBkZWNhZjk3MGZmOGU4MzAx ODY2MmM2NWZhOAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTgzNzhmZDE1 ODY3N2ZhYzI5MmM1Y2NlOGE5ZWZkYmQ1YzVjOThlZTZmMDU2YTVlNmU3NzFiNmIKLStDdHJsLnR5 cGUgPSB0eXBlOkMKLStPdXRwdXQgPSBlMGM4ODU2YTI2YjJmNDgwNGU5ODgwOWQ1YjgxY2RiMzYw YjQzODg0YTMzZDRmZWYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGQwOWUzMDBjOGI5M2I4Yzc1OWY5NjkxMGIz MTliOGZkOWM5YzhjMWI3MDRiNjU2NDlmNTI1YjZjMTY3MzJlZTM3ZjQ5OWFjNzI5YmRjZTllYTQ5 MzgxMTk1NDg0OWU4ZWViNDQ5Y2IyZjQ0ODVmZTc4YjBmNTM4MDM4MTc4YWQzZTFiOTVlZjEzZmNm MDEzNGYxMTk5YWQ3NDJiMzFkNWYyMjJlZDc5MjcyODNhMDA4Yzk3MDE0M2FmNDY5NjVhY2RlMzIx MzljMjQ0OGRiNWNjMTFmZDU1ZTUzNDc3OWYxYjVkNzc1N2IyN2UzYTM4ODFhMzU5NmIwYjAwMmZm N2UKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmJlODU1OTMzOWExYjIzMWE1OWE4ZmVh ZTkwNGMwMGRlY2FmOTcwZmY4ZTgzMDE4NjYyYzY1ZmE4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDphODM3OGZkMTU4Njc3ZmFjMjkyYzVjY2U4YTllZmRiZDVjNWM5OGVlNmYw NTZhNWU2ZTc3MWI2YgotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGU2NjE1NTU0MTVi Y2FiMGIxZjJkNGI0Mzg3Y2RhMjEzY2RkOTNmODQ1OGEyYWNlNAotKwotK0tERiA9IFNTSEtERgot K0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwZDA5 ZTMwMGM4YjkzYjhjNzU5Zjk2OTEwYjMxOWI4ZmQ5YzljOGMxYjcwNGI2NTY0OWY1MjViNmMxNjcz MmVlMzdmNDk5YWM3MjliZGNlOWVhNDkzODExOTU0ODQ5ZThlZWI0NDljYjJmNDQ4NWZlNzhiMGY1 MzgwMzgxNzhhZDNlMWI5NWVmMTNmY2YwMTM0ZjExOTlhZDc0MmIzMWQ1ZjIyMmVkNzkyNzI4M2Ew MDhjOTcwMTQzYWY0Njk2NWFjZGUzMjEzOWMyNDQ4ZGI1Y2MxMWZkNTVlNTM0Nzc5ZjFiNWQ3NzU3 YjI3ZTNhMzg4MWEzNTk2YjBiMDAyZmY3ZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6 YmU4NTU5MzM5YTFiMjMxYTU5YThmZWFlOTA0YzAwZGVjYWY5NzBmZjhlODMwMTg2NjJjNjVmYTgK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmE4Mzc4ZmQxNTg2NzdmYWMyOTJj NWNjZThhOWVmZGJkNWM1Yzk4ZWU2ZjA1NmE1ZTZlNzcxYjZiCi0rQ3RybC50eXBlID0gdHlwZTpF Ci0rT3V0cHV0ID0gYTM2OGY2NjEyNzU3M2M3OWUyZDkzNjAzMmY3NWMzZDExYzAxMzE0NTVlYjli NmM1Mzg0NTgyZGUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGQwOWUzMDBjOGI5M2I4Yzc1OWY5NjkxMGIzMTli OGZkOWM5YzhjMWI3MDRiNjU2NDlmNTI1YjZjMTY3MzJlZTM3ZjQ5OWFjNzI5YmRjZTllYTQ5Mzgx MTk1NDg0OWU4ZWViNDQ5Y2IyZjQ0ODVmZTc4YjBmNTM4MDM4MTc4YWQzZTFiOTVlZjEzZmNmMDEz NGYxMTk5YWQ3NDJiMzFkNWYyMjJlZDc5MjcyODNhMDA4Yzk3MDE0M2FmNDY5NjVhY2RlMzIxMzlj MjQ0OGRiNWNjMTFmZDU1ZTUzNDc3OWYxYjVkNzc1N2IyN2UzYTM4ODFhMzU5NmIwYjAwMmZmN2UK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmJlODU1OTMzOWExYjIzMWE1OWE4ZmVhZTkw NGMwMGRlY2FmOTcwZmY4ZTgzMDE4NjYyYzY1ZmE4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDphODM3OGZkMTU4Njc3ZmFjMjkyYzVjY2U4YTllZmRiZDVjNWM5OGVlNmYwNTZh NWU2ZTc3MWI2YgotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDc3OWYwOWY1MTRiZGY3 ZWQ0YTAxNzg4ZjEwMTQ2MzY3Y2UyZGRmMmFhY2ViYjk2MTUyNGMwMDJhCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgw NTczNTJjNGEyNmFhMDExZTliOWUxMDE3MzZhYjZiMTM2OWM3M2Y1NTM4NDhkMTU5YjAxYmYyYzc2 NzEwNzRjZGNkYzczYjhjNjk3NjQ5ZGM3NDY1MTk3YzJmMTc1NjBkMDA0NTI0NjQxMDA2M2YyMGQ4 ZDI5NTE4ZTdiMjVkODcxODg2MzQ2YWNjY2Q5ZWMxYjJkNzRiMTliNGFmZjE2OTUzNzE0MjY2ZDE0 NDAyNDc4NTk5NThmMDEwZjNmZTYxNjg1OWMwNzMxNTE2OWM1YmI1NTQ3YzZkZmRhZjRhMjE5ZGFh M2E3OGY1NDY5NThmNTZlMTRmZGY2NGMzYjI2ZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6ZGNhMzAyY2Q0ZWUyOWQ4OGIzZjkwOWY3M2UxOWQ5MjAwOTliOGMxODA2MmU4NzVjYjc2MjI1 N2IKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjJmNjM2OGRkNWYxYTZhOGRi OThmNzQzMzE4NTBjMTEwYWEwZTU4ZjA2YTEwY2E4MTc4MTcxZDk1Ci0rQ3RybC50eXBlID0gdHlw ZTpBCi0rT3V0cHV0ID0gMzg2YmMwYjk5MjE1YzhmYQotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDU3MzUyYzRhMjZh YTAxMWU5YjllMTAxNzM2YWI2YjEzNjljNzNmNTUzODQ4ZDE1OWIwMWJmMmM3NjcxMDc0Y2RjZGM3 M2I4YzY5NzY0OWRjNzQ2NTE5N2MyZjE3NTYwZDAwNDUyNDY0MTAwNjNmMjBkOGQyOTUxOGU3YjI1 ZDg3MTg4NjM0NmFjY2NkOWVjMWIyZDc0YjE5YjRhZmYxNjk1MzcxNDI2NmQxNDQwMjQ3ODU5OTU4 ZjAxMGYzZmU2MTY4NTljMDczMTUxNjljNWJiNTU0N2M2ZGZkYWY0YTIxOWRhYTNhNzhmNTQ2OTU4 ZjU2ZTE0ZmRmNjRjM2IyNmUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmRjYTMwMmNk NGVlMjlkODhiM2Y5MDlmNzNlMTlkOTIwMDk5YjhjMTgwNjJlODc1Y2I3NjIyNTdiCi0rQ3RybC5o ZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoyZjYzNjhkZDVmMWE2YThkYjk4Zjc0MzMxODUw YzExMGFhMGU1OGYwNmExMGNhODE3ODE3MWQ5NQotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1 dCA9IGM3OTNkYmE5YTY4ZjcwYTQKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hB MjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA1NzM1MmM0YTI2YWEwMTFlOWI5ZTEw MTczNmFiNmIxMzY5YzczZjU1Mzg0OGQxNTliMDFiZjJjNzY3MTA3NGNkY2RjNzNiOGM2OTc2NDlk Yzc0NjUxOTdjMmYxNzU2MGQwMDQ1MjQ2NDEwMDYzZjIwZDhkMjk1MThlN2IyNWQ4NzE4ODYzNDZh Y2NjZDllYzFiMmQ3NGIxOWI0YWZmMTY5NTM3MTQyNjZkMTQ0MDI0Nzg1OTk1OGYwMTBmM2ZlNjE2 ODU5YzA3MzE1MTY5YzViYjU1NDdjNmRmZGFmNGEyMTlkYWEzYTc4ZjU0Njk1OGY1NmUxNGZkZjY0 YzNiMjZlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpkY2EzMDJjZDRlZTI5ZDg4YjNm OTA5ZjczZTE5ZDkyMDA5OWI4YzE4MDYyZTg3NWNiNzYyMjU3YgotK0N0cmwuaGV4c2Vzc2lvbl9p ZCA9IGhleHNlc3Npb25faWQ6MmY2MzY4ZGQ1ZjFhNmE4ZGI5OGY3NDMzMTg1MGMxMTBhYTBlNThm MDZhMTBjYTgxNzgxNzFkOTUKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAzZGNhZWE3 Yzk0NmMyZGU3NjgxMTQ4MjU1NjI5OWFhOWJmOTZjOGVlZjExZmIyZDYKLSsKLStLREYgPSBTU0hL REYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA1 NzM1MmM0YTI2YWEwMTFlOWI5ZTEwMTczNmFiNmIxMzY5YzczZjU1Mzg0OGQxNTliMDFiZjJjNzY3 MTA3NGNkY2RjNzNiOGM2OTc2NDlkYzc0NjUxOTdjMmYxNzU2MGQwMDQ1MjQ2NDEwMDYzZjIwZDhk Mjk1MThlN2IyNWQ4NzE4ODYzNDZhY2NjZDllYzFiMmQ3NGIxOWI0YWZmMTY5NTM3MTQyNjZkMTQ0 MDI0Nzg1OTk1OGYwMTBmM2ZlNjE2ODU5YzA3MzE1MTY5YzViYjU1NDdjNmRmZGFmNGEyMTlkYWEz YTc4ZjU0Njk1OGY1NmUxNGZkZjY0YzNiMjZlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDpkY2EzMDJjZDRlZTI5ZDg4YjNmOTA5ZjczZTE5ZDkyMDA5OWI4YzE4MDYyZTg3NWNiNzYyMjU3 YgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MmY2MzY4ZGQ1ZjFhNmE4ZGI5 OGY3NDMzMTg1MGMxMTBhYTBlNThmMDZhMTBjYTgxNzgxNzFkOTUKLStDdHJsLnR5cGUgPSB0eXBl OkQKLStPdXRwdXQgPSBmZDA3OGVmNjU5MjIwMDY4MDk3MjlmOTUzM2M4NzQyZTlmOTczZjdmZjM3 YmE5ODcKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAwODA1NzM1MmM0YTI2YWEwMTFlOWI5ZTEwMTczNmFiNmIxMzY5Yzcz ZjU1Mzg0OGQxNTliMDFiZjJjNzY3MTA3NGNkY2RjNzNiOGM2OTc2NDlkYzc0NjUxOTdjMmYxNzU2 MGQwMDQ1MjQ2NDEwMDYzZjIwZDhkMjk1MThlN2IyNWQ4NzE4ODYzNDZhY2NjZDllYzFiMmQ3NGIx OWI0YWZmMTY5NTM3MTQyNjZkMTQ0MDI0Nzg1OTk1OGYwMTBmM2ZlNjE2ODU5YzA3MzE1MTY5YzVi YjU1NDdjNmRmZGFmNGEyMTlkYWEzYTc4ZjU0Njk1OGY1NmUxNGZkZjY0YzNiMjZlCi0rQ3RybC5o ZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpkY2EzMDJjZDRlZTI5ZDg4YjNmOTA5ZjczZTE5ZDkyMDA5 OWI4YzE4MDYyZTg3NWNiNzYyMjU3YgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6MmY2MzY4ZGQ1ZjFhNmE4ZGI5OGY3NDMzMTg1MGMxMTBhYTBlNThmMDZhMTBjYTgxNzgxNzFk OTUKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA4M2ExOTI0ZmE1ZjdjZWZmZWJhN2Y1 MTlhYzUxYTg2YTI3NDZhOTNlYjE5NGRiNTFhNDU5NmNhMQotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDU3MzUyYzRh MjZhYTAxMWU5YjllMTAxNzM2YWI2YjEzNjljNzNmNTUzODQ4ZDE1OWIwMWJmMmM3NjcxMDc0Y2Rj ZGM3M2I4YzY5NzY0OWRjNzQ2NTE5N2MyZjE3NTYwZDAwNDUyNDY0MTAwNjNmMjBkOGQyOTUxOGU3 YjI1ZDg3MTg4NjM0NmFjY2NkOWVjMWIyZDc0YjE5YjRhZmYxNjk1MzcxNDI2NmQxNDQwMjQ3ODU5 OTU4ZjAxMGYzZmU2MTY4NTljMDczMTUxNjljNWJiNTU0N2M2ZGZkYWY0YTIxOWRhYTNhNzhmNTQ2 OTU4ZjU2ZTE0ZmRmNjRjM2IyNmUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmRjYTMw MmNkNGVlMjlkODhiM2Y5MDlmNzNlMTlkOTIwMDk5YjhjMTgwNjJlODc1Y2I3NjIyNTdiCi0rQ3Ry bC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoyZjYzNjhkZDVmMWE2YThkYjk4Zjc0MzMx ODUwYzExMGFhMGU1OGYwNmExMGNhODE3ODE3MWQ5NQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091 dHB1dCA9IGUxNjUwN2QxYmJkNTNiNDFmOWJiMmYwZjIxYjUxMTJlYjZjZDFlYjA0ODlmYjVlNzU0 MjEyMzkwCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4ZDM3Mjk3MGY2N2E3NWExNzQ4ZTY5NjdjNjdhMWY1NjY1 YTNkNmY3MWQ2ZDI0YWIxMTNiZWRiNDJhZDU0NGRlMzRlNjdkZjdmNjQ0Zjc4ZTVkY2ZkMTJlMjVi N2NiODY1NWFhOWYwN2ZlZjU5MDU4ZTQyNDUwYWVlNWQ0YTczMzg4NzUzNTMxM2UwNmM3ZTY0MjY1 OTgyODRmZGFhMzNmZjg4ZTFiNjE3NGMzMzE5OWYyNjMwZWM0MmM4ZDdkOWI5MmVhM2Q4M2ExYmY4 NTE0YjE1M2ZkOWNmOWM1MjA2MzZhMGRlOWM2YmE4YjkzMTg0NjVkZGNhYTI5MzM2N2U1Ci0rQ3Ry bC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo2ODNhMGIyM2U4YmY5OGUwMzE3OGEwMzJhNjVlNzQz ZTQyOWM4MDViOGRlMDQ0MDdmNzNhYjIxYgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6MGU5ZGU2ZWYxMjRiNjcwZGI0NGFkZTQzODkyMGRiMDFiNWU2ZmI2OWE0ODI4MTZhMzAz ZmNlZjcKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSAwZTc2NGViZTBkNTIzYWFlCi0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMDgxMDA4ZDM3Mjk3MGY2N2E3NWExNzQ4ZTY5NjdjNjdhMWY1NjY1YTNkNmY3MWQ2 ZDI0YWIxMTNiZWRiNDJhZDU0NGRlMzRlNjdkZjdmNjQ0Zjc4ZTVkY2ZkMTJlMjViN2NiODY1NWFh OWYwN2ZlZjU5MDU4ZTQyNDUwYWVlNWQ0YTczMzg4NzUzNTMxM2UwNmM3ZTY0MjY1OTgyODRmZGFh MzNmZjg4ZTFiNjE3NGMzMzE5OWYyNjMwZWM0MmM4ZDdkOWI5MmVhM2Q4M2ExYmY4NTE0YjE1M2Zk OWNmOWM1MjA2MzZhMGRlOWM2YmE4YjkzMTg0NjVkZGNhYTI5MzM2N2U1Ci0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDo2ODNhMGIyM2U4YmY5OGUwMzE3OGEwMzJhNjVlNzQzZTQyOWM4MDVi OGRlMDQ0MDdmNzNhYjIxYgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MGU5 ZGU2ZWYxMjRiNjcwZGI0NGFkZTQzODkyMGRiMDFiNWU2ZmI2OWE0ODI4MTZhMzAzZmNlZjcKLStD dHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSAyNGJkMmVmZjg2YzJhOGRjCi0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MDgxMDA4ZDM3Mjk3MGY2N2E3NWExNzQ4ZTY5NjdjNjdhMWY1NjY1YTNkNmY3MWQ2ZDI0YWIxMTNi ZWRiNDJhZDU0NGRlMzRlNjdkZjdmNjQ0Zjc4ZTVkY2ZkMTJlMjViN2NiODY1NWFhOWYwN2ZlZjU5 MDU4ZTQyNDUwYWVlNWQ0YTczMzg4NzUzNTMxM2UwNmM3ZTY0MjY1OTgyODRmZGFhMzNmZjg4ZTFi NjE3NGMzMzE5OWYyNjMwZWM0MmM4ZDdkOWI5MmVhM2Q4M2ExYmY4NTE0YjE1M2ZkOWNmOWM1MjA2 MzZhMGRlOWM2YmE4YjkzMTg0NjVkZGNhYTI5MzM2N2U1Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDo2ODNhMGIyM2U4YmY5OGUwMzE3OGEwMzJhNjVlNzQzZTQyOWM4MDViOGRlMDQ0MDdm NzNhYjIxYgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MGU5ZGU2ZWYxMjRi NjcwZGI0NGFkZTQzODkyMGRiMDFiNWU2ZmI2OWE0ODI4MTZhMzAzZmNlZjcKLStDdHJsLnR5cGUg PSB0eXBlOkMKLStPdXRwdXQgPSAyNmMwMWUzZDU2YzFiOTI4ZjY1YWFhMWI2YTE1ZjViOGQ0MWRl MTg3YjRiYjVmZGMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDhkMzcyOTcwZjY3YTc1YTE3NDhlNjk2N2M2N2Ex ZjU2NjVhM2Q2ZjcxZDZkMjRhYjExM2JlZGI0MmFkNTQ0ZGUzNGU2N2RmN2Y2NDRmNzhlNWRjZmQx MmUyNWI3Y2I4NjU1YWE5ZjA3ZmVmNTkwNThlNDI0NTBhZWU1ZDRhNzMzODg3NTM1MzEzZTA2Yzdl NjQyNjU5ODI4NGZkYWEzM2ZmODhlMWI2MTc0YzMzMTk5ZjI2MzBlYzQyYzhkN2Q5YjkyZWEzZDgz YTFiZjg1MTRiMTUzZmQ5Y2Y5YzUyMDYzNmEwZGU5YzZiYThiOTMxODQ2NWRkY2FhMjkzMzY3ZTUK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjY4M2EwYjIzZThiZjk4ZTAzMTc4YTAzMmE2 NWU3NDNlNDI5YzgwNWI4ZGUwNDQwN2Y3M2FiMjFiCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDowZTlkZTZlZjEyNGI2NzBkYjQ0YWRlNDM4OTIwZGIwMWI1ZTZmYjY5YTQ4Mjgx NmEzMDNmY2VmNwotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGUwY2MzYmRiNmQ2OWQx MDg5M2VlYjczYjg5MmQ3NDZhY2VhMTUxZjI0MjQ3ZmQ5YwotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwOGQzNzI5 NzBmNjdhNzVhMTc0OGU2OTY3YzY3YTFmNTY2NWEzZDZmNzFkNmQyNGFiMTEzYmVkYjQyYWQ1NDRk ZTM0ZTY3ZGY3ZjY0NGY3OGU1ZGNmZDEyZTI1YjdjYjg2NTVhYTlmMDdmZWY1OTA1OGU0MjQ1MGFl ZTVkNGE3MzM4ODc1MzUzMTNlMDZjN2U2NDI2NTk4Mjg0ZmRhYTMzZmY4OGUxYjYxNzRjMzMxOTlm MjYzMGVjNDJjOGQ3ZDliOTJlYTNkODNhMWJmODUxNGIxNTNmZDljZjljNTIwNjM2YTBkZTljNmJh OGI5MzE4NDY1ZGRjYWEyOTMzNjdlNQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6Njgz YTBiMjNlOGJmOThlMDMxNzhhMDMyYTY1ZTc0M2U0MjljODA1YjhkZTA0NDA3ZjczYWIyMWIKLStD dHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjBlOWRlNmVmMTI0YjY3MGRiNDRhZGU0 Mzg5MjBkYjAxYjVlNmZiNjlhNDgyODE2YTMwM2ZjZWY3Ci0rQ3RybC50eXBlID0gdHlwZTpFCi0r T3V0cHV0ID0gYmY0NDJiYTZlYzc5NGYyMDU4NDUyODY4NmNlZGJhYTU2OGMxM2I4OTVmNjQyZmU1 Y2IzNTQyYmIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDhkMzcyOTcwZjY3YTc1YTE3NDhlNjk2N2M2N2ExZjU2 NjVhM2Q2ZjcxZDZkMjRhYjExM2JlZGI0MmFkNTQ0ZGUzNGU2N2RmN2Y2NDRmNzhlNWRjZmQxMmUy NWI3Y2I4NjU1YWE5ZjA3ZmVmNTkwNThlNDI0NTBhZWU1ZDRhNzMzODg3NTM1MzEzZTA2YzdlNjQy NjU5ODI4NGZkYWEzM2ZmODhlMWI2MTc0YzMzMTk5ZjI2MzBlYzQyYzhkN2Q5YjkyZWEzZDgzYTFi Zjg1MTRiMTUzZmQ5Y2Y5YzUyMDYzNmEwZGU5YzZiYThiOTMxODQ2NWRkY2FhMjkzMzY3ZTUKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjY4M2EwYjIzZThiZjk4ZTAzMTc4YTAzMmE2NWU3 NDNlNDI5YzgwNWI4ZGUwNDQwN2Y3M2FiMjFiCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDowZTlkZTZlZjEyNGI2NzBkYjQ0YWRlNDM4OTIwZGIwMWI1ZTZmYjY5YTQ4MjgxNmEz MDNmY2VmNwotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDY1YWI0NTNlNWZmZDFiNWUx NTQwYWE1NDc3NjZkN2MxNzcyMDRjMzE5NjQyZjkzMDU5YmRmMjU3Ci0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwMDRh NzBjZjVlNTQ2YzA5MjA0MzNiZjE2ZGNkYTMwNzZkOTE5NWI1YzM1YWQ2YjgzYjZhNTFlODgwZjIy ZmRkYWFlMGQzNThlMzUwMzdiYmUxZTY2ZjI0MjJjMjlmZjMwYTM5ODIyZTA2NzkzMGI5ZmFmNTlm ODQ0NDQxZGVlNmYyMzM2MzVhMDBjN2NiNzE1OTZmODU4OTE5NDAxNjEzMmViYmUyMDRkOThmYzdm OWJiMGI3ZjRlNmI2YTY4ZjQ4OGE1OTEzOGQ5ODU5NzI5ZDkzOGRlNmFjZTlkMDhiZTg2MzAxYmJk NGU4MGQ0NjUwMzkxZWYzNTk5YTZmMGJjMAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6 YTA1YTVjMmQ4YmViMzk0YjdiZWZhZWNmZTNmNDIyN2NkODFhMjhkOTBhYzY0ZWM3OGNlMTcwYjYK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjEzODBiMzhmNmI2OTk3YTQ3Y2Uy MzRiN2QzZDZhZmI1OTYwZTcyMWEzNDhhNzI1NzA0YzE5Y2ZmCi0rQ3RybC50eXBlID0gdHlwZTpB Ci0rT3V0cHV0ID0gNDU3OTliYmIwOWZkODgwNAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDA0YTcwY2Y1ZTU0NmMw OTIwNDMzYmYxNmRjZGEzMDc2ZDkxOTViNWMzNWFkNmI4M2I2YTUxZTg4MGYyMmZkZGFhZTBkMzU4 ZTM1MDM3YmJlMWU2NmYyNDIyYzI5ZmYzMGEzOTgyMmUwNjc5MzBiOWZhZjU5Zjg0NDQ0MWRlZTZm MjMzNjM1YTAwYzdjYjcxNTk2Zjg1ODkxOTQwMTYxMzJlYmJlMjA0ZDk4ZmM3ZjliYjBiN2Y0ZTZi NmE2OGY0ODhhNTkxMzhkOTg1OTcyOWQ5MzhkZTZhY2U5ZDA4YmU4NjMwMWJiZDRlODBkNDY1MDM5 MWVmMzU5OWE2ZjBiYzAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmEwNWE1YzJkOGJl YjM5NGI3YmVmYWVjZmUzZjQyMjdjZDgxYTI4ZDkwYWM2NGVjNzhjZTE3MGI2Ci0rQ3RybC5oZXhz ZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxMzgwYjM4ZjZiNjk5N2E0N2NlMjM0YjdkM2Q2YWZi NTk2MGU3MjFhMzQ4YTcyNTcwNGMxOWNmZgotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9 IGI3ODdiMDA5ZjMzMTNiZTAKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0 Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAwNGE3MGNmNWU1NDZjMDkyMDQzM2JmMTZk Y2RhMzA3NmQ5MTk1YjVjMzVhZDZiODNiNmE1MWU4ODBmMjJmZGRhYWUwZDM1OGUzNTAzN2JiZTFl NjZmMjQyMmMyOWZmMzBhMzk4MjJlMDY3OTMwYjlmYWY1OWY4NDQ0NDFkZWU2ZjIzMzYzNWEwMGM3 Y2I3MTU5NmY4NTg5MTk0MDE2MTMyZWJiZTIwNGQ5OGZjN2Y5YmIwYjdmNGU2YjZhNjhmNDg4YTU5 MTM4ZDk4NTk3MjlkOTM4ZGU2YWNlOWQwOGJlODYzMDFiYmQ0ZTgwZDQ2NTAzOTFlZjM1OTlhNmYw YmMwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDphMDVhNWMyZDhiZWIzOTRiN2JlZmFl Y2ZlM2Y0MjI3Y2Q4MWEyOGQ5MGFjNjRlYzc4Y2UxNzBiNgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6MTM4MGIzOGY2YjY5OTdhNDdjZTIzNGI3ZDNkNmFmYjU5NjBlNzIxYTM0 OGE3MjU3MDRjMTljZmYKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSBjNGNiYjU0N2M5 OTdlOGZkZGI5ZTU2ZWY1ZGY5MTMyNzc2NjY2OGE0M2E5NThhOGUKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAwNGE3 MGNmNWU1NDZjMDkyMDQzM2JmMTZkY2RhMzA3NmQ5MTk1YjVjMzVhZDZiODNiNmE1MWU4ODBmMjJm ZGRhYWUwZDM1OGUzNTAzN2JiZTFlNjZmMjQyMmMyOWZmMzBhMzk4MjJlMDY3OTMwYjlmYWY1OWY4 NDQ0NDFkZWU2ZjIzMzYzNWEwMGM3Y2I3MTU5NmY4NTg5MTk0MDE2MTMyZWJiZTIwNGQ5OGZjN2Y5 YmIwYjdmNGU2YjZhNjhmNDg4YTU5MTM4ZDk4NTk3MjlkOTM4ZGU2YWNlOWQwOGJlODYzMDFiYmQ0 ZTgwZDQ2NTAzOTFlZjM1OTlhNmYwYmMwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDph MDVhNWMyZDhiZWIzOTRiN2JlZmFlY2ZlM2Y0MjI3Y2Q4MWEyOGQ5MGFjNjRlYzc4Y2UxNzBiNgot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MTM4MGIzOGY2YjY5OTdhNDdjZTIz NGI3ZDNkNmFmYjU5NjBlNzIxYTM0OGE3MjU3MDRjMTljZmYKLStDdHJsLnR5cGUgPSB0eXBlOkQK LStPdXRwdXQgPSBiNTViN2NjYTBhMDM2M2I4NGI0MGI3OTM2NmI4N2RiN2M0NDBkZWM1YmY4OWU5 NTIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODAwNGE3MGNmNWU1NDZjMDkyMDQzM2JmMTZkY2RhMzA3NmQ5MTk1YjVj MzVhZDZiODNiNmE1MWU4ODBmMjJmZGRhYWUwZDM1OGUzNTAzN2JiZTFlNjZmMjQyMmMyOWZmMzBh Mzk4MjJlMDY3OTMwYjlmYWY1OWY4NDQ0NDFkZWU2ZjIzMzYzNWEwMGM3Y2I3MTU5NmY4NTg5MTk0 MDE2MTMyZWJiZTIwNGQ5OGZjN2Y5YmIwYjdmNGU2YjZhNjhmNDg4YTU5MTM4ZDk4NTk3MjlkOTM4 ZGU2YWNlOWQwOGJlODYzMDFiYmQ0ZTgwZDQ2NTAzOTFlZjM1OTlhNmYwYmMwCi0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDphMDVhNWMyZDhiZWIzOTRiN2JlZmFlY2ZlM2Y0MjI3Y2Q4MWEy OGQ5MGFjNjRlYzc4Y2UxNzBiNgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 MTM4MGIzOGY2YjY5OTdhNDdjZTIzNGI3ZDNkNmFmYjU5NjBlNzIxYTM0OGE3MjU3MDRjMTljZmYK LStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA5YzYzOTllNWY0ZGIwZmM3NjUyMjY4ZDc0 MjMyMzBlZTVmZmMwYTIxMGMyNjU2OGRjNWMwYWI3ZAotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDA0YTcwY2Y1ZTU0 NmMwOTIwNDMzYmYxNmRjZGEzMDc2ZDkxOTViNWMzNWFkNmI4M2I2YTUxZTg4MGYyMmZkZGFhZTBk MzU4ZTM1MDM3YmJlMWU2NmYyNDIyYzI5ZmYzMGEzOTgyMmUwNjc5MzBiOWZhZjU5Zjg0NDQ0MWRl ZTZmMjMzNjM1YTAwYzdjYjcxNTk2Zjg1ODkxOTQwMTYxMzJlYmJlMjA0ZDk4ZmM3ZjliYjBiN2Y0 ZTZiNmE2OGY0ODhhNTkxMzhkOTg1OTcyOWQ5MzhkZTZhY2U5ZDA4YmU4NjMwMWJiZDRlODBkNDY1 MDM5MWVmMzU5OWE2ZjBiYzAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmEwNWE1YzJk OGJlYjM5NGI3YmVmYWVjZmUzZjQyMjdjZDgxYTI4ZDkwYWM2NGVjNzhjZTE3MGI2Ci0rQ3RybC5o ZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxMzgwYjM4ZjZiNjk5N2E0N2NlMjM0YjdkM2Q2 YWZiNTk2MGU3MjFhMzQ4YTcyNTcwNGMxOWNmZgotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1 dCA9IDk4MjQzMDFjMzNkYWFlMGYxYjc1ZWI0NzJkNmYwYjRlZjJjZWEwYjJmNjFlMjA0YjZhZWZi MGJkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMDgxMDBkMDdjOGEwYzE2YzVmMDAwZmYwMGRiNjE2MTU1NWVhNmI2YjQw MDgwM2ZlMjUwMjg4YTliODhiNDhjZWQzODFkZTNmNDY5ODIyMTAyMTZkZmY0ZGVmZGJiMDA3ZTk4 ZWE0N2Y4OTFhZTNmMzhlMDlmNTZjOTY5MTM0MDZjMTNlZDM1Y2FkZTNmMmY4MGM2YzY0MDJlN2Fi MDk3ZGVjYzllN2VjYzM3N2I5OTY1OTkxNDIyYjU0YjhmY2YzNGI5NjM1Y2RjNmIxY2I2OThjNjFj ZDgzNzdmM2ZhZGYxYmE5ZTI4OWQ4Mzc2N2NhMjQzNzA2NjEwODU0NjFhMGIzNDhlCi0rQ3RybC5o ZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0NWRmZWUxNGVjODE2MGNiMWNjZDc2OWQyZGI0Nzg1Yjk3 NzNhZWVkZGUwYzZjYTBmNzUzMjRkZgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6MGYxNTMxNTg1MzI4OGE5ODdjZWMxZTA2NjhmMzRmYTU0NTM3MzA0ZjcwODI2NzNkNzRkNGY5 NzAKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSAyOTU4OTI4ZTVmZDNjNmU0Ci0rCi0r S0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5 OjAwMDAwMDgxMDBkMDdjOGEwYzE2YzVmMDAwZmYwMGRiNjE2MTU1NWVhNmI2YjQwMDgwM2ZlMjUw Mjg4YTliODhiNDhjZWQzODFkZTNmNDY5ODIyMTAyMTZkZmY0ZGVmZGJiMDA3ZTk4ZWE0N2Y4OTFh ZTNmMzhlMDlmNTZjOTY5MTM0MDZjMTNlZDM1Y2FkZTNmMmY4MGM2YzY0MDJlN2FiMDk3ZGVjYzll N2VjYzM3N2I5OTY1OTkxNDIyYjU0YjhmY2YzNGI5NjM1Y2RjNmIxY2I2OThjNjFjZDgzNzdmM2Zh ZGYxYmE5ZTI4OWQ4Mzc2N2NhMjQzNzA2NjEwODU0NjFhMGIzNDhlCi0rQ3RybC5oZXh4Y2doYXNo ID0gaGV4eGNnaGFzaDo0NWRmZWUxNGVjODE2MGNiMWNjZDc2OWQyZGI0Nzg1Yjk3NzNhZWVkZGUw YzZjYTBmNzUzMjRkZgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MGYxNTMx NTg1MzI4OGE5ODdjZWMxZTA2NjhmMzRmYTU0NTM3MzA0ZjcwODI2NzNkNzRkNGY5NzAKLStDdHJs LnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSBhYTkxYmVlMWEzYjMzNzRjCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgx MDBkMDdjOGEwYzE2YzVmMDAwZmYwMGRiNjE2MTU1NWVhNmI2YjQwMDgwM2ZlMjUwMjg4YTliODhi NDhjZWQzODFkZTNmNDY5ODIyMTAyMTZkZmY0ZGVmZGJiMDA3ZTk4ZWE0N2Y4OTFhZTNmMzhlMDlm NTZjOTY5MTM0MDZjMTNlZDM1Y2FkZTNmMmY4MGM2YzY0MDJlN2FiMDk3ZGVjYzllN2VjYzM3N2I5 OTY1OTkxNDIyYjU0YjhmY2YzNGI5NjM1Y2RjNmIxY2I2OThjNjFjZDgzNzdmM2ZhZGYxYmE5ZTI4 OWQ4Mzc2N2NhMjQzNzA2NjEwODU0NjFhMGIzNDhlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNn aGFzaDo0NWRmZWUxNGVjODE2MGNiMWNjZDc2OWQyZGI0Nzg1Yjk3NzNhZWVkZGUwYzZjYTBmNzUz MjRkZgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MGYxNTMxNTg1MzI4OGE5 ODdjZWMxZTA2NjhmMzRmYTU0NTM3MzA0ZjcwODI2NzNkNzRkNGY5NzAKLStDdHJsLnR5cGUgPSB0 eXBlOkMKLStPdXRwdXQgPSA2ZmRhYzU1OWViMWQ2YWY3ZmM3ZmJhYTRmOWExNWZkNDE0NWI5N2I5 NDE4NTE4ZDkKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGQwN2M4YTBjMTZjNWYwMDBmZjAwZGI2MTYxNTU1ZWE2 YjZiNDAwODAzZmUyNTAyODhhOWI4OGI0OGNlZDM4MWRlM2Y0Njk4MjIxMDIxNmRmZjRkZWZkYmIw MDdlOThlYTQ3Zjg5MWFlM2YzOGUwOWY1NmM5NjkxMzQwNmMxM2VkMzVjYWRlM2YyZjgwYzZjNjQw MmU3YWIwOTdkZWNjOWU3ZWNjMzc3Yjk5NjU5OTE0MjJiNTRiOGZjZjM0Yjk2MzVjZGM2YjFjYjY5 OGM2MWNkODM3N2YzZmFkZjFiYTllMjg5ZDgzNzY3Y2EyNDM3MDY2MTA4NTQ2MWEwYjM0OGUKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjQ1ZGZlZTE0ZWM4MTYwY2IxY2NkNzY5ZDJkYjQ3 ODViOTc3M2FlZWRkZTBjNmNhMGY3NTMyNGRmCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDowZjE1MzE1ODUzMjg4YTk4N2NlYzFlMDY2OGYzNGZhNTQ1MzczMDRmNzA4MjY3M2Q3 NGQ0Zjk3MAotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDVhODI3MTQwMjc1NmY3ZWFj NTlmMDliNTAyMGY3YjA1ZjY0NzVmYzNhMmUyYjQ4MgotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwZDA3YzhhMGMx NmM1ZjAwMGZmMDBkYjYxNjE1NTVlYTZiNmI0MDA4MDNmZTI1MDI4OGE5Yjg4YjQ4Y2VkMzgxZGUz ZjQ2OTgyMjEwMjE2ZGZmNGRlZmRiYjAwN2U5OGVhNDdmODkxYWUzZjM4ZTA5ZjU2Yzk2OTEzNDA2 YzEzZWQzNWNhZGUzZjJmODBjNmM2NDAyZTdhYjA5N2RlY2M5ZTdlY2MzNzdiOTk2NTk5MTQyMmI1 NGI4ZmNmMzRiOTYzNWNkYzZiMWNiNjk4YzYxY2Q4Mzc3ZjNmYWRmMWJhOWUyODlkODM3NjdjYTI0 MzcwNjYxMDg1NDYxYTBiMzQ4ZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NDVkZmVl MTRlYzgxNjBjYjFjY2Q3NjlkMmRiNDc4NWI5NzczYWVlZGRlMGM2Y2EwZjc1MzI0ZGYKLStDdHJs LmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjBmMTUzMTU4NTMyODhhOTg3Y2VjMWUwNjY4 ZjM0ZmE1NDUzNzMwNGY3MDgyNjczZDc0ZDRmOTcwCi0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0 cHV0ID0gOTEwZGU0YTRhNDM3Y2FiMDU2ZjdjMzgwMzdmMDE5NmM1MjQ0NjQyMzdjNWUzMzJlNzk1 NjRhOTAKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAwODEwMGQwN2M4YTBjMTZjNWYwMDBmZjAwZGI2MTYxNTU1ZWE2YjZi NDAwODAzZmUyNTAyODhhOWI4OGI0OGNlZDM4MWRlM2Y0Njk4MjIxMDIxNmRmZjRkZWZkYmIwMDdl OThlYTQ3Zjg5MWFlM2YzOGUwOWY1NmM5NjkxMzQwNmMxM2VkMzVjYWRlM2YyZjgwYzZjNjQwMmU3 YWIwOTdkZWNjOWU3ZWNjMzc3Yjk5NjU5OTE0MjJiNTRiOGZjZjM0Yjk2MzVjZGM2YjFjYjY5OGM2 MWNkODM3N2YzZmFkZjFiYTllMjg5ZDgzNzY3Y2EyNDM3MDY2MTA4NTQ2MWEwYjM0OGUKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjQ1ZGZlZTE0ZWM4MTYwY2IxY2NkNzY5ZDJkYjQ3ODVi OTc3M2FlZWRkZTBjNmNhMGY3NTMyNGRmCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDowZjE1MzE1ODUzMjg4YTk4N2NlYzFlMDY2OGYzNGZhNTQ1MzczMDRmNzA4MjY3M2Q3NGQ0 Zjk3MAotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDBiZmE2ZWQ1ZGM4YWIwZmMxYmI5 ZmViOTY2ZDcxMDcxMzdlYmYzZjc1NGFjNzFjMmExNmE5YzIyCi0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwN2YwNDZl MGUxYTAwNTBmZTU0NGNkMGJmMTk0ZmRiMGEwN2VmZTc3MDg0OThhMWIyNWFhZDkwNjQxZThiZWZk ZWY4ZjRhYWNiNTM4Y2NjNDQ2ZDAyZDM4OTZlMWNjMzRkOWE4YmVjZGNjNDhkMTBlNzM0NjBmN2Mw YzU4ZWI1MTcwN2QzN2YxZWFhMDAwOGNiMjFjODllOGIyMjZhM2U2MGM3NmY5ZjlmNWFmMmExNmFi Y2EzNDZhODFjNjZlYzAxOTkxNjdiMTdlMGQ4Y2IzYmFlYTlhOWM3MDA2MzJmNTg1ZTBjZDQ2N2U3 NzllYmEwMmJjMjRlZmYyMmI2NDI1YwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YjYz Yzk5MjE5OWUzNzBjZGUxOWI2NDAwNzdiYmJhYzkyYzZhOGEwZjIwNmI0ZDU2MDkzNWNlZTUKLStD dHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmVlMDBmODZjN2VjYzRjZTc0YTNlY2Ux Njk5ODAyYjc0MjBjYTRkNDljYzc0YjIzMzk5YzIzNTQ1Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0r T3V0cHV0ID0gODIyMDRkNzllMTMyNTJmMQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDdmMDQ2ZTBlMWEwMDUwZmU1 NDRjZDBiZjE5NGZkYjBhMDdlZmU3NzA4NDk4YTFiMjVhYWQ5MDY0MWU4YmVmZGVmOGY0YWFjYjUz OGNjYzQ0NmQwMmQzODk2ZTFjYzM0ZDlhOGJlY2RjYzQ4ZDEwZTczNDYwZjdjMGM1OGViNTE3MDdk MzdmMWVhYTAwMDhjYjIxYzg5ZThiMjI2YTNlNjBjNzZmOWY5ZjVhZjJhMTZhYmNhMzQ2YTgxYzY2 ZWMwMTk5MTY3YjE3ZTBkOGNiM2JhZWE5YTljNzAwNjMyZjU4NWUwY2Q0NjdlNzc5ZWJhMDJiYzI0 ZWZmMjJiNjQyNWMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmI2M2M5OTIxOTllMzcw Y2RlMTliNjQwMDc3YmJiYWM5MmM2YThhMGYyMDZiNGQ1NjA5MzVjZWU1Ci0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDplZTAwZjg2YzdlY2M0Y2U3NGEzZWNlMTY5OTgwMmI3NDIw Y2E0ZDQ5Y2M3NGIyMzM5OWMyMzU0NQotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IGE3 NmZmOTIzNDg4YzdiZDMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA3ZjA0NmUwZTFhMDA1MGZlNTQ0Y2QwYmYxOTRm ZGIwYTA3ZWZlNzcwODQ5OGExYjI1YWFkOTA2NDFlOGJlZmRlZjhmNGFhY2I1MzhjY2M0NDZkMDJk Mzg5NmUxY2MzNGQ5YThiZWNkY2M0OGQxMGU3MzQ2MGY3YzBjNThlYjUxNzA3ZDM3ZjFlYWEwMDA4 Y2IyMWM4OWU4YjIyNmEzZTYwYzc2ZjlmOWY1YWYyYTE2YWJjYTM0NmE4MWM2NmVjMDE5OTE2N2Ix N2UwZDhjYjNiYWVhOWE5YzcwMDYzMmY1ODVlMGNkNDY3ZTc3OWViYTAyYmMyNGVmZjIyYjY0MjVj Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpiNjNjOTkyMTk5ZTM3MGNkZTE5YjY0MDA3 N2JiYmFjOTJjNmE4YTBmMjA2YjRkNTYwOTM1Y2VlNQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhl eHNlc3Npb25faWQ6ZWUwMGY4NmM3ZWNjNGNlNzRhM2VjZTE2OTk4MDJiNzQyMGNhNGQ0OWNjNzRi MjMzOTljMjM1NDUKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSA4YmEzYmQyMjQ4OTBi ZGQ0ZGQwN2QyYTVhOThlNWVmY2Q5NWQ4MmM2NjU4M2QwOTgKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA3ZjA0NmUw ZTFhMDA1MGZlNTQ0Y2QwYmYxOTRmZGIwYTA3ZWZlNzcwODQ5OGExYjI1YWFkOTA2NDFlOGJlZmRl ZjhmNGFhY2I1MzhjY2M0NDZkMDJkMzg5NmUxY2MzNGQ5YThiZWNkY2M0OGQxMGU3MzQ2MGY3YzBj NThlYjUxNzA3ZDM3ZjFlYWEwMDA4Y2IyMWM4OWU4YjIyNmEzZTYwYzc2ZjlmOWY1YWYyYTE2YWJj YTM0NmE4MWM2NmVjMDE5OTE2N2IxN2UwZDhjYjNiYWVhOWE5YzcwMDYzMmY1ODVlMGNkNDY3ZTc3 OWViYTAyYmMyNGVmZjIyYjY0MjVjCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpiNjNj OTkyMTk5ZTM3MGNkZTE5YjY0MDA3N2JiYmFjOTJjNmE4YTBmMjA2YjRkNTYwOTM1Y2VlNQotK0N0 cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZWUwMGY4NmM3ZWNjNGNlNzRhM2VjZTE2 OTk4MDJiNzQyMGNhNGQ0OWNjNzRiMjMzOTljMjM1NDUKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStP dXRwdXQgPSBhMDRhMzg0NDkzM2NhMWJiNDU4NDhiYzFhNzYyNmU0YzUwZGM0NmFhNTM3NmQwMjcK LSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBo ZXhrZXk6MDAwMDAwODA3ZjA0NmUwZTFhMDA1MGZlNTQ0Y2QwYmYxOTRmZGIwYTA3ZWZlNzcwODQ5 OGExYjI1YWFkOTA2NDFlOGJlZmRlZjhmNGFhY2I1MzhjY2M0NDZkMDJkMzg5NmUxY2MzNGQ5YThi ZWNkY2M0OGQxMGU3MzQ2MGY3YzBjNThlYjUxNzA3ZDM3ZjFlYWEwMDA4Y2IyMWM4OWU4YjIyNmEz ZTYwYzc2ZjlmOWY1YWYyYTE2YWJjYTM0NmE4MWM2NmVjMDE5OTE2N2IxN2UwZDhjYjNiYWVhOWE5 YzcwMDYzMmY1ODVlMGNkNDY3ZTc3OWViYTAyYmMyNGVmZjIyYjY0MjVjCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDpiNjNjOTkyMTk5ZTM3MGNkZTE5YjY0MDA3N2JiYmFjOTJjNmE4YTBm MjA2YjRkNTYwOTM1Y2VlNQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZWUw MGY4NmM3ZWNjNGNlNzRhM2VjZTE2OTk4MDJiNzQyMGNhNGQ0OWNjNzRiMjMzOTljMjM1NDUKLStD dHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSAzOTNmMmYxNTJkNmM2ZDA2M2YyODRjYWRkMWZk OWQ3MDA5MjgxODhiN2ZlYTMxZjc0YjQ0ZmJjNgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDdmMDQ2ZTBlMWEwMDUw ZmU1NDRjZDBiZjE5NGZkYjBhMDdlZmU3NzA4NDk4YTFiMjVhYWQ5MDY0MWU4YmVmZGVmOGY0YWFj YjUzOGNjYzQ0NmQwMmQzODk2ZTFjYzM0ZDlhOGJlY2RjYzQ4ZDEwZTczNDYwZjdjMGM1OGViNTE3 MDdkMzdmMWVhYTAwMDhjYjIxYzg5ZThiMjI2YTNlNjBjNzZmOWY5ZjVhZjJhMTZhYmNhMzQ2YTgx YzY2ZWMwMTk5MTY3YjE3ZTBkOGNiM2JhZWE5YTljNzAwNjMyZjU4NWUwY2Q0NjdlNzc5ZWJhMDJi YzI0ZWZmMjJiNjQyNWMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmI2M2M5OTIxOTll MzcwY2RlMTliNjQwMDc3YmJiYWM5MmM2YThhMGYyMDZiNGQ1NjA5MzVjZWU1Ci0rQ3RybC5oZXhz ZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDplZTAwZjg2YzdlY2M0Y2U3NGEzZWNlMTY5OTgwMmI3 NDIwY2E0ZDQ5Y2M3NGIyMzM5OWMyMzU0NQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9 IGYyN2YyY2Q3MmIyMmUxNzE5ZjkxYjkxMmQ2YzlkMTgwOTg1MTIxZDMyYmQyMTdlMzQ4Y2QyMDAz Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMDgxMDBiNTFkMGUzZDIxNjEyYjNiZGU1NDhiZjNkYTZkNDc0MTY2OTcyZjYw MmJlYjFiODc2YjcwNDVhNTk1NDgzZWMwYmZiNzA3ZWFmN2MwZDQxNmQwMjhhM2VkN2NmZjQ2MGNh ZDY2ZTIyODRlMzE5MGE3NDZkMzMwNDY3OGM5MWIyNjU0YjNhYjE0N2FlY2U1N2UzYmI1ZjRkMzBk NGQ3YzAxZTA2NWY3MGIxMmI5MjcwZWJlYzMwNmExNzg4NzBkMWZkODE0ODA2YzNkYmRjMTZkNGJk N2U4NDNkZThlNTQxNGZmMzM2ZTczNWJjNWM4MjQxYWIwYWUwODE5NzE1OWQ2Ci0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDoxZWFjYzJjOGU4ZWMyYzNhNWFmMzFjNmQ0OTgzMDFlODI2NjRm NjA4OTkyMjNlZjQzNDhmNDQ2NwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 ZGRjODc5YzBmMjIxMTQ3YmQ3MGExY2VkZjU1NzhmZDhmMTk2MjkwMzU3OTQ1ZmU3NWU1NTEyNjIK LStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSBmODQzZTNjNmExNjIxOTk4Ci0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMDgxMDBiNTFkMGUzZDIxNjEyYjNiZGU1NDhiZjNkYTZkNDc0MTY2OTcyZjYwMmJlYjFiODc2 YjcwNDVhNTk1NDgzZWMwYmZiNzA3ZWFmN2MwZDQxNmQwMjhhM2VkN2NmZjQ2MGNhZDY2ZTIyODRl MzE5MGE3NDZkMzMwNDY3OGM5MWIyNjU0YjNhYjE0N2FlY2U1N2UzYmI1ZjRkMzBkNGQ3YzAxZTA2 NWY3MGIxMmI5MjcwZWJlYzMwNmExNzg4NzBkMWZkODE0ODA2YzNkYmRjMTZkNGJkN2U4NDNkZThl NTQxNGZmMzM2ZTczNWJjNWM4MjQxYWIwYWUwODE5NzE1OWQ2Ci0rQ3RybC5oZXh4Y2doYXNoID0g aGV4eGNnaGFzaDoxZWFjYzJjOGU4ZWMyYzNhNWFmMzFjNmQ0OTgzMDFlODI2NjRmNjA4OTkyMjNl ZjQzNDhmNDQ2NwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGRjODc5YzBm MjIxMTQ3YmQ3MGExY2VkZjU1NzhmZDhmMTk2MjkwMzU3OTQ1ZmU3NWU1NTEyNjIKLStDdHJsLnR5 cGUgPSB0eXBlOkIKLStPdXRwdXQgPSAxMjhiMmQ4OTY4Y2ZhYWQ1Ci0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBi NTFkMGUzZDIxNjEyYjNiZGU1NDhiZjNkYTZkNDc0MTY2OTcyZjYwMmJlYjFiODc2YjcwNDVhNTk1 NDgzZWMwYmZiNzA3ZWFmN2MwZDQxNmQwMjhhM2VkN2NmZjQ2MGNhZDY2ZTIyODRlMzE5MGE3NDZk MzMwNDY3OGM5MWIyNjU0YjNhYjE0N2FlY2U1N2UzYmI1ZjRkMzBkNGQ3YzAxZTA2NWY3MGIxMmI5 MjcwZWJlYzMwNmExNzg4NzBkMWZkODE0ODA2YzNkYmRjMTZkNGJkN2U4NDNkZThlNTQxNGZmMzM2 ZTczNWJjNWM4MjQxYWIwYWUwODE5NzE1OWQ2Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDoxZWFjYzJjOGU4ZWMyYzNhNWFmMzFjNmQ0OTgzMDFlODI2NjRmNjA4OTkyMjNlZjQzNDhmNDQ2 NwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGRjODc5YzBmMjIxMTQ3YmQ3 MGExY2VkZjU1NzhmZDhmMTk2MjkwMzU3OTQ1ZmU3NWU1NTEyNjIKLStDdHJsLnR5cGUgPSB0eXBl OkMKLStPdXRwdXQgPSBkNmM0ZDI2ODU3NTM1ODBkZWEyYzZhNmViNmFkZDU5MjAxMTM1NmViOWU4 NjhkNDQKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAwODEwMGI1MWQwZTNkMjE2MTJiM2JkZTU0OGJmM2RhNmQ0NzQxNjY5 NzJmNjAyYmViMWI4NzZiNzA0NWE1OTU0ODNlYzBiZmI3MDdlYWY3YzBkNDE2ZDAyOGEzZWQ3Y2Zm NDYwY2FkNjZlMjI4NGUzMTkwYTc0NmQzMzA0Njc4YzkxYjI2NTRiM2FiMTQ3YWVjZTU3ZTNiYjVm NGQzMGQ0ZDdjMDFlMDY1ZjcwYjEyYjkyNzBlYmVjMzA2YTE3ODg3MGQxZmQ4MTQ4MDZjM2RiZGMx NmQ0YmQ3ZTg0M2RlOGU1NDE0ZmYzMzZlNzM1YmM1YzgyNDFhYjBhZTA4MTk3MTU5ZDYKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjFlYWNjMmM4ZThlYzJjM2E1YWYzMWM2ZDQ5ODMwMWU4 MjY2NGY2MDg5OTIyM2VmNDM0OGY0NDY3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDpkZGM4NzljMGYyMjExNDdiZDcwYTFjZWRmNTU3OGZkOGYxOTYyOTAzNTc5NDVmZTc1ZTU1 MTI2MgotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDkyYWY2MGY0ODU4ZjNkMTRlZmFh YzAzOTEzMDM4OWFiOWFlMTIzN2YwZGEwOWEyOQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwYjUxZDBlM2QyMTYx MmIzYmRlNTQ4YmYzZGE2ZDQ3NDE2Njk3MmY2MDJiZWIxYjg3NmI3MDQ1YTU5NTQ4M2VjMGJmYjcw N2VhZjdjMGQ0MTZkMDI4YTNlZDdjZmY0NjBjYWQ2NmUyMjg0ZTMxOTBhNzQ2ZDMzMDQ2NzhjOTFi MjY1NGIzYWIxNDdhZWNlNTdlM2JiNWY0ZDMwZDRkN2MwMWUwNjVmNzBiMTJiOTI3MGViZWMzMDZh MTc4ODcwZDFmZDgxNDgwNmMzZGJkYzE2ZDRiZDdlODQzZGU4ZTU0MTRmZjMzNmU3MzViYzVjODI0 MWFiMGFlMDgxOTcxNTlkNgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MWVhY2MyYzhl OGVjMmMzYTVhZjMxYzZkNDk4MzAxZTgyNjY0ZjYwODk5MjIzZWY0MzQ4ZjQ0NjcKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmRkYzg3OWMwZjIyMTE0N2JkNzBhMWNlZGY1NTc4 ZmQ4ZjE5NjI5MDM1Nzk0NWZlNzVlNTUxMjYyCi0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0 ID0gYTM3YWY5M2M4ZjI1ZTE0NWRlZjFjNTM5N2JlYzJlZTIxMTljYzBlMGJkNDg1NGZlMjNiMmUz ZDEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODEwMGI1MWQwZTNkMjE2MTJiM2JkZTU0OGJmM2RhNmQ0NzQxNjY5NzJm NjAyYmViMWI4NzZiNzA0NWE1OTU0ODNlYzBiZmI3MDdlYWY3YzBkNDE2ZDAyOGEzZWQ3Y2ZmNDYw Y2FkNjZlMjI4NGUzMTkwYTc0NmQzMzA0Njc4YzkxYjI2NTRiM2FiMTQ3YWVjZTU3ZTNiYjVmNGQz MGQ0ZDdjMDFlMDY1ZjcwYjEyYjkyNzBlYmVjMzA2YTE3ODg3MGQxZmQ4MTQ4MDZjM2RiZGMxNmQ0 YmQ3ZTg0M2RlOGU1NDE0ZmYzMzZlNzM1YmM1YzgyNDFhYjBhZTA4MTk3MTU5ZDYKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjFlYWNjMmM4ZThlYzJjM2E1YWYzMWM2ZDQ5ODMwMWU4MjY2 NGY2MDg5OTIyM2VmNDM0OGY0NDY3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDpkZGM4NzljMGYyMjExNDdiZDcwYTFjZWRmNTU3OGZkOGYxOTYyOTAzNTc5NDVmZTc1ZTU1MTI2 MgotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGQ0NGRlZjVmY2VjMzAwZGE1OTEzY2Ex MDljMGZkN2EyYzJjYmNlZGQyYzNlMzIxNmM1Y2IwZDk1Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3Ry bC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4OGEyYWRk MGNjNTkxOGM2NDljNmJiYzgyOTMwYWU5OTMyNjE4OGZhYTIwZTJjZmM4ZjgxOWNjNDRiZGQ5OWQx NjM4ZmJiZDM4MDE5N2JlZGE1OGMwMzljMjM5ZmRjY2VkNTMzZGI3ZWEzMTYzNWI4MzVmNWY5Mjcy NTQ5MGU3NjM4ZDQwYTAxN2I4OWY0ODQwNmZhYWI2NTNhYTAzNzIxYWY1ZDdjNWM2MWQ0NTE5ZTdj MDdmOTk5NzRjMWY3MTViMWNlM2ZjZmZjNTBiMmE2Y2M5YjRlNDVhNzY3OTFiODYyYWM4NzUyNGQy YjUyZmU2YzcwNmY1YTczZTVkYzBhCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozMjFl ZjZiOTJjYWU5ZGYzNTFjMWI3ZDIyNTMzMjU1MzZlNjU5ZGY1MmFjZDRhODc4N2I0NTIxNwotK0N0 cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MzQwZWRiYzhhZWVjNTM1MDExNThhZDJl YTc2NTBhYmNiYjkwNjM0OGQ1N2IxNGI2MTUyNDQ2OWUKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStP dXRwdXQgPSA0Mjc2ZmFiNjUwOTBiNDIwCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4OGEyYWRkMGNjNTkxOGM2 NDljNmJiYzgyOTMwYWU5OTMyNjE4OGZhYTIwZTJjZmM4ZjgxOWNjNDRiZGQ5OWQxNjM4ZmJiZDM4 MDE5N2JlZGE1OGMwMzljMjM5ZmRjY2VkNTMzZGI3ZWEzMTYzNWI4MzVmNWY5MjcyNTQ5MGU3NjM4 ZDQwYTAxN2I4OWY0ODQwNmZhYWI2NTNhYTAzNzIxYWY1ZDdjNWM2MWQ0NTE5ZTdjMDdmOTk5NzRj MWY3MTViMWNlM2ZjZmZjNTBiMmE2Y2M5YjRlNDVhNzY3OTFiODYyYWM4NzUyNGQyYjUyZmU2Yzcw NmY1YTczZTVkYzBhCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozMjFlZjZiOTJjYWU5 ZGYzNTFjMWI3ZDIyNTMzMjU1MzZlNjU5ZGY1MmFjZDRhODc4N2I0NTIxNwotK0N0cmwuaGV4c2Vz c2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MzQwZWRiYzhhZWVjNTM1MDExNThhZDJlYTc2NTBhYmNi YjkwNjM0OGQ1N2IxNGI2MTUyNDQ2OWUKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSAw MDMwM2NhNGY5YTVhNmY4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4OGEyYWRkMGNjNTkxOGM2NDljNmJiYzgy OTMwYWU5OTMyNjE4OGZhYTIwZTJjZmM4ZjgxOWNjNDRiZGQ5OWQxNjM4ZmJiZDM4MDE5N2JlZGE1 OGMwMzljMjM5ZmRjY2VkNTMzZGI3ZWEzMTYzNWI4MzVmNWY5MjcyNTQ5MGU3NjM4ZDQwYTAxN2I4 OWY0ODQwNmZhYWI2NTNhYTAzNzIxYWY1ZDdjNWM2MWQ0NTE5ZTdjMDdmOTk5NzRjMWY3MTViMWNl M2ZjZmZjNTBiMmE2Y2M5YjRlNDVhNzY3OTFiODYyYWM4NzUyNGQyYjUyZmU2YzcwNmY1YTczZTVk YzBhCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozMjFlZjZiOTJjYWU5ZGYzNTFjMWI3 ZDIyNTMzMjU1MzZlNjU5ZGY1MmFjZDRhODc4N2I0NTIxNwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6MzQwZWRiYzhhZWVjNTM1MDExNThhZDJlYTc2NTBhYmNiYjkwNjM0OGQ1 N2IxNGI2MTUyNDQ2OWUKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAzZDY3ODkyMjgx ZTljNmVkNjUzNWQ3YWU2OWU4MzJmNjcyM2FmZDU0NTc2M2JkM2QKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDg4 YTJhZGQwY2M1OTE4YzY0OWM2YmJjODI5MzBhZTk5MzI2MTg4ZmFhMjBlMmNmYzhmODE5Y2M0NGJk ZDk5ZDE2MzhmYmJkMzgwMTk3YmVkYTU4YzAzOWMyMzlmZGNjZWQ1MzNkYjdlYTMxNjM1YjgzNWY1 ZjkyNzI1NDkwZTc2MzhkNDBhMDE3Yjg5ZjQ4NDA2ZmFhYjY1M2FhMDM3MjFhZjVkN2M1YzYxZDQ1 MTllN2MwN2Y5OTk3NGMxZjcxNWIxY2UzZmNmZmM1MGIyYTZjYzliNGU0NWE3Njc5MWI4NjJhYzg3 NTI0ZDJiNTJmZTZjNzA2ZjVhNzNlNWRjMGEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OjMyMWVmNmI5MmNhZTlkZjM1MWMxYjdkMjI1MzMyNTUzNmU2NTlkZjUyYWNkNGE4Nzg3YjQ1MjE3 Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDozNDBlZGJjOGFlZWM1MzUwMTE1 OGFkMmVhNzY1MGFiY2JiOTA2MzQ4ZDU3YjE0YjYxNTI0NDY5ZQotK0N0cmwudHlwZSA9IHR5cGU6 RAotK091dHB1dCA9IDVhNTg0NGU2YzQ3ZWFjYzE3MmUwMDEyMDQ0MDM3NjY4YTY1Mzc1OGI5NjMx MDM1MAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtl eSA9IGhleGtleTowMDAwMDA4MTAwODhhMmFkZDBjYzU5MThjNjQ5YzZiYmM4MjkzMGFlOTkzMjYx ODhmYWEyMGUyY2ZjOGY4MTljYzQ0YmRkOTlkMTYzOGZiYmQzODAxOTdiZWRhNThjMDM5YzIzOWZk Y2NlZDUzM2RiN2VhMzE2MzViODM1ZjVmOTI3MjU0OTBlNzYzOGQ0MGEwMTdiODlmNDg0MDZmYWFi NjUzYWEwMzcyMWFmNWQ3YzVjNjFkNDUxOWU3YzA3Zjk5OTc0YzFmNzE1YjFjZTNmY2ZmYzUwYjJh NmNjOWI0ZTQ1YTc2NzkxYjg2MmFjODc1MjRkMmI1MmZlNmM3MDZmNWE3M2U1ZGMwYQotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MzIxZWY2YjkyY2FlOWRmMzUxYzFiN2QyMjUzMzI1NTM2 ZTY1OWRmNTJhY2Q0YTg3ODdiNDUyMTcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9u X2lkOjM0MGVkYmM4YWVlYzUzNTAxMTU4YWQyZWE3NjUwYWJjYmI5MDYzNDhkNTdiMTRiNjE1MjQ0 NjllCi0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gNDc4M2ZiNmU5OGRiNzg4ZjY1OTRj MmI4MmU3NTE1Mjg1OTBjNDE3ODBhZGNlMmZmYmEyMzQyOTAKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDg4YTJh ZGQwY2M1OTE4YzY0OWM2YmJjODI5MzBhZTk5MzI2MTg4ZmFhMjBlMmNmYzhmODE5Y2M0NGJkZDk5 ZDE2MzhmYmJkMzgwMTk3YmVkYTU4YzAzOWMyMzlmZGNjZWQ1MzNkYjdlYTMxNjM1YjgzNWY1Zjky NzI1NDkwZTc2MzhkNDBhMDE3Yjg5ZjQ4NDA2ZmFhYjY1M2FhMDM3MjFhZjVkN2M1YzYxZDQ1MTll N2MwN2Y5OTk3NGMxZjcxNWIxY2UzZmNmZmM1MGIyYTZjYzliNGU0NWE3Njc5MWI4NjJhYzg3NTI0 ZDJiNTJmZTZjNzA2ZjVhNzNlNWRjMGEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjMy MWVmNmI5MmNhZTlkZjM1MWMxYjdkMjI1MzMyNTUzNmU2NTlkZjUyYWNkNGE4Nzg3YjQ1MjE3Ci0r Q3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDozNDBlZGJjOGFlZWM1MzUwMTE1OGFk MmVhNzY1MGFiY2JiOTA2MzQ4ZDU3YjE0YjYxNTI0NDY5ZQotK0N0cmwudHlwZSA9IHR5cGU6Rgot K091dHB1dCA9IDdjNjA3NTJiMGI1YTBmMDAyNzUwN2VjZDg4ZTZhZjJiNzhlNDYyYTk4NDU5YmYw NTExMTUyNjYzCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwu aGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBkNjI3NDRhMWVlNWE0ZDAzZDc2MWY0OGZiNjNlY2U0 MmQ5MjA0ZTAwMDE2ZGFkMDQyYWU3Y2JlNjAwY2I5ZTkzNTM1YmMzNmQyZjk0ZDcxNWNmOGMyY2Q5 NDhjYWY4NzZiNDk0ODQyOWNiODVhYzczNzY1OTQ5NDk1YWY4MzgwYTU2YjY4ZDFkM2VlYjRkOWIz MTBlMmM1M2RiNWY1MWE3YjgzODI3NTkyNzNjMGJlMzA4NjJkZjgxY2E0MjBmNDE0YzNlYThlNmEx ZmI0ODc1MjU3Y2NjNTM2ZTk3MWM4ZGMwN2U2MDBlMjY1ZTY0MjQ4OTI2NjYwNGY5NGVlOTk1Zjk2 ZWYwMmVhYzc3MWJiODhiYzY2YzU3ZDIyOWVkZmJhMWU0ODRmZDFjOGI0OWUxMWU1OTRhZWZhNjgx ZjI2ZWEyOGMzNDg2MTVkM2UwYTJkYzc2ODQ1ZDJkMTk1NDM3NTFjZTQ0NGM3YjY1ZmE0NDlhNzQ2 MzlmYTEzYzEyM2QwMjUyMDBlZmE3MDEyYjIwOTQwMDc0NmUwM2JkNmE3YmM5MzhiOTI2MTA3ZGEw NDkxNDA3YmQ5NTI2MDJkMTRhN2ZhNzQzY2JkNTFkNTA5MGEyMmM3NmEzMzZmMDZiNWU2ZGM1ZWNm NzBjODAzZGE4ZGNiZmYxNDljNTAxM2MzNgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6 MjczYWI4NDkzMTgwNDUzMjFmNjcyZmRmOWI0YmMyNTBjNGI0NjcxNzM3NGJmYjMzMjJiYzc3MDEK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjI3M2FiODQ5MzE4MDQ1MzIxZjY3 MmZkZjliNGJjMjUwYzRiNDY3MTczNzRiZmIzMzIyYmM3NzAxCi0rQ3RybC50eXBlID0gdHlwZTpB Ci0rT3V0cHV0ID0gMjUxMjY2NDYzOTY5MGFmOWY2NGFmZDE2ZDljY2YzZDMKLSsKLStLREYgPSBT U0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAx MDEwMGQ2Mjc0NGExZWU1YTRkMDNkNzYxZjQ4ZmI2M2VjZTQyZDkyMDRlMDAwMTZkYWQwNDJhZTdj YmU2MDBjYjllOTM1MzViYzM2ZDJmOTRkNzE1Y2Y4YzJjZDk0OGNhZjg3NmI0OTQ4NDI5Y2I4NWFj NzM3NjU5NDk0OTVhZjgzODBhNTZiNjhkMWQzZWViNGQ5YjMxMGUyYzUzZGI1ZjUxYTdiODM4Mjc1 OTI3M2MwYmUzMDg2MmRmODFjYTQyMGY0MTRjM2VhOGU2YTFmYjQ4NzUyNTdjY2M1MzZlOTcxYzhk YzA3ZTYwMGUyNjVlNjQyNDg5MjY2NjA0Zjk0ZWU5OTVmOTZlZjAyZWFjNzcxYmI4OGJjNjZjNTdk MjI5ZWRmYmExZTQ4NGZkMWM4YjQ5ZTExZTU5NGFlZmE2ODFmMjZlYTI4YzM0ODYxNWQzZTBhMmRj NzY4NDVkMmQxOTU0Mzc1MWNlNDQ0YzdiNjVmYTQ0OWE3NDYzOWZhMTNjMTIzZDAyNTIwMGVmYTcw MTJiMjA5NDAwNzQ2ZTAzYmQ2YTdiYzkzOGI5MjYxMDdkYTA0OTE0MDdiZDk1MjYwMmQxNGE3ZmE3 NDNjYmQ1MWQ1MDkwYTIyYzc2YTMzNmYwNmI1ZTZkYzVlY2Y3MGM4MDNkYThkY2JmZjE0OWM1MDEz YzM2Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyNzNhYjg0OTMxODA0NTMyMWY2NzJm ZGY5YjRiYzI1MGM0YjQ2NzE3Mzc0YmZiMzMyMmJjNzcwMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6MjczYWI4NDkzMTgwNDUzMjFmNjcyZmRmOWI0YmMyNTBjNGI0NjcxNzM3 NGJmYjMzMjJiYzc3MDEKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSBjMTMyMjM3OTZm Mzk0YzZkMWZmZDE4YzIyYzA5ZjI3YQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpT SEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwZDYyNzQ0YTFlZTVhNGQwM2Q3 NjFmNDhmYjYzZWNlNDJkOTIwNGUwMDAxNmRhZDA0MmFlN2NiZTYwMGNiOWU5MzUzNWJjMzZkMmY5 NGQ3MTVjZjhjMmNkOTQ4Y2FmODc2YjQ5NDg0MjljYjg1YWM3Mzc2NTk0OTQ5NWFmODM4MGE1NmI2 OGQxZDNlZWI0ZDliMzEwZTJjNTNkYjVmNTFhN2I4MzgyNzU5MjczYzBiZTMwODYyZGY4MWNhNDIw ZjQxNGMzZWE4ZTZhMWZiNDg3NTI1N2NjYzUzNmU5NzFjOGRjMDdlNjAwZTI2NWU2NDI0ODkyNjY2 MDRmOTRlZTk5NWY5NmVmMDJlYWM3NzFiYjg4YmM2NmM1N2QyMjllZGZiYTFlNDg0ZmQxYzhiNDll MTFlNTk0YWVmYTY4MWYyNmVhMjhjMzQ4NjE1ZDNlMGEyZGM3Njg0NWQyZDE5NTQzNzUxY2U0NDRj N2I2NWZhNDQ5YTc0NjM5ZmExM2MxMjNkMDI1MjAwZWZhNzAxMmIyMDk0MDA3NDZlMDNiZDZhN2Jj OTM4YjkyNjEwN2RhMDQ5MTQwN2JkOTUyNjAyZDE0YTdmYTc0M2NiZDUxZDUwOTBhMjJjNzZhMzM2 ZjA2YjVlNmRjNWVjZjcwYzgwM2RhOGRjYmZmMTQ5YzUwMTNjMzYKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOjI3M2FiODQ5MzE4MDQ1MzIxZjY3MmZkZjliNGJjMjUwYzRiNDY3MTczNzRi ZmIzMzIyYmM3NzAxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoyNzNhYjg0 OTMxODA0NTMyMWY2NzJmZGY5YjRiYzI1MGM0YjQ2NzE3Mzc0YmZiMzMyMmJjNzcwMQotK0N0cmwu dHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDdiZTY1OWE3Y2JlZGEyODcyMjMxNWQ5NjQ0NGE1Yzk4 Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMTAxMDBkNjI3NDRhMWVlNWE0ZDAzZDc2MWY0OGZiNjNlY2U0MmQ5MjA0ZTAw MDE2ZGFkMDQyYWU3Y2JlNjAwY2I5ZTkzNTM1YmMzNmQyZjk0ZDcxNWNmOGMyY2Q5NDhjYWY4NzZi NDk0ODQyOWNiODVhYzczNzY1OTQ5NDk1YWY4MzgwYTU2YjY4ZDFkM2VlYjRkOWIzMTBlMmM1M2Ri NWY1MWE3YjgzODI3NTkyNzNjMGJlMzA4NjJkZjgxY2E0MjBmNDE0YzNlYThlNmExZmI0ODc1MjU3 Y2NjNTM2ZTk3MWM4ZGMwN2U2MDBlMjY1ZTY0MjQ4OTI2NjYwNGY5NGVlOTk1Zjk2ZWYwMmVhYzc3 MWJiODhiYzY2YzU3ZDIyOWVkZmJhMWU0ODRmZDFjOGI0OWUxMWU1OTRhZWZhNjgxZjI2ZWEyOGMz NDg2MTVkM2UwYTJkYzc2ODQ1ZDJkMTk1NDM3NTFjZTQ0NGM3YjY1ZmE0NDlhNzQ2MzlmYTEzYzEy M2QwMjUyMDBlZmE3MDEyYjIwOTQwMDc0NmUwM2JkNmE3YmM5MzhiOTI2MTA3ZGEwNDkxNDA3YmQ5 NTI2MDJkMTRhN2ZhNzQzY2JkNTFkNTA5MGEyMmM3NmEzMzZmMDZiNWU2ZGM1ZWNmNzBjODAzZGE4 ZGNiZmYxNDljNTAxM2MzNgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MjczYWI4NDkz MTgwNDUzMjFmNjcyZmRmOWI0YmMyNTBjNGI0NjcxNzM3NGJmYjMzMjJiYzc3MDEKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjI3M2FiODQ5MzE4MDQ1MzIxZjY3MmZkZjliNGJj MjUwYzRiNDY3MTczNzRiZmIzMzIyYmM3NzAxCi0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0 ID0gYmRmYmQ2OThjNTE4YWE0NWMzNWQ3YWZkN2JkOTExNTAKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGQ2Mjc0 NGExZWU1YTRkMDNkNzYxZjQ4ZmI2M2VjZTQyZDkyMDRlMDAwMTZkYWQwNDJhZTdjYmU2MDBjYjll OTM1MzViYzM2ZDJmOTRkNzE1Y2Y4YzJjZDk0OGNhZjg3NmI0OTQ4NDI5Y2I4NWFjNzM3NjU5NDk0 OTVhZjgzODBhNTZiNjhkMWQzZWViNGQ5YjMxMGUyYzUzZGI1ZjUxYTdiODM4Mjc1OTI3M2MwYmUz MDg2MmRmODFjYTQyMGY0MTRjM2VhOGU2YTFmYjQ4NzUyNTdjY2M1MzZlOTcxYzhkYzA3ZTYwMGUy NjVlNjQyNDg5MjY2NjA0Zjk0ZWU5OTVmOTZlZjAyZWFjNzcxYmI4OGJjNjZjNTdkMjI5ZWRmYmEx ZTQ4NGZkMWM4YjQ5ZTExZTU5NGFlZmE2ODFmMjZlYTI4YzM0ODYxNWQzZTBhMmRjNzY4NDVkMmQx OTU0Mzc1MWNlNDQ0YzdiNjVmYTQ0OWE3NDYzOWZhMTNjMTIzZDAyNTIwMGVmYTcwMTJiMjA5NDAw NzQ2ZTAzYmQ2YTdiYzkzOGI5MjYxMDdkYTA0OTE0MDdiZDk1MjYwMmQxNGE3ZmE3NDNjYmQ1MWQ1 MDkwYTIyYzc2YTMzNmYwNmI1ZTZkYzVlY2Y3MGM4MDNkYThkY2JmZjE0OWM1MDEzYzM2Ci0rQ3Ry bC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyNzNhYjg0OTMxODA0NTMyMWY2NzJmZGY5YjRiYzI1 MGM0YjQ2NzE3Mzc0YmZiMzMyMmJjNzcwMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6MjczYWI4NDkzMTgwNDUzMjFmNjcyZmRmOWI0YmMyNTBjNGI0NjcxNzM3NGJmYjMzMjJi Yzc3MDEKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSBkZDM4Yjc5YjA4MTcxM2FjMzAw N2ZmZDg4ZDVjZDY3ZjQzZmJiMzZjOTgzZTBmYzFjZDI3M2Q4NAotKwotK0tERiA9IFNTSEtERgot K0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwZDYy NzQ0YTFlZTVhNGQwM2Q3NjFmNDhmYjYzZWNlNDJkOTIwNGUwMDAxNmRhZDA0MmFlN2NiZTYwMGNi OWU5MzUzNWJjMzZkMmY5NGQ3MTVjZjhjMmNkOTQ4Y2FmODc2YjQ5NDg0MjljYjg1YWM3Mzc2NTk0 OTQ5NWFmODM4MGE1NmI2OGQxZDNlZWI0ZDliMzEwZTJjNTNkYjVmNTFhN2I4MzgyNzU5MjczYzBi ZTMwODYyZGY4MWNhNDIwZjQxNGMzZWE4ZTZhMWZiNDg3NTI1N2NjYzUzNmU5NzFjOGRjMDdlNjAw ZTI2NWU2NDI0ODkyNjY2MDRmOTRlZTk5NWY5NmVmMDJlYWM3NzFiYjg4YmM2NmM1N2QyMjllZGZi YTFlNDg0ZmQxYzhiNDllMTFlNTk0YWVmYTY4MWYyNmVhMjhjMzQ4NjE1ZDNlMGEyZGM3Njg0NWQy ZDE5NTQzNzUxY2U0NDRjN2I2NWZhNDQ5YTc0NjM5ZmExM2MxMjNkMDI1MjAwZWZhNzAxMmIyMDk0 MDA3NDZlMDNiZDZhN2JjOTM4YjkyNjEwN2RhMDQ5MTQwN2JkOTUyNjAyZDE0YTdmYTc0M2NiZDUx ZDUwOTBhMjJjNzZhMzM2ZjA2YjVlNmRjNWVjZjcwYzgwM2RhOGRjYmZmMTQ5YzUwMTNjMzYKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjI3M2FiODQ5MzE4MDQ1MzIxZjY3MmZkZjliNGJj MjUwYzRiNDY3MTczNzRiZmIzMzIyYmM3NzAxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDoyNzNhYjg0OTMxODA0NTMyMWY2NzJmZGY5YjRiYzI1MGM0YjQ2NzE3Mzc0YmZiMzMy MmJjNzcwMQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGVkZjcxM2VjZmIyMWI5ZTlj MmQ5ZDA0Yzg4MmQ1ZGVkNDMzZGNmNDU5ZmY1YjBmZTdjZDQ1YmIxCi0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBk OWI5Mjg0NDc1M2E1ZWFkYzJlZjdlODQzNzJhNTZiZDA5NmNjMWQ1N2E1YzI4MjgxMTY1OGQ3ZGY4 NzU2NGYyMDJlODAwYzc3NGU3NWJiYjUzZjQ3ZTgzNWYyMDczMDBjY2Q0NjYxZmQ4YTczYjZmZjg3 NzcwYzJjMDM2MzQ2ZTk5ZmFkYzUxOTMxNzFlMWU3MzJmM2I2YTAxNzgwOGExNTBlZTAyYzRiNmU3 MGQ4NzQ2MmU1MTgyNWE5NGJkYTI3ZmE5Y2JlMThjN2VmMjBkMGIwMjAxY2I3NTI2ZTBlOWJhYzIx Yjg3N2U1MDY0MDAwMjkwNDI0Mzg3YTlhYTk4ZGE1NjNlZTJhNWVmMzZhZjRiNDQyYTY5ZWI2MzFi ODhiOGUzYTBmMDczYWE1ZGRhNTg5YzRhYTBlNGUwMDdlMGQwMDM2YTIzMWQ1MjEzN2Q3MjRmZDYw ZDQxZjQyNTEyMjE0ODUzZTdhY2Y4YmRlNzdlMzc3ODQyNDY4ZjQyMTZhMTVkMGM4ZmUwMzNjMmIx MzNiZjY1MWM4MmZkYTZkMjI3ZTNjM2YwY2I3ZDBhOWViYTdjMzVlZWVmY2Y2ODNkZGRlNjk2ZmRl YmE1ZWMxMjRlNzAxZjAxYmY1YjBkNTlhNjY3Yzc1NjMzZGVhMDc2NzBiMDdiYWEyMGYzMTNjMwot K0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YTUxMDc3NGE5YjA3YjA1ZTRlMGVhZjk0MDlk NzcwMjhhNTExYTk1NjU3ODRiNjlhYjNjMDNmZmMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhz ZXNzaW9uX2lkOjQ5YzRhZDQxMmQxMzg3MGQwZTljNjg1NWUyODgxZmMwMzJhYWIzNmZhM2FiMzU5 OGE3ZjExNTNlCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gZjMwNjRkM2YzZWQwOWVl ZmQzNDczMWEyYzYwYzFhODAKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0 Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGQ5YjkyODQ0NzUzYTVlYWRjMmVmN2U4 NDM3MmE1NmJkMDk2Y2MxZDU3YTVjMjgyODExNjU4ZDdkZjg3NTY0ZjIwMmU4MDBjNzc0ZTc1YmJi NTNmNDdlODM1ZjIwNzMwMGNjZDQ2NjFmZDhhNzNiNmZmODc3NzBjMmMwMzYzNDZlOTlmYWRjNTE5 MzE3MWUxZTczMmYzYjZhMDE3ODA4YTE1MGVlMDJjNGI2ZTcwZDg3NDYyZTUxODI1YTk0YmRhMjdm YTljYmUxOGM3ZWYyMGQwYjAyMDFjYjc1MjZlMGU5YmFjMjFiODc3ZTUwNjQwMDAyOTA0MjQzODdh OWFhOThkYTU2M2VlMmE1ZWYzNmFmNGI0NDJhNjllYjYzMWI4OGI4ZTNhMGYwNzNhYTVkZGE1ODlj NGFhMGU0ZTAwN2UwZDAwMzZhMjMxZDUyMTM3ZDcyNGZkNjBkNDFmNDI1MTIyMTQ4NTNlN2FjZjhi ZGU3N2UzNzc4NDI0NjhmNDIxNmExNWQwYzhmZTAzM2MyYjEzM2JmNjUxYzgyZmRhNmQyMjdlM2Mz ZjBjYjdkMGE5ZWJhN2MzNWVlZWZjZjY4M2RkZGU2OTZmZGViYTVlYzEyNGU3MDFmMDFiZjViMGQ1 OWE2NjdjNzU2MzNkZWEwNzY3MGIwN2JhYTIwZjMxM2MzCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDphNTEwNzc0YTliMDdiMDVlNGUwZWFmOTQwOWQ3NzAyOGE1MTFhOTU2NTc4NGI2OWFi M2MwM2ZmYwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NDljNGFkNDEyZDEz ODcwZDBlOWM2ODU1ZTI4ODFmYzAzMmFhYjM2ZmEzYWIzNTk4YTdmMTE1M2UKLStDdHJsLnR5cGUg PSB0eXBlOkIKLStPdXRwdXQgPSAxZjdmNTA4ZDljNGNmMTAwNGEyMjBmMjZlMGU2YzE4NAotKwot K0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDEwMTAwZDliOTI4NDQ3NTNhNWVhZGMyZWY3ZTg0MzcyYTU2YmQwOTZjYzFkNTdhNWMy ODI4MTE2NThkN2RmODc1NjRmMjAyZTgwMGM3NzRlNzViYmI1M2Y0N2U4MzVmMjA3MzAwY2NkNDY2 MWZkOGE3M2I2ZmY4Nzc3MGMyYzAzNjM0NmU5OWZhZGM1MTkzMTcxZTFlNzMyZjNiNmEwMTc4MDhh MTUwZWUwMmM0YjZlNzBkODc0NjJlNTE4MjVhOTRiZGEyN2ZhOWNiZTE4YzdlZjIwZDBiMDIwMWNi NzUyNmUwZTliYWMyMWI4NzdlNTA2NDAwMDI5MDQyNDM4N2E5YWE5OGRhNTYzZWUyYTVlZjM2YWY0 YjQ0MmE2OWViNjMxYjg4YjhlM2EwZjA3M2FhNWRkYTU4OWM0YWEwZTRlMDA3ZTBkMDAzNmEyMzFk NTIxMzdkNzI0ZmQ2MGQ0MWY0MjUxMjIxNDg1M2U3YWNmOGJkZTc3ZTM3Nzg0MjQ2OGY0MjE2YTE1 ZDBjOGZlMDMzYzJiMTMzYmY2NTFjODJmZGE2ZDIyN2UzYzNmMGNiN2QwYTllYmE3YzM1ZWVlZmNm NjgzZGRkZTY5NmZkZWJhNWVjMTI0ZTcwMWYwMWJmNWIwZDU5YTY2N2M3NTYzM2RlYTA3NjcwYjA3 YmFhMjBmMzEzYzMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmE1MTA3NzRhOWIwN2Iw NWU0ZTBlYWY5NDA5ZDc3MDI4YTUxMWE5NTY1Nzg0YjY5YWIzYzAzZmZjCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo0OWM0YWQ0MTJkMTM4NzBkMGU5YzY4NTVlMjg4MWZjMDMy YWFiMzZmYTNhYjM1OThhN2YxMTUzZQotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDJh ZDQ4YTc3ZmExMmZjYjVkM2QzZTk4ZDViYjg3ZDc2Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBkOWI5Mjg0NDc1 M2E1ZWFkYzJlZjdlODQzNzJhNTZiZDA5NmNjMWQ1N2E1YzI4MjgxMTY1OGQ3ZGY4NzU2NGYyMDJl ODAwYzc3NGU3NWJiYjUzZjQ3ZTgzNWYyMDczMDBjY2Q0NjYxZmQ4YTczYjZmZjg3NzcwYzJjMDM2 MzQ2ZTk5ZmFkYzUxOTMxNzFlMWU3MzJmM2I2YTAxNzgwOGExNTBlZTAyYzRiNmU3MGQ4NzQ2MmU1 MTgyNWE5NGJkYTI3ZmE5Y2JlMThjN2VmMjBkMGIwMjAxY2I3NTI2ZTBlOWJhYzIxYjg3N2U1MDY0 MDAwMjkwNDI0Mzg3YTlhYTk4ZGE1NjNlZTJhNWVmMzZhZjRiNDQyYTY5ZWI2MzFiODhiOGUzYTBm MDczYWE1ZGRhNTg5YzRhYTBlNGUwMDdlMGQwMDM2YTIzMWQ1MjEzN2Q3MjRmZDYwZDQxZjQyNTEy MjE0ODUzZTdhY2Y4YmRlNzdlMzc3ODQyNDY4ZjQyMTZhMTVkMGM4ZmUwMzNjMmIxMzNiZjY1MWM4 MmZkYTZkMjI3ZTNjM2YwY2I3ZDBhOWViYTdjMzVlZWVmY2Y2ODNkZGRlNjk2ZmRlYmE1ZWMxMjRl NzAxZjAxYmY1YjBkNTlhNjY3Yzc1NjMzZGVhMDc2NzBiMDdiYWEyMGYzMTNjMwotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6YTUxMDc3NGE5YjA3YjA1ZTRlMGVhZjk0MDlkNzcwMjhhNTEx YTk1NjU3ODRiNjlhYjNjMDNmZmMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OjQ5YzRhZDQxMmQxMzg3MGQwZTljNjg1NWUyODgxZmMwMzJhYWIzNmZhM2FiMzU5OGE3ZjExNTNl Ci0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gMDQzM2RiN2ZkNDBkOWQwZGM5ZGY2ZTll ZWQ4MDU5ZTQKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGQ5YjkyODQ0NzUzYTVlYWRjMmVmN2U4NDM3MmE1NmJk MDk2Y2MxZDU3YTVjMjgyODExNjU4ZDdkZjg3NTY0ZjIwMmU4MDBjNzc0ZTc1YmJiNTNmNDdlODM1 ZjIwNzMwMGNjZDQ2NjFmZDhhNzNiNmZmODc3NzBjMmMwMzYzNDZlOTlmYWRjNTE5MzE3MWUxZTcz MmYzYjZhMDE3ODA4YTE1MGVlMDJjNGI2ZTcwZDg3NDYyZTUxODI1YTk0YmRhMjdmYTljYmUxOGM3 ZWYyMGQwYjAyMDFjYjc1MjZlMGU5YmFjMjFiODc3ZTUwNjQwMDAyOTA0MjQzODdhOWFhOThkYTU2 M2VlMmE1ZWYzNmFmNGI0NDJhNjllYjYzMWI4OGI4ZTNhMGYwNzNhYTVkZGE1ODljNGFhMGU0ZTAw N2UwZDAwMzZhMjMxZDUyMTM3ZDcyNGZkNjBkNDFmNDI1MTIyMTQ4NTNlN2FjZjhiZGU3N2UzNzc4 NDI0NjhmNDIxNmExNWQwYzhmZTAzM2MyYjEzM2JmNjUxYzgyZmRhNmQyMjdlM2MzZjBjYjdkMGE5 ZWJhN2MzNWVlZWZjZjY4M2RkZGU2OTZmZGViYTVlYzEyNGU3MDFmMDFiZjViMGQ1OWE2NjdjNzU2 MzNkZWEwNzY3MGIwN2JhYTIwZjMxM2MzCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDph NTEwNzc0YTliMDdiMDVlNGUwZWFmOTQwOWQ3NzAyOGE1MTFhOTU2NTc4NGI2OWFiM2MwM2ZmYwot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NDljNGFkNDEyZDEzODcwZDBlOWM2 ODU1ZTI4ODFmYzAzMmFhYjM2ZmEzYWIzNTk4YTdmMTE1M2UKLStDdHJsLnR5cGUgPSB0eXBlOkUK LStPdXRwdXQgPSBiMDc4ODRmMTU5MTBjNmEwODMxNDNlZjliZGExMTVkMDVjOWU0YzQwNTdjMTk4 N2M0Zjc4YTFiNgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJs LmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwZDliOTI4NDQ3NTNhNWVhZGMyZWY3ZTg0MzcyYTU2 YmQwOTZjYzFkNTdhNWMyODI4MTE2NThkN2RmODc1NjRmMjAyZTgwMGM3NzRlNzViYmI1M2Y0N2U4 MzVmMjA3MzAwY2NkNDY2MWZkOGE3M2I2ZmY4Nzc3MGMyYzAzNjM0NmU5OWZhZGM1MTkzMTcxZTFl NzMyZjNiNmEwMTc4MDhhMTUwZWUwMmM0YjZlNzBkODc0NjJlNTE4MjVhOTRiZGEyN2ZhOWNiZTE4 YzdlZjIwZDBiMDIwMWNiNzUyNmUwZTliYWMyMWI4NzdlNTA2NDAwMDI5MDQyNDM4N2E5YWE5OGRh NTYzZWUyYTVlZjM2YWY0YjQ0MmE2OWViNjMxYjg4YjhlM2EwZjA3M2FhNWRkYTU4OWM0YWEwZTRl MDA3ZTBkMDAzNmEyMzFkNTIxMzdkNzI0ZmQ2MGQ0MWY0MjUxMjIxNDg1M2U3YWNmOGJkZTc3ZTM3 Nzg0MjQ2OGY0MjE2YTE1ZDBjOGZlMDMzYzJiMTMzYmY2NTFjODJmZGE2ZDIyN2UzYzNmMGNiN2Qw YTllYmE3YzM1ZWVlZmNmNjgzZGRkZTY5NmZkZWJhNWVjMTI0ZTcwMWYwMWJmNWIwZDU5YTY2N2M3 NTYzM2RlYTA3NjcwYjA3YmFhMjBmMzEzYzMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OmE1MTA3NzRhOWIwN2IwNWU0ZTBlYWY5NDA5ZDc3MDI4YTUxMWE5NTY1Nzg0YjY5YWIzYzAzZmZj Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo0OWM0YWQ0MTJkMTM4NzBkMGU5 YzY4NTVlMjg4MWZjMDMyYWFiMzZmYTNhYjM1OThhN2YxMTUzZQotK0N0cmwudHlwZSA9IHR5cGU6 RgotK091dHB1dCA9IGY4MzhkYTdiMjYzMTFkYmQ1MjlmNzQyZDkwMTcwOTIyOTQ4MmNlYTlkN2Fj OWYwYzJjZDE0MjAwCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTI2NDExNTZmMzYzZWRmODljMTgyNDUzMmZjZjM3 OWE4NDZkZDA0MmFjMTczZDZiOWI3NTY1MWQ3YWE5MTFlYmU3NWY1ZGQzYjUwMmE3ZDZlYzMzMWYw OTVlZDA4NTA1ZTg2ZjUxMDA4MjQyMzU3YjNkMjlkNzVkYjgyNjE5MDY2YzJlY2IzYmE3OGU4ZGU4 ZmNlZWIyMDZiZmEzOWVmM2U2NjE3ZDFmMjBlNGEwOTJhYzZiZDU4OTkwNGZlMGNlNGZhYzJkNzNj NzM5NmE1NDA4NGJmNzFlOTI5YWUwYzVjN2U2N2UxNzk1ZTczZjlmYWI4YzZlZTkwMjU0ZjI3ZGFl Njc1MGUxZjg3NjlhZjViMjM1ZjlmN2FlZjMwMmYxZmM0MDE1ZjYwYWYzNDY1NmExYTgxODcxNTlh NGQ2YzRiM2JlNDBhYmU5YWQ1Y2I1NmE1MmY1NDA3MTg2YjQyZmRjZTdhNjkxYjkxNzU1MDcxOWZj N2VlZjg1ODAzMGRjYjI4MjlhMDdhMzljYTI3OWQ5ZGViMDQ4N2I4OTNkNGM3YmJjNDFjZGU0ZWIz NjYxODhmMzhiZGI0Mjg5YjhhOTVhZTc1Nzg2NGU5NjNjYmU0ZjVlY2VkOWFlYmYzYjMzZWJiM2M3 NWI3ZTQwNTgxNjM2NmU2MDllMTZmOGJjNTYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OmQwNDEzNjRmYTczZTQyZjBjOWM0OWQyYWQyNWE3NThjM2Y0NjkxNzYxZDljYWY2ZGZkMmFkNjkw Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxZmVhMGU3OTUwOGQzYjJjYWYw ZTI3NWM0NjM2MjZhZDdkNTdjNmNmYzFkYTc5YTViY2UyZmE1MwotK0N0cmwudHlwZSA9IHR5cGU6 QQotK091dHB1dCA9IGQ4YzYwYmY1ODI4OTJkMmNkMDM5NTY3NzQ2MTRiOWYxCi0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MTAwMTI2NDExNTZmMzYzZWRmODljMTgyNDUzMmZjZjM3OWE4NDZkZDA0MmFjMTczZDZiOWI3NTY1 MWQ3YWE5MTFlYmU3NWY1ZGQzYjUwMmE3ZDZlYzMzMWYwOTVlZDA4NTA1ZTg2ZjUxMDA4MjQyMzU3 YjNkMjlkNzVkYjgyNjE5MDY2YzJlY2IzYmE3OGU4ZGU4ZmNlZWIyMDZiZmEzOWVmM2U2NjE3ZDFm MjBlNGEwOTJhYzZiZDU4OTkwNGZlMGNlNGZhYzJkNzNjNzM5NmE1NDA4NGJmNzFlOTI5YWUwYzVj N2U2N2UxNzk1ZTczZjlmYWI4YzZlZTkwMjU0ZjI3ZGFlNjc1MGUxZjg3NjlhZjViMjM1ZjlmN2Fl ZjMwMmYxZmM0MDE1ZjYwYWYzNDY1NmExYTgxODcxNTlhNGQ2YzRiM2JlNDBhYmU5YWQ1Y2I1NmE1 MmY1NDA3MTg2YjQyZmRjZTdhNjkxYjkxNzU1MDcxOWZjN2VlZjg1ODAzMGRjYjI4MjlhMDdhMzlj YTI3OWQ5ZGViMDQ4N2I4OTNkNGM3YmJjNDFjZGU0ZWIzNjYxODhmMzhiZGI0Mjg5YjhhOTVhZTc1 Nzg2NGU5NjNjYmU0ZjVlY2VkOWFlYmYzYjMzZWJiM2M3NWI3ZTQwNTgxNjM2NmU2MDllMTZmOGJj NTYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmQwNDEzNjRmYTczZTQyZjBjOWM0OWQy YWQyNWE3NThjM2Y0NjkxNzYxZDljYWY2ZGZkMmFkNjkwCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDoxZmVhMGU3OTUwOGQzYjJjYWYwZTI3NWM0NjM2MjZhZDdkNTdjNmNmYzFk YTc5YTViY2UyZmE1MwotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IGJhYzFiZWY2ZDZk ZDkyZGU1NWJjMTc0YzlkYjc3YTU0Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTI2NDExNTZmMzYzZWRmODljMTgy NDUzMmZjZjM3OWE4NDZkZDA0MmFjMTczZDZiOWI3NTY1MWQ3YWE5MTFlYmU3NWY1ZGQzYjUwMmE3 ZDZlYzMzMWYwOTVlZDA4NTA1ZTg2ZjUxMDA4MjQyMzU3YjNkMjlkNzVkYjgyNjE5MDY2YzJlY2Iz YmE3OGU4ZGU4ZmNlZWIyMDZiZmEzOWVmM2U2NjE3ZDFmMjBlNGEwOTJhYzZiZDU4OTkwNGZlMGNl NGZhYzJkNzNjNzM5NmE1NDA4NGJmNzFlOTI5YWUwYzVjN2U2N2UxNzk1ZTczZjlmYWI4YzZlZTkw MjU0ZjI3ZGFlNjc1MGUxZjg3NjlhZjViMjM1ZjlmN2FlZjMwMmYxZmM0MDE1ZjYwYWYzNDY1NmEx YTgxODcxNTlhNGQ2YzRiM2JlNDBhYmU5YWQ1Y2I1NmE1MmY1NDA3MTg2YjQyZmRjZTdhNjkxYjkx NzU1MDcxOWZjN2VlZjg1ODAzMGRjYjI4MjlhMDdhMzljYTI3OWQ5ZGViMDQ4N2I4OTNkNGM3YmJj NDFjZGU0ZWIzNjYxODhmMzhiZGI0Mjg5YjhhOTVhZTc1Nzg2NGU5NjNjYmU0ZjVlY2VkOWFlYmYz YjMzZWJiM2M3NWI3ZTQwNTgxNjM2NmU2MDllMTZmOGJjNTYKLStDdHJsLmhleHhjZ2hhc2ggPSBo ZXh4Y2doYXNoOmQwNDEzNjRmYTczZTQyZjBjOWM0OWQyYWQyNWE3NThjM2Y0NjkxNzYxZDljYWY2 ZGZkMmFkNjkwCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxZmVhMGU3OTUw OGQzYjJjYWYwZTI3NWM0NjM2MjZhZDdkNTdjNmNmYzFkYTc5YTViY2UyZmE1MwotK0N0cmwudHlw ZSA9IHR5cGU6QwotK091dHB1dCA9IGJkZjk2ZDg4ZDdhYzRmMGRhYTYyZDI5OTQ4YTVjODkxCi0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMTAwMTI2NDExNTZmMzYzZWRmODljMTgyNDUzMmZjZjM3OWE4NDZkZDA0MmFjMTcz ZDZiOWI3NTY1MWQ3YWE5MTFlYmU3NWY1ZGQzYjUwMmE3ZDZlYzMzMWYwOTVlZDA4NTA1ZTg2ZjUx MDA4MjQyMzU3YjNkMjlkNzVkYjgyNjE5MDY2YzJlY2IzYmE3OGU4ZGU4ZmNlZWIyMDZiZmEzOWVm M2U2NjE3ZDFmMjBlNGEwOTJhYzZiZDU4OTkwNGZlMGNlNGZhYzJkNzNjNzM5NmE1NDA4NGJmNzFl OTI5YWUwYzVjN2U2N2UxNzk1ZTczZjlmYWI4YzZlZTkwMjU0ZjI3ZGFlNjc1MGUxZjg3NjlhZjVi MjM1ZjlmN2FlZjMwMmYxZmM0MDE1ZjYwYWYzNDY1NmExYTgxODcxNTlhNGQ2YzRiM2JlNDBhYmU5 YWQ1Y2I1NmE1MmY1NDA3MTg2YjQyZmRjZTdhNjkxYjkxNzU1MDcxOWZjN2VlZjg1ODAzMGRjYjI4 MjlhMDdhMzljYTI3OWQ5ZGViMDQ4N2I4OTNkNGM3YmJjNDFjZGU0ZWIzNjYxODhmMzhiZGI0Mjg5 YjhhOTVhZTc1Nzg2NGU5NjNjYmU0ZjVlY2VkOWFlYmYzYjMzZWJiM2M3NWI3ZTQwNTgxNjM2NmU2 MDllMTZmOGJjNTYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmQwNDEzNjRmYTczZTQy ZjBjOWM0OWQyYWQyNWE3NThjM2Y0NjkxNzYxZDljYWY2ZGZkMmFkNjkwCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxZmVhMGU3OTUwOGQzYjJjYWYwZTI3NWM0NjM2MjZhZDdk NTdjNmNmYzFkYTc5YTViY2UyZmE1MwotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGVm MGRiZTU2OGI0ZjNmYmNiOGIyNjY1ZWQ3ZWQwZjhkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTI2NDExNTZmMzYz ZWRmODljMTgyNDUzMmZjZjM3OWE4NDZkZDA0MmFjMTczZDZiOWI3NTY1MWQ3YWE5MTFlYmU3NWY1 ZGQzYjUwMmE3ZDZlYzMzMWYwOTVlZDA4NTA1ZTg2ZjUxMDA4MjQyMzU3YjNkMjlkNzVkYjgyNjE5 MDY2YzJlY2IzYmE3OGU4ZGU4ZmNlZWIyMDZiZmEzOWVmM2U2NjE3ZDFmMjBlNGEwOTJhYzZiZDU4 OTkwNGZlMGNlNGZhYzJkNzNjNzM5NmE1NDA4NGJmNzFlOTI5YWUwYzVjN2U2N2UxNzk1ZTczZjlm YWI4YzZlZTkwMjU0ZjI3ZGFlNjc1MGUxZjg3NjlhZjViMjM1ZjlmN2FlZjMwMmYxZmM0MDE1ZjYw YWYzNDY1NmExYTgxODcxNTlhNGQ2YzRiM2JlNDBhYmU5YWQ1Y2I1NmE1MmY1NDA3MTg2YjQyZmRj ZTdhNjkxYjkxNzU1MDcxOWZjN2VlZjg1ODAzMGRjYjI4MjlhMDdhMzljYTI3OWQ5ZGViMDQ4N2I4 OTNkNGM3YmJjNDFjZGU0ZWIzNjYxODhmMzhiZGI0Mjg5YjhhOTVhZTc1Nzg2NGU5NjNjYmU0ZjVl Y2VkOWFlYmYzYjMzZWJiM2M3NWI3ZTQwNTgxNjM2NmU2MDllMTZmOGJjNTYKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOmQwNDEzNjRmYTczZTQyZjBjOWM0OWQyYWQyNWE3NThjM2Y0Njkx NzYxZDljYWY2ZGZkMmFkNjkwCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDox ZmVhMGU3OTUwOGQzYjJjYWYwZTI3NWM0NjM2MjZhZDdkNTdjNmNmYzFkYTc5YTViY2UyZmE1Mwot K0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IDMxNWQ1MGExYjI5ZjlkNTU2Yzk4MzQzMmI5 OGJmNDM3ODkzYzFhODkyY2Y2OTg4MDM1M2Q5Nzk3Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTI2NDExNTZmMzYz ZWRmODljMTgyNDUzMmZjZjM3OWE4NDZkZDA0MmFjMTczZDZiOWI3NTY1MWQ3YWE5MTFlYmU3NWY1 ZGQzYjUwMmE3ZDZlYzMzMWYwOTVlZDA4NTA1ZTg2ZjUxMDA4MjQyMzU3YjNkMjlkNzVkYjgyNjE5 MDY2YzJlY2IzYmE3OGU4ZGU4ZmNlZWIyMDZiZmEzOWVmM2U2NjE3ZDFmMjBlNGEwOTJhYzZiZDU4 OTkwNGZlMGNlNGZhYzJkNzNjNzM5NmE1NDA4NGJmNzFlOTI5YWUwYzVjN2U2N2UxNzk1ZTczZjlm YWI4YzZlZTkwMjU0ZjI3ZGFlNjc1MGUxZjg3NjlhZjViMjM1ZjlmN2FlZjMwMmYxZmM0MDE1ZjYw YWYzNDY1NmExYTgxODcxNTlhNGQ2YzRiM2JlNDBhYmU5YWQ1Y2I1NmE1MmY1NDA3MTg2YjQyZmRj ZTdhNjkxYjkxNzU1MDcxOWZjN2VlZjg1ODAzMGRjYjI4MjlhMDdhMzljYTI3OWQ5ZGViMDQ4N2I4 OTNkNGM3YmJjNDFjZGU0ZWIzNjYxODhmMzhiZGI0Mjg5YjhhOTVhZTc1Nzg2NGU5NjNjYmU0ZjVl Y2VkOWFlYmYzYjMzZWJiM2M3NWI3ZTQwNTgxNjM2NmU2MDllMTZmOGJjNTYKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOmQwNDEzNjRmYTczZTQyZjBjOWM0OWQyYWQyNWE3NThjM2Y0Njkx NzYxZDljYWY2ZGZkMmFkNjkwCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDox ZmVhMGU3OTUwOGQzYjJjYWYwZTI3NWM0NjM2MjZhZDdkNTdjNmNmYzFkYTc5YTViY2UyZmE1Mwot K0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDYxMmUzYWM2NjUxZjljN2Q5OWM1MzJkYTA4 MjBmMDc5MjkyZDliMzNkMzZiNjg0MTk4NjY1ZjVlCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBlY2ZkMzhjMDcw N2Q1OWRiMGIzNjFhNDQ5YTIyZGRjNjNmMDU1Njc4ZTI1M2ZmYmM4MzI0YTMwNmZmMDZlMzE1OTBm Y2RmNmZjMjcxNjY1MzM1ZjAxYWY4MDQ2MTlmNDM2NzQ4OWQ3ODI5Y2E3NTZjZDE0ZDIxNDdmMmM2 YjJjMDM1NTg0Nzk1NWViZTg5ZWQyMTMzZGM3NDI4MzczMmM0ZjgyMWE3Y2FkY2FhOWFiZjY2MWZh OWZjZjgxYjA1OTZjNDU0ZmRhYzIzZDc5MjY3YzVhODMyOTc5MjE3ZGY2MWY5YmIwNGMwZmE2OWY1 ZmRhZTI0MDdkYTc2MzIxMGYwYjdjMTA5NzQ2MzUwNWIwZGE4NmFkNzFjMjBjMWM1N2FjY2FhZTM1 MzkxOWNiMjcwOGFhMzc4YTVmZjU5OGQwYTRiMjFiNzUyN2IyZGJkMjcxOTU3ZmJiZjA0ZjU3ODcw NzZmYjdmOGFmZGZiNzVkZGI1ZmExNDJhYjQyN2UwMjZjODcwMzNmZTJjNmYyMjQ1NGViYWNlM2Y3 NzY0NmQwZWU0NDdjZDFkMzM5YzlhMjFjZTg2YzBiMjMzYzdmY2JkNmQxZDE2NWUxNGQ1NzkwODc3 N2NkZTY1NGI3ZmMzYzNkYjdlNjI5NTFiMzU5ZWM3MWZlNDc1MzU2ZGM2YTU4YgotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6N2FmNTg4NWQ1MmM0MTczMDAwYzQ1ZGQyYjBmYmViMjFmYTU3 MjJhYTY1ZWVjYjFiZjk3NzI0OGEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OjEyMmUyZDE4MWNjYTdkY2VjNmYzMGE4YjAyN2I0ZDI5Mjc1ZDM0MmFmNWZkODI3OTRiMjQ1NjBm Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gZTBkMzZhYzFkZTZjYzg1MTRkMjVmZjgy NGJmYWFhMzcKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGVjZmQzOGMwNzA3ZDU5ZGIwYjM2MWE0NDlhMjJkZGM2 M2YwNTU2NzhlMjUzZmZiYzgzMjRhMzA2ZmYwNmUzMTU5MGZjZGY2ZmMyNzE2NjUzMzVmMDFhZjgw NDYxOWY0MzY3NDg5ZDc4MjljYTc1NmNkMTRkMjE0N2YyYzZiMmMwMzU1ODQ3OTU1ZWJlODllZDIx MzNkYzc0MjgzNzMyYzRmODIxYTdjYWRjYWE5YWJmNjYxZmE5ZmNmODFiMDU5NmM0NTRmZGFjMjNk NzkyNjdjNWE4MzI5NzkyMTdkZjYxZjliYjA0YzBmYTY5ZjVmZGFlMjQwN2RhNzYzMjEwZjBiN2Mx MDk3NDYzNTA1YjBkYTg2YWQ3MWMyMGMxYzU3YWNjYWFlMzUzOTE5Y2IyNzA4YWEzNzhhNWZmNTk4 ZDBhNGIyMWI3NTI3YjJkYmQyNzE5NTdmYmJmMDRmNTc4NzA3NmZiN2Y4YWZkZmI3NWRkYjVmYTE0 MmFiNDI3ZTAyNmM4NzAzM2ZlMmM2ZjIyNDU0ZWJhY2UzZjc3NjQ2ZDBlZTQ0N2NkMWQzMzljOWEy MWNlODZjMGIyMzNjN2ZjYmQ2ZDFkMTY1ZTE0ZDU3OTA4Nzc3Y2RlNjU0YjdmYzNjM2RiN2U2Mjk1 MWIzNTllYzcxZmU0NzUzNTZkYzZhNThiCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo3 YWY1ODg1ZDUyYzQxNzMwMDBjNDVkZDJiMGZiZWIyMWZhNTcyMmFhNjVlZWNiMWJmOTc3MjQ4YQot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MTIyZTJkMTgxY2NhN2RjZWM2ZjMw YThiMDI3YjRkMjkyNzVkMzQyYWY1ZmQ4Mjc5NGIyNDU2MGYKLStDdHJsLnR5cGUgPSB0eXBlOkIK LStPdXRwdXQgPSA1OGM4OTZiNGQxYTk1MDdlN2RhMjIzNGExYTUzOGQ3OAotKwotK0tERiA9IFNT SEtERgotK0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEw MTAwZWNmZDM4YzA3MDdkNTlkYjBiMzYxYTQ0OWEyMmRkYzYzZjA1NTY3OGUyNTNmZmJjODMyNGEz MDZmZjA2ZTMxNTkwZmNkZjZmYzI3MTY2NTMzNWYwMWFmODA0NjE5ZjQzNjc0ODlkNzgyOWNhNzU2 Y2QxNGQyMTQ3ZjJjNmIyYzAzNTU4NDc5NTVlYmU4OWVkMjEzM2RjNzQyODM3MzJjNGY4MjFhN2Nh ZGNhYTlhYmY2NjFmYTlmY2Y4MWIwNTk2YzQ1NGZkYWMyM2Q3OTI2N2M1YTgzMjk3OTIxN2RmNjFm OWJiMDRjMGZhNjlmNWZkYWUyNDA3ZGE3NjMyMTBmMGI3YzEwOTc0NjM1MDViMGRhODZhZDcxYzIw YzFjNTdhY2NhYWUzNTM5MTljYjI3MDhhYTM3OGE1ZmY1OThkMGE0YjIxYjc1MjdiMmRiZDI3MTk1 N2ZiYmYwNGY1Nzg3MDc2ZmI3ZjhhZmRmYjc1ZGRiNWZhMTQyYWI0MjdlMDI2Yzg3MDMzZmUyYzZm MjI0NTRlYmFjZTNmNzc2NDZkMGVlNDQ3Y2QxZDMzOWM5YTIxY2U4NmMwYjIzM2M3ZmNiZDZkMWQx NjVlMTRkNTc5MDg3NzdjZGU2NTRiN2ZjM2MzZGI3ZTYyOTUxYjM1OWVjNzFmZTQ3NTM1NmRjNmE1 OGIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjdhZjU4ODVkNTJjNDE3MzAwMGM0NWRk MmIwZmJlYjIxZmE1NzIyYWE2NWVlY2IxYmY5NzcyNDhhCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDoxMjJlMmQxODFjY2E3ZGNlYzZmMzBhOGIwMjdiNGQyOTI3NWQzNDJhZjVm ZDgyNzk0YjI0NTYwZgotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDU5NjZkZjVjYjU4 MjIzNDU4NWI0YzQzMTIzMThmODI5Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBlY2ZkMzhjMDcwN2Q1OWRiMGIz NjFhNDQ5YTIyZGRjNjNmMDU1Njc4ZTI1M2ZmYmM4MzI0YTMwNmZmMDZlMzE1OTBmY2RmNmZjMjcx NjY1MzM1ZjAxYWY4MDQ2MTlmNDM2NzQ4OWQ3ODI5Y2E3NTZjZDE0ZDIxNDdmMmM2YjJjMDM1NTg0 Nzk1NWViZTg5ZWQyMTMzZGM3NDI4MzczMmM0ZjgyMWE3Y2FkY2FhOWFiZjY2MWZhOWZjZjgxYjA1 OTZjNDU0ZmRhYzIzZDc5MjY3YzVhODMyOTc5MjE3ZGY2MWY5YmIwNGMwZmE2OWY1ZmRhZTI0MDdk YTc2MzIxMGYwYjdjMTA5NzQ2MzUwNWIwZGE4NmFkNzFjMjBjMWM1N2FjY2FhZTM1MzkxOWNiMjcw OGFhMzc4YTVmZjU5OGQwYTRiMjFiNzUyN2IyZGJkMjcxOTU3ZmJiZjA0ZjU3ODcwNzZmYjdmOGFm ZGZiNzVkZGI1ZmExNDJhYjQyN2UwMjZjODcwMzNmZTJjNmYyMjQ1NGViYWNlM2Y3NzY0NmQwZWU0 NDdjZDFkMzM5YzlhMjFjZTg2YzBiMjMzYzdmY2JkNmQxZDE2NWUxNGQ1NzkwODc3N2NkZTY1NGI3 ZmMzYzNkYjdlNjI5NTFiMzU5ZWM3MWZlNDc1MzU2ZGM2YTU4YgotK0N0cmwuaGV4eGNnaGFzaCA9 IGhleHhjZ2hhc2g6N2FmNTg4NWQ1MmM0MTczMDAwYzQ1ZGQyYjBmYmViMjFmYTU3MjJhYTY1ZWVj YjFiZjk3NzI0OGEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjEyMmUyZDE4 MWNjYTdkY2VjNmYzMGE4YjAyN2I0ZDI5Mjc1ZDM0MmFmNWZkODI3OTRiMjQ1NjBmCi0rQ3RybC50 eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gNDBkOGJkYWI3OGM5ZGFjMmIyZDE0ZDFjOGJkNDE0MDUK LSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBo ZXhrZXk6MDAwMDAxMDEwMGVjZmQzOGMwNzA3ZDU5ZGIwYjM2MWE0NDlhMjJkZGM2M2YwNTU2Nzhl MjUzZmZiYzgzMjRhMzA2ZmYwNmUzMTU5MGZjZGY2ZmMyNzE2NjUzMzVmMDFhZjgwNDYxOWY0MzY3 NDg5ZDc4MjljYTc1NmNkMTRkMjE0N2YyYzZiMmMwMzU1ODQ3OTU1ZWJlODllZDIxMzNkYzc0Mjgz NzMyYzRmODIxYTdjYWRjYWE5YWJmNjYxZmE5ZmNmODFiMDU5NmM0NTRmZGFjMjNkNzkyNjdjNWE4 MzI5NzkyMTdkZjYxZjliYjA0YzBmYTY5ZjVmZGFlMjQwN2RhNzYzMjEwZjBiN2MxMDk3NDYzNTA1 YjBkYTg2YWQ3MWMyMGMxYzU3YWNjYWFlMzUzOTE5Y2IyNzA4YWEzNzhhNWZmNTk4ZDBhNGIyMWI3 NTI3YjJkYmQyNzE5NTdmYmJmMDRmNTc4NzA3NmZiN2Y4YWZkZmI3NWRkYjVmYTE0MmFiNDI3ZTAy NmM4NzAzM2ZlMmM2ZjIyNDU0ZWJhY2UzZjc3NjQ2ZDBlZTQ0N2NkMWQzMzljOWEyMWNlODZjMGIy MzNjN2ZjYmQ2ZDFkMTY1ZTE0ZDU3OTA4Nzc3Y2RlNjU0YjdmYzNjM2RiN2U2Mjk1MWIzNTllYzcx ZmU0NzUzNTZkYzZhNThiCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo3YWY1ODg1ZDUy YzQxNzMwMDBjNDVkZDJiMGZiZWIyMWZhNTcyMmFhNjVlZWNiMWJmOTc3MjQ4YQotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MTIyZTJkMTgxY2NhN2RjZWM2ZjMwYThiMDI3YjRk MjkyNzVkMzQyYWY1ZmQ4Mjc5NGIyNDU2MGYKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQg PSAxYWY0NzA3NTcwNzk0ZmY2YzcxOGM4MTdjY2I5ZmNhNWVkZjIyYTNhOGQ0OTNhODYxNjMzZmI3 YQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9 IGhleGtleTowMDAwMDEwMTAwZWNmZDM4YzA3MDdkNTlkYjBiMzYxYTQ0OWEyMmRkYzYzZjA1NTY3 OGUyNTNmZmJjODMyNGEzMDZmZjA2ZTMxNTkwZmNkZjZmYzI3MTY2NTMzNWYwMWFmODA0NjE5ZjQz Njc0ODlkNzgyOWNhNzU2Y2QxNGQyMTQ3ZjJjNmIyYzAzNTU4NDc5NTVlYmU4OWVkMjEzM2RjNzQy ODM3MzJjNGY4MjFhN2NhZGNhYTlhYmY2NjFmYTlmY2Y4MWIwNTk2YzQ1NGZkYWMyM2Q3OTI2N2M1 YTgzMjk3OTIxN2RmNjFmOWJiMDRjMGZhNjlmNWZkYWUyNDA3ZGE3NjMyMTBmMGI3YzEwOTc0NjM1 MDViMGRhODZhZDcxYzIwYzFjNTdhY2NhYWUzNTM5MTljYjI3MDhhYTM3OGE1ZmY1OThkMGE0YjIx Yjc1MjdiMmRiZDI3MTk1N2ZiYmYwNGY1Nzg3MDc2ZmI3ZjhhZmRmYjc1ZGRiNWZhMTQyYWI0Mjdl MDI2Yzg3MDMzZmUyYzZmMjI0NTRlYmFjZTNmNzc2NDZkMGVlNDQ3Y2QxZDMzOWM5YTIxY2U4NmMw YjIzM2M3ZmNiZDZkMWQxNjVlMTRkNTc5MDg3NzdjZGU2NTRiN2ZjM2MzZGI3ZTYyOTUxYjM1OWVj NzFmZTQ3NTM1NmRjNmE1OGIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjdhZjU4ODVk NTJjNDE3MzAwMGM0NWRkMmIwZmJlYjIxZmE1NzIyYWE2NWVlY2IxYmY5NzcyNDhhCi0rQ3RybC5o ZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxMjJlMmQxODFjY2E3ZGNlYzZmMzBhOGIwMjdi NGQyOTI3NWQzNDJhZjVmZDgyNzk0YjI0NTYwZgotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1 dCA9IDRlNmVkZDVkODZmMGEzYjkyNTk1ZmIyZDRmMGY5YjBmMGVkMWU4NTBjODQwMTQyMjQyNzBi Y2JjCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMTAwMmRkZTkxNzIzZmE5Njk3NTZmNWE1OTc2ODNmYTBlZjkzODQyM2Zm Y2YzYjNkMDI2MmY5YmEwZDY5ZDcyZmZjM2FmYmYyY2NiOWJiYzQyMzMyZjk3ZDM4NTdiNDQ1NzVl MzA4NDlmZTE5ZTc3Njg4ZTkxMDJkOTkwOTU4NWQ5ZTUzODM1ZWVlNDEyN2FlZTAzOGRlYWY4NTAx YzcwY2ZkMjA5ZWY3NTVmODQ2MTMzNjVkOWIyMTUwMDA5ZjkwNTUzMDBiNzRjNTkzZjgyMDRiODRj N2ZhYWFjODdjNzgxZTdiZGRhOGM1NGJmMGVjMTcwZTRkYmY3MWNkMTU4MjVjOTQ5ZWJhYTkzNDc5 NzMzMzEyNGU2M2RiNTBlZmUwZjMzZjUyMjQ2ODdjMDk3YjIyZDUyZGUzNjA0NTY1OTYyMmRkMjE0 ZWZmYWIzNzhiNmJmZjI5OGM4NDQzNjgzMWY4NTU0MGE1ZWFjMGI2OGQ1MWZhMWFiZDE4ZDE5Y2U1 NDUyYWVmZTcyOWI3ZDM4NGUwMzg5MjdlZThmMGMyZGRmZmQxY2I2ZWE1MzdhOTBkOWIwNmJjZTNi ZDAxZmRmNDM3MGQ2MmQ5ODVhYjgwNDE3ZDEyNTZkMzhhYjM4NzQyOTcxNjNhMDIwMDUyYjQyZTcz ZThlZjY0OTUwODUxZTdkYTIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjU5MGM4ZTM4 MDBkZGZkMzgyZjBiMzAyM2M3YTg3NTNiZDAxM2U3NTY4NTVmZmJjYTFkZWUwZjAxCi0rQ3RybC5o ZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo1ZTQ1MjhjN2ZmODVmMmVkN2Q2MzJjNDM1NWUy NTI0NDM4ZWU4M2VmMGUxNjk1NTI0OTIxNDA4ZAotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1 dCA9IGQzMGI3ZWZkYTc3YTEwMDhkNzg0ODdmYjFjOWRmNTExCi0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMmRkZTkx NzIzZmE5Njk3NTZmNWE1OTc2ODNmYTBlZjkzODQyM2ZmY2YzYjNkMDI2MmY5YmEwZDY5ZDcyZmZj M2FmYmYyY2NiOWJiYzQyMzMyZjk3ZDM4NTdiNDQ1NzVlMzA4NDlmZTE5ZTc3Njg4ZTkxMDJkOTkw OTU4NWQ5ZTUzODM1ZWVlNDEyN2FlZTAzOGRlYWY4NTAxYzcwY2ZkMjA5ZWY3NTVmODQ2MTMzNjVk OWIyMTUwMDA5ZjkwNTUzMDBiNzRjNTkzZjgyMDRiODRjN2ZhYWFjODdjNzgxZTdiZGRhOGM1NGJm MGVjMTcwZTRkYmY3MWNkMTU4MjVjOTQ5ZWJhYTkzNDc5NzMzMzEyNGU2M2RiNTBlZmUwZjMzZjUy MjQ2ODdjMDk3YjIyZDUyZGUzNjA0NTY1OTYyMmRkMjE0ZWZmYWIzNzhiNmJmZjI5OGM4NDQzNjgz MWY4NTU0MGE1ZWFjMGI2OGQ1MWZhMWFiZDE4ZDE5Y2U1NDUyYWVmZTcyOWI3ZDM4NGUwMzg5Mjdl ZThmMGMyZGRmZmQxY2I2ZWE1MzdhOTBkOWIwNmJjZTNiZDAxZmRmNDM3MGQ2MmQ5ODVhYjgwNDE3 ZDEyNTZkMzhhYjM4NzQyOTcxNjNhMDIwMDUyYjQyZTczZThlZjY0OTUwODUxZTdkYTIKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjU5MGM4ZTM4MDBkZGZkMzgyZjBiMzAyM2M3YTg3NTNi ZDAxM2U3NTY4NTVmZmJjYTFkZWUwZjAxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDo1ZTQ1MjhjN2ZmODVmMmVkN2Q2MzJjNDM1NWUyNTI0NDM4ZWU4M2VmMGUxNjk1NTI0OTIx NDA4ZAotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDQ5OGIzZDlmMTQ0NDZhMDI4ZDFh ZWQ4YmM0NzQ4ZTM0Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMmRkZTkxNzIzZmE5Njk3NTZmNWE1OTc2ODNmYTBl ZjkzODQyM2ZmY2YzYjNkMDI2MmY5YmEwZDY5ZDcyZmZjM2FmYmYyY2NiOWJiYzQyMzMyZjk3ZDM4 NTdiNDQ1NzVlMzA4NDlmZTE5ZTc3Njg4ZTkxMDJkOTkwOTU4NWQ5ZTUzODM1ZWVlNDEyN2FlZTAz OGRlYWY4NTAxYzcwY2ZkMjA5ZWY3NTVmODQ2MTMzNjVkOWIyMTUwMDA5ZjkwNTUzMDBiNzRjNTkz ZjgyMDRiODRjN2ZhYWFjODdjNzgxZTdiZGRhOGM1NGJmMGVjMTcwZTRkYmY3MWNkMTU4MjVjOTQ5 ZWJhYTkzNDc5NzMzMzEyNGU2M2RiNTBlZmUwZjMzZjUyMjQ2ODdjMDk3YjIyZDUyZGUzNjA0NTY1 OTYyMmRkMjE0ZWZmYWIzNzhiNmJmZjI5OGM4NDQzNjgzMWY4NTU0MGE1ZWFjMGI2OGQ1MWZhMWFi ZDE4ZDE5Y2U1NDUyYWVmZTcyOWI3ZDM4NGUwMzg5MjdlZThmMGMyZGRmZmQxY2I2ZWE1MzdhOTBk OWIwNmJjZTNiZDAxZmRmNDM3MGQ2MmQ5ODVhYjgwNDE3ZDEyNTZkMzhhYjM4NzQyOTcxNjNhMDIw MDUyYjQyZTczZThlZjY0OTUwODUxZTdkYTIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OjU5MGM4ZTM4MDBkZGZkMzgyZjBiMzAyM2M3YTg3NTNiZDAxM2U3NTY4NTVmZmJjYTFkZWUwZjAx Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo1ZTQ1MjhjN2ZmODVmMmVkN2Q2 MzJjNDM1NWUyNTI0NDM4ZWU4M2VmMGUxNjk1NTI0OTIxNDA4ZAotK0N0cmwudHlwZSA9IHR5cGU6 QwotK091dHB1dCA9IGY0OTA5MjczYzM5ZWY4ODE5YjM1M2NkZTgwZjU3Y2M5Ci0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MTAwMmRkZTkxNzIzZmE5Njk3NTZmNWE1OTc2ODNmYTBlZjkzODQyM2ZmY2YzYjNkMDI2MmY5YmEw ZDY5ZDcyZmZjM2FmYmYyY2NiOWJiYzQyMzMyZjk3ZDM4NTdiNDQ1NzVlMzA4NDlmZTE5ZTc3Njg4 ZTkxMDJkOTkwOTU4NWQ5ZTUzODM1ZWVlNDEyN2FlZTAzOGRlYWY4NTAxYzcwY2ZkMjA5ZWY3NTVm ODQ2MTMzNjVkOWIyMTUwMDA5ZjkwNTUzMDBiNzRjNTkzZjgyMDRiODRjN2ZhYWFjODdjNzgxZTdi ZGRhOGM1NGJmMGVjMTcwZTRkYmY3MWNkMTU4MjVjOTQ5ZWJhYTkzNDc5NzMzMzEyNGU2M2RiNTBl ZmUwZjMzZjUyMjQ2ODdjMDk3YjIyZDUyZGUzNjA0NTY1OTYyMmRkMjE0ZWZmYWIzNzhiNmJmZjI5 OGM4NDQzNjgzMWY4NTU0MGE1ZWFjMGI2OGQ1MWZhMWFiZDE4ZDE5Y2U1NDUyYWVmZTcyOWI3ZDM4 NGUwMzg5MjdlZThmMGMyZGRmZmQxY2I2ZWE1MzdhOTBkOWIwNmJjZTNiZDAxZmRmNDM3MGQ2MmQ5 ODVhYjgwNDE3ZDEyNTZkMzhhYjM4NzQyOTcxNjNhMDIwMDUyYjQyZTczZThlZjY0OTUwODUxZTdk YTIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjU5MGM4ZTM4MDBkZGZkMzgyZjBiMzAy M2M3YTg3NTNiZDAxM2U3NTY4NTVmZmJjYTFkZWUwZjAxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDo1ZTQ1MjhjN2ZmODVmMmVkN2Q2MzJjNDM1NWUyNTI0NDM4ZWU4M2VmMGUx Njk1NTI0OTIxNDA4ZAotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGIzMTMzN2E2ZWNk MDJmNGJlYjliZjRhZjEyZWE0ZTExCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMmRkZTkxNzIzZmE5Njk3NTZmNWE1 OTc2ODNmYTBlZjkzODQyM2ZmY2YzYjNkMDI2MmY5YmEwZDY5ZDcyZmZjM2FmYmYyY2NiOWJiYzQy MzMyZjk3ZDM4NTdiNDQ1NzVlMzA4NDlmZTE5ZTc3Njg4ZTkxMDJkOTkwOTU4NWQ5ZTUzODM1ZWVl NDEyN2FlZTAzOGRlYWY4NTAxYzcwY2ZkMjA5ZWY3NTVmODQ2MTMzNjVkOWIyMTUwMDA5ZjkwNTUz MDBiNzRjNTkzZjgyMDRiODRjN2ZhYWFjODdjNzgxZTdiZGRhOGM1NGJmMGVjMTcwZTRkYmY3MWNk MTU4MjVjOTQ5ZWJhYTkzNDc5NzMzMzEyNGU2M2RiNTBlZmUwZjMzZjUyMjQ2ODdjMDk3YjIyZDUy ZGUzNjA0NTY1OTYyMmRkMjE0ZWZmYWIzNzhiNmJmZjI5OGM4NDQzNjgzMWY4NTU0MGE1ZWFjMGI2 OGQ1MWZhMWFiZDE4ZDE5Y2U1NDUyYWVmZTcyOWI3ZDM4NGUwMzg5MjdlZThmMGMyZGRmZmQxY2I2 ZWE1MzdhOTBkOWIwNmJjZTNiZDAxZmRmNDM3MGQ2MmQ5ODVhYjgwNDE3ZDEyNTZkMzhhYjM4NzQy OTcxNjNhMDIwMDUyYjQyZTczZThlZjY0OTUwODUxZTdkYTIKLStDdHJsLmhleHhjZ2hhc2ggPSBo ZXh4Y2doYXNoOjU5MGM4ZTM4MDBkZGZkMzgyZjBiMzAyM2M3YTg3NTNiZDAxM2U3NTY4NTVmZmJj YTFkZWUwZjAxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo1ZTQ1MjhjN2Zm ODVmMmVkN2Q2MzJjNDM1NWUyNTI0NDM4ZWU4M2VmMGUxNjk1NTI0OTIxNDA4ZAotK0N0cmwudHlw ZSA9IHR5cGU6RQotK091dHB1dCA9IDZmM2RhN2JiNGI2NGFkM2UxMTcxMDgzYTYyZWNhNWU3NTU1 NjNlNjM5NTk0Yjg0ODI0Mzc2MGQ4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMmRkZTkxNzIzZmE5Njk3NTZmNWE1 OTc2ODNmYTBlZjkzODQyM2ZmY2YzYjNkMDI2MmY5YmEwZDY5ZDcyZmZjM2FmYmYyY2NiOWJiYzQy MzMyZjk3ZDM4NTdiNDQ1NzVlMzA4NDlmZTE5ZTc3Njg4ZTkxMDJkOTkwOTU4NWQ5ZTUzODM1ZWVl NDEyN2FlZTAzOGRlYWY4NTAxYzcwY2ZkMjA5ZWY3NTVmODQ2MTMzNjVkOWIyMTUwMDA5ZjkwNTUz MDBiNzRjNTkzZjgyMDRiODRjN2ZhYWFjODdjNzgxZTdiZGRhOGM1NGJmMGVjMTcwZTRkYmY3MWNk MTU4MjVjOTQ5ZWJhYTkzNDc5NzMzMzEyNGU2M2RiNTBlZmUwZjMzZjUyMjQ2ODdjMDk3YjIyZDUy ZGUzNjA0NTY1OTYyMmRkMjE0ZWZmYWIzNzhiNmJmZjI5OGM4NDQzNjgzMWY4NTU0MGE1ZWFjMGI2 OGQ1MWZhMWFiZDE4ZDE5Y2U1NDUyYWVmZTcyOWI3ZDM4NGUwMzg5MjdlZThmMGMyZGRmZmQxY2I2 ZWE1MzdhOTBkOWIwNmJjZTNiZDAxZmRmNDM3MGQ2MmQ5ODVhYjgwNDE3ZDEyNTZkMzhhYjM4NzQy OTcxNjNhMDIwMDUyYjQyZTczZThlZjY0OTUwODUxZTdkYTIKLStDdHJsLmhleHhjZ2hhc2ggPSBo ZXh4Y2doYXNoOjU5MGM4ZTM4MDBkZGZkMzgyZjBiMzAyM2M3YTg3NTNiZDAxM2U3NTY4NTVmZmJj YTFkZWUwZjAxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo1ZTQ1MjhjN2Zm ODVmMmVkN2Q2MzJjNDM1NWUyNTI0NDM4ZWU4M2VmMGUxNjk1NTI0OTIxNDA4ZAotK0N0cmwudHlw ZSA9IHR5cGU6RgotK091dHB1dCA9IGU4ODUwNmFhNGE0ZmZhMzM2NzVjNGEyOTZhYmY5MWUyNDQ1 MGE0OTZlNTZmODQ2NWU5YTc1MjVjCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBiZTdlNjQyOGJlNGZmODYyZTJi OWZlNjlmMDU1YmJiZWFhNTFiNzY2NmQ1MWUxYWQyZTVmZTEyZTJmN2ExNzExMjExNDczMTE3ODA4 NDBlNWQxMzQ1YzZhMjRlYjNlMmQ3YmFjZThjODhjZGRhZTlhMDYyYzdhYWNjN2FlODdkMzFlZjdk NGM1MmRjMmUzNWYzNjQyNjZjOWMzNGUxZmY3MDNhNjFhOGZiMzkzOTczNDRhYzk0ZTc1YTQyZmM5 NTZkY2M4ODdlNTBlNjcwMThkNWE3NGM4OWMxYTg1NTVlYmZmNGE0YmFmNWI0OTE2YWVhMWRkOTVj MTI2ZGYzOTA4ODIxNDM5MDg4MjFlY2Y2ODUxMWU5ODZiZDM3OWNmMDg3MWZlMWEyNjc5MjQxYjMz OWYzMzE3Zjc2YzY1ZGMyYjEyMWUxNWEwYjg4OTFkOWMwMTIwYjhhOGEzODNhMWRkNWViNmZiZDY1 ZDIyYTAzYjc5ODdmODQzZDQ1NGU0ZTFmMDliOWUyZDM3ZWYyYmU3MmI3ZjhhY2NhZGUzMDFjNzcy Zjc0YTU4MmFmYWI5NjBkZmE0M2ExNjcyNzU3NzFmNmE5YmU1YTlmMjc1Y2VhNTVlOTY2MWE1NGIx YzMyMTAwNDJmODI0ZmU3ODM5NjlmYTYwYWQyM2I3NDhhNmI1NgotK0N0cmwuaGV4eGNnaGFzaCA9 IGhleHhjZ2hhc2g6OTdlNzkzNDIwY2VkYTE3MzBkYWM4OGYwZDdkYzUyZDg3MTNhNzlhMGI0OGRk YjJhZjQ1ZGQxNDMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjE2ZGQwZDZh Y2EzNzU3ZWVjNmU5ZGMzYzRhNWY1OTBjYjc5MTFjZDNjYWJjODA4MTU1MjdiNzNjCi0rQ3RybC50 eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gYzVjYmI2NTMxMDJkOTk0NTdjMzNjODg5MjFiNWRiZTQK LSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBo ZXhrZXk6MDAwMDAxMDEwMGJlN2U2NDI4YmU0ZmY4NjJlMmI5ZmU2OWYwNTViYmJlYWE1MWI3NjY2 ZDUxZTFhZDJlNWZlMTJlMmY3YTE3MTEyMTE0NzMxMTc4MDg0MGU1ZDEzNDVjNmEyNGViM2UyZDdi YWNlOGM4OGNkZGFlOWEwNjJjN2FhY2M3YWU4N2QzMWVmN2Q0YzUyZGMyZTM1ZjM2NDI2NmM5YzM0 ZTFmZjcwM2E2MWE4ZmIzOTM5NzM0NGFjOTRlNzVhNDJmYzk1NmRjYzg4N2U1MGU2NzAxOGQ1YTc0 Yzg5YzFhODU1NWViZmY0YTRiYWY1YjQ5MTZhZWExZGQ5NWMxMjZkZjM5MDg4MjE0MzkwODgyMWVj ZjY4NTExZTk4NmJkMzc5Y2YwODcxZmUxYTI2NzkyNDFiMzM5ZjMzMTdmNzZjNjVkYzJiMTIxZTE1 YTBiODg5MWQ5YzAxMjBiOGE4YTM4M2ExZGQ1ZWI2ZmJkNjVkMjJhMDNiNzk4N2Y4NDNkNDU0ZTRl MWYwOWI5ZTJkMzdlZjJiZTcyYjdmOGFjY2FkZTMwMWM3NzJmNzRhNTgyYWZhYjk2MGRmYTQzYTE2 NzI3NTc3MWY2YTliZTVhOWYyNzVjZWE1NWU5NjYxYTU0YjFjMzIxMDA0MmY4MjRmZTc4Mzk2OWZh NjBhZDIzYjc0OGE2YjU2Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo5N2U3OTM0MjBj ZWRhMTczMGRhYzg4ZjBkN2RjNTJkODcxM2E3OWEwYjQ4ZGRiMmFmNDVkZDE0MwotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MTZkZDBkNmFjYTM3NTdlZWM2ZTlkYzNjNGE1ZjU5 MGNiNzkxMWNkM2NhYmM4MDgxNTUyN2I3M2MKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQg PSBkZDliMWM3ODZjN2Y3Mzk4MzI2MjlmNzY2NmU0ZTIxZQotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwYmU3ZTY0 MjhiZTRmZjg2MmUyYjlmZTY5ZjA1NWJiYmVhYTUxYjc2NjZkNTFlMWFkMmU1ZmUxMmUyZjdhMTcx MTIxMTQ3MzExNzgwODQwZTVkMTM0NWM2YTI0ZWIzZTJkN2JhY2U4Yzg4Y2RkYWU5YTA2MmM3YWFj YzdhZTg3ZDMxZWY3ZDRjNTJkYzJlMzVmMzY0MjY2YzljMzRlMWZmNzAzYTYxYThmYjM5Mzk3MzQ0 YWM5NGU3NWE0MmZjOTU2ZGNjODg3ZTUwZTY3MDE4ZDVhNzRjODljMWE4NTU1ZWJmZjRhNGJhZjVi NDkxNmFlYTFkZDk1YzEyNmRmMzkwODgyMTQzOTA4ODIxZWNmNjg1MTFlOTg2YmQzNzljZjA4NzFm ZTFhMjY3OTI0MWIzMzlmMzMxN2Y3NmM2NWRjMmIxMjFlMTVhMGI4ODkxZDljMDEyMGI4YThhMzgz YTFkZDVlYjZmYmQ2NWQyMmEwM2I3OTg3Zjg0M2Q0NTRlNGUxZjA5YjllMmQzN2VmMmJlNzJiN2Y4 YWNjYWRlMzAxYzc3MmY3NGE1ODJhZmFiOTYwZGZhNDNhMTY3Mjc1NzcxZjZhOWJlNWE5ZjI3NWNl YTU1ZTk2NjFhNTRiMWMzMjEwMDQyZjgyNGZlNzgzOTY5ZmE2MGFkMjNiNzQ4YTZiNTYKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjk3ZTc5MzQyMGNlZGExNzMwZGFjODhmMGQ3ZGM1MmQ4 NzEzYTc5YTBiNDhkZGIyYWY0NWRkMTQzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDoxNmRkMGQ2YWNhMzc1N2VlYzZlOWRjM2M0YTVmNTkwY2I3OTExY2QzY2FiYzgwODE1NTI3 YjczYwotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IGMzM2QwOGQ3MDZmZmFjMTgxMWYx NTc1MjZiMDgwODZmCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBiZTdlNjQyOGJlNGZmODYyZTJiOWZlNjlmMDU1 YmJiZWFhNTFiNzY2NmQ1MWUxYWQyZTVmZTEyZTJmN2ExNzExMjExNDczMTE3ODA4NDBlNWQxMzQ1 YzZhMjRlYjNlMmQ3YmFjZThjODhjZGRhZTlhMDYyYzdhYWNjN2FlODdkMzFlZjdkNGM1MmRjMmUz NWYzNjQyNjZjOWMzNGUxZmY3MDNhNjFhOGZiMzkzOTczNDRhYzk0ZTc1YTQyZmM5NTZkY2M4ODdl NTBlNjcwMThkNWE3NGM4OWMxYTg1NTVlYmZmNGE0YmFmNWI0OTE2YWVhMWRkOTVjMTI2ZGYzOTA4 ODIxNDM5MDg4MjFlY2Y2ODUxMWU5ODZiZDM3OWNmMDg3MWZlMWEyNjc5MjQxYjMzOWYzMzE3Zjc2 YzY1ZGMyYjEyMWUxNWEwYjg4OTFkOWMwMTIwYjhhOGEzODNhMWRkNWViNmZiZDY1ZDIyYTAzYjc5 ODdmODQzZDQ1NGU0ZTFmMDliOWUyZDM3ZWYyYmU3MmI3ZjhhY2NhZGUzMDFjNzcyZjc0YTU4MmFm YWI5NjBkZmE0M2ExNjcyNzU3NzFmNmE5YmU1YTlmMjc1Y2VhNTVlOTY2MWE1NGIxYzMyMTAwNDJm ODI0ZmU3ODM5NjlmYTYwYWQyM2I3NDhhNmI1NgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6OTdlNzkzNDIwY2VkYTE3MzBkYWM4OGYwZDdkYzUyZDg3MTNhNzlhMGI0OGRkYjJhZjQ1ZGQx NDMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjE2ZGQwZDZhY2EzNzU3ZWVj NmU5ZGMzYzRhNWY1OTBjYjc5MTFjZDNjYWJjODA4MTU1MjdiNzNjCi0rQ3RybC50eXBlID0gdHlw ZTpECi0rT3V0cHV0ID0gNTc1MGI2MTdiNzFhMjM5ZDk5ZmM0MTI3OTZmNmQ5ODYKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAxMDEwMGJlN2U2NDI4YmU0ZmY4NjJlMmI5ZmU2OWYwNTViYmJlYWE1MWI3NjY2ZDUxZTFhZDJl NWZlMTJlMmY3YTE3MTEyMTE0NzMxMTc4MDg0MGU1ZDEzNDVjNmEyNGViM2UyZDdiYWNlOGM4OGNk ZGFlOWEwNjJjN2FhY2M3YWU4N2QzMWVmN2Q0YzUyZGMyZTM1ZjM2NDI2NmM5YzM0ZTFmZjcwM2E2 MWE4ZmIzOTM5NzM0NGFjOTRlNzVhNDJmYzk1NmRjYzg4N2U1MGU2NzAxOGQ1YTc0Yzg5YzFhODU1 NWViZmY0YTRiYWY1YjQ5MTZhZWExZGQ5NWMxMjZkZjM5MDg4MjE0MzkwODgyMWVjZjY4NTExZTk4 NmJkMzc5Y2YwODcxZmUxYTI2NzkyNDFiMzM5ZjMzMTdmNzZjNjVkYzJiMTIxZTE1YTBiODg5MWQ5 YzAxMjBiOGE4YTM4M2ExZGQ1ZWI2ZmJkNjVkMjJhMDNiNzk4N2Y4NDNkNDU0ZTRlMWYwOWI5ZTJk MzdlZjJiZTcyYjdmOGFjY2FkZTMwMWM3NzJmNzRhNTgyYWZhYjk2MGRmYTQzYTE2NzI3NTc3MWY2 YTliZTVhOWYyNzVjZWE1NWU5NjYxYTU0YjFjMzIxMDA0MmY4MjRmZTc4Mzk2OWZhNjBhZDIzYjc0 OGE2YjU2Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo5N2U3OTM0MjBjZWRhMTczMGRh Yzg4ZjBkN2RjNTJkODcxM2E3OWEwYjQ4ZGRiMmFmNDVkZDE0MwotK0N0cmwuaGV4c2Vzc2lvbl9p ZCA9IGhleHNlc3Npb25faWQ6MTZkZDBkNmFjYTM3NTdlZWM2ZTlkYzNjNGE1ZjU5MGNiNzkxMWNk M2NhYmM4MDgxNTUyN2I3M2MKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA0YzJlZGVl NDY4ODExOWUxNzcyM2ZlZGU5NGQ4MWMxNDFjYjJkZDYzMmRkZTVlMjIzZmNkMTJjMgotKwotK0tE RiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTow MDAwMDEwMTAwYmU3ZTY0MjhiZTRmZjg2MmUyYjlmZTY5ZjA1NWJiYmVhYTUxYjc2NjZkNTFlMWFk MmU1ZmUxMmUyZjdhMTcxMTIxMTQ3MzExNzgwODQwZTVkMTM0NWM2YTI0ZWIzZTJkN2JhY2U4Yzg4 Y2RkYWU5YTA2MmM3YWFjYzdhZTg3ZDMxZWY3ZDRjNTJkYzJlMzVmMzY0MjY2YzljMzRlMWZmNzAz YTYxYThmYjM5Mzk3MzQ0YWM5NGU3NWE0MmZjOTU2ZGNjODg3ZTUwZTY3MDE4ZDVhNzRjODljMWE4 NTU1ZWJmZjRhNGJhZjViNDkxNmFlYTFkZDk1YzEyNmRmMzkwODgyMTQzOTA4ODIxZWNmNjg1MTFl OTg2YmQzNzljZjA4NzFmZTFhMjY3OTI0MWIzMzlmMzMxN2Y3NmM2NWRjMmIxMjFlMTVhMGI4ODkx ZDljMDEyMGI4YThhMzgzYTFkZDVlYjZmYmQ2NWQyMmEwM2I3OTg3Zjg0M2Q0NTRlNGUxZjA5Yjll MmQzN2VmMmJlNzJiN2Y4YWNjYWRlMzAxYzc3MmY3NGE1ODJhZmFiOTYwZGZhNDNhMTY3Mjc1Nzcx ZjZhOWJlNWE5ZjI3NWNlYTU1ZTk2NjFhNTRiMWMzMjEwMDQyZjgyNGZlNzgzOTY5ZmE2MGFkMjNi NzQ4YTZiNTYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjk3ZTc5MzQyMGNlZGExNzMw ZGFjODhmMGQ3ZGM1MmQ4NzEzYTc5YTBiNDhkZGIyYWY0NWRkMTQzCi0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDoxNmRkMGQ2YWNhMzc1N2VlYzZlOWRjM2M0YTVmNTkwY2I3OTEx Y2QzY2FiYzgwODE1NTI3YjczYwotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGI0ODEw M2NkODEzOTdiZWQzYmY2MThiMmVmMzBhNDRlYTgwNmIwYWQwN2FhMDk4YThhMzMyNzNlCi0rCi0r S0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5 OjAwMDAwMTAxMDBjODEwZTM2YjZhZTIzYjJkYWMyMzRmMzZiNGRkZmU4MjA3NjJiNTM0NzhlYWVh MjA1Y2RhYjg0OGMzODRmMmM1ZmUyNjJiYzQ3MTk3MWZmNDJhMWZmOGZkZmZmODFjZGM2NjM3MWE3 NWU5ZmRhNWQ3ZDBiZDY1NjUyMzYwMzI1NWMzZTA5NzA0MzVmOTk1OTQ4ZWM5OGQ4Nzk0MmNlZmUy MTk0ZTQ3NWE1MDdlMjkyOGUwY2ZiYmE2Mzk2MmM3NTc5NGFhNTNlOGEzODVhNWQxNTk5ZDg4ZGQx Njg0YTgyNzkxNGRhNTc2ZjllMDZjYWFlY2M1ODZiYjk4NDI1NjIxYTVhZmFmODYwMDNjYWJlODZm Y2QzOTY0YTM5MGY0NzMwMmJiYmVlODUzNmYyNDAyNGM1YzMxZjAzMWU4MGU2YmNmMmEzZTI0ZDRm MGI2YmQ0MjI1MDk5NmYxMmE4YTVjOTliMDlhNDJhNzM3ZTNjYmY0ODFlMDAyYzMzNGZlM2I3NjI2 NDE5MjY2ZTAwMzYzMzliMTU5MmQzYmY0MzI0NWM0NDlhNjVlNDM5NDZlNjAxMTJjMWY4YWZmODk2 M2ZmNTZlMzY1YzZmNTZjMzZiMjIwOGVhZGY1OTEzNjA1NTRkMmIxMTZkMzM3NDM0MWJkNTc3OWVi Y2RmN2JhOTNkZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZjhhNzg1NGVjMjFmMjUy ZjY3OWI5MjRmMGYzZDM0NjM5ZmU5NzZkZTE0NmRkYjhlOTNjNGU0ZDkKLStDdHJsLmhleHNlc3Np b25faWQgPSBoZXhzZXNzaW9uX2lkOjZiZWJlYTE5NTY0YzBmNjVkZDk2NDQ2NDk2ZjdkN2M3MTk4 YTViMDhiY2RhY2YyOTQ0OTgwOGJhCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gYzhi YzFkMjMyZWRkNjIwZTAyODJhZjYzMGQ1OTZhNmMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1k ID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGM4MTBlMzZiNmFl MjNiMmRhYzIzNGYzNmI0ZGRmZTgyMDc2MmI1MzQ3OGVhZWEyMDVjZGFiODQ4YzM4NGYyYzVmZTI2 MmJjNDcxOTcxZmY0MmExZmY4ZmRmZmY4MWNkYzY2MzcxYTc1ZTlmZGE1ZDdkMGJkNjU2NTIzNjAz MjU1YzNlMDk3MDQzNWY5OTU5NDhlYzk4ZDg3OTQyY2VmZTIxOTRlNDc1YTUwN2UyOTI4ZTBjZmJi YTYzOTYyYzc1Nzk0YWE1M2U4YTM4NWE1ZDE1OTlkODhkZDE2ODRhODI3OTE0ZGE1NzZmOWUwNmNh YWVjYzU4NmJiOTg0MjU2MjFhNWFmYWY4NjAwM2NhYmU4NmZjZDM5NjRhMzkwZjQ3MzAyYmJiZWU4 NTM2ZjI0MDI0YzVjMzFmMDMxZTgwZTZiY2YyYTNlMjRkNGYwYjZiZDQyMjUwOTk2ZjEyYThhNWM5 OWIwOWE0MmE3MzdlM2NiZjQ4MWUwMDJjMzM0ZmUzYjc2MjY0MTkyNjZlMDAzNjMzOWIxNTkyZDNi ZjQzMjQ1YzQ0OWE2NWU0Mzk0NmU2MDExMmMxZjhhZmY4OTYzZmY1NmUzNjVjNmY1NmMzNmIyMjA4 ZWFkZjU5MTM2MDU1NGQyYjExNmQzMzc0MzQxYmQ1Nzc5ZWJjZGY3YmE5M2RlCi0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDpmOGE3ODU0ZWMyMWYyNTJmNjc5YjkyNGYwZjNkMzQ2MzlmZTk3 NmRlMTQ2ZGRiOGU5M2M0ZTRkOQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 NmJlYmVhMTk1NjRjMGY2NWRkOTY0NDY0OTZmN2Q3YzcxOThhNWIwOGJjZGFjZjI5NDQ5ODA4YmEK LStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA2YTkwMjY5YWFiMWEzZTM2MTJlZWM5N2E0 NWRiMTFlMQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhl eGtleSA9IGhleGtleTowMDAwMDEwMTAwYzgxMGUzNmI2YWUyM2IyZGFjMjM0ZjM2YjRkZGZlODIw NzYyYjUzNDc4ZWFlYTIwNWNkYWI4NDhjMzg0ZjJjNWZlMjYyYmM0NzE5NzFmZjQyYTFmZjhmZGZm ZjgxY2RjNjYzNzFhNzVlOWZkYTVkN2QwYmQ2NTY1MjM2MDMyNTVjM2UwOTcwNDM1Zjk5NTk0OGVj OThkODc5NDJjZWZlMjE5NGU0NzVhNTA3ZTI5MjhlMGNmYmJhNjM5NjJjNzU3OTRhYTUzZThhMzg1 YTVkMTU5OWQ4OGRkMTY4NGE4Mjc5MTRkYTU3NmY5ZTA2Y2FhZWNjNTg2YmI5ODQyNTYyMWE1YWZh Zjg2MDAzY2FiZTg2ZmNkMzk2NGEzOTBmNDczMDJiYmJlZTg1MzZmMjQwMjRjNWMzMWYwMzFlODBl NmJjZjJhM2UyNGQ0ZjBiNmJkNDIyNTA5OTZmMTJhOGE1Yzk5YjA5YTQyYTczN2UzY2JmNDgxZTAw MmMzMzRmZTNiNzYyNjQxOTI2NmUwMDM2MzM5YjE1OTJkM2JmNDMyNDVjNDQ5YTY1ZTQzOTQ2ZTYw MTEyYzFmOGFmZjg5NjNmZjU2ZTM2NWM2ZjU2YzM2YjIyMDhlYWRmNTkxMzYwNTU0ZDJiMTE2ZDMz NzQzNDFiZDU3NzllYmNkZjdiYTkzZGUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmY4 YTc4NTRlYzIxZjI1MmY2NzliOTI0ZjBmM2QzNDYzOWZlOTc2ZGUxNDZkZGI4ZTkzYzRlNGQ5Ci0r Q3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo2YmViZWExOTU2NGMwZjY1ZGQ5NjQ0 NjQ5NmY3ZDdjNzE5OGE1YjA4YmNkYWNmMjk0NDk4MDhiYQotK0N0cmwudHlwZSA9IHR5cGU6Qwot K091dHB1dCA9IGViYjhhNjIyN2U3ODlkMzNmYTA3MjM1NWNiMjg1MWFjCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAx MDBjODEwZTM2YjZhZTIzYjJkYWMyMzRmMzZiNGRkZmU4MjA3NjJiNTM0NzhlYWVhMjA1Y2RhYjg0 OGMzODRmMmM1ZmUyNjJiYzQ3MTk3MWZmNDJhMWZmOGZkZmZmODFjZGM2NjM3MWE3NWU5ZmRhNWQ3 ZDBiZDY1NjUyMzYwMzI1NWMzZTA5NzA0MzVmOTk1OTQ4ZWM5OGQ4Nzk0MmNlZmUyMTk0ZTQ3NWE1 MDdlMjkyOGUwY2ZiYmE2Mzk2MmM3NTc5NGFhNTNlOGEzODVhNWQxNTk5ZDg4ZGQxNjg0YTgyNzkx NGRhNTc2ZjllMDZjYWFlY2M1ODZiYjk4NDI1NjIxYTVhZmFmODYwMDNjYWJlODZmY2QzOTY0YTM5 MGY0NzMwMmJiYmVlODUzNmYyNDAyNGM1YzMxZjAzMWU4MGU2YmNmMmEzZTI0ZDRmMGI2YmQ0MjI1 MDk5NmYxMmE4YTVjOTliMDlhNDJhNzM3ZTNjYmY0ODFlMDAyYzMzNGZlM2I3NjI2NDE5MjY2ZTAw MzYzMzliMTU5MmQzYmY0MzI0NWM0NDlhNjVlNDM5NDZlNjAxMTJjMWY4YWZmODk2M2ZmNTZlMzY1 YzZmNTZjMzZiMjIwOGVhZGY1OTEzNjA1NTRkMmIxMTZkMzM3NDM0MWJkNTc3OWViY2RmN2JhOTNk ZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZjhhNzg1NGVjMjFmMjUyZjY3OWI5MjRm MGYzZDM0NjM5ZmU5NzZkZTE0NmRkYjhlOTNjNGU0ZDkKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOjZiZWJlYTE5NTY0YzBmNjVkZDk2NDQ2NDk2ZjdkN2M3MTk4YTViMDhiY2Rh Y2YyOTQ0OTgwOGJhCi0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gOTY2MmZmNzNiMTFi ZDI5NzhmZmNlYjc1NDVmNjA1NGUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hB MjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGM4MTBlMzZiNmFlMjNiMmRhYzIz NGYzNmI0ZGRmZTgyMDc2MmI1MzQ3OGVhZWEyMDVjZGFiODQ4YzM4NGYyYzVmZTI2MmJjNDcxOTcx ZmY0MmExZmY4ZmRmZmY4MWNkYzY2MzcxYTc1ZTlmZGE1ZDdkMGJkNjU2NTIzNjAzMjU1YzNlMDk3 MDQzNWY5OTU5NDhlYzk4ZDg3OTQyY2VmZTIxOTRlNDc1YTUwN2UyOTI4ZTBjZmJiYTYzOTYyYzc1 Nzk0YWE1M2U4YTM4NWE1ZDE1OTlkODhkZDE2ODRhODI3OTE0ZGE1NzZmOWUwNmNhYWVjYzU4NmJi OTg0MjU2MjFhNWFmYWY4NjAwM2NhYmU4NmZjZDM5NjRhMzkwZjQ3MzAyYmJiZWU4NTM2ZjI0MDI0 YzVjMzFmMDMxZTgwZTZiY2YyYTNlMjRkNGYwYjZiZDQyMjUwOTk2ZjEyYThhNWM5OWIwOWE0MmE3 MzdlM2NiZjQ4MWUwMDJjMzM0ZmUzYjc2MjY0MTkyNjZlMDAzNjMzOWIxNTkyZDNiZjQzMjQ1YzQ0 OWE2NWU0Mzk0NmU2MDExMmMxZjhhZmY4OTYzZmY1NmUzNjVjNmY1NmMzNmIyMjA4ZWFkZjU5MTM2 MDU1NGQyYjExNmQzMzc0MzQxYmQ1Nzc5ZWJjZGY3YmE5M2RlCi0rQ3RybC5oZXh4Y2doYXNoID0g aGV4eGNnaGFzaDpmOGE3ODU0ZWMyMWYyNTJmNjc5YjkyNGYwZjNkMzQ2MzlmZTk3NmRlMTQ2ZGRi OGU5M2M0ZTRkOQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NmJlYmVhMTk1 NjRjMGY2NWRkOTY0NDY0OTZmN2Q3YzcxOThhNWIwOGJjZGFjZjI5NDQ5ODA4YmEKLStDdHJsLnR5 cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA5ZWIzNWY5YThhNjE1NWI4MWI4ZGRhMTE3ZjVkNjMxY2M0 ZWRkZWE0YjQ5MTIxNDc1MTNiYzRlYwotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpT SEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwYzgxMGUzNmI2YWUyM2IyZGFj MjM0ZjM2YjRkZGZlODIwNzYyYjUzNDc4ZWFlYTIwNWNkYWI4NDhjMzg0ZjJjNWZlMjYyYmM0NzE5 NzFmZjQyYTFmZjhmZGZmZjgxY2RjNjYzNzFhNzVlOWZkYTVkN2QwYmQ2NTY1MjM2MDMyNTVjM2Uw OTcwNDM1Zjk5NTk0OGVjOThkODc5NDJjZWZlMjE5NGU0NzVhNTA3ZTI5MjhlMGNmYmJhNjM5NjJj NzU3OTRhYTUzZThhMzg1YTVkMTU5OWQ4OGRkMTY4NGE4Mjc5MTRkYTU3NmY5ZTA2Y2FhZWNjNTg2 YmI5ODQyNTYyMWE1YWZhZjg2MDAzY2FiZTg2ZmNkMzk2NGEzOTBmNDczMDJiYmJlZTg1MzZmMjQw MjRjNWMzMWYwMzFlODBlNmJjZjJhM2UyNGQ0ZjBiNmJkNDIyNTA5OTZmMTJhOGE1Yzk5YjA5YTQy YTczN2UzY2JmNDgxZTAwMmMzMzRmZTNiNzYyNjQxOTI2NmUwMDM2MzM5YjE1OTJkM2JmNDMyNDVj NDQ5YTY1ZTQzOTQ2ZTYwMTEyYzFmOGFmZjg5NjNmZjU2ZTM2NWM2ZjU2YzM2YjIyMDhlYWRmNTkx MzYwNTU0ZDJiMTE2ZDMzNzQzNDFiZDU3NzllYmNkZjdiYTkzZGUKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOmY4YTc4NTRlYzIxZjI1MmY2NzliOTI0ZjBmM2QzNDYzOWZlOTc2ZGUxNDZk ZGI4ZTkzYzRlNGQ5Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo2YmViZWEx OTU2NGMwZjY1ZGQ5NjQ0NjQ5NmY3ZDdjNzE5OGE1YjA4YmNkYWNmMjk0NDk4MDhiYQotK0N0cmwu dHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDNlMTM3ZTAxNTk3M2UyMWMzN2E4ZGU4MWNjODEyNjgz ZDUwNmZjMzU2OTkxMTRiMzFjMDY3OTdlCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDA5NDBhMzUzNWI4NzZhOTAy MTAyMzZmODU3MWUyMGNiMDRkMjg3YWU3MjE3Yjk1ZDc1YzQxNzBlOGFmZWE0ZDI5MGJjNDFlNzM2 Y2RkMWI0NzBiMDJjZThiNzRjYTRjZGFhMTIxYmJiM2IzMWRmM2YyYzg0NzQ1NWVmMjFiNjFlMGM5 NjZiZGI4Y2Y1OGZiOTQ4MTkxMDhjN2ZlYjk1NTFjNWRjYWNjMzdmZWM1ZmU0ZTlhNTk4MThlOTNl ZDA4ZjM0Nzc2MzJjNjIzMDRmYjJiYTA1ZjdmYTg2MTE5NzBhZGIzOTM3OWFiNzE1OWJhYTM3MzFm YjFmY2ViYTIwMWExODU4NjM1YjkyZDkzOGIxOTVhNDQ2MTJmZmRkYWMzZjJiNWRiNTliNDdjOWY5 MGI2NmU3NmIzZTkwMTg4N2IyNzMxMmUxMDQzYjAwMGI1ZmYyMWQ0ZmZmNGI1ZmMwNjIwMzQwMzM4 N2ZlMjg4MzdjNGQzNjdkYmUyYzczZTFlYzVjNGU4NjdjYzk5ZGNhMmJmODE3MWFhZDE0OThiMzdi ZjBkMTdlNWZkNjRlNDExMzg2ZGY3MjY2N2Q4MjRlNDUxNDUzMGNmNjAyMWNhODg4MDE1NDIxMjg4 NGY1ZmRiNDRhMGM4NzQ1YTQwNDk5NzFkZTM3MGViMzFjOTU5ZGFjNAotK0N0cmwuaGV4eGNnaGFz aCA9IGhleHhjZ2hhc2g6NDY4OGFhOWJjZWIzNmRkYWI5MzM2NzVlNjk2MzM1N2IyYmQwZGFhNWUx OTg0YTA2ZmM3ZjNmZjMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmZiNzJi Y2EyNmU2MTU3NzA2NmQ3YzUwOTNhYzkyODFmY2YwNmFlMzI1MGI0MzIyOGIwNjdiODZlCi0rQ3Ry bC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gY2MyMmE3MzBjMTVhYmY5NjI4Zjc0OWZhYzlkM2Y5 MzUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAxMDEwMDk0MGEzNTM1Yjg3NmE5MDIxMDIzNmY4NTcxZTIwY2IwNGQyODdh ZTcyMTdiOTVkNzVjNDE3MGU4YWZlYTRkMjkwYmM0MWU3MzZjZGQxYjQ3MGIwMmNlOGI3NGNhNGNk YWExMjFiYmIzYjMxZGYzZjJjODQ3NDU1ZWYyMWI2MWUwYzk2NmJkYjhjZjU4ZmI5NDgxOTEwOGM3 ZmViOTU1MWM1ZGNhY2MzN2ZlYzVmZTRlOWE1OTgxOGU5M2VkMDhmMzQ3NzYzMmM2MjMwNGZiMmJh MDVmN2ZhODYxMTk3MGFkYjM5Mzc5YWI3MTU5YmFhMzczMWZiMWZjZWJhMjAxYTE4NTg2MzViOTJk OTM4YjE5NWE0NDYxMmZmZGRhYzNmMmI1ZGI1OWI0N2M5ZjkwYjY2ZTc2YjNlOTAxODg3YjI3MzEy ZTEwNDNiMDAwYjVmZjIxZDRmZmY0YjVmYzA2MjAzNDAzMzg3ZmUyODgzN2M0ZDM2N2RiZTJjNzNl MWVjNWM0ZTg2N2NjOTlkY2EyYmY4MTcxYWFkMTQ5OGIzN2JmMGQxN2U1ZmQ2NGU0MTEzODZkZjcy NjY3ZDgyNGU0NTE0NTMwY2Y2MDIxY2E4ODgwMTU0MjEyODg0ZjVmZGI0NGEwYzg3NDVhNDA0OTk3 MWRlMzcwZWIzMWM5NTlkYWM0Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0Njg4YWE5 YmNlYjM2ZGRhYjkzMzY3NWU2OTYzMzU3YjJiZDBkYWE1ZTE5ODRhMDZmYzdmM2ZmMwotK0N0cmwu aGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZmI3MmJjYTI2ZTYxNTc3MDY2ZDdjNTA5M2Fj OTI4MWZjZjA2YWUzMjUwYjQzMjI4YjA2N2I4NmUKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRw dXQgPSAxODhjNDc3MDYxYTU5NzM4NGIxZDFlNDE3ZGMwNGY3ZAotKwotK0tERiA9IFNTSEtERgot K0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwOTQw YTM1MzViODc2YTkwMjEwMjM2Zjg1NzFlMjBjYjA0ZDI4N2FlNzIxN2I5NWQ3NWM0MTcwZThhZmVh NGQyOTBiYzQxZTczNmNkZDFiNDcwYjAyY2U4Yjc0Y2E0Y2RhYTEyMWJiYjNiMzFkZjNmMmM4NDc0 NTVlZjIxYjYxZTBjOTY2YmRiOGNmNThmYjk0ODE5MTA4YzdmZWI5NTUxYzVkY2FjYzM3ZmVjNWZl NGU5YTU5ODE4ZTkzZWQwOGYzNDc3NjMyYzYyMzA0ZmIyYmEwNWY3ZmE4NjExOTcwYWRiMzkzNzlh YjcxNTliYWEzNzMxZmIxZmNlYmEyMDFhMTg1ODYzNWI5MmQ5MzhiMTk1YTQ0NjEyZmZkZGFjM2Yy YjVkYjU5YjQ3YzlmOTBiNjZlNzZiM2U5MDE4ODdiMjczMTJlMTA0M2IwMDBiNWZmMjFkNGZmZjRi NWZjMDYyMDM0MDMzODdmZTI4ODM3YzRkMzY3ZGJlMmM3M2UxZWM1YzRlODY3Y2M5OWRjYTJiZjgx NzFhYWQxNDk4YjM3YmYwZDE3ZTVmZDY0ZTQxMTM4NmRmNzI2NjdkODI0ZTQ1MTQ1MzBjZjYwMjFj YTg4ODAxNTQyMTI4ODRmNWZkYjQ0YTBjODc0NWE0MDQ5OTcxZGUzNzBlYjMxYzk1OWRhYzQKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjQ2ODhhYTliY2ViMzZkZGFiOTMzNjc1ZTY5NjMz NTdiMmJkMGRhYTVlMTk4NGEwNmZjN2YzZmYzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDpmYjcyYmNhMjZlNjE1NzcwNjZkN2M1MDkzYWM5MjgxZmNmMDZhZTMyNTBiNDMyMjhi MDY3Yjg2ZQotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IGIzMDk3NjBkZDlmMGQ2NWM2 ZWRjZGVlM2EzNDU3YzMzCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDA5NDBhMzUzNWI4NzZhOTAyMTAyMzZmODU3 MWUyMGNiMDRkMjg3YWU3MjE3Yjk1ZDc1YzQxNzBlOGFmZWE0ZDI5MGJjNDFlNzM2Y2RkMWI0NzBi MDJjZThiNzRjYTRjZGFhMTIxYmJiM2IzMWRmM2YyYzg0NzQ1NWVmMjFiNjFlMGM5NjZiZGI4Y2Y1 OGZiOTQ4MTkxMDhjN2ZlYjk1NTFjNWRjYWNjMzdmZWM1ZmU0ZTlhNTk4MThlOTNlZDA4ZjM0Nzc2 MzJjNjIzMDRmYjJiYTA1ZjdmYTg2MTE5NzBhZGIzOTM3OWFiNzE1OWJhYTM3MzFmYjFmY2ViYTIw MWExODU4NjM1YjkyZDkzOGIxOTVhNDQ2MTJmZmRkYWMzZjJiNWRiNTliNDdjOWY5MGI2NmU3NmIz ZTkwMTg4N2IyNzMxMmUxMDQzYjAwMGI1ZmYyMWQ0ZmZmNGI1ZmMwNjIwMzQwMzM4N2ZlMjg4Mzdj NGQzNjdkYmUyYzczZTFlYzVjNGU4NjdjYzk5ZGNhMmJmODE3MWFhZDE0OThiMzdiZjBkMTdlNWZk NjRlNDExMzg2ZGY3MjY2N2Q4MjRlNDUxNDUzMGNmNjAyMWNhODg4MDE1NDIxMjg4NGY1ZmRiNDRh MGM4NzQ1YTQwNDk5NzFkZTM3MGViMzFjOTU5ZGFjNAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6NDY4OGFhOWJjZWIzNmRkYWI5MzM2NzVlNjk2MzM1N2IyYmQwZGFhNWUxOTg0YTA2ZmM3 ZjNmZjMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmZiNzJiY2EyNmU2MTU3 NzA2NmQ3YzUwOTNhYzkyODFmY2YwNmFlMzI1MGI0MzIyOGIwNjdiODZlCi0rQ3RybC50eXBlID0g dHlwZTpECi0rT3V0cHV0ID0gMWI4Njc0ZjYwM2E3OGYxNmZiOTc5ZDZkYjcwZjY3OTUKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6 MDAwMDAxMDEwMDk0MGEzNTM1Yjg3NmE5MDIxMDIzNmY4NTcxZTIwY2IwNGQyODdhZTcyMTdiOTVk NzVjNDE3MGU4YWZlYTRkMjkwYmM0MWU3MzZjZGQxYjQ3MGIwMmNlOGI3NGNhNGNkYWExMjFiYmIz YjMxZGYzZjJjODQ3NDU1ZWYyMWI2MWUwYzk2NmJkYjhjZjU4ZmI5NDgxOTEwOGM3ZmViOTU1MWM1 ZGNhY2MzN2ZlYzVmZTRlOWE1OTgxOGU5M2VkMDhmMzQ3NzYzMmM2MjMwNGZiMmJhMDVmN2ZhODYx MTk3MGFkYjM5Mzc5YWI3MTU5YmFhMzczMWZiMWZjZWJhMjAxYTE4NTg2MzViOTJkOTM4YjE5NWE0 NDYxMmZmZGRhYzNmMmI1ZGI1OWI0N2M5ZjkwYjY2ZTc2YjNlOTAxODg3YjI3MzEyZTEwNDNiMDAw YjVmZjIxZDRmZmY0YjVmYzA2MjAzNDAzMzg3ZmUyODgzN2M0ZDM2N2RiZTJjNzNlMWVjNWM0ZTg2 N2NjOTlkY2EyYmY4MTcxYWFkMTQ5OGIzN2JmMGQxN2U1ZmQ2NGU0MTEzODZkZjcyNjY3ZDgyNGU0 NTE0NTMwY2Y2MDIxY2E4ODgwMTU0MjEyODg0ZjVmZGI0NGEwYzg3NDVhNDA0OTk3MWRlMzcwZWIz MWM5NTlkYWM0Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0Njg4YWE5YmNlYjM2ZGRh YjkzMzY3NWU2OTYzMzU3YjJiZDBkYWE1ZTE5ODRhMDZmYzdmM2ZmMwotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6ZmI3MmJjYTI2ZTYxNTc3MDY2ZDdjNTA5M2FjOTI4MWZjZjA2 YWUzMjUwYjQzMjI4YjA2N2I4NmUKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSBkODgx YWMwY2Y2MmVjZmYyZWI3ZDNjODI4NGNmZDRiOTVlMDAzYzQzNWY2YTMxMjFhYjBjNjViMAotKwot K0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDEwMTAwOTQwYTM1MzViODc2YTkwMjEwMjM2Zjg1NzFlMjBjYjA0ZDI4N2FlNzIxN2I5 NWQ3NWM0MTcwZThhZmVhNGQyOTBiYzQxZTczNmNkZDFiNDcwYjAyY2U4Yjc0Y2E0Y2RhYTEyMWJi YjNiMzFkZjNmMmM4NDc0NTVlZjIxYjYxZTBjOTY2YmRiOGNmNThmYjk0ODE5MTA4YzdmZWI5NTUx YzVkY2FjYzM3ZmVjNWZlNGU5YTU5ODE4ZTkzZWQwOGYzNDc3NjMyYzYyMzA0ZmIyYmEwNWY3ZmE4 NjExOTcwYWRiMzkzNzlhYjcxNTliYWEzNzMxZmIxZmNlYmEyMDFhMTg1ODYzNWI5MmQ5MzhiMTk1 YTQ0NjEyZmZkZGFjM2YyYjVkYjU5YjQ3YzlmOTBiNjZlNzZiM2U5MDE4ODdiMjczMTJlMTA0M2Iw MDBiNWZmMjFkNGZmZjRiNWZjMDYyMDM0MDMzODdmZTI4ODM3YzRkMzY3ZGJlMmM3M2UxZWM1YzRl ODY3Y2M5OWRjYTJiZjgxNzFhYWQxNDk4YjM3YmYwZDE3ZTVmZDY0ZTQxMTM4NmRmNzI2NjdkODI0 ZTQ1MTQ1MzBjZjYwMjFjYTg4ODAxNTQyMTI4ODRmNWZkYjQ0YTBjODc0NWE0MDQ5OTcxZGUzNzBl YjMxYzk1OWRhYzQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjQ2ODhhYTliY2ViMzZk ZGFiOTMzNjc1ZTY5NjMzNTdiMmJkMGRhYTVlMTk4NGEwNmZjN2YzZmYzCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpmYjcyYmNhMjZlNjE1NzcwNjZkN2M1MDkzYWM5MjgxZmNm MDZhZTMyNTBiNDMyMjhiMDY3Yjg2ZQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDlh NzU2MGU3OTc2YzdmYjAxNTNmYzk0ZTUxYTdkZWFkM2I3Zjg5NTRkMWVmYTdlZDZiZTc3ODU4Ci0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMTAwNGI5ZjU1ZjE3ZGU2MzRlZGIzOTIxOGIzMGYyMjRhZThlYzY0ZWRkNmUwYzQ5 ZGQwMGE1MmFjMTFlMGE0MDg5Y2NmZjkzMTgzOGNlNWMwMmY0NDlmZmUzM2MxNGZkMGE5ZjExZGE3 ZDc4Mzc4N2EwM2RlZmM3OTMxY2U2MzhhMzFhYTExZGRjNDM1MWU1NDQ4MGJlYTYzNzg1N2NhZTZj ZjMwZTAzZDM5MjczN2ZlMmIzZjIzNDExNTkwM2FiNDNmOTdkNGZkYjQ5ZmI5ODc2NTA2MTBkOWEw Y2E1MWI3MDgzOWQwZmM5OTgwZGUzNzFhY2M3OGFjNmVhZjVmNWFjNTAwOGVlYzBmNWFlZGQwZjk1 NDk2ZjI3ZDI4NTg0NzdmYzU0ZDMxMTNmZTc4ODQwNDc1OTZkNTcwNWQxZGQ5NzQ4NzU4NzJmYzdj OTExMWJkYzVkYTczYjMxNzMzMWM1NDNmNjA2ODdmYzFlY2IzZjM4NTM3ODdhNjRmZDk0MzM1YjU3 MGE5OWZlMjU0NGFjZGU0OWY5OWI5NmVmNDczZGJjYjE2MzE1YjllN2VlOGMzYTIwZmViMzY2MzZj MWZhMzk1NjdjMmVmZDJiNzgyN2UzOGFiMzE2MDdmNmEzY2ZmMWZjN2VkZjg2MTIzODBlNGFmOTNj NjIwYmNkNmFjMzYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjBkMThkMDY5MjI1ZDBk YjgxYjhiYjk3OTYzNWRjOWU4OTk5OWE3NGFkNmIwMjAyMjE4OTE1MGZkCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxZjQyYWE3YTI0MGQ4YjQxMmZjMjZiZDE4Zjg1ZWJlZmU1 OTY0MWQxOWExZTVlMzY4MTU2MGEyYwotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IGI4 NDJlMjkwMGE4YzFmN2Q3YzNmYTQ2NWQ0NjE0MmZhCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNGI5ZjU1ZjE3ZGU2 MzRlZGIzOTIxOGIzMGYyMjRhZThlYzY0ZWRkNmUwYzQ5ZGQwMGE1MmFjMTFlMGE0MDg5Y2NmZjkz MTgzOGNlNWMwMmY0NDlmZmUzM2MxNGZkMGE5ZjExZGE3ZDc4Mzc4N2EwM2RlZmM3OTMxY2U2Mzhh MzFhYTExZGRjNDM1MWU1NDQ4MGJlYTYzNzg1N2NhZTZjZjMwZTAzZDM5MjczN2ZlMmIzZjIzNDEx NTkwM2FiNDNmOTdkNGZkYjQ5ZmI5ODc2NTA2MTBkOWEwY2E1MWI3MDgzOWQwZmM5OTgwZGUzNzFh Y2M3OGFjNmVhZjVmNWFjNTAwOGVlYzBmNWFlZGQwZjk1NDk2ZjI3ZDI4NTg0NzdmYzU0ZDMxMTNm ZTc4ODQwNDc1OTZkNTcwNWQxZGQ5NzQ4NzU4NzJmYzdjOTExMWJkYzVkYTczYjMxNzMzMWM1NDNm NjA2ODdmYzFlY2IzZjM4NTM3ODdhNjRmZDk0MzM1YjU3MGE5OWZlMjU0NGFjZGU0OWY5OWI5NmVm NDczZGJjYjE2MzE1YjllN2VlOGMzYTIwZmViMzY2MzZjMWZhMzk1NjdjMmVmZDJiNzgyN2UzOGFi MzE2MDdmNmEzY2ZmMWZjN2VkZjg2MTIzODBlNGFmOTNjNjIwYmNkNmFjMzYKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjBkMThkMDY5MjI1ZDBkYjgxYjhiYjk3OTYzNWRjOWU4OTk5OWE3 NGFkNmIwMjAyMjE4OTE1MGZkCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDox ZjQyYWE3YTI0MGQ4YjQxMmZjMjZiZDE4Zjg1ZWJlZmU1OTY0MWQxOWExZTVlMzY4MTU2MGEyYwot K0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDVlOTZmNzcxYzE3NmZhZmQxOGQ0YWEwYmMw N2RjNWQ1Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMTAwNGI5ZjU1ZjE3ZGU2MzRlZGIzOTIxOGIzMGYyMjRhZThlYzY0 ZWRkNmUwYzQ5ZGQwMGE1MmFjMTFlMGE0MDg5Y2NmZjkzMTgzOGNlNWMwMmY0NDlmZmUzM2MxNGZk MGE5ZjExZGE3ZDc4Mzc4N2EwM2RlZmM3OTMxY2U2MzhhMzFhYTExZGRjNDM1MWU1NDQ4MGJlYTYz Nzg1N2NhZTZjZjMwZTAzZDM5MjczN2ZlMmIzZjIzNDExNTkwM2FiNDNmOTdkNGZkYjQ5ZmI5ODc2 NTA2MTBkOWEwY2E1MWI3MDgzOWQwZmM5OTgwZGUzNzFhY2M3OGFjNmVhZjVmNWFjNTAwOGVlYzBm NWFlZGQwZjk1NDk2ZjI3ZDI4NTg0NzdmYzU0ZDMxMTNmZTc4ODQwNDc1OTZkNTcwNWQxZGQ5NzQ4 NzU4NzJmYzdjOTExMWJkYzVkYTczYjMxNzMzMWM1NDNmNjA2ODdmYzFlY2IzZjM4NTM3ODdhNjRm ZDk0MzM1YjU3MGE5OWZlMjU0NGFjZGU0OWY5OWI5NmVmNDczZGJjYjE2MzE1YjllN2VlOGMzYTIw ZmViMzY2MzZjMWZhMzk1NjdjMmVmZDJiNzgyN2UzOGFiMzE2MDdmNmEzY2ZmMWZjN2VkZjg2MTIz ODBlNGFmOTNjNjIwYmNkNmFjMzYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjBkMThk MDY5MjI1ZDBkYjgxYjhiYjk3OTYzNWRjOWU4OTk5OWE3NGFkNmIwMjAyMjE4OTE1MGZkCi0rQ3Ry bC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxZjQyYWE3YTI0MGQ4YjQxMmZjMjZiZDE4 Zjg1ZWJlZmU1OTY0MWQxOWExZTVlMzY4MTU2MGEyYwotK0N0cmwudHlwZSA9IHR5cGU6QwotK091 dHB1dCA9IGZlNWZjYTBhMDNlNmY4YWM5NWJhNGU4ODJjNjRmYjhjCi0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNGI5 ZjU1ZjE3ZGU2MzRlZGIzOTIxOGIzMGYyMjRhZThlYzY0ZWRkNmUwYzQ5ZGQwMGE1MmFjMTFlMGE0 MDg5Y2NmZjkzMTgzOGNlNWMwMmY0NDlmZmUzM2MxNGZkMGE5ZjExZGE3ZDc4Mzc4N2EwM2RlZmM3 OTMxY2U2MzhhMzFhYTExZGRjNDM1MWU1NDQ4MGJlYTYzNzg1N2NhZTZjZjMwZTAzZDM5MjczN2Zl MmIzZjIzNDExNTkwM2FiNDNmOTdkNGZkYjQ5ZmI5ODc2NTA2MTBkOWEwY2E1MWI3MDgzOWQwZmM5 OTgwZGUzNzFhY2M3OGFjNmVhZjVmNWFjNTAwOGVlYzBmNWFlZGQwZjk1NDk2ZjI3ZDI4NTg0Nzdm YzU0ZDMxMTNmZTc4ODQwNDc1OTZkNTcwNWQxZGQ5NzQ4NzU4NzJmYzdjOTExMWJkYzVkYTczYjMx NzMzMWM1NDNmNjA2ODdmYzFlY2IzZjM4NTM3ODdhNjRmZDk0MzM1YjU3MGE5OWZlMjU0NGFjZGU0 OWY5OWI5NmVmNDczZGJjYjE2MzE1YjllN2VlOGMzYTIwZmViMzY2MzZjMWZhMzk1NjdjMmVmZDJi NzgyN2UzOGFiMzE2MDdmNmEzY2ZmMWZjN2VkZjg2MTIzODBlNGFmOTNjNjIwYmNkNmFjMzYKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjBkMThkMDY5MjI1ZDBkYjgxYjhiYjk3OTYzNWRj OWU4OTk5OWE3NGFkNmIwMjAyMjE4OTE1MGZkCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDoxZjQyYWE3YTI0MGQ4YjQxMmZjMjZiZDE4Zjg1ZWJlZmU1OTY0MWQxOWExZTVlMzY4 MTU2MGEyYwotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGI5NTJiNGU2ZjIwMTBlYmRh YzdlZTEwYWRiOTBmOWVmCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNGI5ZjU1ZjE3ZGU2MzRlZGIzOTIxOGIzMGYy MjRhZThlYzY0ZWRkNmUwYzQ5ZGQwMGE1MmFjMTFlMGE0MDg5Y2NmZjkzMTgzOGNlNWMwMmY0NDlm ZmUzM2MxNGZkMGE5ZjExZGE3ZDc4Mzc4N2EwM2RlZmM3OTMxY2U2MzhhMzFhYTExZGRjNDM1MWU1 NDQ4MGJlYTYzNzg1N2NhZTZjZjMwZTAzZDM5MjczN2ZlMmIzZjIzNDExNTkwM2FiNDNmOTdkNGZk YjQ5ZmI5ODc2NTA2MTBkOWEwY2E1MWI3MDgzOWQwZmM5OTgwZGUzNzFhY2M3OGFjNmVhZjVmNWFj NTAwOGVlYzBmNWFlZGQwZjk1NDk2ZjI3ZDI4NTg0NzdmYzU0ZDMxMTNmZTc4ODQwNDc1OTZkNTcw NWQxZGQ5NzQ4NzU4NzJmYzdjOTExMWJkYzVkYTczYjMxNzMzMWM1NDNmNjA2ODdmYzFlY2IzZjM4 NTM3ODdhNjRmZDk0MzM1YjU3MGE5OWZlMjU0NGFjZGU0OWY5OWI5NmVmNDczZGJjYjE2MzE1Yjll N2VlOGMzYTIwZmViMzY2MzZjMWZhMzk1NjdjMmVmZDJiNzgyN2UzOGFiMzE2MDdmNmEzY2ZmMWZj N2VkZjg2MTIzODBlNGFmOTNjNjIwYmNkNmFjMzYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2do YXNoOjBkMThkMDY5MjI1ZDBkYjgxYjhiYjk3OTYzNWRjOWU4OTk5OWE3NGFkNmIwMjAyMjE4OTE1 MGZkCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxZjQyYWE3YTI0MGQ4YjQx MmZjMjZiZDE4Zjg1ZWJlZmU1OTY0MWQxOWExZTVlMzY4MTU2MGEyYwotK0N0cmwudHlwZSA9IHR5 cGU6RQotK091dHB1dCA9IDgxOWRiOTMwNTA3YzFmOGUxNjE3ZGM3NGU3OGRlOWY0YWJiMDJiNzA4 OWQ3NjRjYjIwZDE0YzU2Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNGI5ZjU1ZjE3ZGU2MzRlZGIzOTIxOGIzMGYy MjRhZThlYzY0ZWRkNmUwYzQ5ZGQwMGE1MmFjMTFlMGE0MDg5Y2NmZjkzMTgzOGNlNWMwMmY0NDlm ZmUzM2MxNGZkMGE5ZjExZGE3ZDc4Mzc4N2EwM2RlZmM3OTMxY2U2MzhhMzFhYTExZGRjNDM1MWU1 NDQ4MGJlYTYzNzg1N2NhZTZjZjMwZTAzZDM5MjczN2ZlMmIzZjIzNDExNTkwM2FiNDNmOTdkNGZk YjQ5ZmI5ODc2NTA2MTBkOWEwY2E1MWI3MDgzOWQwZmM5OTgwZGUzNzFhY2M3OGFjNmVhZjVmNWFj NTAwOGVlYzBmNWFlZGQwZjk1NDk2ZjI3ZDI4NTg0NzdmYzU0ZDMxMTNmZTc4ODQwNDc1OTZkNTcw NWQxZGQ5NzQ4NzU4NzJmYzdjOTExMWJkYzVkYTczYjMxNzMzMWM1NDNmNjA2ODdmYzFlY2IzZjM4 NTM3ODdhNjRmZDk0MzM1YjU3MGE5OWZlMjU0NGFjZGU0OWY5OWI5NmVmNDczZGJjYjE2MzE1Yjll N2VlOGMzYTIwZmViMzY2MzZjMWZhMzk1NjdjMmVmZDJiNzgyN2UzOGFiMzE2MDdmNmEzY2ZmMWZj N2VkZjg2MTIzODBlNGFmOTNjNjIwYmNkNmFjMzYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2do YXNoOjBkMThkMDY5MjI1ZDBkYjgxYjhiYjk3OTYzNWRjOWU4OTk5OWE3NGFkNmIwMjAyMjE4OTE1 MGZkCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxZjQyYWE3YTI0MGQ4YjQx MmZjMjZiZDE4Zjg1ZWJlZmU1OTY0MWQxOWExZTVlMzY4MTU2MGEyYwotK0N0cmwudHlwZSA9IHR5 cGU6RgotK091dHB1dCA9IDc5YmUxZWM2Y2U3MjJlOThiY2E1MGEyNWJiY2E1ODEzMThiNjIyN2M5 ZmQzNDZkNjc2MDI5NThmCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBhMDIxNmU3MzAwN2MxYjUzZGJhMThhY2I1 NTkyZWE2OGFiNzcxOWQ5ZmQyZjI0YWYzZTI5NjgwMjQ5MzNhNWU2OGZjYjFhYThiMTg3ZjQyOTcy ODE1ZjEyZDVmOTk1YzE1ZDJkM2VhYjg0Y2ZiODY5ZGI0MTNkY2IzMjhkMDQ1ZGYyMzY0NmU2NTE3 OWE1M2UzY2JlMWJhYmNkNmU2YTVlMzAwZTMzYmUxZjVlZDVkN2ViMTY2MWEwYWU2ZDhlNmRkOGYx NTZlZWQ3MjZiMzBkZjZiOWVlZTdlOTQ1NzE4OWIxNDBkZTc2NzFhMWM3NzkwOTM4NjE3ZTFiYzk1 YjhlZThiYjkyMjlmOThiZTE1OGE1NjliY2I3OTk4NjljNDQ1NDg0ZDMwZDYwMTlkYjQ0ZDk3ZGNm ZDliNDdmNWEzNjQxOGUzZDVlYzg4MDM3YzE3MjEwNGQ0NGFjNmU3NzBjYmVjNDE1ZmJmY2U4YWM5 MjU3MDc0Y2E1ZmUwMDNhNDgzNjAwMWM4MzMxZjE4NDVjMTA2OWQwNjEwYTYyMzc4ZTFjMzJhZTUx MmZmYTIyMDMyZjI4MjQ1ZWU3YWU5NTczNDhhNDg0YmVmM2QyOTU0NjNiMjkzOTc1ZDc4N2Q0NWM0 ODA5MDNmM2ViMzVkY2ZkMTQwMTYxNjA2ZjI3MDE3NwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6MGY4NWI3ZWU5MmZlMWE5NWMwYWEwMTAzZjEwMDkyZjA0YmE2MTNhMzdlMTE4ZjhmYmI0 M2UzMDgKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjI1ZDlhOTJjOTZiOThl Y2MzMWU2YWNhOTQ1ODk5ZTkzNjA3ODQ4Y2FmMmMzMzJlZmMwM2Y5YTBjCi0rQ3RybC50eXBlID0g dHlwZTpBCi0rT3V0cHV0ID0gNGQ0MGJlNzA0MWFjNGM3NGQ1NmQ1Mzg1NWZlYWQ5NGYKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6 MDAwMDAxMDEwMGEwMjE2ZTczMDA3YzFiNTNkYmExOGFjYjU1OTJlYTY4YWI3NzE5ZDlmZDJmMjRh ZjNlMjk2ODAyNDkzM2E1ZTY4ZmNiMWFhOGIxODdmNDI5NzI4MTVmMTJkNWY5OTVjMTVkMmQzZWFi ODRjZmI4NjlkYjQxM2RjYjMyOGQwNDVkZjIzNjQ2ZTY1MTc5YTUzZTNjYmUxYmFiY2Q2ZTZhNWUz MDBlMzNiZTFmNWVkNWQ3ZWIxNjYxYTBhZTZkOGU2ZGQ4ZjE1NmVlZDcyNmIzMGRmNmI5ZWVlN2U5 NDU3MTg5YjE0MGRlNzY3MWExYzc3OTA5Mzg2MTdlMWJjOTViOGVlOGJiOTIyOWY5OGJlMTU4YTU2 OWJjYjc5OTg2OWM0NDU0ODRkMzBkNjAxOWRiNDRkOTdkY2ZkOWI0N2Y1YTM2NDE4ZTNkNWVjODgw MzdjMTcyMTA0ZDQ0YWM2ZTc3MGNiZWM0MTVmYmZjZThhYzkyNTcwNzRjYTVmZTAwM2E0ODM2MDAx YzgzMzFmMTg0NWMxMDY5ZDA2MTBhNjIzNzhlMWMzMmFlNTEyZmZhMjIwMzJmMjgyNDVlZTdhZTk1 NzM0OGE0ODRiZWYzZDI5NTQ2M2IyOTM5NzVkNzg3ZDQ1YzQ4MDkwM2YzZWIzNWRjZmQxNDAxNjE2 MDZmMjcwMTc3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDowZjg1YjdlZTkyZmUxYTk1 YzBhYTAxMDNmMTAwOTJmMDRiYTYxM2EzN2UxMThmOGZiYjQzZTMwOAotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6MjVkOWE5MmM5NmI5OGVjYzMxZTZhY2E5NDU4OTllOTM2MDc4 NDhjYWYyYzMzMmVmYzAzZjlhMGMKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA1MDE3 ODFhMDRjOTE5MjI2YTllMmRkNmQ3YTg4MDU2OAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwYTAyMTZlNzMwMDdj MWI1M2RiYTE4YWNiNTU5MmVhNjhhYjc3MTlkOWZkMmYyNGFmM2UyOTY4MDI0OTMzYTVlNjhmY2Ix YWE4YjE4N2Y0Mjk3MjgxNWYxMmQ1Zjk5NWMxNWQyZDNlYWI4NGNmYjg2OWRiNDEzZGNiMzI4ZDA0 NWRmMjM2NDZlNjUxNzlhNTNlM2NiZTFiYWJjZDZlNmE1ZTMwMGUzM2JlMWY1ZWQ1ZDdlYjE2NjFh MGFlNmQ4ZTZkZDhmMTU2ZWVkNzI2YjMwZGY2YjllZWU3ZTk0NTcxODliMTQwZGU3NjcxYTFjNzc5 MDkzODYxN2UxYmM5NWI4ZWU4YmI5MjI5Zjk4YmUxNThhNTY5YmNiNzk5ODY5YzQ0NTQ4NGQzMGQ2 MDE5ZGI0NGQ5N2RjZmQ5YjQ3ZjVhMzY0MThlM2Q1ZWM4ODAzN2MxNzIxMDRkNDRhYzZlNzcwY2Jl YzQxNWZiZmNlOGFjOTI1NzA3NGNhNWZlMDAzYTQ4MzYwMDFjODMzMWYxODQ1YzEwNjlkMDYxMGE2 MjM3OGUxYzMyYWU1MTJmZmEyMjAzMmYyODI0NWVlN2FlOTU3MzQ4YTQ4NGJlZjNkMjk1NDYzYjI5 Mzk3NWQ3ODdkNDVjNDgwOTAzZjNlYjM1ZGNmZDE0MDE2MTYwNmYyNzAxNzcKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjBmODViN2VlOTJmZTFhOTVjMGFhMDEwM2YxMDA5MmYwNGJhNjEz YTM3ZTExOGY4ZmJiNDNlMzA4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoy NWQ5YTkyYzk2Yjk4ZWNjMzFlNmFjYTk0NTg5OWU5MzYwNzg0OGNhZjJjMzMyZWZjMDNmOWEwYwot K0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IGZlMTgzZjBlMzFkNGJmOWViYzkzNjRlMTll NDIyMzg1Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTIyNAotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBhMDIxNmU3MzAwN2MxYjUzZGJhMThhY2I1NTkyZWE2OGFi NzcxOWQ5ZmQyZjI0YWYzZTI5NjgwMjQ5MzNhNWU2OGZjYjFhYThiMTg3ZjQyOTcyODE1ZjEyZDVm OTk1YzE1ZDJkM2VhYjg0Y2ZiODY5ZGI0MTNkY2IzMjhkMDQ1ZGYyMzY0NmU2NTE3OWE1M2UzY2Jl MWJhYmNkNmU2YTVlMzAwZTMzYmUxZjVlZDVkN2ViMTY2MWEwYWU2ZDhlNmRkOGYxNTZlZWQ3MjZi MzBkZjZiOWVlZTdlOTQ1NzE4OWIxNDBkZTc2NzFhMWM3NzkwOTM4NjE3ZTFiYzk1YjhlZThiYjky MjlmOThiZTE1OGE1NjliY2I3OTk4NjljNDQ1NDg0ZDMwZDYwMTlkYjQ0ZDk3ZGNmZDliNDdmNWEz NjQxOGUzZDVlYzg4MDM3YzE3MjEwNGQ0NGFjNmU3NzBjYmVjNDE1ZmJmY2U4YWM5MjU3MDc0Y2E1 ZmUwMDNhNDgzNjAwMWM4MzMxZjE4NDVjMTA2OWQwNjEwYTYyMzc4ZTFjMzJhZTUxMmZmYTIyMDMy ZjI4MjQ1ZWU3YWU5NTczNDhhNDg0YmVmM2QyOTU0NjNiMjkzOTc1ZDc4N2Q0NWM0ODA5MDNmM2Vi MzVkY2ZkMTQwMTYxNjA2ZjI3MDE3NwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MGY4 NWI3ZWU5MmZlMWE5NWMwYWEwMTAzZjEwMDkyZjA0YmE2MTNhMzdlMTE4ZjhmYmI0M2UzMDgKLStD dHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjI1ZDlhOTJjOTZiOThlY2MzMWU2YWNh OTQ1ODk5ZTkzNjA3ODQ4Y2FmMmMzMzJlZmMwM2Y5YTBjCi0rQ3RybC50eXBlID0gdHlwZTpECi0r T3V0cHV0ID0gZjEyYzBkYTcwM2U1YmVkYjI5MjFhMGUxNzk1ZWI2MmYKLSsKLStLREYgPSBTU0hL REYKLStDdHJsLm1kID0gbWQ6U0hBMjI0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEw MGEwMjE2ZTczMDA3YzFiNTNkYmExOGFjYjU1OTJlYTY4YWI3NzE5ZDlmZDJmMjRhZjNlMjk2ODAy NDkzM2E1ZTY4ZmNiMWFhOGIxODdmNDI5NzI4MTVmMTJkNWY5OTVjMTVkMmQzZWFiODRjZmI4Njlk YjQxM2RjYjMyOGQwNDVkZjIzNjQ2ZTY1MTc5YTUzZTNjYmUxYmFiY2Q2ZTZhNWUzMDBlMzNiZTFm NWVkNWQ3ZWIxNjYxYTBhZTZkOGU2ZGQ4ZjE1NmVlZDcyNmIzMGRmNmI5ZWVlN2U5NDU3MTg5YjE0 MGRlNzY3MWExYzc3OTA5Mzg2MTdlMWJjOTViOGVlOGJiOTIyOWY5OGJlMTU4YTU2OWJjYjc5OTg2 OWM0NDU0ODRkMzBkNjAxOWRiNDRkOTdkY2ZkOWI0N2Y1YTM2NDE4ZTNkNWVjODgwMzdjMTcyMTA0 ZDQ0YWM2ZTc3MGNiZWM0MTVmYmZjZThhYzkyNTcwNzRjYTVmZTAwM2E0ODM2MDAxYzgzMzFmMTg0 NWMxMDY5ZDA2MTBhNjIzNzhlMWMzMmFlNTEyZmZhMjIwMzJmMjgyNDVlZTdhZTk1NzM0OGE0ODRi ZWYzZDI5NTQ2M2IyOTM5NzVkNzg3ZDQ1YzQ4MDkwM2YzZWIzNWRjZmQxNDAxNjE2MDZmMjcwMTc3 Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDowZjg1YjdlZTkyZmUxYTk1YzBhYTAxMDNm MTAwOTJmMDRiYTYxM2EzN2UxMThmOGZiYjQzZTMwOAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhl eHNlc3Npb25faWQ6MjVkOWE5MmM5NmI5OGVjYzMxZTZhY2E5NDU4OTllOTM2MDc4NDhjYWYyYzMz MmVmYzAzZjlhMGMKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSAxZDM0YjFhZTIzYWY0 OGMyNWRiOTcxZmUwZjk1YzJmZGI0ZTI2OWNhNDM1YjkwZTBlMjJlZTcyMAotKwotK0tERiA9IFNT SEtERgotK0N0cmwubWQgPSBtZDpTSEEyMjQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEw MTAwYTAyMTZlNzMwMDdjMWI1M2RiYTE4YWNiNTU5MmVhNjhhYjc3MTlkOWZkMmYyNGFmM2UyOTY4 MDI0OTMzYTVlNjhmY2IxYWE4YjE4N2Y0Mjk3MjgxNWYxMmQ1Zjk5NWMxNWQyZDNlYWI4NGNmYjg2 OWRiNDEzZGNiMzI4ZDA0NWRmMjM2NDZlNjUxNzlhNTNlM2NiZTFiYWJjZDZlNmE1ZTMwMGUzM2Jl MWY1ZWQ1ZDdlYjE2NjFhMGFlNmQ4ZTZkZDhmMTU2ZWVkNzI2YjMwZGY2YjllZWU3ZTk0NTcxODli MTQwZGU3NjcxYTFjNzc5MDkzODYxN2UxYmM5NWI4ZWU4YmI5MjI5Zjk4YmUxNThhNTY5YmNiNzk5 ODY5YzQ0NTQ4NGQzMGQ2MDE5ZGI0NGQ5N2RjZmQ5YjQ3ZjVhMzY0MThlM2Q1ZWM4ODAzN2MxNzIx MDRkNDRhYzZlNzcwY2JlYzQxNWZiZmNlOGFjOTI1NzA3NGNhNWZlMDAzYTQ4MzYwMDFjODMzMWYx ODQ1YzEwNjlkMDYxMGE2MjM3OGUxYzMyYWU1MTJmZmEyMjAzMmYyODI0NWVlN2FlOTU3MzQ4YTQ4 NGJlZjNkMjk1NDYzYjI5Mzk3NWQ3ODdkNDVjNDgwOTAzZjNlYjM1ZGNmZDE0MDE2MTYwNmYyNzAx NzcKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjBmODViN2VlOTJmZTFhOTVjMGFhMDEw M2YxMDA5MmYwNGJhNjEzYTM3ZTExOGY4ZmJiNDNlMzA4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDoyNWQ5YTkyYzk2Yjk4ZWNjMzFlNmFjYTk0NTg5OWU5MzYwNzg0OGNhZjJj MzMyZWZjMDNmOWEwYwotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGI3N2RjZTRlMjIx MWM4ZTJiNGZiYTg0MWJhNDVkN2YxMzYzMjM5OTllZDlhNGQzMDZmYTQxMWE4Ci0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MDgxMDA4NzVjNTUxY2VmNTI2YTRhOGJlMWE3ZGYyN2U5ZWQzNTRiYWM5YWZiNzFmNTNkYmFlOTA1 Njc5ZDE0ZjlmYWYyNDY5YzUzNDU3Y2Y4MGEzNjZiZTI3ODk2NWJhNjI1NTI3NmNhMmQ5ZjRhOTdk MjcxZjcxZTUwZDhhOWVjNDYyNTNhNmE5MDZhYzJjNWU0ZjQ4YjI3YTYzY2UwOGQ4MDM5MGE0OTJh YTQzYmFkOWQ4ODJjY2FjMjNkYWM4OGJjYWRhNGI0ZDQyNmEzNjIwODNkYWI2NTY5YzU0YzIyNGRk MmQ4NzY0M2FhMjI3NjkzZTE0MWFkMTYzMGNlMTMxNDRlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDowZTY4M2ZjOGE5ZWQ3YzJmZjAyZGVmMjNiMjc0NWViYzk5YjI2N2RhYTg2YTRhYTc2 OTcyMzkwODgyNTNmNjQyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDowZTY4 M2ZjOGE5ZWQ3YzJmZjAyZGVmMjNiMjc0NWViYzk5YjI2N2RhYTg2YTRhYTc2OTcyMzkwODgyNTNm NjQyCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gNDFmZjJlYWQxNjgzZjFlNgotKwot K0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDA4MTAwODc1YzU1MWNlZjUyNmE0YThiZTFhN2RmMjdlOWVkMzU0YmFjOWFmYjcxZjUz ZGJhZTkwNTY3OWQxNGY5ZmFmMjQ2OWM1MzQ1N2NmODBhMzY2YmUyNzg5NjViYTYyNTUyNzZjYTJk OWY0YTk3ZDI3MWY3MWU1MGQ4YTllYzQ2MjUzYTZhOTA2YWMyYzVlNGY0OGIyN2E2M2NlMDhkODAz OTBhNDkyYWE0M2JhZDlkODgyY2NhYzIzZGFjODhiY2FkYTRiNGQ0MjZhMzYyMDgzZGFiNjU2OWM1 NGMyMjRkZDJkODc2NDNhYTIyNzY5M2UxNDFhZDE2MzBjZTEzMTQ0ZQotK0N0cmwuaGV4eGNnaGFz aCA9IGhleHhjZ2hhc2g6MGU2ODNmYzhhOWVkN2MyZmYwMmRlZjIzYjI3NDVlYmM5OWIyNjdkYWE4 NmE0YWE3Njk3MjM5MDg4MjUzZjY0MgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6MGU2ODNmYzhhOWVkN2MyZmYwMmRlZjIzYjI3NDVlYmM5OWIyNjdkYWE4NmE0YWE3Njk3MjM5 MDg4MjUzZjY0MgotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IGU2MTllY2ZkOWVkYjUw Y2QKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODEwMDg3NWM1NTFjZWY1MjZhNGE4YmUxYTdkZjI3ZTllZDM1NGJhYzlh ZmI3MWY1M2RiYWU5MDU2NzlkMTRmOWZhZjI0NjljNTM0NTdjZjgwYTM2NmJlMjc4OTY1YmE2MjU1 Mjc2Y2EyZDlmNGE5N2QyNzFmNzFlNTBkOGE5ZWM0NjI1M2E2YTkwNmFjMmM1ZTRmNDhiMjdhNjNj ZTA4ZDgwMzkwYTQ5MmFhNDNiYWQ5ZDg4MmNjYWMyM2RhYzg4YmNhZGE0YjRkNDI2YTM2MjA4M2Rh YjY1NjljNTRjMjI0ZGQyZDg3NjQzYWEyMjc2OTNlMTQxYWQxNjMwY2UxMzE0NGUKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjBlNjgzZmM4YTllZDdjMmZmMDJkZWYyM2IyNzQ1ZWJjOTli MjY3ZGFhODZhNGFhNzY5NzIzOTA4ODI1M2Y2NDIKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhz ZXNzaW9uX2lkOjBlNjgzZmM4YTllZDdjMmZmMDJkZWYyM2IyNzQ1ZWJjOTliMjY3ZGFhODZhNGFh NzY5NzIzOTA4ODI1M2Y2NDIKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSA0YTYzMTRk MmY3NTExYmY4OGZhZDM5ZmI2ODkyZjNmMjE4Y2FmZDUzMGU3MmZlNDMKLSsKLStLREYgPSBTU0hL REYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEw MDg3NWM1NTFjZWY1MjZhNGE4YmUxYTdkZjI3ZTllZDM1NGJhYzlhZmI3MWY1M2RiYWU5MDU2Nzlk MTRmOWZhZjI0NjljNTM0NTdjZjgwYTM2NmJlMjc4OTY1YmE2MjU1Mjc2Y2EyZDlmNGE5N2QyNzFm NzFlNTBkOGE5ZWM0NjI1M2E2YTkwNmFjMmM1ZTRmNDhiMjdhNjNjZTA4ZDgwMzkwYTQ5MmFhNDNi YWQ5ZDg4MmNjYWMyM2RhYzg4YmNhZGE0YjRkNDI2YTM2MjA4M2RhYjY1NjljNTRjMjI0ZGQyZDg3 NjQzYWEyMjc2OTNlMTQxYWQxNjMwY2UxMzE0NGUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2do YXNoOjBlNjgzZmM4YTllZDdjMmZmMDJkZWYyM2IyNzQ1ZWJjOTliMjY3ZGFhODZhNGFhNzY5NzIz OTA4ODI1M2Y2NDIKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjBlNjgzZmM4 YTllZDdjMmZmMDJkZWYyM2IyNzQ1ZWJjOTliMjY3ZGFhODZhNGFhNzY5NzIzOTA4ODI1M2Y2NDIK LStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSAwODRjMTVmYjdmOTljNjVmZjEzNGVlYjQw N2NlZTVkNTQwYzM0MWRlYTQ1YTQyYTUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6 U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDg3NWM1NTFjZWY1MjZhNGE4 YmUxYTdkZjI3ZTllZDM1NGJhYzlhZmI3MWY1M2RiYWU5MDU2NzlkMTRmOWZhZjI0NjljNTM0NTdj ZjgwYTM2NmJlMjc4OTY1YmE2MjU1Mjc2Y2EyZDlmNGE5N2QyNzFmNzFlNTBkOGE5ZWM0NjI1M2E2 YTkwNmFjMmM1ZTRmNDhiMjdhNjNjZTA4ZDgwMzkwYTQ5MmFhNDNiYWQ5ZDg4MmNjYWMyM2RhYzg4 YmNhZGE0YjRkNDI2YTM2MjA4M2RhYjY1NjljNTRjMjI0ZGQyZDg3NjQzYWEyMjc2OTNlMTQxYWQx NjMwY2UxMzE0NGUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjBlNjgzZmM4YTllZDdj MmZmMDJkZWYyM2IyNzQ1ZWJjOTliMjY3ZGFhODZhNGFhNzY5NzIzOTA4ODI1M2Y2NDIKLStDdHJs LmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjBlNjgzZmM4YTllZDdjMmZmMDJkZWYyM2Iy NzQ1ZWJjOTliMjY3ZGFhODZhNGFhNzY5NzIzOTA4ODI1M2Y2NDIKLStDdHJsLnR5cGUgPSB0eXBl OkUKLStPdXRwdXQgPSA0MWVjNWE5NGZlY2NlNzcwN2VhMTU2YTZhZDI5MjM5YTg5MTYyMWFkYWNi ZWRiOGJlNzA2NzUwMDhkNmY5Mjc0Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4NzVjNTUxY2VmNTI2YTRhOGJl MWE3ZGYyN2U5ZWQzNTRiYWM5YWZiNzFmNTNkYmFlOTA1Njc5ZDE0ZjlmYWYyNDY5YzUzNDU3Y2Y4 MGEzNjZiZTI3ODk2NWJhNjI1NTI3NmNhMmQ5ZjRhOTdkMjcxZjcxZTUwZDhhOWVjNDYyNTNhNmE5 MDZhYzJjNWU0ZjQ4YjI3YTYzY2UwOGQ4MDM5MGE0OTJhYTQzYmFkOWQ4ODJjY2FjMjNkYWM4OGJj YWRhNGI0ZDQyNmEzNjIwODNkYWI2NTY5YzU0YzIyNGRkMmQ4NzY0M2FhMjI3NjkzZTE0MWFkMTYz MGNlMTMxNDRlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDowZTY4M2ZjOGE5ZWQ3YzJm ZjAyZGVmMjNiMjc0NWViYzk5YjI2N2RhYTg2YTRhYTc2OTcyMzkwODgyNTNmNjQyCi0rQ3RybC5o ZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDowZTY4M2ZjOGE5ZWQ3YzJmZjAyZGVmMjNiMjc0 NWViYzk5YjI2N2RhYTg2YTRhYTc2OTcyMzkwODgyNTNmNjQyCi0rQ3RybC50eXBlID0gdHlwZTpG Ci0rT3V0cHV0ID0gNDdkM2MyMGFiYTYwOTgxZTQ3YjMwNTMzNjIzNjEzZmYxY2FjYmNmMTY0MmZi NGFkODZlZTcxMmYyYWVkOWFmOAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEy NTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDBmYWExNzJiOGMyODdlMzcyYmIyMzZh ZDM0YzczMzY5NWMxM2Q3N2Y4ODJhZGMwZjQ3ZTVhN2Y2YTNkZTA3ZWZiMTAxMjA3YWE1ZDY2NWI2 MTk4MjZmNzU2NTkxZjY1MzEwYmJkMmM5MmM5Mzg0ZTZjNmE2N2I0MmRlYzM4MmZkYjI0YzU5MWQ3 OWZmNWU0NzczN2IwZjViODQ3OTY5NGMzYWRjMTk0MDE3MDQ5MTJiYmZlYzI3MDRkNGQ1YmViYmZj MWE3ZmM3OTZlMjc3NjM0ZTQwODUxODUxYTE4N2VjMmQzN2VkM2YzNTFjNDU5NmE1YTA4OTI5MTZi NGM1NWYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmEzNDdmNWYxZTE5MWMzNWYyMTJj OTMyNGQ1ODY3ZWZkZjgzMDI2YmU2MmMyYjE2YWUwMDZlZGIzMzc4ZDQwMDYKLStDdHJsLmhleHNl c3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjkwYmVmY2VmM2ZmOGY5MjA2NzRhOWZhYjk0MTk4Y2Yz ZmQ5ZGNhMjRhMjFkM2M5ZGJhMzk0ZGFhZmJjNjIxZWQKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStP dXRwdXQgPSA5OWJhZTY1MzE1MDg3MDVmCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwMGZhYTE3MmI4YzI4N2UzNzJi YjIzNmFkMzRjNzMzNjk1YzEzZDc3Zjg4MmFkYzBmNDdlNWE3ZjZhM2RlMDdlZmIxMDEyMDdhYTVk NjY1YjYxOTgyNmY3NTY1OTFmNjUzMTBiYmQyYzkyYzkzODRlNmM2YTY3YjQyZGVjMzgyZmRiMjRj NTkxZDc5ZmY1ZTQ3NzM3YjBmNWI4NDc5Njk0YzNhZGMxOTQwMTcwNDkxMmJiZmVjMjcwNGQ0ZDVi ZWJiZmMxYTdmYzc5NmUyNzc2MzRlNDA4NTE4NTFhMTg3ZWMyZDM3ZWQzZjM1MWM0NTk2YTVhMDg5 MjkxNmI0YzU1ZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YTM0N2Y1ZjFlMTkxYzM1 ZjIxMmM5MzI0ZDU4NjdlZmRmODMwMjZiZTYyYzJiMTZhZTAwNmVkYjMzNzhkNDAwNgotK0N0cmwu aGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6OTBiZWZjZWYzZmY4ZjkyMDY3NGE5ZmFiOTQx OThjZjNmZDlkY2EyNGEyMWQzYzlkYmEzOTRkYWFmYmM2MjFlZAotK0N0cmwudHlwZSA9IHR5cGU6 QgotK091dHB1dCA9IGYyNTc4NmYwMmYxOTk3MzcKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1k ID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAwZmFhMTcyYjhjMjg3 ZTM3MmJiMjM2YWQzNGM3MzM2OTVjMTNkNzdmODgyYWRjMGY0N2U1YTdmNmEzZGUwN2VmYjEwMTIw N2FhNWQ2NjViNjE5ODI2Zjc1NjU5MWY2NTMxMGJiZDJjOTJjOTM4NGU2YzZhNjdiNDJkZWMzODJm ZGIyNGM1OTFkNzlmZjVlNDc3MzdiMGY1Yjg0Nzk2OTRjM2FkYzE5NDAxNzA0OTEyYmJmZWMyNzA0 ZDRkNWJlYmJmYzFhN2ZjNzk2ZTI3NzYzNGU0MDg1MTg1MWExODdlYzJkMzdlZDNmMzUxYzQ1OTZh NWEwODkyOTE2YjRjNTVmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDphMzQ3ZjVmMWUx OTFjMzVmMjEyYzkzMjRkNTg2N2VmZGY4MzAyNmJlNjJjMmIxNmFlMDA2ZWRiMzM3OGQ0MDA2Ci0r Q3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo5MGJlZmNlZjNmZjhmOTIwNjc0YTlm YWI5NDE5OGNmM2ZkOWRjYTI0YTIxZDNjOWRiYTM5NGRhYWZiYzYyMWVkCi0rQ3RybC50eXBlID0g dHlwZTpDCi0rT3V0cHV0ID0gOTc2MjFiZjg4MjI2NmY5MDVkYTc4Y2YxOTNmYzMxZjY0MmFjYmI2 MDk1N2M0MWI3Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwu aGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwMGZhYTE3MmI4YzI4N2UzNzJiYjIzNmFkMzRjNzMzNjk1 YzEzZDc3Zjg4MmFkYzBmNDdlNWE3ZjZhM2RlMDdlZmIxMDEyMDdhYTVkNjY1YjYxOTgyNmY3NTY1 OTFmNjUzMTBiYmQyYzkyYzkzODRlNmM2YTY3YjQyZGVjMzgyZmRiMjRjNTkxZDc5ZmY1ZTQ3NzM3 YjBmNWI4NDc5Njk0YzNhZGMxOTQwMTcwNDkxMmJiZmVjMjcwNGQ0ZDViZWJiZmMxYTdmYzc5NmUy Nzc2MzRlNDA4NTE4NTFhMTg3ZWMyZDM3ZWQzZjM1MWM0NTk2YTVhMDg5MjkxNmI0YzU1ZgotK0N0 cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YTM0N2Y1ZjFlMTkxYzM1ZjIxMmM5MzI0ZDU4Njdl ZmRmODMwMjZiZTYyYzJiMTZhZTAwNmVkYjMzNzhkNDAwNgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6OTBiZWZjZWYzZmY4ZjkyMDY3NGE5ZmFiOTQxOThjZjNmZDlkY2EyNGEy MWQzYzlkYmEzOTRkYWFmYmM2MjFlZAotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGFk OThhODZhMjM4NjI4MDkxMmVmZWE1MGY3OTBlODAwYTc3NThmN2RhZGU1ZDc3ZQotKwotK0tERiA9 IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDA4MDBmYWExNzJiOGMyODdlMzcyYmIyMzZhZDM0YzczMzY5NWMxM2Q3N2Y4ODJhZGMwZjQ3ZTVh N2Y2YTNkZTA3ZWZiMTAxMjA3YWE1ZDY2NWI2MTk4MjZmNzU2NTkxZjY1MzEwYmJkMmM5MmM5Mzg0 ZTZjNmE2N2I0MmRlYzM4MmZkYjI0YzU5MWQ3OWZmNWU0NzczN2IwZjViODQ3OTY5NGMzYWRjMTk0 MDE3MDQ5MTJiYmZlYzI3MDRkNGQ1YmViYmZjMWE3ZmM3OTZlMjc3NjM0ZTQwODUxODUxYTE4N2Vj MmQzN2VkM2YzNTFjNDU5NmE1YTA4OTI5MTZiNGM1NWYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOmEzNDdmNWYxZTE5MWMzNWYyMTJjOTMyNGQ1ODY3ZWZkZjgzMDI2YmU2MmMyYjE2YWUw MDZlZGIzMzc4ZDQwMDYKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjkwYmVm Y2VmM2ZmOGY5MjA2NzRhOWZhYjk0MTk4Y2YzZmQ5ZGNhMjRhMjFkM2M5ZGJhMzk0ZGFhZmJjNjIx ZWQKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSBmOTJkMDUyZDNjZGYzNGRmYzY5YmM2 MGE0ODljM2EzNTUzZjQzNTY1OTZjMTkxOTMxZDA4ZmEyMDU1MTI3M2IzCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgw MGZhYTE3MmI4YzI4N2UzNzJiYjIzNmFkMzRjNzMzNjk1YzEzZDc3Zjg4MmFkYzBmNDdlNWE3ZjZh M2RlMDdlZmIxMDEyMDdhYTVkNjY1YjYxOTgyNmY3NTY1OTFmNjUzMTBiYmQyYzkyYzkzODRlNmM2 YTY3YjQyZGVjMzgyZmRiMjRjNTkxZDc5ZmY1ZTQ3NzM3YjBmNWI4NDc5Njk0YzNhZGMxOTQwMTcw NDkxMmJiZmVjMjcwNGQ0ZDViZWJiZmMxYTdmYzc5NmUyNzc2MzRlNDA4NTE4NTFhMTg3ZWMyZDM3 ZWQzZjM1MWM0NTk2YTVhMDg5MjkxNmI0YzU1ZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6YTM0N2Y1ZjFlMTkxYzM1ZjIxMmM5MzI0ZDU4NjdlZmRmODMwMjZiZTYyYzJiMTZhZTAwNmVk YjMzNzhkNDAwNgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6OTBiZWZjZWYz ZmY4ZjkyMDY3NGE5ZmFiOTQxOThjZjNmZDlkY2EyNGEyMWQzYzlkYmEzOTRkYWFmYmM2MjFlZAot K0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDE0N2E3NzE0NDUxMjNmODQ2ZDhhZTUxNGQ3 ZmY5YjNjOTNiMmJjZWI3YzdjOTUwMDk0MjE2MWI4ZTJkMDExMGYKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGRi ODIwNWFkNTNhOTZiZDRjMTExYWQ4ZGM4ZGFiODE5NmYwNDU1N2Q4N2E1YWM5MGIxMDEzZWVjNzE0 NTZjYTgwZjBhNTlhZjI2ZjlhYzZlYjkxZWU1MWNkNjAxNjAyZmU5NDY3NTUwZDFmMDlmNDE3Zjk0 ZTRkZjJhYTVmYjk0MWEzM2ZmNzc2NGI0ZDU3YmNiYTc3ZjU0OTk1OWNhNGZlNWQ1NjhmZjVkMjA3 MDJmY2ZlZjkwNGQwN2Y5MTgyYmQ5OTM2ZGExZmM2M2QwYjExY2Q1NzNiYzBlZDljNGU3YmIwN2I1 Yzc3YzQyMTRkNDU3Y2E1YjBhNDQxMGQ3YjAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OmE4NWFhMzZhZWFlM2Y4YTk0OGZmYTA3NzUwOWYxODNmMjg5NGI1MjkzMGE3OWEwNmJmODc4M2U1 MDFkOWNhZTMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjY2MjliYjlmMzJl MjU5OTM1Zjk0NmU3MzU0M2JmNjU4MzBlNzhkZGFiNjkxYThiODg1ZjM0NDRmOTc2ZmQ2NTUKLStD dHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSA5M2RhNjQyOTc0ZDcxZTUyCi0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MDgxMDBkYjgyMDVhZDUzYTk2YmQ0YzExMWFkOGRjOGRhYjgxOTZmMDQ1NTdkODdhNWFjOTBiMTAx M2VlYzcxNDU2Y2E4MGYwYTU5YWYyNmY5YWM2ZWI5MWVlNTFjZDYwMTYwMmZlOTQ2NzU1MGQxZjA5 ZjQxN2Y5NGU0ZGYyYWE1ZmI5NDFhMzNmZjc3NjRiNGQ1N2JjYmE3N2Y1NDk5NTljYTRmZTVkNTY4 ZmY1ZDIwNzAyZmNmZWY5MDRkMDdmOTE4MmJkOTkzNmRhMWZjNjNkMGIxMWNkNTczYmMwZWQ5YzRl N2JiMDdiNWM3N2M0MjE0ZDQ1N2NhNWIwYTQ0MTBkN2IwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDphODVhYTM2YWVhZTNmOGE5NDhmZmEwNzc1MDlmMTgzZjI4OTRiNTI5MzBhNzlhMDZi Zjg3ODNlNTAxZDljYWUzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo2NjI5 YmI5ZjMyZTI1OTkzNWY5NDZlNzM1NDNiZjY1ODMwZTc4ZGRhYjY5MWE4Yjg4NWYzNDQ0Zjk3NmZk NjU1Ci0rQ3RybC50eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0gZGYyMDM1YWQ2NzQ1NzE1MQotKwot K0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDA4MTAwZGI4MjA1YWQ1M2E5NmJkNGMxMTFhZDhkYzhkYWI4MTk2ZjA0NTU3ZDg3YTVh YzkwYjEwMTNlZWM3MTQ1NmNhODBmMGE1OWFmMjZmOWFjNmViOTFlZTUxY2Q2MDE2MDJmZTk0Njc1 NTBkMWYwOWY0MTdmOTRlNGRmMmFhNWZiOTQxYTMzZmY3NzY0YjRkNTdiY2JhNzdmNTQ5OTU5Y2E0 ZmU1ZDU2OGZmNWQyMDcwMmZjZmVmOTA0ZDA3ZjkxODJiZDk5MzZkYTFmYzYzZDBiMTFjZDU3M2Jj MGVkOWM0ZTdiYjA3YjVjNzdjNDIxNGQ0NTdjYTViMGE0NDEwZDdiMAotK0N0cmwuaGV4eGNnaGFz aCA9IGhleHhjZ2hhc2g6YTg1YWEzNmFlYWUzZjhhOTQ4ZmZhMDc3NTA5ZjE4M2YyODk0YjUyOTMw YTc5YTA2YmY4NzgzZTUwMWQ5Y2FlMwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6NjYyOWJiOWYzMmUyNTk5MzVmOTQ2ZTczNTQzYmY2NTgzMGU3OGRkYWI2OTFhOGI4ODVmMzQ0 NGY5NzZmZDY1NQotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDQyMDY3YmIwNTM1ZGE2 NzAxMjMyYTBmMzlhYzdmNDM2NTM1YWYzNDZjNDc4NmFmNQotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwZGI4MjA1 YWQ1M2E5NmJkNGMxMTFhZDhkYzhkYWI4MTk2ZjA0NTU3ZDg3YTVhYzkwYjEwMTNlZWM3MTQ1NmNh ODBmMGE1OWFmMjZmOWFjNmViOTFlZTUxY2Q2MDE2MDJmZTk0Njc1NTBkMWYwOWY0MTdmOTRlNGRm MmFhNWZiOTQxYTMzZmY3NzY0YjRkNTdiY2JhNzdmNTQ5OTU5Y2E0ZmU1ZDU2OGZmNWQyMDcwMmZj ZmVmOTA0ZDA3ZjkxODJiZDk5MzZkYTFmYzYzZDBiMTFjZDU3M2JjMGVkOWM0ZTdiYjA3YjVjNzdj NDIxNGQ0NTdjYTViMGE0NDEwZDdiMAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YTg1 YWEzNmFlYWUzZjhhOTQ4ZmZhMDc3NTA5ZjE4M2YyODk0YjUyOTMwYTc5YTA2YmY4NzgzZTUwMWQ5 Y2FlMwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NjYyOWJiOWYzMmUyNTk5 MzVmOTQ2ZTczNTQzYmY2NTgzMGU3OGRkYWI2OTFhOGI4ODVmMzQ0NGY5NzZmZDY1NQotK0N0cmwu dHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDA4YTAxODFhNmMzNzNkMzk1NDA0MDlkYWZiMWI0ZTIz NTliYzI0OWFmMzNiY2ZlMAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYK LStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwZGI4MjA1YWQ1M2E5NmJkNGMxMTFhZDhk YzhkYWI4MTk2ZjA0NTU3ZDg3YTVhYzkwYjEwMTNlZWM3MTQ1NmNhODBmMGE1OWFmMjZmOWFjNmVi OTFlZTUxY2Q2MDE2MDJmZTk0Njc1NTBkMWYwOWY0MTdmOTRlNGRmMmFhNWZiOTQxYTMzZmY3NzY0 YjRkNTdiY2JhNzdmNTQ5OTU5Y2E0ZmU1ZDU2OGZmNWQyMDcwMmZjZmVmOTA0ZDA3ZjkxODJiZDk5 MzZkYTFmYzYzZDBiMTFjZDU3M2JjMGVkOWM0ZTdiYjA3YjVjNzdjNDIxNGQ0NTdjYTViMGE0NDEw ZDdiMAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YTg1YWEzNmFlYWUzZjhhOTQ4ZmZh MDc3NTA5ZjE4M2YyODk0YjUyOTMwYTc5YTA2YmY4NzgzZTUwMWQ5Y2FlMwotK0N0cmwuaGV4c2Vz c2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NjYyOWJiOWYzMmUyNTk5MzVmOTQ2ZTczNTQzYmY2NTgz MGU3OGRkYWI2OTFhOGI4ODVmMzQ0NGY5NzZmZDY1NQotK0N0cmwudHlwZSA9IHR5cGU6RQotK091 dHB1dCA9IGMwNDNiNWFlY2U3Y2QyNjg1YzZkZmIzNzg4ZDdhNTYyZDY2MjJkMjBmNmQ3ZTA3YjM4 YWViNDdjNjQ5ZGQ5OWMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGRiODIwNWFkNTNhOTZiZDRjMTExYWQ4ZGM4 ZGFiODE5NmYwNDU1N2Q4N2E1YWM5MGIxMDEzZWVjNzE0NTZjYTgwZjBhNTlhZjI2ZjlhYzZlYjkx ZWU1MWNkNjAxNjAyZmU5NDY3NTUwZDFmMDlmNDE3Zjk0ZTRkZjJhYTVmYjk0MWEzM2ZmNzc2NGI0 ZDU3YmNiYTc3ZjU0OTk1OWNhNGZlNWQ1NjhmZjVkMjA3MDJmY2ZlZjkwNGQwN2Y5MTgyYmQ5OTM2 ZGExZmM2M2QwYjExY2Q1NzNiYzBlZDljNGU3YmIwN2I1Yzc3YzQyMTRkNDU3Y2E1YjBhNDQxMGQ3 YjAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmE4NWFhMzZhZWFlM2Y4YTk0OGZmYTA3 NzUwOWYxODNmMjg5NGI1MjkzMGE3OWEwNmJmODc4M2U1MDFkOWNhZTMKLStDdHJsLmhleHNlc3Np b25faWQgPSBoZXhzZXNzaW9uX2lkOjY2MjliYjlmMzJlMjU5OTM1Zjk0NmU3MzU0M2JmNjU4MzBl NzhkZGFiNjkxYThiODg1ZjM0NDRmOTc2ZmQ2NTUKLStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRw dXQgPSBjYmU2N2E5M2FjNzU4ZDlmMmE2ZmY1ODBiYWQ1YTQ0YmIxYTEwNjJjOWUyMGQ1Yzk3NGRl Y2I3YWEyYjBmYWEwCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBkOTcxNjQ5NTc4MzFiYmM1N2M5MWUwYTVjOWVj ZTIzMGI0NjI1ZDE0YjlkMDdkZWNkYzk3MWNlZTI4ZDI4YzI5MzhkMmY4YjY4MmJjMzNiZDY3NDU4 ZmI5MDEyMGRkNmEyY2E1MjU1ZmJlM2RhZWIwMzI1MDI5ZTE1YjVlMzEzNWFhZTUwODE4OTRkYTk4 ZmI0ZTRkNTc4ODkwYzVhNGI2YTM1OTA5N2JmNWUyYzQwM2Y3N2IwMzk4ZDEyNzk1ZDZjODk1ZWQ5 NzllNzkyZDEzZjVhZWIzY2Q2Mjc5OWQ5YTUwOWNiNGJkOGUyYmY1ZDhiMDg0OThhYmNjYzA3OTBj Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo4MWMzZTZkMWE2YWViM2YzZmMxMTFhOWUx NDY3YTdlNTY5YjlkZWJiZmVmNDhmZDMxYWNkMGQ4YjliNTBhNjQ3Ci0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDowNjhkNGEyZWJmNjZhMGE2Zjc1ZDNlNzY2NTljNzJhN2Y3MDYz MGY5ODg3MmU2ZjQ4YzQ1YWQ4NjJmZDliMmE0Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0 ID0gMzIwZTgwN2ZhYjJiMTBmMAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEy NTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwZDk3MTY0OTU3ODMxYmJjNTdjOTFl MGE1YzllY2UyMzBiNDYyNWQxNGI5ZDA3ZGVjZGM5NzFjZWUyOGQyOGMyOTM4ZDJmOGI2ODJiYzMz YmQ2NzQ1OGZiOTAxMjBkZDZhMmNhNTI1NWZiZTNkYWViMDMyNTAyOWUxNWI1ZTMxMzVhYWU1MDgx ODk0ZGE5OGZiNGU0ZDU3ODg5MGM1YTRiNmEzNTkwOTdiZjVlMmM0MDNmNzdiMDM5OGQxMjc5NWQ2 Yzg5NWVkOTc5ZTc5MmQxM2Y1YWViM2NkNjI3OTlkOWE1MDljYjRiZDhlMmJmNWQ4YjA4NDk4YWJj Y2MwNzkwYwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ODFjM2U2ZDFhNmFlYjNmM2Zj MTExYTllMTQ2N2E3ZTU2OWI5ZGViYmZlZjQ4ZmQzMWFjZDBkOGI5YjUwYTY0NwotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MDY4ZDRhMmViZjY2YTBhNmY3NWQzZTc2NjU5Yzcy YTdmNzA2MzBmOTg4NzJlNmY0OGM0NWFkODYyZmQ5YjJhNAotK0N0cmwudHlwZSA9IHR5cGU6Qgot K091dHB1dCA9IDdiOGY5MWJlNGRjZDU5YjEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGQ5NzE2NDk1NzgzMWJi YzU3YzkxZTBhNWM5ZWNlMjMwYjQ2MjVkMTRiOWQwN2RlY2RjOTcxY2VlMjhkMjhjMjkzOGQyZjhi NjgyYmMzM2JkNjc0NThmYjkwMTIwZGQ2YTJjYTUyNTVmYmUzZGFlYjAzMjUwMjllMTViNWUzMTM1 YWFlNTA4MTg5NGRhOThmYjRlNGQ1Nzg4OTBjNWE0YjZhMzU5MDk3YmY1ZTJjNDAzZjc3YjAzOThk MTI3OTVkNmM4OTVlZDk3OWU3OTJkMTNmNWFlYjNjZDYyNzk5ZDlhNTA5Y2I0YmQ4ZTJiZjVkOGIw ODQ5OGFiY2NjMDc5MGMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjgxYzNlNmQxYTZh ZWIzZjNmYzExMWE5ZTE0NjdhN2U1NjliOWRlYmJmZWY0OGZkMzFhY2QwZDhiOWI1MGE2NDcKLStD dHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjA2OGQ0YTJlYmY2NmEwYTZmNzVkM2U3 NjY1OWM3MmE3ZjcwNjMwZjk4ODcyZTZmNDhjNDVhZDg2MmZkOWIyYTQKLStDdHJsLnR5cGUgPSB0 eXBlOkMKLStPdXRwdXQgPSBkZWM2ZTY3YTk0YjNkZGZjZDMyYTI0ZDYwMjZjNjk1MWQwMGI2ZjQ0 MDJkMzJjMWEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGQ5NzE2NDk1NzgzMWJiYzU3YzkxZTBhNWM5ZWNlMjMw YjQ2MjVkMTRiOWQwN2RlY2RjOTcxY2VlMjhkMjhjMjkzOGQyZjhiNjgyYmMzM2JkNjc0NThmYjkw MTIwZGQ2YTJjYTUyNTVmYmUzZGFlYjAzMjUwMjllMTViNWUzMTM1YWFlNTA4MTg5NGRhOThmYjRl NGQ1Nzg4OTBjNWE0YjZhMzU5MDk3YmY1ZTJjNDAzZjc3YjAzOThkMTI3OTVkNmM4OTVlZDk3OWU3 OTJkMTNmNWFlYjNjZDYyNzk5ZDlhNTA5Y2I0YmQ4ZTJiZjVkOGIwODQ5OGFiY2NjMDc5MGMKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjgxYzNlNmQxYTZhZWIzZjNmYzExMWE5ZTE0Njdh N2U1NjliOWRlYmJmZWY0OGZkMzFhY2QwZDhiOWI1MGE2NDcKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOjA2OGQ0YTJlYmY2NmEwYTZmNzVkM2U3NjY1OWM3MmE3ZjcwNjMwZjk4 ODcyZTZmNDhjNDVhZDg2MmZkOWIyYTQKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSAy ZWYzY2VhNDU4OGFkOTI4YWMzZTg4NzRmM2UxZjYxM2YyZDUwNzg3NDk1YWNjMzIKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAwODEwMGQ5NzE2NDk1NzgzMWJiYzU3YzkxZTBhNWM5ZWNlMjMwYjQ2MjVkMTRiOWQwN2RlY2Rj OTcxY2VlMjhkMjhjMjkzOGQyZjhiNjgyYmMzM2JkNjc0NThmYjkwMTIwZGQ2YTJjYTUyNTVmYmUz ZGFlYjAzMjUwMjllMTViNWUzMTM1YWFlNTA4MTg5NGRhOThmYjRlNGQ1Nzg4OTBjNWE0YjZhMzU5 MDk3YmY1ZTJjNDAzZjc3YjAzOThkMTI3OTVkNmM4OTVlZDk3OWU3OTJkMTNmNWFlYjNjZDYyNzk5 ZDlhNTA5Y2I0YmQ4ZTJiZjVkOGIwODQ5OGFiY2NjMDc5MGMKLStDdHJsLmhleHhjZ2hhc2ggPSBo ZXh4Y2doYXNoOjgxYzNlNmQxYTZhZWIzZjNmYzExMWE5ZTE0NjdhN2U1NjliOWRlYmJmZWY0OGZk MzFhY2QwZDhiOWI1MGE2NDcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjA2 OGQ0YTJlYmY2NmEwYTZmNzVkM2U3NjY1OWM3MmE3ZjcwNjMwZjk4ODcyZTZmNDhjNDVhZDg2MmZk OWIyYTQKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA3MmY5MzUzNzMyOGVlYmVlYzFi NWNhODhmZWRiNDFiZjRkOWM2Mjc5ZTRmZThkMTNjMzhkYTcyYTM5NzM5ZWQ4Ci0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MDgxMDBkOTcxNjQ5NTc4MzFiYmM1N2M5MWUwYTVjOWVjZTIzMGI0NjI1ZDE0YjlkMDdkZWNkYzk3 MWNlZTI4ZDI4YzI5MzhkMmY4YjY4MmJjMzNiZDY3NDU4ZmI5MDEyMGRkNmEyY2E1MjU1ZmJlM2Rh ZWIwMzI1MDI5ZTE1YjVlMzEzNWFhZTUwODE4OTRkYTk4ZmI0ZTRkNTc4ODkwYzVhNGI2YTM1OTA5 N2JmNWUyYzQwM2Y3N2IwMzk4ZDEyNzk1ZDZjODk1ZWQ5NzllNzkyZDEzZjVhZWIzY2Q2Mjc5OWQ5 YTUwOWNiNGJkOGUyYmY1ZDhiMDg0OThhYmNjYzA3OTBjCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDo4MWMzZTZkMWE2YWViM2YzZmMxMTFhOWUxNDY3YTdlNTY5YjlkZWJiZmVmNDhmZDMx YWNkMGQ4YjliNTBhNjQ3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDowNjhk NGEyZWJmNjZhMGE2Zjc1ZDNlNzY2NTljNzJhN2Y3MDYzMGY5ODg3MmU2ZjQ4YzQ1YWQ4NjJmZDli MmE0Ci0rQ3RybC50eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gNTVkY2YyYzMyMmI5Yzk0Njg2ZWRi ZjkzMTRkN2M5M2JkOTY1MWUyZWJjNjRmMWEyOTlkNzE3NjU3N2Q2NWIzMgotKwotK0tERiA9IFNT SEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4 MDAxMjIzODM5MjE5ZmE0ZGJhZjJiODhkZWFhMDU4YmVkOTU3OTNiZDYwNzllNjcwZTg4ZWVjZjBh MzkxYWU3Y2UyZDNiZjEyOWUxMTI3M2FhZDBkMDA0N2I4NDk2MGU2ZjczZmEzZGUzOTQwNDJiNDI1 NGM3ODUwZmRkYzc1MjVkY2YyN2ZiOWJkY2FmYzYwNDYyNmFhMjVlMDhjOTM4YTI3YzgwY2E5N2E0 YzFhMjY2MmY0ZTg0ODVlMDE2Yzc1ZTRmNGU2ODYxZjViYmQ2OTRiYmQ2NDkyY2JmZmE5NTEyOGRh YjUyZDhhM2QwMzE2YmNhYmQ1ZGEyYzc4OWRkNjIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2do YXNoOjc4MTdkMzdmZTExZjM0OTlmZWRhMzliZjIxY2U3NzU1MDQwYTAwOTFlNjFlOGViNTg1ZTYy OTljNjY3M2RiODEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjJiN2VmODc5 OTQ5NTk0YzM1ZGJjY2RiYTBiYTQ5NTllM2EyZmFkNDQ2YzVjZTM1NjY2ZTQwMGI3MjE0ZmU2OWUK LStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSBmNGRiYzQxYWEyM2UxNjIxCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMDgwMDEyMjM4MzkyMTlmYTRkYmFmMmI4OGRlYWEwNThiZWQ5NTc5M2JkNjA3OWU2NzBlODhl ZWNmMGEzOTFhZTdjZTJkM2JmMTI5ZTExMjczYWFkMGQwMDQ3Yjg0OTYwZTZmNzNmYTNkZTM5NDA0 MmI0MjU0Yzc4NTBmZGRjNzUyNWRjZjI3ZmI5YmRjYWZjNjA0NjI2YWEyNWUwOGM5MzhhMjdjODBj YTk3YTRjMWEyNjYyZjRlODQ4NWUwMTZjNzVlNGY0ZTY4NjFmNWJiZDY5NGJiZDY0OTJjYmZmYTk1 MTI4ZGFiNTJkOGEzZDAzMTZiY2FiZDVkYTJjNzg5ZGQ2MgotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6NzgxN2QzN2ZlMTFmMzQ5OWZlZGEzOWJmMjFjZTc3NTUwNDBhMDA5MWU2MWU4ZWI1 ODVlNjI5OWM2NjczZGI4MQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MmI3 ZWY4Nzk5NDk1OTRjMzVkYmNjZGJhMGJhNDk1OWUzYTJmYWQ0NDZjNWNlMzU2NjZlNDAwYjcyMTRm ZTY5ZQotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IGU1M2I0MGM1MTExODA4MTcKLSsK LStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhr ZXk6MDAwMDAwODAwMTIyMzgzOTIxOWZhNGRiYWYyYjg4ZGVhYTA1OGJlZDk1NzkzYmQ2MDc5ZTY3 MGU4OGVlY2YwYTM5MWFlN2NlMmQzYmYxMjllMTEyNzNhYWQwZDAwNDdiODQ5NjBlNmY3M2ZhM2Rl Mzk0MDQyYjQyNTRjNzg1MGZkZGM3NTI1ZGNmMjdmYjliZGNhZmM2MDQ2MjZhYTI1ZTA4YzkzOGEy N2M4MGNhOTdhNGMxYTI2NjJmNGU4NDg1ZTAxNmM3NWU0ZjRlNjg2MWY1YmJkNjk0YmJkNjQ5MmNi ZmZhOTUxMjhkYWI1MmQ4YTNkMDMxNmJjYWJkNWRhMmM3ODlkZDYyCi0rQ3RybC5oZXh4Y2doYXNo ID0gaGV4eGNnaGFzaDo3ODE3ZDM3ZmUxMWYzNDk5ZmVkYTM5YmYyMWNlNzc1NTA0MGEwMDkxZTYx ZThlYjU4NWU2Mjk5YzY2NzNkYjgxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDoyYjdlZjg3OTk0OTU5NGMzNWRiY2NkYmEwYmE0OTU5ZTNhMmZhZDQ0NmM1Y2UzNTY2NmU0MDBi NzIxNGZlNjllCi0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0ID0gNzBmZWQ5NDEyOTg5Y2Y1 ZGU5MDhhZDQyOWNiOTIwNjVmZDVjY2MwODE0NzdhYmJhCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3Ry bC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwMDEyMjM4Mzky MTlmYTRkYmFmMmI4OGRlYWEwNThiZWQ5NTc5M2JkNjA3OWU2NzBlODhlZWNmMGEzOTFhZTdjZTJk M2JmMTI5ZTExMjczYWFkMGQwMDQ3Yjg0OTYwZTZmNzNmYTNkZTM5NDA0MmI0MjU0Yzc4NTBmZGRj NzUyNWRjZjI3ZmI5YmRjYWZjNjA0NjI2YWEyNWUwOGM5MzhhMjdjODBjYTk3YTRjMWEyNjYyZjRl ODQ4NWUwMTZjNzVlNGY0ZTY4NjFmNWJiZDY5NGJiZDY0OTJjYmZmYTk1MTI4ZGFiNTJkOGEzZDAz MTZiY2FiZDVkYTJjNzg5ZGQ2MgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NzgxN2Qz N2ZlMTFmMzQ5OWZlZGEzOWJmMjFjZTc3NTUwNDBhMDA5MWU2MWU4ZWI1ODVlNjI5OWM2NjczZGI4 MQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MmI3ZWY4Nzk5NDk1OTRjMzVk YmNjZGJhMGJhNDk1OWUzYTJmYWQ0NDZjNWNlMzU2NjZlNDAwYjcyMTRmZTY5ZQotK0N0cmwudHlw ZSA9IHR5cGU6RAotK091dHB1dCA9IDNhZmRiMGI0YjRiYzEzZTg3MzFiYjkyZTU0MWI3ZDgyYTBi MjBkODg3OGNlMTg0YgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStD dHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDAxMjIzODM5MjE5ZmE0ZGJhZjJiODhkZWFhMDU4 YmVkOTU3OTNiZDYwNzllNjcwZTg4ZWVjZjBhMzkxYWU3Y2UyZDNiZjEyOWUxMTI3M2FhZDBkMDA0 N2I4NDk2MGU2ZjczZmEzZGUzOTQwNDJiNDI1NGM3ODUwZmRkYzc1MjVkY2YyN2ZiOWJkY2FmYzYw NDYyNmFhMjVlMDhjOTM4YTI3YzgwY2E5N2E0YzFhMjY2MmY0ZTg0ODVlMDE2Yzc1ZTRmNGU2ODYx ZjViYmQ2OTRiYmQ2NDkyY2JmZmE5NTEyOGRhYjUyZDhhM2QwMzE2YmNhYmQ1ZGEyYzc4OWRkNjIK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjc4MTdkMzdmZTExZjM0OTlmZWRhMzliZjIx Y2U3NzU1MDQwYTAwOTFlNjFlOGViNTg1ZTYyOTljNjY3M2RiODEKLStDdHJsLmhleHNlc3Npb25f aWQgPSBoZXhzZXNzaW9uX2lkOjJiN2VmODc5OTQ5NTk0YzM1ZGJjY2RiYTBiYTQ5NTllM2EyZmFk NDQ2YzVjZTM1NjY2ZTQwMGI3MjE0ZmU2OWUKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQg PSA1OTkzN2YyNTdhZWVmMDgwNjAzODU0M2NlZDU0MTk5MGU1YzIyNDM4ODE4MThlZGYyYzUyMmE1 NGI2NGU5ZTkzCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwu aGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwMDEyMjM4MzkyMTlmYTRkYmFmMmI4OGRlYWEwNThiZWQ5 NTc5M2JkNjA3OWU2NzBlODhlZWNmMGEzOTFhZTdjZTJkM2JmMTI5ZTExMjczYWFkMGQwMDQ3Yjg0 OTYwZTZmNzNmYTNkZTM5NDA0MmI0MjU0Yzc4NTBmZGRjNzUyNWRjZjI3ZmI5YmRjYWZjNjA0NjI2 YWEyNWUwOGM5MzhhMjdjODBjYTk3YTRjMWEyNjYyZjRlODQ4NWUwMTZjNzVlNGY0ZTY4NjFmNWJi ZDY5NGJiZDY0OTJjYmZmYTk1MTI4ZGFiNTJkOGEzZDAzMTZiY2FiZDVkYTJjNzg5ZGQ2MgotK0N0 cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NzgxN2QzN2ZlMTFmMzQ5OWZlZGEzOWJmMjFjZTc3 NTUwNDBhMDA5MWU2MWU4ZWI1ODVlNjI5OWM2NjczZGI4MQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6MmI3ZWY4Nzk5NDk1OTRjMzVkYmNjZGJhMGJhNDk1OWUzYTJmYWQ0NDZj NWNlMzU2NjZlNDAwYjcyMTRmZTY5ZQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDE4 NzUzMjEwNTI5MzI3NGI4NDE5MThlM2FiNTFmNWRkMDQ1M2Q0MzMxZTg1ZjRlMDZiNzc1ZGJjZTQ5 NzljZGQKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAwODA3ZDM3ODNjZTFmNTk4YzMyNzllOGEzM2YzZThiZmU5YzI1NTk3 OTAzNGY0M2QxMDdiYjNkZDZjYjIxZmY2N2Q5NDU1OTQ5MjlmMmZkN2JlZjc0Njc5YmU4MWQzYWQ2 YzFiNDcyMjkzZDEwNjAyNDJkNzIwZWQyZmIyNTBmZGU4MzgwNjRlZWM2NGQ3NWNiOWQ1ZDJlYzA5 YzllNjdlM2JmNDhjMGQwYTkyNTc3ZjhiZjZlMDVjZmNiYWFmY2QyNDMzNjlmMzBmMTRkMjRhNGFk MmMxYWFmZjUyOGUwMzE5ODIyNzEzNWQyNjgzOWZkNDVjZDYwNjc4YWU0MTMwN2MyCi0rQ3RybC5o ZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyZWZjMmMxYmUyNGUxMjU5MTA1NzU3YmJkMmM1MThkNjJh ZTUyNDAwNDUxMzQ3YWE5MGUyYWFiMDBiYzU4ODY0Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDoyZGY3ZDBkYmNiMWJlYjE3ZWYxYThiOTg4NGM5ZDZkODgzM2I1MDM5Nzk3YTVm Y2U2MWU3YTI0OTA0MDViMzIzCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gM2NjMjIw ZDViYjliNTM0NgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJs LmhleGtleSA9IGhleGtleTowMDAwMDA4MDdkMzc4M2NlMWY1OThjMzI3OWU4YTMzZjNlOGJmZTlj MjU1OTc5MDM0ZjQzZDEwN2JiM2RkNmNiMjFmZjY3ZDk0NTU5NDkyOWYyZmQ3YmVmNzQ2NzliZTgx ZDNhZDZjMWI0NzIyOTNkMTA2MDI0MmQ3MjBlZDJmYjI1MGZkZTgzODA2NGVlYzY0ZDc1Y2I5ZDVk MmVjMDljOWU2N2UzYmY0OGMwZDBhOTI1NzdmOGJmNmUwNWNmY2JhYWZjZDI0MzM2OWYzMGYxNGQy NGE0YWQyYzFhYWZmNTI4ZTAzMTk4MjI3MTM1ZDI2ODM5ZmQ0NWNkNjA2NzhhZTQxMzA3YzIKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjJlZmMyYzFiZTI0ZTEyNTkxMDU3NTdiYmQyYzUx OGQ2MmFlNTI0MDA0NTEzNDdhYTkwZTJhYWIwMGJjNTg4NjQKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOjJkZjdkMGRiY2IxYmViMTdlZjFhOGI5ODg0YzlkNmQ4ODMzYjUwMzk3 OTdhNWZjZTYxZTdhMjQ5MDQwNWIzMjMKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSAw NTFlM2M3OWFlZGU3ZTQxCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1Ngot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwN2QzNzgzY2UxZjU5OGMzMjc5ZThhMzNmM2U4 YmZlOWMyNTU5NzkwMzRmNDNkMTA3YmIzZGQ2Y2IyMWZmNjdkOTQ1NTk0OTI5ZjJmZDdiZWY3NDY3 OWJlODFkM2FkNmMxYjQ3MjI5M2QxMDYwMjQyZDcyMGVkMmZiMjUwZmRlODM4MDY0ZWVjNjRkNzVj YjlkNWQyZWMwOWM5ZTY3ZTNiZjQ4YzBkMGE5MjU3N2Y4YmY2ZTA1Y2ZjYmFhZmNkMjQzMzY5ZjMw ZjE0ZDI0YTRhZDJjMWFhZmY1MjhlMDMxOTgyMjcxMzVkMjY4MzlmZDQ1Y2Q2MDY3OGFlNDEzMDdj MgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MmVmYzJjMWJlMjRlMTI1OTEwNTc1N2Ji ZDJjNTE4ZDYyYWU1MjQwMDQ1MTM0N2FhOTBlMmFhYjAwYmM1ODg2NAotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6MmRmN2QwZGJjYjFiZWIxN2VmMWE4Yjk4ODRjOWQ2ZDg4MzNi NTAzOTc5N2E1ZmNlNjFlN2EyNDkwNDA1YjMyMwotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1 dCA9IDQ0YzJiNDcyNTk2NWVlOWEyYmNlNThkMzhlMmU5YTc3ODI2M2M0MTViMjFhMjViZQotKwot K0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDA4MDdkMzc4M2NlMWY1OThjMzI3OWU4YTMzZjNlOGJmZTljMjU1OTc5MDM0ZjQzZDEw N2JiM2RkNmNiMjFmZjY3ZDk0NTU5NDkyOWYyZmQ3YmVmNzQ2NzliZTgxZDNhZDZjMWI0NzIyOTNk MTA2MDI0MmQ3MjBlZDJmYjI1MGZkZTgzODA2NGVlYzY0ZDc1Y2I5ZDVkMmVjMDljOWU2N2UzYmY0 OGMwZDBhOTI1NzdmOGJmNmUwNWNmY2JhYWZjZDI0MzM2OWYzMGYxNGQyNGE0YWQyYzFhYWZmNTI4 ZTAzMTk4MjI3MTM1ZDI2ODM5ZmQ0NWNkNjA2NzhhZTQxMzA3YzIKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOjJlZmMyYzFiZTI0ZTEyNTkxMDU3NTdiYmQyYzUxOGQ2MmFlNTI0MDA0NTEz NDdhYTkwZTJhYWIwMGJjNTg4NjQKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OjJkZjdkMGRiY2IxYmViMTdlZjFhOGI5ODg0YzlkNmQ4ODMzYjUwMzk3OTdhNWZjZTYxZTdhMjQ5 MDQwNWIzMjMKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBkNWRlN2E4MDE5NTZiOTM0 ZDgyMGY5YWE1MWJmMWRhZTJhN2FlYzdjZTVjZTRlNTAKLSsKLStLREYgPSBTU0hLREYKLStDdHJs Lm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA3ZDM3ODNjZTFm NTk4YzMyNzllOGEzM2YzZThiZmU5YzI1NTk3OTAzNGY0M2QxMDdiYjNkZDZjYjIxZmY2N2Q5NDU1 OTQ5MjlmMmZkN2JlZjc0Njc5YmU4MWQzYWQ2YzFiNDcyMjkzZDEwNjAyNDJkNzIwZWQyZmIyNTBm ZGU4MzgwNjRlZWM2NGQ3NWNiOWQ1ZDJlYzA5YzllNjdlM2JmNDhjMGQwYTkyNTc3ZjhiZjZlMDVj ZmNiYWFmY2QyNDMzNjlmMzBmMTRkMjRhNGFkMmMxYWFmZjUyOGUwMzE5ODIyNzEzNWQyNjgzOWZk NDVjZDYwNjc4YWU0MTMwN2MyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyZWZjMmMx YmUyNGUxMjU5MTA1NzU3YmJkMmM1MThkNjJhZTUyNDAwNDUxMzQ3YWE5MGUyYWFiMDBiYzU4ODY0 Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoyZGY3ZDBkYmNiMWJlYjE3ZWYx YThiOTg4NGM5ZDZkODgzM2I1MDM5Nzk3YTVmY2U2MWU3YTI0OTA0MDViMzIzCi0rQ3RybC50eXBl ID0gdHlwZTpFCi0rT3V0cHV0ID0gN2QyMDM5YTY1MDVlMzIyMDUzNWZkZTBmZjcxNDY0ZjM5NzE1 ODBmNTA3MTEzNTY3NjBiMjI1ZmMzMDUzZmMxOQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDdkMzc4M2NlMWY1OThj MzI3OWU4YTMzZjNlOGJmZTljMjU1OTc5MDM0ZjQzZDEwN2JiM2RkNmNiMjFmZjY3ZDk0NTU5NDky OWYyZmQ3YmVmNzQ2NzliZTgxZDNhZDZjMWI0NzIyOTNkMTA2MDI0MmQ3MjBlZDJmYjI1MGZkZTgz ODA2NGVlYzY0ZDc1Y2I5ZDVkMmVjMDljOWU2N2UzYmY0OGMwZDBhOTI1NzdmOGJmNmUwNWNmY2Jh YWZjZDI0MzM2OWYzMGYxNGQyNGE0YWQyYzFhYWZmNTI4ZTAzMTk4MjI3MTM1ZDI2ODM5ZmQ0NWNk NjA2NzhhZTQxMzA3YzIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjJlZmMyYzFiZTI0 ZTEyNTkxMDU3NTdiYmQyYzUxOGQ2MmFlNTI0MDA0NTEzNDdhYTkwZTJhYWIwMGJjNTg4NjQKLStD dHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjJkZjdkMGRiY2IxYmViMTdlZjFhOGI5 ODg0YzlkNmQ4ODMzYjUwMzk3OTdhNWZjZTYxZTdhMjQ5MDQwNWIzMjMKLStDdHJsLnR5cGUgPSB0 eXBlOkYKLStPdXRwdXQgPSBiMDk3MjM0OGEwMzFlZjJlODdkNDI2MTFlNTNjZjBjNDc4MmQ3NTll Y2RjYzEzOTAzMThlYjExZTE5MjVhYzM1Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBiNDRiMzg2NzUxNzUzYmYx ZmJmZTEwMGIxMTc2MTc2NmFhZWYxNmIyNzg2NDYyYmE5NTYxZDNiNDkzNTgxMjU0YTFjMTU1NmVm NjExZmVjNzAxNDZhODY0Zjg4NjBjNjMxN2YyOTRkMDZhZWM5NDEyOTc0MGM3ODAzNTQxMTk5MjQ5 MjgyNTU1NDM2MmQyNWJmMmM0M2EyZThhNGQyMmU1ZDQ3NzdjNTkzYzg2ODY5NjY2ODRiOTVlOGU0 NTM1ZmMwYjRhMGU1MzI2NGYyMmNmNTY4NDY5ZTgyOWEzMDNjZGQwNmMwOWQ4Zjc0Y2NlZjZiNjAy OGZkZTc4MmE3Mjg1Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo4YzY5MTU4NWNmZmQz OGE2YWQwZmQ3NTFkYTY2YzFhMGYyYjQ2YWQ2YzEyMzQ4YjVhODljZDI0ZjM5ZTc2NTE3Ci0rQ3Ry bC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoyZDkzMjM4ZmUyMGE4NjBkYjJmYjhmYjRj NWEwNTI1YTJmODgxN2FiYmI1Mzc3M2U0YWY5ZmIzNjZhMjEzNTA2Ci0rQ3RybC50eXBlID0gdHlw ZTpBCi0rT3V0cHV0ID0gY2RiMDQ3YmVlY2Q5MmQ4NAotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwYjQ0YjM4Njc1 MTc1M2JmMWZiZmUxMDBiMTE3NjE3NjZhYWVmMTZiMjc4NjQ2MmJhOTU2MWQzYjQ5MzU4MTI1NGEx YzE1NTZlZjYxMWZlYzcwMTQ2YTg2NGY4ODYwYzYzMTdmMjk0ZDA2YWVjOTQxMjk3NDBjNzgwMzU0 MTE5OTI0OTI4MjU1NTQzNjJkMjViZjJjNDNhMmU4YTRkMjJlNWQ0Nzc3YzU5M2M4Njg2OTY2Njg0 Yjk1ZThlNDUzNWZjMGI0YTBlNTMyNjRmMjJjZjU2ODQ2OWU4MjlhMzAzY2RkMDZjMDlkOGY3NGNj ZWY2YjYwMjhmZGU3ODJhNzI4NQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6OGM2OTE1 ODVjZmZkMzhhNmFkMGZkNzUxZGE2NmMxYTBmMmI0NmFkNmMxMjM0OGI1YTg5Y2QyNGYzOWU3NjUx NwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MmQ5MzIzOGZlMjBhODYwZGIy ZmI4ZmI0YzVhMDUyNWEyZjg4MTdhYmJiNTM3NzNlNGFmOWZiMzY2YTIxMzUwNgotK0N0cmwudHlw ZSA9IHR5cGU6QgotK091dHB1dCA9IGVmMzc4ZTg5NGQ4ZjY3NWUKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGI0 NGIzODY3NTE3NTNiZjFmYmZlMTAwYjExNzYxNzY2YWFlZjE2YjI3ODY0NjJiYTk1NjFkM2I0OTM1 ODEyNTRhMWMxNTU2ZWY2MTFmZWM3MDE0NmE4NjRmODg2MGM2MzE3ZjI5NGQwNmFlYzk0MTI5NzQw Yzc4MDM1NDExOTkyNDkyODI1NTU0MzYyZDI1YmYyYzQzYTJlOGE0ZDIyZTVkNDc3N2M1OTNjODY4 Njk2NjY4NGI5NWU4ZTQ1MzVmYzBiNGEwZTUzMjY0ZjIyY2Y1Njg0NjllODI5YTMwM2NkZDA2YzA5 ZDhmNzRjY2VmNmI2MDI4ZmRlNzgyYTcyODUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OjhjNjkxNTg1Y2ZmZDM4YTZhZDBmZDc1MWRhNjZjMWEwZjJiNDZhZDZjMTIzNDhiNWE4OWNkMjRm MzllNzY1MTcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjJkOTMyMzhmZTIw YTg2MGRiMmZiOGZiNGM1YTA1MjVhMmY4ODE3YWJiYjUzNzczZTRhZjlmYjM2NmEyMTM1MDYKLStD dHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAyM2VlNDJhNDM3ODAxZTg3MzQ4YjM5OTliZGU3 NjE0N2E4NzMxZTMxOGRiNTc3NTIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hB MjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGI0NGIzODY3NTE3NTNiZjFmYmZl MTAwYjExNzYxNzY2YWFlZjE2YjI3ODY0NjJiYTk1NjFkM2I0OTM1ODEyNTRhMWMxNTU2ZWY2MTFm ZWM3MDE0NmE4NjRmODg2MGM2MzE3ZjI5NGQwNmFlYzk0MTI5NzQwYzc4MDM1NDExOTkyNDkyODI1 NTU0MzYyZDI1YmYyYzQzYTJlOGE0ZDIyZTVkNDc3N2M1OTNjODY4Njk2NjY4NGI5NWU4ZTQ1MzVm YzBiNGEwZTUzMjY0ZjIyY2Y1Njg0NjllODI5YTMwM2NkZDA2YzA5ZDhmNzRjY2VmNmI2MDI4ZmRl NzgyYTcyODUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjhjNjkxNTg1Y2ZmZDM4YTZh ZDBmZDc1MWRhNjZjMWEwZjJiNDZhZDZjMTIzNDhiNWE4OWNkMjRmMzllNzY1MTcKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjJkOTMyMzhmZTIwYTg2MGRiMmZiOGZiNGM1YTA1 MjVhMmY4ODE3YWJiYjUzNzczZTRhZjlmYjM2NmEyMTM1MDYKLStDdHJsLnR5cGUgPSB0eXBlOkQK LStPdXRwdXQgPSBhM2Y1MGUzZDE0NDk4ZjE1ZTFmMTExY2M5Mjk2NDgwMTFkNmFiZmI1OGU5MGRm MWMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODEwMGI0NGIzODY3NTE3NTNiZjFmYmZlMTAwYjExNzYxNzY2YWFlZjE2 YjI3ODY0NjJiYTk1NjFkM2I0OTM1ODEyNTRhMWMxNTU2ZWY2MTFmZWM3MDE0NmE4NjRmODg2MGM2 MzE3ZjI5NGQwNmFlYzk0MTI5NzQwYzc4MDM1NDExOTkyNDkyODI1NTU0MzYyZDI1YmYyYzQzYTJl OGE0ZDIyZTVkNDc3N2M1OTNjODY4Njk2NjY4NGI5NWU4ZTQ1MzVmYzBiNGEwZTUzMjY0ZjIyY2Y1 Njg0NjllODI5YTMwM2NkZDA2YzA5ZDhmNzRjY2VmNmI2MDI4ZmRlNzgyYTcyODUKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjhjNjkxNTg1Y2ZmZDM4YTZhZDBmZDc1MWRhNjZjMWEwZjJi NDZhZDZjMTIzNDhiNWE4OWNkMjRmMzllNzY1MTcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhz ZXNzaW9uX2lkOjJkOTMyMzhmZTIwYTg2MGRiMmZiOGZiNGM1YTA1MjVhMmY4ODE3YWJiYjUzNzcz ZTRhZjlmYjM2NmEyMTM1MDYKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSBmYjZhMDIw NTYxZTQ2ZTUyMTM0NGNiNjcxYTUwMTc1YWZkNjNkZWQ5MWVlZGFhMWIyODc5YzNhNjM3NjE2NzRk Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMDgxMDBiNDRiMzg2NzUxNzUzYmYxZmJmZTEwMGIxMTc2MTc2NmFhZWYxNmIy Nzg2NDYyYmE5NTYxZDNiNDkzNTgxMjU0YTFjMTU1NmVmNjExZmVjNzAxNDZhODY0Zjg4NjBjNjMx N2YyOTRkMDZhZWM5NDEyOTc0MGM3ODAzNTQxMTk5MjQ5MjgyNTU1NDM2MmQyNWJmMmM0M2EyZThh NGQyMmU1ZDQ3NzdjNTkzYzg2ODY5NjY2ODRiOTVlOGU0NTM1ZmMwYjRhMGU1MzI2NGYyMmNmNTY4 NDY5ZTgyOWEzMDNjZGQwNmMwOWQ4Zjc0Y2NlZjZiNjAyOGZkZTc4MmE3Mjg1Ci0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDo4YzY5MTU4NWNmZmQzOGE2YWQwZmQ3NTFkYTY2YzFhMGYyYjQ2 YWQ2YzEyMzQ4YjVhODljZDI0ZjM5ZTc2NTE3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDoyZDkzMjM4ZmUyMGE4NjBkYjJmYjhmYjRjNWEwNTI1YTJmODgxN2FiYmI1Mzc3M2U0 YWY5ZmIzNjZhMjEzNTA2Ci0rQ3RybC50eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gNTY3YTc5ZTdj NGIxMGQ2MmE0MjBjZTJlYTc0MDY2MWMwOGQ5NDU5ZWQ2MzZlY2I0ZWRlYmNlZGIxN2IwYmFiYQot KwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhl eGtleTowMDAwMDA4MTAwYjM0NjJlZTk0MmYwMjZkZTA5MjJhYjg4YjZlYmY1ZWUyYzk2OGE0ZTEy Y2JmMzc0NTkzZjM1NDJjNmViNjE5ZWExZWMyOWI5NThjNjVhODMzMDVjMzcwMDhkZTNiNjkxZWMw MjBjYzk4OWU2YzUzOTNkYWUzNmJiYjNiZjBkMWEyOWVkMGJhYjZkMjNmNjBlNjNlMjc3MTE5Yjdh NGMwYTVmYTk2ZDljMDQzYTVhY2U1ODAzNDA1MmZmYjcxYjhiZjBlYWVhOGE2YmM5YTk4MzRjNTEy ZDc0NzAxMjJjNzE5MDhhNDRlZjdmMzIyN2I1MTJmNjk3MWM4MjQzNmU5NgotK0N0cmwuaGV4eGNn aGFzaCA9IGhleHhjZ2hhc2g6M2Q1ZDdmNzQyYjA4OTc2NzU1ZTJlYjg0NTdmMWQ5NDAxZDkxOGJi ZjdlMjAxZmUwNzQyZjAwYWU3OTkwODJkZgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6NTBiY2FkMjk3MGUwN2MzYWQzZjE0ZGIwNWQ0NTFkNzczMDRmZTcwOTI3YmEyNjgxNWZj YWYxZjNhNzIzYWY5MQotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IDFmOWU3YWQ1NTky YWM3M2QKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAwODEwMGIzNDYyZWU5NDJmMDI2ZGUwOTIyYWI4OGI2ZWJmNWVlMmM5 NjhhNGUxMmNiZjM3NDU5M2YzNTQyYzZlYjYxOWVhMWVjMjliOTU4YzY1YTgzMzA1YzM3MDA4ZGUz YjY5MWVjMDIwY2M5ODllNmM1MzkzZGFlMzZiYmIzYmYwZDFhMjllZDBiYWI2ZDIzZjYwZTYzZTI3 NzExOWI3YTRjMGE1ZmE5NmQ5YzA0M2E1YWNlNTgwMzQwNTJmZmI3MWI4YmYwZWFlYThhNmJjOWE5 ODM0YzUxMmQ3NDcwMTIyYzcxOTA4YTQ0ZWY3ZjMyMjdiNTEyZjY5NzFjODI0MzZlOTYKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjNkNWQ3Zjc0MmIwODk3Njc1NWUyZWI4NDU3ZjFkOTQw MWQ5MThiYmY3ZTIwMWZlMDc0MmYwMGFlNzk5MDgyZGYKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOjUwYmNhZDI5NzBlMDdjM2FkM2YxNGRiMDVkNDUxZDc3MzA0ZmU3MDkyN2Jh MjY4MTVmY2FmMWYzYTcyM2FmOTEKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSAxNWIy NTRmZTM1MTBkZDc3Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBiMzQ2MmVlOTQyZjAyNmRlMDkyMmFiODhiNmVi ZjVlZTJjOTY4YTRlMTJjYmYzNzQ1OTNmMzU0MmM2ZWI2MTllYTFlYzI5Yjk1OGM2NWE4MzMwNWMz NzAwOGRlM2I2OTFlYzAyMGNjOTg5ZTZjNTM5M2RhZTM2YmJiM2JmMGQxYTI5ZWQwYmFiNmQyM2Y2 MGU2M2UyNzcxMTliN2E0YzBhNWZhOTZkOWMwNDNhNWFjZTU4MDM0MDUyZmZiNzFiOGJmMGVhZWE4 YTZiYzlhOTgzNGM1MTJkNzQ3MDEyMmM3MTkwOGE0NGVmN2YzMjI3YjUxMmY2OTcxYzgyNDM2ZTk2 Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozZDVkN2Y3NDJiMDg5NzY3NTVlMmViODQ1 N2YxZDk0MDFkOTE4YmJmN2UyMDFmZTA3NDJmMDBhZTc5OTA4MmRmCi0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDo1MGJjYWQyOTcwZTA3YzNhZDNmMTRkYjA1ZDQ1MWQ3NzMwNGZl NzA5MjdiYTI2ODE1ZmNhZjFmM2E3MjNhZjkxCi0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0 ID0gODhlYWRkNTgwMmUxYTc0ODI4NDY4NDQzOGViMWIxYmRjOWIyMGVhMzBjNTk5NTBkCi0rCi0r S0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5 OjAwMDAwMDgxMDBiMzQ2MmVlOTQyZjAyNmRlMDkyMmFiODhiNmViZjVlZTJjOTY4YTRlMTJjYmYz NzQ1OTNmMzU0MmM2ZWI2MTllYTFlYzI5Yjk1OGM2NWE4MzMwNWMzNzAwOGRlM2I2OTFlYzAyMGNj OTg5ZTZjNTM5M2RhZTM2YmJiM2JmMGQxYTI5ZWQwYmFiNmQyM2Y2MGU2M2UyNzcxMTliN2E0YzBh NWZhOTZkOWMwNDNhNWFjZTU4MDM0MDUyZmZiNzFiOGJmMGVhZWE4YTZiYzlhOTgzNGM1MTJkNzQ3 MDEyMmM3MTkwOGE0NGVmN2YzMjI3YjUxMmY2OTcxYzgyNDM2ZTk2Ci0rQ3RybC5oZXh4Y2doYXNo ID0gaGV4eGNnaGFzaDozZDVkN2Y3NDJiMDg5NzY3NTVlMmViODQ1N2YxZDk0MDFkOTE4YmJmN2Uy MDFmZTA3NDJmMDBhZTc5OTA4MmRmCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDo1MGJjYWQyOTcwZTA3YzNhZDNmMTRkYjA1ZDQ1MWQ3NzMwNGZlNzA5MjdiYTI2ODE1ZmNhZjFm M2E3MjNhZjkxCi0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gMjc3YzJjNGFkM2Q0YTNi ZWM0YmRjNTMyOWJiNWY5ZDRlMzlhYTA2YjFlMTE1ZTc3Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3Ry bC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBiMzQ2MmVl OTQyZjAyNmRlMDkyMmFiODhiNmViZjVlZTJjOTY4YTRlMTJjYmYzNzQ1OTNmMzU0MmM2ZWI2MTll YTFlYzI5Yjk1OGM2NWE4MzMwNWMzNzAwOGRlM2I2OTFlYzAyMGNjOTg5ZTZjNTM5M2RhZTM2YmJi M2JmMGQxYTI5ZWQwYmFiNmQyM2Y2MGU2M2UyNzcxMTliN2E0YzBhNWZhOTZkOWMwNDNhNWFjZTU4 MDM0MDUyZmZiNzFiOGJmMGVhZWE4YTZiYzlhOTgzNGM1MTJkNzQ3MDEyMmM3MTkwOGE0NGVmN2Yz MjI3YjUxMmY2OTcxYzgyNDM2ZTk2Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozZDVk N2Y3NDJiMDg5NzY3NTVlMmViODQ1N2YxZDk0MDFkOTE4YmJmN2UyMDFmZTA3NDJmMDBhZTc5OTA4 MmRmCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo1MGJjYWQyOTcwZTA3YzNh ZDNmMTRkYjA1ZDQ1MWQ3NzMwNGZlNzA5MjdiYTI2ODE1ZmNhZjFmM2E3MjNhZjkxCi0rQ3RybC50 eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gMDkwZDJmMjczYTY5MGVkMWQ2N2RkOTkxOWMzNDM4NWIx OGE2NjFmODY1N2I4NGJlZjY4MzJmMjM5Njc3MTk3OQotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwYjM0NjJlZTk0 MmYwMjZkZTA5MjJhYjg4YjZlYmY1ZWUyYzk2OGE0ZTEyY2JmMzc0NTkzZjM1NDJjNmViNjE5ZWEx ZWMyOWI5NThjNjVhODMzMDVjMzcwMDhkZTNiNjkxZWMwMjBjYzk4OWU2YzUzOTNkYWUzNmJiYjNi ZjBkMWEyOWVkMGJhYjZkMjNmNjBlNjNlMjc3MTE5YjdhNGMwYTVmYTk2ZDljMDQzYTVhY2U1ODAz NDA1MmZmYjcxYjhiZjBlYWVhOGE2YmM5YTk4MzRjNTEyZDc0NzAxMjJjNzE5MDhhNDRlZjdmMzIy N2I1MTJmNjk3MWM4MjQzNmU5NgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6M2Q1ZDdm NzQyYjA4OTc2NzU1ZTJlYjg0NTdmMWQ5NDAxZDkxOGJiZjdlMjAxZmUwNzQyZjAwYWU3OTkwODJk ZgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NTBiY2FkMjk3MGUwN2MzYWQz ZjE0ZGIwNWQ0NTFkNzczMDRmZTcwOTI3YmEyNjgxNWZjYWYxZjNhNzIzYWY5MQotK0N0cmwudHlw ZSA9IHR5cGU6RgotK091dHB1dCA9IDFmMzA4MmZhNWFjOGVjNTY1NTk1YzRjNWI4YTdkZGJiYTg4 ZWQ0OTM2ZmNhOTEzYmJhNmE4NzE1ZGM4NTZmMzAKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1k ID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDgzMTg4OWM2MDNk NGRjMDFkMGQ5ZjE5ZjA3Y2NhZGI2YTlmYTc2NjIzMDUyNzdkNTllZmJjODcyZjM4MzI1ZGUyZWMy MTUxZjU4NjQ5ZjVmZDE1ZmYzYTA5OWYwMTkxZGNhNjliZTBiOWM4OGVmNzI5ZmU3NGFmODQ5Y2M4 ZTc0NzlmOGE1NDA2ODQyYWY4OGUxMjE2NzYwNzEwM2NkYTQ0OWExMzk0Yzg2YjJjMjFkNDA4M2Nk ZWUyMTZmNzQwNzhkNGU4NzhiMzUyZGY5MDE3Mjc4NzA4MTU1MjhhZTk5Zjc0ZjI1YzIxYThhMzk3 NzI5NDBkODcxYmFkYjM5YTYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmY3Nzk5MmQw NjZiYzMwNTQxOWE2YzFiMDg3OTAwODg1NjI4N2I5NWVjMjBjMmIxYmU1YTVjODE4OWNhZGJiYjEK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjE1YmQyZThjODZkMjNlYWNlNGE1 ODEzNzdlZjhhM2Y1MjY2ZGJkMDgxY2ZjZDAxYWIyYjY4NTA2NDM4MjI4YTIKLStDdHJsLnR5cGUg PSB0eXBlOkEKLStPdXRwdXQgPSAzYWEwOGQ2N2M4MTMxMGI3Ci0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4MzE4 ODljNjAzZDRkYzAxZDBkOWYxOWYwN2NjYWRiNmE5ZmE3NjYyMzA1Mjc3ZDU5ZWZiYzg3MmYzODMy NWRlMmVjMjE1MWY1ODY0OWY1ZmQxNWZmM2EwOTlmMDE5MWRjYTY5YmUwYjljODhlZjcyOWZlNzRh Zjg0OWNjOGU3NDc5ZjhhNTQwNjg0MmFmODhlMTIxNjc2MDcxMDNjZGE0NDlhMTM5NGM4NmIyYzIx ZDQwODNjZGVlMjE2Zjc0MDc4ZDRlODc4YjM1MmRmOTAxNzI3ODcwODE1NTI4YWU5OWY3NGYyNWMy MWE4YTM5NzcyOTQwZDg3MWJhZGIzOWE2Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpm Nzc5OTJkMDY2YmMzMDU0MTlhNmMxYjA4NzkwMDg4NTYyODdiOTVlYzIwYzJiMWJlNWE1YzgxODlj YWRiYmIxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxNWJkMmU4Yzg2ZDIz ZWFjZTRhNTgxMzc3ZWY4YTNmNTI2NmRiZDA4MWNmY2QwMWFiMmI2ODUwNjQzODIyOGEyCi0rQ3Ry bC50eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0gY2Y0NjU5Njg3OGExN2E4NwotKwotK0tERiA9IFNT SEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4 MTAwODMxODg5YzYwM2Q0ZGMwMWQwZDlmMTlmMDdjY2FkYjZhOWZhNzY2MjMwNTI3N2Q1OWVmYmM4 NzJmMzgzMjVkZTJlYzIxNTFmNTg2NDlmNWZkMTVmZjNhMDk5ZjAxOTFkY2E2OWJlMGI5Yzg4ZWY3 MjlmZTc0YWY4NDljYzhlNzQ3OWY4YTU0MDY4NDJhZjg4ZTEyMTY3NjA3MTAzY2RhNDQ5YTEzOTRj ODZiMmMyMWQ0MDgzY2RlZTIxNmY3NDA3OGQ0ZTg3OGIzNTJkZjkwMTcyNzg3MDgxNTUyOGFlOTlm NzRmMjVjMjFhOGEzOTc3Mjk0MGQ4NzFiYWRiMzlhNgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6Zjc3OTkyZDA2NmJjMzA1NDE5YTZjMWIwODc5MDA4ODU2Mjg3Yjk1ZWMyMGMyYjFiZTVh NWM4MTg5Y2FkYmJiMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MTViZDJl OGM4NmQyM2VhY2U0YTU4MTM3N2VmOGEzZjUyNjZkYmQwODFjZmNkMDFhYjJiNjg1MDY0MzgyMjhh MgotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDg3MWRiNDM4YjhiMzNjMjEwMmRkYWIw YzFmN2JlNTFlZTRjMmNiZGY1MmEwMWE1OAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwODMxODg5YzYwM2Q0ZGMw MWQwZDlmMTlmMDdjY2FkYjZhOWZhNzY2MjMwNTI3N2Q1OWVmYmM4NzJmMzgzMjVkZTJlYzIxNTFm NTg2NDlmNWZkMTVmZjNhMDk5ZjAxOTFkY2E2OWJlMGI5Yzg4ZWY3MjlmZTc0YWY4NDljYzhlNzQ3 OWY4YTU0MDY4NDJhZjg4ZTEyMTY3NjA3MTAzY2RhNDQ5YTEzOTRjODZiMmMyMWQ0MDgzY2RlZTIx NmY3NDA3OGQ0ZTg3OGIzNTJkZjkwMTcyNzg3MDgxNTUyOGFlOTlmNzRmMjVjMjFhOGEzOTc3Mjk0 MGQ4NzFiYWRiMzlhNgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6Zjc3OTkyZDA2NmJj MzA1NDE5YTZjMWIwODc5MDA4ODU2Mjg3Yjk1ZWMyMGMyYjFiZTVhNWM4MTg5Y2FkYmJiMQotK0N0 cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MTViZDJlOGM4NmQyM2VhY2U0YTU4MTM3 N2VmOGEzZjUyNjZkYmQwODFjZmNkMDFhYjJiNjg1MDY0MzgyMjhhMgotK0N0cmwudHlwZSA9IHR5 cGU6RAotK091dHB1dCA9IDA0YWMxMzU5OWI4NGMyMmJlMGYxZTVmN2I5NmRlZjMxNTk4ZTZhZDM2 YmU0MTJlOAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhl eGtleSA9IGhleGtleTowMDAwMDA4MTAwODMxODg5YzYwM2Q0ZGMwMWQwZDlmMTlmMDdjY2FkYjZh OWZhNzY2MjMwNTI3N2Q1OWVmYmM4NzJmMzgzMjVkZTJlYzIxNTFmNTg2NDlmNWZkMTVmZjNhMDk5 ZjAxOTFkY2E2OWJlMGI5Yzg4ZWY3MjlmZTc0YWY4NDljYzhlNzQ3OWY4YTU0MDY4NDJhZjg4ZTEy MTY3NjA3MTAzY2RhNDQ5YTEzOTRjODZiMmMyMWQ0MDgzY2RlZTIxNmY3NDA3OGQ0ZTg3OGIzNTJk ZjkwMTcyNzg3MDgxNTUyOGFlOTlmNzRmMjVjMjFhOGEzOTc3Mjk0MGQ4NzFiYWRiMzlhNgotK0N0 cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6Zjc3OTkyZDA2NmJjMzA1NDE5YTZjMWIwODc5MDA4 ODU2Mjg3Yjk1ZWMyMGMyYjFiZTVhNWM4MTg5Y2FkYmJiMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6MTViZDJlOGM4NmQyM2VhY2U0YTU4MTM3N2VmOGEzZjUyNjZkYmQwODFj ZmNkMDFhYjJiNjg1MDY0MzgyMjhhMgotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IGYw MGM4M2E4YWZiNWQxNzkzNzQ5ZDRhYWU4MjViODBlNjdjY2Q3ZjY3ZTA4ZjU3MjIyMmNjZjQyMTI2 ZWEyZjAKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAwODEwMDgzMTg4OWM2MDNkNGRjMDFkMGQ5ZjE5ZjA3Y2NhZGI2YTlm YTc2NjIzMDUyNzdkNTllZmJjODcyZjM4MzI1ZGUyZWMyMTUxZjU4NjQ5ZjVmZDE1ZmYzYTA5OWYw MTkxZGNhNjliZTBiOWM4OGVmNzI5ZmU3NGFmODQ5Y2M4ZTc0NzlmOGE1NDA2ODQyYWY4OGUxMjE2 NzYwNzEwM2NkYTQ0OWExMzk0Yzg2YjJjMjFkNDA4M2NkZWUyMTZmNzQwNzhkNGU4NzhiMzUyZGY5 MDE3Mjc4NzA4MTU1MjhhZTk5Zjc0ZjI1YzIxYThhMzk3NzI5NDBkODcxYmFkYjM5YTYKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmY3Nzk5MmQwNjZiYzMwNTQxOWE2YzFiMDg3OTAwODg1 NjI4N2I5NWVjMjBjMmIxYmU1YTVjODE4OWNhZGJiYjEKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOjE1YmQyZThjODZkMjNlYWNlNGE1ODEzNzdlZjhhM2Y1MjY2ZGJkMDgxY2Zj ZDAxYWIyYjY4NTA2NDM4MjI4YTIKLStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQgPSBkZjA1 NzA3NDlkNjcxMzYwOTViMGRkYTZkNDYxNjc2YjdlZWI5YTM4NmYxMjYzMDZkNDM2Y2FiMTZkZmQx YjNjCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMDgxMDA4ZmE4OWY5Zjg5YTJhMjQxN2E5NDYxNDUxYTRiOTczNDNhZmQ0 NjU1MmE4NzAwZTU4ODYzOGIwZWYwYWU1NjhmZmJhZWUyNzI3YWUzYWU5NjI3MWFhMzNiODQzOWMx YTRiYWQzMTNlYTQyNjA1YWUwOTAyODE3ZDkxNTc3YjZhM2M3MmZjNTc2ZWUyOTU0NGMxZDYzMjNi YWQyMDUzMTdkMjI2NWM1MzNkODJlZDI3YTJkZWE2NGE4NTQ1YzY0ZTk3NzJlODFjZTFjYmZlMjY1 YTUxYWNmYWU3NGI3MmQ1MzY1MzY2MjYzNTQxZTUwYTU2N2MzZmZhNTk0ZWFjMDcxCi0rQ3RybC5o ZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0ZDA3MWVlMzk4NzU3YzU0OGZhNzJmNzdlZDk0ZDViMTU4 YTMxMWQzNjU1YmI3YTZlMzI0YzRlMmEyNmJlODRmCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDpkMWQzNGJlY2Y2NjcwMDJhY2UxNmJlMTA3MjZjYWIzYzdkMThjZTc0MTQ3NTlm NjJhODNjYjRjZmFhZWQ3N2Y0Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gZmFkODAw Y2JmODk3NWEwMQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJs LmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwOGZhODlmOWY4OWEyYTI0MTdhOTQ2MTQ1MWE0Yjk3 MzQzYWZkNDY1NTJhODcwMGU1ODg2MzhiMGVmMGFlNTY4ZmZiYWVlMjcyN2FlM2FlOTYyNzFhYTMz Yjg0MzljMWE0YmFkMzEzZWE0MjYwNWFlMDkwMjgxN2Q5MTU3N2I2YTNjNzJmYzU3NmVlMjk1NDRj MWQ2MzIzYmFkMjA1MzE3ZDIyNjVjNTMzZDgyZWQyN2EyZGVhNjRhODU0NWM2NGU5NzcyZTgxY2Ux Y2JmZTI2NWE1MWFjZmFlNzRiNzJkNTM2NTM2NjI2MzU0MWU1MGE1NjdjM2ZmYTU5NGVhYzA3MQot K0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NGQwNzFlZTM5ODc1N2M1NDhmYTcyZjc3ZWQ5 NGQ1YjE1OGEzMTFkMzY1NWJiN2E2ZTMyNGM0ZTJhMjZiZTg0ZgotK0N0cmwuaGV4c2Vzc2lvbl9p ZCA9IGhleHNlc3Npb25faWQ6ZDFkMzRiZWNmNjY3MDAyYWNlMTZiZTEwNzI2Y2FiM2M3ZDE4Y2U3 NDE0NzU5ZjYyYTgzY2I0Y2ZhYWVkNzdmNAotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9 IDY3OWExMThiZGExZjE1YTkKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2 Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDhmYTg5ZjlmODlhMmEyNDE3YTk0NjE0 NTFhNGI5NzM0M2FmZDQ2NTUyYTg3MDBlNTg4NjM4YjBlZjBhZTU2OGZmYmFlZTI3MjdhZTNhZTk2 MjcxYWEzM2I4NDM5YzFhNGJhZDMxM2VhNDI2MDVhZTA5MDI4MTdkOTE1NzdiNmEzYzcyZmM1NzZl ZTI5NTQ0YzFkNjMyM2JhZDIwNTMxN2QyMjY1YzUzM2Q4MmVkMjdhMmRlYTY0YTg1NDVjNjRlOTc3 MmU4MWNlMWNiZmUyNjVhNTFhY2ZhZTc0YjcyZDUzNjUzNjYyNjM1NDFlNTBhNTY3YzNmZmE1OTRl YWMwNzEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjRkMDcxZWUzOTg3NTdjNTQ4ZmE3 MmY3N2VkOTRkNWIxNThhMzExZDM2NTViYjdhNmUzMjRjNGUyYTI2YmU4NGYKLStDdHJsLmhleHNl c3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmQxZDM0YmVjZjY2NzAwMmFjZTE2YmUxMDcyNmNhYjNj N2QxOGNlNzQxNDc1OWY2MmE4M2NiNGNmYWFlZDc3ZjQKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStP dXRwdXQgPSA1MTkzZTliM2IxMGI3OTM5Yjc5Yjk2N2I5OGU2Y2YzMzk2NzU4ZWFmODI2M2VkZjIK LSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBo ZXhrZXk6MDAwMDAwODEwMDhmYTg5ZjlmODlhMmEyNDE3YTk0NjE0NTFhNGI5NzM0M2FmZDQ2NTUy YTg3MDBlNTg4NjM4YjBlZjBhZTU2OGZmYmFlZTI3MjdhZTNhZTk2MjcxYWEzM2I4NDM5YzFhNGJh ZDMxM2VhNDI2MDVhZTA5MDI4MTdkOTE1NzdiNmEzYzcyZmM1NzZlZTI5NTQ0YzFkNjMyM2JhZDIw NTMxN2QyMjY1YzUzM2Q4MmVkMjdhMmRlYTY0YTg1NDVjNjRlOTc3MmU4MWNlMWNiZmUyNjVhNTFh Y2ZhZTc0YjcyZDUzNjUzNjYyNjM1NDFlNTBhNTY3YzNmZmE1OTRlYWMwNzEKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjRkMDcxZWUzOTg3NTdjNTQ4ZmE3MmY3N2VkOTRkNWIxNThhMzEx ZDM2NTViYjdhNmUzMjRjNGUyYTI2YmU4NGYKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNz aW9uX2lkOmQxZDM0YmVjZjY2NzAwMmFjZTE2YmUxMDcyNmNhYjNjN2QxOGNlNzQxNDc1OWY2MmE4 M2NiNGNmYWFlZDc3ZjQKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSAzZjVkZThiZWM2 ZDczNzgzNmQzYTkxNDgwYWM3NmMxOWQwYTkwYmMxNDZmMDJkNWMKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDhm YTg5ZjlmODlhMmEyNDE3YTk0NjE0NTFhNGI5NzM0M2FmZDQ2NTUyYTg3MDBlNTg4NjM4YjBlZjBh ZTU2OGZmYmFlZTI3MjdhZTNhZTk2MjcxYWEzM2I4NDM5YzFhNGJhZDMxM2VhNDI2MDVhZTA5MDI4 MTdkOTE1NzdiNmEzYzcyZmM1NzZlZTI5NTQ0YzFkNjMyM2JhZDIwNTMxN2QyMjY1YzUzM2Q4MmVk MjdhMmRlYTY0YTg1NDVjNjRlOTc3MmU4MWNlMWNiZmUyNjVhNTFhY2ZhZTc0YjcyZDUzNjUzNjYy NjM1NDFlNTBhNTY3YzNmZmE1OTRlYWMwNzEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OjRkMDcxZWUzOTg3NTdjNTQ4ZmE3MmY3N2VkOTRkNWIxNThhMzExZDM2NTViYjdhNmUzMjRjNGUy YTI2YmU4NGYKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmQxZDM0YmVjZjY2 NzAwMmFjZTE2YmUxMDcyNmNhYjNjN2QxOGNlNzQxNDc1OWY2MmE4M2NiNGNmYWFlZDc3ZjQKLStD dHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSBjZTdiZTRmZmZkMGZmZDA5ZmY0NTg4OWQxMGM3 YmUwZWRmOTIyNDIyZDAxY2I3MWI3MzdjNjE0OWJiMWEyZDA1Ci0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4ZmE4 OWY5Zjg5YTJhMjQxN2E5NDYxNDUxYTRiOTczNDNhZmQ0NjU1MmE4NzAwZTU4ODYzOGIwZWYwYWU1 NjhmZmJhZWUyNzI3YWUzYWU5NjI3MWFhMzNiODQzOWMxYTRiYWQzMTNlYTQyNjA1YWUwOTAyODE3 ZDkxNTc3YjZhM2M3MmZjNTc2ZWUyOTU0NGMxZDYzMjNiYWQyMDUzMTdkMjI2NWM1MzNkODJlZDI3 YTJkZWE2NGE4NTQ1YzY0ZTk3NzJlODFjZTFjYmZlMjY1YTUxYWNmYWU3NGI3MmQ1MzY1MzY2MjYz NTQxZTUwYTU2N2MzZmZhNTk0ZWFjMDcxCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0 ZDA3MWVlMzk4NzU3YzU0OGZhNzJmNzdlZDk0ZDViMTU4YTMxMWQzNjU1YmI3YTZlMzI0YzRlMmEy NmJlODRmCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpkMWQzNGJlY2Y2Njcw MDJhY2UxNmJlMTA3MjZjYWIzYzdkMThjZTc0MTQ3NTlmNjJhODNjYjRjZmFhZWQ3N2Y0Ci0rQ3Ry bC50eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gNjBmNDEzYzliY2M0MmRjZjBhY2M1M2Q1MTNkZDhi YzcwM2Y3ZTVkNjY4ZjRlMDQzZjEzMDI4ZGNmNDA4ODBiMgotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDZhYzM4MmVh YWNhMDkzZTEyNWUyNWMyNGJlYmM4NDY0MGMxMTk4NzUwNzM0NGI1YzczOWNlYjg0YTllMGIyMjJi OWE4YjUxYzgzOWU1ZWJlNDljZmFkYmZiMzk1OTk3NjRlZDUyMjA5OWRjOTEyNzUxOTUwZGM3ZGM5 N2ZiZGMwNjMyOGI2OGYyMjc4MWZkMzE1YWY1NjgwMDlhNTUwOWU1Yjg3YTExYmY1MjdjMDU2ZGFm ZmQ4MmFiNmNiYzI1Y2NhMzcxNDM0NTllN2JjNjNiY2RlNTI3NTdhZGViN2RmMDFjZjEyMTczZjFm ZWY4MTAyZWM1YWIxNDJjMjEzZGQ5ZDMwNjk2Mjc4YThkOGJjMzJkZGU5NTkyZDI4YzA3OGM2ZDky Yjk0N2Q4MjVhY2FhYjY0OTQ4NDZhNDlkZTI0Yjk2MjNmNDg4OWU4YWRjMzhlOGM2NjllZmZlZjE3 NjA0MGFkOTQ1ZTkwYTdkM2VlYzE1ZWZlZWU3OGFlNzEwNDNjOTY1MTExMDNhMTZiYTdjYWYwYWNk MDY0MmVmZGJlODA5OTM0ZmFhMWE1ZjFiZDExMDQzNjQ5YjI1Y2NkMWZlZTJlMzg4MTVkNGQ1ZjVm YzZiNDEwMjk2OWYyMWMyMmFlMWIwZTdkMzYwM2E1NTZhMTMyNjJmZjYyOGRlMjIyCi0rQ3RybC5o ZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo3YjcwMDExODVlMjU2ZDQ0OTM0NDVmMzlhNTVmYjkwNWU2 MzIxZjRiNWRkOGJiZjMxMDBkNTFiYTBiZGEzZDJkCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDo3YjcwMDExODVlMjU2ZDQ0OTM0NDVmMzlhNTVmYjkwNWU2MzIxZjRiNWRkOGJi ZjMxMDBkNTFiYTBiZGEzZDJkCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gODFmMDMz MGVmNmYwNTM2MWIzODIzYmZkZWQ2ZTFkZTkKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA2YWMzODJlYWFjYTA5M2Ux MjVlMjVjMjRiZWJjODQ2NDBjMTE5ODc1MDczNDRiNWM3MzljZWI4NGE5ZTBiMjIyYjlhOGI1MWM4 MzllNWViZTQ5Y2ZhZGJmYjM5NTk5NzY0ZWQ1MjIwOTlkYzkxMjc1MTk1MGRjN2RjOTdmYmRjMDYz MjhiNjhmMjI3ODFmZDMxNWFmNTY4MDA5YTU1MDllNWI4N2ExMWJmNTI3YzA1NmRhZmZkODJhYjZj YmMyNWNjYTM3MTQzNDU5ZTdiYzYzYmNkZTUyNzU3YWRlYjdkZjAxY2YxMjE3M2YxZmVmODEwMmVj NWFiMTQyYzIxM2RkOWQzMDY5NjI3OGE4ZDhiYzMyZGRlOTU5MmQyOGMwNzhjNmQ5MmI5NDdkODI1 YWNhYWI2NDk0ODQ2YTQ5ZGUyNGI5NjIzZjQ4ODllOGFkYzM4ZThjNjY5ZWZmZWYxNzYwNDBhZDk0 NWU5MGE3ZDNlZWMxNWVmZWVlNzhhZTcxMDQzYzk2NTExMTAzYTE2YmE3Y2FmMGFjZDA2NDJlZmRi ZTgwOTkzNGZhYTFhNWYxYmQxMTA0MzY0OWIyNWNjZDFmZWUyZTM4ODE1ZDRkNWY1ZmM2YjQxMDI5 NjlmMjFjMjJhZTFiMGU3ZDM2MDNhNTU2YTEzMjYyZmY2MjhkZTIyMgotK0N0cmwuaGV4eGNnaGFz aCA9IGhleHhjZ2hhc2g6N2I3MDAxMTg1ZTI1NmQ0NDkzNDQ1ZjM5YTU1ZmI5MDVlNjMyMWY0YjVk ZDhiYmYzMTAwZDUxYmEwYmRhM2QyZAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6N2I3MDAxMTg1ZTI1NmQ0NDkzNDQ1ZjM5YTU1ZmI5MDVlNjMyMWY0YjVkZDhiYmYzMTAwZDUx YmEwYmRhM2QyZAotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDNmNmZkMjA2NWVlYjJi MGIxZDkzMTk1YTFmZWQ0OGE1Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1 NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNmFjMzgyZWFhY2EwOTNlMTI1ZTI1YzI0 YmViYzg0NjQwYzExOTg3NTA3MzQ0YjVjNzM5Y2ViODRhOWUwYjIyMmI5YThiNTFjODM5ZTVlYmU0 OWNmYWRiZmIzOTU5OTc2NGVkNTIyMDk5ZGM5MTI3NTE5NTBkYzdkYzk3ZmJkYzA2MzI4YjY4ZjIy NzgxZmQzMTVhZjU2ODAwOWE1NTA5ZTViODdhMTFiZjUyN2MwNTZkYWZmZDgyYWI2Y2JjMjVjY2Ez NzE0MzQ1OWU3YmM2M2JjZGU1Mjc1N2FkZWI3ZGYwMWNmMTIxNzNmMWZlZjgxMDJlYzVhYjE0MmMy MTNkZDlkMzA2OTYyNzhhOGQ4YmMzMmRkZTk1OTJkMjhjMDc4YzZkOTJiOTQ3ZDgyNWFjYWFiNjQ5 NDg0NmE0OWRlMjRiOTYyM2Y0ODg5ZThhZGMzOGU4YzY2OWVmZmVmMTc2MDQwYWQ5NDVlOTBhN2Qz ZWVjMTVlZmVlZTc4YWU3MTA0M2M5NjUxMTEwM2ExNmJhN2NhZjBhY2QwNjQyZWZkYmU4MDk5MzRm YWExYTVmMWJkMTEwNDM2NDliMjVjY2QxZmVlMmUzODgxNWQ0ZDVmNWZjNmI0MTAyOTY5ZjIxYzIy YWUxYjBlN2QzNjAzYTU1NmExMzI2MmZmNjI4ZGUyMjIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOjdiNzAwMTE4NWUyNTZkNDQ5MzQ0NWYzOWE1NWZiOTA1ZTYzMjFmNGI1ZGQ4YmJmMzEw MGQ1MWJhMGJkYTNkMmQKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjdiNzAw MTE4NWUyNTZkNDQ5MzQ0NWYzOWE1NWZiOTA1ZTYzMjFmNGI1ZGQ4YmJmMzEwMGQ1MWJhMGJkYTNk MmQKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSBjMzU0NzEwMzRlNmZkNjU0NzYxMzE3 OGUyMzQzNWYyMQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJs LmhleGtleSA9IGhleGtleTowMDAwMDEwMDZhYzM4MmVhYWNhMDkzZTEyNWUyNWMyNGJlYmM4NDY0 MGMxMTk4NzUwNzM0NGI1YzczOWNlYjg0YTllMGIyMjJiOWE4YjUxYzgzOWU1ZWJlNDljZmFkYmZi Mzk1OTk3NjRlZDUyMjA5OWRjOTEyNzUxOTUwZGM3ZGM5N2ZiZGMwNjMyOGI2OGYyMjc4MWZkMzE1 YWY1NjgwMDlhNTUwOWU1Yjg3YTExYmY1MjdjMDU2ZGFmZmQ4MmFiNmNiYzI1Y2NhMzcxNDM0NTll N2JjNjNiY2RlNTI3NTdhZGViN2RmMDFjZjEyMTczZjFmZWY4MTAyZWM1YWIxNDJjMjEzZGQ5ZDMw Njk2Mjc4YThkOGJjMzJkZGU5NTkyZDI4YzA3OGM2ZDkyYjk0N2Q4MjVhY2FhYjY0OTQ4NDZhNDlk ZTI0Yjk2MjNmNDg4OWU4YWRjMzhlOGM2NjllZmZlZjE3NjA0MGFkOTQ1ZTkwYTdkM2VlYzE1ZWZl ZWU3OGFlNzEwNDNjOTY1MTExMDNhMTZiYTdjYWYwYWNkMDY0MmVmZGJlODA5OTM0ZmFhMWE1ZjFi ZDExMDQzNjQ5YjI1Y2NkMWZlZTJlMzg4MTVkNGQ1ZjVmYzZiNDEwMjk2OWYyMWMyMmFlMWIwZTdk MzYwM2E1NTZhMTMyNjJmZjYyOGRlMjIyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo3 YjcwMDExODVlMjU2ZDQ0OTM0NDVmMzlhNTVmYjkwNWU2MzIxZjRiNWRkOGJiZjMxMDBkNTFiYTBi ZGEzZDJkCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo3YjcwMDExODVlMjU2 ZDQ0OTM0NDVmMzlhNTVmYjkwNWU2MzIxZjRiNWRkOGJiZjMxMDBkNTFiYTBiZGEzZDJkCi0rQ3Ry bC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gN2U5ZDc5MDMyMDkwZDk5Zjk4YjAxNTYzNGRkOWY0 NjIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAxMDA2YWMzODJlYWFjYTA5M2UxMjVlMjVjMjRiZWJjODQ2NDBjMTE5ODc1 MDczNDRiNWM3MzljZWI4NGE5ZTBiMjIyYjlhOGI1MWM4MzllNWViZTQ5Y2ZhZGJmYjM5NTk5NzY0 ZWQ1MjIwOTlkYzkxMjc1MTk1MGRjN2RjOTdmYmRjMDYzMjhiNjhmMjI3ODFmZDMxNWFmNTY4MDA5 YTU1MDllNWI4N2ExMWJmNTI3YzA1NmRhZmZkODJhYjZjYmMyNWNjYTM3MTQzNDU5ZTdiYzYzYmNk ZTUyNzU3YWRlYjdkZjAxY2YxMjE3M2YxZmVmODEwMmVjNWFiMTQyYzIxM2RkOWQzMDY5NjI3OGE4 ZDhiYzMyZGRlOTU5MmQyOGMwNzhjNmQ5MmI5NDdkODI1YWNhYWI2NDk0ODQ2YTQ5ZGUyNGI5NjIz ZjQ4ODllOGFkYzM4ZThjNjY5ZWZmZWYxNzYwNDBhZDk0NWU5MGE3ZDNlZWMxNWVmZWVlNzhhZTcx MDQzYzk2NTExMTAzYTE2YmE3Y2FmMGFjZDA2NDJlZmRiZTgwOTkzNGZhYTFhNWYxYmQxMTA0MzY0 OWIyNWNjZDFmZWUyZTM4ODE1ZDRkNWY1ZmM2YjQxMDI5NjlmMjFjMjJhZTFiMGU3ZDM2MDNhNTU2 YTEzMjYyZmY2MjhkZTIyMgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6N2I3MDAxMTg1 ZTI1NmQ0NDkzNDQ1ZjM5YTU1ZmI5MDVlNjMyMWY0YjVkZDhiYmYzMTAwZDUxYmEwYmRhM2QyZAot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6N2I3MDAxMTg1ZTI1NmQ0NDkzNDQ1 ZjM5YTU1ZmI5MDVlNjMyMWY0YjVkZDhiYmYzMTAwZDUxYmEwYmRhM2QyZAotK0N0cmwudHlwZSA9 IHR5cGU6RQotK091dHB1dCA9IDI0ZWU1NTlhZDdjZTcxMmI2ODVkMGIyMjcxZTQ0M2MxN2FiMWQx ZGNlYjVhMzYwNTY5ZDI1ZDVkYzI0MzAwMmYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA2YWMzODJlYWFjYTA5M2Ux MjVlMjVjMjRiZWJjODQ2NDBjMTE5ODc1MDczNDRiNWM3MzljZWI4NGE5ZTBiMjIyYjlhOGI1MWM4 MzllNWViZTQ5Y2ZhZGJmYjM5NTk5NzY0ZWQ1MjIwOTlkYzkxMjc1MTk1MGRjN2RjOTdmYmRjMDYz MjhiNjhmMjI3ODFmZDMxNWFmNTY4MDA5YTU1MDllNWI4N2ExMWJmNTI3YzA1NmRhZmZkODJhYjZj YmMyNWNjYTM3MTQzNDU5ZTdiYzYzYmNkZTUyNzU3YWRlYjdkZjAxY2YxMjE3M2YxZmVmODEwMmVj NWFiMTQyYzIxM2RkOWQzMDY5NjI3OGE4ZDhiYzMyZGRlOTU5MmQyOGMwNzhjNmQ5MmI5NDdkODI1 YWNhYWI2NDk0ODQ2YTQ5ZGUyNGI5NjIzZjQ4ODllOGFkYzM4ZThjNjY5ZWZmZWYxNzYwNDBhZDk0 NWU5MGE3ZDNlZWMxNWVmZWVlNzhhZTcxMDQzYzk2NTExMTAzYTE2YmE3Y2FmMGFjZDA2NDJlZmRi ZTgwOTkzNGZhYTFhNWYxYmQxMTA0MzY0OWIyNWNjZDFmZWUyZTM4ODE1ZDRkNWY1ZmM2YjQxMDI5 NjlmMjFjMjJhZTFiMGU3ZDM2MDNhNTU2YTEzMjYyZmY2MjhkZTIyMgotK0N0cmwuaGV4eGNnaGFz aCA9IGhleHhjZ2hhc2g6N2I3MDAxMTg1ZTI1NmQ0NDkzNDQ1ZjM5YTU1ZmI5MDVlNjMyMWY0YjVk ZDhiYmYzMTAwZDUxYmEwYmRhM2QyZAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6N2I3MDAxMTg1ZTI1NmQ0NDkzNDQ1ZjM5YTU1ZmI5MDVlNjMyMWY0YjVkZDhiYmYzMTAwZDUx YmEwYmRhM2QyZAotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGMzNDE5YzJiOTY2MjM1 ODY5ZDcxNGJhNWFjNDhkZGI3ZDllMzVjOGMxOWFhYzczNDIyMzM3YTM3MzQ1MzYwN2UKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6 MDAwMDAxMDA0NDcwOGM3NjYxNmY3MDBiZDMxYjBjMTU1ZWY3NGUzNjM5MGVlYjM5YmM1YzMyY2Rj OTBlMjE5MjJiMGVkOTMwYjViNTE5YzhhZmViZWYwZjRlNGZiNWI0MWI4MWQ2NDlkMjEyNzUwNjYy MGI1OTRlOTg5OWY3ZjBkNDQyZWNkZGQ2ODMwODMwN2I4MmYwMDA2NWU5ZDc1MjIwYTVhNmY1NjQx Nzk1NzcyMTMyMjE1YTIzNjA2NGVhOTY1YzY0OTNjMjFmODk4Nzk3MzBlYmJjM2MyMGEyMmQ4ZjVi ZmQwN2I1MjViMTk0MzIzYjIyZDhhNDk5NDRkMWFhNTg1MDJlNzU2MTAxZWYxZThhOTFjOTMxMGU3 MWY2ZGI2NWEzYWQwYTU0MmNmYTc1MWY4MzcyMWE5OWU4OWYxZGJlNTQ5NzFhMzYyMGVjZmZjOTY3 YWE1NWVlZDFhNDJkNmU3YTEzOGI4NTM1NTdhYzg0Njg5ODg5ZjZkMGM4NTUzNTc1ZmI4OWI0ZTEz ZWFiNTUzN2RhNzJlZjE2ZjBkNzJmNWU4NTA1ZDk3ZjExMDc0NTE5M2Q1NTBmYTMxNWZlODhmNjcy ZGI5MGQ3Mzg0M2U5N2JhMWYzZDA4N2JhOGViMzkwMjViYmZmYWQzNzU4OWE2MTk5MjI3MzAzZDlk OGU3ZjFlMwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZmUzNzI3ZmQ5OWE1YWM3OTg3 YzJjZmJlMDYyMTI5ZTMwMjdiZjVlMTAzMTBjNmJjY2RlOWM5MTZjODMyOWRjMgotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZmZmYTU5OGJjMGFkMmFlODRkYzhkYzA1YjFmNzJj NWIwMTM0MDI1YWU3ZWRmOGEyZThkYjExNDcyZTE4ZTFmYwotK0N0cmwudHlwZSA9IHR5cGU6QQot K091dHB1dCA9IDM2NzMwYmFlOGRlNWNiOTg4OThkNmI0YTAwYjM3MDU4Ci0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAw NDQ3MDhjNzY2MTZmNzAwYmQzMWIwYzE1NWVmNzRlMzYzOTBlZWIzOWJjNWMzMmNkYzkwZTIxOTIy YjBlZDkzMGI1YjUxOWM4YWZlYmVmMGY0ZTRmYjViNDFiODFkNjQ5ZDIxMjc1MDY2MjBiNTk0ZTk4 OTlmN2YwZDQ0MmVjZGRkNjgzMDgzMDdiODJmMDAwNjVlOWQ3NTIyMGE1YTZmNTY0MTc5NTc3MjEz MjIxNWEyMzYwNjRlYTk2NWM2NDkzYzIxZjg5ODc5NzMwZWJiYzNjMjBhMjJkOGY1YmZkMDdiNTI1 YjE5NDMyM2IyMmQ4YTQ5OTQ0ZDFhYTU4NTAyZTc1NjEwMWVmMWU4YTkxYzkzMTBlNzFmNmRiNjVh M2FkMGE1NDJjZmE3NTFmODM3MjFhOTllODlmMWRiZTU0OTcxYTM2MjBlY2ZmYzk2N2FhNTVlZWQx YTQyZDZlN2ExMzhiODUzNTU3YWM4NDY4OTg4OWY2ZDBjODU1MzU3NWZiODliNGUxM2VhYjU1Mzdk YTcyZWYxNmYwZDcyZjVlODUwNWQ5N2YxMTA3NDUxOTNkNTUwZmEzMTVmZTg4ZjY3MmRiOTBkNzM4 NDNlOTdiYTFmM2QwODdiYThlYjM5MDI1YmJmZmFkMzc1ODlhNjE5OTIyNzMwM2Q5ZDhlN2YxZTMK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmZlMzcyN2ZkOTlhNWFjNzk4N2MyY2ZiZTA2 MjEyOWUzMDI3YmY1ZTEwMzEwYzZiY2NkZTljOTE2YzgzMjlkYzIKLStDdHJsLmhleHNlc3Npb25f aWQgPSBoZXhzZXNzaW9uX2lkOmZmZmE1OThiYzBhZDJhZTg0ZGM4ZGMwNWIxZjcyYzViMDEzNDAy NWFlN2VkZjhhMmU4ZGIxMTQ3MmUxOGUxZmMKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQg PSA1ZGZlNDQ2YTgzZjQwZTgzNThkMjhjYjk3ZGY4ZjM0MAotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDQ0NzA4Yzc2 NjE2ZjcwMGJkMzFiMGMxNTVlZjc0ZTM2MzkwZWViMzliYzVjMzJjZGM5MGUyMTkyMmIwZWQ5MzBi NWI1MTljOGFmZWJlZjBmNGU0ZmI1YjQxYjgxZDY0OWQyMTI3NTA2NjIwYjU5NGU5ODk5ZjdmMGQ0 NDJlY2RkZDY4MzA4MzA3YjgyZjAwMDY1ZTlkNzUyMjBhNWE2ZjU2NDE3OTU3NzIxMzIyMTVhMjM2 MDY0ZWE5NjVjNjQ5M2MyMWY4OTg3OTczMGViYmMzYzIwYTIyZDhmNWJmZDA3YjUyNWIxOTQzMjNi MjJkOGE0OTk0NGQxYWE1ODUwMmU3NTYxMDFlZjFlOGE5MWM5MzEwZTcxZjZkYjY1YTNhZDBhNTQy Y2ZhNzUxZjgzNzIxYTk5ZTg5ZjFkYmU1NDk3MWEzNjIwZWNmZmM5NjdhYTU1ZWVkMWE0MmQ2ZTdh MTM4Yjg1MzU1N2FjODQ2ODk4ODlmNmQwYzg1NTM1NzVmYjg5YjRlMTNlYWI1NTM3ZGE3MmVmMTZm MGQ3MmY1ZTg1MDVkOTdmMTEwNzQ1MTkzZDU1MGZhMzE1ZmU4OGY2NzJkYjkwZDczODQzZTk3YmEx ZjNkMDg3YmE4ZWIzOTAyNWJiZmZhZDM3NTg5YTYxOTkyMjczMDNkOWQ4ZTdmMWUzCi0rQ3RybC5o ZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpmZTM3MjdmZDk5YTVhYzc5ODdjMmNmYmUwNjIxMjllMzAy N2JmNWUxMDMxMGM2YmNjZGU5YzkxNmM4MzI5ZGMyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDpmZmZhNTk4YmMwYWQyYWU4NGRjOGRjMDViMWY3MmM1YjAxMzQwMjVhZTdlZGY4 YTJlOGRiMTE0NzJlMThlMWZjCi0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0ID0gNDk1Yjdh ZmVkMDg3MmI3NjE0Mzc3MjhlOWU5NGUyYjgKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA0NDcwOGM3NjYxNmY3MDBi ZDMxYjBjMTU1ZWY3NGUzNjM5MGVlYjM5YmM1YzMyY2RjOTBlMjE5MjJiMGVkOTMwYjViNTE5Yzhh ZmViZWYwZjRlNGZiNWI0MWI4MWQ2NDlkMjEyNzUwNjYyMGI1OTRlOTg5OWY3ZjBkNDQyZWNkZGQ2 ODMwODMwN2I4MmYwMDA2NWU5ZDc1MjIwYTVhNmY1NjQxNzk1NzcyMTMyMjE1YTIzNjA2NGVhOTY1 YzY0OTNjMjFmODk4Nzk3MzBlYmJjM2MyMGEyMmQ4ZjViZmQwN2I1MjViMTk0MzIzYjIyZDhhNDk5 NDRkMWFhNTg1MDJlNzU2MTAxZWYxZThhOTFjOTMxMGU3MWY2ZGI2NWEzYWQwYTU0MmNmYTc1MWY4 MzcyMWE5OWU4OWYxZGJlNTQ5NzFhMzYyMGVjZmZjOTY3YWE1NWVlZDFhNDJkNmU3YTEzOGI4NTM1 NTdhYzg0Njg5ODg5ZjZkMGM4NTUzNTc1ZmI4OWI0ZTEzZWFiNTUzN2RhNzJlZjE2ZjBkNzJmNWU4 NTA1ZDk3ZjExMDc0NTE5M2Q1NTBmYTMxNWZlODhmNjcyZGI5MGQ3Mzg0M2U5N2JhMWYzZDA4N2Jh OGViMzkwMjViYmZmYWQzNzU4OWE2MTk5MjI3MzAzZDlkOGU3ZjFlMwotK0N0cmwuaGV4eGNnaGFz aCA9IGhleHhjZ2hhc2g6ZmUzNzI3ZmQ5OWE1YWM3OTg3YzJjZmJlMDYyMTI5ZTMwMjdiZjVlMTAz MTBjNmJjY2RlOWM5MTZjODMyOWRjMgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6ZmZmYTU5OGJjMGFkMmFlODRkYzhkYzA1YjFmNzJjNWIwMTM0MDI1YWU3ZWRmOGEyZThkYjEx NDcyZTE4ZTFmYwotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGMxNDc0YjM5MjViZWMz NmYwYjdmNmNjNjk4ZTk0OWM4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1 NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNDQ3MDhjNzY2MTZmNzAwYmQzMWIwYzE1 NWVmNzRlMzYzOTBlZWIzOWJjNWMzMmNkYzkwZTIxOTIyYjBlZDkzMGI1YjUxOWM4YWZlYmVmMGY0 ZTRmYjViNDFiODFkNjQ5ZDIxMjc1MDY2MjBiNTk0ZTk4OTlmN2YwZDQ0MmVjZGRkNjgzMDgzMDdi ODJmMDAwNjVlOWQ3NTIyMGE1YTZmNTY0MTc5NTc3MjEzMjIxNWEyMzYwNjRlYTk2NWM2NDkzYzIx Zjg5ODc5NzMwZWJiYzNjMjBhMjJkOGY1YmZkMDdiNTI1YjE5NDMyM2IyMmQ4YTQ5OTQ0ZDFhYTU4 NTAyZTc1NjEwMWVmMWU4YTkxYzkzMTBlNzFmNmRiNjVhM2FkMGE1NDJjZmE3NTFmODM3MjFhOTll ODlmMWRiZTU0OTcxYTM2MjBlY2ZmYzk2N2FhNTVlZWQxYTQyZDZlN2ExMzhiODUzNTU3YWM4NDY4 OTg4OWY2ZDBjODU1MzU3NWZiODliNGUxM2VhYjU1MzdkYTcyZWYxNmYwZDcyZjVlODUwNWQ5N2Yx MTA3NDUxOTNkNTUwZmEzMTVmZTg4ZjY3MmRiOTBkNzM4NDNlOTdiYTFmM2QwODdiYThlYjM5MDI1 YmJmZmFkMzc1ODlhNjE5OTIyNzMwM2Q5ZDhlN2YxZTMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOmZlMzcyN2ZkOTlhNWFjNzk4N2MyY2ZiZTA2MjEyOWUzMDI3YmY1ZTEwMzEwYzZiY2Nk ZTljOTE2YzgzMjlkYzIKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmZmZmE1 OThiYzBhZDJhZTg0ZGM4ZGMwNWIxZjcyYzViMDEzNDAyNWFlN2VkZjhhMmU4ZGIxMTQ3MmUxOGUx ZmMKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSBiNzMwZjhkZjZhMDY5NzY0NWJlMjYx MTY5NDg2YzMyYTExNjEyMjI5Mjc2Y2JhYzVkOGIzNjY5YWZiMmU0MjYyCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAw NDQ3MDhjNzY2MTZmNzAwYmQzMWIwYzE1NWVmNzRlMzYzOTBlZWIzOWJjNWMzMmNkYzkwZTIxOTIy YjBlZDkzMGI1YjUxOWM4YWZlYmVmMGY0ZTRmYjViNDFiODFkNjQ5ZDIxMjc1MDY2MjBiNTk0ZTk4 OTlmN2YwZDQ0MmVjZGRkNjgzMDgzMDdiODJmMDAwNjVlOWQ3NTIyMGE1YTZmNTY0MTc5NTc3MjEz MjIxNWEyMzYwNjRlYTk2NWM2NDkzYzIxZjg5ODc5NzMwZWJiYzNjMjBhMjJkOGY1YmZkMDdiNTI1 YjE5NDMyM2IyMmQ4YTQ5OTQ0ZDFhYTU4NTAyZTc1NjEwMWVmMWU4YTkxYzkzMTBlNzFmNmRiNjVh M2FkMGE1NDJjZmE3NTFmODM3MjFhOTllODlmMWRiZTU0OTcxYTM2MjBlY2ZmYzk2N2FhNTVlZWQx YTQyZDZlN2ExMzhiODUzNTU3YWM4NDY4OTg4OWY2ZDBjODU1MzU3NWZiODliNGUxM2VhYjU1Mzdk YTcyZWYxNmYwZDcyZjVlODUwNWQ5N2YxMTA3NDUxOTNkNTUwZmEzMTVmZTg4ZjY3MmRiOTBkNzM4 NDNlOTdiYTFmM2QwODdiYThlYjM5MDI1YmJmZmFkMzc1ODlhNjE5OTIyNzMwM2Q5ZDhlN2YxZTMK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmZlMzcyN2ZkOTlhNWFjNzk4N2MyY2ZiZTA2 MjEyOWUzMDI3YmY1ZTEwMzEwYzZiY2NkZTljOTE2YzgzMjlkYzIKLStDdHJsLmhleHNlc3Npb25f aWQgPSBoZXhzZXNzaW9uX2lkOmZmZmE1OThiYzBhZDJhZTg0ZGM4ZGMwNWIxZjcyYzViMDEzNDAy NWFlN2VkZjhhMmU4ZGIxMTQ3MmUxOGUxZmMKLStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQg PSAxNGE1ZWE5ODI0NWZiMDU4OTc4YjgyYTNjYjA5MmIxY2NhN2NlMDEwOWE0Zjk4YzE2ZTE1Mjk1 NzlkNThiODE5Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwu aGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDA5YjFjNjM3Mjg2NzIwZDExYTkwMzAyNjBlMzU3MjY2 MjFmNTQxMTU1NjBjNDQzZGVkOThkNTYyMmY0MDA3Y2I2NTQyN2JhOGFlMDgzMWYzNDQ1MjM0OTk5 M2M3NDkzMzQ2NmYzMzA3ZTExNDUyMTUwZjQ2NDAwMTBlZDdkMWFiODc2NTYyMzJkOTY1OWQ5OTgy ZTgyMjdjMjVkNjQ4MTg5ZDJiZGRhMzI4M2FhNWRlYzhhMjEwNWFmMGZhODQwNTkyYTIxZDk2ZWVi YjkzMmY4ZmYzNmY5NGEyZTRmYzM4MTlkN2M5ZjBkMjZhNDcyZmI1YWU1YTQzYTJkNDkwNjI0N2Q1 OWM0MjUxMmRkYTI1MjIwNWY2MDA0MmUxOTAwZTE1ODExMjdmMjVhY2UyNTNiNjJhODNmNjJkNDcw MzI4MWEyOTRmMjQwZGYyYWEzNGRkZjQzN2M5ZjI3ODI3ODEyMGJjMTBlMmNiOTlmNzgwNGVjZDY3 NDFiMWJlNTUyMGM1NTNjYjg5NzQ3Zjc5YjRlNGVmZDNjZjA5YjQ4NGViMWViMDM0ZDIyMGRhNDU3 NTQ2YTJlYmIyOGQ3ZjJmYWY2N2RlMDYzMDc1N2I4YWUwNWUyN2E3NjE5NTZkMmUxOTBmZTNmYjkz YjFjN2MxNDJmNjJiYWViMDg5NzIxY2VkYwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6 Y2FkNDA3YTgyMzU1MTcyNmY5YmRjYjc4ZThmMzUxNTM2ZTQ0MDZlOGVlNjQ5NDdlY2MwMDc0NjYy YzdjMDQ2MgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTljODIwNzY0MjYy N2U2ZWU4NzI5OTkxMjNiMjllMzZhYmZkZDA3MWRiYTM2ZWE2ZjBjMTFkZDU5ZWE0NjQxMAotK0N0 cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IDMyZDIwYTNmNWU5MmIyMGZlMTAwZjRmNDFhMWFk NTNjCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMTAxMDA5YjFjNjM3Mjg2NzIwZDExYTkwMzAyNjBlMzU3MjY2MjFmNTQx MTU1NjBjNDQzZGVkOThkNTYyMmY0MDA3Y2I2NTQyN2JhOGFlMDgzMWYzNDQ1MjM0OTk5M2M3NDkz MzQ2NmYzMzA3ZTExNDUyMTUwZjQ2NDAwMTBlZDdkMWFiODc2NTYyMzJkOTY1OWQ5OTgyZTgyMjdj MjVkNjQ4MTg5ZDJiZGRhMzI4M2FhNWRlYzhhMjEwNWFmMGZhODQwNTkyYTIxZDk2ZWViYjkzMmY4 ZmYzNmY5NGEyZTRmYzM4MTlkN2M5ZjBkMjZhNDcyZmI1YWU1YTQzYTJkNDkwNjI0N2Q1OWM0MjUx MmRkYTI1MjIwNWY2MDA0MmUxOTAwZTE1ODExMjdmMjVhY2UyNTNiNjJhODNmNjJkNDcwMzI4MWEy OTRmMjQwZGYyYWEzNGRkZjQzN2M5ZjI3ODI3ODEyMGJjMTBlMmNiOTlmNzgwNGVjZDY3NDFiMWJl NTUyMGM1NTNjYjg5NzQ3Zjc5YjRlNGVmZDNjZjA5YjQ4NGViMWViMDM0ZDIyMGRhNDU3NTQ2YTJl YmIyOGQ3ZjJmYWY2N2RlMDYzMDc1N2I4YWUwNWUyN2E3NjE5NTZkMmUxOTBmZTNmYjkzYjFjN2Mx NDJmNjJiYWViMDg5NzIxY2VkYwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6Y2FkNDA3 YTgyMzU1MTcyNmY5YmRjYjc4ZThmMzUxNTM2ZTQ0MDZlOGVlNjQ5NDdlY2MwMDc0NjYyYzdjMDQ2 MgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTljODIwNzY0MjYyN2U2ZWU4 NzI5OTkxMjNiMjllMzZhYmZkZDA3MWRiYTM2ZWE2ZjBjMTFkZDU5ZWE0NjQxMAotK0N0cmwudHlw ZSA9IHR5cGU6QgotK091dHB1dCA9IGMzYTNmZjU3Zjk5MTg3YmEwMTFmZDQyMjEwMGFmNTc3Ci0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMTAxMDA5YjFjNjM3Mjg2NzIwZDExYTkwMzAyNjBlMzU3MjY2MjFmNTQxMTU1NjBj NDQzZGVkOThkNTYyMmY0MDA3Y2I2NTQyN2JhOGFlMDgzMWYzNDQ1MjM0OTk5M2M3NDkzMzQ2NmYz MzA3ZTExNDUyMTUwZjQ2NDAwMTBlZDdkMWFiODc2NTYyMzJkOTY1OWQ5OTgyZTgyMjdjMjVkNjQ4 MTg5ZDJiZGRhMzI4M2FhNWRlYzhhMjEwNWFmMGZhODQwNTkyYTIxZDk2ZWViYjkzMmY4ZmYzNmY5 NGEyZTRmYzM4MTlkN2M5ZjBkMjZhNDcyZmI1YWU1YTQzYTJkNDkwNjI0N2Q1OWM0MjUxMmRkYTI1 MjIwNWY2MDA0MmUxOTAwZTE1ODExMjdmMjVhY2UyNTNiNjJhODNmNjJkNDcwMzI4MWEyOTRmMjQw ZGYyYWEzNGRkZjQzN2M5ZjI3ODI3ODEyMGJjMTBlMmNiOTlmNzgwNGVjZDY3NDFiMWJlNTUyMGM1 NTNjYjg5NzQ3Zjc5YjRlNGVmZDNjZjA5YjQ4NGViMWViMDM0ZDIyMGRhNDU3NTQ2YTJlYmIyOGQ3 ZjJmYWY2N2RlMDYzMDc1N2I4YWUwNWUyN2E3NjE5NTZkMmUxOTBmZTNmYjkzYjFjN2MxNDJmNjJi YWViMDg5NzIxY2VkYwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6Y2FkNDA3YTgyMzU1 MTcyNmY5YmRjYjc4ZThmMzUxNTM2ZTQ0MDZlOGVlNjQ5NDdlY2MwMDc0NjYyYzdjMDQ2MgotK0N0 cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTljODIwNzY0MjYyN2U2ZWU4NzI5OTkx MjNiMjllMzZhYmZkZDA3MWRiYTM2ZWE2ZjBjMTFkZDU5ZWE0NjQxMAotK0N0cmwudHlwZSA9IHR5 cGU6QwotK091dHB1dCA9IDg1MTc5MDNjNDlkNWE1OWFkOGVmN2NkODU5MWM2YjVlCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMTAxMDA5YjFjNjM3Mjg2NzIwZDExYTkwMzAyNjBlMzU3MjY2MjFmNTQxMTU1NjBjNDQzZGVk OThkNTYyMmY0MDA3Y2I2NTQyN2JhOGFlMDgzMWYzNDQ1MjM0OTk5M2M3NDkzMzQ2NmYzMzA3ZTEx NDUyMTUwZjQ2NDAwMTBlZDdkMWFiODc2NTYyMzJkOTY1OWQ5OTgyZTgyMjdjMjVkNjQ4MTg5ZDJi ZGRhMzI4M2FhNWRlYzhhMjEwNWFmMGZhODQwNTkyYTIxZDk2ZWViYjkzMmY4ZmYzNmY5NGEyZTRm YzM4MTlkN2M5ZjBkMjZhNDcyZmI1YWU1YTQzYTJkNDkwNjI0N2Q1OWM0MjUxMmRkYTI1MjIwNWY2 MDA0MmUxOTAwZTE1ODExMjdmMjVhY2UyNTNiNjJhODNmNjJkNDcwMzI4MWEyOTRmMjQwZGYyYWEz NGRkZjQzN2M5ZjI3ODI3ODEyMGJjMTBlMmNiOTlmNzgwNGVjZDY3NDFiMWJlNTUyMGM1NTNjYjg5 NzQ3Zjc5YjRlNGVmZDNjZjA5YjQ4NGViMWViMDM0ZDIyMGRhNDU3NTQ2YTJlYmIyOGQ3ZjJmYWY2 N2RlMDYzMDc1N2I4YWUwNWUyN2E3NjE5NTZkMmUxOTBmZTNmYjkzYjFjN2MxNDJmNjJiYWViMDg5 NzIxY2VkYwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6Y2FkNDA3YTgyMzU1MTcyNmY5 YmRjYjc4ZThmMzUxNTM2ZTQ0MDZlOGVlNjQ5NDdlY2MwMDc0NjYyYzdjMDQ2MgotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTljODIwNzY0MjYyN2U2ZWU4NzI5OTkxMjNiMjll MzZhYmZkZDA3MWRiYTM2ZWE2ZjBjMTFkZDU5ZWE0NjQxMAotK0N0cmwudHlwZSA9IHR5cGU6RAot K091dHB1dCA9IGE1YWQyMDExMDFhNjE3ZjFjZDViM2EyYmFhM2IyN2Y3Ci0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAx MDA5YjFjNjM3Mjg2NzIwZDExYTkwMzAyNjBlMzU3MjY2MjFmNTQxMTU1NjBjNDQzZGVkOThkNTYy MmY0MDA3Y2I2NTQyN2JhOGFlMDgzMWYzNDQ1MjM0OTk5M2M3NDkzMzQ2NmYzMzA3ZTExNDUyMTUw ZjQ2NDAwMTBlZDdkMWFiODc2NTYyMzJkOTY1OWQ5OTgyZTgyMjdjMjVkNjQ4MTg5ZDJiZGRhMzI4 M2FhNWRlYzhhMjEwNWFmMGZhODQwNTkyYTIxZDk2ZWViYjkzMmY4ZmYzNmY5NGEyZTRmYzM4MTlk N2M5ZjBkMjZhNDcyZmI1YWU1YTQzYTJkNDkwNjI0N2Q1OWM0MjUxMmRkYTI1MjIwNWY2MDA0MmUx OTAwZTE1ODExMjdmMjVhY2UyNTNiNjJhODNmNjJkNDcwMzI4MWEyOTRmMjQwZGYyYWEzNGRkZjQz N2M5ZjI3ODI3ODEyMGJjMTBlMmNiOTlmNzgwNGVjZDY3NDFiMWJlNTUyMGM1NTNjYjg5NzQ3Zjc5 YjRlNGVmZDNjZjA5YjQ4NGViMWViMDM0ZDIyMGRhNDU3NTQ2YTJlYmIyOGQ3ZjJmYWY2N2RlMDYz MDc1N2I4YWUwNWUyN2E3NjE5NTZkMmUxOTBmZTNmYjkzYjFjN2MxNDJmNjJiYWViMDg5NzIxY2Vk YwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6Y2FkNDA3YTgyMzU1MTcyNmY5YmRjYjc4 ZThmMzUxNTM2ZTQ0MDZlOGVlNjQ5NDdlY2MwMDc0NjYyYzdjMDQ2MgotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6YTljODIwNzY0MjYyN2U2ZWU4NzI5OTkxMjNiMjllMzZhYmZk ZDA3MWRiYTM2ZWE2ZjBjMTFkZDU5ZWE0NjQxMAotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1 dCA9IDE2NzQ3YTIzZmRkZDcyZjc4NWM1ZDYxZGZiODFhNWEzODU1NWY1ZDhmZjFkYzVhZTRmYjQy M2I4MmFkZmUwNWIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMDliMWM2MzcyODY3MjBkMTFhOTAzMDI2MGUzNTcy NjYyMWY1NDExNTU2MGM0NDNkZWQ5OGQ1NjIyZjQwMDdjYjY1NDI3YmE4YWUwODMxZjM0NDUyMzQ5 OTkzYzc0OTMzNDY2ZjMzMDdlMTE0NTIxNTBmNDY0MDAxMGVkN2QxYWI4NzY1NjIzMmQ5NjU5ZDk5 ODJlODIyN2MyNWQ2NDgxODlkMmJkZGEzMjgzYWE1ZGVjOGEyMTA1YWYwZmE4NDA1OTJhMjFkOTZl ZWJiOTMyZjhmZjM2Zjk0YTJlNGZjMzgxOWQ3YzlmMGQyNmE0NzJmYjVhZTVhNDNhMmQ0OTA2MjQ3 ZDU5YzQyNTEyZGRhMjUyMjA1ZjYwMDQyZTE5MDBlMTU4MTEyN2YyNWFjZTI1M2I2MmE4M2Y2MmQ0 NzAzMjgxYTI5NGYyNDBkZjJhYTM0ZGRmNDM3YzlmMjc4Mjc4MTIwYmMxMGUyY2I5OWY3ODA0ZWNk Njc0MWIxYmU1NTIwYzU1M2NiODk3NDdmNzliNGU0ZWZkM2NmMDliNDg0ZWIxZWIwMzRkMjIwZGE0 NTc1NDZhMmViYjI4ZDdmMmZhZjY3ZGUwNjMwNzU3YjhhZTA1ZTI3YTc2MTk1NmQyZTE5MGZlM2Zi OTNiMWM3YzE0MmY2MmJhZWIwODk3MjFjZWRjCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDpjYWQ0MDdhODIzNTUxNzI2ZjliZGNiNzhlOGYzNTE1MzZlNDQwNmU4ZWU2NDk0N2VjYzAwNzQ2 NjJjN2MwNDYyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphOWM4MjA3NjQy NjI3ZTZlZTg3Mjk5OTEyM2IyOWUzNmFiZmRkMDcxZGJhMzZlYTZmMGMxMWRkNTllYTQ2NDEwCi0r Q3RybC50eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gYjFiMWJiYTg5NmIwZmQ3NWE5MDE4N2VhZTZj ZGY3NDRkMjM4ODRjYWE1ZjRjYTk3OWNlZDMyN2NhMTIzOTc3MQotKwotK0tERiA9IFNTSEtERgot K0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwOGNk NzA2MWEzNTkxYjQ3Nzk4OWE0ZGViMWJmYzZkZWJlODc0Zjc1M2E0Njg2ZWVmMTFkMWZhMGU2Nzk2 ODAwZGI5N2MzODQ5Nzk5MmIyMjBkNmU0MGQ4ZjkxNTQ3NDNiNTMzNjY2Yzg2ODlkYjhjZGZmZDM4 YWM0MDA5Zjg1Y2ZjNmU0OGRjMmZlOTRmNzg4NzAxMzg5OTRhYjQxODllOGQ0NjFhMDBiMDM0MjVk OGQ4MzgwNjFiNDRlN2NjZDQxZTNhMDMzMmFiNjhhZmJmMjkxOTc2M2M5ZjAzNzQ3NjM3ZGI4N2E1 MGQ3NjY1MDQxOTlmYmE2YzM0ZDIxNjU4MGZjZDc3NzU2YTYwMDRmZjQ4NWE3OWNkYjY0NmYwYWRk ZTQ3YTcyN2UwMjgyNjFjODA4ZTBjYjMxOTI4MDcxNzAxYTBmMmQyZDIzN2MyOTNiOTNlODA4NTRm NGU0MzI0M2VhZWI5NmNjMjVlMDBmNzRlMmNkNDE0YzcyNzc0Yzc5OTU3NTdlOTNjMGE5YWFjNWVm NWIwZDIzYmVmOWNlNDc1YmZlNjk3ZDE0YjgxNWVlYjA1MzVkNmU3ZTQzOGJkYjU0YWEyZDhmNTBk MDU1NjRkMTdjM2ZmMmJjMzQ1MWNhNWI5MzJmMzIwYzIwZjFjMjU2YzYxZWQ1MDNiZTI1MjgKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjUzZmM1MjFlZGY2ZGVhOWRhZjYxOTY3NjI3Njc2 NjUwOGQzMmMxOTY0OTQzZTliZDQwYjRlZDJjZGVmYTdjMjAKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOjE0YzY3MjdkOGUyMTFjNzYzMmY5MzBlNzE2YWIzNjBlMDkxNmIxZGEz NDA5MzY3ZWY1MmQ5ZTIxNTEyYzcwMGQKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSBi NWM2MzZjOTNlMDAyZjFmYWMwYjc4ZWI0MjNkOTJjZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwOGNkNzA2MWEz NTkxYjQ3Nzk4OWE0ZGViMWJmYzZkZWJlODc0Zjc1M2E0Njg2ZWVmMTFkMWZhMGU2Nzk2ODAwZGI5 N2MzODQ5Nzk5MmIyMjBkNmU0MGQ4ZjkxNTQ3NDNiNTMzNjY2Yzg2ODlkYjhjZGZmZDM4YWM0MDA5 Zjg1Y2ZjNmU0OGRjMmZlOTRmNzg4NzAxMzg5OTRhYjQxODllOGQ0NjFhMDBiMDM0MjVkOGQ4Mzgw NjFiNDRlN2NjZDQxZTNhMDMzMmFiNjhhZmJmMjkxOTc2M2M5ZjAzNzQ3NjM3ZGI4N2E1MGQ3NjY1 MDQxOTlmYmE2YzM0ZDIxNjU4MGZjZDc3NzU2YTYwMDRmZjQ4NWE3OWNkYjY0NmYwYWRkZTQ3YTcy N2UwMjgyNjFjODA4ZTBjYjMxOTI4MDcxNzAxYTBmMmQyZDIzN2MyOTNiOTNlODA4NTRmNGU0MzI0 M2VhZWI5NmNjMjVlMDBmNzRlMmNkNDE0YzcyNzc0Yzc5OTU3NTdlOTNjMGE5YWFjNWVmNWIwZDIz YmVmOWNlNDc1YmZlNjk3ZDE0YjgxNWVlYjA1MzVkNmU3ZTQzOGJkYjU0YWEyZDhmNTBkMDU1NjRk MTdjM2ZmMmJjMzQ1MWNhNWI5MzJmMzIwYzIwZjFjMjU2YzYxZWQ1MDNiZTI1MjgKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjUzZmM1MjFlZGY2ZGVhOWRhZjYxOTY3NjI3Njc2NjUwOGQz MmMxOTY0OTQzZTliZDQwYjRlZDJjZGVmYTdjMjAKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhz ZXNzaW9uX2lkOjE0YzY3MjdkOGUyMTFjNzYzMmY5MzBlNzE2YWIzNjBlMDkxNmIxZGEzNDA5MzY3 ZWY1MmQ5ZTIxNTEyYzcwMGQKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA2NGQ4MmJl ZjM1ZTkyNGFiZjAzMGZlNDJjZGExMGU4MQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwOGNkNzA2MWEzNTkxYjQ3 Nzk4OWE0ZGViMWJmYzZkZWJlODc0Zjc1M2E0Njg2ZWVmMTFkMWZhMGU2Nzk2ODAwZGI5N2MzODQ5 Nzk5MmIyMjBkNmU0MGQ4ZjkxNTQ3NDNiNTMzNjY2Yzg2ODlkYjhjZGZmZDM4YWM0MDA5Zjg1Y2Zj NmU0OGRjMmZlOTRmNzg4NzAxMzg5OTRhYjQxODllOGQ0NjFhMDBiMDM0MjVkOGQ4MzgwNjFiNDRl N2NjZDQxZTNhMDMzMmFiNjhhZmJmMjkxOTc2M2M5ZjAzNzQ3NjM3ZGI4N2E1MGQ3NjY1MDQxOTlm YmE2YzM0ZDIxNjU4MGZjZDc3NzU2YTYwMDRmZjQ4NWE3OWNkYjY0NmYwYWRkZTQ3YTcyN2UwMjgy NjFjODA4ZTBjYjMxOTI4MDcxNzAxYTBmMmQyZDIzN2MyOTNiOTNlODA4NTRmNGU0MzI0M2VhZWI5 NmNjMjVlMDBmNzRlMmNkNDE0YzcyNzc0Yzc5OTU3NTdlOTNjMGE5YWFjNWVmNWIwZDIzYmVmOWNl NDc1YmZlNjk3ZDE0YjgxNWVlYjA1MzVkNmU3ZTQzOGJkYjU0YWEyZDhmNTBkMDU1NjRkMTdjM2Zm MmJjMzQ1MWNhNWI5MzJmMzIwYzIwZjFjMjU2YzYxZWQ1MDNiZTI1MjgKLStDdHJsLmhleHhjZ2hh c2ggPSBoZXh4Y2doYXNoOjUzZmM1MjFlZGY2ZGVhOWRhZjYxOTY3NjI3Njc2NjUwOGQzMmMxOTY0 OTQzZTliZDQwYjRlZDJjZGVmYTdjMjAKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9u X2lkOjE0YzY3MjdkOGUyMTFjNzYzMmY5MzBlNzE2YWIzNjBlMDkxNmIxZGEzNDA5MzY3ZWY1MmQ5 ZTIxNTEyYzcwMGQKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSA3NmExYjhiODVkMGVh NDljNjhmMzBkNzQ0ODE1NTkwMQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEy NTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwOGNkNzA2MWEzNTkxYjQ3Nzk4OWE0 ZGViMWJmYzZkZWJlODc0Zjc1M2E0Njg2ZWVmMTFkMWZhMGU2Nzk2ODAwZGI5N2MzODQ5Nzk5MmIy MjBkNmU0MGQ4ZjkxNTQ3NDNiNTMzNjY2Yzg2ODlkYjhjZGZmZDM4YWM0MDA5Zjg1Y2ZjNmU0OGRj MmZlOTRmNzg4NzAxMzg5OTRhYjQxODllOGQ0NjFhMDBiMDM0MjVkOGQ4MzgwNjFiNDRlN2NjZDQx ZTNhMDMzMmFiNjhhZmJmMjkxOTc2M2M5ZjAzNzQ3NjM3ZGI4N2E1MGQ3NjY1MDQxOTlmYmE2YzM0 ZDIxNjU4MGZjZDc3NzU2YTYwMDRmZjQ4NWE3OWNkYjY0NmYwYWRkZTQ3YTcyN2UwMjgyNjFjODA4 ZTBjYjMxOTI4MDcxNzAxYTBmMmQyZDIzN2MyOTNiOTNlODA4NTRmNGU0MzI0M2VhZWI5NmNjMjVl MDBmNzRlMmNkNDE0YzcyNzc0Yzc5OTU3NTdlOTNjMGE5YWFjNWVmNWIwZDIzYmVmOWNlNDc1YmZl Njk3ZDE0YjgxNWVlYjA1MzVkNmU3ZTQzOGJkYjU0YWEyZDhmNTBkMDU1NjRkMTdjM2ZmMmJjMzQ1 MWNhNWI5MzJmMzIwYzIwZjFjMjU2YzYxZWQ1MDNiZTI1MjgKLStDdHJsLmhleHhjZ2hhc2ggPSBo ZXh4Y2doYXNoOjUzZmM1MjFlZGY2ZGVhOWRhZjYxOTY3NjI3Njc2NjUwOGQzMmMxOTY0OTQzZTli ZDQwYjRlZDJjZGVmYTdjMjAKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjE0 YzY3MjdkOGUyMTFjNzYzMmY5MzBlNzE2YWIzNjBlMDkxNmIxZGEzNDA5MzY3ZWY1MmQ5ZTIxNTEy YzcwMGQKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBmMTM2ZTA5MzI0YjFlZjEyYjky YmYzNWQ1YjNkZDhlMgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStD dHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwOGNkNzA2MWEzNTkxYjQ3Nzk4OWE0ZGViMWJm YzZkZWJlODc0Zjc1M2E0Njg2ZWVmMTFkMWZhMGU2Nzk2ODAwZGI5N2MzODQ5Nzk5MmIyMjBkNmU0 MGQ4ZjkxNTQ3NDNiNTMzNjY2Yzg2ODlkYjhjZGZmZDM4YWM0MDA5Zjg1Y2ZjNmU0OGRjMmZlOTRm Nzg4NzAxMzg5OTRhYjQxODllOGQ0NjFhMDBiMDM0MjVkOGQ4MzgwNjFiNDRlN2NjZDQxZTNhMDMz MmFiNjhhZmJmMjkxOTc2M2M5ZjAzNzQ3NjM3ZGI4N2E1MGQ3NjY1MDQxOTlmYmE2YzM0ZDIxNjU4 MGZjZDc3NzU2YTYwMDRmZjQ4NWE3OWNkYjY0NmYwYWRkZTQ3YTcyN2UwMjgyNjFjODA4ZTBjYjMx OTI4MDcxNzAxYTBmMmQyZDIzN2MyOTNiOTNlODA4NTRmNGU0MzI0M2VhZWI5NmNjMjVlMDBmNzRl MmNkNDE0YzcyNzc0Yzc5OTU3NTdlOTNjMGE5YWFjNWVmNWIwZDIzYmVmOWNlNDc1YmZlNjk3ZDE0 YjgxNWVlYjA1MzVkNmU3ZTQzOGJkYjU0YWEyZDhmNTBkMDU1NjRkMTdjM2ZmMmJjMzQ1MWNhNWI5 MzJmMzIwYzIwZjFjMjU2YzYxZWQ1MDNiZTI1MjgKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2do YXNoOjUzZmM1MjFlZGY2ZGVhOWRhZjYxOTY3NjI3Njc2NjUwOGQzMmMxOTY0OTQzZTliZDQwYjRl ZDJjZGVmYTdjMjAKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjE0YzY3Mjdk OGUyMTFjNzYzMmY5MzBlNzE2YWIzNjBlMDkxNmIxZGEzNDA5MzY3ZWY1MmQ5ZTIxNTEyYzcwMGQK LStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA3N2FiYzQ1MTY1YjEyNmY5MTI3ZDU5ZmJl NjU1MTQwY2QzZjc2OGNkMDQ5OGMyOWFhNjljYjVkNjVmN2IwZDUwCi0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDA4 Y2Q3MDYxYTM1OTFiNDc3OTg5YTRkZWIxYmZjNmRlYmU4NzRmNzUzYTQ2ODZlZWYxMWQxZmEwZTY3 OTY4MDBkYjk3YzM4NDk3OTkyYjIyMGQ2ZTQwZDhmOTE1NDc0M2I1MzM2NjZjODY4OWRiOGNkZmZk MzhhYzQwMDlmODVjZmM2ZTQ4ZGMyZmU5NGY3ODg3MDEzODk5NGFiNDE4OWU4ZDQ2MWEwMGIwMzQy NWQ4ZDgzODA2MWI0NGU3Y2NkNDFlM2EwMzMyYWI2OGFmYmYyOTE5NzYzYzlmMDM3NDc2MzdkYjg3 YTUwZDc2NjUwNDE5OWZiYTZjMzRkMjE2NTgwZmNkNzc3NTZhNjAwNGZmNDg1YTc5Y2RiNjQ2ZjBh ZGRlNDdhNzI3ZTAyODI2MWM4MDhlMGNiMzE5MjgwNzE3MDFhMGYyZDJkMjM3YzI5M2I5M2U4MDg1 NGY0ZTQzMjQzZWFlYjk2Y2MyNWUwMGY3NGUyY2Q0MTRjNzI3NzRjNzk5NTc1N2U5M2MwYTlhYWM1 ZWY1YjBkMjNiZWY5Y2U0NzViZmU2OTdkMTRiODE1ZWViMDUzNWQ2ZTdlNDM4YmRiNTRhYTJkOGY1 MGQwNTU2NGQxN2MzZmYyYmMzNDUxY2E1YjkzMmYzMjBjMjBmMWMyNTZjNjFlZDUwM2JlMjUyOAot K0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NTNmYzUyMWVkZjZkZWE5ZGFmNjE5Njc2Mjc2 NzY2NTA4ZDMyYzE5NjQ5NDNlOWJkNDBiNGVkMmNkZWZhN2MyMAotK0N0cmwuaGV4c2Vzc2lvbl9p ZCA9IGhleHNlc3Npb25faWQ6MTRjNjcyN2Q4ZTIxMWM3NjMyZjkzMGU3MTZhYjM2MGUwOTE2YjFk YTM0MDkzNjdlZjUyZDllMjE1MTJjNzAwZAotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9 IGQ0M2Y5M2ZhZjY5MmY1OWJjOTZmZDQ4MGZiMzM2MDMzYzk0ZWUyMzdjZWVjZTY5NjkxZmZhYTY0 YmRkN2ZjYzEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMDliMGI2ZmU0MWQ1NjU1NjRmODdhZTk4NGFhZGM3NTkw MmQ5NTgyOGJkZWUwYmJhMGVjYzE3NmFmZDVjYzljM2VjNzlhMzRhOWY3Y2Y0NGVlNmNiZGNiNWQ4 ZjAyN2JiNjRjNGMzYjczZTJmODkxZWUwNmI3ODFmM2Q3ZjAyYjU5Zjk1Y2JiZmIyNzI1YjIwODg1 NmYzZWJiODE5NWZlZjE1OTYyNDhkNTZhMzcxZWQ3YWNmM2I5NzNjNjI3OTc2ZTBjZjE1NmYzNDBh YTAxYWNmYmU5YjU3NGQ0ZGVkZDRjYmI2NmNiNmNhNWQ5ZTc2ZjE2Mzg1YmU1MzJmZWQ4ZGQ2NTcz NWEzZWNkZGVlYjI5NTEzM2JiOGE1OTQ5OWI0Nzc3MjQyYTRhN2U0NjM0ODFkMjZiYWVjZTRjN2Vm MjI0YWFmNDBhZjRkNTEwOGQwMjRmNWRkMTc0Y2ZkYjkxMjEzOTM5ZTM1NWIwYTFjYTUxZWQ2Zjdm NTg0YTRlNDdhMGYxNDgyZDZhNTc2OGIxMjM2ZTI1ZDgzN2NjOGEyYjQ5YjIxNzZiYjU0YjJmNzdm NDIxMmJhMzk0MzM2ZTZhNjA0NmRlZjkyMDVmZTQ4MmQ5OGZjZGQ4ZDBhMjY0M2EzOWQ3NTNkMmQ0 ODFmZTY2ODliMGRjMGQxYzA3ODMzNWI3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoy N2ZhZjFiOWExNWU1MDVhMGI0NmM0N2UyYmY2YWI1ZmZmMzdhNmRhZGIwOWU5NmVhOTU2MjA5MWYx ZDg4Y2UwCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo2YjUyZGRiODdhNjZm MGYxYmIwZGFkMzliNDYyZTdiZDQyYmRlYjk5MDQ5ZDVhMzU4MWNhNmYwNTZjMzk4MjI4Ci0rQ3Ry bC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gM2IzYzQ0MTZkMzEyMWE2ODM4ZGQzZjk0YTg0YjZl YzYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAxMDEwMDliMGI2ZmU0MWQ1NjU1NjRmODdhZTk4NGFhZGM3NTkwMmQ5NTgy OGJkZWUwYmJhMGVjYzE3NmFmZDVjYzljM2VjNzlhMzRhOWY3Y2Y0NGVlNmNiZGNiNWQ4ZjAyN2Ji NjRjNGMzYjczZTJmODkxZWUwNmI3ODFmM2Q3ZjAyYjU5Zjk1Y2JiZmIyNzI1YjIwODg1NmYzZWJi ODE5NWZlZjE1OTYyNDhkNTZhMzcxZWQ3YWNmM2I5NzNjNjI3OTc2ZTBjZjE1NmYzNDBhYTAxYWNm YmU5YjU3NGQ0ZGVkZDRjYmI2NmNiNmNhNWQ5ZTc2ZjE2Mzg1YmU1MzJmZWQ4ZGQ2NTczNWEzZWNk ZGVlYjI5NTEzM2JiOGE1OTQ5OWI0Nzc3MjQyYTRhN2U0NjM0ODFkMjZiYWVjZTRjN2VmMjI0YWFm NDBhZjRkNTEwOGQwMjRmNWRkMTc0Y2ZkYjkxMjEzOTM5ZTM1NWIwYTFjYTUxZWQ2ZjdmNTg0YTRl NDdhMGYxNDgyZDZhNTc2OGIxMjM2ZTI1ZDgzN2NjOGEyYjQ5YjIxNzZiYjU0YjJmNzdmNDIxMmJh Mzk0MzM2ZTZhNjA0NmRlZjkyMDVmZTQ4MmQ5OGZjZGQ4ZDBhMjY0M2EzOWQ3NTNkMmQ0ODFmZTY2 ODliMGRjMGQxYzA3ODMzNWI3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyN2ZhZjFi OWExNWU1MDVhMGI0NmM0N2UyYmY2YWI1ZmZmMzdhNmRhZGIwOWU5NmVhOTU2MjA5MWYxZDg4Y2Uw Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo2YjUyZGRiODdhNjZmMGYxYmIw ZGFkMzliNDYyZTdiZDQyYmRlYjk5MDQ5ZDVhMzU4MWNhNmYwNTZjMzk4MjI4Ci0rQ3RybC50eXBl ID0gdHlwZTpCCi0rT3V0cHV0ID0gZTBhZjIyYTkxODRlNWNlYTc0ZjNlOTBmYWY1MjEyYmEKLSsK LStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhr ZXk6MDAwMDAxMDEwMDliMGI2ZmU0MWQ1NjU1NjRmODdhZTk4NGFhZGM3NTkwMmQ5NTgyOGJkZWUw YmJhMGVjYzE3NmFmZDVjYzljM2VjNzlhMzRhOWY3Y2Y0NGVlNmNiZGNiNWQ4ZjAyN2JiNjRjNGMz YjczZTJmODkxZWUwNmI3ODFmM2Q3ZjAyYjU5Zjk1Y2JiZmIyNzI1YjIwODg1NmYzZWJiODE5NWZl ZjE1OTYyNDhkNTZhMzcxZWQ3YWNmM2I5NzNjNjI3OTc2ZTBjZjE1NmYzNDBhYTAxYWNmYmU5YjU3 NGQ0ZGVkZDRjYmI2NmNiNmNhNWQ5ZTc2ZjE2Mzg1YmU1MzJmZWQ4ZGQ2NTczNWEzZWNkZGVlYjI5 NTEzM2JiOGE1OTQ5OWI0Nzc3MjQyYTRhN2U0NjM0ODFkMjZiYWVjZTRjN2VmMjI0YWFmNDBhZjRk NTEwOGQwMjRmNWRkMTc0Y2ZkYjkxMjEzOTM5ZTM1NWIwYTFjYTUxZWQ2ZjdmNTg0YTRlNDdhMGYx NDgyZDZhNTc2OGIxMjM2ZTI1ZDgzN2NjOGEyYjQ5YjIxNzZiYjU0YjJmNzdmNDIxMmJhMzk0MzM2 ZTZhNjA0NmRlZjkyMDVmZTQ4MmQ5OGZjZGQ4ZDBhMjY0M2EzOWQ3NTNkMmQ0ODFmZTY2ODliMGRj MGQxYzA3ODMzNWI3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyN2ZhZjFiOWExNWU1 MDVhMGI0NmM0N2UyYmY2YWI1ZmZmMzdhNmRhZGIwOWU5NmVhOTU2MjA5MWYxZDg4Y2UwCi0rQ3Ry bC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo2YjUyZGRiODdhNjZmMGYxYmIwZGFkMzli NDYyZTdiZDQyYmRlYjk5MDQ5ZDVhMzU4MWNhNmYwNTZjMzk4MjI4Ci0rQ3RybC50eXBlID0gdHlw ZTpDCi0rT3V0cHV0ID0gYTNhN2E5ZTQ4Y2MwOWE5MjdlMmQ2ZWRkZDc2NDczNjgKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAxMDEwMDliMGI2ZmU0MWQ1NjU1NjRmODdhZTk4NGFhZGM3NTkwMmQ5NTgyOGJkZWUwYmJhMGVj YzE3NmFmZDVjYzljM2VjNzlhMzRhOWY3Y2Y0NGVlNmNiZGNiNWQ4ZjAyN2JiNjRjNGMzYjczZTJm ODkxZWUwNmI3ODFmM2Q3ZjAyYjU5Zjk1Y2JiZmIyNzI1YjIwODg1NmYzZWJiODE5NWZlZjE1OTYy NDhkNTZhMzcxZWQ3YWNmM2I5NzNjNjI3OTc2ZTBjZjE1NmYzNDBhYTAxYWNmYmU5YjU3NGQ0ZGVk ZDRjYmI2NmNiNmNhNWQ5ZTc2ZjE2Mzg1YmU1MzJmZWQ4ZGQ2NTczNWEzZWNkZGVlYjI5NTEzM2Ji OGE1OTQ5OWI0Nzc3MjQyYTRhN2U0NjM0ODFkMjZiYWVjZTRjN2VmMjI0YWFmNDBhZjRkNTEwOGQw MjRmNWRkMTc0Y2ZkYjkxMjEzOTM5ZTM1NWIwYTFjYTUxZWQ2ZjdmNTg0YTRlNDdhMGYxNDgyZDZh NTc2OGIxMjM2ZTI1ZDgzN2NjOGEyYjQ5YjIxNzZiYjU0YjJmNzdmNDIxMmJhMzk0MzM2ZTZhNjA0 NmRlZjkyMDVmZTQ4MmQ5OGZjZGQ4ZDBhMjY0M2EzOWQ3NTNkMmQ0ODFmZTY2ODliMGRjMGQxYzA3 ODMzNWI3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyN2ZhZjFiOWExNWU1MDVhMGI0 NmM0N2UyYmY2YWI1ZmZmMzdhNmRhZGIwOWU5NmVhOTU2MjA5MWYxZDg4Y2UwCi0rQ3RybC5oZXhz ZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo2YjUyZGRiODdhNjZmMGYxYmIwZGFkMzliNDYyZTdi ZDQyYmRlYjk5MDQ5ZDVhMzU4MWNhNmYwNTZjMzk4MjI4Ci0rQ3RybC50eXBlID0gdHlwZTpECi0r T3V0cHV0ID0gYjk0MTFkMjg3MGU4ODVlMjIzYTZiNDE0YWU2YWM4MTMKLSsKLStLREYgPSBTU0hL REYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEw MDliMGI2ZmU0MWQ1NjU1NjRmODdhZTk4NGFhZGM3NTkwMmQ5NTgyOGJkZWUwYmJhMGVjYzE3NmFm ZDVjYzljM2VjNzlhMzRhOWY3Y2Y0NGVlNmNiZGNiNWQ4ZjAyN2JiNjRjNGMzYjczZTJmODkxZWUw NmI3ODFmM2Q3ZjAyYjU5Zjk1Y2JiZmIyNzI1YjIwODg1NmYzZWJiODE5NWZlZjE1OTYyNDhkNTZh MzcxZWQ3YWNmM2I5NzNjNjI3OTc2ZTBjZjE1NmYzNDBhYTAxYWNmYmU5YjU3NGQ0ZGVkZDRjYmI2 NmNiNmNhNWQ5ZTc2ZjE2Mzg1YmU1MzJmZWQ4ZGQ2NTczNWEzZWNkZGVlYjI5NTEzM2JiOGE1OTQ5 OWI0Nzc3MjQyYTRhN2U0NjM0ODFkMjZiYWVjZTRjN2VmMjI0YWFmNDBhZjRkNTEwOGQwMjRmNWRk MTc0Y2ZkYjkxMjEzOTM5ZTM1NWIwYTFjYTUxZWQ2ZjdmNTg0YTRlNDdhMGYxNDgyZDZhNTc2OGIx MjM2ZTI1ZDgzN2NjOGEyYjQ5YjIxNzZiYjU0YjJmNzdmNDIxMmJhMzk0MzM2ZTZhNjA0NmRlZjky MDVmZTQ4MmQ5OGZjZGQ4ZDBhMjY0M2EzOWQ3NTNkMmQ0ODFmZTY2ODliMGRjMGQxYzA3ODMzNWI3 Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoyN2ZhZjFiOWExNWU1MDVhMGI0NmM0N2Uy YmY2YWI1ZmZmMzdhNmRhZGIwOWU5NmVhOTU2MjA5MWYxZDg4Y2UwCi0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDo2YjUyZGRiODdhNjZmMGYxYmIwZGFkMzliNDYyZTdiZDQyYmRl Yjk5MDQ5ZDVhMzU4MWNhNmYwNTZjMzk4MjI4Ci0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0 ID0gN2YxMTgxMmMyODIyOWZkOGUzOTM2N2I4ODg1MDQ1MzEzZmVhNjMyMmYyMmE2OWI2NDM2Y2Fh NGZiNmMyZDkxNQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJs LmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwOWIwYjZmZTQxZDU2NTU2NGY4N2FlOTg0YWFkYzc1 OTAyZDk1ODI4YmRlZTBiYmEwZWNjMTc2YWZkNWNjOWMzZWM3OWEzNGE5ZjdjZjQ0ZWU2Y2JkY2I1 ZDhmMDI3YmI2NGM0YzNiNzNlMmY4OTFlZTA2Yjc4MWYzZDdmMDJiNTlmOTVjYmJmYjI3MjViMjA4 ODU2ZjNlYmI4MTk1ZmVmMTU5NjI0OGQ1NmEzNzFlZDdhY2YzYjk3M2M2Mjc5NzZlMGNmMTU2ZjM0 MGFhMDFhY2ZiZTliNTc0ZDRkZWRkNGNiYjY2Y2I2Y2E1ZDllNzZmMTYzODViZTUzMmZlZDhkZDY1 NzM1YTNlY2RkZWViMjk1MTMzYmI4YTU5NDk5YjQ3NzcyNDJhNGE3ZTQ2MzQ4MWQyNmJhZWNlNGM3 ZWYyMjRhYWY0MGFmNGQ1MTA4ZDAyNGY1ZGQxNzRjZmRiOTEyMTM5MzllMzU1YjBhMWNhNTFlZDZm N2Y1ODRhNGU0N2EwZjE0ODJkNmE1NzY4YjEyMzZlMjVkODM3Y2M4YTJiNDliMjE3NmJiNTRiMmY3 N2Y0MjEyYmEzOTQzMzZlNmE2MDQ2ZGVmOTIwNWZlNDgyZDk4ZmNkZDhkMGEyNjQzYTM5ZDc1M2Qy ZDQ4MWZlNjY4OWIwZGMwZDFjMDc4MzM1YjcKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OjI3ZmFmMWI5YTE1ZTUwNWEwYjQ2YzQ3ZTJiZjZhYjVmZmYzN2E2ZGFkYjA5ZTk2ZWE5NTYyMDkx ZjFkODhjZTAKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjZiNTJkZGI4N2E2 NmYwZjFiYjBkYWQzOWI0NjJlN2JkNDJiZGViOTkwNDlkNWEzNTgxY2E2ZjA1NmMzOTgyMjgKLStD dHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQgPSA0ZmMzOWUyYTFlNzAzOGYyNjY0YTQ4OTg2ZTgy MjdjMjEzZTU3N2VhZmVhMDgyZjQ2Y2IwOGQwODdlNjQyZmU0Ci0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNDM1MjY2 NjY4ZTk0ZTVmMzVkMzFmMTBmN2I0ODZiZWQ4YTg4NDY1Y2YzMDcxMWU1NGY4YzY1NTBhOTE3OTE2 ZmI3MTYwYzQxODgwZDM2NGRmNTA4NDQ0NmQ3ODM0ZTMyOTE3ODgyYzEwZWVmNDlmODE5MmZhNmZm NGM5NDk4YTEyZDg3YmJmNzEwZDRiYmEzZTc2YTY2ODFjN2FjMzQ3MGU2ZjVlODBjNTU4NTFkY2Nh MzhhOWNlNDhiMDE1YWI3M2IyNGUyOGUwNTUzZjNhMWJiZTFkZmE5YjY3YmI5Y2I5MzcyYWQwZmIw YWFmNDQzYzNhODkyN2QwMGI5YjI3MDVmNGQxYjIxOWM4MGY3Y2FhNjM3Yzk4NmRlNzk0MTBjNTky NDk0MzEyOGU2NGNmODY5NDkxZjE5YzE2NDZjYjQwM2Q4NTQzZDVhYWFlYTdmYmFhYWExYTg0NmI5 ODUxZjRmNzA4YjE0MjY2ZTU1ODM5ZTFkNjFiNjdhNjAzNTljMmMxMTE4NDE4MzkyMjVjMGY5NDAy NTI1MDZiZTAyYmE0M2ZjYzdjNGJlN2NiMDFjNjQwOTRmYmQ5YTc4Y2MzMzFjNmU3ODA5ZTBiZTNh NGI2OTNhZGZlZWRkMWIyMGFkMzZkMzIxNDk4YjM5NmZjZTdjZjE2OWIyZmIxMGU1NGIKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmQ3MzAzZTU3YTJiZjk2OWY4MTVjMWIyZmQwOGE4Nzky MjZjMGU5NWM5ODk3ZmI1NTg2MjAwYzBmNWUwYThhMjMKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOjIwYWNlNzExZTgxOTBmNWJiZDIxNjhiYzkzMDYxYzkwMzg5OWFjZDQxNjk3 Yjc2ZDBmNjY2N2QyYmYzNDU3MjUKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSBiNzFi ZDI4MGIyMzBiNmZiOWIzMjZhMzU0NGFiOWM5MAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDQzNTI2NjY2OGU5NGU1 ZjM1ZDMxZjEwZjdiNDg2YmVkOGE4ODQ2NWNmMzA3MTFlNTRmOGM2NTUwYTkxNzkxNmZiNzE2MGM0 MTg4MGQzNjRkZjUwODQ0NDZkNzgzNGUzMjkxNzg4MmMxMGVlZjQ5ZjgxOTJmYTZmZjRjOTQ5OGEx MmQ4N2JiZjcxMGQ0YmJhM2U3NmE2NjgxYzdhYzM0NzBlNmY1ZTgwYzU1ODUxZGNjYTM4YTljZTQ4 YjAxNWFiNzNiMjRlMjhlMDU1M2YzYTFiYmUxZGZhOWI2N2JiOWNiOTM3MmFkMGZiMGFhZjQ0M2Mz YTg5MjdkMDBiOWIyNzA1ZjRkMWIyMTljODBmN2NhYTYzN2M5ODZkZTc5NDEwYzU5MjQ5NDMxMjhl NjRjZjg2OTQ5MWYxOWMxNjQ2Y2I0MDNkODU0M2Q1YWFhZWE3ZmJhYWFhMWE4NDZiOTg1MWY0Zjcw OGIxNDI2NmU1NTgzOWUxZDYxYjY3YTYwMzU5YzJjMTExODQxODM5MjI1YzBmOTQwMjUyNTA2YmUw MmJhNDNmY2M3YzRiZTdjYjAxYzY0MDk0ZmJkOWE3OGNjMzMxYzZlNzgwOWUwYmUzYTRiNjkzYWRm ZWVkZDFiMjBhZDM2ZDMyMTQ5OGIzOTZmY2U3Y2YxNjliMmZiMTBlNTRiCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDpkNzMwM2U1N2EyYmY5NjlmODE1YzFiMmZkMDhhODc5MjI2YzBlOTVj OTg5N2ZiNTU4NjIwMGMwZjVlMGE4YTIzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDoyMGFjZTcxMWU4MTkwZjViYmQyMTY4YmM5MzA2MWM5MDM4OTlhY2Q0MTY5N2I3NmQwZjY2 NjdkMmJmMzQ1NzI1Ci0rQ3RybC50eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0gY2EzOGMxYjU5NDBl MTQxN2ZiOGNhYTZhYjZkZWFmMTgKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hB MjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA0MzUyNjY2NjhlOTRlNWYzNWQzMWYx MGY3YjQ4NmJlZDhhODg0NjVjZjMwNzExZTU0ZjhjNjU1MGE5MTc5MTZmYjcxNjBjNDE4ODBkMzY0 ZGY1MDg0NDQ2ZDc4MzRlMzI5MTc4ODJjMTBlZWY0OWY4MTkyZmE2ZmY0Yzk0OThhMTJkODdiYmY3 MTBkNGJiYTNlNzZhNjY4MWM3YWMzNDcwZTZmNWU4MGM1NTg1MWRjY2EzOGE5Y2U0OGIwMTVhYjcz YjI0ZTI4ZTA1NTNmM2ExYmJlMWRmYTliNjdiYjljYjkzNzJhZDBmYjBhYWY0NDNjM2E4OTI3ZDAw YjliMjcwNWY0ZDFiMjE5YzgwZjdjYWE2MzdjOTg2ZGU3OTQxMGM1OTI0OTQzMTI4ZTY0Y2Y4Njk0 OTFmMTljMTY0NmNiNDAzZDg1NDNkNWFhYWVhN2ZiYWFhYTFhODQ2Yjk4NTFmNGY3MDhiMTQyNjZl NTU4MzllMWQ2MWI2N2E2MDM1OWMyYzExMTg0MTgzOTIyNWMwZjk0MDI1MjUwNmJlMDJiYTQzZmNj N2M0YmU3Y2IwMWM2NDA5NGZiZDlhNzhjYzMzMWM2ZTc4MDllMGJlM2E0YjY5M2FkZmVlZGQxYjIw YWQzNmQzMjE0OThiMzk2ZmNlN2NmMTY5YjJmYjEwZTU0YgotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6ZDczMDNlNTdhMmJmOTY5ZjgxNWMxYjJmZDA4YTg3OTIyNmMwZTk1Yzk4OTdmYjU1 ODYyMDBjMGY1ZTBhOGEyMwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MjBh Y2U3MTFlODE5MGY1YmJkMjE2OGJjOTMwNjFjOTAzODk5YWNkNDE2OTdiNzZkMGY2NjY3ZDJiZjM0 NTcyNQotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDVkMDIzNDdlMTY3NjAxMDFhMzY4 OWJmMDA4N2VkOTQ3Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNDM1MjY2NjY4ZTk0ZTVmMzVkMzFmMTBmN2I0ODZi ZWQ4YTg4NDY1Y2YzMDcxMWU1NGY4YzY1NTBhOTE3OTE2ZmI3MTYwYzQxODgwZDM2NGRmNTA4NDQ0 NmQ3ODM0ZTMyOTE3ODgyYzEwZWVmNDlmODE5MmZhNmZmNGM5NDk4YTEyZDg3YmJmNzEwZDRiYmEz ZTc2YTY2ODFjN2FjMzQ3MGU2ZjVlODBjNTU4NTFkY2NhMzhhOWNlNDhiMDE1YWI3M2IyNGUyOGUw NTUzZjNhMWJiZTFkZmE5YjY3YmI5Y2I5MzcyYWQwZmIwYWFmNDQzYzNhODkyN2QwMGI5YjI3MDVm NGQxYjIxOWM4MGY3Y2FhNjM3Yzk4NmRlNzk0MTBjNTkyNDk0MzEyOGU2NGNmODY5NDkxZjE5YzE2 NDZjYjQwM2Q4NTQzZDVhYWFlYTdmYmFhYWExYTg0NmI5ODUxZjRmNzA4YjE0MjY2ZTU1ODM5ZTFk NjFiNjdhNjAzNTljMmMxMTE4NDE4MzkyMjVjMGY5NDAyNTI1MDZiZTAyYmE0M2ZjYzdjNGJlN2Ni MDFjNjQwOTRmYmQ5YTc4Y2MzMzFjNmU3ODA5ZTBiZTNhNGI2OTNhZGZlZWRkMWIyMGFkMzZkMzIx NDk4YjM5NmZjZTdjZjE2OWIyZmIxMGU1NGIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OmQ3MzAzZTU3YTJiZjk2OWY4MTVjMWIyZmQwOGE4NzkyMjZjMGU5NWM5ODk3ZmI1NTg2MjAwYzBm NWUwYThhMjMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjIwYWNlNzExZTgx OTBmNWJiZDIxNjhiYzkzMDYxYzkwMzg5OWFjZDQxNjk3Yjc2ZDBmNjY2N2QyYmYzNDU3MjUKLStD dHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSAyZmI1ZTBlYjU1NTJmN2UyNmFkOTY1MWJkMjJm MTY2NgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtl eSA9IGhleGtleTowMDAwMDEwMDQzNTI2NjY2OGU5NGU1ZjM1ZDMxZjEwZjdiNDg2YmVkOGE4ODQ2 NWNmMzA3MTFlNTRmOGM2NTUwYTkxNzkxNmZiNzE2MGM0MTg4MGQzNjRkZjUwODQ0NDZkNzgzNGUz MjkxNzg4MmMxMGVlZjQ5ZjgxOTJmYTZmZjRjOTQ5OGExMmQ4N2JiZjcxMGQ0YmJhM2U3NmE2Njgx YzdhYzM0NzBlNmY1ZTgwYzU1ODUxZGNjYTM4YTljZTQ4YjAxNWFiNzNiMjRlMjhlMDU1M2YzYTFi YmUxZGZhOWI2N2JiOWNiOTM3MmFkMGZiMGFhZjQ0M2MzYTg5MjdkMDBiOWIyNzA1ZjRkMWIyMTlj ODBmN2NhYTYzN2M5ODZkZTc5NDEwYzU5MjQ5NDMxMjhlNjRjZjg2OTQ5MWYxOWMxNjQ2Y2I0MDNk ODU0M2Q1YWFhZWE3ZmJhYWFhMWE4NDZiOTg1MWY0ZjcwOGIxNDI2NmU1NTgzOWUxZDYxYjY3YTYw MzU5YzJjMTExODQxODM5MjI1YzBmOTQwMjUyNTA2YmUwMmJhNDNmY2M3YzRiZTdjYjAxYzY0MDk0 ZmJkOWE3OGNjMzMxYzZlNzgwOWUwYmUzYTRiNjkzYWRmZWVkZDFiMjBhZDM2ZDMyMTQ5OGIzOTZm Y2U3Y2YxNjliMmZiMTBlNTRiCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpkNzMwM2U1 N2EyYmY5NjlmODE1YzFiMmZkMDhhODc5MjI2YzBlOTVjOTg5N2ZiNTU4NjIwMGMwZjVlMGE4YTIz Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoyMGFjZTcxMWU4MTkwZjViYmQy MTY4YmM5MzA2MWM5MDM4OTlhY2Q0MTY5N2I3NmQwZjY2NjdkMmJmMzQ1NzI1Ci0rQ3RybC50eXBl ID0gdHlwZTpFCi0rT3V0cHV0ID0gYjdiN2M0MjkyYTczZTdkMzc4Mjg0YjEyYjMxOGUwY2QzYWQ3 MTQ5MDRiNGVmOWM4M2Q0NGVlMDZmZjQ5YjFlMQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDQzNTI2NjY2OGU5NGU1 ZjM1ZDMxZjEwZjdiNDg2YmVkOGE4ODQ2NWNmMzA3MTFlNTRmOGM2NTUwYTkxNzkxNmZiNzE2MGM0 MTg4MGQzNjRkZjUwODQ0NDZkNzgzNGUzMjkxNzg4MmMxMGVlZjQ5ZjgxOTJmYTZmZjRjOTQ5OGEx MmQ4N2JiZjcxMGQ0YmJhM2U3NmE2NjgxYzdhYzM0NzBlNmY1ZTgwYzU1ODUxZGNjYTM4YTljZTQ4 YjAxNWFiNzNiMjRlMjhlMDU1M2YzYTFiYmUxZGZhOWI2N2JiOWNiOTM3MmFkMGZiMGFhZjQ0M2Mz YTg5MjdkMDBiOWIyNzA1ZjRkMWIyMTljODBmN2NhYTYzN2M5ODZkZTc5NDEwYzU5MjQ5NDMxMjhl NjRjZjg2OTQ5MWYxOWMxNjQ2Y2I0MDNkODU0M2Q1YWFhZWE3ZmJhYWFhMWE4NDZiOTg1MWY0Zjcw OGIxNDI2NmU1NTgzOWUxZDYxYjY3YTYwMzU5YzJjMTExODQxODM5MjI1YzBmOTQwMjUyNTA2YmUw MmJhNDNmY2M3YzRiZTdjYjAxYzY0MDk0ZmJkOWE3OGNjMzMxYzZlNzgwOWUwYmUzYTRiNjkzYWRm ZWVkZDFiMjBhZDM2ZDMyMTQ5OGIzOTZmY2U3Y2YxNjliMmZiMTBlNTRiCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDpkNzMwM2U1N2EyYmY5NjlmODE1YzFiMmZkMDhhODc5MjI2YzBlOTVj OTg5N2ZiNTU4NjIwMGMwZjVlMGE4YTIzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDoyMGFjZTcxMWU4MTkwZjViYmQyMTY4YmM5MzA2MWM5MDM4OTlhY2Q0MTY5N2I3NmQwZjY2 NjdkMmJmMzQ1NzI1Ci0rQ3RybC50eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gYzk4ODRlNzFiMTU4 ZjIyNTVmYjIwNDczM2U4ODhiYzViMmVlMzhhNTQ5M2RlOWQwZWY2NzAwOTQ5MTU5YWM2YQotKwot K0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDEwMDc0NWY1YWJkOGZiNjg1ZWFhZTEwODU0YTk2OTAwODA2Y2Q3ZDE3ZDJkMjU1OTkw MzI4NTk0YTRmZGJiOWZhMjgwODhjY2I4ZmJmOTJlZjIzNDkyYTU5NWY5MmM0OWQ1ZmEzMmVhNWVm NmQ3NjAwMDYzNWZiNTg0OTZjOWRiODI0YWFhNDFiNjdjM2MyZThiZGQ1MjVmNmM2YTIyNDU2MmM2 NzAwNzZmNmVmZDIxZmU0OTIyMmMyNjI3NTk2Yjc3NWM1NmRmZjVkNDc3Y2Q0Y2MwMDhlZjU2NjA4 NmE0OTVjZjRiYTYzNGFmMjBhNDJmYjEzZmE1MjU5N2RjMjUyZWRlYmRmYTU3NTkyNDk0ZmQ5Y2Q0 NGQwZjdlMjdkNmE2ZmYzNzA4NzZjNDI3MzM5NzdkYjY1NmQ3MzcyZDU1M2MyZmZjODI0ZmIwMjM3 NWU1NTA2OWQ1Y2NjYjQ5M2VjNzcwMDFmYjRjZDczY2JlYzY5NzZiZDQ1YWUyY2MwODEyYzA3ODc4 NGQ5MTdjMGEwYTU0ZDhkZjZjNzQ1YTI3MTA4Mjg5MzliZTA2ODVkN2ZjMTY1N2VlZTljNGRiYzcx NjE1ZmFiMDE3NGU2MmZiNzk3MWZhMjBmNmQ2YjJkYTFjMjJjMGEzNWM3ODFjOWRiZGYwMDljZWMz ZDg5ODkxYWZjCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozNWY2MDFhNzg3N2VmNjM3 ZDZjNDBiNGYyZTFkODViODg4ZWNlYWM5ZjM3ZTY4NjI1NGY5ZDcwN2IyMmJkNzY0Ci0rQ3RybC5o ZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpkMDRiY2U3NTE0MWVkMmE0NDk0MmQ5ODM1NGRl ZDQ2ZTg2MWRhMjhmYzExNzVlNWEyMmU4ZGRkYWQ0OTQyZjlhCi0rQ3RybC50eXBlID0gdHlwZTpB Ci0rT3V0cHV0ID0gODhhZjNiZGI0OWJkOGU5ZDI0NDg5ZWZjOTVkZWExYzEKLSsKLStLREYgPSBT U0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAx MDA3NDVmNWFiZDhmYjY4NWVhYWUxMDg1NGE5NjkwMDgwNmNkN2QxN2QyZDI1NTk5MDMyODU5NGE0 ZmRiYjlmYTI4MDg4Y2NiOGZiZjkyZWYyMzQ5MmE1OTVmOTJjNDlkNWZhMzJlYTVlZjZkNzYwMDA2 MzVmYjU4NDk2YzlkYjgyNGFhYTQxYjY3YzNjMmU4YmRkNTI1ZjZjNmEyMjQ1NjJjNjcwMDc2ZjZl ZmQyMWZlNDkyMjJjMjYyNzU5NmI3NzVjNTZkZmY1ZDQ3N2NkNGNjMDA4ZWY1NjYwODZhNDk1Y2Y0 YmE2MzRhZjIwYTQyZmIxM2ZhNTI1OTdkYzI1MmVkZWJkZmE1NzU5MjQ5NGZkOWNkNDRkMGY3ZTI3 ZDZhNmZmMzcwODc2YzQyNzMzOTc3ZGI2NTZkNzM3MmQ1NTNjMmZmYzgyNGZiMDIzNzVlNTUwNjlk NWNjY2I0OTNlYzc3MDAxZmI0Y2Q3M2NiZWM2OTc2YmQ0NWFlMmNjMDgxMmMwNzg3ODRkOTE3YzBh MGE1NGQ4ZGY2Yzc0NWEyNzEwODI4OTM5YmUwNjg1ZDdmYzE2NTdlZWU5YzRkYmM3MTYxNWZhYjAx NzRlNjJmYjc5NzFmYTIwZjZkNmIyZGExYzIyYzBhMzVjNzgxYzlkYmRmMDA5Y2VjM2Q4OTg5MWFm YwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MzVmNjAxYTc4NzdlZjYzN2Q2YzQwYjRm MmUxZDg1Yjg4OGVjZWFjOWYzN2U2ODYyNTRmOWQ3MDdiMjJiZDc2NAotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6ZDA0YmNlNzUxNDFlZDJhNDQ5NDJkOTgzNTRkZWQ0NmU4NjFk YTI4ZmMxMTc1ZTVhMjJlOGRkZGFkNDk0MmY5YQotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1 dCA9IDVjZjQxZTFkNDNmNzk3YzE2YTMwZTA3MGYyZjM3ZGQ0Ci0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNzQ1ZjVh YmQ4ZmI2ODVlYWFlMTA4NTRhOTY5MDA4MDZjZDdkMTdkMmQyNTU5OTAzMjg1OTRhNGZkYmI5ZmEy ODA4OGNjYjhmYmY5MmVmMjM0OTJhNTk1ZjkyYzQ5ZDVmYTMyZWE1ZWY2ZDc2MDAwNjM1ZmI1ODQ5 NmM5ZGI4MjRhYWE0MWI2N2MzYzJlOGJkZDUyNWY2YzZhMjI0NTYyYzY3MDA3NmY2ZWZkMjFmZTQ5 MjIyYzI2Mjc1OTZiNzc1YzU2ZGZmNWQ0NzdjZDRjYzAwOGVmNTY2MDg2YTQ5NWNmNGJhNjM0YWYy MGE0MmZiMTNmYTUyNTk3ZGMyNTJlZGViZGZhNTc1OTI0OTRmZDljZDQ0ZDBmN2UyN2Q2YTZmZjM3 MDg3NmM0MjczMzk3N2RiNjU2ZDczNzJkNTUzYzJmZmM4MjRmYjAyMzc1ZTU1MDY5ZDVjY2NiNDkz ZWM3NzAwMWZiNGNkNzNjYmVjNjk3NmJkNDVhZTJjYzA4MTJjMDc4Nzg0ZDkxN2MwYTBhNTRkOGRm NmM3NDVhMjcxMDgyODkzOWJlMDY4NWQ3ZmMxNjU3ZWVlOWM0ZGJjNzE2MTVmYWIwMTc0ZTYyZmI3 OTcxZmEyMGY2ZDZiMmRhMWMyMmMwYTM1Yzc4MWM5ZGJkZjAwOWNlYzNkODk4OTFhZmMKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjM1ZjYwMWE3ODc3ZWY2MzdkNmM0MGI0ZjJlMWQ4NWI4 ODhlY2VhYzlmMzdlNjg2MjU0ZjlkNzA3YjIyYmQ3NjQKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOmQwNGJjZTc1MTQxZWQyYTQ0OTQyZDk4MzU0ZGVkNDZlODYxZGEyOGZjMTE3 NWU1YTIyZThkZGRhZDQ5NDJmOWEKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSA3Y2M0 OGUwZjhiNGJkZDYzZjc2ZTQxYmE0MTFkN2YzNwotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDc0NWY1YWJkOGZiNjg1 ZWFhZTEwODU0YTk2OTAwODA2Y2Q3ZDE3ZDJkMjU1OTkwMzI4NTk0YTRmZGJiOWZhMjgwODhjY2I4 ZmJmOTJlZjIzNDkyYTU5NWY5MmM0OWQ1ZmEzMmVhNWVmNmQ3NjAwMDYzNWZiNTg0OTZjOWRiODI0 YWFhNDFiNjdjM2MyZThiZGQ1MjVmNmM2YTIyNDU2MmM2NzAwNzZmNmVmZDIxZmU0OTIyMmMyNjI3 NTk2Yjc3NWM1NmRmZjVkNDc3Y2Q0Y2MwMDhlZjU2NjA4NmE0OTVjZjRiYTYzNGFmMjBhNDJmYjEz ZmE1MjU5N2RjMjUyZWRlYmRmYTU3NTkyNDk0ZmQ5Y2Q0NGQwZjdlMjdkNmE2ZmYzNzA4NzZjNDI3 MzM5NzdkYjY1NmQ3MzcyZDU1M2MyZmZjODI0ZmIwMjM3NWU1NTA2OWQ1Y2NjYjQ5M2VjNzcwMDFm YjRjZDczY2JlYzY5NzZiZDQ1YWUyY2MwODEyYzA3ODc4NGQ5MTdjMGEwYTU0ZDhkZjZjNzQ1YTI3 MTA4Mjg5MzliZTA2ODVkN2ZjMTY1N2VlZTljNGRiYzcxNjE1ZmFiMDE3NGU2MmZiNzk3MWZhMjBm NmQ2YjJkYTFjMjJjMGEzNWM3ODFjOWRiZGYwMDljZWMzZDg5ODkxYWZjCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDozNWY2MDFhNzg3N2VmNjM3ZDZjNDBiNGYyZTFkODViODg4ZWNlYWM5 ZjM3ZTY4NjI1NGY5ZDcwN2IyMmJkNzY0Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDpkMDRiY2U3NTE0MWVkMmE0NDk0MmQ5ODM1NGRlZDQ2ZTg2MWRhMjhmYzExNzVlNWEyMmU4 ZGRkYWQ0OTQyZjlhCi0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gMzdkOTQyNDE2MjY3 YmUwNmNkMWZmOTQ5OGRjZjFlNmUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hB MjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDA3NDVmNWFiZDhmYjY4NWVhYWUxMDg1 NGE5NjkwMDgwNmNkN2QxN2QyZDI1NTk5MDMyODU5NGE0ZmRiYjlmYTI4MDg4Y2NiOGZiZjkyZWYy MzQ5MmE1OTVmOTJjNDlkNWZhMzJlYTVlZjZkNzYwMDA2MzVmYjU4NDk2YzlkYjgyNGFhYTQxYjY3 YzNjMmU4YmRkNTI1ZjZjNmEyMjQ1NjJjNjcwMDc2ZjZlZmQyMWZlNDkyMjJjMjYyNzU5NmI3NzVj NTZkZmY1ZDQ3N2NkNGNjMDA4ZWY1NjYwODZhNDk1Y2Y0YmE2MzRhZjIwYTQyZmIxM2ZhNTI1OTdk YzI1MmVkZWJkZmE1NzU5MjQ5NGZkOWNkNDRkMGY3ZTI3ZDZhNmZmMzcwODc2YzQyNzMzOTc3ZGI2 NTZkNzM3MmQ1NTNjMmZmYzgyNGZiMDIzNzVlNTUwNjlkNWNjY2I0OTNlYzc3MDAxZmI0Y2Q3M2Ni ZWM2OTc2YmQ0NWFlMmNjMDgxMmMwNzg3ODRkOTE3YzBhMGE1NGQ4ZGY2Yzc0NWEyNzEwODI4OTM5 YmUwNjg1ZDdmYzE2NTdlZWU5YzRkYmM3MTYxNWZhYjAxNzRlNjJmYjc5NzFmYTIwZjZkNmIyZGEx YzIyYzBhMzVjNzgxYzlkYmRmMDA5Y2VjM2Q4OTg5MWFmYwotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6MzVmNjAxYTc4NzdlZjYzN2Q2YzQwYjRmMmUxZDg1Yjg4OGVjZWFjOWYzN2U2ODYy NTRmOWQ3MDdiMjJiZDc2NAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZDA0 YmNlNzUxNDFlZDJhNDQ5NDJkOTgzNTRkZWQ0NmU4NjFkYTI4ZmMxMTc1ZTVhMjJlOGRkZGFkNDk0 MmY5YQotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IGMzYzhiNDhlMjI4YTNhNjcxYWU4 YzQ4YWE0ZTRmMWZlMzJjMWFkNGQ1YWU0OGM5MDQ4MzZkMTNlNzM1MGY3MmUKLSsKLStLREYgPSBT U0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAx MDA3NDVmNWFiZDhmYjY4NWVhYWUxMDg1NGE5NjkwMDgwNmNkN2QxN2QyZDI1NTk5MDMyODU5NGE0 ZmRiYjlmYTI4MDg4Y2NiOGZiZjkyZWYyMzQ5MmE1OTVmOTJjNDlkNWZhMzJlYTVlZjZkNzYwMDA2 MzVmYjU4NDk2YzlkYjgyNGFhYTQxYjY3YzNjMmU4YmRkNTI1ZjZjNmEyMjQ1NjJjNjcwMDc2ZjZl ZmQyMWZlNDkyMjJjMjYyNzU5NmI3NzVjNTZkZmY1ZDQ3N2NkNGNjMDA4ZWY1NjYwODZhNDk1Y2Y0 YmE2MzRhZjIwYTQyZmIxM2ZhNTI1OTdkYzI1MmVkZWJkZmE1NzU5MjQ5NGZkOWNkNDRkMGY3ZTI3 ZDZhNmZmMzcwODc2YzQyNzMzOTc3ZGI2NTZkNzM3MmQ1NTNjMmZmYzgyNGZiMDIzNzVlNTUwNjlk NWNjY2I0OTNlYzc3MDAxZmI0Y2Q3M2NiZWM2OTc2YmQ0NWFlMmNjMDgxMmMwNzg3ODRkOTE3YzBh MGE1NGQ4ZGY2Yzc0NWEyNzEwODI4OTM5YmUwNjg1ZDdmYzE2NTdlZWU5YzRkYmM3MTYxNWZhYjAx NzRlNjJmYjc5NzFmYTIwZjZkNmIyZGExYzIyYzBhMzVjNzgxYzlkYmRmMDA5Y2VjM2Q4OTg5MWFm YwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MzVmNjAxYTc4NzdlZjYzN2Q2YzQwYjRm MmUxZDg1Yjg4OGVjZWFjOWYzN2U2ODYyNTRmOWQ3MDdiMjJiZDc2NAotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6ZDA0YmNlNzUxNDFlZDJhNDQ5NDJkOTgzNTRkZWQ0NmU4NjFk YTI4ZmMxMTc1ZTVhMjJlOGRkZGFkNDk0MmY5YQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1 dCA9IDYwNWY3ZDNiM2YyOGE4OTY3NDAyYmE2N2ZmOTE2YTYxYjBhNGU5YjczNjY2NWM1ZTkxMWZi MzNmNjBkYzE2ZmUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMDg5Yjc0MWIwYjlhNjcwNGY1NmRmOWFhZmU1ZjQy OTQ4MjhmZGM2N2Y0MjQzZTlhYTliMWQ4MzE2NmFkODkyZjJkOTcwZmRmZjY1ZWJhN2ZhNWVkZGI5 NTRkZDg2YmRhNTI2MmUwODQ3NTJjNjljNmI5M2M3MjlhZDM0ZTk3MjhmN2M4MzhjNDlmMGU4NzM0 OWFlMzVmZWVmMTYxMGI4M2EzNDVjNjRjNWIxOTBmYjU4NTdiZjBhYTg0MTllZmJhMzU3ODljMjU4 ZjE5ZTg3MTNlMjcyOWMxODRlYWI5ZDljMzNhMzJhYjM3MzFkNzdlMjA3YTkxODQ5NjI1YmI4NTVl NTgxY2EwYmU1ZDlmOTYxYWFiOWQ2NWI0NjNlNDE2ZWUzZDYzNmVjZTU3M2VhZDBkMDg4YTJmZTA1 ZDg3ZGQ1ZWQyMTAzMWY0ZGJlYTgzMTExMmQzYmQwZTFjYzEwODdhODM5NTQzMGNkZTNjYjU0ZDIy YTU5NjVkZDgyNTMyOWJlZThjNjJkNDU5OWZiNjdmZjkwMjYwMjA0YzZlNjA4ZTYyNDZmNzY4ZTI5 YTYwY2I4NWY1ODBkNDc1MWY5YzAxN2NiZjRlNjA2MmExNjBjNmZmMWQwYzlkMzAzYTJjODYyYTQ5 ODZlMjJmNzJkYTc5YjE3Yjg2OGNlZTE4OWEyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDo2MWU0OTU5OWViM2IwMWUzZDdiYzY1NDE1Y2U3MDA0ZTIwYmY3NzgwNWE0ZmYwOTY4MWYzODU2 YWRjMTI5OTQzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo4MzI0MDBlYjFj NDAzMTUwMmY3MjQ5ZDBhNDI3OWE3Y2JlNGQ0ZDY5NzkyODlkMDI4MzdkOThiOWNhMTZmZjQ2Ci0r Q3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gN2I5MWFkYzZlYjQ4YTZmODJhODk5MGVmZDI1 Mzc5MDMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAxMDEwMDg5Yjc0MWIwYjlhNjcwNGY1NmRmOWFhZmU1ZjQyOTQ4Mjhm ZGM2N2Y0MjQzZTlhYTliMWQ4MzE2NmFkODkyZjJkOTcwZmRmZjY1ZWJhN2ZhNWVkZGI5NTRkZDg2 YmRhNTI2MmUwODQ3NTJjNjljNmI5M2M3MjlhZDM0ZTk3MjhmN2M4MzhjNDlmMGU4NzM0OWFlMzVm ZWVmMTYxMGI4M2EzNDVjNjRjNWIxOTBmYjU4NTdiZjBhYTg0MTllZmJhMzU3ODljMjU4ZjE5ZTg3 MTNlMjcyOWMxODRlYWI5ZDljMzNhMzJhYjM3MzFkNzdlMjA3YTkxODQ5NjI1YmI4NTVlNTgxY2Ew YmU1ZDlmOTYxYWFiOWQ2NWI0NjNlNDE2ZWUzZDYzNmVjZTU3M2VhZDBkMDg4YTJmZTA1ZDg3ZGQ1 ZWQyMTAzMWY0ZGJlYTgzMTExMmQzYmQwZTFjYzEwODdhODM5NTQzMGNkZTNjYjU0ZDIyYTU5NjVk ZDgyNTMyOWJlZThjNjJkNDU5OWZiNjdmZjkwMjYwMjA0YzZlNjA4ZTYyNDZmNzY4ZTI5YTYwY2I4 NWY1ODBkNDc1MWY5YzAxN2NiZjRlNjA2MmExNjBjNmZmMWQwYzlkMzAzYTJjODYyYTQ5ODZlMjJm NzJkYTc5YjE3Yjg2OGNlZTE4OWEyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo2MWU0 OTU5OWViM2IwMWUzZDdiYzY1NDE1Y2U3MDA0ZTIwYmY3NzgwNWE0ZmYwOTY4MWYzODU2YWRjMTI5 OTQzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo4MzI0MDBlYjFjNDAzMTUw MmY3MjQ5ZDBhNDI3OWE3Y2JlNGQ0ZDY5NzkyODlkMDI4MzdkOThiOWNhMTZmZjQ2Ci0rQ3RybC50 eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0gODE0YzhmYjU0YTUzNWIzOGQ0YzIzMDFhYTQ5YWQ3MDIK LSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBo ZXhrZXk6MDAwMDAxMDEwMDg5Yjc0MWIwYjlhNjcwNGY1NmRmOWFhZmU1ZjQyOTQ4MjhmZGM2N2Y0 MjQzZTlhYTliMWQ4MzE2NmFkODkyZjJkOTcwZmRmZjY1ZWJhN2ZhNWVkZGI5NTRkZDg2YmRhNTI2 MmUwODQ3NTJjNjljNmI5M2M3MjlhZDM0ZTk3MjhmN2M4MzhjNDlmMGU4NzM0OWFlMzVmZWVmMTYx MGI4M2EzNDVjNjRjNWIxOTBmYjU4NTdiZjBhYTg0MTllZmJhMzU3ODljMjU4ZjE5ZTg3MTNlMjcy OWMxODRlYWI5ZDljMzNhMzJhYjM3MzFkNzdlMjA3YTkxODQ5NjI1YmI4NTVlNTgxY2EwYmU1ZDlm OTYxYWFiOWQ2NWI0NjNlNDE2ZWUzZDYzNmVjZTU3M2VhZDBkMDg4YTJmZTA1ZDg3ZGQ1ZWQyMTAz MWY0ZGJlYTgzMTExMmQzYmQwZTFjYzEwODdhODM5NTQzMGNkZTNjYjU0ZDIyYTU5NjVkZDgyNTMy OWJlZThjNjJkNDU5OWZiNjdmZjkwMjYwMjA0YzZlNjA4ZTYyNDZmNzY4ZTI5YTYwY2I4NWY1ODBk NDc1MWY5YzAxN2NiZjRlNjA2MmExNjBjNmZmMWQwYzlkMzAzYTJjODYyYTQ5ODZlMjJmNzJkYTc5 YjE3Yjg2OGNlZTE4OWEyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo2MWU0OTU5OWVi M2IwMWUzZDdiYzY1NDE1Y2U3MDA0ZTIwYmY3NzgwNWE0ZmYwOTY4MWYzODU2YWRjMTI5OTQzCi0r Q3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo4MzI0MDBlYjFjNDAzMTUwMmY3MjQ5 ZDBhNDI3OWE3Y2JlNGQ0ZDY5NzkyODlkMDI4MzdkOThiOWNhMTZmZjQ2Ci0rQ3RybC50eXBlID0g dHlwZTpDCi0rT3V0cHV0ID0gM2VjNjRjODU3MWM3YzdmMzlhOWYzN2MwZTEwNTMzMjQKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6 MDAwMDAxMDEwMDg5Yjc0MWIwYjlhNjcwNGY1NmRmOWFhZmU1ZjQyOTQ4MjhmZGM2N2Y0MjQzZTlh YTliMWQ4MzE2NmFkODkyZjJkOTcwZmRmZjY1ZWJhN2ZhNWVkZGI5NTRkZDg2YmRhNTI2MmUwODQ3 NTJjNjljNmI5M2M3MjlhZDM0ZTk3MjhmN2M4MzhjNDlmMGU4NzM0OWFlMzVmZWVmMTYxMGI4M2Ez NDVjNjRjNWIxOTBmYjU4NTdiZjBhYTg0MTllZmJhMzU3ODljMjU4ZjE5ZTg3MTNlMjcyOWMxODRl YWI5ZDljMzNhMzJhYjM3MzFkNzdlMjA3YTkxODQ5NjI1YmI4NTVlNTgxY2EwYmU1ZDlmOTYxYWFi OWQ2NWI0NjNlNDE2ZWUzZDYzNmVjZTU3M2VhZDBkMDg4YTJmZTA1ZDg3ZGQ1ZWQyMTAzMWY0ZGJl YTgzMTExMmQzYmQwZTFjYzEwODdhODM5NTQzMGNkZTNjYjU0ZDIyYTU5NjVkZDgyNTMyOWJlZThj NjJkNDU5OWZiNjdmZjkwMjYwMjA0YzZlNjA4ZTYyNDZmNzY4ZTI5YTYwY2I4NWY1ODBkNDc1MWY5 YzAxN2NiZjRlNjA2MmExNjBjNmZmMWQwYzlkMzAzYTJjODYyYTQ5ODZlMjJmNzJkYTc5YjE3Yjg2 OGNlZTE4OWEyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo2MWU0OTU5OWViM2IwMWUz ZDdiYzY1NDE1Y2U3MDA0ZTIwYmY3NzgwNWE0ZmYwOTY4MWYzODU2YWRjMTI5OTQzCi0rQ3RybC5o ZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo4MzI0MDBlYjFjNDAzMTUwMmY3MjQ5ZDBhNDI3 OWE3Y2JlNGQ0ZDY5NzkyODlkMDI4MzdkOThiOWNhMTZmZjQ2Ci0rQ3RybC50eXBlID0gdHlwZTpE Ci0rT3V0cHV0ID0gODQ2ZDQwZGM0NTEyM2YyNzEwZTI3YmQzMTQwMDcwYzgKLSsKLStLREYgPSBT U0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAx MDEwMDg5Yjc0MWIwYjlhNjcwNGY1NmRmOWFhZmU1ZjQyOTQ4MjhmZGM2N2Y0MjQzZTlhYTliMWQ4 MzE2NmFkODkyZjJkOTcwZmRmZjY1ZWJhN2ZhNWVkZGI5NTRkZDg2YmRhNTI2MmUwODQ3NTJjNjlj NmI5M2M3MjlhZDM0ZTk3MjhmN2M4MzhjNDlmMGU4NzM0OWFlMzVmZWVmMTYxMGI4M2EzNDVjNjRj NWIxOTBmYjU4NTdiZjBhYTg0MTllZmJhMzU3ODljMjU4ZjE5ZTg3MTNlMjcyOWMxODRlYWI5ZDlj MzNhMzJhYjM3MzFkNzdlMjA3YTkxODQ5NjI1YmI4NTVlNTgxY2EwYmU1ZDlmOTYxYWFiOWQ2NWI0 NjNlNDE2ZWUzZDYzNmVjZTU3M2VhZDBkMDg4YTJmZTA1ZDg3ZGQ1ZWQyMTAzMWY0ZGJlYTgzMTEx MmQzYmQwZTFjYzEwODdhODM5NTQzMGNkZTNjYjU0ZDIyYTU5NjVkZDgyNTMyOWJlZThjNjJkNDU5 OWZiNjdmZjkwMjYwMjA0YzZlNjA4ZTYyNDZmNzY4ZTI5YTYwY2I4NWY1ODBkNDc1MWY5YzAxN2Ni ZjRlNjA2MmExNjBjNmZmMWQwYzlkMzAzYTJjODYyYTQ5ODZlMjJmNzJkYTc5YjE3Yjg2OGNlZTE4 OWEyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo2MWU0OTU5OWViM2IwMWUzZDdiYzY1 NDE1Y2U3MDA0ZTIwYmY3NzgwNWE0ZmYwOTY4MWYzODU2YWRjMTI5OTQzCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo4MzI0MDBlYjFjNDAzMTUwMmY3MjQ5ZDBhNDI3OWE3Y2Jl NGQ0ZDY5NzkyODlkMDI4MzdkOThiOWNhMTZmZjQ2Ci0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0 cHV0ID0gYzIxOTliOWJkNzAxYzJmNGVlODJhMTQ1YWRjMjhmM2U4ZmFjMGFmOGRkNDNjYjdmM2Rh MTczNjgxYmNhZDJlMAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStD dHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwODliNzQxYjBiOWE2NzA0ZjU2ZGY5YWFmZTVm NDI5NDgyOGZkYzY3ZjQyNDNlOWFhOWIxZDgzMTY2YWQ4OTJmMmQ5NzBmZGZmNjVlYmE3ZmE1ZWRk Yjk1NGRkODZiZGE1MjYyZTA4NDc1MmM2OWM2YjkzYzcyOWFkMzRlOTcyOGY3YzgzOGM0OWYwZTg3 MzQ5YWUzNWZlZWYxNjEwYjgzYTM0NWM2NGM1YjE5MGZiNTg1N2JmMGFhODQxOWVmYmEzNTc4OWMy NThmMTllODcxM2UyNzI5YzE4NGVhYjlkOWMzM2EzMmFiMzczMWQ3N2UyMDdhOTE4NDk2MjViYjg1 NWU1ODFjYTBiZTVkOWY5NjFhYWI5ZDY1YjQ2M2U0MTZlZTNkNjM2ZWNlNTczZWFkMGQwODhhMmZl MDVkODdkZDVlZDIxMDMxZjRkYmVhODMxMTEyZDNiZDBlMWNjMTA4N2E4Mzk1NDMwY2RlM2NiNTRk MjJhNTk2NWRkODI1MzI5YmVlOGM2MmQ0NTk5ZmI2N2ZmOTAyNjAyMDRjNmU2MDhlNjI0NmY3Njhl MjlhNjBjYjg1ZjU4MGQ0NzUxZjljMDE3Y2JmNGU2MDYyYTE2MGM2ZmYxZDBjOWQzMDNhMmM4NjJh NDk4NmUyMmY3MmRhNzliMTdiODY4Y2VlMTg5YTIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2do YXNoOjYxZTQ5NTk5ZWIzYjAxZTNkN2JjNjU0MTVjZTcwMDRlMjBiZjc3ODA1YTRmZjA5NjgxZjM4 NTZhZGMxMjk5NDMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjgzMjQwMGVi MWM0MDMxNTAyZjcyNDlkMGE0Mjc5YTdjYmU0ZDRkNjk3OTI4OWQwMjgzN2Q5OGI5Y2ExNmZmNDYK LStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQgPSA0OWY1ZmI4ODYyYTRmMDE5MDBmOWY3NmQ2 MTQ2ZjE4MTQ4MzQyOGJlYWRiMDAwZDRmNTA5N2FkZjU5YzVlYjk5Ci0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBm NzIxNzA0OWY5Y2M0ZjNkNTllYTEwOWEwNmFjM2NmYjc5ZmMwNWRjMzQ5ZTFjNTQ0ODIwNzJjNDY3 ZTUwMzQ5NGQ4NDUwMDRjMjc4ZGFiZDkzMzhkM2JkYjNjMmYzYzU4Y2IyNjRkNjU1NzVkOTk0Njk2 MTM0NWRjZGE1YjljZTU5Y2M4ZmRmYzk5NGFjYjc0ZmU4ZjNiMWZjMTQzYWJjZWVkYzU0MWFlNzRk NjljZDU0M2ZhNzQzOGFjNWI1Yzg0MTY4ZDZlNmY3ZmJhMjcyMmMyNzliN2NkMGMxZTA3Y2RkNTli YjIzMWYxNzE3NGQzM2I3YzFhNmViMTk5Y2ZhMDkzNDc2Y2RkMzEyOTJmM2JmZjIwYWUyMjQ0NTlj YWFlYzQ2MWM3NmQ3NDFmMGU5MjY5YmE5NjY3NmEzY2NlYmU5ODZhMzg0M2EzNjc0N2EwOTk4YmIz ZmVhYmE0MTY3MWRiMjAzNjg4NjdhMTM4NzVmNzYxMzZiMjQxOGI2YzgwNzMzNWE3MTMzYjRlNGZi YzBlOTA4NTE2Y2U5NzQ1OGFiZWMyYTMyMzU1ZmIwNjEyMzdiYWRhNGUwN2I5NTBhMmIxYzhkNDEy MDFmMWMwYTQxYzc3MWQ5OTBlNDc0MWZlZjZlMmViNWNkMTA2YzNiNGI2MDAwYWQwN2I0ODJhZAot K0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YmU3OWIzMDIzNzQ4MTdjMmZkMDUyNzA0ZGZi YTVlOThiMDVhODM0NmRiOTI2OWU2NDAxMjY1YTFjNzk3MGQ5OAotK0N0cmwuaGV4c2Vzc2lvbl9p ZCA9IGhleHNlc3Npb25faWQ6ZGVmODUzM2JmMjIwZDBjNjMyYWE0ZjFiMTYxNjhlNTFjMGJlOTA0 YzZmMjk5MjI1YjMwYmQ3ZGY3YmJkYzZmMgotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9 IDUwYWZiMmYzYjhhM2JjNDY2YjNhNjhmMDRkYTBkNTZjCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3Ry bC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBmNzIxNzA0 OWY5Y2M0ZjNkNTllYTEwOWEwNmFjM2NmYjc5ZmMwNWRjMzQ5ZTFjNTQ0ODIwNzJjNDY3ZTUwMzQ5 NGQ4NDUwMDRjMjc4ZGFiZDkzMzhkM2JkYjNjMmYzYzU4Y2IyNjRkNjU1NzVkOTk0Njk2MTM0NWRj ZGE1YjljZTU5Y2M4ZmRmYzk5NGFjYjc0ZmU4ZjNiMWZjMTQzYWJjZWVkYzU0MWFlNzRkNjljZDU0 M2ZhNzQzOGFjNWI1Yzg0MTY4ZDZlNmY3ZmJhMjcyMmMyNzliN2NkMGMxZTA3Y2RkNTliYjIzMWYx NzE3NGQzM2I3YzFhNmViMTk5Y2ZhMDkzNDc2Y2RkMzEyOTJmM2JmZjIwYWUyMjQ0NTljYWFlYzQ2 MWM3NmQ3NDFmMGU5MjY5YmE5NjY3NmEzY2NlYmU5ODZhMzg0M2EzNjc0N2EwOTk4YmIzZmVhYmE0 MTY3MWRiMjAzNjg4NjdhMTM4NzVmNzYxMzZiMjQxOGI2YzgwNzMzNWE3MTMzYjRlNGZiYzBlOTA4 NTE2Y2U5NzQ1OGFiZWMyYTMyMzU1ZmIwNjEyMzdiYWRhNGUwN2I5NTBhMmIxYzhkNDEyMDFmMWMw YTQxYzc3MWQ5OTBlNDc0MWZlZjZlMmViNWNkMTA2YzNiNGI2MDAwYWQwN2I0ODJhZAotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YmU3OWIzMDIzNzQ4MTdjMmZkMDUyNzA0ZGZiYTVlOThi MDVhODM0NmRiOTI2OWU2NDAxMjY1YTFjNzk3MGQ5OAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhl eHNlc3Npb25faWQ6ZGVmODUzM2JmMjIwZDBjNjMyYWE0ZjFiMTYxNjhlNTFjMGJlOTA0YzZmMjk5 MjI1YjMwYmQ3ZGY3YmJkYzZmMgotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IGI4Njcy YThjYzU5ZWUxMzE2ZmI5YTJjMGE4MmZmZDczCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9 IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBmNzIxNzA0OWY5Y2M0 ZjNkNTllYTEwOWEwNmFjM2NmYjc5ZmMwNWRjMzQ5ZTFjNTQ0ODIwNzJjNDY3ZTUwMzQ5NGQ4NDUw MDRjMjc4ZGFiZDkzMzhkM2JkYjNjMmYzYzU4Y2IyNjRkNjU1NzVkOTk0Njk2MTM0NWRjZGE1Yjlj ZTU5Y2M4ZmRmYzk5NGFjYjc0ZmU4ZjNiMWZjMTQzYWJjZWVkYzU0MWFlNzRkNjljZDU0M2ZhNzQz OGFjNWI1Yzg0MTY4ZDZlNmY3ZmJhMjcyMmMyNzliN2NkMGMxZTA3Y2RkNTliYjIzMWYxNzE3NGQz M2I3YzFhNmViMTk5Y2ZhMDkzNDc2Y2RkMzEyOTJmM2JmZjIwYWUyMjQ0NTljYWFlYzQ2MWM3NmQ3 NDFmMGU5MjY5YmE5NjY3NmEzY2NlYmU5ODZhMzg0M2EzNjc0N2EwOTk4YmIzZmVhYmE0MTY3MWRi MjAzNjg4NjdhMTM4NzVmNzYxMzZiMjQxOGI2YzgwNzMzNWE3MTMzYjRlNGZiYzBlOTA4NTE2Y2U5 NzQ1OGFiZWMyYTMyMzU1ZmIwNjEyMzdiYWRhNGUwN2I5NTBhMmIxYzhkNDEyMDFmMWMwYTQxYzc3 MWQ5OTBlNDc0MWZlZjZlMmViNWNkMTA2YzNiNGI2MDAwYWQwN2I0ODJhZAotK0N0cmwuaGV4eGNn aGFzaCA9IGhleHhjZ2hhc2g6YmU3OWIzMDIzNzQ4MTdjMmZkMDUyNzA0ZGZiYTVlOThiMDVhODM0 NmRiOTI2OWU2NDAxMjY1YTFjNzk3MGQ5OAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6ZGVmODUzM2JmMjIwZDBjNjMyYWE0ZjFiMTYxNjhlNTFjMGJlOTA0YzZmMjk5MjI1YjMw YmQ3ZGY3YmJkYzZmMgotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IGQ4NTRjYmRiOGY3 NTQ0Yjc5NmY5ODJlNDk3M2Q0ZGU5Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBmNzIxNzA0OWY5Y2M0ZjNkNTll YTEwOWEwNmFjM2NmYjc5ZmMwNWRjMzQ5ZTFjNTQ0ODIwNzJjNDY3ZTUwMzQ5NGQ4NDUwMDRjMjc4 ZGFiZDkzMzhkM2JkYjNjMmYzYzU4Y2IyNjRkNjU1NzVkOTk0Njk2MTM0NWRjZGE1YjljZTU5Y2M4 ZmRmYzk5NGFjYjc0ZmU4ZjNiMWZjMTQzYWJjZWVkYzU0MWFlNzRkNjljZDU0M2ZhNzQzOGFjNWI1 Yzg0MTY4ZDZlNmY3ZmJhMjcyMmMyNzliN2NkMGMxZTA3Y2RkNTliYjIzMWYxNzE3NGQzM2I3YzFh NmViMTk5Y2ZhMDkzNDc2Y2RkMzEyOTJmM2JmZjIwYWUyMjQ0NTljYWFlYzQ2MWM3NmQ3NDFmMGU5 MjY5YmE5NjY3NmEzY2NlYmU5ODZhMzg0M2EzNjc0N2EwOTk4YmIzZmVhYmE0MTY3MWRiMjAzNjg4 NjdhMTM4NzVmNzYxMzZiMjQxOGI2YzgwNzMzNWE3MTMzYjRlNGZiYzBlOTA4NTE2Y2U5NzQ1OGFi ZWMyYTMyMzU1ZmIwNjEyMzdiYWRhNGUwN2I5NTBhMmIxYzhkNDEyMDFmMWMwYTQxYzc3MWQ5OTBl NDc0MWZlZjZlMmViNWNkMTA2YzNiNGI2MDAwYWQwN2I0ODJhZAotK0N0cmwuaGV4eGNnaGFzaCA9 IGhleHhjZ2hhc2g6YmU3OWIzMDIzNzQ4MTdjMmZkMDUyNzA0ZGZiYTVlOThiMDVhODM0NmRiOTI2 OWU2NDAxMjY1YTFjNzk3MGQ5OAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 ZGVmODUzM2JmMjIwZDBjNjMyYWE0ZjFiMTYxNjhlNTFjMGJlOTA0YzZmMjk5MjI1YjMwYmQ3ZGY3 YmJkYzZmMgotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGJkNmJkZTgyYzQ1MWVlMzkw NjlkMDc5NGY3MDAwZjM4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1Ngot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBmNzIxNzA0OWY5Y2M0ZjNkNTllYTEwOWEw NmFjM2NmYjc5ZmMwNWRjMzQ5ZTFjNTQ0ODIwNzJjNDY3ZTUwMzQ5NGQ4NDUwMDRjMjc4ZGFiZDkz MzhkM2JkYjNjMmYzYzU4Y2IyNjRkNjU1NzVkOTk0Njk2MTM0NWRjZGE1YjljZTU5Y2M4ZmRmYzk5 NGFjYjc0ZmU4ZjNiMWZjMTQzYWJjZWVkYzU0MWFlNzRkNjljZDU0M2ZhNzQzOGFjNWI1Yzg0MTY4 ZDZlNmY3ZmJhMjcyMmMyNzliN2NkMGMxZTA3Y2RkNTliYjIzMWYxNzE3NGQzM2I3YzFhNmViMTk5 Y2ZhMDkzNDc2Y2RkMzEyOTJmM2JmZjIwYWUyMjQ0NTljYWFlYzQ2MWM3NmQ3NDFmMGU5MjY5YmE5 NjY3NmEzY2NlYmU5ODZhMzg0M2EzNjc0N2EwOTk4YmIzZmVhYmE0MTY3MWRiMjAzNjg4NjdhMTM4 NzVmNzYxMzZiMjQxOGI2YzgwNzMzNWE3MTMzYjRlNGZiYzBlOTA4NTE2Y2U5NzQ1OGFiZWMyYTMy MzU1ZmIwNjEyMzdiYWRhNGUwN2I5NTBhMmIxYzhkNDEyMDFmMWMwYTQxYzc3MWQ5OTBlNDc0MWZl ZjZlMmViNWNkMTA2YzNiNGI2MDAwYWQwN2I0ODJhZAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6YmU3OWIzMDIzNzQ4MTdjMmZkMDUyNzA0ZGZiYTVlOThiMDVhODM0NmRiOTI2OWU2NDAx MjY1YTFjNzk3MGQ5OAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGVmODUz M2JmMjIwZDBjNjMyYWE0ZjFiMTYxNjhlNTFjMGJlOTA0YzZmMjk5MjI1YjMwYmQ3ZGY3YmJkYzZm MgotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IDI3MDc5NGVjNzBmY2Q5ZDc0MmFhZDY2 YzU0MDAxYjRjMjE4YWU4Y2NhODEzNDUzNTYwYTlhZWFhY2M2OTA5ZWMKLSsKLStLREYgPSBTU0hL REYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEw MGY3MjE3MDQ5ZjljYzRmM2Q1OWVhMTA5YTA2YWMzY2ZiNzlmYzA1ZGMzNDllMWM1NDQ4MjA3MmM0 NjdlNTAzNDk0ZDg0NTAwNGMyNzhkYWJkOTMzOGQzYmRiM2MyZjNjNThjYjI2NGQ2NTU3NWQ5OTQ2 OTYxMzQ1ZGNkYTViOWNlNTljYzhmZGZjOTk0YWNiNzRmZThmM2IxZmMxNDNhYmNlZWRjNTQxYWU3 NGQ2OWNkNTQzZmE3NDM4YWM1YjVjODQxNjhkNmU2ZjdmYmEyNzIyYzI3OWI3Y2QwYzFlMDdjZGQ1 OWJiMjMxZjE3MTc0ZDMzYjdjMWE2ZWIxOTljZmEwOTM0NzZjZGQzMTI5MmYzYmZmMjBhZTIyNDQ1 OWNhYWVjNDYxYzc2ZDc0MWYwZTkyNjliYTk2Njc2YTNjY2ViZTk4NmEzODQzYTM2NzQ3YTA5OThi YjNmZWFiYTQxNjcxZGIyMDM2ODg2N2ExMzg3NWY3NjEzNmIyNDE4YjZjODA3MzM1YTcxMzNiNGU0 ZmJjMGU5MDg1MTZjZTk3NDU4YWJlYzJhMzIzNTVmYjA2MTIzN2JhZGE0ZTA3Yjk1MGEyYjFjOGQ0 MTIwMWYxYzBhNDFjNzcxZDk5MGU0NzQxZmVmNmUyZWI1Y2QxMDZjM2I0YjYwMDBhZDA3YjQ4MmFk Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpiZTc5YjMwMjM3NDgxN2MyZmQwNTI3MDRk ZmJhNWU5OGIwNWE4MzQ2ZGI5MjY5ZTY0MDEyNjVhMWM3OTcwZDk4Ci0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDpkZWY4NTMzYmYyMjBkMGM2MzJhYTRmMWIxNjE2OGU1MWMwYmU5 MDRjNmYyOTkyMjViMzBiZDdkZjdiYmRjNmYyCi0rQ3RybC50eXBlID0gdHlwZTpGCi0rT3V0cHV0 ID0gZTk2N2RmNzU3MWEwZWI4MmY1OWRkZmVhZDIyYzYxN2JlZWVmYTI1Y2U0YWZkODBhYzgzMjBi YzI2MzVjNzBkMAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJs LmhleGtleSA9IGhleGtleTowMDAwMDEwMDFiM2ExY2FiMWU4N2EyOWUyMjllZmNhZTBmNTY5ZDg1 NWE2MWQ2ZGE2ZWEwYWU1YmVkMzQ5MWM3YmRiNWY3MGY2Y2FmOGRjMzA1MTAwMTYwYmJmNmVjZDcy NmIxMTc5OWRhNjg1Y2U0NTI4ZWU2ODlmZTI5MjA0M2UzMThhZDlmNzk3YmQ1NzQ2Mzk5ZTAwN2Nm MWY0MGQ3OTE4Yjg1ZTQ2MDdmNmU2NzRkYTg0NzA5NTQzZGQwZDUwYWQxZDVjOTkzNzcwYjRkMGMw NDVmZGVmODlkNTUzNGMzZDc3ZWRkOGRjNDUzNmExMGNjMmI1ZDBiZDE0Y2FhN2UwMjliYThhODFk NWY1ZmIxNjUyNGI1NmRkYjlmMzVkOTY1OTM5NTU1MTRiODBkODliNzExZmY3MTdlMTFhZDNkNjkx NDI0ZjZjZWZjNWM2MTNiMDRlNTUzMmQ4OWY5MTM4M2U0YTZmNDUwNTg2MDRiYjYzODc2YjEzMDhk YzdlYjhmODZjYjVjMDMyZTZmMWYwNjE2NDZlMGJiZjI3YjBjN2VhYTgyMTZiYTkzODFjYjc3MzRk ZjI0ZmU2NjkxMTgzYzQ4MjNkM2I2NDVmMzEzOWE0NWIyYjhlZTM5MDliYjQzMTQ3N2YzMzJlYTM2 MTZiOTE5NzI0NzgyZmRhODU0NmEzMjM1Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpm ZTQ5MWY0MWNkYmNhZWM2Yjg4MjFlZGE5MTZlYjAzYmMxYTBlOTM0YzE0ODUwNjk2Zjc5YmQzMGM3 M2ExOGUyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpkZjFjMDkxMGNmOGI4 MWNhMTU3OTE2YjhhYzA0MTFiNzM2M2Y2MmNlMTBlZTIzY2JiNjlkZGZlOGMzZjE2YmU5Ci0rQ3Ry bC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gZWJiM2QxMGY0NjFkODY5N2EwNjQ0NjE4MjJmMzQ1 MDcKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAxMDAxYjNhMWNhYjFlODdhMjllMjI5ZWZjYWUwZjU2OWQ4NTVhNjFkNmRh NmVhMGFlNWJlZDM0OTFjN2JkYjVmNzBmNmNhZjhkYzMwNTEwMDE2MGJiZjZlY2Q3MjZiMTE3OTlk YTY4NWNlNDUyOGVlNjg5ZmUyOTIwNDNlMzE4YWQ5Zjc5N2JkNTc0NjM5OWUwMDdjZjFmNDBkNzkx OGI4NWU0NjA3ZjZlNjc0ZGE4NDcwOTU0M2RkMGQ1MGFkMWQ1Yzk5Mzc3MGI0ZDBjMDQ1ZmRlZjg5 ZDU1MzRjM2Q3N2VkZDhkYzQ1MzZhMTBjYzJiNWQwYmQxNGNhYTdlMDI5YmE4YTgxZDVmNWZiMTY1 MjRiNTZkZGI5ZjM1ZDk2NTkzOTU1NTE0YjgwZDg5YjcxMWZmNzE3ZTExYWQzZDY5MTQyNGY2Y2Vm YzVjNjEzYjA0ZTU1MzJkODlmOTEzODNlNGE2ZjQ1MDU4NjA0YmI2Mzg3NmIxMzA4ZGM3ZWI4Zjg2 Y2I1YzAzMmU2ZjFmMDYxNjQ2ZTBiYmYyN2IwYzdlYWE4MjE2YmE5MzgxY2I3NzM0ZGYyNGZlNjY5 MTE4M2M0ODIzZDNiNjQ1ZjMxMzlhNDViMmI4ZWUzOTA5YmI0MzE0NzdmMzMyZWEzNjE2YjkxOTcy NDc4MmZkYTg1NDZhMzIzNQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZmU0OTFmNDFj ZGJjYWVjNmI4ODIxZWRhOTE2ZWIwM2JjMWEwZTkzNGMxNDg1MDY5NmY3OWJkMzBjNzNhMThlMgot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGYxYzA5MTBjZjhiODFjYTE1Nzkx NmI4YWMwNDExYjczNjNmNjJjZTEwZWUyM2NiYjY5ZGRmZThjM2YxNmJlOQotK0N0cmwudHlwZSA9 IHR5cGU6QgotK091dHB1dCA9IGJiOTVmOWNiZWQ2OTU1MjlmZDc5NzcyODEzMzIxMDBiCi0rCi0r S0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTI1NgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5 OjAwMDAwMTAwMWIzYTFjYWIxZTg3YTI5ZTIyOWVmY2FlMGY1NjlkODU1YTYxZDZkYTZlYTBhZTVi ZWQzNDkxYzdiZGI1ZjcwZjZjYWY4ZGMzMDUxMDAxNjBiYmY2ZWNkNzI2YjExNzk5ZGE2ODVjZTQ1 MjhlZTY4OWZlMjkyMDQzZTMxOGFkOWY3OTdiZDU3NDYzOTllMDA3Y2YxZjQwZDc5MThiODVlNDYw N2Y2ZTY3NGRhODQ3MDk1NDNkZDBkNTBhZDFkNWM5OTM3NzBiNGQwYzA0NWZkZWY4OWQ1NTM0YzNk NzdlZGQ4ZGM0NTM2YTEwY2MyYjVkMGJkMTRjYWE3ZTAyOWJhOGE4MWQ1ZjVmYjE2NTI0YjU2ZGRi OWYzNWQ5NjU5Mzk1NTUxNGI4MGQ4OWI3MTFmZjcxN2UxMWFkM2Q2OTE0MjRmNmNlZmM1YzYxM2Iw NGU1NTMyZDg5ZjkxMzgzZTRhNmY0NTA1ODYwNGJiNjM4NzZiMTMwOGRjN2ViOGY4NmNiNWMwMzJl NmYxZjA2MTY0NmUwYmJmMjdiMGM3ZWFhODIxNmJhOTM4MWNiNzczNGRmMjRmZTY2OTExODNjNDgy M2QzYjY0NWYzMTM5YTQ1YjJiOGVlMzkwOWJiNDMxNDc3ZjMzMmVhMzYxNmI5MTk3MjQ3ODJmZGE4 NTQ2YTMyMzUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmZlNDkxZjQxY2RiY2FlYzZi ODgyMWVkYTkxNmViMDNiYzFhMGU5MzRjMTQ4NTA2OTZmNzliZDMwYzczYTE4ZTIKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmRmMWMwOTEwY2Y4YjgxY2ExNTc5MTZiOGFjMDQx MWI3MzYzZjYyY2UxMGVlMjNjYmI2OWRkZmU4YzNmMTZiZTkKLStDdHJsLnR5cGUgPSB0eXBlOkMK LStPdXRwdXQgPSBkYTEzMThhNmEzNDIyNGNjODZjOWFmYTQxOTkxZGI0YgotKwotK0tERiA9IFNT SEtERgotK0N0cmwubWQgPSBtZDpTSEEyNTYKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEw MDFiM2ExY2FiMWU4N2EyOWUyMjllZmNhZTBmNTY5ZDg1NWE2MWQ2ZGE2ZWEwYWU1YmVkMzQ5MWM3 YmRiNWY3MGY2Y2FmOGRjMzA1MTAwMTYwYmJmNmVjZDcyNmIxMTc5OWRhNjg1Y2U0NTI4ZWU2ODlm ZTI5MjA0M2UzMThhZDlmNzk3YmQ1NzQ2Mzk5ZTAwN2NmMWY0MGQ3OTE4Yjg1ZTQ2MDdmNmU2NzRk YTg0NzA5NTQzZGQwZDUwYWQxZDVjOTkzNzcwYjRkMGMwNDVmZGVmODlkNTUzNGMzZDc3ZWRkOGRj NDUzNmExMGNjMmI1ZDBiZDE0Y2FhN2UwMjliYThhODFkNWY1ZmIxNjUyNGI1NmRkYjlmMzVkOTY1 OTM5NTU1MTRiODBkODliNzExZmY3MTdlMTFhZDNkNjkxNDI0ZjZjZWZjNWM2MTNiMDRlNTUzMmQ4 OWY5MTM4M2U0YTZmNDUwNTg2MDRiYjYzODc2YjEzMDhkYzdlYjhmODZjYjVjMDMyZTZmMWYwNjE2 NDZlMGJiZjI3YjBjN2VhYTgyMTZiYTkzODFjYjc3MzRkZjI0ZmU2NjkxMTgzYzQ4MjNkM2I2NDVm MzEzOWE0NWIyYjhlZTM5MDliYjQzMTQ3N2YzMzJlYTM2MTZiOTE5NzI0NzgyZmRhODU0NmEzMjM1 Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpmZTQ5MWY0MWNkYmNhZWM2Yjg4MjFlZGE5 MTZlYjAzYmMxYTBlOTM0YzE0ODUwNjk2Zjc5YmQzMGM3M2ExOGUyCi0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDpkZjFjMDkxMGNmOGI4MWNhMTU3OTE2YjhhYzA0MTFiNzM2M2Y2 MmNlMTBlZTIzY2JiNjlkZGZlOGMzZjE2YmU5Ci0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0 ID0gMDkxZjhmYTg3YTAxYzU3NjhkZThkNjYzYmE4YmY5ZDcKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDAxYjNhMWNh YjFlODdhMjllMjI5ZWZjYWUwZjU2OWQ4NTVhNjFkNmRhNmVhMGFlNWJlZDM0OTFjN2JkYjVmNzBm NmNhZjhkYzMwNTEwMDE2MGJiZjZlY2Q3MjZiMTE3OTlkYTY4NWNlNDUyOGVlNjg5ZmUyOTIwNDNl MzE4YWQ5Zjc5N2JkNTc0NjM5OWUwMDdjZjFmNDBkNzkxOGI4NWU0NjA3ZjZlNjc0ZGE4NDcwOTU0 M2RkMGQ1MGFkMWQ1Yzk5Mzc3MGI0ZDBjMDQ1ZmRlZjg5ZDU1MzRjM2Q3N2VkZDhkYzQ1MzZhMTBj YzJiNWQwYmQxNGNhYTdlMDI5YmE4YTgxZDVmNWZiMTY1MjRiNTZkZGI5ZjM1ZDk2NTkzOTU1NTE0 YjgwZDg5YjcxMWZmNzE3ZTExYWQzZDY5MTQyNGY2Y2VmYzVjNjEzYjA0ZTU1MzJkODlmOTEzODNl NGE2ZjQ1MDU4NjA0YmI2Mzg3NmIxMzA4ZGM3ZWI4Zjg2Y2I1YzAzMmU2ZjFmMDYxNjQ2ZTBiYmYy N2IwYzdlYWE4MjE2YmE5MzgxY2I3NzM0ZGYyNGZlNjY5MTE4M2M0ODIzZDNiNjQ1ZjMxMzlhNDVi MmI4ZWUzOTA5YmI0MzE0NzdmMzMyZWEzNjE2YjkxOTcyNDc4MmZkYTg1NDZhMzIzNQotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZmU0OTFmNDFjZGJjYWVjNmI4ODIxZWRhOTE2ZWIwM2Jj MWEwZTkzNGMxNDg1MDY5NmY3OWJkMzBjNzNhMThlMgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhl eHNlc3Npb25faWQ6ZGYxYzA5MTBjZjhiODFjYTE1NzkxNmI4YWMwNDExYjczNjNmNjJjZTEwZWUy M2NiYjY5ZGRmZThjM2YxNmJlOQotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IGNjMDkx MjdhNzU5MDAwZjNiZDk3MjRmYmY1Mjg1Y2Q2ODBlZTMyM2ZmYzE5Y2YyZjQ5NTQwM2Y4OTY1ODcz MTcKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMjU2Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAxMDAxYjNhMWNhYjFlODdhMjllMjI5ZWZjYWUwZjU2OWQ4NTVhNjFkNmRh NmVhMGFlNWJlZDM0OTFjN2JkYjVmNzBmNmNhZjhkYzMwNTEwMDE2MGJiZjZlY2Q3MjZiMTE3OTlk YTY4NWNlNDUyOGVlNjg5ZmUyOTIwNDNlMzE4YWQ5Zjc5N2JkNTc0NjM5OWUwMDdjZjFmNDBkNzkx OGI4NWU0NjA3ZjZlNjc0ZGE4NDcwOTU0M2RkMGQ1MGFkMWQ1Yzk5Mzc3MGI0ZDBjMDQ1ZmRlZjg5 ZDU1MzRjM2Q3N2VkZDhkYzQ1MzZhMTBjYzJiNWQwYmQxNGNhYTdlMDI5YmE4YTgxZDVmNWZiMTY1 MjRiNTZkZGI5ZjM1ZDk2NTkzOTU1NTE0YjgwZDg5YjcxMWZmNzE3ZTExYWQzZDY5MTQyNGY2Y2Vm YzVjNjEzYjA0ZTU1MzJkODlmOTEzODNlNGE2ZjQ1MDU4NjA0YmI2Mzg3NmIxMzA4ZGM3ZWI4Zjg2 Y2I1YzAzMmU2ZjFmMDYxNjQ2ZTBiYmYyN2IwYzdlYWE4MjE2YmE5MzgxY2I3NzM0ZGYyNGZlNjY5 MTE4M2M0ODIzZDNiNjQ1ZjMxMzlhNDViMmI4ZWUzOTA5YmI0MzE0NzdmMzMyZWEzNjE2YjkxOTcy NDc4MmZkYTg1NDZhMzIzNQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZmU0OTFmNDFj ZGJjYWVjNmI4ODIxZWRhOTE2ZWIwM2JjMWEwZTkzNGMxNDg1MDY5NmY3OWJkMzBjNzNhMThlMgot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGYxYzA5MTBjZjhiODFjYTE1Nzkx NmI4YWMwNDExYjczNjNmNjJjZTEwZWUyM2NiYjY5ZGRmZThjM2YxNmJlOQotK0N0cmwudHlwZSA9 IHR5cGU6RgotK091dHB1dCA9IGEzY2VkZGFmYzQ5ZjdjMDEzMWNlMjk2NTk0NWMzODkyYmU2NjA1 YjQ2NTg3N2JjMDYzNzY4NTYxMmVkZTI0MmIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDk0MTQ1NmJkNzIyNjdh OTA2OTBmZmM4NzM1MjhmNGI3NjM5NDQzMWFjZWVlMWUyNGE3YmVkNDE0NTY4ZDliOTdjODRjZTEz ZDM0YTJiNGE2M2VmNzM1YmFjMjNhZjBiN2ZhNjM0YTllNTZjMmQ3NzVjNzQxYTYxZDYzOTgxMzMy ZjkwMjdkM2Y1MmM0YTlhM2FkYjgzZTk2ZDM5ZjdlNmJiNzI1MTQ3OTdkYTMyZjJmMGVkYjU5YWNj ZmM1OGE0OWZjMzRiMTk4ZTAyODViMzEwMzJhYzlmMDY5MDdkZWYxOTZmNTc0OGJkMzJjZTIyYTUz ODNhMWJiZGJkMzFmMjQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmUwZGVlODBjY2Mx NjI4ODQzOTM5MzBhZDIwNzNkOTIxMjBjODA0MjU0MTYyNDQ2YjdkMDQ4Zjg1YTFhNGRkN2I2MzZh MDliNjkyNTJiODA5NTJhMDU4MWU5NDkwZWU1YQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNl c3Npb25faWQ6ZTBkZWU4MGNjYzE2Mjg4NDM5MzkzMGFkMjA3M2Q5MjEyMGM4MDQyNTQxNjI0NDZi N2QwNDhmODVhMWE0ZGQ3YjYzNmEwOWI2OTI1MmI4MDk1MmEwNTgxZTk0OTBlZTVhCi0rQ3RybC50 eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gZDMxYzE2ZjY3YjE3YmM2OQotKwotK0tERiA9IFNTSEtE RgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAw OTQxNDU2YmQ3MjI2N2E5MDY5MGZmYzg3MzUyOGY0Yjc2Mzk0NDMxYWNlZWUxZTI0YTdiZWQ0MTQ1 NjhkOWI5N2M4NGNlMTNkMzRhMmI0YTYzZWY3MzViYWMyM2FmMGI3ZmE2MzRhOWU1NmMyZDc3NWM3 NDFhNjFkNjM5ODEzMzJmOTAyN2QzZjUyYzRhOWEzYWRiODNlOTZkMzlmN2U2YmI3MjUxNDc5N2Rh MzJmMmYwZWRiNTlhY2NmYzU4YTQ5ZmMzNGIxOThlMDI4NWIzMTAzMmFjOWYwNjkwN2RlZjE5NmY1 NzQ4YmQzMmNlMjJhNTM4M2ExYmJkYmQzMWYyNAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6ZTBkZWU4MGNjYzE2Mjg4NDM5MzkzMGFkMjA3M2Q5MjEyMGM4MDQyNTQxNjI0NDZiN2QwNDhm ODVhMWE0ZGQ3YjYzNmEwOWI2OTI1MmI4MDk1MmEwNTgxZTk0OTBlZTVhCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDplMGRlZTgwY2NjMTYyODg0MzkzOTMwYWQyMDczZDkyMTIw YzgwNDI1NDE2MjQ0NmI3ZDA0OGY4NWExYTRkZDdiNjM2YTA5YjY5MjUyYjgwOTUyYTA1ODFlOTQ5 MGVlNWEKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA2NzUzNDBmMjcyNjllN2FlCi0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMDgxMDA5NDE0NTZiZDcyMjY3YTkwNjkwZmZjODczNTI4ZjRiNzYzOTQ0MzFhY2Vl ZTFlMjRhN2JlZDQxNDU2OGQ5Yjk3Yzg0Y2UxM2QzNGEyYjRhNjNlZjczNWJhYzIzYWYwYjdmYTYz NGE5ZTU2YzJkNzc1Yzc0MWE2MWQ2Mzk4MTMzMmY5MDI3ZDNmNTJjNGE5YTNhZGI4M2U5NmQzOWY3 ZTZiYjcyNTE0Nzk3ZGEzMmYyZjBlZGI1OWFjY2ZjNThhNDlmYzM0YjE5OGUwMjg1YjMxMDMyYWM5 ZjA2OTA3ZGVmMTk2ZjU3NDhiZDMyY2UyMmE1MzgzYTFiYmRiZDMxZjI0Ci0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDplMGRlZTgwY2NjMTYyODg0MzkzOTMwYWQyMDczZDkyMTIwYzgwNDI1 NDE2MjQ0NmI3ZDA0OGY4NWExYTRkZDdiNjM2YTA5YjY5MjUyYjgwOTUyYTA1ODFlOTQ5MGVlNWEK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmUwZGVlODBjY2MxNjI4ODQzOTM5 MzBhZDIwNzNkOTIxMjBjODA0MjU0MTYyNDQ2YjdkMDQ4Zjg1YTFhNGRkN2I2MzZhMDliNjkyNTJi ODA5NTJhMDU4MWU5NDkwZWU1YQotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDJmZmVk NTc3YTkwZDI5ODcyZWE1OWYzNzgyYzNiNDA2OTA4ZDczOTRmZjYzYzlkNwotKwotK0tERiA9IFNT SEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4 MTAwOTQxNDU2YmQ3MjI2N2E5MDY5MGZmYzg3MzUyOGY0Yjc2Mzk0NDMxYWNlZWUxZTI0YTdiZWQ0 MTQ1NjhkOWI5N2M4NGNlMTNkMzRhMmI0YTYzZWY3MzViYWMyM2FmMGI3ZmE2MzRhOWU1NmMyZDc3 NWM3NDFhNjFkNjM5ODEzMzJmOTAyN2QzZjUyYzRhOWEzYWRiODNlOTZkMzlmN2U2YmI3MjUxNDc5 N2RhMzJmMmYwZWRiNTlhY2NmYzU4YTQ5ZmMzNGIxOThlMDI4NWIzMTAzMmFjOWYwNjkwN2RlZjE5 NmY1NzQ4YmQzMmNlMjJhNTM4M2ExYmJkYmQzMWYyNAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6ZTBkZWU4MGNjYzE2Mjg4NDM5MzkzMGFkMjA3M2Q5MjEyMGM4MDQyNTQxNjI0NDZiN2Qw NDhmODVhMWE0ZGQ3YjYzNmEwOWI2OTI1MmI4MDk1MmEwNTgxZTk0OTBlZTVhCi0rQ3RybC5oZXhz ZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDplMGRlZTgwY2NjMTYyODg0MzkzOTMwYWQyMDczZDky MTIwYzgwNDI1NDE2MjQ0NmI3ZDA0OGY4NWExYTRkZDdiNjM2YTA5YjY5MjUyYjgwOTUyYTA1ODFl OTQ5MGVlNWEKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBmYWU3NTE5ODdjMWZhODY2 NWU0Mzg3ZTQxMDI5N2RiNThmZjY5YjI2MGE4ZmU4NWYKLSsKLStLREYgPSBTU0hLREYKLStDdHJs Lm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDk0MTQ1NmJk NzIyNjdhOTA2OTBmZmM4NzM1MjhmNGI3NjM5NDQzMWFjZWVlMWUyNGE3YmVkNDE0NTY4ZDliOTdj ODRjZTEzZDM0YTJiNGE2M2VmNzM1YmFjMjNhZjBiN2ZhNjM0YTllNTZjMmQ3NzVjNzQxYTYxZDYz OTgxMzMyZjkwMjdkM2Y1MmM0YTlhM2FkYjgzZTk2ZDM5ZjdlNmJiNzI1MTQ3OTdkYTMyZjJmMGVk YjU5YWNjZmM1OGE0OWZjMzRiMTk4ZTAyODViMzEwMzJhYzlmMDY5MDdkZWYxOTZmNTc0OGJkMzJj ZTIyYTUzODNhMWJiZGJkMzFmMjQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmUwZGVl ODBjY2MxNjI4ODQzOTM5MzBhZDIwNzNkOTIxMjBjODA0MjU0MTYyNDQ2YjdkMDQ4Zjg1YTFhNGRk N2I2MzZhMDliNjkyNTJiODA5NTJhMDU4MWU5NDkwZWU1YQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6ZTBkZWU4MGNjYzE2Mjg4NDM5MzkzMGFkMjA3M2Q5MjEyMGM4MDQyNTQx NjI0NDZiN2QwNDhmODVhMWE0ZGQ3YjYzNmEwOWI2OTI1MmI4MDk1MmEwNTgxZTk0OTBlZTVhCi0r Q3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gZmYyZGI1OTc1ZWRmMzgyNDMyNWIyNTc0NTU3 OTE4Njk0MzRjNmFmNDdmYjBjODE0NTI1M2MyNjk1YWJmZDJiOGM5ODA1NjVhZDIwZTZiOTMxM2Jh NDRlZTQ4OGJhZmIwCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA5NDE0NTZiZDcyMjY3YTkwNjkwZmZjODczNTI4 ZjRiNzYzOTQ0MzFhY2VlZTFlMjRhN2JlZDQxNDU2OGQ5Yjk3Yzg0Y2UxM2QzNGEyYjRhNjNlZjcz NWJhYzIzYWYwYjdmYTYzNGE5ZTU2YzJkNzc1Yzc0MWE2MWQ2Mzk4MTMzMmY5MDI3ZDNmNTJjNGE5 YTNhZGI4M2U5NmQzOWY3ZTZiYjcyNTE0Nzk3ZGEzMmYyZjBlZGI1OWFjY2ZjNThhNDlmYzM0YjE5 OGUwMjg1YjMxMDMyYWM5ZjA2OTA3ZGVmMTk2ZjU3NDhiZDMyY2UyMmE1MzgzYTFiYmRiZDMxZjI0 Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDplMGRlZTgwY2NjMTYyODg0MzkzOTMwYWQy MDczZDkyMTIwYzgwNDI1NDE2MjQ0NmI3ZDA0OGY4NWExYTRkZDdiNjM2YTA5YjY5MjUyYjgwOTUy YTA1ODFlOTQ5MGVlNWEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmUwZGVl ODBjY2MxNjI4ODQzOTM5MzBhZDIwNzNkOTIxMjBjODA0MjU0MTYyNDQ2YjdkMDQ4Zjg1YTFhNGRk N2I2MzZhMDliNjkyNTJiODA5NTJhMDU4MWU5NDkwZWU1YQotK0N0cmwudHlwZSA9IHR5cGU6Rgot K091dHB1dCA9IDg1YTk0NjNjZDY1M2M3NjE5ZDRkYzg1MDA2NDA2ZDZlZDMzNjQyMjA0MTljYTEz ODEwMzAxYmUwZjAzODlkOTMyZGRlYWViYjBlNTA0YTA4NDllMmU3M2E3ZDA4N2RiMgotKwotK0tE RiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTow MDAwMDA4MDMxOTUzNGFhYmYxMTAwYjFlZjNlYzA4OWJhNmU1YjI1OTQ2YmRmNjdjYmM5MjQ5M2My OWQwZTYzNzY1ZWUzOGRjMjdlMTU3MjAzOTNkNmFhNTc0MWIyMTI5YjI0ZWU2YTcxYzA3OTE5MDU4 ODIzMmY0ZmFjYWRkMDM0ZGQ2ZTQ1NmJmNDVhZWRmNzJhMDU5ZWNhNTkxY2ViMmQ3YzUwZjhhZTkx ODUyODg3MmY0MGVhZjYyZmFhNTExZDZiZmJlZDRiODYxMzE2M2M0MmI5OWViMzBjMjBlY2NlMWMz NmE3OGI5M2ZiMDA0NjQ2N2EwYmNiNDFkZmExZTYwOWI2MWIKLStDdHJsLmhleHhjZ2hhc2ggPSBo ZXh4Y2doYXNoOjBmODMxZmYzZTkwN2IzZjA5MjI3MjJiZDgwNzNiMmMyNjNjNzdjN2Y1NTJjMGIw YjEyYmU2OGYxOTUyMGIxYWUyYmJmNjJhOWRiYTBmNTgyZDVmMDE5N2MwZDUzNGY2ZQotK0N0cmwu aGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGVkZTQxN2Y0YjQ1ZDU4ZDU0Y2JlNTllN2Q4 MGJhYjMxNTBjY2Q5OTU4M2FhODdmN2VjZGU3MzE0NjJkMDc0ZWRmNDk5MDcyNzg4MTkwNDMzNDFk MWZlMjBlMTM2NTYzCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gOTMzMjM0NTE0NDFi NzYxZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtl eSA9IGhleGtleTowMDAwMDA4MDMxOTUzNGFhYmYxMTAwYjFlZjNlYzA4OWJhNmU1YjI1OTQ2YmRm NjdjYmM5MjQ5M2MyOWQwZTYzNzY1ZWUzOGRjMjdlMTU3MjAzOTNkNmFhNTc0MWIyMTI5YjI0ZWU2 YTcxYzA3OTE5MDU4ODIzMmY0ZmFjYWRkMDM0ZGQ2ZTQ1NmJmNDVhZWRmNzJhMDU5ZWNhNTkxY2Vi MmQ3YzUwZjhhZTkxODUyODg3MmY0MGVhZjYyZmFhNTExZDZiZmJlZDRiODYxMzE2M2M0MmI5OWVi MzBjMjBlY2NlMWMzNmE3OGI5M2ZiMDA0NjQ2N2EwYmNiNDFkZmExZTYwOWI2MWIKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjBmODMxZmYzZTkwN2IzZjA5MjI3MjJiZDgwNzNiMmMyNjNj NzdjN2Y1NTJjMGIwYjEyYmU2OGYxOTUyMGIxYWUyYmJmNjJhOWRiYTBmNTgyZDVmMDE5N2MwZDUz NGY2ZQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGVkZTQxN2Y0YjQ1ZDU4 ZDU0Y2JlNTllN2Q4MGJhYjMxNTBjY2Q5OTU4M2FhODdmN2VjZGU3MzE0NjJkMDc0ZWRmNDk5MDcy Nzg4MTkwNDMzNDFkMWZlMjBlMTM2NTYzCi0rQ3RybC50eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0g M2RiZmRjMjM2NDgwN2VjYwotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQK LStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDMxOTUzNGFhYmYxMTAwYjFlZjNlYzA4OWJh NmU1YjI1OTQ2YmRmNjdjYmM5MjQ5M2MyOWQwZTYzNzY1ZWUzOGRjMjdlMTU3MjAzOTNkNmFhNTc0 MWIyMTI5YjI0ZWU2YTcxYzA3OTE5MDU4ODIzMmY0ZmFjYWRkMDM0ZGQ2ZTQ1NmJmNDVhZWRmNzJh MDU5ZWNhNTkxY2ViMmQ3YzUwZjhhZTkxODUyODg3MmY0MGVhZjYyZmFhNTExZDZiZmJlZDRiODYx MzE2M2M0MmI5OWViMzBjMjBlY2NlMWMzNmE3OGI5M2ZiMDA0NjQ2N2EwYmNiNDFkZmExZTYwOWI2 MWIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjBmODMxZmYzZTkwN2IzZjA5MjI3MjJi ZDgwNzNiMmMyNjNjNzdjN2Y1NTJjMGIwYjEyYmU2OGYxOTUyMGIxYWUyYmJmNjJhOWRiYTBmNTgy ZDVmMDE5N2MwZDUzNGY2ZQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGVk ZTQxN2Y0YjQ1ZDU4ZDU0Y2JlNTllN2Q4MGJhYjMxNTBjY2Q5OTU4M2FhODdmN2VjZGU3MzE0NjJk MDc0ZWRmNDk5MDcyNzg4MTkwNDMzNDFkMWZlMjBlMTM2NTYzCi0rQ3RybC50eXBlID0gdHlwZTpD Ci0rT3V0cHV0ID0gYzY5OWUzNDg4ZjgyNWZiMjRjNWUyYWRjNjk5ZWM4M2E1ZDhmY2UzMzlmYTBl OWIwCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMDgwMzE5NTM0YWFiZjExMDBiMWVmM2VjMDg5YmE2ZTViMjU5NDZiZGY2 N2NiYzkyNDkzYzI5ZDBlNjM3NjVlZTM4ZGMyN2UxNTcyMDM5M2Q2YWE1NzQxYjIxMjliMjRlZTZh NzFjMDc5MTkwNTg4MjMyZjRmYWNhZGQwMzRkZDZlNDU2YmY0NWFlZGY3MmEwNTllY2E1OTFjZWIy ZDdjNTBmOGFlOTE4NTI4ODcyZjQwZWFmNjJmYWE1MTFkNmJmYmVkNGI4NjEzMTYzYzQyYjk5ZWIz MGMyMGVjY2UxYzM2YTc4YjkzZmIwMDQ2NDY3YTBiY2I0MWRmYTFlNjA5YjYxYgotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6MGY4MzFmZjNlOTA3YjNmMDkyMjcyMmJkODA3M2IyYzI2M2M3 N2M3ZjU1MmMwYjBiMTJiZTY4ZjE5NTIwYjFhZTJiYmY2MmE5ZGJhMGY1ODJkNWYwMTk3YzBkNTM0 ZjZlCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpkZWRlNDE3ZjRiNDVkNThk NTRjYmU1OWU3ZDgwYmFiMzE1MGNjZDk5NTgzYWE4N2Y3ZWNkZTczMTQ2MmQwNzRlZGY0OTkwNzI3 ODgxOTA0MzM0MWQxZmUyMGUxMzY1NjMKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBh MjUwYjEzZGEwNzE2ZjJkNDQ0MGNjNGNhYzAxYTJkNTkxMDAyZWJmYWFkYTk3NTgKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAwODAzMTk1MzRhYWJmMTEwMGIxZWYzZWMwODliYTZlNWIyNTk0NmJkZjY3Y2JjOTI0OTNjMjlk MGU2Mzc2NWVlMzhkYzI3ZTE1NzIwMzkzZDZhYTU3NDFiMjEyOWIyNGVlNmE3MWMwNzkxOTA1ODgy MzJmNGZhY2FkZDAzNGRkNmU0NTZiZjQ1YWVkZjcyYTA1OWVjYTU5MWNlYjJkN2M1MGY4YWU5MTg1 Mjg4NzJmNDBlYWY2MmZhYTUxMWQ2YmZiZWQ0Yjg2MTMxNjNjNDJiOTllYjMwYzIwZWNjZTFjMzZh NzhiOTNmYjAwNDY0NjdhMGJjYjQxZGZhMWU2MDliNjFiCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDowZjgzMWZmM2U5MDdiM2YwOTIyNzIyYmQ4MDczYjJjMjYzYzc3YzdmNTUyYzBiMGIx MmJlNjhmMTk1MjBiMWFlMmJiZjYyYTlkYmEwZjU4MmQ1ZjAxOTdjMGQ1MzRmNmUKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmRlZGU0MTdmNGI0NWQ1OGQ1NGNiZTU5ZTdkODBi YWIzMTUwY2NkOTk1ODNhYTg3ZjdlY2RlNzMxNDYyZDA3NGVkZjQ5OTA3Mjc4ODE5MDQzMzQxZDFm ZTIwZTEzNjU2MwotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IDc2OTY2YTFiN2Q1ZjI1 MGVlYTM2OTYwNzdhMzczYjk0MjFlODI5NGRkN2NiMGFlZGQxNzJjZjljNjg3OWVmMzRjOWRlYjlj MjA4ZjExYzVkNGI2ZmQ3MTNiNTc2ODk0ZAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDMxOTUzNGFhYmYxMTAwYjFl ZjNlYzA4OWJhNmU1YjI1OTQ2YmRmNjdjYmM5MjQ5M2MyOWQwZTYzNzY1ZWUzOGRjMjdlMTU3MjAz OTNkNmFhNTc0MWIyMTI5YjI0ZWU2YTcxYzA3OTE5MDU4ODIzMmY0ZmFjYWRkMDM0ZGQ2ZTQ1NmJm NDVhZWRmNzJhMDU5ZWNhNTkxY2ViMmQ3YzUwZjhhZTkxODUyODg3MmY0MGVhZjYyZmFhNTExZDZi ZmJlZDRiODYxMzE2M2M0MmI5OWViMzBjMjBlY2NlMWMzNmE3OGI5M2ZiMDA0NjQ2N2EwYmNiNDFk ZmExZTYwOWI2MWIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjBmODMxZmYzZTkwN2Iz ZjA5MjI3MjJiZDgwNzNiMmMyNjNjNzdjN2Y1NTJjMGIwYjEyYmU2OGYxOTUyMGIxYWUyYmJmNjJh OWRiYTBmNTgyZDVmMDE5N2MwZDUzNGY2ZQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6ZGVkZTQxN2Y0YjQ1ZDU4ZDU0Y2JlNTllN2Q4MGJhYjMxNTBjY2Q5OTU4M2FhODdmN2Vj ZGU3MzE0NjJkMDc0ZWRmNDk5MDcyNzg4MTkwNDMzNDFkMWZlMjBlMTM2NTYzCi0rQ3RybC50eXBl ID0gdHlwZTpGCi0rT3V0cHV0ID0gMjhhNjZlMjFmZTdmOGEwNzBmZTQwZWNmNjhhNjRmMmEzNWE0 NmI4NGFjMzg4MTA5MDI2Mzk5MDY2MTEwNTM4MzIxNzlkNWMwN2E4NDIyOTkzNDk2MDU5YWY2N2Y1 ODVmCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMDgwM2I0ZmQwODZkMjVhNGJmMGI1MzQ3YTJlMzIzZDQ1NTI1YjEyYTNk ZjUwOGI5MTI5YWU3ZDUxNjM3YjZmYzc2YWJhNzQzZDdlZTI1NDg4OGVlNmQ0OTMxNGViZDhiODJl MjVkMTg3ZTgwNzcwZmY2MzY1ZmJmZTk2MDI5ZTIzYjkyY2NiYjJiZmI0Y2YyN2UxNzVjZDA5MTU0 YjBlNjhkNzVhODRjNDkwZjkzNmVlMDM2NjE4MGY3ODEwNDlkZGNmZWZjYjRiZjI1NDA5YmE4YThh OWEzMjk2Y2YwNjE5YmM1MTM2M2FiZmQ1OGNlYTNkMDQ4MDY3M2Q4YWM4MzcwYQotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6OGZiZTQ2NDc0YmY2Y2NkYWQwZjcwNjQ5MmM0YjUzNGNmNTY5 OGIzOGFmYzRiMjFhNmFmNGEwMGMzY2NkYTY4OWNmNTM4MmU1ZGUzNGE0OGJkNzk4ZjA4MzU3MGFk NDExCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphMzk3YWE3OGE1OGZjZjYx OWYxZTgzNjgwMThkNmU0MDkzNGQ0YmVmYzk2NjcxYTYzYWVhNDU1OGQ1ZTU0YzlmNDJiZGNhNTBm NjE4ZWM4NGIyZDE5YjUzOWExZjEwZjEKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSBi MGRiMzQ0YjFlMmU5OGQzCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwM2I0ZmQwODZkMjVhNGJmMGI1MzQ3YTJlMzIz ZDQ1NTI1YjEyYTNkZjUwOGI5MTI5YWU3ZDUxNjM3YjZmYzc2YWJhNzQzZDdlZTI1NDg4OGVlNmQ0 OTMxNGViZDhiODJlMjVkMTg3ZTgwNzcwZmY2MzY1ZmJmZTk2MDI5ZTIzYjkyY2NiYjJiZmI0Y2Yy N2UxNzVjZDA5MTU0YjBlNjhkNzVhODRjNDkwZjkzNmVlMDM2NjE4MGY3ODEwNDlkZGNmZWZjYjRi ZjI1NDA5YmE4YThhOWEzMjk2Y2YwNjE5YmM1MTM2M2FiZmQ1OGNlYTNkMDQ4MDY3M2Q4YWM4Mzcw YQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6OGZiZTQ2NDc0YmY2Y2NkYWQwZjcwNjQ5 MmM0YjUzNGNmNTY5OGIzOGFmYzRiMjFhNmFmNGEwMGMzY2NkYTY4OWNmNTM4MmU1ZGUzNGE0OGJk Nzk4ZjA4MzU3MGFkNDExCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphMzk3 YWE3OGE1OGZjZjYxOWYxZTgzNjgwMThkNmU0MDkzNGQ0YmVmYzk2NjcxYTYzYWVhNDU1OGQ1ZTU0 YzlmNDJiZGNhNTBmNjE4ZWM4NGIyZDE5YjUzOWExZjEwZjEKLStDdHJsLnR5cGUgPSB0eXBlOkIK LStPdXRwdXQgPSAyOWZjZDZhN2QzMTdmNTI3Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9 IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwM2I0ZmQwODZkMjVhNGJm MGI1MzQ3YTJlMzIzZDQ1NTI1YjEyYTNkZjUwOGI5MTI5YWU3ZDUxNjM3YjZmYzc2YWJhNzQzZDdl ZTI1NDg4OGVlNmQ0OTMxNGViZDhiODJlMjVkMTg3ZTgwNzcwZmY2MzY1ZmJmZTk2MDI5ZTIzYjky Y2NiYjJiZmI0Y2YyN2UxNzVjZDA5MTU0YjBlNjhkNzVhODRjNDkwZjkzNmVlMDM2NjE4MGY3ODEw NDlkZGNmZWZjYjRiZjI1NDA5YmE4YThhOWEzMjk2Y2YwNjE5YmM1MTM2M2FiZmQ1OGNlYTNkMDQ4 MDY3M2Q4YWM4MzcwYQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6OGZiZTQ2NDc0YmY2 Y2NkYWQwZjcwNjQ5MmM0YjUzNGNmNTY5OGIzOGFmYzRiMjFhNmFmNGEwMGMzY2NkYTY4OWNmNTM4 MmU1ZGUzNGE0OGJkNzk4ZjA4MzU3MGFkNDExCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDphMzk3YWE3OGE1OGZjZjYxOWYxZTgzNjgwMThkNmU0MDkzNGQ0YmVmYzk2NjcxYTYz YWVhNDU1OGQ1ZTU0YzlmNDJiZGNhNTBmNjE4ZWM4NGIyZDE5YjUzOWExZjEwZjEKLStDdHJsLnR5 cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAxNTZmOWQ0YzU4ZDc3ODM5NTllNzg1YWYzZmVmYjEzMzY2 MjAwOWI5Mzg5MWJmZjcKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAzYjRmZDA4NmQyNWE0YmYwYjUzNDdhMmUzMjNk NDU1MjViMTJhM2RmNTA4YjkxMjlhZTdkNTE2MzdiNmZjNzZhYmE3NDNkN2VlMjU0ODg4ZWU2ZDQ5 MzE0ZWJkOGI4MmUyNWQxODdlODA3NzBmZjYzNjVmYmZlOTYwMjllMjNiOTJjY2JiMmJmYjRjZjI3 ZTE3NWNkMDkxNTRiMGU2OGQ3NWE4NGM0OTBmOTM2ZWUwMzY2MTgwZjc4MTA0OWRkY2ZlZmNiNGJm MjU0MDliYThhOGE5YTMyOTZjZjA2MTliYzUxMzYzYWJmZDU4Y2VhM2QwNDgwNjczZDhhYzgzNzBh Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo4ZmJlNDY0NzRiZjZjY2RhZDBmNzA2NDky YzRiNTM0Y2Y1Njk4YjM4YWZjNGIyMWE2YWY0YTAwYzNjY2RhNjg5Y2Y1MzgyZTVkZTM0YTQ4YmQ3 OThmMDgzNTcwYWQ0MTEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmEzOTdh YTc4YTU4ZmNmNjE5ZjFlODM2ODAxOGQ2ZTQwOTM0ZDRiZWZjOTY2NzFhNjNhZWE0NTU4ZDVlNTRj OWY0MmJkY2E1MGY2MThlYzg0YjJkMTliNTM5YTFmMTBmMQotK0N0cmwudHlwZSA9IHR5cGU6RAot K091dHB1dCA9IGM0YmM0NDcxZTJjN2YwNGRiZWY5MTAwOTc3ZTIyMmY0MTU2YTcxMThhMTIyZjZj ZAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9 IGhleGtleTowMDAwMDA4MDNiNGZkMDg2ZDI1YTRiZjBiNTM0N2EyZTMyM2Q0NTUyNWIxMmEzZGY1 MDhiOTEyOWFlN2Q1MTYzN2I2ZmM3NmFiYTc0M2Q3ZWUyNTQ4ODhlZTZkNDkzMTRlYmQ4YjgyZTI1 ZDE4N2U4MDc3MGZmNjM2NWZiZmU5NjAyOWUyM2I5MmNjYmIyYmZiNGNmMjdlMTc1Y2QwOTE1NGIw ZTY4ZDc1YTg0YzQ5MGY5MzZlZTAzNjYxODBmNzgxMDQ5ZGRjZmVmY2I0YmYyNTQwOWJhOGE4YTlh MzI5NmNmMDYxOWJjNTEzNjNhYmZkNThjZWEzZDA0ODA2NzNkOGFjODM3MGEKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjhmYmU0NjQ3NGJmNmNjZGFkMGY3MDY0OTJjNGI1MzRjZjU2OThi MzhhZmM0YjIxYTZhZjRhMDBjM2NjZGE2ODljZjUzODJlNWRlMzRhNDhiZDc5OGYwODM1NzBhZDQx MQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTM5N2FhNzhhNThmY2Y2MTlm MWU4MzY4MDE4ZDZlNDA5MzRkNGJlZmM5NjY3MWE2M2FlYTQ1NThkNWU1NGM5ZjQyYmRjYTUwZjYx OGVjODRiMmQxOWI1MzlhMWYxMGYxCi0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gNTg3 OGZkYmY2OTM2Mzg0MzBlMzFiMjg3YWQ4Y2ZhYjU2MGQ5NTJkN2E4MjgxNjdiZDA0NTRlMGM4YWEx NDI3NGM3YzBjMTkyMWEzMTU3NWY3N2ZkODAxNDRlNmQyOTk5Ci0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwM2I0ZmQw ODZkMjVhNGJmMGI1MzQ3YTJlMzIzZDQ1NTI1YjEyYTNkZjUwOGI5MTI5YWU3ZDUxNjM3YjZmYzc2 YWJhNzQzZDdlZTI1NDg4OGVlNmQ0OTMxNGViZDhiODJlMjVkMTg3ZTgwNzcwZmY2MzY1ZmJmZTk2 MDI5ZTIzYjkyY2NiYjJiZmI0Y2YyN2UxNzVjZDA5MTU0YjBlNjhkNzVhODRjNDkwZjkzNmVlMDM2 NjE4MGY3ODEwNDlkZGNmZWZjYjRiZjI1NDA5YmE4YThhOWEzMjk2Y2YwNjE5YmM1MTM2M2FiZmQ1 OGNlYTNkMDQ4MDY3M2Q4YWM4MzcwYQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6OGZi ZTQ2NDc0YmY2Y2NkYWQwZjcwNjQ5MmM0YjUzNGNmNTY5OGIzOGFmYzRiMjFhNmFmNGEwMGMzY2Nk YTY4OWNmNTM4MmU1ZGUzNGE0OGJkNzk4ZjA4MzU3MGFkNDExCi0rQ3RybC5oZXhzZXNzaW9uX2lk ID0gaGV4c2Vzc2lvbl9pZDphMzk3YWE3OGE1OGZjZjYxOWYxZTgzNjgwMThkNmU0MDkzNGQ0YmVm Yzk2NjcxYTYzYWVhNDU1OGQ1ZTU0YzlmNDJiZGNhNTBmNjE4ZWM4NGIyZDE5YjUzOWExZjEwZjEK LStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQgPSAxZmRiMzRhZTlkMmYxMjM2MzM1MGRkNWFl ZWZlNzI4MDY2NTAwYTA4MzY2OGFjMmQ0OGFmNjcxZDc2NTFhNjdhY2RmOWI3YTA1ODFiOTIyZTY3 Mjc4ZDUzZjBiMmZiMTcKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAxYTNlYWIzZTUxNmY3NzZhYjBhMjgyODYxYTQy ZmVjNTIyMjM4NTlkNWFmMmRhNzc4NzI3YmQwMzYzYmE1OTgzYjVkODgzY2Q3NTEzMmM5NDM1MWE3 YjViMjNmYmExMGFlYzM1YTc4YWIwM2JhMTgzNjgyYjRkM2U3MmM2N2JkMWU2YjgzYWZjNTE3OGM5 NzYyNGY3MTgyNDNkOTM3NzY5NGYwODVlMTVjZWYzMzA0MGZjYTE0NGU4NTZjNzRhYjBlNzBkYmY0 YTc3NjZhYTkxNmU1ZWRmMTg0YWU3ZGJkM2YxOWQyNDkxZTQ1ODI4ZmU1OTY5ZDYxMDc1Njk1ZTM5 Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1ZTliZTkwODljOGI5NTJkOGZmZGIwY2Jk YmU1YmI2YzFmMzM2ZTY2MjAyOTJkYTFhYjVlYjkyZWVmMzc5NjU1NTc5ZTI0Y2Q2MjczYmQ0ZjU1 MmQ0NmRmYTg3ZGY5MTcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmM1NDU0 MmUzMmJhMWFlOGMyNjY3ODFjNmQxNGM4MzU2ZDZmNTQ4Y2ZkYjhhMzAzYzRmMWM5NDczMTg2MTBl ZWQ4YWUzZDZkNDM1MGFiNGRkZGM3ZjkyMDJhNTEwZDMyZQotK0N0cmwudHlwZSA9IHR5cGU6QQot K091dHB1dCA9IGM4MjgxNTAxNDllYjQzM2EKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAxYTNlYWIzZTUxNmY3NzZh YjBhMjgyODYxYTQyZmVjNTIyMjM4NTlkNWFmMmRhNzc4NzI3YmQwMzYzYmE1OTgzYjVkODgzY2Q3 NTEzMmM5NDM1MWE3YjViMjNmYmExMGFlYzM1YTc4YWIwM2JhMTgzNjgyYjRkM2U3MmM2N2JkMWU2 YjgzYWZjNTE3OGM5NzYyNGY3MTgyNDNkOTM3NzY5NGYwODVlMTVjZWYzMzA0MGZjYTE0NGU4NTZj NzRhYjBlNzBkYmY0YTc3NjZhYTkxNmU1ZWRmMTg0YWU3ZGJkM2YxOWQyNDkxZTQ1ODI4ZmU1OTY5 ZDYxMDc1Njk1ZTM5Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1ZTliZTkwODljOGI5 NTJkOGZmZGIwY2JkYmU1YmI2YzFmMzM2ZTY2MjAyOTJkYTFhYjVlYjkyZWVmMzc5NjU1NTc5ZTI0 Y2Q2MjczYmQ0ZjU1MmQ0NmRmYTg3ZGY5MTcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNz aW9uX2lkOmM1NDU0MmUzMmJhMWFlOGMyNjY3ODFjNmQxNGM4MzU2ZDZmNTQ4Y2ZkYjhhMzAzYzRm MWM5NDczMTg2MTBlZWQ4YWUzZDZkNDM1MGFiNGRkZGM3ZjkyMDJhNTEwZDMyZQotK0N0cmwudHlw ZSA9IHR5cGU6QgotK091dHB1dCA9IDQ1NjM2ZTA4ODg3NWRlNTgKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAxYTNl YWIzZTUxNmY3NzZhYjBhMjgyODYxYTQyZmVjNTIyMjM4NTlkNWFmMmRhNzc4NzI3YmQwMzYzYmE1 OTgzYjVkODgzY2Q3NTEzMmM5NDM1MWE3YjViMjNmYmExMGFlYzM1YTc4YWIwM2JhMTgzNjgyYjRk M2U3MmM2N2JkMWU2YjgzYWZjNTE3OGM5NzYyNGY3MTgyNDNkOTM3NzY5NGYwODVlMTVjZWYzMzA0 MGZjYTE0NGU4NTZjNzRhYjBlNzBkYmY0YTc3NjZhYTkxNmU1ZWRmMTg0YWU3ZGJkM2YxOWQyNDkx ZTQ1ODI4ZmU1OTY5ZDYxMDc1Njk1ZTM5Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1 ZTliZTkwODljOGI5NTJkOGZmZGIwY2JkYmU1YmI2YzFmMzM2ZTY2MjAyOTJkYTFhYjVlYjkyZWVm Mzc5NjU1NTc5ZTI0Y2Q2MjczYmQ0ZjU1MmQ0NmRmYTg3ZGY5MTcKLStDdHJsLmhleHNlc3Npb25f aWQgPSBoZXhzZXNzaW9uX2lkOmM1NDU0MmUzMmJhMWFlOGMyNjY3ODFjNmQxNGM4MzU2ZDZmNTQ4 Y2ZkYjhhMzAzYzRmMWM5NDczMTg2MTBlZWQ4YWUzZDZkNDM1MGFiNGRkZGM3ZjkyMDJhNTEwZDMy ZQotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDc1ZGE5NDA4ZTY1ZjYxZGFjOWRhZmE0 OTY2NzUyMTRiMGQ4NGIwZTY2ZmViNjhmZQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDFhM2VhYjNlNTE2Zjc3NmFi MGEyODI4NjFhNDJmZWM1MjIyMzg1OWQ1YWYyZGE3Nzg3MjdiZDAzNjNiYTU5ODNiNWQ4ODNjZDc1 MTMyYzk0MzUxYTdiNWIyM2ZiYTEwYWVjMzVhNzhhYjAzYmExODM2ODJiNGQzZTcyYzY3YmQxZTZi ODNhZmM1MTc4Yzk3NjI0ZjcxODI0M2Q5Mzc3Njk0ZjA4NWUxNWNlZjMzMDQwZmNhMTQ0ZTg1NmM3 NGFiMGU3MGRiZjRhNzc2NmFhOTE2ZTVlZGYxODRhZTdkYmQzZjE5ZDI0OTFlNDU4MjhmZTU5Njlk NjEwNzU2OTVlMzkKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjVlOWJlOTA4OWM4Yjk1 MmQ4ZmZkYjBjYmRiZTViYjZjMWYzMzZlNjYyMDI5MmRhMWFiNWViOTJlZWYzNzk2NTU1NzllMjRj ZDYyNzNiZDRmNTUyZDQ2ZGZhODdkZjkxNwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6YzU0NTQyZTMyYmExYWU4YzI2Njc4MWM2ZDE0YzgzNTZkNmY1NDhjZmRiOGEzMDNjNGYx Yzk0NzMxODYxMGVlZDhhZTNkNmQ0MzUwYWI0ZGRkYzdmOTIwMmE1MTBkMzJlCi0rQ3RybC50eXBl ID0gdHlwZTpECi0rT3V0cHV0ID0gY2I3ODk3ZmRlYjJjMjM1YmU1ODEyZDE5NTljYjU1OTA3ZmYw MmE5Y2Y2Yzc2YzE3Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwMWEzZWFiM2U1MTZmNzc2YWIwYTI4Mjg2MWE0MmZl YzUyMjIzODU5ZDVhZjJkYTc3ODcyN2JkMDM2M2JhNTk4M2I1ZDg4M2NkNzUxMzJjOTQzNTFhN2I1 YjIzZmJhMTBhZWMzNWE3OGFiMDNiYTE4MzY4MmI0ZDNlNzJjNjdiZDFlNmI4M2FmYzUxNzhjOTc2 MjRmNzE4MjQzZDkzNzc2OTRmMDg1ZTE1Y2VmMzMwNDBmY2ExNDRlODU2Yzc0YWIwZTcwZGJmNGE3 NzY2YWE5MTZlNWVkZjE4NGFlN2RiZDNmMTlkMjQ5MWU0NTgyOGZlNTk2OWQ2MTA3NTY5NWUzOQot K0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NWU5YmU5MDg5YzhiOTUyZDhmZmRiMGNiZGJl NWJiNmMxZjMzNmU2NjIwMjkyZGExYWI1ZWI5MmVlZjM3OTY1NTU3OWUyNGNkNjI3M2JkNGY1NTJk NDZkZmE4N2RmOTE3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpjNTQ1NDJl MzJiYTFhZThjMjY2NzgxYzZkMTRjODM1NmQ2ZjU0OGNmZGI4YTMwM2M0ZjFjOTQ3MzE4NjEwZWVk OGFlM2Q2ZDQzNTBhYjRkZGRjN2Y5MjAyYTUxMGQzMmUKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStP dXRwdXQgPSAxM2E4MDYyNTYxYzI4YzFiYzY3OGEwMTliMjJkYTk1YWE0NjJmODJjZmZmNjI2ODg3 NmZmZTJmZGRjODY1MzZmYTRkMTliZGMxNWQ5MGMxY2ZmNGQzN2U2OWYxZmMwMjEKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAwODAxYTNlYWIzZTUxNmY3NzZhYjBhMjgyODYxYTQyZmVjNTIyMjM4NTlkNWFmMmRhNzc4NzI3 YmQwMzYzYmE1OTgzYjVkODgzY2Q3NTEzMmM5NDM1MWE3YjViMjNmYmExMGFlYzM1YTc4YWIwM2Jh MTgzNjgyYjRkM2U3MmM2N2JkMWU2YjgzYWZjNTE3OGM5NzYyNGY3MTgyNDNkOTM3NzY5NGYwODVl MTVjZWYzMzA0MGZjYTE0NGU4NTZjNzRhYjBlNzBkYmY0YTc3NjZhYTkxNmU1ZWRmMTg0YWU3ZGJk M2YxOWQyNDkxZTQ1ODI4ZmU1OTY5ZDYxMDc1Njk1ZTM5Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDo1ZTliZTkwODljOGI5NTJkOGZmZGIwY2JkYmU1YmI2YzFmMzM2ZTY2MjAyOTJkYTFh YjVlYjkyZWVmMzc5NjU1NTc5ZTI0Y2Q2MjczYmQ0ZjU1MmQ0NmRmYTg3ZGY5MTcKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmM1NDU0MmUzMmJhMWFlOGMyNjY3ODFjNmQxNGM4 MzU2ZDZmNTQ4Y2ZkYjhhMzAzYzRmMWM5NDczMTg2MTBlZWQ4YWUzZDZkNDM1MGFiNGRkZGM3Zjky MDJhNTEwZDMyZQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDY5NDM3ZWM0NGQ3NjRj YWViODlmYWViZjdiODU3N2I0MzM2NzdhYmNiMGM1OGYxNjZhNWU1NzI0YTRlYjI5M2QzMzUwMDRk NDEyYzk4M2Q0YzdhY2E0ZGYxYjgzMjhmZAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwOTE0NzNmYjI0YTlmY2Ez ZmQxNjM5YzAyOWMwZTZhZTYzOTBjODNiMzI3ODMzNjAxNzA2ODc3MTU2OWQwOTU3YmY3ZmY4MGE4 ZjE4OGI5MzZmN2UyMzg1MDJlZmM4NmU1MThlYmFmY2M0ZWNkZjFiNDRmMDFiYjA3MGIzY2M4OGMx YjIzOTM3ZGNkMDRjNDU2OTg3YTNiNzVkZjM4NzRjYTU0YTEwZTdmNGEzMTIzYTdmYjQ3MzY1YTc1 NTJjOWUzZjcwNzBlYzE5ZDFlYmI5OTIyZGQxMGFhMDI4MDIyMmRiNzcwYTcxY2U5NTQxYjYwYjUz ZDllNzc4MzM1MDEwMAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZDBiYmIxYTgxZWRj YTZhZTdhYzVjOWU2MGJmNDQ3ZDE5OGJmODc1Yjk0NWZjYmEwNmIwMDc0ZTY0MDMzMWIyMjA1YzJj MDU1ODY0YzAxMTkxM2Y2ZGFkM2UzNGVkNDRiCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDo1OGQ3Yjc3ZjBjYzU0ODAyNTRjNjhlNGU5Y2IwNmExZWE1Mzg5YjM5YTNmOWNiYTVj OWNhMDNhMDkxZmIxMjNhZWI1OTM0YzUxOWI2MDE4MWQwOTdiOGNjOTQ1NWI5NmEKLStDdHJsLnR5 cGUgPSB0eXBlOkEKLStPdXRwdXQgPSBiNjY5ZTA1YWE5NzA2NDY4Ci0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA5 MTQ3M2ZiMjRhOWZjYTNmZDE2MzljMDI5YzBlNmFlNjM5MGM4M2IzMjc4MzM2MDE3MDY4NzcxNTY5 ZDA5NTdiZjdmZjgwYThmMTg4YjkzNmY3ZTIzODUwMmVmYzg2ZTUxOGViYWZjYzRlY2RmMWI0NGYw MWJiMDcwYjNjYzg4YzFiMjM5MzdkY2QwNGM0NTY5ODdhM2I3NWRmMzg3NGNhNTRhMTBlN2Y0YTMx MjNhN2ZiNDczNjVhNzU1MmM5ZTNmNzA3MGVjMTlkMWViYjk5MjJkZDEwYWEwMjgwMjIyZGI3NzBh NzFjZTk1NDFiNjBiNTNkOWU3NzgzMzUwMTAwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDpkMGJiYjFhODFlZGNhNmFlN2FjNWM5ZTYwYmY0NDdkMTk4YmY4NzViOTQ1ZmNiYTA2YjAwNzRl NjQwMzMxYjIyMDVjMmMwNTU4NjRjMDExOTEzZjZkYWQzZTM0ZWQ0NGIKLStDdHJsLmhleHNlc3Np b25faWQgPSBoZXhzZXNzaW9uX2lkOjU4ZDdiNzdmMGNjNTQ4MDI1NGM2OGU0ZTljYjA2YTFlYTUz ODliMzlhM2Y5Y2JhNWM5Y2EwM2EwOTFmYjEyM2FlYjU5MzRjNTE5YjYwMTgxZDA5N2I4Y2M5NDU1 Yjk2YQotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDU3Zjk0MzExMWNhMDFiMTUKLSsK LStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhr ZXk6MDAwMDAwODEwMDkxNDczZmIyNGE5ZmNhM2ZkMTYzOWMwMjljMGU2YWU2MzkwYzgzYjMyNzgz MzYwMTcwNjg3NzE1NjlkMDk1N2JmN2ZmODBhOGYxODhiOTM2ZjdlMjM4NTAyZWZjODZlNTE4ZWJh ZmNjNGVjZGYxYjQ0ZjAxYmIwNzBiM2NjODhjMWIyMzkzN2RjZDA0YzQ1Njk4N2EzYjc1ZGYzODc0 Y2E1NGExMGU3ZjRhMzEyM2E3ZmI0NzM2NWE3NTUyYzllM2Y3MDcwZWMxOWQxZWJiOTkyMmRkMTBh YTAyODAyMjJkYjc3MGE3MWNlOTU0MWI2MGI1M2Q5ZTc3ODMzNTAxMDAKLStDdHJsLmhleHhjZ2hh c2ggPSBoZXh4Y2doYXNoOmQwYmJiMWE4MWVkY2E2YWU3YWM1YzllNjBiZjQ0N2QxOThiZjg3NWI5 NDVmY2JhMDZiMDA3NGU2NDAzMzFiMjIwNWMyYzA1NTg2NGMwMTE5MTNmNmRhZDNlMzRlZDQ0Ygot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NThkN2I3N2YwY2M1NDgwMjU0YzY4 ZTRlOWNiMDZhMWVhNTM4OWIzOWEzZjljYmE1YzljYTAzYTA5MWZiMTIzYWViNTkzNGM1MTliNjAx ODFkMDk3YjhjYzk0NTViOTZhCi0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0ID0gZTlhYTM1 NGI2Yjg1ZjM1N2Q2Zjk4MmZjYzE4YTZjYTc5N2JkN2ExMjVlNzg2ZjhhCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgx MDA5MTQ3M2ZiMjRhOWZjYTNmZDE2MzljMDI5YzBlNmFlNjM5MGM4M2IzMjc4MzM2MDE3MDY4Nzcx NTY5ZDA5NTdiZjdmZjgwYThmMTg4YjkzNmY3ZTIzODUwMmVmYzg2ZTUxOGViYWZjYzRlY2RmMWI0 NGYwMWJiMDcwYjNjYzg4YzFiMjM5MzdkY2QwNGM0NTY5ODdhM2I3NWRmMzg3NGNhNTRhMTBlN2Y0 YTMxMjNhN2ZiNDczNjVhNzU1MmM5ZTNmNzA3MGVjMTlkMWViYjk5MjJkZDEwYWEwMjgwMjIyZGI3 NzBhNzFjZTk1NDFiNjBiNTNkOWU3NzgzMzUwMTAwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNn aGFzaDpkMGJiYjFhODFlZGNhNmFlN2FjNWM5ZTYwYmY0NDdkMTk4YmY4NzViOTQ1ZmNiYTA2YjAw NzRlNjQwMzMxYjIyMDVjMmMwNTU4NjRjMDExOTEzZjZkYWQzZTM0ZWQ0NGIKLStDdHJsLmhleHNl c3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjU4ZDdiNzdmMGNjNTQ4MDI1NGM2OGU0ZTljYjA2YTFl YTUzODliMzlhM2Y5Y2JhNWM5Y2EwM2EwOTFmYjEyM2FlYjU5MzRjNTE5YjYwMTgxZDA5N2I4Y2M5 NDU1Yjk2YQotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDE5OWQyYjI0NDY4OWJmYzRm ODA3ZjIyNWE3MTMwYTA2OWM4YTE4MWY1YjIwZDMyYQotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwOTE0NzNmYjI0 YTlmY2EzZmQxNjM5YzAyOWMwZTZhZTYzOTBjODNiMzI3ODMzNjAxNzA2ODc3MTU2OWQwOTU3YmY3 ZmY4MGE4ZjE4OGI5MzZmN2UyMzg1MDJlZmM4NmU1MThlYmFmY2M0ZWNkZjFiNDRmMDFiYjA3MGIz Y2M4OGMxYjIzOTM3ZGNkMDRjNDU2OTg3YTNiNzVkZjM4NzRjYTU0YTEwZTdmNGEzMTIzYTdmYjQ3 MzY1YTc1NTJjOWUzZjcwNzBlYzE5ZDFlYmI5OTIyZGQxMGFhMDI4MDIyMmRiNzcwYTcxY2U5NTQx YjYwYjUzZDllNzc4MzM1MDEwMAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZDBiYmIx YTgxZWRjYTZhZTdhYzVjOWU2MGJmNDQ3ZDE5OGJmODc1Yjk0NWZjYmEwNmIwMDc0ZTY0MDMzMWIy MjA1YzJjMDU1ODY0YzAxMTkxM2Y2ZGFkM2UzNGVkNDRiCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDo1OGQ3Yjc3ZjBjYzU0ODAyNTRjNjhlNGU5Y2IwNmExZWE1Mzg5YjM5YTNm OWNiYTVjOWNhMDNhMDkxZmIxMjNhZWI1OTM0YzUxOWI2MDE4MWQwOTdiOGNjOTQ1NWI5NmEKLStD dHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA2OWI1NWNjODJkMDQyOTk3OWEzODMyYTNiZTM1 NDgzNTk2ZmYxZDI2YTBjMWE2Mjk0NDY5NTc2NGYwZWI4NWMzNDY3NTI4YmUyMjVkYjJmNTE2ZTc5 ZjIzYzBjN2MyM2MKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDkxNDczZmIyNGE5ZmNhM2ZkMTYzOWMwMjljMGU2 YWU2MzkwYzgzYjMyNzgzMzYwMTcwNjg3NzE1NjlkMDk1N2JmN2ZmODBhOGYxODhiOTM2ZjdlMjM4 NTAyZWZjODZlNTE4ZWJhZmNjNGVjZGYxYjQ0ZjAxYmIwNzBiM2NjODhjMWIyMzkzN2RjZDA0YzQ1 Njk4N2EzYjc1ZGYzODc0Y2E1NGExMGU3ZjRhMzEyM2E3ZmI0NzM2NWE3NTUyYzllM2Y3MDcwZWMx OWQxZWJiOTkyMmRkMTBhYTAyODAyMjJkYjc3MGE3MWNlOTU0MWI2MGI1M2Q5ZTc3ODMzNTAxMDAK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmQwYmJiMWE4MWVkY2E2YWU3YWM1YzllNjBi ZjQ0N2QxOThiZjg3NWI5NDVmY2JhMDZiMDA3NGU2NDAzMzFiMjIwNWMyYzA1NTg2NGMwMTE5MTNm NmRhZDNlMzRlZDQ0YgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NThkN2I3 N2YwY2M1NDgwMjU0YzY4ZTRlOWNiMDZhMWVhNTM4OWIzOWEzZjljYmE1YzljYTAzYTA5MWZiMTIz YWViNTkzNGM1MTliNjAxODFkMDk3YjhjYzk0NTViOTZhCi0rQ3RybC50eXBlID0gdHlwZTpGCi0r T3V0cHV0ID0gNmUwNmRmNjQzMjY5NzUxZGZjOWM4ZGVjZWZlNDY2ZTFhYjJhYjk5NDY2NjYxYWE2 ZjBkZmFiMjIzYzNiOWJlYmNhZWQ0YzE5Y2JjNDEwOWRmYWNkYTgxY2M4ZjkwMmViCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMDgwMWI4ZTdkMjI5MmY5NWQ5N2M5OWU5YzkzZmNjNjgxZjJhNDQ2NDM3ZDc1OTUxMzdmNzYx ZWI5MzUxZjUwY2ZiNzE5ODhhYWQyZDk2MTFhNWUzZDMyYzU4YjFlZmVmNTk2YjJiNDk1YzEyMzU1 YjZjYWE1YzY0NzIzNzY3MGM3Y2JlYjdiN2VmNWQzOWI2MDBiNDRhYjFjZWNjN2ZmNDU0OTgxZjcw MzY2ZjVkYzk1Zjc5MGM5NzQ0ZTU1YjBiNWNlZTc3MGRmMTBkYzNmMDgxYjg3NzRiNDczNWM4Njkx NzM4NGVkN2RhMGI1OTdiZDkzMmU2NzZiN2VmNmZlMmNkMwotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6ZDFlY2YyMDFlMjEzYjY1NmU3ZTAwMmQyNmIyNjNlYWQ1ZWY2ZjI2NWEyY2ZkMDVl YjgzOTg1ZGJjMWRkMDYyMGY3Mjk4MDBhOTJmNjc2ZTZjODIxOWFhZGJlYTBhMDM3Ci0rQ3RybC5o ZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpmYzZiYjgwZjkxMTZjNjc0NjYwMzMyN2Q1MzM4 ZTg1M2YzN2IwNjU5MzQwMmUzMWJmNWE0M2FiZDVlNmRlOGYyNjE2NmJiNTcyY2UwYzg4MzYwYTdi YmJlODNkMDM3N2IKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSBiMmFkYTUzNDg0OTA3 ZGI1Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMDgwMWI4ZTdkMjI5MmY5NWQ5N2M5OWU5YzkzZmNjNjgxZjJhNDQ2NDM3 ZDc1OTUxMzdmNzYxZWI5MzUxZjUwY2ZiNzE5ODhhYWQyZDk2MTFhNWUzZDMyYzU4YjFlZmVmNTk2 YjJiNDk1YzEyMzU1YjZjYWE1YzY0NzIzNzY3MGM3Y2JlYjdiN2VmNWQzOWI2MDBiNDRhYjFjZWNj N2ZmNDU0OTgxZjcwMzY2ZjVkYzk1Zjc5MGM5NzQ0ZTU1YjBiNWNlZTc3MGRmMTBkYzNmMDgxYjg3 NzRiNDczNWM4NjkxNzM4NGVkN2RhMGI1OTdiZDkzMmU2NzZiN2VmNmZlMmNkMwotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZDFlY2YyMDFlMjEzYjY1NmU3ZTAwMmQyNmIyNjNlYWQ1ZWY2 ZjI2NWEyY2ZkMDVlYjgzOTg1ZGJjMWRkMDYyMGY3Mjk4MDBhOTJmNjc2ZTZjODIxOWFhZGJlYTBh MDM3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpmYzZiYjgwZjkxMTZjNjc0 NjYwMzMyN2Q1MzM4ZTg1M2YzN2IwNjU5MzQwMmUzMWJmNWE0M2FiZDVlNmRlOGYyNjE2NmJiNTcy Y2UwYzg4MzYwYTdiYmJlODNkMDM3N2IKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA4 OTIyNDQ4NmZjYjMzMDMwCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwMWI4ZTdkMjI5MmY5NWQ5N2M5OWU5YzkzZmNj NjgxZjJhNDQ2NDM3ZDc1OTUxMzdmNzYxZWI5MzUxZjUwY2ZiNzE5ODhhYWQyZDk2MTFhNWUzZDMy YzU4YjFlZmVmNTk2YjJiNDk1YzEyMzU1YjZjYWE1YzY0NzIzNzY3MGM3Y2JlYjdiN2VmNWQzOWI2 MDBiNDRhYjFjZWNjN2ZmNDU0OTgxZjcwMzY2ZjVkYzk1Zjc5MGM5NzQ0ZTU1YjBiNWNlZTc3MGRm MTBkYzNmMDgxYjg3NzRiNDczNWM4NjkxNzM4NGVkN2RhMGI1OTdiZDkzMmU2NzZiN2VmNmZlMmNk MwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZDFlY2YyMDFlMjEzYjY1NmU3ZTAwMmQy NmIyNjNlYWQ1ZWY2ZjI2NWEyY2ZkMDVlYjgzOTg1ZGJjMWRkMDYyMGY3Mjk4MDBhOTJmNjc2ZTZj ODIxOWFhZGJlYTBhMDM3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpmYzZi YjgwZjkxMTZjNjc0NjYwMzMyN2Q1MzM4ZTg1M2YzN2IwNjU5MzQwMmUzMWJmNWE0M2FiZDVlNmRl OGYyNjE2NmJiNTcyY2UwYzg4MzYwYTdiYmJlODNkMDM3N2IKLStDdHJsLnR5cGUgPSB0eXBlOkMK LStPdXRwdXQgPSAzOGNjYzAwMzAzZDVhYWY3NDhmM2MxMWQ5ODZiOTlmOWJmMzYwNDlhNmY3ZWE5 MmYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODAxYjhlN2QyMjkyZjk1ZDk3Yzk5ZTljOTNmY2M2ODFmMmE0NDY0Mzdk NzU5NTEzN2Y3NjFlYjkzNTFmNTBjZmI3MTk4OGFhZDJkOTYxMWE1ZTNkMzJjNThiMWVmZWY1OTZi MmI0OTVjMTIzNTViNmNhYTVjNjQ3MjM3NjcwYzdjYmViN2I3ZWY1ZDM5YjYwMGI0NGFiMWNlY2M3 ZmY0NTQ5ODFmNzAzNjZmNWRjOTVmNzkwYzk3NDRlNTViMGI1Y2VlNzcwZGYxMGRjM2YwODFiODc3 NGI0NzM1Yzg2OTE3Mzg0ZWQ3ZGEwYjU5N2JkOTMyZTY3NmI3ZWY2ZmUyY2QzCi0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDpkMWVjZjIwMWUyMTNiNjU2ZTdlMDAyZDI2YjI2M2VhZDVlZjZm MjY1YTJjZmQwNWViODM5ODVkYmMxZGQwNjIwZjcyOTgwMGE5MmY2NzZlNmM4MjE5YWFkYmVhMGEw MzcKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmZjNmJiODBmOTExNmM2NzQ2 NjAzMzI3ZDUzMzhlODUzZjM3YjA2NTkzNDAyZTMxYmY1YTQzYWJkNWU2ZGU4ZjI2MTY2YmI1NzJj ZTBjODgzNjBhN2JiYmU4M2QwMzc3YgotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGY4 YTdhNGIyZTFkMjhjNmEzOGUxMjBhMmNiODc2ZWQ0OWY0NTRlYTJhYWJjM2E5OQotKwotK0tERiA9 IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDA4MDFiOGU3ZDIyOTJmOTVkOTdjOTllOWM5M2ZjYzY4MWYyYTQ0NjQzN2Q3NTk1MTM3Zjc2MWVi OTM1MWY1MGNmYjcxOTg4YWFkMmQ5NjExYTVlM2QzMmM1OGIxZWZlZjU5NmIyYjQ5NWMxMjM1NWI2 Y2FhNWM2NDcyMzc2NzBjN2NiZWI3YjdlZjVkMzliNjAwYjQ0YWIxY2VjYzdmZjQ1NDk4MWY3MDM2 NmY1ZGM5NWY3OTBjOTc0NGU1NWIwYjVjZWU3NzBkZjEwZGMzZjA4MWI4Nzc0YjQ3MzVjODY5MTcz ODRlZDdkYTBiNTk3YmQ5MzJlNjc2YjdlZjZmZTJjZDMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOmQxZWNmMjAxZTIxM2I2NTZlN2UwMDJkMjZiMjYzZWFkNWVmNmYyNjVhMmNmZDA1ZWI4 Mzk4NWRiYzFkZDA2MjBmNzI5ODAwYTkyZjY3NmU2YzgyMTlhYWRiZWEwYTAzNwotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZmM2YmI4MGY5MTE2YzY3NDY2MDMzMjdkNTMzOGU4 NTNmMzdiMDY1OTM0MDJlMzFiZjVhNDNhYmQ1ZTZkZThmMjYxNjZiYjU3MmNlMGM4ODM2MGE3YmJi ZTgzZDAzNzdiCi0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gOWY0MmFiMTVkMGIwNDEw MTk5NjBmZjZhNWExMmUyMDljNDI3ZGMzMzQ0MzQxMjYzOTlmYjg4NTBlYzhmZWRhOTU3Yjc0ZjE5 NzZiNGM4YTk3OTA2ZDdkNjRjNWMyYTgzCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwMWI4ZTdkMjI5MmY5NWQ5N2M5 OWU5YzkzZmNjNjgxZjJhNDQ2NDM3ZDc1OTUxMzdmNzYxZWI5MzUxZjUwY2ZiNzE5ODhhYWQyZDk2 MTFhNWUzZDMyYzU4YjFlZmVmNTk2YjJiNDk1YzEyMzU1YjZjYWE1YzY0NzIzNzY3MGM3Y2JlYjdi N2VmNWQzOWI2MDBiNDRhYjFjZWNjN2ZmNDU0OTgxZjcwMzY2ZjVkYzk1Zjc5MGM5NzQ0ZTU1YjBi NWNlZTc3MGRmMTBkYzNmMDgxYjg3NzRiNDczNWM4NjkxNzM4NGVkN2RhMGI1OTdiZDkzMmU2NzZi N2VmNmZlMmNkMwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZDFlY2YyMDFlMjEzYjY1 NmU3ZTAwMmQyNmIyNjNlYWQ1ZWY2ZjI2NWEyY2ZkMDVlYjgzOTg1ZGJjMWRkMDYyMGY3Mjk4MDBh OTJmNjc2ZTZjODIxOWFhZGJlYTBhMDM3Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDpmYzZiYjgwZjkxMTZjNjc0NjYwMzMyN2Q1MzM4ZTg1M2YzN2IwNjU5MzQwMmUzMWJmNWE0 M2FiZDVlNmRlOGYyNjE2NmJiNTcyY2UwYzg4MzYwYTdiYmJlODNkMDM3N2IKLStDdHJsLnR5cGUg PSB0eXBlOkYKLStPdXRwdXQgPSBkMzgzYmVkZDNiODBkZGM0NzBkYjliODE5ODkzZTg1ZGZhYjll MzU5ZTQwYmM3NzU3NmUyM2VkOGM1ZTczYmVlY2VmYjUxMWNjZGYxZWI2NjQxNmMyNzFiZTVmOTAx OTkKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODEwMDhlZmUzMjc5ZThmYzUxYWNjZWVhMGFkNTk1ODM2NGMyYTM2MzE1 ZDkyY2U0ZDY4ZjZmODQ4NmIzMTYwMjkzZTRlZmY3OTk5ODQ3NGI5NTQ0MzFhNjk4MTg2NGEzNDQ0 NWI0YmQ2OGU1YjU5OGRiYWJhNGRlNTY2MWVmMGIwOWQ1ZGFlOWIxNjMzZGE4ODZmMTU0MGQxZGY2 MDFjMWFjYWExMzlkZTU0MGQzZDhkMGIwMTYwMjU1OWE4MzNhYWI4NzczMGRlNWM2ODc1Yjc4ZjVl YzZkMTkxNDVkYjQ2ZTJhNzdjYmI5ZWMzOWIxYmRiZDVjYTNiZTE5M2RjZmQ2MjIKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjVmNmY4YmQ4ZDY2NGIxZjMxYzYxNWNmNDU3YTVjN2VhYTg3 MzNiYmE2NTU3ZjE1ZjMwMGNmYjM2NGIwZWE5MjdiY2ZlNDA2ZWE1ZmI3ZTAzYWM2NDhmZDE4Y2Q5 MzM3MgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTg5ZWNmZDY2MzY0MjNl OGQ1YmE4ZGEzYWE4MzY3MDkyYjFhNjYyZGY1NjkzYzU1Y2JjNWJmYWJiOTczMjBkOTA2OTJlNmM5 MzA1YWY0N2MyNWU2NjE3MjAwNjQ4NzUyCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0g YmFjOWU2Yzk1NTNiYmE5NQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQK LStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwOGVmZTMyNzllOGZjNTFhY2NlZWEwYWQ1 OTU4MzY0YzJhMzYzMTVkOTJjZTRkNjhmNmY4NDg2YjMxNjAyOTNlNGVmZjc5OTk4NDc0Yjk1NDQz MWE2OTgxODY0YTM0NDQ1YjRiZDY4ZTViNTk4ZGJhYmE0ZGU1NjYxZWYwYjA5ZDVkYWU5YjE2MzNk YTg4NmYxNTQwZDFkZjYwMWMxYWNhYTEzOWRlNTQwZDNkOGQwYjAxNjAyNTU5YTgzM2FhYjg3NzMw ZGU1YzY4NzViNzhmNWVjNmQxOTE0NWRiNDZlMmE3N2NiYjllYzM5YjFiZGJkNWNhM2JlMTkzZGNm ZDYyMgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NWY2ZjhiZDhkNjY0YjFmMzFjNjE1 Y2Y0NTdhNWM3ZWFhODczM2JiYTY1NTdmMTVmMzAwY2ZiMzY0YjBlYTkyN2JjZmU0MDZlYTVmYjdl MDNhYzY0OGZkMThjZDkzMzcyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDph ODllY2ZkNjYzNjQyM2U4ZDViYThkYTNhYTgzNjcwOTJiMWE2NjJkZjU2OTNjNTVjYmM1YmZhYmI5 NzMyMGQ5MDY5MmU2YzkzMDVhZjQ3YzI1ZTY2MTcyMDA2NDg3NTIKLStDdHJsLnR5cGUgPSB0eXBl OkIKLStPdXRwdXQgPSBmMjliZGMwMTcwMjhhOWNhCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4ZWZlMzI3OWU4 ZmM1MWFjY2VlYTBhZDU5NTgzNjRjMmEzNjMxNWQ5MmNlNGQ2OGY2Zjg0ODZiMzE2MDI5M2U0ZWZm Nzk5OTg0NzRiOTU0NDMxYTY5ODE4NjRhMzQ0NDViNGJkNjhlNWI1OThkYmFiYTRkZTU2NjFlZjBi MDlkNWRhZTliMTYzM2RhODg2ZjE1NDBkMWRmNjAxYzFhY2FhMTM5ZGU1NDBkM2Q4ZDBiMDE2MDI1 NTlhODMzYWFiODc3MzBkZTVjNjg3NWI3OGY1ZWM2ZDE5MTQ1ZGI0NmUyYTc3Y2JiOWVjMzliMWJk YmQ1Y2EzYmUxOTNkY2ZkNjIyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1ZjZmOGJk OGQ2NjRiMWYzMWM2MTVjZjQ1N2E1YzdlYWE4NzMzYmJhNjU1N2YxNWYzMDBjZmIzNjRiMGVhOTI3 YmNmZTQwNmVhNWZiN2UwM2FjNjQ4ZmQxOGNkOTMzNzIKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOmE4OWVjZmQ2NjM2NDIzZThkNWJhOGRhM2FhODM2NzA5MmIxYTY2MmRmNTY5 M2M1NWNiYzViZmFiYjk3MzIwZDkwNjkyZTZjOTMwNWFmNDdjMjVlNjYxNzIwMDY0ODc1MgotK0N0 cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDg0MGY3ZTk2NmQ2MzNmNTdiZjZjZmIzZTZhYTZi YjE0MzViYmVhNTgyMmM5ZGIwYwotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEz ODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwOGVmZTMyNzllOGZjNTFhY2NlZWEw YWQ1OTU4MzY0YzJhMzYzMTVkOTJjZTRkNjhmNmY4NDg2YjMxNjAyOTNlNGVmZjc5OTk4NDc0Yjk1 NDQzMWE2OTgxODY0YTM0NDQ1YjRiZDY4ZTViNTk4ZGJhYmE0ZGU1NjYxZWYwYjA5ZDVkYWU5YjE2 MzNkYTg4NmYxNTQwZDFkZjYwMWMxYWNhYTEzOWRlNTQwZDNkOGQwYjAxNjAyNTU5YTgzM2FhYjg3 NzMwZGU1YzY4NzViNzhmNWVjNmQxOTE0NWRiNDZlMmE3N2NiYjllYzM5YjFiZGJkNWNhM2JlMTkz ZGNmZDYyMgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NWY2ZjhiZDhkNjY0YjFmMzFj NjE1Y2Y0NTdhNWM3ZWFhODczM2JiYTY1NTdmMTVmMzAwY2ZiMzY0YjBlYTkyN2JjZmU0MDZlYTVm YjdlMDNhYzY0OGZkMThjZDkzMzcyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDphODllY2ZkNjYzNjQyM2U4ZDViYThkYTNhYTgzNjcwOTJiMWE2NjJkZjU2OTNjNTVjYmM1YmZh YmI5NzMyMGQ5MDY5MmU2YzkzMDVhZjQ3YzI1ZTY2MTcyMDA2NDg3NTIKLStDdHJsLnR5cGUgPSB0 eXBlOkQKLStPdXRwdXQgPSBmNzhiNDg1ZTQ5YmY3MjU4NGU0NWRlNzhmYmQ3NTM5MmUzZTBiMWNl MmE1N2U3YTMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDhlZmUzMjc5ZThmYzUxYWNjZWVhMGFkNTk1ODM2NGMy YTM2MzE1ZDkyY2U0ZDY4ZjZmODQ4NmIzMTYwMjkzZTRlZmY3OTk5ODQ3NGI5NTQ0MzFhNjk4MTg2 NGEzNDQ0NWI0YmQ2OGU1YjU5OGRiYWJhNGRlNTY2MWVmMGIwOWQ1ZGFlOWIxNjMzZGE4ODZmMTU0 MGQxZGY2MDFjMWFjYWExMzlkZTU0MGQzZDhkMGIwMTYwMjU1OWE4MzNhYWI4NzczMGRlNWM2ODc1 Yjc4ZjVlYzZkMTkxNDVkYjQ2ZTJhNzdjYmI5ZWMzOWIxYmRiZDVjYTNiZTE5M2RjZmQ2MjIKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjVmNmY4YmQ4ZDY2NGIxZjMxYzYxNWNmNDU3YTVj N2VhYTg3MzNiYmE2NTU3ZjE1ZjMwMGNmYjM2NGIwZWE5MjdiY2ZlNDA2ZWE1ZmI3ZTAzYWM2NDhm ZDE4Y2Q5MzM3MgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTg5ZWNmZDY2 MzY0MjNlOGQ1YmE4ZGEzYWE4MzY3MDkyYjFhNjYyZGY1NjkzYzU1Y2JjNWJmYWJiOTczMjBkOTA2 OTJlNmM5MzA1YWY0N2MyNWU2NjE3MjAwNjQ4NzUyCi0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0 cHV0ID0gOWRjYWRmZjUxMzY2N2FlZTVlMmZkYTg2YzRhMTk4ZGI0MjUyYTkzMTE2MzVkMzY1OWRi OTU3NTcwZTQ0OGYzNjg5NDQ0ZGQzZTEwZDYwOTdhMDdkYmE5MjNkYjM0OWJhCi0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MDgxMDA4ZWZlMzI3OWU4ZmM1MWFjY2VlYTBhZDU5NTgzNjRjMmEzNjMxNWQ5MmNlNGQ2OGY2Zjg0 ODZiMzE2MDI5M2U0ZWZmNzk5OTg0NzRiOTU0NDMxYTY5ODE4NjRhMzQ0NDViNGJkNjhlNWI1OThk YmFiYTRkZTU2NjFlZjBiMDlkNWRhZTliMTYzM2RhODg2ZjE1NDBkMWRmNjAxYzFhY2FhMTM5ZGU1 NDBkM2Q4ZDBiMDE2MDI1NTlhODMzYWFiODc3MzBkZTVjNjg3NWI3OGY1ZWM2ZDE5MTQ1ZGI0NmUy YTc3Y2JiOWVjMzliMWJkYmQ1Y2EzYmUxOTNkY2ZkNjIyCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDo1ZjZmOGJkOGQ2NjRiMWYzMWM2MTVjZjQ1N2E1YzdlYWE4NzMzYmJhNjU1N2YxNWYz MDBjZmIzNjRiMGVhOTI3YmNmZTQwNmVhNWZiN2UwM2FjNjQ4ZmQxOGNkOTMzNzIKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmE4OWVjZmQ2NjM2NDIzZThkNWJhOGRhM2FhODM2 NzA5MmIxYTY2MmRmNTY5M2M1NWNiYzViZmFiYjk3MzIwZDkwNjkyZTZjOTMwNWFmNDdjMjVlNjYx NzIwMDY0ODc1MgotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDVlNzkxNWVhOTBhMGQ4 MWUzYzJhZGEwMGM4NTg5MGI2ZGVmYmI2NGY0NWFjNGYwZTc1YjIyY2Y2MTg3OTc4ZTYzMGYzNTYy MDdjOTczNjI4NjIzODlhMWVmOTlmYjUxYQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwYTg5YjNmOTYyOGE0Zjk4 NDMzNjM3N2VkYzM3ZDNiZWQ0YWE3NDhmYTBiMGE2YmM4MGMzNjZlOGZmZGYwY2NiYmUwNzIyOWM1 ZjAyMzk0YjIzMDc1OWQ1MjU1ZTNhN2Q3ZjYzYTIzOTVlMmYwN2UyZDMxYmY4ODVhYmFlYTE1MGUx Zjk3ODA4ZjI2ZjhmZThjNTExM2MxMmU0ZDEzNzg0NDE2MGE0MzNmODQ1MWZhYWY0MzJiZDdjMDQ2 OWRiZTcxMzMwNGM4YmVkMjljMDNjYjc2MjljZGZmZWJjMjUzZDBhMDEzNjIwNTJmNTU1NzZmZGFm ODk3MDJmYTMzY2VkZAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ODQ2N2QwMzM1ZTZl MjU0ZWIwMjI1M2Y5N2NkMTRjMDIyMWYxYjIxNDMxYTRmZmUxYzIwNjc1MDM5ZDBhYzI2ZmE3MGEw YzRiYWQ2Mzk4MzRkODhkMDFmNmMxZWE4NzhlCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDo5YTEwMGE1YjBhZDgxZjFjNjAzZTA1YzVkMjQ0MTVmMmFhNzAzMWMwZDkyZjE2ZGUx NWNhYjM1MGJiMWEyY2YzNjM5YzY5MDZmNGUyMjBlMDU3ZGViOTY2ODEzYmJiMzUKLStDdHJsLnR5 cGUgPSB0eXBlOkEKLStPdXRwdXQgPSAxMTgxMTQyN2VhYTkyZDYxCi0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBh ODliM2Y5NjI4YTRmOTg0MzM2Mzc3ZWRjMzdkM2JlZDRhYTc0OGZhMGIwYTZiYzgwYzM2NmU4ZmZk ZjBjY2JiZTA3MjI5YzVmMDIzOTRiMjMwNzU5ZDUyNTVlM2E3ZDdmNjNhMjM5NWUyZjA3ZTJkMzFi Zjg4NWFiYWVhMTUwZTFmOTc4MDhmMjZmOGZlOGM1MTEzYzEyZTRkMTM3ODQ0MTYwYTQzM2Y4NDUx ZmFhZjQzMmJkN2MwNDY5ZGJlNzEzMzA0YzhiZWQyOWMwM2NiNzYyOWNkZmZlYmMyNTNkMGEwMTM2 MjA1MmY1NTU3NmZkYWY4OTcwMmZhMzNjZWRkCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDo4NDY3ZDAzMzVlNmUyNTRlYjAyMjUzZjk3Y2QxNGMwMjIxZjFiMjE0MzFhNGZmZTFjMjA2NzUw MzlkMGFjMjZmYTcwYTBjNGJhZDYzOTgzNGQ4OGQwMWY2YzFlYTg3OGUKLStDdHJsLmhleHNlc3Np b25faWQgPSBoZXhzZXNzaW9uX2lkOjlhMTAwYTViMGFkODFmMWM2MDNlMDVjNWQyNDQxNWYyYWE3 MDMxYzBkOTJmMTZkZTE1Y2FiMzUwYmIxYTJjZjM2MzljNjkwNmY0ZTIyMGUwNTdkZWI5NjY4MTNi YmIzNQotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IGMxM2YyMmUwYmQ2NmE1NTEKLSsK LStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhr ZXk6MDAwMDAwODEwMGE4OWIzZjk2MjhhNGY5ODQzMzYzNzdlZGMzN2QzYmVkNGFhNzQ4ZmEwYjBh NmJjODBjMzY2ZThmZmRmMGNjYmJlMDcyMjljNWYwMjM5NGIyMzA3NTlkNTI1NWUzYTdkN2Y2M2Ey Mzk1ZTJmMDdlMmQzMWJmODg1YWJhZWExNTBlMWY5NzgwOGYyNmY4ZmU4YzUxMTNjMTJlNGQxMzc4 NDQxNjBhNDMzZjg0NTFmYWFmNDMyYmQ3YzA0NjlkYmU3MTMzMDRjOGJlZDI5YzAzY2I3NjI5Y2Rm ZmViYzI1M2QwYTAxMzYyMDUyZjU1NTc2ZmRhZjg5NzAyZmEzM2NlZGQKLStDdHJsLmhleHhjZ2hh c2ggPSBoZXh4Y2doYXNoOjg0NjdkMDMzNWU2ZTI1NGViMDIyNTNmOTdjZDE0YzAyMjFmMWIyMTQz MWE0ZmZlMWMyMDY3NTAzOWQwYWMyNmZhNzBhMGM0YmFkNjM5ODM0ZDg4ZDAxZjZjMWVhODc4ZQot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6OWExMDBhNWIwYWQ4MWYxYzYwM2Uw NWM1ZDI0NDE1ZjJhYTcwMzFjMGQ5MmYxNmRlMTVjYWIzNTBiYjFhMmNmMzYzOWM2OTA2ZjRlMjIw ZTA1N2RlYjk2NjgxM2JiYjM1Ci0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0ID0gMmI5Yzlj OGVjYWU5NWQ3NTQ3MjQ5NTM2M2NhMmQ0NmRjNzliYWJkYjJlMGZkYTQwCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgx MDBhODliM2Y5NjI4YTRmOTg0MzM2Mzc3ZWRjMzdkM2JlZDRhYTc0OGZhMGIwYTZiYzgwYzM2NmU4 ZmZkZjBjY2JiZTA3MjI5YzVmMDIzOTRiMjMwNzU5ZDUyNTVlM2E3ZDdmNjNhMjM5NWUyZjA3ZTJk MzFiZjg4NWFiYWVhMTUwZTFmOTc4MDhmMjZmOGZlOGM1MTEzYzEyZTRkMTM3ODQ0MTYwYTQzM2Y4 NDUxZmFhZjQzMmJkN2MwNDY5ZGJlNzEzMzA0YzhiZWQyOWMwM2NiNzYyOWNkZmZlYmMyNTNkMGEw MTM2MjA1MmY1NTU3NmZkYWY4OTcwMmZhMzNjZWRkCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNn aGFzaDo4NDY3ZDAzMzVlNmUyNTRlYjAyMjUzZjk3Y2QxNGMwMjIxZjFiMjE0MzFhNGZmZTFjMjA2 NzUwMzlkMGFjMjZmYTcwYTBjNGJhZDYzOTgzNGQ4OGQwMWY2YzFlYTg3OGUKLStDdHJsLmhleHNl c3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjlhMTAwYTViMGFkODFmMWM2MDNlMDVjNWQyNDQxNWYy YWE3MDMxYzBkOTJmMTZkZTE1Y2FiMzUwYmIxYTJjZjM2MzljNjkwNmY0ZTIyMGUwNTdkZWI5NjY4 MTNiYmIzNQotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGY0NjZkOWI5ODcxYzE0ODJj Njk5YTVkOWY4NjM2YTA0MWFkYjYwOTIwYzZhZjg1NQotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwYTg5YjNmOTYy OGE0Zjk4NDMzNjM3N2VkYzM3ZDNiZWQ0YWE3NDhmYTBiMGE2YmM4MGMzNjZlOGZmZGYwY2NiYmUw NzIyOWM1ZjAyMzk0YjIzMDc1OWQ1MjU1ZTNhN2Q3ZjYzYTIzOTVlMmYwN2UyZDMxYmY4ODVhYmFl YTE1MGUxZjk3ODA4ZjI2ZjhmZThjNTExM2MxMmU0ZDEzNzg0NDE2MGE0MzNmODQ1MWZhYWY0MzJi ZDdjMDQ2OWRiZTcxMzMwNGM4YmVkMjljMDNjYjc2MjljZGZmZWJjMjUzZDBhMDEzNjIwNTJmNTU1 NzZmZGFmODk3MDJmYTMzY2VkZAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ODQ2N2Qw MzM1ZTZlMjU0ZWIwMjI1M2Y5N2NkMTRjMDIyMWYxYjIxNDMxYTRmZmUxYzIwNjc1MDM5ZDBhYzI2 ZmE3MGEwYzRiYWQ2Mzk4MzRkODhkMDFmNmMxZWE4NzhlCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDo5YTEwMGE1YjBhZDgxZjFjNjAzZTA1YzVkMjQ0MTVmMmFhNzAzMWMwZDky ZjE2ZGUxNWNhYjM1MGJiMWEyY2YzNjM5YzY5MDZmNGUyMjBlMDU3ZGViOTY2ODEzYmJiMzUKLStD dHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSAxZWNkYTAyNTI0NjFiZDA4OTYwYzU0YmE3YzU3 MGU4MDcxNTc4MGU1ZTk5Y2EwZjc1NGEzZDQ1MTQwOWVkMmRmOTI4ZGFhYjkxZWQ2YjQwNDRmY2M2 OGJkNWY5MDdjOTYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGE4OWIzZjk2MjhhNGY5ODQzMzYzNzdlZGMzN2Qz YmVkNGFhNzQ4ZmEwYjBhNmJjODBjMzY2ZThmZmRmMGNjYmJlMDcyMjljNWYwMjM5NGIyMzA3NTlk NTI1NWUzYTdkN2Y2M2EyMzk1ZTJmMDdlMmQzMWJmODg1YWJhZWExNTBlMWY5NzgwOGYyNmY4ZmU4 YzUxMTNjMTJlNGQxMzc4NDQxNjBhNDMzZjg0NTFmYWFmNDMyYmQ3YzA0NjlkYmU3MTMzMDRjOGJl ZDI5YzAzY2I3NjI5Y2RmZmViYzI1M2QwYTAxMzYyMDUyZjU1NTc2ZmRhZjg5NzAyZmEzM2NlZGQK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjg0NjdkMDMzNWU2ZTI1NGViMDIyNTNmOTdj ZDE0YzAyMjFmMWIyMTQzMWE0ZmZlMWMyMDY3NTAzOWQwYWMyNmZhNzBhMGM0YmFkNjM5ODM0ZDg4 ZDAxZjZjMWVhODc4ZQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6OWExMDBh NWIwYWQ4MWYxYzYwM2UwNWM1ZDI0NDE1ZjJhYTcwMzFjMGQ5MmYxNmRlMTVjYWIzNTBiYjFhMmNm MzYzOWM2OTA2ZjRlMjIwZTA1N2RlYjk2NjgxM2JiYjM1Ci0rQ3RybC50eXBlID0gdHlwZTpGCi0r T3V0cHV0ID0gMjAyZTRlM2RkYTE4MzA2YzdmYTUxOGVhODQ5Y2YzYTQ3ODhkYmM1MzA1ZjcxMjY3 YmE2OWZlODkyMGQzYjE4ZDlmYzU5ODUzYTRkMDNiMTg0ODAyNjk2OThlMjRjMTkwCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMDgxMDBmNmU4OTlmMmI3NTQyZmQ5NWU4OGUwNmZmMGE2OGU0M2RmNmYzZDkxM2YxMjk1OTIy YmQwMWI5OGY3MDc4YjY3MzExZTAwMmNhZmNiNDFhNjUyNjI1ODVhNzhiMjJlYzk3YzgxMjc4ZjNm MzI5ZDcyNmYwOGZmZjIzZjRjZTViOTBhYmM2OTRjOTIxOTVmZTdiYzE0MDU3OWY1NGM2Yjg5ZDgx YjgzNmE4ZDM5OTg0NDZhYWI5MDU1OTA0ZWYxZTBiYjc1NTM3MzlkMjM1MWM4Y2ZhZTBmYmY1MGQ4 Y2VkNGJiZDM5NzU0NTA1NjlkMGY5ZTQ0MWEzZWQzYWFjNzc2Ci0rQ3RybC5oZXh4Y2doYXNoID0g aGV4eGNnaGFzaDoxODUzYmIwZDMxMmViMDBkMWM3MDBkMjVkZGFlZDk2ODBlY2YyOGVlZWZlOTMy MzU2NmRjOTFlZjQyYTg1YjJlMzA0OTI4NjYyMWY0M2I5MjhlMmI4MjFlNTYwNWJmNjAKLStDdHJs LmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmRhN2QyMmUzYzc4MTViNmE2MDg5ZjM4MWRk ZDk1N2RmM2VkNzhlOTc5MDIxMzNkNjJkM2ZmNjExOWQ4YzE3NGI2OWNkMjZlNjI3ZDZjY2Q5OGY4 NDc1MjFhYTBlMzg5NgotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IDg2MTgzZmQ4NjJi ZjQyYWYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAwODEwMGY2ZTg5OWYyYjc1NDJmZDk1ZTg4ZTA2ZmYwYTY4ZTQzZGY2 ZjNkOTEzZjEyOTU5MjJiZDAxYjk4ZjcwNzhiNjczMTFlMDAyY2FmY2I0MWE2NTI2MjU4NWE3OGIy MmVjOTdjODEyNzhmM2YzMjlkNzI2ZjA4ZmZmMjNmNGNlNWI5MGFiYzY5NGM5MjE5NWZlN2JjMTQw NTc5ZjU0YzZiODlkODFiODM2YThkMzk5ODQ0NmFhYjkwNTU5MDRlZjFlMGJiNzU1MzczOWQyMzUx YzhjZmFlMGZiZjUwZDhjZWQ0YmJkMzk3NTQ1MDU2OWQwZjllNDQxYTNlZDNhYWM3NzYKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjE4NTNiYjBkMzEyZWIwMGQxYzcwMGQyNWRkYWVkOTY4 MGVjZjI4ZWVlZmU5MzIzNTY2ZGM5MWVmNDJhODViMmUzMDQ5Mjg2NjIxZjQzYjkyOGUyYjgyMWU1 NjA1YmY2MAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGE3ZDIyZTNjNzgx NWI2YTYwODlmMzgxZGRkOTU3ZGYzZWQ3OGU5NzkwMjEzM2Q2MmQzZmY2MTE5ZDhjMTc0YjY5Y2Qy NmU2MjdkNmNjZDk4Zjg0NzUyMWFhMGUzODk2Ci0rQ3RybC50eXBlID0gdHlwZTpCCi0rT3V0cHV0 ID0gMDRlMTQ2YjA4NWM3MTI1MwotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEz ODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwZjZlODk5ZjJiNzU0MmZkOTVlODhl MDZmZjBhNjhlNDNkZjZmM2Q5MTNmMTI5NTkyMmJkMDFiOThmNzA3OGI2NzMxMWUwMDJjYWZjYjQx YTY1MjYyNTg1YTc4YjIyZWM5N2M4MTI3OGYzZjMyOWQ3MjZmMDhmZmYyM2Y0Y2U1YjkwYWJjNjk0 YzkyMTk1ZmU3YmMxNDA1NzlmNTRjNmI4OWQ4MWI4MzZhOGQzOTk4NDQ2YWFiOTA1NTkwNGVmMWUw YmI3NTUzNzM5ZDIzNTFjOGNmYWUwZmJmNTBkOGNlZDRiYmQzOTc1NDUwNTY5ZDBmOWU0NDFhM2Vk M2FhYzc3NgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MTg1M2JiMGQzMTJlYjAwZDFj NzAwZDI1ZGRhZWQ5NjgwZWNmMjhlZWVmZTkzMjM1NjZkYzkxZWY0MmE4NWIyZTMwNDkyODY2MjFm NDNiOTI4ZTJiODIxZTU2MDViZjYwCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDpkYTdkMjJlM2M3ODE1YjZhNjA4OWYzODFkZGQ5NTdkZjNlZDc4ZTk3OTAyMTMzZDYyZDNmZjYx MTlkOGMxNzRiNjljZDI2ZTYyN2Q2Y2NkOThmODQ3NTIxYWEwZTM4OTYKLStDdHJsLnR5cGUgPSB0 eXBlOkMKLStPdXRwdXQgPSBjNDM2NGQ0ZTBlMzhmZTRjNWZjMmIyYTNhZDQyZTQ5YTU3MTA2ZmZh OTYyZjRjNWUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGY2ZTg5OWYyYjc1NDJmZDk1ZTg4ZTA2ZmYwYTY4ZTQz ZGY2ZjNkOTEzZjEyOTU5MjJiZDAxYjk4ZjcwNzhiNjczMTFlMDAyY2FmY2I0MWE2NTI2MjU4NWE3 OGIyMmVjOTdjODEyNzhmM2YzMjlkNzI2ZjA4ZmZmMjNmNGNlNWI5MGFiYzY5NGM5MjE5NWZlN2Jj MTQwNTc5ZjU0YzZiODlkODFiODM2YThkMzk5ODQ0NmFhYjkwNTU5MDRlZjFlMGJiNzU1MzczOWQy MzUxYzhjZmFlMGZiZjUwZDhjZWQ0YmJkMzk3NTQ1MDU2OWQwZjllNDQxYTNlZDNhYWM3NzYKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjE4NTNiYjBkMzEyZWIwMGQxYzcwMGQyNWRkYWVk OTY4MGVjZjI4ZWVlZmU5MzIzNTY2ZGM5MWVmNDJhODViMmUzMDQ5Mjg2NjIxZjQzYjkyOGUyYjgy MWU1NjA1YmY2MAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZGE3ZDIyZTNj NzgxNWI2YTYwODlmMzgxZGRkOTU3ZGYzZWQ3OGU5NzkwMjEzM2Q2MmQzZmY2MTE5ZDhjMTc0YjY5 Y2QyNmU2MjdkNmNjZDk4Zjg0NzUyMWFhMGUzODk2Ci0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0 cHV0ID0gYjlkMTU0OTAzMmJmMzM2Yzg3MDhmMTNkOGY1ZDI4MWQ2OTZiOGJkZGMyOTZlNzA5Ci0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMDgxMDBmNmU4OTlmMmI3NTQyZmQ5NWU4OGUwNmZmMGE2OGU0M2RmNmYzZDkxM2Yx Mjk1OTIyYmQwMWI5OGY3MDc4YjY3MzExZTAwMmNhZmNiNDFhNjUyNjI1ODVhNzhiMjJlYzk3Yzgx Mjc4ZjNmMzI5ZDcyNmYwOGZmZjIzZjRjZTViOTBhYmM2OTRjOTIxOTVmZTdiYzE0MDU3OWY1NGM2 Yjg5ZDgxYjgzNmE4ZDM5OTg0NDZhYWI5MDU1OTA0ZWYxZTBiYjc1NTM3MzlkMjM1MWM4Y2ZhZTBm YmY1MGQ4Y2VkNGJiZDM5NzU0NTA1NjlkMGY5ZTQ0MWEzZWQzYWFjNzc2Ci0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDoxODUzYmIwZDMxMmViMDBkMWM3MDBkMjVkZGFlZDk2ODBlY2YyOGVl ZWZlOTMyMzU2NmRjOTFlZjQyYTg1YjJlMzA0OTI4NjYyMWY0M2I5MjhlMmI4MjFlNTYwNWJmNjAK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmRhN2QyMmUzYzc4MTViNmE2MDg5 ZjM4MWRkZDk1N2RmM2VkNzhlOTc5MDIxMzNkNjJkM2ZmNjExOWQ4YzE3NGI2OWNkMjZlNjI3ZDZj Y2Q5OGY4NDc1MjFhYTBlMzg5NgotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IGM3ZWU3 MmM0MGIyNmZjZTY3M2ZmMjNlZGVhMzI2NWRmZWI3YjdmNmZkNjYzNjJiYmM5MTU0OGZhYzE4MTlh MDg2ODJjNjVjN2Q2OWQ1ZTU0ZTFjNDhiMDVlNzIzM2FkYwotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwZjZlODk5 ZjJiNzU0MmZkOTVlODhlMDZmZjBhNjhlNDNkZjZmM2Q5MTNmMTI5NTkyMmJkMDFiOThmNzA3OGI2 NzMxMWUwMDJjYWZjYjQxYTY1MjYyNTg1YTc4YjIyZWM5N2M4MTI3OGYzZjMyOWQ3MjZmMDhmZmYy M2Y0Y2U1YjkwYWJjNjk0YzkyMTk1ZmU3YmMxNDA1NzlmNTRjNmI4OWQ4MWI4MzZhOGQzOTk4NDQ2 YWFiOTA1NTkwNGVmMWUwYmI3NTUzNzM5ZDIzNTFjOGNmYWUwZmJmNTBkOGNlZDRiYmQzOTc1NDUw NTY5ZDBmOWU0NDFhM2VkM2FhYzc3NgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MTg1 M2JiMGQzMTJlYjAwZDFjNzAwZDI1ZGRhZWQ5NjgwZWNmMjhlZWVmZTkzMjM1NjZkYzkxZWY0MmE4 NWIyZTMwNDkyODY2MjFmNDNiOTI4ZTJiODIxZTU2MDViZjYwCi0rQ3RybC5oZXhzZXNzaW9uX2lk ID0gaGV4c2Vzc2lvbl9pZDpkYTdkMjJlM2M3ODE1YjZhNjA4OWYzODFkZGQ5NTdkZjNlZDc4ZTk3 OTAyMTMzZDYyZDNmZjYxMTlkOGMxNzRiNjljZDI2ZTYyN2Q2Y2NkOThmODQ3NTIxYWEwZTM4OTYK LStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQgPSA4YjUyMDc4YTZkNDVkZmFhMDUxMTkzZGE4 ZjljOGExOGJmZDBjMDU4ZTdiZTE0NWQwYzRiNWI2NzdlZWM1NGEwMWY5ZTJhMjBjOTk3ZTljMGEx ZWRlOTU3NjgwMGNmZTUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAwODQ4MzMyMmJiMmVmZWU2MzIwYmExZmUxNGYy OTZlMGIxNzBmOWEwYzZmNzZhNDlkMGIyM2FiYjc0MjUxZGE0NjhiNTNmYjg2ZGRiYmM1NWE1YzQ4 ODE2ODZkMWFhYTliMzA5YjY1OTA3ZDkyMzUyYzgzNTk3MTI2Y2Y3ZTNkMzY3ZjU0M2M4ODg3MTA1 NDAzZDliMmJhODZjZjJiYmFmZDRhOTg0ZGZlOGViYjdiODE1NWM1MWQ2NDE2Yzg5YjRlZmI5MWVm NTk1M2IwZTU0ZGJjZGJlNzY0NDNhODBlNWNkMDExZDdkNmM5YmM2OWVjODFhMTk3NDliOTVmNmMw Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDplZDdiMTQ2NDMzNGJiOGEwNGQxMjhiNzkx Y2Q4NjBjMTU0NmZhYWY4NjBhZmYzOTQ4NzIzNzNmNWNjYWMwODM1YjQ3Y2ZlYjhjM2QwNDliMjEx Y2I3YjU3MGJjYzFmODMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmNhYzdi NDZiNjYzNzJiZTY3YjRjZTE5ODMxMWZhZWQ5ZGRjOGY4Yjk1ZjZjNjFkOGM3MWExNzg4NzI0YWI2 YjhkMTU5ZTJiYTYxZjkzN2U2ZDg3YmJiOWNiMjRhOWZlNwotK0N0cmwudHlwZSA9IHR5cGU6QQot K091dHB1dCA9IDU0ZjRiZTRhMzNkZmExMDIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAwODQ4MzMyMmJiMmVmZWU2 MzIwYmExZmUxNGYyOTZlMGIxNzBmOWEwYzZmNzZhNDlkMGIyM2FiYjc0MjUxZGE0NjhiNTNmYjg2 ZGRiYmM1NWE1YzQ4ODE2ODZkMWFhYTliMzA5YjY1OTA3ZDkyMzUyYzgzNTk3MTI2Y2Y3ZTNkMzY3 ZjU0M2M4ODg3MTA1NDAzZDliMmJhODZjZjJiYmFmZDRhOTg0ZGZlOGViYjdiODE1NWM1MWQ2NDE2 Yzg5YjRlZmI5MWVmNTk1M2IwZTU0ZGJjZGJlNzY0NDNhODBlNWNkMDExZDdkNmM5YmM2OWVjODFh MTk3NDliOTVmNmMwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDplZDdiMTQ2NDMzNGJi OGEwNGQxMjhiNzkxY2Q4NjBjMTU0NmZhYWY4NjBhZmYzOTQ4NzIzNzNmNWNjYWMwODM1YjQ3Y2Zl YjhjM2QwNDliMjExY2I3YjU3MGJjYzFmODMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNz aW9uX2lkOmNhYzdiNDZiNjYzNzJiZTY3YjRjZTE5ODMxMWZhZWQ5ZGRjOGY4Yjk1ZjZjNjFkOGM3 MWExNzg4NzI0YWI2YjhkMTU5ZTJiYTYxZjkzN2U2ZDg3YmJiOWNiMjRhOWZlNwotK0N0cmwudHlw ZSA9IHR5cGU6QgotK091dHB1dCA9IGJiYjA4NDQ4MzgwM2FhYjQKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAwODQ4 MzMyMmJiMmVmZWU2MzIwYmExZmUxNGYyOTZlMGIxNzBmOWEwYzZmNzZhNDlkMGIyM2FiYjc0MjUx ZGE0NjhiNTNmYjg2ZGRiYmM1NWE1YzQ4ODE2ODZkMWFhYTliMzA5YjY1OTA3ZDkyMzUyYzgzNTk3 MTI2Y2Y3ZTNkMzY3ZjU0M2M4ODg3MTA1NDAzZDliMmJhODZjZjJiYmFmZDRhOTg0ZGZlOGViYjdi ODE1NWM1MWQ2NDE2Yzg5YjRlZmI5MWVmNTk1M2IwZTU0ZGJjZGJlNzY0NDNhODBlNWNkMDExZDdk NmM5YmM2OWVjODFhMTk3NDliOTVmNmMwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpl ZDdiMTQ2NDMzNGJiOGEwNGQxMjhiNzkxY2Q4NjBjMTU0NmZhYWY4NjBhZmYzOTQ4NzIzNzNmNWNj YWMwODM1YjQ3Y2ZlYjhjM2QwNDliMjExY2I3YjU3MGJjYzFmODMKLStDdHJsLmhleHNlc3Npb25f aWQgPSBoZXhzZXNzaW9uX2lkOmNhYzdiNDZiNjYzNzJiZTY3YjRjZTE5ODMxMWZhZWQ5ZGRjOGY4 Yjk1ZjZjNjFkOGM3MWExNzg4NzI0YWI2YjhkMTU5ZTJiYTYxZjkzN2U2ZDg3YmJiOWNiMjRhOWZl NwotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDQ2NmEwMzhiM2E1YzBkNzJjZjE5Y2Yz M2U1YTU1MTQzNzkzM2RhZDU0YmZlZDY1NQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDA4NDgzMzIyYmIyZWZlZTYz MjBiYTFmZTE0ZjI5NmUwYjE3MGY5YTBjNmY3NmE0OWQwYjIzYWJiNzQyNTFkYTQ2OGI1M2ZiODZk ZGJiYzU1YTVjNDg4MTY4NmQxYWFhOWIzMDliNjU5MDdkOTIzNTJjODM1OTcxMjZjZjdlM2QzNjdm NTQzYzg4ODcxMDU0MDNkOWIyYmE4NmNmMmJiYWZkNGE5ODRkZmU4ZWJiN2I4MTU1YzUxZDY0MTZj ODliNGVmYjkxZWY1OTUzYjBlNTRkYmNkYmU3NjQ0M2E4MGU1Y2QwMTFkN2Q2YzliYzY5ZWM4MWEx OTc0OWI5NWY2YzAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmVkN2IxNDY0MzM0YmI4 YTA0ZDEyOGI3OTFjZDg2MGMxNTQ2ZmFhZjg2MGFmZjM5NDg3MjM3M2Y1Y2NhYzA4MzViNDdjZmVi OGMzZDA0OWIyMTFjYjdiNTcwYmNjMWY4MwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6Y2FjN2I0NmI2NjM3MmJlNjdiNGNlMTk4MzExZmFlZDlkZGM4ZjhiOTVmNmM2MWQ4Yzcx YTE3ODg3MjRhYjZiOGQxNTllMmJhNjFmOTM3ZTZkODdiYmI5Y2IyNGE5ZmU3Ci0rQ3RybC50eXBl ID0gdHlwZTpECi0rT3V0cHV0ID0gNDRlMDk2OThlNDczZWRjNjQyMjU2ZTk5YmZiZmJlYWIxZGIz ZTI1NGQ2NGEzYWI3Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwMDg0ODMzMjJiYjJlZmVlNjMyMGJhMWZlMTRmMjk2 ZTBiMTcwZjlhMGM2Zjc2YTQ5ZDBiMjNhYmI3NDI1MWRhNDY4YjUzZmI4NmRkYmJjNTVhNWM0ODgx Njg2ZDFhYWE5YjMwOWI2NTkwN2Q5MjM1MmM4MzU5NzEyNmNmN2UzZDM2N2Y1NDNjODg4NzEwNTQw M2Q5YjJiYTg2Y2YyYmJhZmQ0YTk4NGRmZThlYmI3YjgxNTVjNTFkNjQxNmM4OWI0ZWZiOTFlZjU5 NTNiMGU1NGRiY2RiZTc2NDQzYTgwZTVjZDAxMWQ3ZDZjOWJjNjllYzgxYTE5NzQ5Yjk1ZjZjMAot K0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZWQ3YjE0NjQzMzRiYjhhMDRkMTI4Yjc5MWNk ODYwYzE1NDZmYWFmODYwYWZmMzk0ODcyMzczZjVjY2FjMDgzNWI0N2NmZWI4YzNkMDQ5YjIxMWNi N2I1NzBiY2MxZjgzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpjYWM3YjQ2 YjY2MzcyYmU2N2I0Y2UxOTgzMTFmYWVkOWRkYzhmOGI5NWY2YzYxZDhjNzFhMTc4ODcyNGFiNmI4 ZDE1OWUyYmE2MWY5MzdlNmQ4N2JiYjljYjI0YTlmZTcKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStP dXRwdXQgPSA4ZTM1ZDc2N2U3MzhjNDI4MmVjMTkyNWJhNWQ1OWRhZDcyM2I3MjIwYzEwYWU4YjY5 YzllYjNkYTEyNGFjMWJlYTgxOTVmNWVjYzFjM2IwMzk1MzkzOGNkMWUwZTE5MGIKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAwODAwODQ4MzMyMmJiMmVmZWU2MzIwYmExZmUxNGYyOTZlMGIxNzBmOWEwYzZmNzZhNDlkMGIy M2FiYjc0MjUxZGE0NjhiNTNmYjg2ZGRiYmM1NWE1YzQ4ODE2ODZkMWFhYTliMzA5YjY1OTA3ZDky MzUyYzgzNTk3MTI2Y2Y3ZTNkMzY3ZjU0M2M4ODg3MTA1NDAzZDliMmJhODZjZjJiYmFmZDRhOTg0 ZGZlOGViYjdiODE1NWM1MWQ2NDE2Yzg5YjRlZmI5MWVmNTk1M2IwZTU0ZGJjZGJlNzY0NDNhODBl NWNkMDExZDdkNmM5YmM2OWVjODFhMTk3NDliOTVmNmMwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDplZDdiMTQ2NDMzNGJiOGEwNGQxMjhiNzkxY2Q4NjBjMTU0NmZhYWY4NjBhZmYzOTQ4 NzIzNzNmNWNjYWMwODM1YjQ3Y2ZlYjhjM2QwNDliMjExY2I3YjU3MGJjYzFmODMKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmNhYzdiNDZiNjYzNzJiZTY3YjRjZTE5ODMxMWZh ZWQ5ZGRjOGY4Yjk1ZjZjNjFkOGM3MWExNzg4NzI0YWI2YjhkMTU5ZTJiYTYxZjkzN2U2ZDg3YmJi OWNiMjRhOWZlNwotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDYzZTVjNjJjNGU2ZjI3 MDBiZmE1OTI3Y2EyZTczMDEwMWMxMmE2ODQ4MDhkZGQ2Y2Y1ZjlkYTJiYWQzYjQ5YmEzZDA1ZDRm ODhhM2E5MWYzNDFhZDJiNjM5NTJlN2RiMAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwODE3NGFhMmZhYjkzNzJj MjUzZjNiOTkzZDcyM2I1NWEyNDg0NDMwZmIzMzgwOTU4NTJiN2E1MDk5ZjlkNjA5Y2E2YWZhNmJm ZjlkNjRhNTVmN2VmMDk2M2M2ODRmMGQxN2VjNjA0NWNlNTdjZTMzODI4NzBkNTVmY2FjMGUxMzQx ZmI0N2E3Zjc2ZjBkNWQ1M2I2N2ZkNWUwNjU4ZWNiODhhZTJlMmU0MmFhNGI4M2I4Y2ZjY2U5ZmFh ZTk0MTQ1MGFjZTA1OWE3ZjIyMzYyM2QxYzhhOTkyNDYzOGRlN2VlYmFkMzViZTljOWYxYmYzOGFl YTA0MTExNDM1MWQ1ODVhMTk4OGJhNTNjY2NjNjk0OTE1MGYzNjdmZDc5MGZjNDI3OTE2YWZhMmNj Y2QxZDJmMWFhODU4M2I5NDhkZmU1NmNmNDg4YjM4ZWMyZDI1NzBhMGUwNDQxYzA3Y2NlYzhiNWI0 ZGI1ZjYwMjUwNzQxYjFhZWIwYmY0OWE4NWNjNzc5YWQ3NDY1ZjBjMTk3NzM1Njk4ODQyYmUyYTM5 YWY4NTkxYWI5MWM4NGI3MDRlNjdlNTBjYmNkYjc1YzI3OTlhYWViYTAxODQzNDFkZDUyMGY2ZGI4 NDc3ZjEzZDU4MTVkMzdmMTkxY2NiMjA1NDVlNGExZWFjYTMxNjM3MGEKLStDdHJsLmhleHhjZ2hh c2ggPSBoZXh4Y2doYXNoOjA5ZDc0YmQ3OWI0N2NlYjNhZGEwZDhkZjY0MDU5NWJhODYxY2NmYTNj YzBkNmM2NDBlYWFjMjFkMmQ1ZjNmOWZlNjFmYjJlNTg1ZmI2Y2M5MGJkZTExOTY3YTU2M2M0ZQot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MDlkNzRiZDc5YjQ3Y2ViM2FkYTBk OGRmNjQwNTk1YmE4NjFjY2ZhM2NjMGQ2YzY0MGVhYWMyMWQyZDVmM2Y5ZmU2MWZiMmU1ODVmYjZj YzkwYmRlMTE5NjdhNTYzYzRlCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gZTQ2ZmRi OGM5MTI2NThjMzRiN2Q1MDlmNmFjYzExMTEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMDgxNzRhYTJmYWI5Mzcy YzI1M2YzYjk5M2Q3MjNiNTVhMjQ4NDQzMGZiMzM4MDk1ODUyYjdhNTA5OWY5ZDYwOWNhNmFmYTZi ZmY5ZDY0YTU1ZjdlZjA5NjNjNjg0ZjBkMTdlYzYwNDVjZTU3Y2UzMzgyODcwZDU1ZmNhYzBlMTM0 MWZiNDdhN2Y3NmYwZDVkNTNiNjdmZDVlMDY1OGVjYjg4YWUyZTJlNDJhYTRiODNiOGNmY2NlOWZh YWU5NDE0NTBhY2UwNTlhN2YyMjM2MjNkMWM4YTk5MjQ2MzhkZTdlZWJhZDM1YmU5YzlmMWJmMzhh ZWEwNDExMTQzNTFkNTg1YTE5ODhiYTUzY2NjYzY5NDkxNTBmMzY3ZmQ3OTBmYzQyNzkxNmFmYTJj Y2NkMWQyZjFhYTg1ODNiOTQ4ZGZlNTZjZjQ4OGIzOGVjMmQyNTcwYTBlMDQ0MWMwN2NjZWM4YjVi NGRiNWY2MDI1MDc0MWIxYWViMGJmNDlhODVjYzc3OWFkNzQ2NWYwYzE5NzczNTY5ODg0MmJlMmEz OWFmODU5MWFiOTFjODRiNzA0ZTY3ZTUwY2JjZGI3NWMyNzk5YWFlYmEwMTg0MzQxZGQ1MjBmNmRi ODQ3N2YxM2Q1ODE1ZDM3ZjE5MWNjYjIwNTQ1ZTRhMWVhY2EzMTYzNzBhCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDowOWQ3NGJkNzliNDdjZWIzYWRhMGQ4ZGY2NDA1OTViYTg2MWNjZmEz Y2MwZDZjNjQwZWFhYzIxZDJkNWYzZjlmZTYxZmIyZTU4NWZiNmNjOTBiZGUxMTk2N2E1NjNjNGUK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjA5ZDc0YmQ3OWI0N2NlYjNhZGEw ZDhkZjY0MDU5NWJhODYxY2NmYTNjYzBkNmM2NDBlYWFjMjFkMmQ1ZjNmOWZlNjFmYjJlNTg1ZmI2 Y2M5MGJkZTExOTY3YTU2M2M0ZQotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDk1OWMz MzlhYWZmMmUyZWQ0NmRhNDZjNTI4NmRkZjNiCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9 IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDA4MTc0YWEyZmFiOTM3 MmMyNTNmM2I5OTNkNzIzYjU1YTI0ODQ0MzBmYjMzODA5NTg1MmI3YTUwOTlmOWQ2MDljYTZhZmE2 YmZmOWQ2NGE1NWY3ZWYwOTYzYzY4NGYwZDE3ZWM2MDQ1Y2U1N2NlMzM4Mjg3MGQ1NWZjYWMwZTEz NDFmYjQ3YTdmNzZmMGQ1ZDUzYjY3ZmQ1ZTA2NThlY2I4OGFlMmUyZTQyYWE0YjgzYjhjZmNjZTlm YWFlOTQxNDUwYWNlMDU5YTdmMjIzNjIzZDFjOGE5OTI0NjM4ZGU3ZWViYWQzNWJlOWM5ZjFiZjM4 YWVhMDQxMTE0MzUxZDU4NWExOTg4YmE1M2NjY2M2OTQ5MTUwZjM2N2ZkNzkwZmM0Mjc5MTZhZmEy Y2NjZDFkMmYxYWE4NTgzYjk0OGRmZTU2Y2Y0ODhiMzhlYzJkMjU3MGEwZTA0NDFjMDdjY2VjOGI1 YjRkYjVmNjAyNTA3NDFiMWFlYjBiZjQ5YTg1Y2M3NzlhZDc0NjVmMGMxOTc3MzU2OTg4NDJiZTJh MzlhZjg1OTFhYjkxYzg0YjcwNGU2N2U1MGNiY2RiNzVjMjc5OWFhZWJhMDE4NDM0MWRkNTIwZjZk Yjg0NzdmMTNkNTgxNWQzN2YxOTFjY2IyMDU0NWU0YTFlYWNhMzE2MzcwYQotK0N0cmwuaGV4eGNn aGFzaCA9IGhleHhjZ2hhc2g6MDlkNzRiZDc5YjQ3Y2ViM2FkYTBkOGRmNjQwNTk1YmE4NjFjY2Zh M2NjMGQ2YzY0MGVhYWMyMWQyZDVmM2Y5ZmU2MWZiMmU1ODVmYjZjYzkwYmRlMTE5NjdhNTYzYzRl Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDowOWQ3NGJkNzliNDdjZWIzYWRh MGQ4ZGY2NDA1OTViYTg2MWNjZmEzY2MwZDZjNjQwZWFhYzIxZDJkNWYzZjlmZTYxZmIyZTU4NWZi NmNjOTBiZGUxMTk2N2E1NjNjNGUKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSBhMWNi MGY5YzczNDlkNjQ0MzQ5NGRmMTRiNGJkOWFhZAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwODE3NGFhMmZhYjkz NzJjMjUzZjNiOTkzZDcyM2I1NWEyNDg0NDMwZmIzMzgwOTU4NTJiN2E1MDk5ZjlkNjA5Y2E2YWZh NmJmZjlkNjRhNTVmN2VmMDk2M2M2ODRmMGQxN2VjNjA0NWNlNTdjZTMzODI4NzBkNTVmY2FjMGUx MzQxZmI0N2E3Zjc2ZjBkNWQ1M2I2N2ZkNWUwNjU4ZWNiODhhZTJlMmU0MmFhNGI4M2I4Y2ZjY2U5 ZmFhZTk0MTQ1MGFjZTA1OWE3ZjIyMzYyM2QxYzhhOTkyNDYzOGRlN2VlYmFkMzViZTljOWYxYmYz OGFlYTA0MTExNDM1MWQ1ODVhMTk4OGJhNTNjY2NjNjk0OTE1MGYzNjdmZDc5MGZjNDI3OTE2YWZh MmNjY2QxZDJmMWFhODU4M2I5NDhkZmU1NmNmNDg4YjM4ZWMyZDI1NzBhMGUwNDQxYzA3Y2NlYzhi NWI0ZGI1ZjYwMjUwNzQxYjFhZWIwYmY0OWE4NWNjNzc5YWQ3NDY1ZjBjMTk3NzM1Njk4ODQyYmUy YTM5YWY4NTkxYWI5MWM4NGI3MDRlNjdlNTBjYmNkYjc1YzI3OTlhYWViYTAxODQzNDFkZDUyMGY2 ZGI4NDc3ZjEzZDU4MTVkMzdmMTkxY2NiMjA1NDVlNGExZWFjYTMxNjM3MGEKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjA5ZDc0YmQ3OWI0N2NlYjNhZGEwZDhkZjY0MDU5NWJhODYxY2Nm YTNjYzBkNmM2NDBlYWFjMjFkMmQ1ZjNmOWZlNjFmYjJlNTg1ZmI2Y2M5MGJkZTExOTY3YTU2M2M0 ZQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MDlkNzRiZDc5YjQ3Y2ViM2Fk YTBkOGRmNjQwNTk1YmE4NjFjY2ZhM2NjMGQ2YzY0MGVhYWMyMWQyZDVmM2Y5ZmU2MWZiMmU1ODVm YjZjYzkwYmRlMTE5NjdhNTYzYzRlCi0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gY2Rj ZDJjMmNjYmRhMjM4ZTE4NDA1OGI3Njc1N2VkNWQKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1k ID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMDgxNzRhYTJmYWI5 MzcyYzI1M2YzYjk5M2Q3MjNiNTVhMjQ4NDQzMGZiMzM4MDk1ODUyYjdhNTA5OWY5ZDYwOWNhNmFm YTZiZmY5ZDY0YTU1ZjdlZjA5NjNjNjg0ZjBkMTdlYzYwNDVjZTU3Y2UzMzgyODcwZDU1ZmNhYzBl MTM0MWZiNDdhN2Y3NmYwZDVkNTNiNjdmZDVlMDY1OGVjYjg4YWUyZTJlNDJhYTRiODNiOGNmY2Nl OWZhYWU5NDE0NTBhY2UwNTlhN2YyMjM2MjNkMWM4YTk5MjQ2MzhkZTdlZWJhZDM1YmU5YzlmMWJm MzhhZWEwNDExMTQzNTFkNTg1YTE5ODhiYTUzY2NjYzY5NDkxNTBmMzY3ZmQ3OTBmYzQyNzkxNmFm YTJjY2NkMWQyZjFhYTg1ODNiOTQ4ZGZlNTZjZjQ4OGIzOGVjMmQyNTcwYTBlMDQ0MWMwN2NjZWM4 YjViNGRiNWY2MDI1MDc0MWIxYWViMGJmNDlhODVjYzc3OWFkNzQ2NWYwYzE5NzczNTY5ODg0MmJl MmEzOWFmODU5MWFiOTFjODRiNzA0ZTY3ZTUwY2JjZGI3NWMyNzk5YWFlYmEwMTg0MzQxZGQ1MjBm NmRiODQ3N2YxM2Q1ODE1ZDM3ZjE5MWNjYjIwNTQ1ZTRhMWVhY2EzMTYzNzBhCi0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDowOWQ3NGJkNzliNDdjZWIzYWRhMGQ4ZGY2NDA1OTViYTg2MWNj ZmEzY2MwZDZjNjQwZWFhYzIxZDJkNWYzZjlmZTYxZmIyZTU4NWZiNmNjOTBiZGUxMTk2N2E1NjNj NGUKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjA5ZDc0YmQ3OWI0N2NlYjNh ZGEwZDhkZjY0MDU5NWJhODYxY2NmYTNjYzBkNmM2NDBlYWFjMjFkMmQ1ZjNmOWZlNjFmYjJlNTg1 ZmI2Y2M5MGJkZTExOTY3YTU2M2M0ZQotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IDAy NmFlOTI3YjRhNWI2M2E1MTNjMDJmYWFjNTU1MzRkYWU1YzIxOTc3OWYwOGUyMzlmNjdkZjc4YzUy YmU3NDNhYWI2Mjg2MDdlNWExMDMxMjc0NTBlYTUxODMzZWI4NAotKwotK0tERiA9IFNTSEtERgot K0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwODE3 NGFhMmZhYjkzNzJjMjUzZjNiOTkzZDcyM2I1NWEyNDg0NDMwZmIzMzgwOTU4NTJiN2E1MDk5Zjlk NjA5Y2E2YWZhNmJmZjlkNjRhNTVmN2VmMDk2M2M2ODRmMGQxN2VjNjA0NWNlNTdjZTMzODI4NzBk NTVmY2FjMGUxMzQxZmI0N2E3Zjc2ZjBkNWQ1M2I2N2ZkNWUwNjU4ZWNiODhhZTJlMmU0MmFhNGI4 M2I4Y2ZjY2U5ZmFhZTk0MTQ1MGFjZTA1OWE3ZjIyMzYyM2QxYzhhOTkyNDYzOGRlN2VlYmFkMzVi ZTljOWYxYmYzOGFlYTA0MTExNDM1MWQ1ODVhMTk4OGJhNTNjY2NjNjk0OTE1MGYzNjdmZDc5MGZj NDI3OTE2YWZhMmNjY2QxZDJmMWFhODU4M2I5NDhkZmU1NmNmNDg4YjM4ZWMyZDI1NzBhMGUwNDQx YzA3Y2NlYzhiNWI0ZGI1ZjYwMjUwNzQxYjFhZWIwYmY0OWE4NWNjNzc5YWQ3NDY1ZjBjMTk3NzM1 Njk4ODQyYmUyYTM5YWY4NTkxYWI5MWM4NGI3MDRlNjdlNTBjYmNkYjc1YzI3OTlhYWViYTAxODQz NDFkZDUyMGY2ZGI4NDc3ZjEzZDU4MTVkMzdmMTkxY2NiMjA1NDVlNGExZWFjYTMxNjM3MGEKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjA5ZDc0YmQ3OWI0N2NlYjNhZGEwZDhkZjY0MDU5 NWJhODYxY2NmYTNjYzBkNmM2NDBlYWFjMjFkMmQ1ZjNmOWZlNjFmYjJlNTg1ZmI2Y2M5MGJkZTEx OTY3YTU2M2M0ZQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MDlkNzRiZDc5 YjQ3Y2ViM2FkYTBkOGRmNjQwNTk1YmE4NjFjY2ZhM2NjMGQ2YzY0MGVhYWMyMWQyZDVmM2Y5ZmU2 MWZiMmU1ODVmYjZjYzkwYmRlMTE5NjdhNTYzYzRlCi0rQ3RybC50eXBlID0gdHlwZTpGCi0rT3V0 cHV0ID0gNzU5ZmQ2YmQzODZmNDgyNWU2NDQ1MjFlZGZjZTQxODdhNzEwNGVhNzM4MGYyYzZjNWUy ODNmMjA1YzdjMDI1YmU0NmM1ZWU3M2JjNTRhOTU2ZjI2OGMyMDMxMDI2YmY2Ci0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MTAxMDBjMTBmZmYwYTIwODU4YzM2ZTQxMDgyYWJhYTY1Yjk2YzU0MjRhYjY3NTYzODgyYTQyMjM3 MjU4ZTczNmI1Y2ZiZGIyODY3ZGY1NWY4YzQwZjgxYjM0ZThjNGM1NWQzOWM0NjI5ZGMyZDgzMzI1 N2RjNjgwNzBhNjFkMTA0MTc0ODdlZjA4NDBiNzYxNjkxNDU0MDIzMjdhZTgxZjM1Y2JkZGFlNmMy YTQ1ZDUyZjUyZjQ4YTBjOTRhY2RiMjBkYjA3NjM5M2I1YjFlM2QxYTdhY2VlM2YzNzFiZGFjY2Zl ZTY5NjI2MmVlY2QyMDIzOGNjNTQzMjJlNmNhNzJlNTg3MDhhZWIxOWJmNzYxMDU0ZDlmNzQyNmU0 ZWEwMDU5YmQyNTJiZWVlMDNkY2FkMWE3ZDZkMDM0YjRkOWQzMDcyMThiYjNkN2JlZTNhNTc1NzJk ZWQzMDRkZjFkZDhmOTdlZDk1NTBlYmIwZjVjMjVlZTNmOGM2ZGYzZGZjMmFhYzkyZjM2NGVjOTEw NDBkMDAxYzVjYjFlZWUzM2MxZDQzMTEyZTVhMjg5YjQ2NzA2YzdmMTJhMzI3NjIwY2Q5OGZiY2Uy ZTdmZTdiN2JkMGUwNWVlMDAwNTE4MmMzNWRlZDY1ZWUxZDg2YWVmZTgxNmU1ODk0ZTA3NTM2Njk3 YTdkYgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NjJiMzE1NWJhMGMxNjBmODM4YTY5 NDlkMGE5OWIxNDQ4NjhhN2IyNDdjNTgzYTUzZjQzMTEyOWUzOWFlYmQ0MGUyZmViNGRiYWM3NTI3 Zjk5M2NjZjE2NDZkNTU5MTM0Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo3 ZTQ2NzQzMzBmYjY5ODdiNjRlZjdmMzAzMzVkMTcxNjc2YzcwNWE2YjllZDk1OGFkYzZiNmZkMTY5 NDk4MzBkM2Y1ODZlZWM0NDgxMmQwNTE4Y2MzZWJkNDI5MmI0MjIKLStDdHJsLnR5cGUgPSB0eXBl OkEKLStPdXRwdXQgPSBhNDMzYWMyMWNlZGEzNmE5ZDk4YWJlYzcyMmIyYTVlNwotKwotK0tERiA9 IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDEwMTAwYzEwZmZmMGEyMDg1OGMzNmU0MTA4MmFiYWE2NWI5NmM1NDI0YWI2NzU2Mzg4MmE0MjIz NzI1OGU3MzZiNWNmYmRiMjg2N2RmNTVmOGM0MGY4MWIzNGU4YzRjNTVkMzljNDYyOWRjMmQ4MzMy NTdkYzY4MDcwYTYxZDEwNDE3NDg3ZWYwODQwYjc2MTY5MTQ1NDAyMzI3YWU4MWYzNWNiZGRhZTZj MmE0NWQ1MmY1MmY0OGEwYzk0YWNkYjIwZGIwNzYzOTNiNWIxZTNkMWE3YWNlZTNmMzcxYmRhY2Nm ZWU2OTYyNjJlZWNkMjAyMzhjYzU0MzIyZTZjYTcyZTU4NzA4YWViMTliZjc2MTA1NGQ5Zjc0MjZl NGVhMDA1OWJkMjUyYmVlZTAzZGNhZDFhN2Q2ZDAzNGI0ZDlkMzA3MjE4YmIzZDdiZWUzYTU3NTcy ZGVkMzA0ZGYxZGQ4Zjk3ZWQ5NTUwZWJiMGY1YzI1ZWUzZjhjNmRmM2RmYzJhYWM5MmYzNjRlYzkx MDQwZDAwMWM1Y2IxZWVlMzNjMWQ0MzExMmU1YTI4OWI0NjcwNmM3ZjEyYTMyNzYyMGNkOThmYmNl MmU3ZmU3YjdiZDBlMDVlZTAwMDUxODJjMzVkZWQ2NWVlMWQ4NmFlZmU4MTZlNTg5NGUwNzUzNjY5 N2E3ZGIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjYyYjMxNTViYTBjMTYwZjgzOGE2 OTQ5ZDBhOTliMTQ0ODY4YTdiMjQ3YzU4M2E1M2Y0MzExMjllMzlhZWJkNDBlMmZlYjRkYmFjNzUy N2Y5OTNjY2YxNjQ2ZDU1OTEzNAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 N2U0Njc0MzMwZmI2OTg3YjY0ZWY3ZjMwMzM1ZDE3MTY3NmM3MDVhNmI5ZWQ5NThhZGM2YjZmZDE2 OTQ5ODMwZDNmNTg2ZWVjNDQ4MTJkMDUxOGNjM2ViZDQyOTJiNDIyCi0rQ3RybC50eXBlID0gdHlw ZTpCCi0rT3V0cHV0ID0gZWQ1ODBjMmM3ODkwZDVmM2RhODc4NzBkNzFkOTYzMDAKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAxMDEwMGMxMGZmZjBhMjA4NThjMzZlNDEwODJhYmFhNjViOTZjNTQyNGFiNjc1NjM4ODJhNDIy MzcyNThlNzM2YjVjZmJkYjI4NjdkZjU1ZjhjNDBmODFiMzRlOGM0YzU1ZDM5YzQ2MjlkYzJkODMz MjU3ZGM2ODA3MGE2MWQxMDQxNzQ4N2VmMDg0MGI3NjE2OTE0NTQwMjMyN2FlODFmMzVjYmRkYWU2 YzJhNDVkNTJmNTJmNDhhMGM5NGFjZGIyMGRiMDc2MzkzYjViMWUzZDFhN2FjZWUzZjM3MWJkYWNj ZmVlNjk2MjYyZWVjZDIwMjM4Y2M1NDMyMmU2Y2E3MmU1ODcwOGFlYjE5YmY3NjEwNTRkOWY3NDI2 ZTRlYTAwNTliZDI1MmJlZWUwM2RjYWQxYTdkNmQwMzRiNGQ5ZDMwNzIxOGJiM2Q3YmVlM2E1NzU3 MmRlZDMwNGRmMWRkOGY5N2VkOTU1MGViYjBmNWMyNWVlM2Y4YzZkZjNkZmMyYWFjOTJmMzY0ZWM5 MTA0MGQwMDFjNWNiMWVlZTMzYzFkNDMxMTJlNWEyODliNDY3MDZjN2YxMmEzMjc2MjBjZDk4ZmJj ZTJlN2ZlN2I3YmQwZTA1ZWUwMDA1MTgyYzM1ZGVkNjVlZTFkODZhZWZlODE2ZTU4OTRlMDc1MzY2 OTdhN2RiCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo2MmIzMTU1YmEwYzE2MGY4Mzhh Njk0OWQwYTk5YjE0NDg2OGE3YjI0N2M1ODNhNTNmNDMxMTI5ZTM5YWViZDQwZTJmZWI0ZGJhYzc1 MjdmOTkzY2NmMTY0NmQ1NTkxMzQKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OjdlNDY3NDMzMGZiNjk4N2I2NGVmN2YzMDMzNWQxNzE2NzZjNzA1YTZiOWVkOTU4YWRjNmI2ZmQx Njk0OTgzMGQzZjU4NmVlYzQ0ODEyZDA1MThjYzNlYmQ0MjkyYjQyMgotK0N0cmwudHlwZSA9IHR5 cGU6QwotK091dHB1dCA9IGIzMTAzMDQxMDg0NzZhMzExNTRmZWJjZTJiZmNmNDRlCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMTAxMDBjMTBmZmYwYTIwODU4YzM2ZTQxMDgyYWJhYTY1Yjk2YzU0MjRhYjY3NTYzODgyYTQy MjM3MjU4ZTczNmI1Y2ZiZGIyODY3ZGY1NWY4YzQwZjgxYjM0ZThjNGM1NWQzOWM0NjI5ZGMyZDgz MzI1N2RjNjgwNzBhNjFkMTA0MTc0ODdlZjA4NDBiNzYxNjkxNDU0MDIzMjdhZTgxZjM1Y2JkZGFl NmMyYTQ1ZDUyZjUyZjQ4YTBjOTRhY2RiMjBkYjA3NjM5M2I1YjFlM2QxYTdhY2VlM2YzNzFiZGFj Y2ZlZTY5NjI2MmVlY2QyMDIzOGNjNTQzMjJlNmNhNzJlNTg3MDhhZWIxOWJmNzYxMDU0ZDlmNzQy NmU0ZWEwMDU5YmQyNTJiZWVlMDNkY2FkMWE3ZDZkMDM0YjRkOWQzMDcyMThiYjNkN2JlZTNhNTc1 NzJkZWQzMDRkZjFkZDhmOTdlZDk1NTBlYmIwZjVjMjVlZTNmOGM2ZGYzZGZjMmFhYzkyZjM2NGVj OTEwNDBkMDAxYzVjYjFlZWUzM2MxZDQzMTEyZTVhMjg5YjQ2NzA2YzdmMTJhMzI3NjIwY2Q5OGZi Y2UyZTdmZTdiN2JkMGUwNWVlMDAwNTE4MmMzNWRlZDY1ZWUxZDg2YWVmZTgxNmU1ODk0ZTA3NTM2 Njk3YTdkYgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NjJiMzE1NWJhMGMxNjBmODM4 YTY5NDlkMGE5OWIxNDQ4NjhhN2IyNDdjNTgzYTUzZjQzMTEyOWUzOWFlYmQ0MGUyZmViNGRiYWM3 NTI3Zjk5M2NjZjE2NDZkNTU5MTM0Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDo3ZTQ2NzQzMzBmYjY5ODdiNjRlZjdmMzAzMzVkMTcxNjc2YzcwNWE2YjllZDk1OGFkYzZiNmZk MTY5NDk4MzBkM2Y1ODZlZWM0NDgxMmQwNTE4Y2MzZWJkNDI5MmI0MjIKLStDdHJsLnR5cGUgPSB0 eXBlOkQKLStPdXRwdXQgPSA2M2Q3MjliMGUzMmQ5ZDdlZmU3ZWZkYzYxMTE0ODliNwotKwotK0tE RiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTow MDAwMDEwMTAwYzEwZmZmMGEyMDg1OGMzNmU0MTA4MmFiYWE2NWI5NmM1NDI0YWI2NzU2Mzg4MmE0 MjIzNzI1OGU3MzZiNWNmYmRiMjg2N2RmNTVmOGM0MGY4MWIzNGU4YzRjNTVkMzljNDYyOWRjMmQ4 MzMyNTdkYzY4MDcwYTYxZDEwNDE3NDg3ZWYwODQwYjc2MTY5MTQ1NDAyMzI3YWU4MWYzNWNiZGRh ZTZjMmE0NWQ1MmY1MmY0OGEwYzk0YWNkYjIwZGIwNzYzOTNiNWIxZTNkMWE3YWNlZTNmMzcxYmRh Y2NmZWU2OTYyNjJlZWNkMjAyMzhjYzU0MzIyZTZjYTcyZTU4NzA4YWViMTliZjc2MTA1NGQ5Zjc0 MjZlNGVhMDA1OWJkMjUyYmVlZTAzZGNhZDFhN2Q2ZDAzNGI0ZDlkMzA3MjE4YmIzZDdiZWUzYTU3 NTcyZGVkMzA0ZGYxZGQ4Zjk3ZWQ5NTUwZWJiMGY1YzI1ZWUzZjhjNmRmM2RmYzJhYWM5MmYzNjRl YzkxMDQwZDAwMWM1Y2IxZWVlMzNjMWQ0MzExMmU1YTI4OWI0NjcwNmM3ZjEyYTMyNzYyMGNkOThm YmNlMmU3ZmU3YjdiZDBlMDVlZTAwMDUxODJjMzVkZWQ2NWVlMWQ4NmFlZmU4MTZlNTg5NGUwNzUz NjY5N2E3ZGIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjYyYjMxNTViYTBjMTYwZjgz OGE2OTQ5ZDBhOTliMTQ0ODY4YTdiMjQ3YzU4M2E1M2Y0MzExMjllMzlhZWJkNDBlMmZlYjRkYmFj NzUyN2Y5OTNjY2YxNjQ2ZDU1OTEzNAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6N2U0Njc0MzMwZmI2OTg3YjY0ZWY3ZjMwMzM1ZDE3MTY3NmM3MDVhNmI5ZWQ5NThhZGM2YjZm ZDE2OTQ5ODMwZDNmNTg2ZWVjNDQ4MTJkMDUxOGNjM2ViZDQyOTJiNDIyCi0rQ3RybC50eXBlID0g dHlwZTpFCi0rT3V0cHV0ID0gNzQ0M2EyNzhlMGM0N2U0MDA0YmExYzUzNGRmYTVjNDYwNjcwZDJk ZDQ0NTlhNmRjNzI1MTY2NGRhMTg3ZjYzMzIwOGY2YzA2NDcwZjZhZWQ2MTQ4ODIwMTg3ZjM1YTI1 Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMTAxMDBjMTBmZmYwYTIwODU4YzM2ZTQxMDgyYWJhYTY1Yjk2YzU0MjRhYjY3 NTYzODgyYTQyMjM3MjU4ZTczNmI1Y2ZiZGIyODY3ZGY1NWY4YzQwZjgxYjM0ZThjNGM1NWQzOWM0 NjI5ZGMyZDgzMzI1N2RjNjgwNzBhNjFkMTA0MTc0ODdlZjA4NDBiNzYxNjkxNDU0MDIzMjdhZTgx ZjM1Y2JkZGFlNmMyYTQ1ZDUyZjUyZjQ4YTBjOTRhY2RiMjBkYjA3NjM5M2I1YjFlM2QxYTdhY2Vl M2YzNzFiZGFjY2ZlZTY5NjI2MmVlY2QyMDIzOGNjNTQzMjJlNmNhNzJlNTg3MDhhZWIxOWJmNzYx MDU0ZDlmNzQyNmU0ZWEwMDU5YmQyNTJiZWVlMDNkY2FkMWE3ZDZkMDM0YjRkOWQzMDcyMThiYjNk N2JlZTNhNTc1NzJkZWQzMDRkZjFkZDhmOTdlZDk1NTBlYmIwZjVjMjVlZTNmOGM2ZGYzZGZjMmFh YzkyZjM2NGVjOTEwNDBkMDAxYzVjYjFlZWUzM2MxZDQzMTEyZTVhMjg5YjQ2NzA2YzdmMTJhMzI3 NjIwY2Q5OGZiY2UyZTdmZTdiN2JkMGUwNWVlMDAwNTE4MmMzNWRlZDY1ZWUxZDg2YWVmZTgxNmU1 ODk0ZTA3NTM2Njk3YTdkYgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NjJiMzE1NWJh MGMxNjBmODM4YTY5NDlkMGE5OWIxNDQ4NjhhN2IyNDdjNTgzYTUzZjQzMTEyOWUzOWFlYmQ0MGUy ZmViNGRiYWM3NTI3Zjk5M2NjZjE2NDZkNTU5MTM0Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4 c2Vzc2lvbl9pZDo3ZTQ2NzQzMzBmYjY5ODdiNjRlZjdmMzAzMzVkMTcxNjc2YzcwNWE2YjllZDk1 OGFkYzZiNmZkMTY5NDk4MzBkM2Y1ODZlZWM0NDgxMmQwNTE4Y2MzZWJkNDI5MmI0MjIKLStDdHJs LnR5cGUgPSB0eXBlOkYKLStPdXRwdXQgPSAzNzUwMGI2OTk5MzVhYjM4YjkxODUwMThkMzY3NmYy MjFkY2Q2NjQzYmE0Y2YzZGNjZjhlZGU3YmEyZjA1MTNjMjdhZDIzMjQxNThhZTk4ZGY0ZTdmYjUy ZmZiOTY1MjYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGM5ZDAxOWFhOGFiNTdjZGJkMTYwMGRlZjA4YjkyZjRh OTBiOGRkYjFjM2ZkMzI5NDc1ZTI4YWQ5Mzg4NTI1ZDVhODEzNzU2NDcyNDU4YmVkNjc0MzMyYTY0 OWM1NmVlY2I2Y2JiYTcyNmI5YWZjZmQ5Y2UxZjQ5MGJmMzI3ZGU0OTk3OGIzNGZiMTA2YWUxYWI0 ZWNlMmYyNDFlMGI2N2RkZjAzYmY4MzVhYTJkY2M1Y2RlNWFjYTkxM2QyYTVlZDc0ZDFhZDBlOTQ1 MTY5ZjEwNzcyZDgzMGZhNWMzM2M3ZjdkNTQzZTJkMmFjMDlmYTAzZmYxNTA5Yjk0OTc3Y2MwZGNi OGE0NjQxMDRhM2U4ZDlmOTljYmVmYWM0MzYxYjkyNTE3ZjE0ZWRhMjU1OGQ1NzJhZTc0MTBhNzg5 NjJlNTk2YzU0MmEyMGQzYWViNDljZjQxYjQ4YjU0YjM4N2RlYTdjMjRjNzJlZGZkNjU2YmNiNjRj NjA1Yjc0MWM3YjAzODkyMDIwY2EyZmYzNGUwYjEzNTM0MjI4YmQ4M2M5YzNmZmJmYTIxOTYwMjA0 MWFjNDIzODkwNGJkNzgyZGE3ZTNjNjUzZjUxODg5MWY3YWMxZTdiMDViN2UzN2JhYWIxOGViNTRl OGRlNzZkZmE4YzgwM2EwZGY4NDNhMjhlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDph OTcwYWNjNTU5N2Y3OTY1ZGNjNTQwZGFjN2NlZmRlNTk0YzAyMzIxODAxODdhMzIzNjRiNDJkYmI4 ZDAzMDdmOGMzZjUyNjc4ZTMwM2UyZjMxNWIyYmExY2Y2Mjg2M2EKLStDdHJsLmhleHNlc3Npb25f aWQgPSBoZXhzZXNzaW9uX2lkOmJhZDk5NDNlMDg5NTUwZDE3YjkwZjJhMzQ0MDk2NjBjMDdhMzli ZTVkNDhhNzdkOGUxYWQyNTcyNmM5MzA5NjA4MTgzMWMyNGU4NzYwNjBjYjk2ZGVmOTVkZjlhN2Zj ZAotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IDhhZDM4YjAzNDY3ZWYwY2FjNjM4Zjkz YjE1NmUxYzA1Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwu aGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBjOWQwMTlhYThhYjU3Y2RiZDE2MDBkZWYwOGI5MmY0 YTkwYjhkZGIxYzNmZDMyOTQ3NWUyOGFkOTM4ODUyNWQ1YTgxMzc1NjQ3MjQ1OGJlZDY3NDMzMmE2 NDljNTZlZWNiNmNiYmE3MjZiOWFmY2ZkOWNlMWY0OTBiZjMyN2RlNDk5NzhiMzRmYjEwNmFlMWFi NGVjZTJmMjQxZTBiNjdkZGYwM2JmODM1YWEyZGNjNWNkZTVhY2E5MTNkMmE1ZWQ3NGQxYWQwZTk0 NTE2OWYxMDc3MmQ4MzBmYTVjMzNjN2Y3ZDU0M2UyZDJhYzA5ZmEwM2ZmMTUwOWI5NDk3N2NjMGRj YjhhNDY0MTA0YTNlOGQ5Zjk5Y2JlZmFjNDM2MWI5MjUxN2YxNGVkYTI1NThkNTcyYWU3NDEwYTc4 OTYyZTU5NmM1NDJhMjBkM2FlYjQ5Y2Y0MWI0OGI1NGIzODdkZWE3YzI0YzcyZWRmZDY1NmJjYjY0 YzYwNWI3NDFjN2IwMzg5MjAyMGNhMmZmMzRlMGIxMzUzNDIyOGJkODNjOWMzZmZiZmEyMTk2MDIw NDFhYzQyMzg5MDRiZDc4MmRhN2UzYzY1M2Y1MTg4OTFmN2FjMWU3YjA1YjdlMzdiYWFiMThlYjU0 ZThkZTc2ZGZhOGM4MDNhMGRmODQzYTI4ZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6 YTk3MGFjYzU1OTdmNzk2NWRjYzU0MGRhYzdjZWZkZTU5NGMwMjMyMTgwMTg3YTMyMzY0YjQyZGJi OGQwMzA3ZjhjM2Y1MjY3OGUzMDNlMmYzMTViMmJhMWNmNjI4NjNhCi0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDpiYWQ5OTQzZTA4OTU1MGQxN2I5MGYyYTM0NDA5NjYwYzA3YTM5 YmU1ZDQ4YTc3ZDhlMWFkMjU3MjZjOTMwOTYwODE4MzFjMjRlODc2MDYwY2I5NmRlZjk1ZGY5YTdm Y2QKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSBjOWE4NjcxNjRjYWQ3NjE5NjIxYzIz OTAwMzlkYjg4ZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJs LmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwYzlkMDE5YWE4YWI1N2NkYmQxNjAwZGVmMDhiOTJm NGE5MGI4ZGRiMWMzZmQzMjk0NzVlMjhhZDkzODg1MjVkNWE4MTM3NTY0NzI0NThiZWQ2NzQzMzJh NjQ5YzU2ZWVjYjZjYmJhNzI2YjlhZmNmZDljZTFmNDkwYmYzMjdkZTQ5OTc4YjM0ZmIxMDZhZTFh YjRlY2UyZjI0MWUwYjY3ZGRmMDNiZjgzNWFhMmRjYzVjZGU1YWNhOTEzZDJhNWVkNzRkMWFkMGU5 NDUxNjlmMTA3NzJkODMwZmE1YzMzYzdmN2Q1NDNlMmQyYWMwOWZhMDNmZjE1MDliOTQ5NzdjYzBk Y2I4YTQ2NDEwNGEzZThkOWY5OWNiZWZhYzQzNjFiOTI1MTdmMTRlZGEyNTU4ZDU3MmFlNzQxMGE3 ODk2MmU1OTZjNTQyYTIwZDNhZWI0OWNmNDFiNDhiNTRiMzg3ZGVhN2MyNGM3MmVkZmQ2NTZiY2I2 NGM2MDViNzQxYzdiMDM4OTIwMjBjYTJmZjM0ZTBiMTM1MzQyMjhiZDgzYzljM2ZmYmZhMjE5NjAy MDQxYWM0MjM4OTA0YmQ3ODJkYTdlM2M2NTNmNTE4ODkxZjdhYzFlN2IwNWI3ZTM3YmFhYjE4ZWI1 NGU4ZGU3NmRmYThjODAzYTBkZjg0M2EyOGUKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OmE5NzBhY2M1NTk3Zjc5NjVkY2M1NDBkYWM3Y2VmZGU1OTRjMDIzMjE4MDE4N2EzMjM2NGI0MmRi YjhkMDMwN2Y4YzNmNTI2NzhlMzAzZTJmMzE1YjJiYTFjZjYyODYzYQotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6YmFkOTk0M2UwODk1NTBkMTdiOTBmMmEzNDQwOTY2MGMwN2Ez OWJlNWQ0OGE3N2Q4ZTFhZDI1NzI2YzkzMDk2MDgxODMxYzI0ZTg3NjA2MGNiOTZkZWY5NWRmOWE3 ZmNkCi0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0ID0gMjhkNmU2YTY5ZTY4NmIzYjJjYTAy Yzc1OTViNmE1NjUKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGM5ZDAxOWFhOGFiNTdjZGJkMTYwMGRlZjA4Yjky ZjRhOTBiOGRkYjFjM2ZkMzI5NDc1ZTI4YWQ5Mzg4NTI1ZDVhODEzNzU2NDcyNDU4YmVkNjc0MzMy YTY0OWM1NmVlY2I2Y2JiYTcyNmI5YWZjZmQ5Y2UxZjQ5MGJmMzI3ZGU0OTk3OGIzNGZiMTA2YWUx YWI0ZWNlMmYyNDFlMGI2N2RkZjAzYmY4MzVhYTJkY2M1Y2RlNWFjYTkxM2QyYTVlZDc0ZDFhZDBl OTQ1MTY5ZjEwNzcyZDgzMGZhNWMzM2M3ZjdkNTQzZTJkMmFjMDlmYTAzZmYxNTA5Yjk0OTc3Y2Mw ZGNiOGE0NjQxMDRhM2U4ZDlmOTljYmVmYWM0MzYxYjkyNTE3ZjE0ZWRhMjU1OGQ1NzJhZTc0MTBh Nzg5NjJlNTk2YzU0MmEyMGQzYWViNDljZjQxYjQ4YjU0YjM4N2RlYTdjMjRjNzJlZGZkNjU2YmNi NjRjNjA1Yjc0MWM3YjAzODkyMDIwY2EyZmYzNGUwYjEzNTM0MjI4YmQ4M2M5YzNmZmJmYTIxOTYw MjA0MWFjNDIzODkwNGJkNzgyZGE3ZTNjNjUzZjUxODg5MWY3YWMxZTdiMDViN2UzN2JhYWIxOGVi NTRlOGRlNzZkZmE4YzgwM2EwZGY4NDNhMjhlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDphOTcwYWNjNTU5N2Y3OTY1ZGNjNTQwZGFjN2NlZmRlNTk0YzAyMzIxODAxODdhMzIzNjRiNDJk YmI4ZDAzMDdmOGMzZjUyNjc4ZTMwM2UyZjMxNWIyYmExY2Y2Mjg2M2EKLStDdHJsLmhleHNlc3Np b25faWQgPSBoZXhzZXNzaW9uX2lkOmJhZDk5NDNlMDg5NTUwZDE3YjkwZjJhMzQ0MDk2NjBjMDdh MzliZTVkNDhhNzdkOGUxYWQyNTcyNmM5MzA5NjA4MTgzMWMyNGU4NzYwNjBjYjk2ZGVmOTVkZjlh N2ZjZAotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGEzNDg2ZjkwMTQ3MzFiMTU1MzBk YmE3NDk4ZDRiMmZmCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBjOWQwMTlhYThhYjU3Y2RiZDE2MDBkZWYwOGI5 MmY0YTkwYjhkZGIxYzNmZDMyOTQ3NWUyOGFkOTM4ODUyNWQ1YTgxMzc1NjQ3MjQ1OGJlZDY3NDMz MmE2NDljNTZlZWNiNmNiYmE3MjZiOWFmY2ZkOWNlMWY0OTBiZjMyN2RlNDk5NzhiMzRmYjEwNmFl MWFiNGVjZTJmMjQxZTBiNjdkZGYwM2JmODM1YWEyZGNjNWNkZTVhY2E5MTNkMmE1ZWQ3NGQxYWQw ZTk0NTE2OWYxMDc3MmQ4MzBmYTVjMzNjN2Y3ZDU0M2UyZDJhYzA5ZmEwM2ZmMTUwOWI5NDk3N2Nj MGRjYjhhNDY0MTA0YTNlOGQ5Zjk5Y2JlZmFjNDM2MWI5MjUxN2YxNGVkYTI1NThkNTcyYWU3NDEw YTc4OTYyZTU5NmM1NDJhMjBkM2FlYjQ5Y2Y0MWI0OGI1NGIzODdkZWE3YzI0YzcyZWRmZDY1NmJj YjY0YzYwNWI3NDFjN2IwMzg5MjAyMGNhMmZmMzRlMGIxMzUzNDIyOGJkODNjOWMzZmZiZmEyMTk2 MDIwNDFhYzQyMzg5MDRiZDc4MmRhN2UzYzY1M2Y1MTg4OTFmN2FjMWU3YjA1YjdlMzdiYWFiMThl YjU0ZThkZTc2ZGZhOGM4MDNhMGRmODQzYTI4ZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6YTk3MGFjYzU1OTdmNzk2NWRjYzU0MGRhYzdjZWZkZTU5NGMwMjMyMTgwMTg3YTMyMzY0YjQy ZGJiOGQwMzA3ZjhjM2Y1MjY3OGUzMDNlMmYzMTViMmJhMWNmNjI4NjNhCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpiYWQ5OTQzZTA4OTU1MGQxN2I5MGYyYTM0NDA5NjYwYzA3 YTM5YmU1ZDQ4YTc3ZDhlMWFkMjU3MjZjOTMwOTYwODE4MzFjMjRlODc2MDYwY2I5NmRlZjk1ZGY5 YTdmY2QKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA5NjQwYjdkNmMxMzUxYTQ0ZGNk NDMwZjk3MjgwODM5NDlhZGJkOGYzYzQ3ZjFjNzM1OGI0MWQ5OTczMGYwZWVlZjlmODYzNGNjOTky MDdiOGQ5OThjOGFlYjAwODVlNGMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hB Mzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGM5ZDAxOWFhOGFiNTdjZGJkMTYw MGRlZjA4YjkyZjRhOTBiOGRkYjFjM2ZkMzI5NDc1ZTI4YWQ5Mzg4NTI1ZDVhODEzNzU2NDcyNDU4 YmVkNjc0MzMyYTY0OWM1NmVlY2I2Y2JiYTcyNmI5YWZjZmQ5Y2UxZjQ5MGJmMzI3ZGU0OTk3OGIz NGZiMTA2YWUxYWI0ZWNlMmYyNDFlMGI2N2RkZjAzYmY4MzVhYTJkY2M1Y2RlNWFjYTkxM2QyYTVl ZDc0ZDFhZDBlOTQ1MTY5ZjEwNzcyZDgzMGZhNWMzM2M3ZjdkNTQzZTJkMmFjMDlmYTAzZmYxNTA5 Yjk0OTc3Y2MwZGNiOGE0NjQxMDRhM2U4ZDlmOTljYmVmYWM0MzYxYjkyNTE3ZjE0ZWRhMjU1OGQ1 NzJhZTc0MTBhNzg5NjJlNTk2YzU0MmEyMGQzYWViNDljZjQxYjQ4YjU0YjM4N2RlYTdjMjRjNzJl ZGZkNjU2YmNiNjRjNjA1Yjc0MWM3YjAzODkyMDIwY2EyZmYzNGUwYjEzNTM0MjI4YmQ4M2M5YzNm ZmJmYTIxOTYwMjA0MWFjNDIzODkwNGJkNzgyZGE3ZTNjNjUzZjUxODg5MWY3YWMxZTdiMDViN2Uz N2JhYWIxOGViNTRlOGRlNzZkZmE4YzgwM2EwZGY4NDNhMjhlCi0rQ3RybC5oZXh4Y2doYXNoID0g aGV4eGNnaGFzaDphOTcwYWNjNTU5N2Y3OTY1ZGNjNTQwZGFjN2NlZmRlNTk0YzAyMzIxODAxODdh MzIzNjRiNDJkYmI4ZDAzMDdmOGMzZjUyNjc4ZTMwM2UyZjMxNWIyYmExY2Y2Mjg2M2EKLStDdHJs LmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmJhZDk5NDNlMDg5NTUwZDE3YjkwZjJhMzQ0 MDk2NjBjMDdhMzliZTVkNDhhNzdkOGUxYWQyNTcyNmM5MzA5NjA4MTgzMWMyNGU4NzYwNjBjYjk2 ZGVmOTVkZjlhN2ZjZAotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGNlZjkyM2Y3Y2Jj NDc1MzRkOWE2ZGE2MTNlZWEwMjExN2IxOTgwMDk5NWY2NmRmOWU0OTI5MTIwM2FkMTVlNWQyOWNj MDhkZjg2MjAwYmYwOWNhMDkxYjM3Y2M0NTQzMgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwYmE2YjgxOWFhMDk0 YjNiOWEyZTkzZDM3ZWRhNWRmNzc2NzIwY2NlNDA4NTg3OTA1MzJiOGFiMGRlNjEzYjhlMjBlZmNl ZjMzMGVhYTllNGFiMjkwZmQ2NzBiOGY4YWIxZTJmYzIxN2Q1NzU2NTVhN2MzOTc0MGNlMjIzNjc1 YTQzNzZiZDAzOWYyNDE2NWQ4MzI2OGEzZTNhNWI2ZTA1ZjFiMDc3ZGM3NTJjOTA3ODFkMGNkNjg3 N2M5MWMxZmM4NjU1ODZiZjY2MWYyOGNiZGVkNDI2NmYxYjkzNjRhZTcyMzNlNjAwM2I0NzA4OGNi NTBmODFhNjMxZDRiMWQyMDBmOGMzODQ1NWFkMjIxN2VhZjAzYjZlMGEwODYxYWVlYmUyOGVmMGZj YmFjNTUyNmJkMDZlYmNjNDRmNjdkZTliOTA4ZjAzNTkwNzY1MjdmNmZmN2JiOTU5YjNhZGZjOWFj ODI3MjhkNzYyN2JmNTA2ZmZiMmY4NzQyYWUyOGNlM2NhNzQwMmMyNWIxY2QzZGFjNjc4MTc3NmEz NTU0OTQ4MGZmNTM3YzMzZjYzNzk2ZGQ1ZGU0YzY0ZTFmZjU1NDY2ODlkOGYzOThiZTkxMTcwN2Uw YjVkMzQ3Yjg0NTZlODllYjIyNjIyNzBlZTFkZTg1OTAyYjdkZWI2MGIwMmIKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOmU5NGRiMGMwOTY5YzhmMDljMWMwZDYzZmNjYTlmMzE2YWU4NWEw YzAzNGYxMTg5NThjNzE0ZmExNjVhYzcxYTg2YmJjYzdhNGMwMTdjMTFiOTU1OGJkYTg5NzQ1NWY5 OQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTAxNDI2Mzg2Y2U2OWE5YTlm MTAxMzk0ZTgzMWRjOWQxN2E2ZGM5MDEzNDlmM2MzZjQyNjk3ODhmNWM1ZTIwMzE2YzIzM2Q3NjMy MDA1YjE3NzFlNWJjMmY1ZGRmNGMyCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gMWUy ZmQ4MzgwNThlNDU2OWRlMDY5OWU1N2ViOWJiMzAKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1k ID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGJhNmI4MTlhYTA5 NGIzYjlhMmU5M2QzN2VkYTVkZjc3NjcyMGNjZTQwODU4NzkwNTMyYjhhYjBkZTYxM2I4ZTIwZWZj ZWYzMzBlYWE5ZTRhYjI5MGZkNjcwYjhmOGFiMWUyZmMyMTdkNTc1NjU1YTdjMzk3NDBjZTIyMzY3 NWE0Mzc2YmQwMzlmMjQxNjVkODMyNjhhM2UzYTViNmUwNWYxYjA3N2RjNzUyYzkwNzgxZDBjZDY4 NzdjOTFjMWZjODY1NTg2YmY2NjFmMjhjYmRlZDQyNjZmMWI5MzY0YWU3MjMzZTYwMDNiNDcwODhj YjUwZjgxYTYzMWQ0YjFkMjAwZjhjMzg0NTVhZDIyMTdlYWYwM2I2ZTBhMDg2MWFlZWJlMjhlZjBm Y2JhYzU1MjZiZDA2ZWJjYzQ0ZjY3ZGU5YjkwOGYwMzU5MDc2NTI3ZjZmZjdiYjk1OWIzYWRmYzlh YzgyNzI4ZDc2MjdiZjUwNmZmYjJmODc0MmFlMjhjZTNjYTc0MDJjMjViMWNkM2RhYzY3ODE3NzZh MzU1NDk0ODBmZjUzN2MzM2Y2Mzc5NmRkNWRlNGM2NGUxZmY1NTQ2Njg5ZDhmMzk4YmU5MTE3MDdl MGI1ZDM0N2I4NDU2ZTg5ZWIyMjYyMjcwZWUxZGU4NTkwMmI3ZGViNjBiMDJiCi0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDplOTRkYjBjMDk2OWM4ZjA5YzFjMGQ2M2ZjY2E5ZjMxNmFlODVh MGMwMzRmMTE4OTU4YzcxNGZhMTY1YWM3MWE4NmJiY2M3YTRjMDE3YzExYjk1NThiZGE4OTc0NTVm OTkKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmEwMTQyNjM4NmNlNjlhOWE5 ZjEwMTM5NGU4MzFkYzlkMTdhNmRjOTAxMzQ5ZjNjM2Y0MjY5Nzg4ZjVjNWUyMDMxNmMyMzNkNzYz MjAwNWIxNzcxZTViYzJmNWRkZjRjMgotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IGQz MzgwNTJiMjI4OGU5OWJmZGQxNmI1ZGYyNmUzZDNjCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBiYTZiODE5YWEw OTRiM2I5YTJlOTNkMzdlZGE1ZGY3NzY3MjBjY2U0MDg1ODc5MDUzMmI4YWIwZGU2MTNiOGUyMGVm Y2VmMzMwZWFhOWU0YWIyOTBmZDY3MGI4ZjhhYjFlMmZjMjE3ZDU3NTY1NWE3YzM5NzQwY2UyMjM2 NzVhNDM3NmJkMDM5ZjI0MTY1ZDgzMjY4YTNlM2E1YjZlMDVmMWIwNzdkYzc1MmM5MDc4MWQwY2Q2 ODc3YzkxYzFmYzg2NTU4NmJmNjYxZjI4Y2JkZWQ0MjY2ZjFiOTM2NGFlNzIzM2U2MDAzYjQ3MDg4 Y2I1MGY4MWE2MzFkNGIxZDIwMGY4YzM4NDU1YWQyMjE3ZWFmMDNiNmUwYTA4NjFhZWViZTI4ZWYw ZmNiYWM1NTI2YmQwNmViY2M0NGY2N2RlOWI5MDhmMDM1OTA3NjUyN2Y2ZmY3YmI5NTliM2FkZmM5 YWM4MjcyOGQ3NjI3YmY1MDZmZmIyZjg3NDJhZTI4Y2UzY2E3NDAyYzI1YjFjZDNkYWM2NzgxNzc2 YTM1NTQ5NDgwZmY1MzdjMzNmNjM3OTZkZDVkZTRjNjRlMWZmNTU0NjY4OWQ4ZjM5OGJlOTExNzA3 ZTBiNWQzNDdiODQ1NmU4OWViMjI2MjI3MGVlMWRlODU5MDJiN2RlYjYwYjAyYgotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZTk0ZGIwYzA5NjljOGYwOWMxYzBkNjNmY2NhOWYzMTZhZTg1 YTBjMDM0ZjExODk1OGM3MTRmYTE2NWFjNzFhODZiYmNjN2E0YzAxN2MxMWI5NTU4YmRhODk3NDU1 Zjk5Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphMDE0MjYzODZjZTY5YTlh OWYxMDEzOTRlODMxZGM5ZDE3YTZkYzkwMTM0OWYzYzNmNDI2OTc4OGY1YzVlMjAzMTZjMjMzZDc2 MzIwMDViMTc3MWU1YmMyZjVkZGY0YzIKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAw MjBjNTgwMzdkYjA0NWZjMmEyMGE5YjEyZTM0MjA1ZAotKwotK0tERiA9IFNTSEtERgotK0N0cmwu bWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwYmE2YjgxOWFh MDk0YjNiOWEyZTkzZDM3ZWRhNWRmNzc2NzIwY2NlNDA4NTg3OTA1MzJiOGFiMGRlNjEzYjhlMjBl ZmNlZjMzMGVhYTllNGFiMjkwZmQ2NzBiOGY4YWIxZTJmYzIxN2Q1NzU2NTVhN2MzOTc0MGNlMjIz Njc1YTQzNzZiZDAzOWYyNDE2NWQ4MzI2OGEzZTNhNWI2ZTA1ZjFiMDc3ZGM3NTJjOTA3ODFkMGNk Njg3N2M5MWMxZmM4NjU1ODZiZjY2MWYyOGNiZGVkNDI2NmYxYjkzNjRhZTcyMzNlNjAwM2I0NzA4 OGNiNTBmODFhNjMxZDRiMWQyMDBmOGMzODQ1NWFkMjIxN2VhZjAzYjZlMGEwODYxYWVlYmUyOGVm MGZjYmFjNTUyNmJkMDZlYmNjNDRmNjdkZTliOTA4ZjAzNTkwNzY1MjdmNmZmN2JiOTU5YjNhZGZj OWFjODI3MjhkNzYyN2JmNTA2ZmZiMmY4NzQyYWUyOGNlM2NhNzQwMmMyNWIxY2QzZGFjNjc4MTc3 NmEzNTU0OTQ4MGZmNTM3YzMzZjYzNzk2ZGQ1ZGU0YzY0ZTFmZjU1NDY2ODlkOGYzOThiZTkxMTcw N2UwYjVkMzQ3Yjg0NTZlODllYjIyNjIyNzBlZTFkZTg1OTAyYjdkZWI2MGIwMmIKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmU5NGRiMGMwOTY5YzhmMDljMWMwZDYzZmNjYTlmMzE2YWU4 NWEwYzAzNGYxMTg5NThjNzE0ZmExNjVhYzcxYTg2YmJjYzdhNGMwMTdjMTFiOTU1OGJkYTg5NzQ1 NWY5OQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTAxNDI2Mzg2Y2U2OWE5 YTlmMTAxMzk0ZTgzMWRjOWQxN2E2ZGM5MDEzNDlmM2MzZjQyNjk3ODhmNWM1ZTIwMzE2YzIzM2Q3 NjMyMDA1YjE3NzFlNWJjMmY1ZGRmNGMyCi0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0g YjFlN2I0MzYxYWFlYTdmOTY1NjE1MTcyM2MyMWI5YTIKLSsKLStLREYgPSBTU0hLREYKLStDdHJs Lm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGJhNmI4MTlh YTA5NGIzYjlhMmU5M2QzN2VkYTVkZjc3NjcyMGNjZTQwODU4NzkwNTMyYjhhYjBkZTYxM2I4ZTIw ZWZjZWYzMzBlYWE5ZTRhYjI5MGZkNjcwYjhmOGFiMWUyZmMyMTdkNTc1NjU1YTdjMzk3NDBjZTIy MzY3NWE0Mzc2YmQwMzlmMjQxNjVkODMyNjhhM2UzYTViNmUwNWYxYjA3N2RjNzUyYzkwNzgxZDBj ZDY4NzdjOTFjMWZjODY1NTg2YmY2NjFmMjhjYmRlZDQyNjZmMWI5MzY0YWU3MjMzZTYwMDNiNDcw ODhjYjUwZjgxYTYzMWQ0YjFkMjAwZjhjMzg0NTVhZDIyMTdlYWYwM2I2ZTBhMDg2MWFlZWJlMjhl ZjBmY2JhYzU1MjZiZDA2ZWJjYzQ0ZjY3ZGU5YjkwOGYwMzU5MDc2NTI3ZjZmZjdiYjk1OWIzYWRm YzlhYzgyNzI4ZDc2MjdiZjUwNmZmYjJmODc0MmFlMjhjZTNjYTc0MDJjMjViMWNkM2RhYzY3ODE3 NzZhMzU1NDk0ODBmZjUzN2MzM2Y2Mzc5NmRkNWRlNGM2NGUxZmY1NTQ2Njg5ZDhmMzk4YmU5MTE3 MDdlMGI1ZDM0N2I4NDU2ZTg5ZWIyMjYyMjcwZWUxZGU4NTkwMmI3ZGViNjBiMDJiCi0rQ3RybC5o ZXh4Y2doYXNoID0gaGV4eGNnaGFzaDplOTRkYjBjMDk2OWM4ZjA5YzFjMGQ2M2ZjY2E5ZjMxNmFl ODVhMGMwMzRmMTE4OTU4YzcxNGZhMTY1YWM3MWE4NmJiY2M3YTRjMDE3YzExYjk1NThiZGE4OTc0 NTVmOTkKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmEwMTQyNjM4NmNlNjlh OWE5ZjEwMTM5NGU4MzFkYzlkMTdhNmRjOTAxMzQ5ZjNjM2Y0MjY5Nzg4ZjVjNWUyMDMxNmMyMzNk NzYzMjAwNWIxNzcxZTViYzJmNWRkZjRjMgotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9 IDY3ZDgwNjY2YmE0MjBkMDcxNTM1MzA4NTlmZWQ1YTNhMmY0YjZkZWNkMzc1NzU3MTRkNDgyNmY0 MWE5NmExNjM4Yjg5Mzk5Y2RkNzUyYWY3ZjZmZmQzZGIwMjE0ZjBjMQotKwotK0tERiA9IFNTSEtE RgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAw YmE2YjgxOWFhMDk0YjNiOWEyZTkzZDM3ZWRhNWRmNzc2NzIwY2NlNDA4NTg3OTA1MzJiOGFiMGRl NjEzYjhlMjBlZmNlZjMzMGVhYTllNGFiMjkwZmQ2NzBiOGY4YWIxZTJmYzIxN2Q1NzU2NTVhN2Mz OTc0MGNlMjIzNjc1YTQzNzZiZDAzOWYyNDE2NWQ4MzI2OGEzZTNhNWI2ZTA1ZjFiMDc3ZGM3NTJj OTA3ODFkMGNkNjg3N2M5MWMxZmM4NjU1ODZiZjY2MWYyOGNiZGVkNDI2NmYxYjkzNjRhZTcyMzNl NjAwM2I0NzA4OGNiNTBmODFhNjMxZDRiMWQyMDBmOGMzODQ1NWFkMjIxN2VhZjAzYjZlMGEwODYx YWVlYmUyOGVmMGZjYmFjNTUyNmJkMDZlYmNjNDRmNjdkZTliOTA4ZjAzNTkwNzY1MjdmNmZmN2Ji OTU5YjNhZGZjOWFjODI3MjhkNzYyN2JmNTA2ZmZiMmY4NzQyYWUyOGNlM2NhNzQwMmMyNWIxY2Qz ZGFjNjc4MTc3NmEzNTU0OTQ4MGZmNTM3YzMzZjYzNzk2ZGQ1ZGU0YzY0ZTFmZjU1NDY2ODlkOGYz OThiZTkxMTcwN2UwYjVkMzQ3Yjg0NTZlODllYjIyNjIyNzBlZTFkZTg1OTAyYjdkZWI2MGIwMmIK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmU5NGRiMGMwOTY5YzhmMDljMWMwZDYzZmNj YTlmMzE2YWU4NWEwYzAzNGYxMTg5NThjNzE0ZmExNjVhYzcxYTg2YmJjYzdhNGMwMTdjMTFiOTU1 OGJkYTg5NzQ1NWY5OQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTAxNDI2 Mzg2Y2U2OWE5YTlmMTAxMzk0ZTgzMWRjOWQxN2E2ZGM5MDEzNDlmM2MzZjQyNjk3ODhmNWM1ZTIw MzE2YzIzM2Q3NjMyMDA1YjE3NzFlNWJjMmY1ZGRmNGMyCi0rQ3RybC50eXBlID0gdHlwZTpGCi0r T3V0cHV0ID0gYzNmYjJhYjY3MGUzOTg4NWNiYjk4YTQ2MDlkNjlhOTBhZmQzN2QzODM1MTJhZDIy MmQ2M2M5YzZmMTAwOWUyYTQyMDY1YTIzMmFiNWIzOWY1NTI0N2Y4YmY5ZTZhYjJjCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMTAwMWI5ZjExMGIwNTQ2MTc5NmRiM2EwYjc1MTYzOGI1NTJlNjJhMDYyZDdiODkxNTkxYWM3 NWUyMzdkNDdmNWYxMmQ5N2E1ZDE5YmUwNzE4YzhhMmZiZGQ5MTAwMjQ5YzJkOWNhNTliZjQ5MWIx MGFmZWY3NWY2MWM1M2FlOTI0NTVlOGNiMDE2ZTIzMDQwOGM4NjllYTFjNWY1ZDYyZTg1M2FlODQ3 MjdlM2QxZjFiYjBhMGZhYTlmZjU3NWVlZGU0NjFmNTAyYjkwY2EzOGU4ZWZmYWUwOTQ3OGVmZWRk MTYwOTAyMDJiZjAzNTMwZDAzZDBhMmFhNzA4MjVmYjI4YzYwNmI3NTQ1YmRkZTI2ZDYwNmMwNTky MTVhOWY5NDdlNjBjNGI1ZGU5YjM1YTM3MDRmNzNhNWM4YmM4ODExMzg3NDMxYjdlOTBmMWRkYzcx Y2YwNjk2NDk3ZmQ2NDBjYjliMWI4ODY2YmZmNWQ4NWU4NzllMGE3ODQ4NzIyZDM0Y2M2Mjg0NGFm Y2M2MzE4ZmU3M2VhODBlNDg0YzNlNjJmZWIwY2RlOTI2OWMwN2VkYzA2Nzk2ODNiYzU0MjdhMTYz YTRiNGFjNDYzODAyMjkzZjdjOTY4ZTQxODhlNzk2NmI1NTljMjU4MTU4MmM2N2VjZGEwYzliM2I4 ZWFjOTQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjg4ODYxMTVjMjMyNGRlZGUxM2Jl Njg5NTYwNWE0MzljNmVjNDhjYTQ2ZjNkODIxNzBiODYzZGNmMWFjYzI2MTc2NzY5NjI2ZGY4OTNl YmI3Y2U4Yzk0MzIwNTg2MzNkOAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 MzMxZjdlMDEwM2RlNDZkOTBkYmQ4ODVkYWRhZjY3YzU4OWJjNmIzY2FmMjVlNDVlMzI5ZDg2NGM4 NWI3YzlhZTE3YjI3Y2I5MmE4MWM5YjQ0MjFmNDMxMDE0Y2IwZTAzCi0rQ3RybC50eXBlID0gdHlw ZTpBCi0rT3V0cHV0ID0gNmU5YmI3NjgxZDU2NDU3ZmQ5M2FlYTZkNDA4NjBkZDkKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAxMDAxYjlmMTEwYjA1NDYxNzk2ZGIzYTBiNzUxNjM4YjU1MmU2MmEwNjJkN2I4OTE1OTFhYzc1 ZTIzN2Q0N2Y1ZjEyZDk3YTVkMTliZTA3MThjOGEyZmJkZDkxMDAyNDljMmQ5Y2E1OWJmNDkxYjEw YWZlZjc1ZjYxYzUzYWU5MjQ1NWU4Y2IwMTZlMjMwNDA4Yzg2OWVhMWM1ZjVkNjJlODUzYWU4NDcy N2UzZDFmMWJiMGEwZmFhOWZmNTc1ZWVkZTQ2MWY1MDJiOTBjYTM4ZThlZmZhZTA5NDc4ZWZlZGQx NjA5MDIwMmJmMDM1MzBkMDNkMGEyYWE3MDgyNWZiMjhjNjA2Yjc1NDViZGRlMjZkNjA2YzA1OTIx NWE5Zjk0N2U2MGM0YjVkZTliMzVhMzcwNGY3M2E1YzhiYzg4MTEzODc0MzFiN2U5MGYxZGRjNzFj ZjA2OTY0OTdmZDY0MGNiOWIxYjg4NjZiZmY1ZDg1ZTg3OWUwYTc4NDg3MjJkMzRjYzYyODQ0YWZj YzYzMThmZTczZWE4MGU0ODRjM2U2MmZlYjBjZGU5MjY5YzA3ZWRjMDY3OTY4M2JjNTQyN2ExNjNh NGI0YWM0NjM4MDIyOTNmN2M5NjhlNDE4OGU3OTY2YjU1OWMyNTgxNTgyYzY3ZWNkYTBjOWIzYjhl YWM5NAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ODg4NjExNWMyMzI0ZGVkZTEzYmU2 ODk1NjA1YTQzOWM2ZWM0OGNhNDZmM2Q4MjE3MGI4NjNkY2YxYWNjMjYxNzY3Njk2MjZkZjg5M2Vi YjdjZThjOTQzMjA1ODYzM2Q4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoz MzFmN2UwMTAzZGU0NmQ5MGRiZDg4NWRhZGFmNjdjNTg5YmM2YjNjYWYyNWU0NWUzMjlkODY0Yzg1 YjdjOWFlMTdiMjdjYjkyYTgxYzliNDQyMWY0MzEwMTRjYjBlMDMKLStDdHJsLnR5cGUgPSB0eXBl OkIKLStPdXRwdXQgPSA1ZDE5Y2U2YzZiMTZjNWYyMTc5NzUzYTdhYmRmZjNlNAotKwotK0tERiA9 IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDEwMDFiOWYxMTBiMDU0NjE3OTZkYjNhMGI3NTE2MzhiNTUyZTYyYTA2MmQ3Yjg5MTU5MWFjNzVl MjM3ZDQ3ZjVmMTJkOTdhNWQxOWJlMDcxOGM4YTJmYmRkOTEwMDI0OWMyZDljYTU5YmY0OTFiMTBh ZmVmNzVmNjFjNTNhZTkyNDU1ZThjYjAxNmUyMzA0MDhjODY5ZWExYzVmNWQ2MmU4NTNhZTg0NzI3 ZTNkMWYxYmIwYTBmYWE5ZmY1NzVlZWRlNDYxZjUwMmI5MGNhMzhlOGVmZmFlMDk0NzhlZmVkZDE2 MDkwMjAyYmYwMzUzMGQwM2QwYTJhYTcwODI1ZmIyOGM2MDZiNzU0NWJkZGUyNmQ2MDZjMDU5MjE1 YTlmOTQ3ZTYwYzRiNWRlOWIzNWEzNzA0ZjczYTVjOGJjODgxMTM4NzQzMWI3ZTkwZjFkZGM3MWNm MDY5NjQ5N2ZkNjQwY2I5YjFiODg2NmJmZjVkODVlODc5ZTBhNzg0ODcyMmQzNGNjNjI4NDRhZmNj NjMxOGZlNzNlYTgwZTQ4NGMzZTYyZmViMGNkZTkyNjljMDdlZGMwNjc5NjgzYmM1NDI3YTE2M2E0 YjRhYzQ2MzgwMjI5M2Y3Yzk2OGU0MTg4ZTc5NjZiNTU5YzI1ODE1ODJjNjdlY2RhMGM5YjNiOGVh Yzk0Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo4ODg2MTE1YzIzMjRkZWRlMTNiZTY4 OTU2MDVhNDM5YzZlYzQ4Y2E0NmYzZDgyMTcwYjg2M2RjZjFhY2MyNjE3Njc2OTYyNmRmODkzZWJi N2NlOGM5NDMyMDU4NjMzZDgKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjMz MWY3ZTAxMDNkZTQ2ZDkwZGJkODg1ZGFkYWY2N2M1ODliYzZiM2NhZjI1ZTQ1ZTMyOWQ4NjRjODVi N2M5YWUxN2IyN2NiOTJhODFjOWI0NDIxZjQzMTAxNGNiMGUwMwotK0N0cmwudHlwZSA9IHR5cGU6 QwotK091dHB1dCA9IGM1NTA0MTZlOGVhMDYwOGEwOTA1MWNmZmZlMDQ5NGU3Ci0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MTAwMWI5ZjExMGIwNTQ2MTc5NmRiM2EwYjc1MTYzOGI1NTJlNjJhMDYyZDdiODkxNTkxYWM3NWUy MzdkNDdmNWYxMmQ5N2E1ZDE5YmUwNzE4YzhhMmZiZGQ5MTAwMjQ5YzJkOWNhNTliZjQ5MWIxMGFm ZWY3NWY2MWM1M2FlOTI0NTVlOGNiMDE2ZTIzMDQwOGM4NjllYTFjNWY1ZDYyZTg1M2FlODQ3Mjdl M2QxZjFiYjBhMGZhYTlmZjU3NWVlZGU0NjFmNTAyYjkwY2EzOGU4ZWZmYWUwOTQ3OGVmZWRkMTYw OTAyMDJiZjAzNTMwZDAzZDBhMmFhNzA4MjVmYjI4YzYwNmI3NTQ1YmRkZTI2ZDYwNmMwNTkyMTVh OWY5NDdlNjBjNGI1ZGU5YjM1YTM3MDRmNzNhNWM4YmM4ODExMzg3NDMxYjdlOTBmMWRkYzcxY2Yw Njk2NDk3ZmQ2NDBjYjliMWI4ODY2YmZmNWQ4NWU4NzllMGE3ODQ4NzIyZDM0Y2M2Mjg0NGFmY2M2 MzE4ZmU3M2VhODBlNDg0YzNlNjJmZWIwY2RlOTI2OWMwN2VkYzA2Nzk2ODNiYzU0MjdhMTYzYTRi NGFjNDYzODAyMjkzZjdjOTY4ZTQxODhlNzk2NmI1NTljMjU4MTU4MmM2N2VjZGEwYzliM2I4ZWFj OTQKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjg4ODYxMTVjMjMyNGRlZGUxM2JlNjg5 NTYwNWE0MzljNmVjNDhjYTQ2ZjNkODIxNzBiODYzZGNmMWFjYzI2MTc2NzY5NjI2ZGY4OTNlYmI3 Y2U4Yzk0MzIwNTg2MzNkOAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MzMx ZjdlMDEwM2RlNDZkOTBkYmQ4ODVkYWRhZjY3YzU4OWJjNmIzY2FmMjVlNDVlMzI5ZDg2NGM4NWI3 YzlhZTE3YjI3Y2I5MmE4MWM5YjQ0MjFmNDMxMDE0Y2IwZTAzCi0rQ3RybC50eXBlID0gdHlwZTpE Ci0rT3V0cHV0ID0gMzNjOWYzZjAzZGUzOTVjZWYwNjc2ODRjYjViOTUyMDAKLSsKLStLREYgPSBT U0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAx MDAxYjlmMTEwYjA1NDYxNzk2ZGIzYTBiNzUxNjM4YjU1MmU2MmEwNjJkN2I4OTE1OTFhYzc1ZTIz N2Q0N2Y1ZjEyZDk3YTVkMTliZTA3MThjOGEyZmJkZDkxMDAyNDljMmQ5Y2E1OWJmNDkxYjEwYWZl Zjc1ZjYxYzUzYWU5MjQ1NWU4Y2IwMTZlMjMwNDA4Yzg2OWVhMWM1ZjVkNjJlODUzYWU4NDcyN2Uz ZDFmMWJiMGEwZmFhOWZmNTc1ZWVkZTQ2MWY1MDJiOTBjYTM4ZThlZmZhZTA5NDc4ZWZlZGQxNjA5 MDIwMmJmMDM1MzBkMDNkMGEyYWE3MDgyNWZiMjhjNjA2Yjc1NDViZGRlMjZkNjA2YzA1OTIxNWE5 Zjk0N2U2MGM0YjVkZTliMzVhMzcwNGY3M2E1YzhiYzg4MTEzODc0MzFiN2U5MGYxZGRjNzFjZjA2 OTY0OTdmZDY0MGNiOWIxYjg4NjZiZmY1ZDg1ZTg3OWUwYTc4NDg3MjJkMzRjYzYyODQ0YWZjYzYz MThmZTczZWE4MGU0ODRjM2U2MmZlYjBjZGU5MjY5YzA3ZWRjMDY3OTY4M2JjNTQyN2ExNjNhNGI0 YWM0NjM4MDIyOTNmN2M5NjhlNDE4OGU3OTY2YjU1OWMyNTgxNTgyYzY3ZWNkYTBjOWIzYjhlYWM5 NAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ODg4NjExNWMyMzI0ZGVkZTEzYmU2ODk1 NjA1YTQzOWM2ZWM0OGNhNDZmM2Q4MjE3MGI4NjNkY2YxYWNjMjYxNzY3Njk2MjZkZjg5M2ViYjdj ZThjOTQzMjA1ODYzM2Q4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDozMzFm N2UwMTAzZGU0NmQ5MGRiZDg4NWRhZGFmNjdjNTg5YmM2YjNjYWYyNWU0NWUzMjlkODY0Yzg1Yjdj OWFlMTdiMjdjYjkyYTgxYzliNDQyMWY0MzEwMTRjYjBlMDMKLStDdHJsLnR5cGUgPSB0eXBlOkUK LStPdXRwdXQgPSA5OTA3MWIwNjE1YmRlYzA4ZDA0MGU3MzE4MjgwMjhmYWM5YTE2ZDM2N2I4NmQy ZDEzMDJiNjA3Y2QzOWFjOTY3OGFlN2Y5Zjg3ZWI2MTlmZTJiYTc1ZDU0ZGEzYjA3ZDEKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6 MDAwMDAxMDAxYjlmMTEwYjA1NDYxNzk2ZGIzYTBiNzUxNjM4YjU1MmU2MmEwNjJkN2I4OTE1OTFh Yzc1ZTIzN2Q0N2Y1ZjEyZDk3YTVkMTliZTA3MThjOGEyZmJkZDkxMDAyNDljMmQ5Y2E1OWJmNDkx YjEwYWZlZjc1ZjYxYzUzYWU5MjQ1NWU4Y2IwMTZlMjMwNDA4Yzg2OWVhMWM1ZjVkNjJlODUzYWU4 NDcyN2UzZDFmMWJiMGEwZmFhOWZmNTc1ZWVkZTQ2MWY1MDJiOTBjYTM4ZThlZmZhZTA5NDc4ZWZl ZGQxNjA5MDIwMmJmMDM1MzBkMDNkMGEyYWE3MDgyNWZiMjhjNjA2Yjc1NDViZGRlMjZkNjA2YzA1 OTIxNWE5Zjk0N2U2MGM0YjVkZTliMzVhMzcwNGY3M2E1YzhiYzg4MTEzODc0MzFiN2U5MGYxZGRj NzFjZjA2OTY0OTdmZDY0MGNiOWIxYjg4NjZiZmY1ZDg1ZTg3OWUwYTc4NDg3MjJkMzRjYzYyODQ0 YWZjYzYzMThmZTczZWE4MGU0ODRjM2U2MmZlYjBjZGU5MjY5YzA3ZWRjMDY3OTY4M2JjNTQyN2Ex NjNhNGI0YWM0NjM4MDIyOTNmN2M5NjhlNDE4OGU3OTY2YjU1OWMyNTgxNTgyYzY3ZWNkYTBjOWIz YjhlYWM5NAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ODg4NjExNWMyMzI0ZGVkZTEz YmU2ODk1NjA1YTQzOWM2ZWM0OGNhNDZmM2Q4MjE3MGI4NjNkY2YxYWNjMjYxNzY3Njk2MjZkZjg5 M2ViYjdjZThjOTQzMjA1ODYzM2Q4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDozMzFmN2UwMTAzZGU0NmQ5MGRiZDg4NWRhZGFmNjdjNTg5YmM2YjNjYWYyNWU0NWUzMjlkODY0 Yzg1YjdjOWFlMTdiMjdjYjkyYTgxYzliNDQyMWY0MzEwMTRjYjBlMDMKLStDdHJsLnR5cGUgPSB0 eXBlOkYKLStPdXRwdXQgPSBhMTFmYzUzOWM0NmQ5MzE0NjQ1ZTFmNzUxN2UxOTc5NGE2YmE0YmY3 ZDdkNWE2ZjcxYmNiNDYyMWJmZGVkZWFlM2JiY2FhNjJmYjYzOGQ5OTRkMWYyMWQxNGY1Nzc3ZDcK LSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBo ZXhrZXk6MDAwMDAxMDA0ZGI1MzA1MTY4NzZmYjk5MzdiYzJkYTE2MTE3Zjk2NzVjNzIxZGE2Yjgw Y2Q0OWU2YjZlYjBkZjZmZTRhZjkwYWU3NTUzNzhlNzdlMjhkYmMzNzZlMDAwOTAzYjEzNjVhN2Iz Y2RkZmFmMTk0MTBiMzFhZTQ0ZTNlNjY0MWM1ZDQ3MDAyYWM1YjI2MWIxYzRmN2YzMDFjOGQxNmE5 MTcxMzVjMjNiZjdmODRmMTVhNjE0M2U3ZTM0NjZjNTJlMWUzYzMwMDI2ZjE1ZDUyNTRkYTExY2Vk MWI4MTc3Mzk3NjhkZTk5MTNhY2EyZDgwOGFjYWEzMWU5MzM3NjNlYjQzODIzOGIzNDdhNmJkMDc4 MzRkNGY2NjE2OTBjZGIyMzcyYjQyMDVhYTlhZDgwZGY0MDM0MGMxZDBiMWRiMzIwZGYxZDFiMTNm YTJmZjRiOWVlNDUwMGM5ZDAzZjQ1ZTc1ZmIxNWE5N2I4MzNhYjk4Mjc3MDhlNGJjYThmZWE1NjJk NjlmZWE1NzNjYTdiNTkwNWM3MWU1MWRjOWYyNGE3NGJkMGM1OTYwNTEwNjZhY2RlYjY2ZWIzOWM3 NmZhYjY2YjEwYmRjODhlMWI3MmJiYThhYWZhMzQyMDg4Y2Q0YTczOWExOGU2MWM3NWJlNmI1ZGYw OTA0ZGM1MDk0ZjBkZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MTJjZTNlNmE1NDA3 OTQzODMxZDY1NjA4YzlmZDU5Yzk3MjY4OTEzNjI4OWFmMDYwNzFjMDE1ZjhhNDFjOWQxNTM2ZDBh ZmRhZDA4NDMyMmY4MzI0MTVmYmYxOTlkMDQ0Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDo5MzljNDE3MzRhYTNkYjlkOWRmYWM3YTdkYjU0Yzg4OWRhMzhkOGJiZTAwMzI2ZjU1 OWEzYjBmOTJhOTZiNWFjM2E0NTRkODM1NWNjZDBmMzEwOTkwMjFkMGVlNDMwNjMKLStDdHJsLnR5 cGUgPSB0eXBlOkEKLStPdXRwdXQgPSA4NzY2OTI1OTVmYmYxMjM5ZTAzYjFlYjI4ODkwY2VkZgot KwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhl eGtleTowMDAwMDEwMDRkYjUzMDUxNjg3NmZiOTkzN2JjMmRhMTYxMTdmOTY3NWM3MjFkYTZiODBj ZDQ5ZTZiNmViMGRmNmZlNGFmOTBhZTc1NTM3OGU3N2UyOGRiYzM3NmUwMDA5MDNiMTM2NWE3YjNj ZGRmYWYxOTQxMGIzMWFlNDRlM2U2NjQxYzVkNDcwMDJhYzViMjYxYjFjNGY3ZjMwMWM4ZDE2YTkx NzEzNWMyM2JmN2Y4NGYxNWE2MTQzZTdlMzQ2NmM1MmUxZTNjMzAwMjZmMTVkNTI1NGRhMTFjZWQx YjgxNzczOTc2OGRlOTkxM2FjYTJkODA4YWNhYTMxZTkzMzc2M2ViNDM4MjM4YjM0N2E2YmQwNzgz NGQ0ZjY2MTY5MGNkYjIzNzJiNDIwNWFhOWFkODBkZjQwMzQwYzFkMGIxZGIzMjBkZjFkMWIxM2Zh MmZmNGI5ZWU0NTAwYzlkMDNmNDVlNzVmYjE1YTk3YjgzM2FiOTgyNzcwOGU0YmNhOGZlYTU2MmQ2 OWZlYTU3M2NhN2I1OTA1YzcxZTUxZGM5ZjI0YTc0YmQwYzU5NjA1MTA2NmFjZGViNjZlYjM5Yzc2 ZmFiNjZiMTBiZGM4OGUxYjcyYmJhOGFhZmEzNDIwODhjZDRhNzM5YTE4ZTYxYzc1YmU2YjVkZjA5 MDRkYzUwOTRmMGRmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoxMmNlM2U2YTU0MDc5 NDM4MzFkNjU2MDhjOWZkNTljOTcyNjg5MTM2Mjg5YWYwNjA3MWMwMTVmOGE0MWM5ZDE1MzZkMGFm ZGFkMDg0MzIyZjgzMjQxNWZiZjE5OWQwNDQKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNz aW9uX2lkOjkzOWM0MTczNGFhM2RiOWQ5ZGZhYzdhN2RiNTRjODg5ZGEzOGQ4YmJlMDAzMjZmNTU5 YTNiMGY5MmE5NmI1YWMzYTQ1NGQ4MzU1Y2NkMGYzMTA5OTAyMWQwZWU0MzA2MwotK0N0cmwudHlw ZSA9IHR5cGU6QgotK091dHB1dCA9IDQzOGFmZDdlYWU4NDU0Njc1ZWQ1OTY0MTIyZmNiYjllCi0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMTAwNGRiNTMwNTE2ODc2ZmI5OTM3YmMyZGExNjExN2Y5Njc1YzcyMWRhNmI4MGNk NDllNmI2ZWIwZGY2ZmU0YWY5MGFlNzU1Mzc4ZTc3ZTI4ZGJjMzc2ZTAwMDkwM2IxMzY1YTdiM2Nk ZGZhZjE5NDEwYjMxYWU0NGUzZTY2NDFjNWQ0NzAwMmFjNWIyNjFiMWM0ZjdmMzAxYzhkMTZhOTE3 MTM1YzIzYmY3Zjg0ZjE1YTYxNDNlN2UzNDY2YzUyZTFlM2MzMDAyNmYxNWQ1MjU0ZGExMWNlZDFi ODE3NzM5NzY4ZGU5OTEzYWNhMmQ4MDhhY2FhMzFlOTMzNzYzZWI0MzgyMzhiMzQ3YTZiZDA3ODM0 ZDRmNjYxNjkwY2RiMjM3MmI0MjA1YWE5YWQ4MGRmNDAzNDBjMWQwYjFkYjMyMGRmMWQxYjEzZmEy ZmY0YjllZTQ1MDBjOWQwM2Y0NWU3NWZiMTVhOTdiODMzYWI5ODI3NzA4ZTRiY2E4ZmVhNTYyZDY5 ZmVhNTczY2E3YjU5MDVjNzFlNTFkYzlmMjRhNzRiZDBjNTk2MDUxMDY2YWNkZWI2NmViMzljNzZm YWI2NmIxMGJkYzg4ZTFiNzJiYmE4YWFmYTM0MjA4OGNkNGE3MzlhMThlNjFjNzViZTZiNWRmMDkw NGRjNTA5NGYwZGYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjEyY2UzZTZhNTQwNzk0 MzgzMWQ2NTYwOGM5ZmQ1OWM5NzI2ODkxMzYyODlhZjA2MDcxYzAxNWY4YTQxYzlkMTUzNmQwYWZk YWQwODQzMjJmODMyNDE1ZmJmMTk5ZDA0NAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6OTM5YzQxNzM0YWEzZGI5ZDlkZmFjN2E3ZGI1NGM4ODlkYTM4ZDhiYmUwMDMyNmY1NTlh M2IwZjkyYTk2YjVhYzNhNDU0ZDgzNTVjY2QwZjMxMDk5MDIxZDBlZTQzMDYzCi0rQ3RybC50eXBl ID0gdHlwZTpDCi0rT3V0cHV0ID0gYjljYzBlMjcxOGM1ODUzZTBhZWJiNDM0MDlmY2FhZWYKLSsK LStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhr ZXk6MDAwMDAxMDA0ZGI1MzA1MTY4NzZmYjk5MzdiYzJkYTE2MTE3Zjk2NzVjNzIxZGE2YjgwY2Q0 OWU2YjZlYjBkZjZmZTRhZjkwYWU3NTUzNzhlNzdlMjhkYmMzNzZlMDAwOTAzYjEzNjVhN2IzY2Rk ZmFmMTk0MTBiMzFhZTQ0ZTNlNjY0MWM1ZDQ3MDAyYWM1YjI2MWIxYzRmN2YzMDFjOGQxNmE5MTcx MzVjMjNiZjdmODRmMTVhNjE0M2U3ZTM0NjZjNTJlMWUzYzMwMDI2ZjE1ZDUyNTRkYTExY2VkMWI4 MTc3Mzk3NjhkZTk5MTNhY2EyZDgwOGFjYWEzMWU5MzM3NjNlYjQzODIzOGIzNDdhNmJkMDc4MzRk NGY2NjE2OTBjZGIyMzcyYjQyMDVhYTlhZDgwZGY0MDM0MGMxZDBiMWRiMzIwZGYxZDFiMTNmYTJm ZjRiOWVlNDUwMGM5ZDAzZjQ1ZTc1ZmIxNWE5N2I4MzNhYjk4Mjc3MDhlNGJjYThmZWE1NjJkNjlm ZWE1NzNjYTdiNTkwNWM3MWU1MWRjOWYyNGE3NGJkMGM1OTYwNTEwNjZhY2RlYjY2ZWIzOWM3NmZh YjY2YjEwYmRjODhlMWI3MmJiYThhYWZhMzQyMDg4Y2Q0YTczOWExOGU2MWM3NWJlNmI1ZGYwOTA0 ZGM1MDk0ZjBkZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MTJjZTNlNmE1NDA3OTQz ODMxZDY1NjA4YzlmZDU5Yzk3MjY4OTEzNjI4OWFmMDYwNzFjMDE1ZjhhNDFjOWQxNTM2ZDBhZmRh ZDA4NDMyMmY4MzI0MTVmYmYxOTlkMDQ0Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDo5MzljNDE3MzRhYTNkYjlkOWRmYWM3YTdkYjU0Yzg4OWRhMzhkOGJiZTAwMzI2ZjU1OWEz YjBmOTJhOTZiNWFjM2E0NTRkODM1NWNjZDBmMzEwOTkwMjFkMGVlNDMwNjMKLStDdHJsLnR5cGUg PSB0eXBlOkQKLStPdXRwdXQgPSA4ZGVmOWY5M2U2MzNhYzJkMjhhN2M1Yjc2NTY3YTRjYgotKwot K0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDEwMDRkYjUzMDUxNjg3NmZiOTkzN2JjMmRhMTYxMTdmOTY3NWM3MjFkYTZiODBjZDQ5 ZTZiNmViMGRmNmZlNGFmOTBhZTc1NTM3OGU3N2UyOGRiYzM3NmUwMDA5MDNiMTM2NWE3YjNjZGRm YWYxOTQxMGIzMWFlNDRlM2U2NjQxYzVkNDcwMDJhYzViMjYxYjFjNGY3ZjMwMWM4ZDE2YTkxNzEz NWMyM2JmN2Y4NGYxNWE2MTQzZTdlMzQ2NmM1MmUxZTNjMzAwMjZmMTVkNTI1NGRhMTFjZWQxYjgx NzczOTc2OGRlOTkxM2FjYTJkODA4YWNhYTMxZTkzMzc2M2ViNDM4MjM4YjM0N2E2YmQwNzgzNGQ0 ZjY2MTY5MGNkYjIzNzJiNDIwNWFhOWFkODBkZjQwMzQwYzFkMGIxZGIzMjBkZjFkMWIxM2ZhMmZm NGI5ZWU0NTAwYzlkMDNmNDVlNzVmYjE1YTk3YjgzM2FiOTgyNzcwOGU0YmNhOGZlYTU2MmQ2OWZl YTU3M2NhN2I1OTA1YzcxZTUxZGM5ZjI0YTc0YmQwYzU5NjA1MTA2NmFjZGViNjZlYjM5Yzc2ZmFi NjZiMTBiZGM4OGUxYjcyYmJhOGFhZmEzNDIwODhjZDRhNzM5YTE4ZTYxYzc1YmU2YjVkZjA5MDRk YzUwOTRmMGRmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoxMmNlM2U2YTU0MDc5NDM4 MzFkNjU2MDhjOWZkNTljOTcyNjg5MTM2Mjg5YWYwNjA3MWMwMTVmOGE0MWM5ZDE1MzZkMGFmZGFk MDg0MzIyZjgzMjQxNWZiZjE5OWQwNDQKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9u X2lkOjkzOWM0MTczNGFhM2RiOWQ5ZGZhYzdhN2RiNTRjODg5ZGEzOGQ4YmJlMDAzMjZmNTU5YTNi MGY5MmE5NmI1YWMzYTQ1NGQ4MzU1Y2NkMGYzMTA5OTAyMWQwZWU0MzA2MwotK0N0cmwudHlwZSA9 IHR5cGU6RQotK091dHB1dCA9IDNkODBlZDIwZjA3MDM4NTcxNTRiZGE4NTMxYjEyYjk2Y2Y3M2Fl ZGZjNjYyZGY2ZmFmMjc3MzIxYmU2ZTM4YzkwNGJmYmQ1ZjkyMDY2MDc2ODRhYzMzMWRmYzkyYmJi YgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9 IGhleGtleTowMDAwMDEwMDRkYjUzMDUxNjg3NmZiOTkzN2JjMmRhMTYxMTdmOTY3NWM3MjFkYTZi ODBjZDQ5ZTZiNmViMGRmNmZlNGFmOTBhZTc1NTM3OGU3N2UyOGRiYzM3NmUwMDA5MDNiMTM2NWE3 YjNjZGRmYWYxOTQxMGIzMWFlNDRlM2U2NjQxYzVkNDcwMDJhYzViMjYxYjFjNGY3ZjMwMWM4ZDE2 YTkxNzEzNWMyM2JmN2Y4NGYxNWE2MTQzZTdlMzQ2NmM1MmUxZTNjMzAwMjZmMTVkNTI1NGRhMTFj ZWQxYjgxNzczOTc2OGRlOTkxM2FjYTJkODA4YWNhYTMxZTkzMzc2M2ViNDM4MjM4YjM0N2E2YmQw NzgzNGQ0ZjY2MTY5MGNkYjIzNzJiNDIwNWFhOWFkODBkZjQwMzQwYzFkMGIxZGIzMjBkZjFkMWIx M2ZhMmZmNGI5ZWU0NTAwYzlkMDNmNDVlNzVmYjE1YTk3YjgzM2FiOTgyNzcwOGU0YmNhOGZlYTU2 MmQ2OWZlYTU3M2NhN2I1OTA1YzcxZTUxZGM5ZjI0YTc0YmQwYzU5NjA1MTA2NmFjZGViNjZlYjM5 Yzc2ZmFiNjZiMTBiZGM4OGUxYjcyYmJhOGFhZmEzNDIwODhjZDRhNzM5YTE4ZTYxYzc1YmU2YjVk ZjA5MDRkYzUwOTRmMGRmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoxMmNlM2U2YTU0 MDc5NDM4MzFkNjU2MDhjOWZkNTljOTcyNjg5MTM2Mjg5YWYwNjA3MWMwMTVmOGE0MWM5ZDE1MzZk MGFmZGFkMDg0MzIyZjgzMjQxNWZiZjE5OWQwNDQKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhz ZXNzaW9uX2lkOjkzOWM0MTczNGFhM2RiOWQ5ZGZhYzdhN2RiNTRjODg5ZGEzOGQ4YmJlMDAzMjZm NTU5YTNiMGY5MmE5NmI1YWMzYTQ1NGQ4MzU1Y2NkMGYzMTA5OTAyMWQwZWU0MzA2MwotK0N0cmwu dHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDczNmU3N2FkNWE4ZmFjODM1Nzk1YWIwODUyMmQ4MzRl MzRhNGNiYzQ4NDM5ZGIyODQ1Y2IxZDg2MzZhNGRjZmQ0OWE3YWM1NDEzNzEzYTgxNzdjMjc3ZWVh ZDk2YTBmZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhl eGtleSA9IGhleGtleTowMDAwMDEwMDRkN2JhM2U5MDllMWUyODg2ZTAwZGIzMzM0MzBkN2NlYmU1 MTA3ZTk3MDE2NzJhMmExYmMwYmI1NDYxYzYyMGM1NmZjOGE4YWE5NWE1NzdjZjQ4YWMyZTViMzVk OTQ4ZTQ2OGJiYzYyMzI1MjdmNmE0ZTNiZjVlYTBiMmY2OGIxNjFlZTNhYWRlZWY1OTZjNjgzZTUx MWJlYzFmZjcwZGYzMTJkOTg4ZWRkZDU1Nzk1MjcyMGY4MmY2OTg4MjEwN2Y2Nzg4MGUzOGVmY2Nh Njg0MjkzNzRkODU4MzFlZWEzYWMxMzNhNmE4OWI2OGE5ZWMyN2M3MWE2N2M4N2FkZGZkZGI3MDQw YTc0MTZlYWQ0M2UyOTYxMmRjZGM1YjdlNmE4MmFkNWNkMjQzZThhNmRkMjk5N2M0NGFkNzZhMmEy MDE0NWY4OWQ3ZTZiMmEyNmMyYzBmMmNlN2Q2MGIxZjQ1NDEwZjllYmI3OWI1MmRkZTU2MGY4Yzdj OTliN2ExMWQ2NDVmNmFkNmY5NDcyN2NkMmVhOWQ0OGNlYjI3NDY3ZWU2MDM3MWU2OTE5YTNhZTA0 NGM4OTQxYTY1MTgyYzk0ZThlZmQ3YjVjN2ViNDU5MzViYWVhNzIyNjI4ZDg5ZDg5ZGU5OTVkODJi NjIwMDU5ZmUxMDU0OTI3ODY0YTkxCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpmM2Nj Mzg0MjdhZGYwMWI5NDgzZDFmOWU0ZTlhY2VmNTU0YThjN2QwZDhkYzA4OGQzODY1ZjA1YmMwNmE0 ZmYxMWVmYmJkYmNhN2FiMGUwYzBlMmRmNTVhOTNmMGI0YjkKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOmFhZTg3OWQ4YzBjNjc2MmQyOGMzMGZkYzcwN2IxNjlhMjE1NWY4Yjhh OTQzY2VkMzk5YTU2NDE5YmU4OWNjOWY2NmJhOTI4MmQ4NWFjNGU1M2UwZDVhZTI3YWRjZjM5Mwot K0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IGM4NGE0ZmNkNGFkZTI4ODA1YjAzMjE3NDQy OGE2ZjI3Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMTAwNGQ3YmEzZTkwOWUxZTI4ODZlMDBkYjMzMzQzMGQ3Y2ViZTUx MDdlOTcwMTY3MmEyYTFiYzBiYjU0NjFjNjIwYzU2ZmM4YThhYTk1YTU3N2NmNDhhYzJlNWIzNWQ5 NDhlNDY4YmJjNjIzMjUyN2Y2YTRlM2JmNWVhMGIyZjY4YjE2MWVlM2FhZGVlZjU5NmM2ODNlNTEx YmVjMWZmNzBkZjMxMmQ5ODhlZGRkNTU3OTUyNzIwZjgyZjY5ODgyMTA3ZjY3ODgwZTM4ZWZjY2E2 ODQyOTM3NGQ4NTgzMWVlYTNhYzEzM2E2YTg5YjY4YTllYzI3YzcxYTY3Yzg3YWRkZmRkYjcwNDBh NzQxNmVhZDQzZTI5NjEyZGNkYzViN2U2YTgyYWQ1Y2QyNDNlOGE2ZGQyOTk3YzQ0YWQ3NmEyYTIw MTQ1Zjg5ZDdlNmIyYTI2YzJjMGYyY2U3ZDYwYjFmNDU0MTBmOWViYjc5YjUyZGRlNTYwZjhjN2M5 OWI3YTExZDY0NWY2YWQ2Zjk0NzI3Y2QyZWE5ZDQ4Y2ViMjc0NjdlZTYwMzcxZTY5MTlhM2FlMDQ0 Yzg5NDFhNjUxODJjOTRlOGVmZDdiNWM3ZWI0NTkzNWJhZWE3MjI2MjhkODlkODlkZTk5NWQ4MmI2 MjAwNTlmZTEwNTQ5Mjc4NjRhOTEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmYzY2Mz ODQyN2FkZjAxYjk0ODNkMWY5ZTRlOWFjZWY1NTRhOGM3ZDBkOGRjMDg4ZDM4NjVmMDViYzA2YTRm ZjExZWZiYmRiY2E3YWIwZTBjMGUyZGY1NWE5M2YwYjRiOQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6YWFlODc5ZDhjMGM2NzYyZDI4YzMwZmRjNzA3YjE2OWEyMTU1ZjhiOGE5 NDNjZWQzOTlhNTY0MTliZTg5Y2M5ZjY2YmE5MjgyZDg1YWM0ZTUzZTBkNWFlMjdhZGNmMzkzCi0r Q3RybC50eXBlID0gdHlwZTpCCi0rT3V0cHV0ID0gMjdiMGRlNjlmM2JjN2Q3OWQyZjZiNTQxMDFm M2UxMGYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAxMDA0ZDdiYTNlOTA5ZTFlMjg4NmUwMGRiMzMzNDMwZDdjZWJlNTEw N2U5NzAxNjcyYTJhMWJjMGJiNTQ2MWM2MjBjNTZmYzhhOGFhOTVhNTc3Y2Y0OGFjMmU1YjM1ZDk0 OGU0NjhiYmM2MjMyNTI3ZjZhNGUzYmY1ZWEwYjJmNjhiMTYxZWUzYWFkZWVmNTk2YzY4M2U1MTFi ZWMxZmY3MGRmMzEyZDk4OGVkZGQ1NTc5NTI3MjBmODJmNjk4ODIxMDdmNjc4ODBlMzhlZmNjYTY4 NDI5Mzc0ZDg1ODMxZWVhM2FjMTMzYTZhODliNjhhOWVjMjdjNzFhNjdjODdhZGRmZGRiNzA0MGE3 NDE2ZWFkNDNlMjk2MTJkY2RjNWI3ZTZhODJhZDVjZDI0M2U4YTZkZDI5OTdjNDRhZDc2YTJhMjAx NDVmODlkN2U2YjJhMjZjMmMwZjJjZTdkNjBiMWY0NTQxMGY5ZWJiNzliNTJkZGU1NjBmOGM3Yzk5 YjdhMTFkNjQ1ZjZhZDZmOTQ3MjdjZDJlYTlkNDhjZWIyNzQ2N2VlNjAzNzFlNjkxOWEzYWUwNDRj ODk0MWE2NTE4MmM5NGU4ZWZkN2I1YzdlYjQ1OTM1YmFlYTcyMjYyOGQ4OWQ4OWRlOTk1ZDgyYjYy MDA1OWZlMTA1NDkyNzg2NGE5MQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6ZjNjYzM4 NDI3YWRmMDFiOTQ4M2QxZjllNGU5YWNlZjU1NGE4YzdkMGQ4ZGMwODhkMzg2NWYwNWJjMDZhNGZm MTFlZmJiZGJjYTdhYjBlMGMwZTJkZjU1YTkzZjBiNGI5Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDphYWU4NzlkOGMwYzY3NjJkMjhjMzBmZGM3MDdiMTY5YTIxNTVmOGI4YTk0 M2NlZDM5OWE1NjQxOWJlODljYzlmNjZiYTkyODJkODVhYzRlNTNlMGQ1YWUyN2FkY2YzOTMKLStD dHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAzMjAwYzM5ZTZlZDI2MGY0ZjM0NWNiZDBjODhj YWMxYQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtl eSA9IGhleGtleTowMDAwMDEwMDRkN2JhM2U5MDllMWUyODg2ZTAwZGIzMzM0MzBkN2NlYmU1MTA3 ZTk3MDE2NzJhMmExYmMwYmI1NDYxYzYyMGM1NmZjOGE4YWE5NWE1NzdjZjQ4YWMyZTViMzVkOTQ4 ZTQ2OGJiYzYyMzI1MjdmNmE0ZTNiZjVlYTBiMmY2OGIxNjFlZTNhYWRlZWY1OTZjNjgzZTUxMWJl YzFmZjcwZGYzMTJkOTg4ZWRkZDU1Nzk1MjcyMGY4MmY2OTg4MjEwN2Y2Nzg4MGUzOGVmY2NhNjg0 MjkzNzRkODU4MzFlZWEzYWMxMzNhNmE4OWI2OGE5ZWMyN2M3MWE2N2M4N2FkZGZkZGI3MDQwYTc0 MTZlYWQ0M2UyOTYxMmRjZGM1YjdlNmE4MmFkNWNkMjQzZThhNmRkMjk5N2M0NGFkNzZhMmEyMDE0 NWY4OWQ3ZTZiMmEyNmMyYzBmMmNlN2Q2MGIxZjQ1NDEwZjllYmI3OWI1MmRkZTU2MGY4YzdjOTli N2ExMWQ2NDVmNmFkNmY5NDcyN2NkMmVhOWQ0OGNlYjI3NDY3ZWU2MDM3MWU2OTE5YTNhZTA0NGM4 OTQxYTY1MTgyYzk0ZThlZmQ3YjVjN2ViNDU5MzViYWVhNzIyNjI4ZDg5ZDg5ZGU5OTVkODJiNjIw MDU5ZmUxMDU0OTI3ODY0YTkxCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpmM2NjMzg0 MjdhZGYwMWI5NDgzZDFmOWU0ZTlhY2VmNTU0YThjN2QwZDhkYzA4OGQzODY1ZjA1YmMwNmE0ZmYx MWVmYmJkYmNhN2FiMGUwYzBlMmRmNTVhOTNmMGI0YjkKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOmFhZTg3OWQ4YzBjNjc2MmQyOGMzMGZkYzcwN2IxNjlhMjE1NWY4YjhhOTQz Y2VkMzk5YTU2NDE5YmU4OWNjOWY2NmJhOTI4MmQ4NWFjNGU1M2UwZDVhZTI3YWRjZjM5MwotK0N0 cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDdiOWU1MDZhMWJhZWRlOWI4MGRmZjA5MjUzYTlh Yjg4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMTAwNGQ3YmEzZTkwOWUxZTI4ODZlMDBkYjMzMzQzMGQ3Y2ViZTUxMDdl OTcwMTY3MmEyYTFiYzBiYjU0NjFjNjIwYzU2ZmM4YThhYTk1YTU3N2NmNDhhYzJlNWIzNWQ5NDhl NDY4YmJjNjIzMjUyN2Y2YTRlM2JmNWVhMGIyZjY4YjE2MWVlM2FhZGVlZjU5NmM2ODNlNTExYmVj MWZmNzBkZjMxMmQ5ODhlZGRkNTU3OTUyNzIwZjgyZjY5ODgyMTA3ZjY3ODgwZTM4ZWZjY2E2ODQy OTM3NGQ4NTgzMWVlYTNhYzEzM2E2YTg5YjY4YTllYzI3YzcxYTY3Yzg3YWRkZmRkYjcwNDBhNzQx NmVhZDQzZTI5NjEyZGNkYzViN2U2YTgyYWQ1Y2QyNDNlOGE2ZGQyOTk3YzQ0YWQ3NmEyYTIwMTQ1 Zjg5ZDdlNmIyYTI2YzJjMGYyY2U3ZDYwYjFmNDU0MTBmOWViYjc5YjUyZGRlNTYwZjhjN2M5OWI3 YTExZDY0NWY2YWQ2Zjk0NzI3Y2QyZWE5ZDQ4Y2ViMjc0NjdlZTYwMzcxZTY5MTlhM2FlMDQ0Yzg5 NDFhNjUxODJjOTRlOGVmZDdiNWM3ZWI0NTkzNWJhZWE3MjI2MjhkODlkODlkZTk5NWQ4MmI2MjAw NTlmZTEwNTQ5Mjc4NjRhOTEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmYzY2MzODQy N2FkZjAxYjk0ODNkMWY5ZTRlOWFjZWY1NTRhOGM3ZDBkOGRjMDg4ZDM4NjVmMDViYzA2YTRmZjEx ZWZiYmRiY2E3YWIwZTBjMGUyZGY1NWE5M2YwYjRiOQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhl eHNlc3Npb25faWQ6YWFlODc5ZDhjMGM2NzYyZDI4YzMwZmRjNzA3YjE2OWEyMTU1ZjhiOGE5NDNj ZWQzOTlhNTY0MTliZTg5Y2M5ZjY2YmE5MjgyZDg1YWM0ZTUzZTBkNWFlMjdhZGNmMzkzCi0rQ3Ry bC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gM2M4NjBhZTIxYTVkYWI4NjVlYjU2MGVkOWRkZjUx Nzc1ZDNiNjYwM2U0ZTA2Mjg1Y2Y1ZTkyNzMxMTVhNzdkOGQ1ZGRmYjk3N2ZkMjFjMGE3MGMzNTc5 OGE1ZWY1OTZlCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwu aGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwNGQ3YmEzZTkwOWUxZTI4ODZlMDBkYjMzMzQzMGQ3Y2Vi ZTUxMDdlOTcwMTY3MmEyYTFiYzBiYjU0NjFjNjIwYzU2ZmM4YThhYTk1YTU3N2NmNDhhYzJlNWIz NWQ5NDhlNDY4YmJjNjIzMjUyN2Y2YTRlM2JmNWVhMGIyZjY4YjE2MWVlM2FhZGVlZjU5NmM2ODNl NTExYmVjMWZmNzBkZjMxMmQ5ODhlZGRkNTU3OTUyNzIwZjgyZjY5ODgyMTA3ZjY3ODgwZTM4ZWZj Y2E2ODQyOTM3NGQ4NTgzMWVlYTNhYzEzM2E2YTg5YjY4YTllYzI3YzcxYTY3Yzg3YWRkZmRkYjcw NDBhNzQxNmVhZDQzZTI5NjEyZGNkYzViN2U2YTgyYWQ1Y2QyNDNlOGE2ZGQyOTk3YzQ0YWQ3NmEy YTIwMTQ1Zjg5ZDdlNmIyYTI2YzJjMGYyY2U3ZDYwYjFmNDU0MTBmOWViYjc5YjUyZGRlNTYwZjhj N2M5OWI3YTExZDY0NWY2YWQ2Zjk0NzI3Y2QyZWE5ZDQ4Y2ViMjc0NjdlZTYwMzcxZTY5MTlhM2Fl MDQ0Yzg5NDFhNjUxODJjOTRlOGVmZDdiNWM3ZWI0NTkzNWJhZWE3MjI2MjhkODlkODlkZTk5NWQ4 MmI2MjAwNTlmZTEwNTQ5Mjc4NjRhOTEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmYz Y2MzODQyN2FkZjAxYjk0ODNkMWY5ZTRlOWFjZWY1NTRhOGM3ZDBkOGRjMDg4ZDM4NjVmMDViYzA2 YTRmZjExZWZiYmRiY2E3YWIwZTBjMGUyZGY1NWE5M2YwYjRiOQotK0N0cmwuaGV4c2Vzc2lvbl9p ZCA9IGhleHNlc3Npb25faWQ6YWFlODc5ZDhjMGM2NzYyZDI4YzMwZmRjNzA3YjE2OWEyMTU1Zjhi OGE5NDNjZWQzOTlhNTY0MTliZTg5Y2M5ZjY2YmE5MjgyZDg1YWM0ZTUzZTBkNWFlMjdhZGNmMzkz Ci0rQ3RybC50eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gYzUzY2ZhMDgzNmFjMjFiYjEzYzU4ZWQx NWRkZjU5M2U4ZTAxYzc0Mzc1ODcxMTJiYTAxMzA1OGQ0MTFkMjYyZDg3YTVlNTZjMDk4YjY5MTQ2 ZDkwMTk4MDMyMDZlZjkxCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAot K0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMWNiZTI1YTczODU4MGM5NGFlNzMzYTVkNGU5 ZTYxODYwYmYxYTY4ZGZhYzM2NWVkYzU4MTg4MTQxNjZjZmFlY2YyNjlkMDcyOTNkNjU2YzhlOTk5 NzM5MzRiNWYxNGViNGJjZDFhYzNjMzg4NTk2MjIxZjY1ZjY2ZTExOTM0NjNiZDQxZmNmZjM4OWU0 NThlZjdmMWVmODU4NDM5YjYwMGJjYTQyMmNkMjljODRkMmNiYzY4NGM3YTg1ZDhiNDRmNmE0M2E1 ZmM1M2JiYWE0YWQxYTZiMGYyYjg0MTI3OGVmYjFmYmRkMjUxM2U2NjAzOTg0MDI3ZWZiODFjNzJk OGM0Y2JhZGM4ZGVjNTEwODlkY2Q0M2VkMzEwOWRkYmM2ZGIyOTUzNDE4NmEyMzdjNWQ4YzNhNjZk ZWRiYjUxYjA5OTM3YjFjN2Q0Y2Y2Y2FjNjgyYmEyZGQxYzljZjkwMWQ2NmYxYTk5NWY5NDVkNWFk MTJiZDdiZmRkM2ZjYzViMDg1MjM3NmI5ODM0ZjBiZWUzZjdhNjY2ZjU4N2JkMmEzYjU2MmNjZjEy OWI2MTMyYzkwMjczOGZkMGRmZWEzZmY5NTM4OTYxYmY1ZjU5YWMxNzc5ZGQ0ZWQ2ODk4NjA1OTg4 MWY1ZTA4YmU1ZWNkMWE1OTM4MDM5MmU4MWYwYTYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2do YXNoOmIzMmQ0ZTZiNDc3NzJlNjUxYjg2NzU1OGEwM2Y0ODhmYzAwYzcxNWMxOTZjN2FiYjFhYmYz ZWJjMjRhNjM4ZWRkMDU4ZTc3YWVhZGQ5YWFkZTVjZTM0ZjQzZTE5ZjFmYwotK0N0cmwuaGV4c2Vz c2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NWQyYTgxOWIxMzVkOGQ5ODU2NDNjZWFiMzQ2MWVkZTI0 ZWQxOTJjNjA0NzE2NzYwMzFiNGIxZjhhZTcxZGVjNjU3NTQ3ZmRiM2E0M2Y3NTExMjg1NWZmY2U3 MmI2MGY0Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gZTM0YjU5NWY3NTVmZjQyYTMz MTI2ZDhlZmFiZTFlYzAKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDAxY2JlMjVhNzM4NTgwYzk0YWU3MzNhNWQ0ZTll NjE4NjBiZjFhNjhkZmFjMzY1ZWRjNTgxODgxNDE2NmNmYWVjZjI2OWQwNzI5M2Q2NTZjOGU5OTk3 MzkzNGI1ZjE0ZWI0YmNkMWFjM2MzODg1OTYyMjFmNjVmNjZlMTE5MzQ2M2JkNDFmY2ZmMzg5ZTQ1 OGVmN2YxZWY4NTg0MzliNjAwYmNhNDIyY2QyOWM4NGQyY2JjNjg0YzdhODVkOGI0NGY2YTQzYTVm YzUzYmJhYTRhZDFhNmIwZjJiODQxMjc4ZWZiMWZiZGQyNTEzZTY2MDM5ODQwMjdlZmI4MWM3MmQ4 YzRjYmFkYzhkZWM1MTA4OWRjZDQzZWQzMTA5ZGRiYzZkYjI5NTM0MTg2YTIzN2M1ZDhjM2E2NmRl ZGJiNTFiMDk5MzdiMWM3ZDRjZjZjYWM2ODJiYTJkZDFjOWNmOTAxZDY2ZjFhOTk1Zjk0NWQ1YWQx MmJkN2JmZGQzZmNjNWIwODUyMzc2Yjk4MzRmMGJlZTNmN2E2NjZmNTg3YmQyYTNiNTYyY2NmMTI5 YjYxMzJjOTAyNzM4ZmQwZGZlYTNmZjk1Mzg5NjFiZjVmNTlhYzE3NzlkZDRlZDY4OTg2MDU5ODgx ZjVlMDhiZTVlY2QxYTU5MzgwMzkyZTgxZjBhNgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6YjMyZDRlNmI0Nzc3MmU2NTFiODY3NTU4YTAzZjQ4OGZjMDBjNzE1YzE5NmM3YWJiMWFiZjNl YmMyNGE2MzhlZGQwNThlNzdhZWFkZDlhYWRlNWNlMzRmNDNlMTlmMWZjCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo1ZDJhODE5YjEzNWQ4ZDk4NTY0M2NlYWIzNDYxZWRlMjRl ZDE5MmM2MDQ3MTY3NjAzMWI0YjFmOGFlNzFkZWM2NTc1NDdmZGIzYTQzZjc1MTEyODU1ZmZjZTcy YjYwZjQKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSBhODczZjUyYWEzYjkxYThkZDAx OWJlODM1OGMwNGRlNgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStD dHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMDFjYmUyNWE3Mzg1ODBjOTRhZTczM2E1ZDRlOWU2 MTg2MGJmMWE2OGRmYWMzNjVlZGM1ODE4ODE0MTY2Y2ZhZWNmMjY5ZDA3MjkzZDY1NmM4ZTk5OTcz OTM0YjVmMTRlYjRiY2QxYWMzYzM4ODU5NjIyMWY2NWY2NmUxMTkzNDYzYmQ0MWZjZmYzODllNDU4 ZWY3ZjFlZjg1ODQzOWI2MDBiY2E0MjJjZDI5Yzg0ZDJjYmM2ODRjN2E4NWQ4YjQ0ZjZhNDNhNWZj NTNiYmFhNGFkMWE2YjBmMmI4NDEyNzhlZmIxZmJkZDI1MTNlNjYwMzk4NDAyN2VmYjgxYzcyZDhj NGNiYWRjOGRlYzUxMDg5ZGNkNDNlZDMxMDlkZGJjNmRiMjk1MzQxODZhMjM3YzVkOGMzYTY2ZGVk YmI1MWIwOTkzN2IxYzdkNGNmNmNhYzY4MmJhMmRkMWM5Y2Y5MDFkNjZmMWE5OTVmOTQ1ZDVhZDEy YmQ3YmZkZDNmY2M1YjA4NTIzNzZiOTgzNGYwYmVlM2Y3YTY2NmY1ODdiZDJhM2I1NjJjY2YxMjli NjEzMmM5MDI3MzhmZDBkZmVhM2ZmOTUzODk2MWJmNWY1OWFjMTc3OWRkNGVkNjg5ODYwNTk4ODFm NWUwOGJlNWVjZDFhNTkzODAzOTJlODFmMGE2Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDpiMzJkNGU2YjQ3NzcyZTY1MWI4Njc1NThhMDNmNDg4ZmMwMGM3MTVjMTk2YzdhYmIxYWJmM2Vi YzI0YTYzOGVkZDA1OGU3N2FlYWRkOWFhZGU1Y2UzNGY0M2UxOWYxZmMKLStDdHJsLmhleHNlc3Np b25faWQgPSBoZXhzZXNzaW9uX2lkOjVkMmE4MTliMTM1ZDhkOTg1NjQzY2VhYjM0NjFlZGUyNGVk MTkyYzYwNDcxNjc2MDMxYjRiMWY4YWU3MWRlYzY1NzU0N2ZkYjNhNDNmNzUxMTI4NTVmZmNlNzJi NjBmNAotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IGZjZTVjNDkwYTc2OWZiZDRhYTMx YjBmNWM3YWFkODZiCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMWNiZTI1YTczODU4MGM5NGFlNzMzYTVkNGU5ZTYx ODYwYmYxYTY4ZGZhYzM2NWVkYzU4MTg4MTQxNjZjZmFlY2YyNjlkMDcyOTNkNjU2YzhlOTk5NzM5 MzRiNWYxNGViNGJjZDFhYzNjMzg4NTk2MjIxZjY1ZjY2ZTExOTM0NjNiZDQxZmNmZjM4OWU0NThl ZjdmMWVmODU4NDM5YjYwMGJjYTQyMmNkMjljODRkMmNiYzY4NGM3YTg1ZDhiNDRmNmE0M2E1ZmM1 M2JiYWE0YWQxYTZiMGYyYjg0MTI3OGVmYjFmYmRkMjUxM2U2NjAzOTg0MDI3ZWZiODFjNzJkOGM0 Y2JhZGM4ZGVjNTEwODlkY2Q0M2VkMzEwOWRkYmM2ZGIyOTUzNDE4NmEyMzdjNWQ4YzNhNjZkZWRi YjUxYjA5OTM3YjFjN2Q0Y2Y2Y2FjNjgyYmEyZGQxYzljZjkwMWQ2NmYxYTk5NWY5NDVkNWFkMTJi ZDdiZmRkM2ZjYzViMDg1MjM3NmI5ODM0ZjBiZWUzZjdhNjY2ZjU4N2JkMmEzYjU2MmNjZjEyOWI2 MTMyYzkwMjczOGZkMGRmZWEzZmY5NTM4OTYxYmY1ZjU5YWMxNzc5ZGQ0ZWQ2ODk4NjA1OTg4MWY1 ZTA4YmU1ZWNkMWE1OTM4MDM5MmU4MWYwYTYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OmIzMmQ0ZTZiNDc3NzJlNjUxYjg2NzU1OGEwM2Y0ODhmYzAwYzcxNWMxOTZjN2FiYjFhYmYzZWJj MjRhNjM4ZWRkMDU4ZTc3YWVhZGQ5YWFkZTVjZTM0ZjQzZTE5ZjFmYwotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6NWQyYTgxOWIxMzVkOGQ5ODU2NDNjZWFiMzQ2MWVkZTI0ZWQx OTJjNjA0NzE2NzYwMzFiNGIxZjhhZTcxZGVjNjU3NTQ3ZmRiM2E0M2Y3NTExMjg1NWZmY2U3MmI2 MGY0Ci0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gZDM2YTliN2QyYzYzNjc1ZDJiMjUw ZDVhOTdiMGU2MjgKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3Ry bC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDAxY2JlMjVhNzM4NTgwYzk0YWU3MzNhNWQ0ZTllNjE4 NjBiZjFhNjhkZmFjMzY1ZWRjNTgxODgxNDE2NmNmYWVjZjI2OWQwNzI5M2Q2NTZjOGU5OTk3Mzkz NGI1ZjE0ZWI0YmNkMWFjM2MzODg1OTYyMjFmNjVmNjZlMTE5MzQ2M2JkNDFmY2ZmMzg5ZTQ1OGVm N2YxZWY4NTg0MzliNjAwYmNhNDIyY2QyOWM4NGQyY2JjNjg0YzdhODVkOGI0NGY2YTQzYTVmYzUz YmJhYTRhZDFhNmIwZjJiODQxMjc4ZWZiMWZiZGQyNTEzZTY2MDM5ODQwMjdlZmI4MWM3MmQ4YzRj YmFkYzhkZWM1MTA4OWRjZDQzZWQzMTA5ZGRiYzZkYjI5NTM0MTg2YTIzN2M1ZDhjM2E2NmRlZGJi NTFiMDk5MzdiMWM3ZDRjZjZjYWM2ODJiYTJkZDFjOWNmOTAxZDY2ZjFhOTk1Zjk0NWQ1YWQxMmJk N2JmZGQzZmNjNWIwODUyMzc2Yjk4MzRmMGJlZTNmN2E2NjZmNTg3YmQyYTNiNTYyY2NmMTI5YjYx MzJjOTAyNzM4ZmQwZGZlYTNmZjk1Mzg5NjFiZjVmNTlhYzE3NzlkZDRlZDY4OTg2MDU5ODgxZjVl MDhiZTVlY2QxYTU5MzgwMzkyZTgxZjBhNgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6 YjMyZDRlNmI0Nzc3MmU2NTFiODY3NTU4YTAzZjQ4OGZjMDBjNzE1YzE5NmM3YWJiMWFiZjNlYmMy NGE2MzhlZGQwNThlNzdhZWFkZDlhYWRlNWNlMzRmNDNlMTlmMWZjCi0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDo1ZDJhODE5YjEzNWQ4ZDk4NTY0M2NlYWIzNDYxZWRlMjRlZDE5 MmM2MDQ3MTY3NjAzMWI0YjFmOGFlNzFkZWM2NTc1NDdmZGIzYTQzZjc1MTEyODU1ZmZjZTcyYjYw ZjQKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA5MmM4Zjg5Zjg0NTc1Y2ViYjljMzdi ZTNhNDg4ZDBiMDMxMmExMmQ5MjUzZGJhZGE3ZGIxMzE4ZjVhMTkzZDRmOGY3NWEyMTJhNzVjMTEy M2JjYTg5ZDVkZTQzY2JmMDgKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0 Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDAxY2JlMjVhNzM4NTgwYzk0YWU3MzNhNWQ0 ZTllNjE4NjBiZjFhNjhkZmFjMzY1ZWRjNTgxODgxNDE2NmNmYWVjZjI2OWQwNzI5M2Q2NTZjOGU5 OTk3MzkzNGI1ZjE0ZWI0YmNkMWFjM2MzODg1OTYyMjFmNjVmNjZlMTE5MzQ2M2JkNDFmY2ZmMzg5 ZTQ1OGVmN2YxZWY4NTg0MzliNjAwYmNhNDIyY2QyOWM4NGQyY2JjNjg0YzdhODVkOGI0NGY2YTQz YTVmYzUzYmJhYTRhZDFhNmIwZjJiODQxMjc4ZWZiMWZiZGQyNTEzZTY2MDM5ODQwMjdlZmI4MWM3 MmQ4YzRjYmFkYzhkZWM1MTA4OWRjZDQzZWQzMTA5ZGRiYzZkYjI5NTM0MTg2YTIzN2M1ZDhjM2E2 NmRlZGJiNTFiMDk5MzdiMWM3ZDRjZjZjYWM2ODJiYTJkZDFjOWNmOTAxZDY2ZjFhOTk1Zjk0NWQ1 YWQxMmJkN2JmZGQzZmNjNWIwODUyMzc2Yjk4MzRmMGJlZTNmN2E2NjZmNTg3YmQyYTNiNTYyY2Nm MTI5YjYxMzJjOTAyNzM4ZmQwZGZlYTNmZjk1Mzg5NjFiZjVmNTlhYzE3NzlkZDRlZDY4OTg2MDU5 ODgxZjVlMDhiZTVlY2QxYTU5MzgwMzkyZTgxZjBhNgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhj Z2hhc2g6YjMyZDRlNmI0Nzc3MmU2NTFiODY3NTU4YTAzZjQ4OGZjMDBjNzE1YzE5NmM3YWJiMWFi ZjNlYmMyNGE2MzhlZGQwNThlNzdhZWFkZDlhYWRlNWNlMzRmNDNlMTlmMWZjCi0rQ3RybC5oZXhz ZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo1ZDJhODE5YjEzNWQ4ZDk4NTY0M2NlYWIzNDYxZWRl MjRlZDE5MmM2MDQ3MTY3NjAzMWI0YjFmOGFlNzFkZWM2NTc1NDdmZGIzYTQzZjc1MTEyODU1ZmZj ZTcyYjYwZjQKLStDdHJsLnR5cGUgPSB0eXBlOkYKLStPdXRwdXQgPSAxNmRjZjFiZDFhYTRkNWQ2 ZWRjMmQyYjIzNzkyODcyZjUzNzY3ZDZiMjU4OWU0NzAwNDY5YTliYmJiYjY1OWMxYzg3MTYzOTNm ZTFlZDcxNzgzM2Y0OTFjZDMyZDg3NGIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6 U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGM3ZjhiY2FmMTdjYjE3ZGIz ZDVjMmM5ZThkYjM3ZmE3NzY4NTQ2M2Q2MDRlNmI1NzdhY2U5YWRhMWI1YTdmYjU0YTI5OTY4NGE1 NDA1OTczMzUyMjYyZWQ2NmE3ZTQ3ZTRjZjliYTc5ODFmNzZhMGFhNmJmNDA3YmU1ZmM0OGY3MDg2 OWI2OTEzZjdkOWIyMzk1ZjczZWRhMmYwOGFkNTQ2OWRmOTgyYmQ4MjI0MmMxOWJiYTBkYmNjMjhm YTU4NjliYWI5OWI4NDAxNWEzMTNjZWJjYzNlODZlYzNmZDE1NTEzZTMyOWEyMzY0ODdlOTA5YTZi MzcxMzRiYzc1YjAzZGJkYTdmOTE5NjczOGFlNWYwNGFjM2NhZTZhM2M5MzE1MDI3MWVlZWQ2MmY4 YzAxOWY0MzNkZjg4OGFjZWMwOWU5NDdkZWU2NTM3YzRmZWU1ZTBkYzM3ZDNiNGFlNGZmNzczMDkz ODIxNDhmMDEyN2NkMDFiODgyZjEyOGVlODQ0MDQ2YzlmMzA1MmZmN2ZmZjgxODc2YzI2MWFkNmNk YWQwYTllYmZjNzY5YTQzMDhmMTI0ZDI0MjJmMDNjMWIxNzFhYzM0MDRkNGQ2OTBlOWMxZDk0ZmMz ZGU0NzliZGE2NjNjMjA3MTIwYTE4ZjE5NDdhNjgxNzlkMTllY2FhCi0rQ3RybC5oZXh4Y2doYXNo ID0gaGV4eGNnaGFzaDpjZTk5NmQyYjExOThmMDY5YzI0MTkzNTI2YmUxZGQwZDA4YTk1ZDBiMGEx NDRkYTVhMTMwM2U4NGRlNGViODY0ZDQ5Y2E3MWZhNWE1OWY1MWMxMGI5ZDQyNTc3ODc2MjYKLStD dHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmVkOTA2MjMwYmRjZmY1NmJkMjM5YThj NTJmM2NiMWU0ZTE2ZDEyNDkyODQxNjJjYTg1YjMyMGU1NDNmNjJhODJkNzI3MDEzMTIzMWNmNDll MWIwYzBiMWU4NzY0MzcxOQotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IGJiZGM0NzI0 MmM4NzdjYzcwNTg1YTVkOWYwYjgwNjdkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBjN2Y4YmNhZjE3Y2IxN2Ri M2Q1YzJjOWU4ZGIzN2ZhNzc2ODU0NjNkNjA0ZTZiNTc3YWNlOWFkYTFiNWE3ZmI1NGEyOTk2ODRh NTQwNTk3MzM1MjI2MmVkNjZhN2U0N2U0Y2Y5YmE3OTgxZjc2YTBhYTZiZjQwN2JlNWZjNDhmNzA4 NjliNjkxM2Y3ZDliMjM5NWY3M2VkYTJmMDhhZDU0NjlkZjk4MmJkODIyNDJjMTliYmEwZGJjYzI4 ZmE1ODY5YmFiOTliODQwMTVhMzEzY2ViY2MzZTg2ZWMzZmQxNTUxM2UzMjlhMjM2NDg3ZTkwOWE2 YjM3MTM0YmM3NWIwM2RiZGE3ZjkxOTY3MzhhZTVmMDRhYzNjYWU2YTNjOTMxNTAyNzFlZWVkNjJm OGMwMTlmNDMzZGY4ODhhY2VjMDllOTQ3ZGVlNjUzN2M0ZmVlNWUwZGMzN2QzYjRhZTRmZjc3MzA5 MzgyMTQ4ZjAxMjdjZDAxYjg4MmYxMjhlZTg0NDA0NmM5ZjMwNTJmZjdmZmY4MTg3NmMyNjFhZDZj ZGFkMGE5ZWJmYzc2OWE0MzA4ZjEyNGQyNDIyZjAzYzFiMTcxYWMzNDA0ZDRkNjkwZTljMWQ5NGZj M2RlNDc5YmRhNjYzYzIwNzEyMGExOGYxOTQ3YTY4MTc5ZDE5ZWNhYQotK0N0cmwuaGV4eGNnaGFz aCA9IGhleHhjZ2hhc2g6Y2U5OTZkMmIxMTk4ZjA2OWMyNDE5MzUyNmJlMWRkMGQwOGE5NWQwYjBh MTQ0ZGE1YTEzMDNlODRkZTRlYjg2NGQ0OWNhNzFmYTVhNTlmNTFjMTBiOWQ0MjU3Nzg3NjI2Ci0r Q3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDplZDkwNjIzMGJkY2ZmNTZiZDIzOWE4 YzUyZjNjYjFlNGUxNmQxMjQ5Mjg0MTYyY2E4NWIzMjBlNTQzZjYyYTgyZDcyNzAxMzEyMzFjZjQ5 ZTFiMGMwYjFlODc2NDM3MTkKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA2ZGNjNjQ1 OGFmMDQ5YTgxYTZkMzEzOWMyNzI1ZjY3ZAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwYzdmOGJjYWYxN2NiMTdk YjNkNWMyYzllOGRiMzdmYTc3Njg1NDYzZDYwNGU2YjU3N2FjZTlhZGExYjVhN2ZiNTRhMjk5Njg0 YTU0MDU5NzMzNTIyNjJlZDY2YTdlNDdlNGNmOWJhNzk4MWY3NmEwYWE2YmY0MDdiZTVmYzQ4Zjcw ODY5YjY5MTNmN2Q5YjIzOTVmNzNlZGEyZjA4YWQ1NDY5ZGY5ODJiZDgyMjQyYzE5YmJhMGRiY2My OGZhNTg2OWJhYjk5Yjg0MDE1YTMxM2NlYmNjM2U4NmVjM2ZkMTU1MTNlMzI5YTIzNjQ4N2U5MDlh NmIzNzEzNGJjNzViMDNkYmRhN2Y5MTk2NzM4YWU1ZjA0YWMzY2FlNmEzYzkzMTUwMjcxZWVlZDYy ZjhjMDE5ZjQzM2RmODg4YWNlYzA5ZTk0N2RlZTY1MzdjNGZlZTVlMGRjMzdkM2I0YWU0ZmY3NzMw OTM4MjE0OGYwMTI3Y2QwMWI4ODJmMTI4ZWU4NDQwNDZjOWYzMDUyZmY3ZmZmODE4NzZjMjYxYWQ2 Y2RhZDBhOWViZmM3NjlhNDMwOGYxMjRkMjQyMmYwM2MxYjE3MWFjMzQwNGQ0ZDY5MGU5YzFkOTRm YzNkZTQ3OWJkYTY2M2MyMDcxMjBhMThmMTk0N2E2ODE3OWQxOWVjYWEKLStDdHJsLmhleHhjZ2hh c2ggPSBoZXh4Y2doYXNoOmNlOTk2ZDJiMTE5OGYwNjljMjQxOTM1MjZiZTFkZDBkMDhhOTVkMGIw YTE0NGRhNWExMzAzZTg0ZGU0ZWI4NjRkNDljYTcxZmE1YTU5ZjUxYzEwYjlkNDI1Nzc4NzYyNgot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZWQ5MDYyMzBiZGNmZjU2YmQyMzlh OGM1MmYzY2IxZTRlMTZkMTI0OTI4NDE2MmNhODViMzIwZTU0M2Y2MmE4MmQ3MjcwMTMxMjMxY2Y0 OWUxYjBjMGIxZTg3NjQzNzE5Ci0rQ3RybC50eXBlID0gdHlwZTpDCi0rT3V0cHV0ID0gZjc4OGQw YjllYTUzNzMwMzFkNDQ5NzJmYWQzOWQ4ZTYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGM3ZjhiY2FmMTdjYjE3 ZGIzZDVjMmM5ZThkYjM3ZmE3NzY4NTQ2M2Q2MDRlNmI1NzdhY2U5YWRhMWI1YTdmYjU0YTI5OTY4 NGE1NDA1OTczMzUyMjYyZWQ2NmE3ZTQ3ZTRjZjliYTc5ODFmNzZhMGFhNmJmNDA3YmU1ZmM0OGY3 MDg2OWI2OTEzZjdkOWIyMzk1ZjczZWRhMmYwOGFkNTQ2OWRmOTgyYmQ4MjI0MmMxOWJiYTBkYmNj MjhmYTU4NjliYWI5OWI4NDAxNWEzMTNjZWJjYzNlODZlYzNmZDE1NTEzZTMyOWEyMzY0ODdlOTA5 YTZiMzcxMzRiYzc1YjAzZGJkYTdmOTE5NjczOGFlNWYwNGFjM2NhZTZhM2M5MzE1MDI3MWVlZWQ2 MmY4YzAxOWY0MzNkZjg4OGFjZWMwOWU5NDdkZWU2NTM3YzRmZWU1ZTBkYzM3ZDNiNGFlNGZmNzcz MDkzODIxNDhmMDEyN2NkMDFiODgyZjEyOGVlODQ0MDQ2YzlmMzA1MmZmN2ZmZjgxODc2YzI2MWFk NmNkYWQwYTllYmZjNzY5YTQzMDhmMTI0ZDI0MjJmMDNjMWIxNzFhYzM0MDRkNGQ2OTBlOWMxZDk0 ZmMzZGU0NzliZGE2NjNjMjA3MTIwYTE4ZjE5NDdhNjgxNzlkMTllY2FhCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDpjZTk5NmQyYjExOThmMDY5YzI0MTkzNTI2YmUxZGQwZDA4YTk1ZDBi MGExNDRkYTVhMTMwM2U4NGRlNGViODY0ZDQ5Y2E3MWZhNWE1OWY1MWMxMGI5ZDQyNTc3ODc2MjYK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmVkOTA2MjMwYmRjZmY1NmJkMjM5 YThjNTJmM2NiMWU0ZTE2ZDEyNDkyODQxNjJjYTg1YjMyMGU1NDNmNjJhODJkNzI3MDEzMTIzMWNm NDllMWIwYzBiMWU4NzY0MzcxOQotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGU5Mzli MTM2N2VhMzVjNjdlYTk5MDk4OGMzYzBjNDc0Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9 IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBjN2Y4YmNhZjE3Y2Ix N2RiM2Q1YzJjOWU4ZGIzN2ZhNzc2ODU0NjNkNjA0ZTZiNTc3YWNlOWFkYTFiNWE3ZmI1NGEyOTk2 ODRhNTQwNTk3MzM1MjI2MmVkNjZhN2U0N2U0Y2Y5YmE3OTgxZjc2YTBhYTZiZjQwN2JlNWZjNDhm NzA4NjliNjkxM2Y3ZDliMjM5NWY3M2VkYTJmMDhhZDU0NjlkZjk4MmJkODIyNDJjMTliYmEwZGJj YzI4ZmE1ODY5YmFiOTliODQwMTVhMzEzY2ViY2MzZTg2ZWMzZmQxNTUxM2UzMjlhMjM2NDg3ZTkw OWE2YjM3MTM0YmM3NWIwM2RiZGE3ZjkxOTY3MzhhZTVmMDRhYzNjYWU2YTNjOTMxNTAyNzFlZWVk NjJmOGMwMTlmNDMzZGY4ODhhY2VjMDllOTQ3ZGVlNjUzN2M0ZmVlNWUwZGMzN2QzYjRhZTRmZjc3 MzA5MzgyMTQ4ZjAxMjdjZDAxYjg4MmYxMjhlZTg0NDA0NmM5ZjMwNTJmZjdmZmY4MTg3NmMyNjFh ZDZjZGFkMGE5ZWJmYzc2OWE0MzA4ZjEyNGQyNDIyZjAzYzFiMTcxYWMzNDA0ZDRkNjkwZTljMWQ5 NGZjM2RlNDc5YmRhNjYzYzIwNzEyMGExOGYxOTQ3YTY4MTc5ZDE5ZWNhYQotK0N0cmwuaGV4eGNn aGFzaCA9IGhleHhjZ2hhc2g6Y2U5OTZkMmIxMTk4ZjA2OWMyNDE5MzUyNmJlMWRkMGQwOGE5NWQw YjBhMTQ0ZGE1YTEzMDNlODRkZTRlYjg2NGQ0OWNhNzFmYTVhNTlmNTFjMTBiOWQ0MjU3Nzg3NjI2 Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDplZDkwNjIzMGJkY2ZmNTZiZDIz OWE4YzUyZjNjYjFlNGUxNmQxMjQ5Mjg0MTYyY2E4NWIzMjBlNTQzZjYyYTgyZDcyNzAxMzEyMzFj ZjQ5ZTFiMGMwYjFlODc2NDM3MTkKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSAwNjk2 MjlmNjkzYjRkMjkxZWE2ZjE2MzU1ZWI0YzU3ZWVmNzgyNDIxN2QyMjY1MWFmMDk1YWFkYWMyN2E3 ODkzMTRmZWU0ZTg2ZWZhOWJjNjMwODVhOGViZmM2MDY1NDgKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGM3Zjhi Y2FmMTdjYjE3ZGIzZDVjMmM5ZThkYjM3ZmE3NzY4NTQ2M2Q2MDRlNmI1NzdhY2U5YWRhMWI1YTdm YjU0YTI5OTY4NGE1NDA1OTczMzUyMjYyZWQ2NmE3ZTQ3ZTRjZjliYTc5ODFmNzZhMGFhNmJmNDA3 YmU1ZmM0OGY3MDg2OWI2OTEzZjdkOWIyMzk1ZjczZWRhMmYwOGFkNTQ2OWRmOTgyYmQ4MjI0MmMx OWJiYTBkYmNjMjhmYTU4NjliYWI5OWI4NDAxNWEzMTNjZWJjYzNlODZlYzNmZDE1NTEzZTMyOWEy MzY0ODdlOTA5YTZiMzcxMzRiYzc1YjAzZGJkYTdmOTE5NjczOGFlNWYwNGFjM2NhZTZhM2M5MzE1 MDI3MWVlZWQ2MmY4YzAxOWY0MzNkZjg4OGFjZWMwOWU5NDdkZWU2NTM3YzRmZWU1ZTBkYzM3ZDNi NGFlNGZmNzczMDkzODIxNDhmMDEyN2NkMDFiODgyZjEyOGVlODQ0MDQ2YzlmMzA1MmZmN2ZmZjgx ODc2YzI2MWFkNmNkYWQwYTllYmZjNzY5YTQzMDhmMTI0ZDI0MjJmMDNjMWIxNzFhYzM0MDRkNGQ2 OTBlOWMxZDk0ZmMzZGU0NzliZGE2NjNjMjA3MTIwYTE4ZjE5NDdhNjgxNzlkMTllY2FhCi0rQ3Ry bC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpjZTk5NmQyYjExOThmMDY5YzI0MTkzNTI2YmUxZGQw ZDA4YTk1ZDBiMGExNDRkYTVhMTMwM2U4NGRlNGViODY0ZDQ5Y2E3MWZhNWE1OWY1MWMxMGI5ZDQy NTc3ODc2MjYKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmVkOTA2MjMwYmRj ZmY1NmJkMjM5YThjNTJmM2NiMWU0ZTE2ZDEyNDkyODQxNjJjYTg1YjMyMGU1NDNmNjJhODJkNzI3 MDEzMTIzMWNmNDllMWIwYzBiMWU4NzY0MzcxOQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1 dCA9IDczMTEwNzkwNWUzYjliMzZiYTNkY2E1MDRiMzVmMWE1MWU3NWUyYTNlZTI1OTVhZGU4ODJj MjE0MTBkNDM5ZWMxZWMzMWZiYzYyZTY0MzYyYTVmZGRjMGYzOWU3NmRhMAotKwotK0tERiA9IFNT SEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEw MTAwYjQxYjQxNTg1Mjk2ZTg1Y2NlNzIzNjE5YjQwNjA5YjIxNzk5ZmIyNDRkNzJmZDg3YWZhMzA4 ODA3MzgxOWIyMzJkZTdkOWFiNDVjZWFhYjMwMTQwOTk0NzVlOTMxNGNmZjc0MTQ5YjVlNDU1ODk2 MmYzMWQzZDJhODRmMjQ1MDA1NThhZjkyOGZmNzg1ZGMzMjYyN2Y1MDYyZWEyZDViZjZmZjA4NWVk ZjZkMjAwZGFjYTkxMDM3YWJkYTcxYjVjOWMxNjYwY2JmNjBjZmMzZWMxZmU1OTBjM2Q2MzAwYWEy NzllNDIzODNmOThmNDAwMDAzMWJmNTdhMmJiNjEyYzdhMjEyYmMwZWM1MDU3ODE3YjA4NDNlMDFj MTRhOWIzNTNjMjY2OTk2NzA4NzNkYjA1ZGU3MDQ5YWM0NDk1MTA5NGM4YjIzMTcxM2RhYjA5Y2E2 NDFkM2NlYTY1YzVlM2IwMWQ0MWQ5MzM1MTYzNWIwOGE3NjdhZmFkZmQ3ODY1Mzg4ZWJiZTI5ZThm NDcwMzNkMWZlNTMwZDdkNDVmYTFjMjY2NzA1YjI2ZDY3MjgyODcyZGE5NTUxMjU2ZDg4NzA4ZTFl YzY5Y2U5Yjk0ZGI2YzdmM2U2YjdhZTA2NDE4YjM2NTM3Yjc4Mzk0NTRjNTM5YjJiZGQ3NThhZjlj MTkKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjViMTY4Y2FjMTExM2RlMTJiYWM5NWFh YzM0NTAxODY2YWJkNjEwYzZjZTBkNTE1MjBmODNjODY1ZGI4ZDBjNjg4YjI3YWYxMWUwOGRlYjRh MjY3M2MxNjBlZGQxZGE5MwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MzJk YzMyODIxNDgzZWQ5OGY2OTY4MTNlNzEyZDIyOWI2ZmY1YTllMGY3ZjhlNTgyYTI2ZjBhNTIwNGZh NzY1NTA0MGRkYmM3OTFlMDBlN2E5NzlkZGVkOTM1NGVhMmRjCi0rQ3RybC50eXBlID0gdHlwZTpB Ci0rT3V0cHV0ID0gOGUxYWY0Y2UzYjlhYTlmMWU3NDkzNzc1Zjg4NDZhYzAKLSsKLStLREYgPSBT U0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAx MDEwMGI0MWI0MTU4NTI5NmU4NWNjZTcyMzYxOWI0MDYwOWIyMTc5OWZiMjQ0ZDcyZmQ4N2FmYTMw ODgwNzM4MTliMjMyZGU3ZDlhYjQ1Y2VhYWIzMDE0MDk5NDc1ZTkzMTRjZmY3NDE0OWI1ZTQ1NTg5 NjJmMzFkM2QyYTg0ZjI0NTAwNTU4YWY5MjhmZjc4NWRjMzI2MjdmNTA2MmVhMmQ1YmY2ZmYwODVl ZGY2ZDIwMGRhY2E5MTAzN2FiZGE3MWI1YzljMTY2MGNiZjYwY2ZjM2VjMWZlNTkwYzNkNjMwMGFh Mjc5ZTQyMzgzZjk4ZjQwMDAwMzFiZjU3YTJiYjYxMmM3YTIxMmJjMGVjNTA1NzgxN2IwODQzZTAx YzE0YTliMzUzYzI2Njk5NjcwODczZGIwNWRlNzA0OWFjNDQ5NTEwOTRjOGIyMzE3MTNkYWIwOWNh NjQxZDNjZWE2NWM1ZTNiMDFkNDFkOTMzNTE2MzViMDhhNzY3YWZhZGZkNzg2NTM4OGViYmUyOWU4 ZjQ3MDMzZDFmZTUzMGQ3ZDQ1ZmExYzI2NjcwNWIyNmQ2NzI4Mjg3MmRhOTU1MTI1NmQ4ODcwOGUx ZWM2OWNlOWI5NGRiNmM3ZjNlNmI3YWUwNjQxOGIzNjUzN2I3ODM5NDU0YzUzOWIyYmRkNzU4YWY5 YzE5Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1YjE2OGNhYzExMTNkZTEyYmFjOTVh YWMzNDUwMTg2NmFiZDYxMGM2Y2UwZDUxNTIwZjgzYzg2NWRiOGQwYzY4OGIyN2FmMTFlMDhkZWI0 YTI2NzNjMTYwZWRkMWRhOTMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjMy ZGMzMjgyMTQ4M2VkOThmNjk2ODEzZTcxMmQyMjliNmZmNWE5ZTBmN2Y4ZTU4MmEyNmYwYTUyMDRm YTc2NTUwNDBkZGJjNzkxZTAwZTdhOTc5ZGRlZDkzNTRlYTJkYwotK0N0cmwudHlwZSA9IHR5cGU6 QgotK091dHB1dCA9IDE3OTZjZWUwYWViMzllYjFmYmJhZWFmMTVkNjAwODMyCi0rCi0rS0RGID0g U1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTM4NAotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAw MTAxMDBiNDFiNDE1ODUyOTZlODVjY2U3MjM2MTliNDA2MDliMjE3OTlmYjI0NGQ3MmZkODdhZmEz MDg4MDczODE5YjIzMmRlN2Q5YWI0NWNlYWFiMzAxNDA5OTQ3NWU5MzE0Y2ZmNzQxNDliNWU0NTU4 OTYyZjMxZDNkMmE4NGYyNDUwMDU1OGFmOTI4ZmY3ODVkYzMyNjI3ZjUwNjJlYTJkNWJmNmZmMDg1 ZWRmNmQyMDBkYWNhOTEwMzdhYmRhNzFiNWM5YzE2NjBjYmY2MGNmYzNlYzFmZTU5MGMzZDYzMDBh YTI3OWU0MjM4M2Y5OGY0MDAwMDMxYmY1N2EyYmI2MTJjN2EyMTJiYzBlYzUwNTc4MTdiMDg0M2Uw MWMxNGE5YjM1M2MyNjY5OTY3MDg3M2RiMDVkZTcwNDlhYzQ0OTUxMDk0YzhiMjMxNzEzZGFiMDlj YTY0MWQzY2VhNjVjNWUzYjAxZDQxZDkzMzUxNjM1YjA4YTc2N2FmYWRmZDc4NjUzODhlYmJlMjll OGY0NzAzM2QxZmU1MzBkN2Q0NWZhMWMyNjY3MDViMjZkNjcyODI4NzJkYTk1NTEyNTZkODg3MDhl MWVjNjljZTliOTRkYjZjN2YzZTZiN2FlMDY0MThiMzY1MzdiNzgzOTQ1NGM1MzliMmJkZDc1OGFm OWMxOQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NWIxNjhjYWMxMTEzZGUxMmJhYzk1 YWFjMzQ1MDE4NjZhYmQ2MTBjNmNlMGQ1MTUyMGY4M2M4NjVkYjhkMGM2ODhiMjdhZjExZTA4ZGVi NGEyNjczYzE2MGVkZDFkYTkzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoz MmRjMzI4MjE0ODNlZDk4ZjY5NjgxM2U3MTJkMjI5YjZmZjVhOWUwZjdmOGU1ODJhMjZmMGE1MjA0 ZmE3NjU1MDQwZGRiYzc5MWUwMGU3YTk3OWRkZWQ5MzU0ZWEyZGMKLStDdHJsLnR5cGUgPSB0eXBl OkMKLStPdXRwdXQgPSA3YTc0ODUwNDVhMmY4Y2M4NmY4MmM4NDg2ZjhlOWY1OQotKwotK0tERiA9 IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDEwMTAwYjQxYjQxNTg1Mjk2ZTg1Y2NlNzIzNjE5YjQwNjA5YjIxNzk5ZmIyNDRkNzJmZDg3YWZh MzA4ODA3MzgxOWIyMzJkZTdkOWFiNDVjZWFhYjMwMTQwOTk0NzVlOTMxNGNmZjc0MTQ5YjVlNDU1 ODk2MmYzMWQzZDJhODRmMjQ1MDA1NThhZjkyOGZmNzg1ZGMzMjYyN2Y1MDYyZWEyZDViZjZmZjA4 NWVkZjZkMjAwZGFjYTkxMDM3YWJkYTcxYjVjOWMxNjYwY2JmNjBjZmMzZWMxZmU1OTBjM2Q2MzAw YWEyNzllNDIzODNmOThmNDAwMDAzMWJmNTdhMmJiNjEyYzdhMjEyYmMwZWM1MDU3ODE3YjA4NDNl MDFjMTRhOWIzNTNjMjY2OTk2NzA4NzNkYjA1ZGU3MDQ5YWM0NDk1MTA5NGM4YjIzMTcxM2RhYjA5 Y2E2NDFkM2NlYTY1YzVlM2IwMWQ0MWQ5MzM1MTYzNWIwOGE3NjdhZmFkZmQ3ODY1Mzg4ZWJiZTI5 ZThmNDcwMzNkMWZlNTMwZDdkNDVmYTFjMjY2NzA1YjI2ZDY3MjgyODcyZGE5NTUxMjU2ZDg4NzA4 ZTFlYzY5Y2U5Yjk0ZGI2YzdmM2U2YjdhZTA2NDE4YjM2NTM3Yjc4Mzk0NTRjNTM5YjJiZGQ3NThh ZjljMTkKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjViMTY4Y2FjMTExM2RlMTJiYWM5 NWFhYzM0NTAxODY2YWJkNjEwYzZjZTBkNTE1MjBmODNjODY1ZGI4ZDBjNjg4YjI3YWYxMWUwOGRl YjRhMjY3M2MxNjBlZGQxZGE5MwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 MzJkYzMyODIxNDgzZWQ5OGY2OTY4MTNlNzEyZDIyOWI2ZmY1YTllMGY3ZjhlNTgyYTI2ZjBhNTIw NGZhNzY1NTA0MGRkYmM3OTFlMDBlN2E5NzlkZGVkOTM1NGVhMmRjCi0rQ3RybC50eXBlID0gdHlw ZTpECi0rT3V0cHV0ID0gMDBhOWQ4OTNlOGMxNGFhM2EzMTYxNjNkNTBkODMzNzgKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMzg0Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAxMDEwMGI0MWI0MTU4NTI5NmU4NWNjZTcyMzYxOWI0MDYwOWIyMTc5OWZiMjQ0ZDcyZmQ4N2Fm YTMwODgwNzM4MTliMjMyZGU3ZDlhYjQ1Y2VhYWIzMDE0MDk5NDc1ZTkzMTRjZmY3NDE0OWI1ZTQ1 NTg5NjJmMzFkM2QyYTg0ZjI0NTAwNTU4YWY5MjhmZjc4NWRjMzI2MjdmNTA2MmVhMmQ1YmY2ZmYw ODVlZGY2ZDIwMGRhY2E5MTAzN2FiZGE3MWI1YzljMTY2MGNiZjYwY2ZjM2VjMWZlNTkwYzNkNjMw MGFhMjc5ZTQyMzgzZjk4ZjQwMDAwMzFiZjU3YTJiYjYxMmM3YTIxMmJjMGVjNTA1NzgxN2IwODQz ZTAxYzE0YTliMzUzYzI2Njk5NjcwODczZGIwNWRlNzA0OWFjNDQ5NTEwOTRjOGIyMzE3MTNkYWIw OWNhNjQxZDNjZWE2NWM1ZTNiMDFkNDFkOTMzNTE2MzViMDhhNzY3YWZhZGZkNzg2NTM4OGViYmUy OWU4ZjQ3MDMzZDFmZTUzMGQ3ZDQ1ZmExYzI2NjcwNWIyNmQ2NzI4Mjg3MmRhOTU1MTI1NmQ4ODcw OGUxZWM2OWNlOWI5NGRiNmM3ZjNlNmI3YWUwNjQxOGIzNjUzN2I3ODM5NDU0YzUzOWIyYmRkNzU4 YWY5YzE5Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1YjE2OGNhYzExMTNkZTEyYmFj OTVhYWMzNDUwMTg2NmFiZDYxMGM2Y2UwZDUxNTIwZjgzYzg2NWRiOGQwYzY4OGIyN2FmMTFlMDhk ZWI0YTI2NzNjMTYwZWRkMWRhOTMKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OjMyZGMzMjgyMTQ4M2VkOThmNjk2ODEzZTcxMmQyMjliNmZmNWE5ZTBmN2Y4ZTU4MmEyNmYwYTUy MDRmYTc2NTUwNDBkZGJjNzkxZTAwZTdhOTc5ZGRlZDkzNTRlYTJkYwotK0N0cmwudHlwZSA9IHR5 cGU6RQotK091dHB1dCA9IDQ2MTMzYjFjYmFiM2UwNDA0M2ExYjMzNmRiOTk1NzUxODNkNWJlNzZm OWQ1NjU1NjQ5M2E4ZDRhOGRhMzdhMDIwYWUzNzlmZjJkNDcwYTk5Y2E3ZTlkMmIxY2Y4NWNiNAot KwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEEzODQKLStDdHJsLmhleGtleSA9IGhl eGtleTowMDAwMDEwMTAwYjQxYjQxNTg1Mjk2ZTg1Y2NlNzIzNjE5YjQwNjA5YjIxNzk5ZmIyNDRk NzJmZDg3YWZhMzA4ODA3MzgxOWIyMzJkZTdkOWFiNDVjZWFhYjMwMTQwOTk0NzVlOTMxNGNmZjc0 MTQ5YjVlNDU1ODk2MmYzMWQzZDJhODRmMjQ1MDA1NThhZjkyOGZmNzg1ZGMzMjYyN2Y1MDYyZWEy ZDViZjZmZjA4NWVkZjZkMjAwZGFjYTkxMDM3YWJkYTcxYjVjOWMxNjYwY2JmNjBjZmMzZWMxZmU1 OTBjM2Q2MzAwYWEyNzllNDIzODNmOThmNDAwMDAzMWJmNTdhMmJiNjEyYzdhMjEyYmMwZWM1MDU3 ODE3YjA4NDNlMDFjMTRhOWIzNTNjMjY2OTk2NzA4NzNkYjA1ZGU3MDQ5YWM0NDk1MTA5NGM4YjIz MTcxM2RhYjA5Y2E2NDFkM2NlYTY1YzVlM2IwMWQ0MWQ5MzM1MTYzNWIwOGE3NjdhZmFkZmQ3ODY1 Mzg4ZWJiZTI5ZThmNDcwMzNkMWZlNTMwZDdkNDVmYTFjMjY2NzA1YjI2ZDY3MjgyODcyZGE5NTUx MjU2ZDg4NzA4ZTFlYzY5Y2U5Yjk0ZGI2YzdmM2U2YjdhZTA2NDE4YjM2NTM3Yjc4Mzk0NTRjNTM5 YjJiZGQ3NThhZjljMTkKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjViMTY4Y2FjMTEx M2RlMTJiYWM5NWFhYzM0NTAxODY2YWJkNjEwYzZjZTBkNTE1MjBmODNjODY1ZGI4ZDBjNjg4YjI3 YWYxMWUwOGRlYjRhMjY3M2MxNjBlZGQxZGE5MwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNl c3Npb25faWQ6MzJkYzMyODIxNDgzZWQ5OGY2OTY4MTNlNzEyZDIyOWI2ZmY1YTllMGY3ZjhlNTgy YTI2ZjBhNTIwNGZhNzY1NTA0MGRkYmM3OTFlMDBlN2E5NzlkZGVkOTM1NGVhMmRjCi0rQ3RybC50 eXBlID0gdHlwZTpGCi0rT3V0cHV0ID0gOTIyMWFiY2MzZGI1YTU1N2NjYTYwNDA4ZTY1NTI4ZTkz N2NjMzY3M2I1NDhjMzUwOTI0Y2Q5ZTYzODdkZTUyNmY1Y2IzNWEwYmJlNDAyMGM0NzMxOGI1OWQx YTA1MjdkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMDgwNTc1MzA4Y2EzOTU3OThiYjIxZWM1NDM4YzQ2YTg4ZmZhM2Y3 Zjc2NzFjMDZmOTI0YWJmN2MzY2ZiNDZjNzhjMDI1NTk2ZTRhYmE1MGMzMjcxMDg5MTg0YTQ0N2E1 NzFhYmI3ZjRhMWIxYzQxZjVkNWNhODA2Mjk0MGQ0MzY5Nzc4NTg5ZmRlODFhNzFiMjIyOGYwMThj NGM4MzZjZjM4OWY4NTRmODZkZTcxYTY4YjE2OTNmZThmZmExYzU5Y2U3ZTlmOTIyM2RlYmFkYTI1 NjZkMmIwZTU2NzhhNDhiZmI1MzBlN2JlZTQyYmQyYWM3MzA0YTBhNWFlMzM5YTJjZAotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YTQxMjVhYTk4OTgwOTJjYTUwYzNjMTYzMWMwM2RjYmM5 ZGY5NWNlYmI0MDk4ODFlNTgwMTA4YjZjYzQ3MDRiNzZjYzc3Yjg3OTVmZDU5NDA1NjFlMzIyNGNj NzU4NDg1MTg5OTJiZDhkOWI3MGZlMGZjOTc3YTQ3NjA2M2M4YmYKLStDdHJsLmhleHNlc3Npb25f aWQgPSBoZXhzZXNzaW9uX2lkOmE0MTI1YWE5ODk4MDkyY2E1MGMzYzE2MzFjMDNkY2JjOWRmOTVj ZWJiNDA5ODgxZTU4MDEwOGI2Y2M0NzA0Yjc2Y2M3N2I4Nzk1ZmQ1OTQwNTYxZTMyMjRjYzc1ODQ4 NTE4OTkyYmQ4ZDliNzBmZTBmYzk3N2E0NzYwNjNjOGJmCi0rQ3RybC50eXBlID0gdHlwZTpBCi0r T3V0cHV0ID0gMGUyNjkzYWRlMDUyNGFmOAotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBt ZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDU3NTMwOGNhMzk1Nzk4YmIy MWVjNTQzOGM0NmE4OGZmYTNmN2Y3NjcxYzA2ZjkyNGFiZjdjM2NmYjQ2Yzc4YzAyNTU5NmU0YWJh NTBjMzI3MTA4OTE4NGE0NDdhNTcxYWJiN2Y0YTFiMWM0MWY1ZDVjYTgwNjI5NDBkNDM2OTc3ODU4 OWZkZTgxYTcxYjIyMjhmMDE4YzRjODM2Y2YzODlmODU0Zjg2ZGU3MWE2OGIxNjkzZmU4ZmZhMWM1 OWNlN2U5ZjkyMjNkZWJhZGEyNTY2ZDJiMGU1Njc4YTQ4YmZiNTMwZTdiZWU0MmJkMmFjNzMwNGEw YTVhZTMzOWEyY2QKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmE0MTI1YWE5ODk4MDky Y2E1MGMzYzE2MzFjMDNkY2JjOWRmOTVjZWJiNDA5ODgxZTU4MDEwOGI2Y2M0NzA0Yjc2Y2M3N2I4 Nzk1ZmQ1OTQwNTYxZTMyMjRjYzc1ODQ4NTE4OTkyYmQ4ZDliNzBmZTBmYzk3N2E0NzYwNjNjOGJm Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphNDEyNWFhOTg5ODA5MmNhNTBj M2MxNjMxYzAzZGNiYzlkZjk1Y2ViYjQwOTg4MWU1ODAxMDhiNmNjNDcwNGI3NmNjNzdiODc5NWZk NTk0MDU2MWUzMjI0Y2M3NTg0ODUxODk5MmJkOGQ5YjcwZmUwZmM5NzdhNDc2MDYzYzhiZgotK0N0 cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IGIxMzE0NGRlMDIyOTViYjgKLSsKLStLREYgPSBT U0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAw ODA1NzUzMDhjYTM5NTc5OGJiMjFlYzU0MzhjNDZhODhmZmEzZjdmNzY3MWMwNmY5MjRhYmY3YzNj ZmI0NmM3OGMwMjU1OTZlNGFiYTUwYzMyNzEwODkxODRhNDQ3YTU3MWFiYjdmNGExYjFjNDFmNWQ1 Y2E4MDYyOTQwZDQzNjk3Nzg1ODlmZGU4MWE3MWIyMjI4ZjAxOGM0YzgzNmNmMzg5Zjg1NGY4NmRl NzFhNjhiMTY5M2ZlOGZmYTFjNTljZTdlOWY5MjIzZGViYWRhMjU2NmQyYjBlNTY3OGE0OGJmYjUz MGU3YmVlNDJiZDJhYzczMDRhMGE1YWUzMzlhMmNkCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNn aGFzaDphNDEyNWFhOTg5ODA5MmNhNTBjM2MxNjMxYzAzZGNiYzlkZjk1Y2ViYjQwOTg4MWU1ODAx MDhiNmNjNDcwNGI3NmNjNzdiODc5NWZkNTk0MDU2MWUzMjI0Y2M3NTg0ODUxODk5MmJkOGQ5Yjcw ZmUwZmM5NzdhNDc2MDYzYzhiZgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 YTQxMjVhYTk4OTgwOTJjYTUwYzNjMTYzMWMwM2RjYmM5ZGY5NWNlYmI0MDk4ODFlNTgwMTA4YjZj YzQ3MDRiNzZjYzc3Yjg3OTVmZDU5NDA1NjFlMzIyNGNjNzU4NDg1MTg5OTJiZDhkOWI3MGZlMGZj OTc3YTQ3NjA2M2M4YmYKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSA3ZTRhNzIxZmI3 Mzc5ZWJiNDIzMzA2NDY0ZDU3ZGI0NmFmYTNjY2ExMGExZDdmZWIKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA1NzUz MDhjYTM5NTc5OGJiMjFlYzU0MzhjNDZhODhmZmEzZjdmNzY3MWMwNmY5MjRhYmY3YzNjZmI0NmM3 OGMwMjU1OTZlNGFiYTUwYzMyNzEwODkxODRhNDQ3YTU3MWFiYjdmNGExYjFjNDFmNWQ1Y2E4MDYy OTQwZDQzNjk3Nzg1ODlmZGU4MWE3MWIyMjI4ZjAxOGM0YzgzNmNmMzg5Zjg1NGY4NmRlNzFhNjhi MTY5M2ZlOGZmYTFjNTljZTdlOWY5MjIzZGViYWRhMjU2NmQyYjBlNTY3OGE0OGJmYjUzMGU3YmVl NDJiZDJhYzczMDRhMGE1YWUzMzlhMmNkCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDph NDEyNWFhOTg5ODA5MmNhNTBjM2MxNjMxYzAzZGNiYzlkZjk1Y2ViYjQwOTg4MWU1ODAxMDhiNmNj NDcwNGI3NmNjNzdiODc5NWZkNTk0MDU2MWUzMjI0Y2M3NTg0ODUxODk5MmJkOGQ5YjcwZmUwZmM5 NzdhNDc2MDYzYzhiZgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTQxMjVh YTk4OTgwOTJjYTUwYzNjMTYzMWMwM2RjYmM5ZGY5NWNlYmI0MDk4ODFlNTgwMTA4YjZjYzQ3MDRi NzZjYzc3Yjg3OTVmZDU5NDA1NjFlMzIyNGNjNzU4NDg1MTg5OTJiZDhkOWI3MGZlMGZjOTc3YTQ3 NjA2M2M4YmYKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBiYjg0MTIzYjFmYWM0MDBl MGRmNDc2N2Q3OGQwMTE0MjdlMWVkZDRkNGM5MzRiOTUKLSsKLStLREYgPSBTU0hLREYKLStDdHJs Lm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA1NzUzMDhjYTM5 NTc5OGJiMjFlYzU0MzhjNDZhODhmZmEzZjdmNzY3MWMwNmY5MjRhYmY3YzNjZmI0NmM3OGMwMjU1 OTZlNGFiYTUwYzMyNzEwODkxODRhNDQ3YTU3MWFiYjdmNGExYjFjNDFmNWQ1Y2E4MDYyOTQwZDQz Njk3Nzg1ODlmZGU4MWE3MWIyMjI4ZjAxOGM0YzgzNmNmMzg5Zjg1NGY4NmRlNzFhNjhiMTY5M2Zl OGZmYTFjNTljZTdlOWY5MjIzZGViYWRhMjU2NmQyYjBlNTY3OGE0OGJmYjUzMGU3YmVlNDJiZDJh YzczMDRhMGE1YWUzMzlhMmNkCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDphNDEyNWFh OTg5ODA5MmNhNTBjM2MxNjMxYzAzZGNiYzlkZjk1Y2ViYjQwOTg4MWU1ODAxMDhiNmNjNDcwNGI3 NmNjNzdiODc5NWZkNTk0MDU2MWUzMjI0Y2M3NTg0ODUxODk5MmJkOGQ5YjcwZmUwZmM5NzdhNDc2 MDYzYzhiZgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTQxMjVhYTk4OTgw OTJjYTUwYzNjMTYzMWMwM2RjYmM5ZGY5NWNlYmI0MDk4ODFlNTgwMTA4YjZjYzQ3MDRiNzZjYzc3 Yjg3OTVmZDU5NDA1NjFlMzIyNGNjNzU4NDg1MTg5OTJiZDhkOWI3MGZlMGZjOTc3YTQ3NjA2M2M4 YmYKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSAwMGZiMGE0NWM2NTBkZDljOTU2NjZi MGM3ZmNlYThjOThmMDU2MmY2MWI4NjIwNTRlZTQwMGFlYzg3NWRiYmMyYmRlZjQ4MDZjMDkyMTc3 MDlhNTA1MDU2OTMxMmVmZTNhZjUxM2U3YWE3MzNjNzI0NTdhYmUxNjA3YWMwMWMxMwotKwotK0tE RiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTow MDAwMDA4MDU3NTMwOGNhMzk1Nzk4YmIyMWVjNTQzOGM0NmE4OGZmYTNmN2Y3NjcxYzA2ZjkyNGFi ZjdjM2NmYjQ2Yzc4YzAyNTU5NmU0YWJhNTBjMzI3MTA4OTE4NGE0NDdhNTcxYWJiN2Y0YTFiMWM0 MWY1ZDVjYTgwNjI5NDBkNDM2OTc3ODU4OWZkZTgxYTcxYjIyMjhmMDE4YzRjODM2Y2YzODlmODU0 Zjg2ZGU3MWE2OGIxNjkzZmU4ZmZhMWM1OWNlN2U5ZjkyMjNkZWJhZGEyNTY2ZDJiMGU1Njc4YTQ4 YmZiNTMwZTdiZWU0MmJkMmFjNzMwNGEwYTVhZTMzOWEyY2QKLStDdHJsLmhleHhjZ2hhc2ggPSBo ZXh4Y2doYXNoOmE0MTI1YWE5ODk4MDkyY2E1MGMzYzE2MzFjMDNkY2JjOWRmOTVjZWJiNDA5ODgx ZTU4MDEwOGI2Y2M0NzA0Yjc2Y2M3N2I4Nzk1ZmQ1OTQwNTYxZTMyMjRjYzc1ODQ4NTE4OTkyYmQ4 ZDliNzBmZTBmYzk3N2E0NzYwNjNjOGJmCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lv bl9pZDphNDEyNWFhOTg5ODA5MmNhNTBjM2MxNjMxYzAzZGNiYzlkZjk1Y2ViYjQwOTg4MWU1ODAx MDhiNmNjNDcwNGI3NmNjNzdiODc5NWZkNTk0MDU2MWUzMjI0Y2M3NTg0ODUxODk5MmJkOGQ5Yjcw ZmUwZmM5NzdhNDc2MDYzYzhiZgotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDcwYTgw MDVlNzExZmI5NmRlYTU5OTFjYjY4ODMxYjllODYwMDU4MjFiNDVjZWFmOTU4YzEzZDVjODdjYmQy OTUzZDA4NzdjMjY3Nzk2ZWRmOGM3ZmIzZDc2OGJiMjZiNzRlNTQyZjQwYmY5YWM5ZjZhOWQyMTcw NzdlODVmNTExCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwu aGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwMmIyZTZmNzU0NWZhNjZlMTA3OGM2N2M1NDU3ZGJmNWVl MDM4MDFlZGVmNDQyMWQ0ZjBlNzk3Yjk0N2I3OWUyOTNlZjcyNDI1M2VjNGFkYjUzOTc3ZjAyN2Ey ZDU3N2Q3Nzc5ZTk2YmU0ZTA5M2IwYzM2YmU2Mjc3OGM1YmQ0OGRiYjBiZmYxMzM1NDcwZTEwY2Rl YzRkZjg4ZThmZWIwMGQzMjI0MjZiYWYzMDM1ZTlmZGExYWFmODE5YmU0OGRhY2M2NDBkNTJlYjg3 NTBjYzZmZDgwMzFkMGNiYTBlZjBhMTE5NzNkNDMxMzhkZDJkMTFkMmVlZjFmYzkyNjMyNwotK0N0 cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NGRjMDA1ZGM2YWQ1MDc1Y2Y2YWJiZWRiNTNhMDQw NzEwNDY1OWNkMTY4YjU4ZDAxNGZiMjQ2NWQ2ZjFkMTE0MGQ1ZmVmNjM0ZjM0NWM2YzM4YWMyYThk YjM3NzFlNGIwYzcxYzUxZmFmODVhMjk3YmJkZjdkZGY4MjI4YzMxNTkKLStDdHJsLmhleHNlc3Np b25faWQgPSBoZXhzZXNzaW9uX2lkOmE2NzRhYWNlZDgzNDUzMjQyMjFiYmQ4MzU2YWI4MzU1ZmQz ZDNlNDEwYWU5NzRjMGRhMTk2ZjRjZDU4Y2MwMjM2YTg1OTAwNjI2ZGE2OTZkYWI4YmUyM2FhYTUy OTQ1OGFjNmNjZjY0MDU4ZmQyZmQxNDBjYTFhMWEwYzU3OTg4Ci0rQ3RybC50eXBlID0gdHlwZTpB Ci0rT3V0cHV0ID0gYzc1Yzc3NzkxZjdiNjdjMgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDJiMmU2Zjc1NDVmYTY2 ZTEwNzhjNjdjNTQ1N2RiZjVlZTAzODAxZWRlZjQ0MjFkNGYwZTc5N2I5NDdiNzllMjkzZWY3MjQy NTNlYzRhZGI1Mzk3N2YwMjdhMmQ1NzdkNzc3OWU5NmJlNGUwOTNiMGMzNmJlNjI3NzhjNWJkNDhk YmIwYmZmMTMzNTQ3MGUxMGNkZWM0ZGY4OGU4ZmViMDBkMzIyNDI2YmFmMzAzNWU5ZmRhMWFhZjgx OWJlNDhkYWNjNjQwZDUyZWI4NzUwY2M2ZmQ4MDMxZDBjYmEwZWYwYTExOTczZDQzMTM4ZGQyZDEx ZDJlZWYxZmM5MjYzMjcKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjRkYzAwNWRjNmFk NTA3NWNmNmFiYmVkYjUzYTA0MDcxMDQ2NTljZDE2OGI1OGQwMTRmYjI0NjVkNmYxZDExNDBkNWZl ZjYzNGYzNDVjNmMzOGFjMmE4ZGIzNzcxZTRiMGM3MWM1MWZhZjg1YTI5N2JiZGY3ZGRmODIyOGMz MTU5Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphNjc0YWFjZWQ4MzQ1MzI0 MjIxYmJkODM1NmFiODM1NWZkM2QzZTQxMGFlOTc0YzBkYTE5NmY0Y2Q1OGNjMDIzNmE4NTkwMDYy NmRhNjk2ZGFiOGJlMjNhYWE1Mjk0NThhYzZjY2Y2NDA1OGZkMmZkMTQwY2ExYTFhMGM1Nzk4OAot K0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IGRhZTFlOGJmYWIxYjRiN2UKLSsKLStLREYg PSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAw MDAwODAyYjJlNmY3NTQ1ZmE2NmUxMDc4YzY3YzU0NTdkYmY1ZWUwMzgwMWVkZWY0NDIxZDRmMGU3 OTdiOTQ3Yjc5ZTI5M2VmNzI0MjUzZWM0YWRiNTM5NzdmMDI3YTJkNTc3ZDc3NzllOTZiZTRlMDkz YjBjMzZiZTYyNzc4YzViZDQ4ZGJiMGJmZjEzMzU0NzBlMTBjZGVjNGRmODhlOGZlYjAwZDMyMjQy NmJhZjMwMzVlOWZkYTFhYWY4MTliZTQ4ZGFjYzY0MGQ1MmViODc1MGNjNmZkODAzMWQwY2JhMGVm MGExMTk3M2Q0MzEzOGRkMmQxMWQyZWVmMWZjOTI2MzI3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDo0ZGMwMDVkYzZhZDUwNzVjZjZhYmJlZGI1M2EwNDA3MTA0NjU5Y2QxNjhiNThkMDE0 ZmIyNDY1ZDZmMWQxMTQwZDVmZWY2MzRmMzQ1YzZjMzhhYzJhOGRiMzc3MWU0YjBjNzFjNTFmYWY4 NWEyOTdiYmRmN2RkZjgyMjhjMzE1OQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6YTY3NGFhY2VkODM0NTMyNDIyMWJiZDgzNTZhYjgzNTVmZDNkM2U0MTBhZTk3NGMwZGExOTZm NGNkNThjYzAyMzZhODU5MDA2MjZkYTY5NmRhYjhiZTIzYWFhNTI5NDU4YWM2Y2NmNjQwNThmZDJm ZDE0MGNhMWExYTBjNTc5ODgKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAwZTc5ZjVi Njg1ZWJlNzdhZTZkNjJjMzQ0YTVkZDBmNTM1MDI1MjNhMjhlMmI0MDgKLSsKLStLREYgPSBTU0hL REYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAy YjJlNmY3NTQ1ZmE2NmUxMDc4YzY3YzU0NTdkYmY1ZWUwMzgwMWVkZWY0NDIxZDRmMGU3OTdiOTQ3 Yjc5ZTI5M2VmNzI0MjUzZWM0YWRiNTM5NzdmMDI3YTJkNTc3ZDc3NzllOTZiZTRlMDkzYjBjMzZi ZTYyNzc4YzViZDQ4ZGJiMGJmZjEzMzU0NzBlMTBjZGVjNGRmODhlOGZlYjAwZDMyMjQyNmJhZjMw MzVlOWZkYTFhYWY4MTliZTQ4ZGFjYzY0MGQ1MmViODc1MGNjNmZkODAzMWQwY2JhMGVmMGExMTk3 M2Q0MzEzOGRkMmQxMWQyZWVmMWZjOTI2MzI3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDo0ZGMwMDVkYzZhZDUwNzVjZjZhYmJlZGI1M2EwNDA3MTA0NjU5Y2QxNjhiNThkMDE0ZmIyNDY1 ZDZmMWQxMTQwZDVmZWY2MzRmMzQ1YzZjMzhhYzJhOGRiMzc3MWU0YjBjNzFjNTFmYWY4NWEyOTdi YmRmN2RkZjgyMjhjMzE1OQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTY3 NGFhY2VkODM0NTMyNDIyMWJiZDgzNTZhYjgzNTVmZDNkM2U0MTBhZTk3NGMwZGExOTZmNGNkNThj YzAyMzZhODU5MDA2MjZkYTY5NmRhYjhiZTIzYWFhNTI5NDU4YWM2Y2NmNjQwNThmZDJmZDE0MGNh MWExYTBjNTc5ODgKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBjNWVjMWFhZTVkMjZj MmM1ZmU3Njk1NzZlYjFiNzVjNTNkM2RjNjdkNDUyZGNhMWMKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAyYjJlNmY3 NTQ1ZmE2NmUxMDc4YzY3YzU0NTdkYmY1ZWUwMzgwMWVkZWY0NDIxZDRmMGU3OTdiOTQ3Yjc5ZTI5 M2VmNzI0MjUzZWM0YWRiNTM5NzdmMDI3YTJkNTc3ZDc3NzllOTZiZTRlMDkzYjBjMzZiZTYyNzc4 YzViZDQ4ZGJiMGJmZjEzMzU0NzBlMTBjZGVjNGRmODhlOGZlYjAwZDMyMjQyNmJhZjMwMzVlOWZk YTFhYWY4MTliZTQ4ZGFjYzY0MGQ1MmViODc1MGNjNmZkODAzMWQwY2JhMGVmMGExMTk3M2Q0MzEz OGRkMmQxMWQyZWVmMWZjOTI2MzI3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0ZGMw MDVkYzZhZDUwNzVjZjZhYmJlZGI1M2EwNDA3MTA0NjU5Y2QxNjhiNThkMDE0ZmIyNDY1ZDZmMWQx MTQwZDVmZWY2MzRmMzQ1YzZjMzhhYzJhOGRiMzc3MWU0YjBjNzFjNTFmYWY4NWEyOTdiYmRmN2Rk ZjgyMjhjMzE1OQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTY3NGFhY2Vk ODM0NTMyNDIyMWJiZDgzNTZhYjgzNTVmZDNkM2U0MTBhZTk3NGMwZGExOTZmNGNkNThjYzAyMzZh ODU5MDA2MjZkYTY5NmRhYjhiZTIzYWFhNTI5NDU4YWM2Y2NmNjQwNThmZDJmZDE0MGNhMWExYTBj NTc5ODgKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA2YmM0ZTVkNjA0OWM2OWE4ZmZi ZjkzYzc2MTdiNmExNjhiZDBmMTRkNzE0NzFkMTk5YjgxNzI5MjUwMTE3MjcyYWQxMDI3NzI3NjFh OGMwYjVkNTI0MGU1ODllNDhhNGY4NWFiOGMzZTFiZDAzMDMyN2U3Yzg3NDI4ZWU0NGQxMwotKwot K0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDA4MDJiMmU2Zjc1NDVmYTY2ZTEwNzhjNjdjNTQ1N2RiZjVlZTAzODAxZWRlZjQ0MjFk NGYwZTc5N2I5NDdiNzllMjkzZWY3MjQyNTNlYzRhZGI1Mzk3N2YwMjdhMmQ1NzdkNzc3OWU5NmJl NGUwOTNiMGMzNmJlNjI3NzhjNWJkNDhkYmIwYmZmMTMzNTQ3MGUxMGNkZWM0ZGY4OGU4ZmViMDBk MzIyNDI2YmFmMzAzNWU5ZmRhMWFhZjgxOWJlNDhkYWNjNjQwZDUyZWI4NzUwY2M2ZmQ4MDMxZDBj YmEwZWYwYTExOTczZDQzMTM4ZGQyZDExZDJlZWYxZmM5MjYzMjcKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOjRkYzAwNWRjNmFkNTA3NWNmNmFiYmVkYjUzYTA0MDcxMDQ2NTljZDE2OGI1 OGQwMTRmYjI0NjVkNmYxZDExNDBkNWZlZjYzNGYzNDVjNmMzOGFjMmE4ZGIzNzcxZTRiMGM3MWM1 MWZhZjg1YTI5N2JiZGY3ZGRmODIyOGMzMTU5Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDphNjc0YWFjZWQ4MzQ1MzI0MjIxYmJkODM1NmFiODM1NWZkM2QzZTQxMGFlOTc0YzBk YTE5NmY0Y2Q1OGNjMDIzNmE4NTkwMDYyNmRhNjk2ZGFiOGJlMjNhYWE1Mjk0NThhYzZjY2Y2NDA1 OGZkMmZkMTQwY2ExYTFhMGM1Nzk4OAotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGNl MTA5YmFiZTg2Nzc4NTQyODU2ZTM5MzRiZTEyZGVjZDIzOTEyMGE0ZGNiOTQ4YTAxNTRjNGNiN2I4 YWMwYTRhM2NiZDY4MjY5ODA4NjEyM2U2YzA0ODFlZTM1MWJkOWZlZGZiYTU4ZDM3Zjc4MTRiYTlj MmI1ODRmNmNmZWRmCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4NTg3NGI5NTM5NGQ1Y2EzMDk2YjBhN2U2NDQ0 ZTEyOTU0NGU0YWNkOGRkNzA3OGM0NmRjNzQ2MzNkZjE3Mzc5ODZlN2RjNmY1OGFjMDljN2Q3MzRm ZDY4Mzc4ZjFlZTZkZjYwYzQ4YmRlMzQzZTU1YWIyYTU3OTZjYTNlYzI5NWYxNWE3NTUwMGY0NzZh OGE2ZjE3MjVmZGFkZTMzMzljZDdkYTBhMjUyODQ0OTY1MmQ3ZWEyMWE4MzRlNDI5NjFlZGU4NDc3 ZjYzYmFjODRjY2RiYTkzM2MyNzY1MTJkMzY3MDQ3N2QyNjk2NDAyMTc1MjA4NTI2Mjc2NzEyNTQx Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo4NTQwOTU1ODY3ZjY1ODBlOWMxZTdlM2Rm YWVmOWM0ZjgxMGRiZjMzNjRlNTRmNjZjNDcxYjUxZDExNjg2NTk4ZmFiZmY2YzNmNzhhN2FjMWM5 MDcxMGFiOTkxYWEwMDk4MGY5ZDU5NDhkNDYyNjYyZjZjNDM5ZmE3YjgwNDgzZgotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZjJlYmI3NDc5YzcxNDQwMjI3NTA3NTcyNWM0NzEy OTk0ZjA0NDg1YzA0OGZhZDM3ZDE1MDVmMWNlMmNkNmUzMjA1MTc4Mjg0OGFmYmVhNDM5OTIzMWZl YTViOGQzOWVjNTk2ZTExOGRjYzk1ZWEzNWZmZGRkOGM1NjExZjUyOTgKLStDdHJsLnR5cGUgPSB0 eXBlOkEKLStPdXRwdXQgPSA2YTcxZmM5OGYwNDQ1OTFkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3Ry bC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4NTg3NGI5 NTM5NGQ1Y2EzMDk2YjBhN2U2NDQ0ZTEyOTU0NGU0YWNkOGRkNzA3OGM0NmRjNzQ2MzNkZjE3Mzc5 ODZlN2RjNmY1OGFjMDljN2Q3MzRmZDY4Mzc4ZjFlZTZkZjYwYzQ4YmRlMzQzZTU1YWIyYTU3OTZj YTNlYzI5NWYxNWE3NTUwMGY0NzZhOGE2ZjE3MjVmZGFkZTMzMzljZDdkYTBhMjUyODQ0OTY1MmQ3 ZWEyMWE4MzRlNDI5NjFlZGU4NDc3ZjYzYmFjODRjY2RiYTkzM2MyNzY1MTJkMzY3MDQ3N2QyNjk2 NDAyMTc1MjA4NTI2Mjc2NzEyNTQxCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo4NTQw OTU1ODY3ZjY1ODBlOWMxZTdlM2RmYWVmOWM0ZjgxMGRiZjMzNjRlNTRmNjZjNDcxYjUxZDExNjg2 NTk4ZmFiZmY2YzNmNzhhN2FjMWM5MDcxMGFiOTkxYWEwMDk4MGY5ZDU5NDhkNDYyNjYyZjZjNDM5 ZmE3YjgwNDgzZgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZjJlYmI3NDc5 YzcxNDQwMjI3NTA3NTcyNWM0NzEyOTk0ZjA0NDg1YzA0OGZhZDM3ZDE1MDVmMWNlMmNkNmUzMjA1 MTc4Mjg0OGFmYmVhNDM5OTIzMWZlYTViOGQzOWVjNTk2ZTExOGRjYzk1ZWEzNWZmZGRkOGM1NjEx ZjUyOTgKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA5ZjFhMzVhNWM3OTAxNGMwCi0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMDgxMDA4NTg3NGI5NTM5NGQ1Y2EzMDk2YjBhN2U2NDQ0ZTEyOTU0NGU0YWNkOGRk NzA3OGM0NmRjNzQ2MzNkZjE3Mzc5ODZlN2RjNmY1OGFjMDljN2Q3MzRmZDY4Mzc4ZjFlZTZkZjYw YzQ4YmRlMzQzZTU1YWIyYTU3OTZjYTNlYzI5NWYxNWE3NTUwMGY0NzZhOGE2ZjE3MjVmZGFkZTMz MzljZDdkYTBhMjUyODQ0OTY1MmQ3ZWEyMWE4MzRlNDI5NjFlZGU4NDc3ZjYzYmFjODRjY2RiYTkz M2MyNzY1MTJkMzY3MDQ3N2QyNjk2NDAyMTc1MjA4NTI2Mjc2NzEyNTQxCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDo4NTQwOTU1ODY3ZjY1ODBlOWMxZTdlM2RmYWVmOWM0ZjgxMGRiZjMz NjRlNTRmNjZjNDcxYjUxZDExNjg2NTk4ZmFiZmY2YzNmNzhhN2FjMWM5MDcxMGFiOTkxYWEwMDk4 MGY5ZDU5NDhkNDYyNjYyZjZjNDM5ZmE3YjgwNDgzZgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhl eHNlc3Npb25faWQ6ZjJlYmI3NDc5YzcxNDQwMjI3NTA3NTcyNWM0NzEyOTk0ZjA0NDg1YzA0OGZh ZDM3ZDE1MDVmMWNlMmNkNmUzMjA1MTc4Mjg0OGFmYmVhNDM5OTIzMWZlYTViOGQzOWVjNTk2ZTEx OGRjYzk1ZWEzNWZmZGRkOGM1NjExZjUyOTgKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQg PSAzNzc5MDFjYzcyZTRjMDZlMzBlMjdiMDM5MDJmNjVjNGE1OGI5ZDNmNWNmNDM0MzEKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6 MDAwMDAwODEwMDg1ODc0Yjk1Mzk0ZDVjYTMwOTZiMGE3ZTY0NDRlMTI5NTQ0ZTRhY2Q4ZGQ3MDc4 YzQ2ZGM3NDYzM2RmMTczNzk4NmU3ZGM2ZjU4YWMwOWM3ZDczNGZkNjgzNzhmMWVlNmRmNjBjNDhi ZGUzNDNlNTVhYjJhNTc5NmNhM2VjMjk1ZjE1YTc1NTAwZjQ3NmE4YTZmMTcyNWZkYWRlMzMzOWNk N2RhMGEyNTI4NDQ5NjUyZDdlYTIxYTgzNGU0Mjk2MWVkZTg0NzdmNjNiYWM4NGNjZGJhOTMzYzI3 NjUxMmQzNjcwNDc3ZDI2OTY0MDIxNzUyMDg1MjYyNzY3MTI1NDEKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOjg1NDA5NTU4NjdmNjU4MGU5YzFlN2UzZGZhZWY5YzRmODEwZGJmMzM2NGU1 NGY2NmM0NzFiNTFkMTE2ODY1OThmYWJmZjZjM2Y3OGE3YWMxYzkwNzEwYWI5OTFhYTAwOTgwZjlk NTk0OGQ0NjI2NjJmNmM0MzlmYTdiODA0ODNmCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDpmMmViYjc0NzljNzE0NDAyMjc1MDc1NzI1YzQ3MTI5OTRmMDQ0ODVjMDQ4ZmFkMzdk MTUwNWYxY2UyY2Q2ZTMyMDUxNzgyODQ4YWZiZWE0Mzk5MjMxZmVhNWI4ZDM5ZWM1OTZlMTE4ZGNj OTVlYTM1ZmZkZGQ4YzU2MTFmNTI5OAotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDgy YTlkYjk0ZWE1YzE1ZGZmNzM2YzMwNzRhMzQ5NTFlODI4YzhkZmEzZmVmODU5NgotKwotK0tERiA9 IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDA4MTAwODU4NzRiOTUzOTRkNWNhMzA5NmIwYTdlNjQ0NGUxMjk1NDRlNGFjZDhkZDcwNzhjNDZk Yzc0NjMzZGYxNzM3OTg2ZTdkYzZmNThhYzA5YzdkNzM0ZmQ2ODM3OGYxZWU2ZGY2MGM0OGJkZTM0 M2U1NWFiMmE1Nzk2Y2EzZWMyOTVmMTVhNzU1MDBmNDc2YThhNmYxNzI1ZmRhZGUzMzM5Y2Q3ZGEw YTI1Mjg0NDk2NTJkN2VhMjFhODM0ZTQyOTYxZWRlODQ3N2Y2M2JhYzg0Y2NkYmE5MzNjMjc2NTEy ZDM2NzA0NzdkMjY5NjQwMjE3NTIwODUyNjI3NjcxMjU0MQotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6ODU0MDk1NTg2N2Y2NTgwZTljMWU3ZTNkZmFlZjljNGY4MTBkYmYzMzY0ZTU0ZjY2 YzQ3MWI1MWQxMTY4NjU5OGZhYmZmNmMzZjc4YTdhYzFjOTA3MTBhYjk5MWFhMDA5ODBmOWQ1OTQ4 ZDQ2MjY2MmY2YzQzOWZhN2I4MDQ4M2YKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9u X2lkOmYyZWJiNzQ3OWM3MTQ0MDIyNzUwNzU3MjVjNDcxMjk5NGYwNDQ4NWMwNDhmYWQzN2QxNTA1 ZjFjZTJjZDZlMzIwNTE3ODI4NDhhZmJlYTQzOTkyMzFmZWE1YjhkMzllYzU5NmUxMThkY2M5NWVh MzVmZmRkZDhjNTYxMWY1Mjk4Ci0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gYjNjZTAy MDJjOTY2ZGYzMDdhMDcyOWE0YmIzZmNkMGVlNTVkNGM1MjFhMTQ0ZWNkMjg1YTQ3MDgzMGY2MDY4 NWIyZDc1MTg4M2Q4NWNjZDI5ZmNjMjQ4MWYzZjQ0MmZkZWRkNThkMTc1MjhlOGM0ZmIyODQ3M2Vl NWU1Mzk3MDYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDg1ODc0Yjk1Mzk0ZDVjYTMwOTZiMGE3ZTY0NDRlMTI5 NTQ0ZTRhY2Q4ZGQ3MDc4YzQ2ZGM3NDYzM2RmMTczNzk4NmU3ZGM2ZjU4YWMwOWM3ZDczNGZkNjgz NzhmMWVlNmRmNjBjNDhiZGUzNDNlNTVhYjJhNTc5NmNhM2VjMjk1ZjE1YTc1NTAwZjQ3NmE4YTZm MTcyNWZkYWRlMzMzOWNkN2RhMGEyNTI4NDQ5NjUyZDdlYTIxYTgzNGU0Mjk2MWVkZTg0NzdmNjNi YWM4NGNjZGJhOTMzYzI3NjUxMmQzNjcwNDc3ZDI2OTY0MDIxNzUyMDg1MjYyNzY3MTI1NDEKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjg1NDA5NTU4NjdmNjU4MGU5YzFlN2UzZGZhZWY5 YzRmODEwZGJmMzM2NGU1NGY2NmM0NzFiNTFkMTE2ODY1OThmYWJmZjZjM2Y3OGE3YWMxYzkwNzEw YWI5OTFhYTAwOTgwZjlkNTk0OGQ0NjI2NjJmNmM0MzlmYTdiODA0ODNmCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpmMmViYjc0NzljNzE0NDAyMjc1MDc1NzI1YzQ3MTI5OTRm MDQ0ODVjMDQ4ZmFkMzdkMTUwNWYxY2UyY2Q2ZTMyMDUxNzgyODQ4YWZiZWE0Mzk5MjMxZmVhNWI4 ZDM5ZWM1OTZlMTE4ZGNjOTVlYTM1ZmZkZGQ4YzU2MTFmNTI5OAotK0N0cmwudHlwZSA9IHR5cGU6 RgotK091dHB1dCA9IGMxYWI3MjI3ZjkxOWNiZGE0NmNkNmFjMmJkNGJiMmVlNWJkNTg2Y2M1NWM3 YzFjYjA2N2RmNGM5YTIzMjA5ZjcxNmZmNWU5N2VkNzZlYmJjMDM1NGQ2ODNjNTM2OTkzN2NhOGRi NGNlY2Y5ZTZjNDA4ODZhMTg2ZDljNGUyMzY2Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9 IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBlMTQzNmI1ZWY3MTQw OTJhNmEwYzhjYzE1OTM2ODJhN2NhNGMwNWRlNDIzZmI1ZjU3YzFkMjI1OTQzZDhlNGE1YjUyNjI4 OGE0NmE5YTBmZGIxMGI1OWMwYmViOGMxZGM1YjRkMmJkZjM0ZWVjMjUyNWRmODRiY2EyZjhiNzY5 ODk3MTgzYTQ1YzdlNjExNzFlY2VhNmUyYmU4MGQzYmVjZWM4MzU1YWMzODUzYmQ4ZDA3NzY5N2Fm NmU3NzQxMzMxNDMyNjViZGQ1MzhiNGZiNjQ3ODZhYWFhMzNlNDUxMzhmZDg2OTdmZjFjNzdiNTBm NjNkZDhlOTQ3NmE3NGMwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozNjdjODA0ODRk N2UwMWUwOTE1OTU5ZTlmY2I1MTI0ZmE2NzQ0ODljZjBlYzRiMGZlZTZhNjJkZDc3ZjY3N2RiOTAx ZDlmYjQxN2NlY2YyYTk4ZjBiMjRiYzI0ZWRiYjFmMzRhYjE5ZjhkNGQyOTc2OTU4ZjdkOTlhZTJj NzhiMwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MGExYmJmYjg5MDA4N2Vm MjYwYTg4ZmFmYjkyZjE2NzY1NDQ0YWRjNGRjYjAwZWZkNDc1MGQ1OWYxZDhmNGI2NjYyZWRkMzc5 ZDgxMmRkYzgyMmNlYTc5Njc1NzMxYTVlNTc5MWYyOWViZDE3ZjNmODNlNjc1ZTllOWY2YWYzZTMK LStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSAzODMyYmYyMWI5MDdkYWEzCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMDgxMDBlMTQzNmI1ZWY3MTQwOTJhNmEwYzhjYzE1OTM2ODJhN2NhNGMwNWRlNDIzZmI1ZjU3 YzFkMjI1OTQzZDhlNGE1YjUyNjI4OGE0NmE5YTBmZGIxMGI1OWMwYmViOGMxZGM1YjRkMmJkZjM0 ZWVjMjUyNWRmODRiY2EyZjhiNzY5ODk3MTgzYTQ1YzdlNjExNzFlY2VhNmUyYmU4MGQzYmVjZWM4 MzU1YWMzODUzYmQ4ZDA3NzY5N2FmNmU3NzQxMzMxNDMyNjViZGQ1MzhiNGZiNjQ3ODZhYWFhMzNl NDUxMzhmZDg2OTdmZjFjNzdiNTBmNjNkZDhlOTQ3NmE3NGMwCi0rQ3RybC5oZXh4Y2doYXNoID0g aGV4eGNnaGFzaDozNjdjODA0ODRkN2UwMWUwOTE1OTU5ZTlmY2I1MTI0ZmE2NzQ0ODljZjBlYzRi MGZlZTZhNjJkZDc3ZjY3N2RiOTAxZDlmYjQxN2NlY2YyYTk4ZjBiMjRiYzI0ZWRiYjFmMzRhYjE5 ZjhkNGQyOTc2OTU4ZjdkOTlhZTJjNzhiMwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6MGExYmJmYjg5MDA4N2VmMjYwYTg4ZmFmYjkyZjE2NzY1NDQ0YWRjNGRjYjAwZWZkNDc1 MGQ1OWYxZDhmNGI2NjYyZWRkMzc5ZDgxMmRkYzgyMmNlYTc5Njc1NzMxYTVlNTc5MWYyOWViZDE3 ZjNmODNlNjc1ZTllOWY2YWYzZTMKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA0ZTA0 ZDc3ODdiYTdmYTY4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBlMTQzNmI1ZWY3MTQwOTJhNmEwYzhjYzE1OTM2 ODJhN2NhNGMwNWRlNDIzZmI1ZjU3YzFkMjI1OTQzZDhlNGE1YjUyNjI4OGE0NmE5YTBmZGIxMGI1 OWMwYmViOGMxZGM1YjRkMmJkZjM0ZWVjMjUyNWRmODRiY2EyZjhiNzY5ODk3MTgzYTQ1YzdlNjEx NzFlY2VhNmUyYmU4MGQzYmVjZWM4MzU1YWMzODUzYmQ4ZDA3NzY5N2FmNmU3NzQxMzMxNDMyNjVi ZGQ1MzhiNGZiNjQ3ODZhYWFhMzNlNDUxMzhmZDg2OTdmZjFjNzdiNTBmNjNkZDhlOTQ3NmE3NGMw Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozNjdjODA0ODRkN2UwMWUwOTE1OTU5ZTlm Y2I1MTI0ZmE2NzQ0ODljZjBlYzRiMGZlZTZhNjJkZDc3ZjY3N2RiOTAxZDlmYjQxN2NlY2YyYTk4 ZjBiMjRiYzI0ZWRiYjFmMzRhYjE5ZjhkNGQyOTc2OTU4ZjdkOTlhZTJjNzhiMwotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MGExYmJmYjg5MDA4N2VmMjYwYTg4ZmFmYjkyZjE2 NzY1NDQ0YWRjNGRjYjAwZWZkNDc1MGQ1OWYxZDhmNGI2NjYyZWRkMzc5ZDgxMmRkYzgyMmNlYTc5 Njc1NzMxYTVlNTc5MWYyOWViZDE3ZjNmODNlNjc1ZTllOWY2YWYzZTMKLStDdHJsLnR5cGUgPSB0 eXBlOkMKLStPdXRwdXQgPSBkN2JlOTQ5ZWRjZmU0ZTRiODc3ZGUxY2M2YTg2MWZhNzIxZTEzN2Jm M2RkMWJiMjcKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5o ZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGUxNDM2YjVlZjcxNDA5MmE2YTBjOGNjMTU5MzY4MmE3 Y2E0YzA1ZGU0MjNmYjVmNTdjMWQyMjU5NDNkOGU0YTViNTI2Mjg4YTQ2YTlhMGZkYjEwYjU5YzBi ZWI4YzFkYzViNGQyYmRmMzRlZWMyNTI1ZGY4NGJjYTJmOGI3Njk4OTcxODNhNDVjN2U2MTE3MWVj ZWE2ZTJiZTgwZDNiZWNlYzgzNTVhYzM4NTNiZDhkMDc3Njk3YWY2ZTc3NDEzMzE0MzI2NWJkZDUz OGI0ZmI2NDc4NmFhYWEzM2U0NTEzOGZkODY5N2ZmMWM3N2I1MGY2M2RkOGU5NDc2YTc0YzAKLStD dHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjM2N2M4MDQ4NGQ3ZTAxZTA5MTU5NTllOWZjYjUx MjRmYTY3NDQ4OWNmMGVjNGIwZmVlNmE2MmRkNzdmNjc3ZGI5MDFkOWZiNDE3Y2VjZjJhOThmMGIy NGJjMjRlZGJiMWYzNGFiMTlmOGQ0ZDI5NzY5NThmN2Q5OWFlMmM3OGIzCi0rQ3RybC5oZXhzZXNz aW9uX2lkID0gaGV4c2Vzc2lvbl9pZDowYTFiYmZiODkwMDg3ZWYyNjBhODhmYWZiOTJmMTY3NjU0 NDRhZGM0ZGNiMDBlZmQ0NzUwZDU5ZjFkOGY0YjY2NjJlZGQzNzlkODEyZGRjODIyY2VhNzk2NzU3 MzFhNWU1NzkxZjI5ZWJkMTdmM2Y4M2U2NzVlOWU5ZjZhZjNlMwotK0N0cmwudHlwZSA9IHR5cGU6 RAotK091dHB1dCA9IDUzNjFmYzg3ZTI0ZWMzMDMxZDk3ZjAwOTk3NjZhYzlmZjdiOGY5MWVhODc2 NjZkZQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtl eSA9IGhleGtleTowMDAwMDA4MTAwZTE0MzZiNWVmNzE0MDkyYTZhMGM4Y2MxNTkzNjgyYTdjYTRj MDVkZTQyM2ZiNWY1N2MxZDIyNTk0M2Q4ZTRhNWI1MjYyODhhNDZhOWEwZmRiMTBiNTljMGJlYjhj MWRjNWI0ZDJiZGYzNGVlYzI1MjVkZjg0YmNhMmY4Yjc2OTg5NzE4M2E0NWM3ZTYxMTcxZWNlYTZl MmJlODBkM2JlY2VjODM1NWFjMzg1M2JkOGQwNzc2OTdhZjZlNzc0MTMzMTQzMjY1YmRkNTM4YjRm YjY0Nzg2YWFhYTMzZTQ1MTM4ZmQ4Njk3ZmYxYzc3YjUwZjYzZGQ4ZTk0NzZhNzRjMAotK0N0cmwu aGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6MzY3YzgwNDg0ZDdlMDFlMDkxNTk1OWU5ZmNiNTEyNGZh Njc0NDg5Y2YwZWM0YjBmZWU2YTYyZGQ3N2Y2NzdkYjkwMWQ5ZmI0MTdjZWNmMmE5OGYwYjI0YmMy NGVkYmIxZjM0YWIxOWY4ZDRkMjk3Njk1OGY3ZDk5YWUyYzc4YjMKLStDdHJsLmhleHNlc3Npb25f aWQgPSBoZXhzZXNzaW9uX2lkOjBhMWJiZmI4OTAwODdlZjI2MGE4OGZhZmI5MmYxNjc2NTQ0NGFk YzRkY2IwMGVmZDQ3NTBkNTlmMWQ4ZjRiNjY2MmVkZDM3OWQ4MTJkZGM4MjJjZWE3OTY3NTczMWE1 ZTU3OTFmMjllYmQxN2YzZjgzZTY3NWU5ZTlmNmFmM2UzCi0rQ3RybC50eXBlID0gdHlwZTpFCi0r T3V0cHV0ID0gNDBhNjg5NzYwNjAzNWViYjA0OTA3ZmExNWUxNTQ1YTg5NzNiOWIwOTQyM2YzNzg2 YmU0YmNiOGRiOWU0NTYxZTAzODViY2YxZTNjMGNlY2U1YTc4OGU5ODUyZWQxZGE1Njk2M2YzNmJh ZDc4ZmVkZTIxNDA1Y2UzZWE5MmEzYjgKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6 U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGUxNDM2YjVlZjcxNDA5MmE2 YTBjOGNjMTU5MzY4MmE3Y2E0YzA1ZGU0MjNmYjVmNTdjMWQyMjU5NDNkOGU0YTViNTI2Mjg4YTQ2 YTlhMGZkYjEwYjU5YzBiZWI4YzFkYzViNGQyYmRmMzRlZWMyNTI1ZGY4NGJjYTJmOGI3Njk4OTcx ODNhNDVjN2U2MTE3MWVjZWE2ZTJiZTgwZDNiZWNlYzgzNTVhYzM4NTNiZDhkMDc3Njk3YWY2ZTc3 NDEzMzE0MzI2NWJkZDUzOGI0ZmI2NDc4NmFhYWEzM2U0NTEzOGZkODY5N2ZmMWM3N2I1MGY2M2Rk OGU5NDc2YTc0YzAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjM2N2M4MDQ4NGQ3ZTAx ZTA5MTU5NTllOWZjYjUxMjRmYTY3NDQ4OWNmMGVjNGIwZmVlNmE2MmRkNzdmNjc3ZGI5MDFkOWZi NDE3Y2VjZjJhOThmMGIyNGJjMjRlZGJiMWYzNGFiMTlmOGQ0ZDI5NzY5NThmN2Q5OWFlMmM3OGIz Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDowYTFiYmZiODkwMDg3ZWYyNjBh ODhmYWZiOTJmMTY3NjU0NDRhZGM0ZGNiMDBlZmQ0NzUwZDU5ZjFkOGY0YjY2NjJlZGQzNzlkODEy ZGRjODIyY2VhNzk2NzU3MzFhNWU1NzkxZjI5ZWJkMTdmM2Y4M2U2NzVlOWU5ZjZhZjNlMwotK0N0 cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDcyN2Y5YmFkZTkzMzRmOTc0ODZmNDc5Yzg4NjE0 Y2U5NmI4Y2JjODAzYTU0NGZiZmFmNWZjYWYwNDk5YTFiOGVkZWI1OWRhYTFhODI0Y2E5YjE2NTg3 OWM2M2Q5ZjBiNjQ2NGJjZDMxMjFmYjFhZDI5YjM4ODY0ZmJhYWM3NzQxCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgx MDBmOGNmNDc5NTUwOGUyYWJhMGQ5YzAwN2VlMGFmYjM4YTdkNTcwZTI2ZDRlYmU5N2QzYjljYjQ2 ZGZjMDViOWIxODM5NjA1NGZhOTFmODU2NzU4YjAzNjE5NWE5YjM2MGVlNDhiNjVkY2VjMWYyZmNi OTAxZDVmYWEzMDgxMjViMzBiODA0ZTUzYWMxNWIyZjQzYzJhMTJmZGJjOTg3NzA3YWY1OGMzNmVj ZGNkODkzNzYxMTdmOTY1NWUxNGRhN2YxODA4YmFlYWFiMDIwYTQ3YWMzNTE2NmE0ODY4ZGFiOTcw Y2U3OWRlNTkyYzY5MTY0MDQ1ZmNlNGViNTU4NzJmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNn aGFzaDo0MGQ1OWM4ODM2NTAwZTUyM2U2NDA0YWMwM2Q5ODk1YjEwNWM3ZmVjZWFhYzUyZGMzYzVl NDExM2UyNTZjMDA1N2ZiYzc3MGI4MDVmN2EyZjE4YmYwYmUxMzM1N2ViOTlkYjkwNmVmYzVmYjc3 MmY5NmU1ZmU3NjA4OGUyZTZmMgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 YTYxOTI5MGFkNTUzYTJiMDkyNGYzZWE2MTUyODgzNjg1ZTNmMmNmNjA2MzQ4NzYxNmYwODNmYWRh ZTk1MDQ1MWRmNWY2ZThhMTQ0Y2Q5NTFiMmQ4NTNjN2VjMmQxYWVjZTljNDM4YTg5ODUwNzg4ZWRj NmJkNWUyYTdhOThhNDcKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSAzZjA3N2EwMmRj OTU3ZWIxCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBmOGNmNDc5NTUwOGUyYWJhMGQ5YzAwN2VlMGFmYjM4YTdk NTcwZTI2ZDRlYmU5N2QzYjljYjQ2ZGZjMDViOWIxODM5NjA1NGZhOTFmODU2NzU4YjAzNjE5NWE5 YjM2MGVlNDhiNjVkY2VjMWYyZmNiOTAxZDVmYWEzMDgxMjViMzBiODA0ZTUzYWMxNWIyZjQzYzJh MTJmZGJjOTg3NzA3YWY1OGMzNmVjZGNkODkzNzYxMTdmOTY1NWUxNGRhN2YxODA4YmFlYWFiMDIw YTQ3YWMzNTE2NmE0ODY4ZGFiOTcwY2U3OWRlNTkyYzY5MTY0MDQ1ZmNlNGViNTU4NzJmCi0rQ3Ry bC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0MGQ1OWM4ODM2NTAwZTUyM2U2NDA0YWMwM2Q5ODk1 YjEwNWM3ZmVjZWFhYzUyZGMzYzVlNDExM2UyNTZjMDA1N2ZiYzc3MGI4MDVmN2EyZjE4YmYwYmUx MzM1N2ViOTlkYjkwNmVmYzVmYjc3MmY5NmU1ZmU3NjA4OGUyZTZmMgotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6YTYxOTI5MGFkNTUzYTJiMDkyNGYzZWE2MTUyODgzNjg1ZTNm MmNmNjA2MzQ4NzYxNmYwODNmYWRhZTk1MDQ1MWRmNWY2ZThhMTQ0Y2Q5NTFiMmQ4NTNjN2VjMmQx YWVjZTljNDM4YTg5ODUwNzg4ZWRjNmJkNWUyYTdhOThhNDcKLStDdHJsLnR5cGUgPSB0eXBlOkIK LStPdXRwdXQgPSAzY2MxNThlMzQ4ZTY0YTBhCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9 IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBmOGNmNDc5NTUwOGUy YWJhMGQ5YzAwN2VlMGFmYjM4YTdkNTcwZTI2ZDRlYmU5N2QzYjljYjQ2ZGZjMDViOWIxODM5NjA1 NGZhOTFmODU2NzU4YjAzNjE5NWE5YjM2MGVlNDhiNjVkY2VjMWYyZmNiOTAxZDVmYWEzMDgxMjVi MzBiODA0ZTUzYWMxNWIyZjQzYzJhMTJmZGJjOTg3NzA3YWY1OGMzNmVjZGNkODkzNzYxMTdmOTY1 NWUxNGRhN2YxODA4YmFlYWFiMDIwYTQ3YWMzNTE2NmE0ODY4ZGFiOTcwY2U3OWRlNTkyYzY5MTY0 MDQ1ZmNlNGViNTU4NzJmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0MGQ1OWM4ODM2 NTAwZTUyM2U2NDA0YWMwM2Q5ODk1YjEwNWM3ZmVjZWFhYzUyZGMzYzVlNDExM2UyNTZjMDA1N2Zi Yzc3MGI4MDVmN2EyZjE4YmYwYmUxMzM1N2ViOTlkYjkwNmVmYzVmYjc3MmY5NmU1ZmU3NjA4OGUy ZTZmMgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTYxOTI5MGFkNTUzYTJi MDkyNGYzZWE2MTUyODgzNjg1ZTNmMmNmNjA2MzQ4NzYxNmYwODNmYWRhZTk1MDQ1MWRmNWY2ZThh MTQ0Y2Q5NTFiMmQ4NTNjN2VjMmQxYWVjZTljNDM4YTg5ODUwNzg4ZWRjNmJkNWUyYTdhOThhNDcK LStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSA4NzcwZmI2NzkyYzJmYzE2YTYwYzlmNDVj OGQ0MGRiNjg0ZmU1MmRlN2M2MGI0ODIKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6 U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGY4Y2Y0Nzk1NTA4ZTJhYmEw ZDljMDA3ZWUwYWZiMzhhN2Q1NzBlMjZkNGViZTk3ZDNiOWNiNDZkZmMwNWI5YjE4Mzk2MDU0ZmE5 MWY4NTY3NThiMDM2MTk1YTliMzYwZWU0OGI2NWRjZWMxZjJmY2I5MDFkNWZhYTMwODEyNWIzMGI4 MDRlNTNhYzE1YjJmNDNjMmExMmZkYmM5ODc3MDdhZjU4YzM2ZWNkY2Q4OTM3NjExN2Y5NjU1ZTE0 ZGE3ZjE4MDhiYWVhYWIwMjBhNDdhYzM1MTY2YTQ4NjhkYWI5NzBjZTc5ZGU1OTJjNjkxNjQwNDVm Y2U0ZWI1NTg3MmYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjQwZDU5Yzg4MzY1MDBl NTIzZTY0MDRhYzAzZDk4OTViMTA1YzdmZWNlYWFjNTJkYzNjNWU0MTEzZTI1NmMwMDU3ZmJjNzcw YjgwNWY3YTJmMThiZjBiZTEzMzU3ZWI5OWRiOTA2ZWZjNWZiNzcyZjk2ZTVmZTc2MDg4ZTJlNmYy Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphNjE5MjkwYWQ1NTNhMmIwOTI0 ZjNlYTYxNTI4ODM2ODVlM2YyY2Y2MDYzNDg3NjE2ZjA4M2ZhZGFlOTUwNDUxZGY1ZjZlOGExNDRj ZDk1MWIyZDg1M2M3ZWMyZDFhZWNlOWM0MzhhODk4NTA3ODhlZGM2YmQ1ZTJhN2E5OGE0NwotK0N0 cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGQ0MTdhMDdmMTA3MGEyZTYyODQyNGZhOTkwZWY0 MzZmMTM3NzI1YTdjZGU0M2YxYgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1 MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwZjhjZjQ3OTU1MDhlMmFiYTBkOWMw MDdlZTBhZmIzOGE3ZDU3MGUyNmQ0ZWJlOTdkM2I5Y2I0NmRmYzA1YjliMTgzOTYwNTRmYTkxZjg1 Njc1OGIwMzYxOTVhOWIzNjBlZTQ4YjY1ZGNlYzFmMmZjYjkwMWQ1ZmFhMzA4MTI1YjMwYjgwNGU1 M2FjMTViMmY0M2MyYTEyZmRiYzk4NzcwN2FmNThjMzZlY2RjZDg5Mzc2MTE3Zjk2NTVlMTRkYTdm MTgwOGJhZWFhYjAyMGE0N2FjMzUxNjZhNDg2OGRhYjk3MGNlNzlkZTU5MmM2OTE2NDA0NWZjZTRl YjU1ODcyZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NDBkNTljODgzNjUwMGU1MjNl NjQwNGFjMDNkOTg5NWIxMDVjN2ZlY2VhYWM1MmRjM2M1ZTQxMTNlMjU2YzAwNTdmYmM3NzBiODA1 ZjdhMmYxOGJmMGJlMTMzNTdlYjk5ZGI5MDZlZmM1ZmI3NzJmOTZlNWZlNzYwODhlMmU2ZjIKLStD dHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmE2MTkyOTBhZDU1M2EyYjA5MjRmM2Vh NjE1Mjg4MzY4NWUzZjJjZjYwNjM0ODc2MTZmMDgzZmFkYWU5NTA0NTFkZjVmNmU4YTE0NGNkOTUx YjJkODUzYzdlYzJkMWFlY2U5YzQzOGE4OTg1MDc4OGVkYzZiZDVlMmE3YTk4YTQ3Ci0rQ3RybC50 eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gMjBiODEwZTRmNmE1NDA3MjRmMjY5MTk0ZTM3OTY5YTEw ZTM0MGQ0NWM1NTdlYWJlNzJjNDFmMDhhOWZhZDg1YWI0NGE5YzM2MmU3ZmM1ZWVhOWVkNWRkOWI4 NGNjODM3ZDJhYWE0NmVlNzFiMzU1Y2IxZGZlZmE4ZGM1NDRkMWUKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGY4 Y2Y0Nzk1NTA4ZTJhYmEwZDljMDA3ZWUwYWZiMzhhN2Q1NzBlMjZkNGViZTk3ZDNiOWNiNDZkZmMw NWI5YjE4Mzk2MDU0ZmE5MWY4NTY3NThiMDM2MTk1YTliMzYwZWU0OGI2NWRjZWMxZjJmY2I5MDFk NWZhYTMwODEyNWIzMGI4MDRlNTNhYzE1YjJmNDNjMmExMmZkYmM5ODc3MDdhZjU4YzM2ZWNkY2Q4 OTM3NjExN2Y5NjU1ZTE0ZGE3ZjE4MDhiYWVhYWIwMjBhNDdhYzM1MTY2YTQ4NjhkYWI5NzBjZTc5 ZGU1OTJjNjkxNjQwNDVmY2U0ZWI1NTg3MmYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OjQwZDU5Yzg4MzY1MDBlNTIzZTY0MDRhYzAzZDk4OTViMTA1YzdmZWNlYWFjNTJkYzNjNWU0MTEz ZTI1NmMwMDU3ZmJjNzcwYjgwNWY3YTJmMThiZjBiZTEzMzU3ZWI5OWRiOTA2ZWZjNWZiNzcyZjk2 ZTVmZTc2MDg4ZTJlNmYyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDphNjE5 MjkwYWQ1NTNhMmIwOTI0ZjNlYTYxNTI4ODM2ODVlM2YyY2Y2MDYzNDg3NjE2ZjA4M2ZhZGFlOTUw NDUxZGY1ZjZlOGExNDRjZDk1MWIyZDg1M2M3ZWMyZDFhZWNlOWM0MzhhODk4NTA3ODhlZGM2YmQ1 ZTJhN2E5OGE0NwotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGFjZDI5MmFiNjUyYjQ5 YzdjMmE1YTM1YjkzYzMxYTcxZWVlZjhhNjI5Y2JjNmIxYzc4Mjk5NGViYzc1NjZmN2IwYWU1MzZj YzBjY2ZlODgxYmZkOGNiZmFmZjM5MWZlMjM1NjhmYTU2OTIxOThmMTg4ZGVmZjBjNmQwODA4MTYw Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMDgwMzEwNTAyMDg3NWY1NmRiMjk2MDU3OWVmYjc1MDk5NjRmMjU2YzJiODEw MDllNWJlNTU0YmNjOGViZTg0YzQ5MmYwY2QwOTkwZTc4ZWY0ZTg1ODJhNDU0NTc3MTJiZTcxZDZm NmMwYjMzMzE1NjY4OTg0ZjBhNDFjZjQ1ZmI5YTQ1OTE5M2M3MTA5MTliNzUyYmUzYjgwYjJjOGM3 ZGUzYmU1NzBmNzZkZjZmZTFjYmI5ZGM4MTA4NWZmZjJhZDFiYmZiMzA3YzZmYjIxZjQzNGNmN2Mw Yjk2ZWU5ZWI2YmMwZjk2NzcxMzZhNmRiOTFmNWQ5NTNmOGIxMDRiMzQ5NwotK0N0cmwuaGV4eGNn aGFzaCA9IGhleHhjZ2hhc2g6NWY0NWQ0ODNlZjI3YWViMDBlYzdiYWVmOTZmNGI0ZDFiMjU0MjYw YmY2MDY3MWRiZDAwZTM1YTMyZmRjYjdhZTA2MjE1ZDU5ZTc0MjE1ODc4MmUwNjI2YmQ1ZTJlOGJh ZGExZmQ3ZWM1MDU2Njc5ZjRhMTQxMmVhYTJlZjEwZTUKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOjhkZGNkMjhkMDJmMmNiNTA2NjFjZjIxMTE5NTNjNjk3YzBlNTc4ZTQzYTc3 ZGZlYjU5M2IyYmYwNTE4OWJiNDI5ZjMwNmJjYjBiY2I0MTIxOWQ1NDI4YzE3OTVjODQ2NjViYjFm MGRiMzNlNTVmNTJlZGJmZjJiNzgxYzdlYjc5Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0 ID0gN2NmMjEzY2VjNDE3MDFmZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1 MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDMxMDUwMjA4NzVmNTZkYjI5NjA1Nzll ZmI3NTA5OTY0ZjI1NmMyYjgxMDA5ZTViZTU1NGJjYzhlYmU4NGM0OTJmMGNkMDk5MGU3OGVmNGU4 NTgyYTQ1NDU3NzEyYmU3MWQ2ZjZjMGIzMzMxNTY2ODk4NGYwYTQxY2Y0NWZiOWE0NTkxOTNjNzEw OTE5Yjc1MmJlM2I4MGIyYzhjN2RlM2JlNTcwZjc2ZGY2ZmUxY2JiOWRjODEwODVmZmYyYWQxYmJm YjMwN2M2ZmIyMWY0MzRjZjdjMGI5NmVlOWViNmJjMGY5Njc3MTM2YTZkYjkxZjVkOTUzZjhiMTA0 YjM0OTcKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjVmNDVkNDgzZWYyN2FlYjAwZWM3 YmFlZjk2ZjRiNGQxYjI1NDI2MGJmNjA2NzFkYmQwMGUzNWEzMmZkY2I3YWUwNjIxNWQ1OWU3NDIx NTg3ODJlMDYyNmJkNWUyZThiYWRhMWZkN2VjNTA1NjY3OWY0YTE0MTJlYWEyZWYxMGU1Ci0rQ3Ry bC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo4ZGRjZDI4ZDAyZjJjYjUwNjYxY2YyMTEx OTUzYzY5N2MwZTU3OGU0M2E3N2RmZWI1OTNiMmJmMDUxODliYjQyOWYzMDZiY2IwYmNiNDEyMTlk NTQyOGMxNzk1Yzg0NjY1YmIxZjBkYjMzZTU1ZjUyZWRiZmYyYjc4MWM3ZWI3OQotK0N0cmwudHlw ZSA9IHR5cGU6QgotK091dHB1dCA9IDgxYTQ0ZjZmOTVmZmY5NTQKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAzMTA1 MDIwODc1ZjU2ZGIyOTYwNTc5ZWZiNzUwOTk2NGYyNTZjMmI4MTAwOWU1YmU1NTRiY2M4ZWJlODRj NDkyZjBjZDA5OTBlNzhlZjRlODU4MmE0NTQ1NzcxMmJlNzFkNmY2YzBiMzMzMTU2Njg5ODRmMGE0 MWNmNDVmYjlhNDU5MTkzYzcxMDkxOWI3NTJiZTNiODBiMmM4YzdkZTNiZTU3MGY3NmRmNmZlMWNi YjlkYzgxMDg1ZmZmMmFkMWJiZmIzMDdjNmZiMjFmNDM0Y2Y3YzBiOTZlZTllYjZiYzBmOTY3NzEz NmE2ZGI5MWY1ZDk1M2Y4YjEwNGIzNDk3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1 ZjQ1ZDQ4M2VmMjdhZWIwMGVjN2JhZWY5NmY0YjRkMWIyNTQyNjBiZjYwNjcxZGJkMDBlMzVhMzJm ZGNiN2FlMDYyMTVkNTllNzQyMTU4NzgyZTA2MjZiZDVlMmU4YmFkYTFmZDdlYzUwNTY2NzlmNGEx NDEyZWFhMmVmMTBlNQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6OGRkY2Qy OGQwMmYyY2I1MDY2MWNmMjExMTk1M2M2OTdjMGU1NzhlNDNhNzdkZmViNTkzYjJiZjA1MTg5YmI0 MjlmMzA2YmNiMGJjYjQxMjE5ZDU0MjhjMTc5NWM4NDY2NWJiMWYwZGIzM2U1NWY1MmVkYmZmMmI3 ODFjN2ViNzkKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSBlMTYxMGQ4NWVhMmMyNGI0 YWYxODA3NmMyZDdkYzBjM2YzYjNiZjFjOGRmMjMyYTQKLSsKLStLREYgPSBTU0hLREYKLStDdHJs Lm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAzMTA1MDIwODc1 ZjU2ZGIyOTYwNTc5ZWZiNzUwOTk2NGYyNTZjMmI4MTAwOWU1YmU1NTRiY2M4ZWJlODRjNDkyZjBj ZDA5OTBlNzhlZjRlODU4MmE0NTQ1NzcxMmJlNzFkNmY2YzBiMzMzMTU2Njg5ODRmMGE0MWNmNDVm YjlhNDU5MTkzYzcxMDkxOWI3NTJiZTNiODBiMmM4YzdkZTNiZTU3MGY3NmRmNmZlMWNiYjlkYzgx MDg1ZmZmMmFkMWJiZmIzMDdjNmZiMjFmNDM0Y2Y3YzBiOTZlZTllYjZiYzBmOTY3NzEzNmE2ZGI5 MWY1ZDk1M2Y4YjEwNGIzNDk3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1ZjQ1ZDQ4 M2VmMjdhZWIwMGVjN2JhZWY5NmY0YjRkMWIyNTQyNjBiZjYwNjcxZGJkMDBlMzVhMzJmZGNiN2Fl MDYyMTVkNTllNzQyMTU4NzgyZTA2MjZiZDVlMmU4YmFkYTFmZDdlYzUwNTY2NzlmNGExNDEyZWFh MmVmMTBlNQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6OGRkY2QyOGQwMmYy Y2I1MDY2MWNmMjExMTk1M2M2OTdjMGU1NzhlNDNhNzdkZmViNTkzYjJiZjA1MTg5YmI0MjlmMzA2 YmNiMGJjYjQxMjE5ZDU0MjhjMTc5NWM4NDY2NWJiMWYwZGIzM2U1NWY1MmVkYmZmMmI3ODFjN2Vi NzkKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBkYjE0NmNiZjQ5MjM2OTM0NDliODU3 ZmE5MjdkMTEyZjNjOGJkMWJhYzczZjYxOGEKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODAzMTA1MDIwODc1ZjU2ZGIy OTYwNTc5ZWZiNzUwOTk2NGYyNTZjMmI4MTAwOWU1YmU1NTRiY2M4ZWJlODRjNDkyZjBjZDA5OTBl NzhlZjRlODU4MmE0NTQ1NzcxMmJlNzFkNmY2YzBiMzMzMTU2Njg5ODRmMGE0MWNmNDVmYjlhNDU5 MTkzYzcxMDkxOWI3NTJiZTNiODBiMmM4YzdkZTNiZTU3MGY3NmRmNmZlMWNiYjlkYzgxMDg1ZmZm MmFkMWJiZmIzMDdjNmZiMjFmNDM0Y2Y3YzBiOTZlZTllYjZiYzBmOTY3NzEzNmE2ZGI5MWY1ZDk1 M2Y4YjEwNGIzNDk3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo1ZjQ1ZDQ4M2VmMjdh ZWIwMGVjN2JhZWY5NmY0YjRkMWIyNTQyNjBiZjYwNjcxZGJkMDBlMzVhMzJmZGNiN2FlMDYyMTVk NTllNzQyMTU4NzgyZTA2MjZiZDVlMmU4YmFkYTFmZDdlYzUwNTY2NzlmNGExNDEyZWFhMmVmMTBl NQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6OGRkY2QyOGQwMmYyY2I1MDY2 MWNmMjExMTk1M2M2OTdjMGU1NzhlNDNhNzdkZmViNTkzYjJiZjA1MTg5YmI0MjlmMzA2YmNiMGJj YjQxMjE5ZDU0MjhjMTc5NWM4NDY2NWJiMWYwZGIzM2U1NWY1MmVkYmZmMmI3ODFjN2ViNzkKLStD dHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSBmYWMyNTdmNDU0NGEwYWE3NzY1OTY0MmMzM2E0 MjFjZjI3YjIyMTZhNTczOTlmZjhmZjQ4YmFhYjM3NTE5Y2U5YzI3ZjkzYmY0NDdhMDJiM2MxMGQ5 ZjljNjIwMTc0NWVkNmFlMjhhMTNmZjg1ZTk0OWUwZTgwNDhiZjMxZTBjOAotKwotK0tERiA9IFNT SEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4 MDMxMDUwMjA4NzVmNTZkYjI5NjA1NzllZmI3NTA5OTY0ZjI1NmMyYjgxMDA5ZTViZTU1NGJjYzhl YmU4NGM0OTJmMGNkMDk5MGU3OGVmNGU4NTgyYTQ1NDU3NzEyYmU3MWQ2ZjZjMGIzMzMxNTY2ODk4 NGYwYTQxY2Y0NWZiOWE0NTkxOTNjNzEwOTE5Yjc1MmJlM2I4MGIyYzhjN2RlM2JlNTcwZjc2ZGY2 ZmUxY2JiOWRjODEwODVmZmYyYWQxYmJmYjMwN2M2ZmIyMWY0MzRjZjdjMGI5NmVlOWViNmJjMGY5 Njc3MTM2YTZkYjkxZjVkOTUzZjhiMTA0YjM0OTcKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2do YXNoOjVmNDVkNDgzZWYyN2FlYjAwZWM3YmFlZjk2ZjRiNGQxYjI1NDI2MGJmNjA2NzFkYmQwMGUz NWEzMmZkY2I3YWUwNjIxNWQ1OWU3NDIxNTg3ODJlMDYyNmJkNWUyZThiYWRhMWZkN2VjNTA1NjY3 OWY0YTE0MTJlYWEyZWYxMGU1Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo4 ZGRjZDI4ZDAyZjJjYjUwNjYxY2YyMTExOTUzYzY5N2MwZTU3OGU0M2E3N2RmZWI1OTNiMmJmMDUx ODliYjQyOWYzMDZiY2IwYmNiNDEyMTlkNTQyOGMxNzk1Yzg0NjY1YmIxZjBkYjMzZTU1ZjUyZWRi ZmYyYjc4MWM3ZWI3OQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDg1MzJhMTAxNGE1 YTJmZWJhNTczMDgyM2IwZmIxNzgxYTc3ODJhNzNmOTVhOTc2OTdhZWRmNjA5OTdlNmNkZjUxMDcz ODdiZTgyMGI3NGMwZTQzZThjYWY0MmU4M2JiYzcwM2M2Y2Q5ZDM3YjBlNzIwYWVhY2MxMTVjZTQ2 MzNlCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMDgwNDVjYWZlZjZhY2IyOWVhMzUxYWQwMjVhMzJjYjBmYjg4ZmU1MmYx MzhhYzNjZDc3MTgxNDBjODgzY2ZmYmMxMDc3OGMyZTZjNTczYmRiZmFmMzJlY2VhYTJmYzFlMTA2 MTcwZGFkY2RmMWNiMGUxNjUzZjIzNjFjNzZmNTE1MzI2MjI5NWIxNjM3MWRhZjlhZTIwMTVkZmI0 MDdmNDkyMDI0MGViMTAyOTNjNDg5NzFkMjA4NjcyMzUwN2QyZWI3ZTE0ODFmMmI3MzdkZjIyMzYy OGVlNjAyYTQ5YmI3ZjFhYzUyMDY4ZjVjMWEyNGI0NDU3ODZlMzUwNDJmYzZjMAotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6YjFjZTZlNzY2YTczNDBmNDBjZWM1MjU4NTA4N2M2MGU0NTZj YzM5MGQwZWUyOTRiYmM0NjBkNTBiOTNjMjE3MDM0NGNjYTNkZDJlMzA2N2ViZWZlM2VmYmQwMDJl YzRlZDdmMGZjMWE4NzcxZWFmZmJjMWZkNGQ1ODAwYWVjMjEKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOjg1YWU1YzUzYTgyODZkZmRkZjI5NWRkMGIzMTIzN2JjOGM1NGU5ODU4 NjQ3ZTIyMmRiMjlhNGY2MGZmYjc0YTE3NWU1ZGUyMmMxMzJhMWEwNjgyNmM2ZTAxMjJlNjNhYTY1 N2ZjNjcwY2E0NDk0MzE1OTU2MGNlMWM0OGI2OTA2Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0 cHV0ID0gYzVkZmZjNGViOTlhMWMzNgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpT SEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDQ1Y2FmZWY2YWNiMjllYTM1MWFk MDI1YTMyY2IwZmI4OGZlNTJmMTM4YWMzY2Q3NzE4MTQwYzg4M2NmZmJjMTA3NzhjMmU2YzU3M2Jk YmZhZjMyZWNlYWEyZmMxZTEwNjE3MGRhZGNkZjFjYjBlMTY1M2YyMzYxYzc2ZjUxNTMyNjIyOTVi MTYzNzFkYWY5YWUyMDE1ZGZiNDA3ZjQ5MjAyNDBlYjEwMjkzYzQ4OTcxZDIwODY3MjM1MDdkMmVi N2UxNDgxZjJiNzM3ZGYyMjM2MjhlZTYwMmE0OWJiN2YxYWM1MjA2OGY1YzFhMjRiNDQ1Nzg2ZTM1 MDQyZmM2YzAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmIxY2U2ZTc2NmE3MzQwZjQw Y2VjNTI1ODUwODdjNjBlNDU2Y2MzOTBkMGVlMjk0YmJjNDYwZDUwYjkzYzIxNzAzNDRjY2EzZGQy ZTMwNjdlYmVmZTNlZmJkMDAyZWM0ZWQ3ZjBmYzFhODc3MWVhZmZiYzFmZDRkNTgwMGFlYzIxCi0r Q3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo4NWFlNWM1M2E4Mjg2ZGZkZGYyOTVk ZDBiMzEyMzdiYzhjNTRlOTg1ODY0N2UyMjJkYjI5YTRmNjBmZmI3NGExNzVlNWRlMjJjMTMyYTFh MDY4MjZjNmUwMTIyZTYzYWE2NTdmYzY3MGNhNDQ5NDMxNTk1NjBjZTFjNDhiNjkwNgotK0N0cmwu dHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDEzY2I3NDY3ZGRmOGVhN2QKLSsKLStLREYgPSBTU0hL REYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA0 NWNhZmVmNmFjYjI5ZWEzNTFhZDAyNWEzMmNiMGZiODhmZTUyZjEzOGFjM2NkNzcxODE0MGM4ODNj ZmZiYzEwNzc4YzJlNmM1NzNiZGJmYWYzMmVjZWFhMmZjMWUxMDYxNzBkYWRjZGYxY2IwZTE2NTNm MjM2MWM3NmY1MTUzMjYyMjk1YjE2MzcxZGFmOWFlMjAxNWRmYjQwN2Y0OTIwMjQwZWIxMDI5M2M0 ODk3MWQyMDg2NzIzNTA3ZDJlYjdlMTQ4MWYyYjczN2RmMjIzNjI4ZWU2MDJhNDliYjdmMWFjNTIw NjhmNWMxYTI0YjQ0NTc4NmUzNTA0MmZjNmMwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFz aDpiMWNlNmU3NjZhNzM0MGY0MGNlYzUyNTg1MDg3YzYwZTQ1NmNjMzkwZDBlZTI5NGJiYzQ2MGQ1 MGI5M2MyMTcwMzQ0Y2NhM2RkMmUzMDY3ZWJlZmUzZWZiZDAwMmVjNGVkN2YwZmMxYTg3NzFlYWZm YmMxZmQ0ZDU4MDBhZWMyMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ODVh ZTVjNTNhODI4NmRmZGRmMjk1ZGQwYjMxMjM3YmM4YzU0ZTk4NTg2NDdlMjIyZGIyOWE0ZjYwZmZi NzRhMTc1ZTVkZTIyYzEzMmExYTA2ODI2YzZlMDEyMmU2M2FhNjU3ZmM2NzBjYTQ0OTQzMTU5NTYw Y2UxYzQ4YjY5MDYKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSA0ZDc3YTlhMWEzNjUw MGQ5ZWEwMzg5ZTM4MTNhMjAxZmI5YjMwNzUxZDFmY2YwYjMKLSsKLStLREYgPSBTU0hLREYKLStD dHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA0NWNhZmVm NmFjYjI5ZWEzNTFhZDAyNWEzMmNiMGZiODhmZTUyZjEzOGFjM2NkNzcxODE0MGM4ODNjZmZiYzEw Nzc4YzJlNmM1NzNiZGJmYWYzMmVjZWFhMmZjMWUxMDYxNzBkYWRjZGYxY2IwZTE2NTNmMjM2MWM3 NmY1MTUzMjYyMjk1YjE2MzcxZGFmOWFlMjAxNWRmYjQwN2Y0OTIwMjQwZWIxMDI5M2M0ODk3MWQy MDg2NzIzNTA3ZDJlYjdlMTQ4MWYyYjczN2RmMjIzNjI4ZWU2MDJhNDliYjdmMWFjNTIwNjhmNWMx YTI0YjQ0NTc4NmUzNTA0MmZjNmMwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpiMWNl NmU3NjZhNzM0MGY0MGNlYzUyNTg1MDg3YzYwZTQ1NmNjMzkwZDBlZTI5NGJiYzQ2MGQ1MGI5M2My MTcwMzQ0Y2NhM2RkMmUzMDY3ZWJlZmUzZWZiZDAwMmVjNGVkN2YwZmMxYTg3NzFlYWZmYmMxZmQ0 ZDU4MDBhZWMyMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ODVhZTVjNTNh ODI4NmRmZGRmMjk1ZGQwYjMxMjM3YmM4YzU0ZTk4NTg2NDdlMjIyZGIyOWE0ZjYwZmZiNzRhMTc1 ZTVkZTIyYzEzMmExYTA2ODI2YzZlMDEyMmU2M2FhNjU3ZmM2NzBjYTQ0OTQzMTU5NTYwY2UxYzQ4 YjY5MDYKLStDdHJsLnR5cGUgPSB0eXBlOkQKLStPdXRwdXQgPSBhMGU0ZWMwOTk0OTJjNzUyYjk4 MDEzZDIxNzZhZjZlNjAxZWVlZjNjZGMyMDI5YTkKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1k ID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA0NWNhZmVmNmFjYjI5 ZWEzNTFhZDAyNWEzMmNiMGZiODhmZTUyZjEzOGFjM2NkNzcxODE0MGM4ODNjZmZiYzEwNzc4YzJl NmM1NzNiZGJmYWYzMmVjZWFhMmZjMWUxMDYxNzBkYWRjZGYxY2IwZTE2NTNmMjM2MWM3NmY1MTUz MjYyMjk1YjE2MzcxZGFmOWFlMjAxNWRmYjQwN2Y0OTIwMjQwZWIxMDI5M2M0ODk3MWQyMDg2NzIz NTA3ZDJlYjdlMTQ4MWYyYjczN2RmMjIzNjI4ZWU2MDJhNDliYjdmMWFjNTIwNjhmNWMxYTI0YjQ0 NTc4NmUzNTA0MmZjNmMwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpiMWNlNmU3NjZh NzM0MGY0MGNlYzUyNTg1MDg3YzYwZTQ1NmNjMzkwZDBlZTI5NGJiYzQ2MGQ1MGI5M2MyMTcwMzQ0 Y2NhM2RkMmUzMDY3ZWJlZmUzZWZiZDAwMmVjNGVkN2YwZmMxYTg3NzFlYWZmYmMxZmQ0ZDU4MDBh ZWMyMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ODVhZTVjNTNhODI4NmRm ZGRmMjk1ZGQwYjMxMjM3YmM4YzU0ZTk4NTg2NDdlMjIyZGIyOWE0ZjYwZmZiNzRhMTc1ZTVkZTIy YzEzMmExYTA2ODI2YzZlMDEyMmU2M2FhNjU3ZmM2NzBjYTQ0OTQzMTU5NTYwY2UxYzQ4YjY5MDYK LStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSBiNDAzNWVmZmE3OGU2ZGEzMDdmNGMwOTYy MjYxNTBlNWNhYjkyNzk0MTkyYmJhNDkyZmY4NTc2ZGEzZmRiYmZkYzg3ZmJmNzk3MjFkZTBlOGYz ODY0NzI2MWRjYWQwOTZmZDUzNmM0ZjcyNGYwOTc4MmE0YjY4NDkwMmE0Yjk3OQotKwotK0tERiA9 IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDA4MDQ1Y2FmZWY2YWNiMjllYTM1MWFkMDI1YTMyY2IwZmI4OGZlNTJmMTM4YWMzY2Q3NzE4MTQw Yzg4M2NmZmJjMTA3NzhjMmU2YzU3M2JkYmZhZjMyZWNlYWEyZmMxZTEwNjE3MGRhZGNkZjFjYjBl MTY1M2YyMzYxYzc2ZjUxNTMyNjIyOTViMTYzNzFkYWY5YWUyMDE1ZGZiNDA3ZjQ5MjAyNDBlYjEw MjkzYzQ4OTcxZDIwODY3MjM1MDdkMmViN2UxNDgxZjJiNzM3ZGYyMjM2MjhlZTYwMmE0OWJiN2Yx YWM1MjA2OGY1YzFhMjRiNDQ1Nzg2ZTM1MDQyZmM2YzAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOmIxY2U2ZTc2NmE3MzQwZjQwY2VjNTI1ODUwODdjNjBlNDU2Y2MzOTBkMGVlMjk0YmJj NDYwZDUwYjkzYzIxNzAzNDRjY2EzZGQyZTMwNjdlYmVmZTNlZmJkMDAyZWM0ZWQ3ZjBmYzFhODc3 MWVhZmZiYzFmZDRkNTgwMGFlYzIxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDo4NWFlNWM1M2E4Mjg2ZGZkZGYyOTVkZDBiMzEyMzdiYzhjNTRlOTg1ODY0N2UyMjJkYjI5YTRm NjBmZmI3NGExNzVlNWRlMjJjMTMyYTFhMDY4MjZjNmUwMTIyZTYzYWE2NTdmYzY3MGNhNDQ5NDMx NTk1NjBjZTFjNDhiNjkwNgotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGVhZTg3NzZl ZGRiNzVjZDRkMTRkMmRiMTI5MTcyYmFiOTJmMGM4ZDJjOGE0MzlkNGI2MzgyNGMyM2U3NDgxYWY1 MDJhNDVkMmViZWU3N2YzYTgwMWQ2NThiNTlmNmNiYmRiNzk3ZjQ3OTc4N2FlNGQ1ODM5YjdkZGY0 OWZmOTA4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4YjczNWIxY2M5YTg4NTI5YzBkMGZhZWEzMDdmNzkxNDJh YmM5MjAyNDhiMzQ5NWU1NmI3OTg3NjA1YjVhN2E5MzM1NGM2Mzg3NTJhZTdjZTQ3YjI4Njk2MDBk YzJhYjhmMjQwYzBjZTRlMzUxNDdlMDBmOGU2OWZiZTk0MGQ2MjM2ZGFmMDFiMzhmM2U3NGQ3YmZm MDdkMDExMTE1NjllMjEzY2Q4NDc1ZTc3ZGUwMjZjODFkYWM2ZTQwMjQyY2ZjMmRmNWFmOWQzN2U1 MjBjMmQ3YWVlMTY1ZGU5Y2MzMTQ3NTBlODU2ZDc1MTRiMGI4MGM1NjhlMjI5MmM3MzNmCi0rQ3Ry bC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpjMjI2YmQyNjRmNDljYmEwMDZiNDgwNmFmYTRlZGFm NDJjMmM0ODk5MmVjNjZjNzhjZTNhOTgyY2I1YjFkOTIzMzQ0MTA3ZWI3Nzg4NGIwZDk5NmFmNzE5 OTc2MTFmZGZmYmE0OTlkYTM4ZDUyMDZkYjBkMGExN2M0MzhkNGQ4YQotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6YWUwZjlhNDA3YWFlN2E5NjRhOTAwYjFmNWI3MDYwYTJlN2Q0 YzlkZTRlNDIyZmVjMDYzODI5YTllYTFmY2I3NGE2YWU4M2I5ZWIwOGY4NjYzZTE3MWJkZjAzNmJm MGMyNjNiMjNmOGVmZjMwNTNkNjE3NDg0Y2MzZWZkOTk5OTAKLStDdHJsLnR5cGUgPSB0eXBlOkEK LStPdXRwdXQgPSAzMWVmOGU3MzdlYzE1NGMwCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9 IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4YjczNWIxY2M5YTg4 NTI5YzBkMGZhZWEzMDdmNzkxNDJhYmM5MjAyNDhiMzQ5NWU1NmI3OTg3NjA1YjVhN2E5MzM1NGM2 Mzg3NTJhZTdjZTQ3YjI4Njk2MDBkYzJhYjhmMjQwYzBjZTRlMzUxNDdlMDBmOGU2OWZiZTk0MGQ2 MjM2ZGFmMDFiMzhmM2U3NGQ3YmZmMDdkMDExMTE1NjllMjEzY2Q4NDc1ZTc3ZGUwMjZjODFkYWM2 ZTQwMjQyY2ZjMmRmNWFmOWQzN2U1MjBjMmQ3YWVlMTY1ZGU5Y2MzMTQ3NTBlODU2ZDc1MTRiMGI4 MGM1NjhlMjI5MmM3MzNmCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpjMjI2YmQyNjRm NDljYmEwMDZiNDgwNmFmYTRlZGFmNDJjMmM0ODk5MmVjNjZjNzhjZTNhOTgyY2I1YjFkOTIzMzQ0 MTA3ZWI3Nzg4NGIwZDk5NmFmNzE5OTc2MTFmZGZmYmE0OTlkYTM4ZDUyMDZkYjBkMGExN2M0Mzhk NGQ4YQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YWUwZjlhNDA3YWFlN2E5 NjRhOTAwYjFmNWI3MDYwYTJlN2Q0YzlkZTRlNDIyZmVjMDYzODI5YTllYTFmY2I3NGE2YWU4M2I5 ZWIwOGY4NjYzZTE3MWJkZjAzNmJmMGMyNjNiMjNmOGVmZjMwNTNkNjE3NDg0Y2MzZWZkOTk5OTAK LStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSBjMGJiNDFmMmM1MWEwNTAzCi0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMDgxMDA4YjczNWIxY2M5YTg4NTI5YzBkMGZhZWEzMDdmNzkxNDJhYmM5MjAyNDhiMzQ5NWU1 NmI3OTg3NjA1YjVhN2E5MzM1NGM2Mzg3NTJhZTdjZTQ3YjI4Njk2MDBkYzJhYjhmMjQwYzBjZTRl MzUxNDdlMDBmOGU2OWZiZTk0MGQ2MjM2ZGFmMDFiMzhmM2U3NGQ3YmZmMDdkMDExMTE1NjllMjEz Y2Q4NDc1ZTc3ZGUwMjZjODFkYWM2ZTQwMjQyY2ZjMmRmNWFmOWQzN2U1MjBjMmQ3YWVlMTY1ZGU5 Y2MzMTQ3NTBlODU2ZDc1MTRiMGI4MGM1NjhlMjI5MmM3MzNmCi0rQ3RybC5oZXh4Y2doYXNoID0g aGV4eGNnaGFzaDpjMjI2YmQyNjRmNDljYmEwMDZiNDgwNmFmYTRlZGFmNDJjMmM0ODk5MmVjNjZj NzhjZTNhOTgyY2I1YjFkOTIzMzQ0MTA3ZWI3Nzg4NGIwZDk5NmFmNzE5OTc2MTFmZGZmYmE0OTlk YTM4ZDUyMDZkYjBkMGExN2M0MzhkNGQ4YQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6YWUwZjlhNDA3YWFlN2E5NjRhOTAwYjFmNWI3MDYwYTJlN2Q0YzlkZTRlNDIyZmVjMDYz ODI5YTllYTFmY2I3NGE2YWU4M2I5ZWIwOGY4NjYzZTE3MWJkZjAzNmJmMGMyNjNiMjNmOGVmZjMw NTNkNjE3NDg0Y2MzZWZkOTk5OTAKLStDdHJsLnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSAzZjkw NTg4MTJmMzZmMzAyZGM1YWRhN2RlOGY0MjcxYzQzNWRmZTQ1ODlmMjJhMDAKLSsKLStLREYgPSBT U0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAw ODEwMDhiNzM1YjFjYzlhODg1MjljMGQwZmFlYTMwN2Y3OTE0MmFiYzkyMDI0OGIzNDk1ZTU2Yjc5 ODc2MDViNWE3YTkzMzU0YzYzODc1MmFlN2NlNDdiMjg2OTYwMGRjMmFiOGYyNDBjMGNlNGUzNTE0 N2UwMGY4ZTY5ZmJlOTQwZDYyMzZkYWYwMWIzOGYzZTc0ZDdiZmYwN2QwMTExMTU2OWUyMTNjZDg0 NzVlNzdkZTAyNmM4MWRhYzZlNDAyNDJjZmMyZGY1YWY5ZDM3ZTUyMGMyZDdhZWUxNjVkZTljYzMx NDc1MGU4NTZkNzUxNGIwYjgwYzU2OGUyMjkyYzczM2YKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOmMyMjZiZDI2NGY0OWNiYTAwNmI0ODA2YWZhNGVkYWY0MmMyYzQ4OTkyZWM2NmM3OGNl M2E5ODJjYjViMWQ5MjMzNDQxMDdlYjc3ODg0YjBkOTk2YWY3MTk5NzYxMWZkZmZiYTQ5OWRhMzhk NTIwNmRiMGQwYTE3YzQzOGQ0ZDhhCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDphZTBmOWE0MDdhYWU3YTk2NGE5MDBiMWY1YjcwNjBhMmU3ZDRjOWRlNGU0MjJmZWMwNjM4Mjlh OWVhMWZjYjc0YTZhZTgzYjllYjA4Zjg2NjNlMTcxYmRmMDM2YmYwYzI2M2IyM2Y4ZWZmMzA1M2Q2 MTc0ODRjYzNlZmQ5OTk5MAotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IGIzNDJhNDQ3 YWJjYjY3ZjY4MTlhMTliOGIzMDA5NDZjODk3MzlmYWJkMDQ5YTZlMAotKwotK0tERiA9IFNTSEtE RgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAw OGI3MzViMWNjOWE4ODUyOWMwZDBmYWVhMzA3Zjc5MTQyYWJjOTIwMjQ4YjM0OTVlNTZiNzk4NzYw NWI1YTdhOTMzNTRjNjM4NzUyYWU3Y2U0N2IyODY5NjAwZGMyYWI4ZjI0MGMwY2U0ZTM1MTQ3ZTAw ZjhlNjlmYmU5NDBkNjIzNmRhZjAxYjM4ZjNlNzRkN2JmZjA3ZDAxMTExNTY5ZTIxM2NkODQ3NWU3 N2RlMDI2YzgxZGFjNmU0MDI0MmNmYzJkZjVhZjlkMzdlNTIwYzJkN2FlZTE2NWRlOWNjMzE0NzUw ZTg1NmQ3NTE0YjBiODBjNTY4ZTIyOTJjNzMzZgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hh c2g6YzIyNmJkMjY0ZjQ5Y2JhMDA2YjQ4MDZhZmE0ZWRhZjQyYzJjNDg5OTJlYzY2Yzc4Y2UzYTk4 MmNiNWIxZDkyMzM0NDEwN2ViNzc4ODRiMGQ5OTZhZjcxOTk3NjExZmRmZmJhNDk5ZGEzOGQ1MjA2 ZGIwZDBhMTdjNDM4ZDRkOGEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmFl MGY5YTQwN2FhZTdhOTY0YTkwMGIxZjViNzA2MGEyZTdkNGM5ZGU0ZTQyMmZlYzA2MzgyOWE5ZWEx ZmNiNzRhNmFlODNiOWViMDhmODY2M2UxNzFiZGYwMzZiZjBjMjYzYjIzZjhlZmYzMDUzZDYxNzQ4 NGNjM2VmZDk5OTkwCi0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0ID0gYTVkNzBjYjBhM2Uz NTFiZTA5Yjk2MDBjOWI5N2YyNzgxMjM2YmY1NDkyMDlhMWZiZjMzMDRhZjE0NWFmMDk0MWM2Y2Q5 OTIzZjFmMzBjZWM5NDZlOGRlYTk2MzMyZDI4NGUwMWE0ZDhiY2M5MDcyMWZlMmU1MTU1MDQwNzNj YjgKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODEwMDhiNzM1YjFjYzlhODg1MjljMGQwZmFlYTMwN2Y3OTE0MmFiYzky MDI0OGIzNDk1ZTU2Yjc5ODc2MDViNWE3YTkzMzU0YzYzODc1MmFlN2NlNDdiMjg2OTYwMGRjMmFi OGYyNDBjMGNlNGUzNTE0N2UwMGY4ZTY5ZmJlOTQwZDYyMzZkYWYwMWIzOGYzZTc0ZDdiZmYwN2Qw MTExMTU2OWUyMTNjZDg0NzVlNzdkZTAyNmM4MWRhYzZlNDAyNDJjZmMyZGY1YWY5ZDM3ZTUyMGMy ZDdhZWUxNjVkZTljYzMxNDc1MGU4NTZkNzUxNGIwYjgwYzU2OGUyMjkyYzczM2YKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmMyMjZiZDI2NGY0OWNiYTAwNmI0ODA2YWZhNGVkYWY0MmMy YzQ4OTkyZWM2NmM3OGNlM2E5ODJjYjViMWQ5MjMzNDQxMDdlYjc3ODg0YjBkOTk2YWY3MTk5NzYx MWZkZmZiYTQ5OWRhMzhkNTIwNmRiMGQwYTE3YzQzOGQ0ZDhhCi0rQ3RybC5oZXhzZXNzaW9uX2lk ID0gaGV4c2Vzc2lvbl9pZDphZTBmOWE0MDdhYWU3YTk2NGE5MDBiMWY1YjcwNjBhMmU3ZDRjOWRl NGU0MjJmZWMwNjM4MjlhOWVhMWZjYjc0YTZhZTgzYjllYjA4Zjg2NjNlMTcxYmRmMDM2YmYwYzI2 M2IyM2Y4ZWZmMzA1M2Q2MTc0ODRjYzNlZmQ5OTk5MAotK0N0cmwudHlwZSA9IHR5cGU6RgotK091 dHB1dCA9IGRiYzNlYTA4NmE0OWUyMjAzMDZjYmU1N2I5NDJkOTQwOWNiZDIwNWRlYzIwYzdiNzlm ZDY5OTg5MDZkMTczYmNiMmJjMmViNWI3ZWVhNGMxZDg0ZjM5MjY4MzZiZDE1ZTA1NjVhMTdhZjcz NTU5NjA1MGQ2MTYxZDk2ODJmMmU3Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBjNDE0MzBlOWRmY2U5MzAxMDgy YTRkMDM0ZTBlMWZmZTczMTMzZTRjOTdhZmJkMzI1ZDZiYmUxZjNhNGY1YTkxMDNmNTdhMDVmNjZi MWFjNjNhNWYxNzI0YjMzMTVkYWY3MTcxZjMzNGU3N2VmZjM1NjM2NmRhZjRlMjNlNTU3NTE0MjI3 MzRkNGQyMmU2ZGNhYzc4M2JiYTBlZGMxYmU4ZmNjNGM3YzBkNWE2OWQwNDcyOTFlMzMxNjcwNTdj Nzc0ZTQ2MzYyZGZiNmY4NDMyYjQyN2NmMjFjMDEzMDRiMjNlMmI0OWI2NjRmZDUwZGM0NjNjMTdl ZmZmYTE0NmEwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDowNGFlZmY3NjZmMDhjMDY1 MDkyZmRkN2JlNDM1MzFmODNkNzM2ODI2MDEwNjk0NzdlZTEwNDA3ODIxYTBmMGU4YmY2MTRlNzc1 ZGZhYjZmODg5YThkNTEyMGMyZTM5ZDk2ZTM4ZGU0Y2RhNmY2NzNmYjdjYjM0M2RlMWUxN2I5Ywot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6MTVmNTY1M2ExMDdhZWU2OTRiZDE2 ODBkNDIzYzhkYTJkYWI4YzFlYzhlMjNjNTIwODEwMGNlM2Q4ZDQ4MjFiNTJiYmIxZDE0NzkxNDc2 MjUzZGI0YjA3ZWJiNzE1YWUwOTViOGI0OWUxNTQ1YmUzYzkyYTNhZGNmMzk5NzBiZTUKLStDdHJs LnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSAxOWQ2YmM3OTcxM2E0NjIyCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgx MDBjNDE0MzBlOWRmY2U5MzAxMDgyYTRkMDM0ZTBlMWZmZTczMTMzZTRjOTdhZmJkMzI1ZDZiYmUx ZjNhNGY1YTkxMDNmNTdhMDVmNjZiMWFjNjNhNWYxNzI0YjMzMTVkYWY3MTcxZjMzNGU3N2VmZjM1 NjM2NmRhZjRlMjNlNTU3NTE0MjI3MzRkNGQyMmU2ZGNhYzc4M2JiYTBlZGMxYmU4ZmNjNGM3YzBk NWE2OWQwNDcyOTFlMzMxNjcwNTdjNzc0ZTQ2MzYyZGZiNmY4NDMyYjQyN2NmMjFjMDEzMDRiMjNl MmI0OWI2NjRmZDUwZGM0NjNjMTdlZmZmYTE0NmEwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNn aGFzaDowNGFlZmY3NjZmMDhjMDY1MDkyZmRkN2JlNDM1MzFmODNkNzM2ODI2MDEwNjk0NzdlZTEw NDA3ODIxYTBmMGU4YmY2MTRlNzc1ZGZhYjZmODg5YThkNTEyMGMyZTM5ZDk2ZTM4ZGU0Y2RhNmY2 NzNmYjdjYjM0M2RlMWUxN2I5YwotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 MTVmNTY1M2ExMDdhZWU2OTRiZDE2ODBkNDIzYzhkYTJkYWI4YzFlYzhlMjNjNTIwODEwMGNlM2Q4 ZDQ4MjFiNTJiYmIxZDE0NzkxNDc2MjUzZGI0YjA3ZWJiNzE1YWUwOTViOGI0OWUxNTQ1YmUzYzky YTNhZGNmMzk5NzBiZTUKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA3ZGU5Y2FmODlk MzI1ZGNkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDBjNDE0MzBlOWRmY2U5MzAxMDgyYTRkMDM0ZTBlMWZmZTcz MTMzZTRjOTdhZmJkMzI1ZDZiYmUxZjNhNGY1YTkxMDNmNTdhMDVmNjZiMWFjNjNhNWYxNzI0YjMz MTVkYWY3MTcxZjMzNGU3N2VmZjM1NjM2NmRhZjRlMjNlNTU3NTE0MjI3MzRkNGQyMmU2ZGNhYzc4 M2JiYTBlZGMxYmU4ZmNjNGM3YzBkNWE2OWQwNDcyOTFlMzMxNjcwNTdjNzc0ZTQ2MzYyZGZiNmY4 NDMyYjQyN2NmMjFjMDEzMDRiMjNlMmI0OWI2NjRmZDUwZGM0NjNjMTdlZmZmYTE0NmEwCi0rQ3Ry bC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDowNGFlZmY3NjZmMDhjMDY1MDkyZmRkN2JlNDM1MzFm ODNkNzM2ODI2MDEwNjk0NzdlZTEwNDA3ODIxYTBmMGU4YmY2MTRlNzc1ZGZhYjZmODg5YThkNTEy MGMyZTM5ZDk2ZTM4ZGU0Y2RhNmY2NzNmYjdjYjM0M2RlMWUxN2I5YwotK0N0cmwuaGV4c2Vzc2lv bl9pZCA9IGhleHNlc3Npb25faWQ6MTVmNTY1M2ExMDdhZWU2OTRiZDE2ODBkNDIzYzhkYTJkYWI4 YzFlYzhlMjNjNTIwODEwMGNlM2Q4ZDQ4MjFiNTJiYmIxZDE0NzkxNDc2MjUzZGI0YjA3ZWJiNzE1 YWUwOTViOGI0OWUxNTQ1YmUzYzkyYTNhZGNmMzk5NzBiZTUKLStDdHJsLnR5cGUgPSB0eXBlOkMK LStPdXRwdXQgPSAxZDUzOTFkNjU4YWJiOWVjMWI4ZGYzMmNiZjFkYjlhMzAyYTEzMDE5ODRhYjA2 ZDQKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAwODEwMGM0MTQzMGU5ZGZjZTkzMDEwODJhNGQwMzRlMGUxZmZlNzMxMzNl NGM5N2FmYmQzMjVkNmJiZTFmM2E0ZjVhOTEwM2Y1N2EwNWY2NmIxYWM2M2E1ZjE3MjRiMzMxNWRh ZjcxNzFmMzM0ZTc3ZWZmMzU2MzY2ZGFmNGUyM2U1NTc1MTQyMjczNGQ0ZDIyZTZkY2FjNzgzYmJh MGVkYzFiZThmY2M0YzdjMGQ1YTY5ZDA0NzI5MWUzMzE2NzA1N2M3NzRlNDYzNjJkZmI2Zjg0MzJi NDI3Y2YyMWMwMTMwNGIyM2UyYjQ5YjY2NGZkNTBkYzQ2M2MxN2VmZmZhMTQ2YTAKLStDdHJsLmhl eHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjA0YWVmZjc2NmYwOGMwNjUwOTJmZGQ3YmU0MzUzMWY4M2Q3 MzY4MjYwMTA2OTQ3N2VlMTA0MDc4MjFhMGYwZThiZjYxNGU3NzVkZmFiNmY4ODlhOGQ1MTIwYzJl MzlkOTZlMzhkZTRjZGE2ZjY3M2ZiN2NiMzQzZGUxZTE3YjljCi0rQ3RybC5oZXhzZXNzaW9uX2lk ID0gaGV4c2Vzc2lvbl9pZDoxNWY1NjUzYTEwN2FlZTY5NGJkMTY4MGQ0MjNjOGRhMmRhYjhjMWVj OGUyM2M1MjA4MTAwY2UzZDhkNDgyMWI1MmJiYjFkMTQ3OTE0NzYyNTNkYjRiMDdlYmI3MTVhZTA5 NWI4YjQ5ZTE1NDViZTNjOTJhM2FkY2YzOTk3MGJlNQotK0N0cmwudHlwZSA9IHR5cGU6RAotK091 dHB1dCA9IDVkMzdkYWI1MDgxNDU0M2Q4ZDg2NzRmNGY0OTFkNzNkMjE5NzNmMjA4NDRjOTZhNwot KwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhl eGtleTowMDAwMDA4MTAwYzQxNDMwZTlkZmNlOTMwMTA4MmE0ZDAzNGUwZTFmZmU3MzEzM2U0Yzk3 YWZiZDMyNWQ2YmJlMWYzYTRmNWE5MTAzZjU3YTA1ZjY2YjFhYzYzYTVmMTcyNGIzMzE1ZGFmNzE3 MWYzMzRlNzdlZmYzNTYzNjZkYWY0ZTIzZTU1NzUxNDIyNzM0ZDRkMjJlNmRjYWM3ODNiYmEwZWRj MWJlOGZjYzRjN2MwZDVhNjlkMDQ3MjkxZTMzMTY3MDU3Yzc3NGU0NjM2MmRmYjZmODQzMmI0Mjdj ZjIxYzAxMzA0YjIzZTJiNDliNjY0ZmQ1MGRjNDYzYzE3ZWZmZmExNDZhMAotK0N0cmwuaGV4eGNn aGFzaCA9IGhleHhjZ2hhc2g6MDRhZWZmNzY2ZjA4YzA2NTA5MmZkZDdiZTQzNTMxZjgzZDczNjgy NjAxMDY5NDc3ZWUxMDQwNzgyMWEwZjBlOGJmNjE0ZTc3NWRmYWI2Zjg4OWE4ZDUxMjBjMmUzOWQ5 NmUzOGRlNGNkYTZmNjczZmI3Y2IzNDNkZTFlMTdiOWMKLStDdHJsLmhleHNlc3Npb25faWQgPSBo ZXhzZXNzaW9uX2lkOjE1ZjU2NTNhMTA3YWVlNjk0YmQxNjgwZDQyM2M4ZGEyZGFiOGMxZWM4ZTIz YzUyMDgxMDBjZTNkOGQ0ODIxYjUyYmJiMWQxNDc5MTQ3NjI1M2RiNGIwN2ViYjcxNWFlMDk1Yjhi NDllMTU0NWJlM2M5MmEzYWRjZjM5OTcwYmU1Ci0rQ3RybC50eXBlID0gdHlwZTpFCi0rT3V0cHV0 ID0gM2U4ODJhZTM5MGE2NGMzNGY1MDliYzk4NDVkZjU4MTk4N2FlMjUyNGIyZmY5MmQ5MjQzNTgw MTY4ZjMyZmE2ODc1MGYzZjczMmM4YzU1NDRjOThmYzU4NTU4MmZlNzQzZWZiZjU1ZGQ2YzQ4N2Zi NWY5ZmZhYzFhMTU2ZmEzMWMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEy Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMGM0MTQzMGU5ZGZjZTkzMDEwODJhNGQw MzRlMGUxZmZlNzMxMzNlNGM5N2FmYmQzMjVkNmJiZTFmM2E0ZjVhOTEwM2Y1N2EwNWY2NmIxYWM2 M2E1ZjE3MjRiMzMxNWRhZjcxNzFmMzM0ZTc3ZWZmMzU2MzY2ZGFmNGUyM2U1NTc1MTQyMjczNGQ0 ZDIyZTZkY2FjNzgzYmJhMGVkYzFiZThmY2M0YzdjMGQ1YTY5ZDA0NzI5MWUzMzE2NzA1N2M3NzRl NDYzNjJkZmI2Zjg0MzJiNDI3Y2YyMWMwMTMwNGIyM2UyYjQ5YjY2NGZkNTBkYzQ2M2MxN2VmZmZh MTQ2YTAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjA0YWVmZjc2NmYwOGMwNjUwOTJm ZGQ3YmU0MzUzMWY4M2Q3MzY4MjYwMTA2OTQ3N2VlMTA0MDc4MjFhMGYwZThiZjYxNGU3NzVkZmFi NmY4ODlhOGQ1MTIwYzJlMzlkOTZlMzhkZTRjZGE2ZjY3M2ZiN2NiMzQzZGUxZTE3YjljCi0rQ3Ry bC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDoxNWY1NjUzYTEwN2FlZTY5NGJkMTY4MGQ0 MjNjOGRhMmRhYjhjMWVjOGUyM2M1MjA4MTAwY2UzZDhkNDgyMWI1MmJiYjFkMTQ3OTE0NzYyNTNk YjRiMDdlYmI3MTVhZTA5NWI4YjQ5ZTE1NDViZTNjOTJhM2FkY2YzOTk3MGJlNQotK0N0cmwudHlw ZSA9IHR5cGU6RgotK091dHB1dCA9IGNlNGJjZjljYWJlN2VlN2MwZTIxNmU2NGU1NDI3ZWJkMzhj YjQxYmE5ZTlhNmQ5YWU0NDFjYTQ3ZDkyNzgzNDdhNTlhZmRmNzU4YWU3ZjdmZDY2N2VkMzgzMGJm OWEzM2Q3YmFkZmQ0MGUyMTEyNTgwYWY1MTRkYTk0NjRhNmQxCi0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4ODE4 MWFhYWE2YjE3OTI0Y2VkMDAzM2IxZTRhM2QwMDdhNDY0ZDRkNTM4NzFmNGRhNDY4OWQ0Nzc0Mzdi NDJmODczZDRiN2Q1ZjVjNTI5MDliNmNjYThiZTdhMDFkMWE3YTgwNmY3NDU1MDBiYjAwYjRmZDZl NmY4ZDBlMWM5YWQwOGQ5MzRjN2Q2ODBhNTdhYzVhNGVkNzdmNzMxODIwNjVmOTI5NWQ3NDVlMWQ1 MGI4ZGEwNjI2ZjNlOWNjYjY2NTFhYWQzYjBjNWMyY2VjZDkwYzUyMTMxODc3OGY1NzAzMzNjMDEx ZjAyZDVlMmE0MDZlYjhiM2Q2MDM2NTM3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDoz YzRlY2IxNzNjMzljZWRlY2JjZDE5YmEwZmMzODQ1NDE3NmI4MWI2NDUxOTExYjQ0MjI5MDdiMWI2 NzBkY2VkYWFiZWJhYWEyNjFmYmFjMjNiM2I1NzM4MjY0YzVlZWUzZGNjZmQ5ZTA1MGExY2VmMTdh Yzk5NzUyN2RkNzA5NQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6M2IwNTI1 M2Q5ZTVhYjJmN2Y0YmEyOTk4YmVhNWVkN2QwNWFmZGYwMmI3NDk5YWMyZGQ1NTQ4MzNiODg2Yjcz ZDkyZTkyOTMxNmEzNjYxNDdlOWFmNTAyMDFkYmI0ZTU0YzEyMzQxOGQxYTYyM2JjMmRjNTI3NjYy MTFkYmU2MTQKLStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSA5M2ZiYjAxODE1YjYzNTMz Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0g aGV4a2V5OjAwMDAwMDgxMDA4ODE4MWFhYWE2YjE3OTI0Y2VkMDAzM2IxZTRhM2QwMDdhNDY0ZDRk NTM4NzFmNGRhNDY4OWQ0Nzc0MzdiNDJmODczZDRiN2Q1ZjVjNTI5MDliNmNjYThiZTdhMDFkMWE3 YTgwNmY3NDU1MDBiYjAwYjRmZDZlNmY4ZDBlMWM5YWQwOGQ5MzRjN2Q2ODBhNTdhYzVhNGVkNzdm NzMxODIwNjVmOTI5NWQ3NDVlMWQ1MGI4ZGEwNjI2ZjNlOWNjYjY2NTFhYWQzYjBjNWMyY2VjZDkw YzUyMTMxODc3OGY1NzAzMzNjMDExZjAyZDVlMmE0MDZlYjhiM2Q2MDM2NTM3Ci0rQ3RybC5oZXh4 Y2doYXNoID0gaGV4eGNnaGFzaDozYzRlY2IxNzNjMzljZWRlY2JjZDE5YmEwZmMzODQ1NDE3NmI4 MWI2NDUxOTExYjQ0MjI5MDdiMWI2NzBkY2VkYWFiZWJhYWEyNjFmYmFjMjNiM2I1NzM4MjY0YzVl ZWUzZGNjZmQ5ZTA1MGExY2VmMTdhYzk5NzUyN2RkNzA5NQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9 IGhleHNlc3Npb25faWQ6M2IwNTI1M2Q5ZTVhYjJmN2Y0YmEyOTk4YmVhNWVkN2QwNWFmZGYwMmI3 NDk5YWMyZGQ1NTQ4MzNiODg2YjczZDkyZTkyOTMxNmEzNjYxNDdlOWFmNTAyMDFkYmI0ZTU0YzEy MzQxOGQxYTYyM2JjMmRjNTI3NjYyMTFkYmU2MTQKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRw dXQgPSBhZWE3NmRmZTc3YTg3NDcxCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgxMDA4ODE4MWFhYWE2YjE3OTI0Y2Vk MDAzM2IxZTRhM2QwMDdhNDY0ZDRkNTM4NzFmNGRhNDY4OWQ0Nzc0MzdiNDJmODczZDRiN2Q1ZjVj NTI5MDliNmNjYThiZTdhMDFkMWE3YTgwNmY3NDU1MDBiYjAwYjRmZDZlNmY4ZDBlMWM5YWQwOGQ5 MzRjN2Q2ODBhNTdhYzVhNGVkNzdmNzMxODIwNjVmOTI5NWQ3NDVlMWQ1MGI4ZGEwNjI2ZjNlOWNj YjY2NTFhYWQzYjBjNWMyY2VjZDkwYzUyMTMxODc3OGY1NzAzMzNjMDExZjAyZDVlMmE0MDZlYjhi M2Q2MDM2NTM3Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozYzRlY2IxNzNjMzljZWRl Y2JjZDE5YmEwZmMzODQ1NDE3NmI4MWI2NDUxOTExYjQ0MjI5MDdiMWI2NzBkY2VkYWFiZWJhYWEy NjFmYmFjMjNiM2I1NzM4MjY0YzVlZWUzZGNjZmQ5ZTA1MGExY2VmMTdhYzk5NzUyN2RkNzA5NQot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6M2IwNTI1M2Q5ZTVhYjJmN2Y0YmEy OTk4YmVhNWVkN2QwNWFmZGYwMmI3NDk5YWMyZGQ1NTQ4MzNiODg2YjczZDkyZTkyOTMxNmEzNjYx NDdlOWFmNTAyMDFkYmI0ZTU0YzEyMzQxOGQxYTYyM2JjMmRjNTI3NjYyMTFkYmU2MTQKLStDdHJs LnR5cGUgPSB0eXBlOkMKLStPdXRwdXQgPSA3M2E1NWUyNWEwYThlYzA4OTljMTA3NGJmMDg0NWZl ZmQ4NGU0MmY3NDE4OTdhM2YKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEy Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDg4MTgxYWFhYTZiMTc5MjRjZWQwMDMz YjFlNGEzZDAwN2E0NjRkNGQ1Mzg3MWY0ZGE0Njg5ZDQ3NzQzN2I0MmY4NzNkNGI3ZDVmNWM1Mjkw OWI2Y2NhOGJlN2EwMWQxYTdhODA2Zjc0NTUwMGJiMDBiNGZkNmU2ZjhkMGUxYzlhZDA4ZDkzNGM3 ZDY4MGE1N2FjNWE0ZWQ3N2Y3MzE4MjA2NWY5Mjk1ZDc0NWUxZDUwYjhkYTA2MjZmM2U5Y2NiNjY1 MWFhZDNiMGM1YzJjZWNkOTBjNTIxMzE4Nzc4ZjU3MDMzM2MwMTFmMDJkNWUyYTQwNmViOGIzZDYw MzY1MzcKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjNjNGVjYjE3M2MzOWNlZGVjYmNk MTliYTBmYzM4NDU0MTc2YjgxYjY0NTE5MTFiNDQyMjkwN2IxYjY3MGRjZWRhYWJlYmFhYTI2MWZi YWMyM2IzYjU3MzgyNjRjNWVlZTNkY2NmZDllMDUwYTFjZWYxN2FjOTk3NTI3ZGQ3MDk1Ci0rQ3Ry bC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDozYjA1MjUzZDllNWFiMmY3ZjRiYTI5OThi ZWE1ZWQ3ZDA1YWZkZjAyYjc0OTlhYzJkZDU1NDgzM2I4ODZiNzNkOTJlOTI5MzE2YTM2NjE0N2U5 YWY1MDIwMWRiYjRlNTRjMTIzNDE4ZDFhNjIzYmMyZGM1Mjc2NjIxMWRiZTYxNAotK0N0cmwudHlw ZSA9IHR5cGU6RAotK091dHB1dCA9IGZlYWQzYTg1MTUwMmFhM2M1ODczNDA2NWVlYWYzZTYzZWQ0 YzU5YzhmNDUwYmIxYQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStD dHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MTAwODgxODFhYWFhNmIxNzkyNGNlZDAwMzNiMWU0 YTNkMDA3YTQ2NGQ0ZDUzODcxZjRkYTQ2ODlkNDc3NDM3YjQyZjg3M2Q0YjdkNWY1YzUyOTA5YjZj Y2E4YmU3YTAxZDFhN2E4MDZmNzQ1NTAwYmIwMGI0ZmQ2ZTZmOGQwZTFjOWFkMDhkOTM0YzdkNjgw YTU3YWM1YTRlZDc3ZjczMTgyMDY1ZjkyOTVkNzQ1ZTFkNTBiOGRhMDYyNmYzZTljY2I2NjUxYWFk M2IwYzVjMmNlY2Q5MGM1MjEzMTg3NzhmNTcwMzMzYzAxMWYwMmQ1ZTJhNDA2ZWI4YjNkNjAzNjUz NwotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6M2M0ZWNiMTczYzM5Y2VkZWNiY2QxOWJh MGZjMzg0NTQxNzZiODFiNjQ1MTkxMWI0NDIyOTA3YjFiNjcwZGNlZGFhYmViYWFhMjYxZmJhYzIz YjNiNTczODI2NGM1ZWVlM2RjY2ZkOWUwNTBhMWNlZjE3YWM5OTc1MjdkZDcwOTUKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjNiMDUyNTNkOWU1YWIyZjdmNGJhMjk5OGJlYTVl ZDdkMDVhZmRmMDJiNzQ5OWFjMmRkNTU0ODMzYjg4NmI3M2Q5MmU5MjkzMTZhMzY2MTQ3ZTlhZjUw MjAxZGJiNGU1NGMxMjM0MThkMWE2MjNiYzJkYzUyNzY2MjExZGJlNjE0Ci0rQ3RybC50eXBlID0g dHlwZTpFCi0rT3V0cHV0ID0gNTViZGU5OWE2OTI4MjBhZDgwOWViMGE2MjMxMWY4ZjNlOTQ2OWJh MmVlNGQ3ODJkNTQzMjYyOGNhNTJkODI5YjljNWJmZmM0MWI1ODIzMjM2M2Y5N2M1ZGFiNjAzMjY4 YjE5OTdmYmU5YjliMzRhYjJhY2EzZGEyNzQ2N2IwYzgKLSsKLStLREYgPSBTU0hLREYKLStDdHJs Lm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODEwMDg4MTgxYWFh YTZiMTc5MjRjZWQwMDMzYjFlNGEzZDAwN2E0NjRkNGQ1Mzg3MWY0ZGE0Njg5ZDQ3NzQzN2I0MmY4 NzNkNGI3ZDVmNWM1MjkwOWI2Y2NhOGJlN2EwMWQxYTdhODA2Zjc0NTUwMGJiMDBiNGZkNmU2Zjhk MGUxYzlhZDA4ZDkzNGM3ZDY4MGE1N2FjNWE0ZWQ3N2Y3MzE4MjA2NWY5Mjk1ZDc0NWUxZDUwYjhk YTA2MjZmM2U5Y2NiNjY1MWFhZDNiMGM1YzJjZWNkOTBjNTIxMzE4Nzc4ZjU3MDMzM2MwMTFmMDJk NWUyYTQwNmViOGIzZDYwMzY1MzcKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjNjNGVj YjE3M2MzOWNlZGVjYmNkMTliYTBmYzM4NDU0MTc2YjgxYjY0NTE5MTFiNDQyMjkwN2IxYjY3MGRj ZWRhYWJlYmFhYTI2MWZiYWMyM2IzYjU3MzgyNjRjNWVlZTNkY2NmZDllMDUwYTFjZWYxN2FjOTk3 NTI3ZGQ3MDk1Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDozYjA1MjUzZDll NWFiMmY3ZjRiYTI5OThiZWE1ZWQ3ZDA1YWZkZjAyYjc0OTlhYzJkZDU1NDgzM2I4ODZiNzNkOTJl OTI5MzE2YTM2NjE0N2U5YWY1MDIwMWRiYjRlNTRjMTIzNDE4ZDFhNjIzYmMyZGM1Mjc2NjIxMWRi ZTYxNAotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDc1NmY2NTc0NmM4NjFmMDk4NWYz ZGQ3ZDJmMDgwMDQ4OTdjY2IyMmJlMmYxZDNiNDc5MWNhMGM1MWQ1ZWUwZGE3NzZkZDAzZDdkZmI3 ZjRkYjZjNmNkMzc4OTk4NzFlNjNkNzVmN2Y2MGRmZjgzNDhjMzEzZTk5NDA5YWQyZGI1Ci0rCi0r S0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5 OjAwMDAwMTAxMDBlOGQ1MmRhNDk0ZDE5ODI1MmI4NzE4OTIyM2JmZmIwYmMxYjY4MzM1YWU5ODdk ZjE1YmY3Y2Y5NWJkNzRhOTUxYjVlYWE4N2IxNzM5ZjkxZWZjOTdmMjhmNWE3ZjBhMjA2ZmRiY2Yz M2UzOTAwM2UxNTRiMzM0MDA5NTYzYWJkNjJhNDE2OTQ2Mjg2NWJhOTMxY2EzZjhmNGQ3MDYxMWU4 YmNiNDYyMjhlZTc0OTgzZDJlYzc5YzY5MGQ4NjMyOWMyZGFhYzhkYmRhZmU0NTczZjExNDMxM2Yy OWM3NTA3YmQ0YWE1MGQ4N2JiODNiMWNlYmI2MjhlMzdiMjUwMWZmYzliMTIwMGQ4ZDM2MGUxYjQ2 YmY2ZmRlY2Q0ODZmYWU3OTAzNTJlYjc5YWEzZjM3ZTQ5NjQ5NjNhODRkYmQ4MGZiM2I4MDQ5MTIx MDU2NWQ5NDQ5NTk5YmM5MzA2ZWU3NmE5MzJhNzY0MDcwNzAyY2QwOWM4N2UxZjI2MDk1YjFiNzgw NDJiY2MzN2Q1ZjA5N2UzZjdiMmRiNmNiNmY3YjNlMmEzMzIwMjFmNzU2ZmUxNzg0ZWRkMmE4Mjgw MmMxMjc0Yjk5NDRkZmY5OWZiMWMxODFmNDFkNmQyZjRlYWM1YWEzM2M2MTljNDgxNjdkY2UxZWI0 N2RkYWZiZTVlYgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6M2U4MWJkM2I0YjYwOTk1 NWRmMGRlYWFiMjkzODc2NTkyMTIyZTJkN2ZkYzcxOWVjZDUwM2I1NzJjNWU5OGNmYWFhYzFmN2Uw ODVkNDA5N2M3NjUxNWY1YjcwNDEzOTQ0YTQ2NGNlMzQ2YWRhNmQ4NWQ3YzM5YTgwMDlkNGIxMjEK LStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjNlODFiZDNiNGI2MDk5NTVkZjBk ZWFhYjI5Mzg3NjU5MjEyMmUyZDdmZGM3MTllY2Q1MDNiNTcyYzVlOThjZmFhYWMxZjdlMDg1ZDQw OTdjNzY1MTVmNWI3MDQxMzk0NGE0NjRjZTM0NmFkYTZkODVkN2MzOWE4MDA5ZDRiMTIxCi0rQ3Ry bC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gYTYyNmMzNGMwYTc0YjU2MjYyMTEwMTg1YTM0Y2Q4 MTAKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkg PSBoZXhrZXk6MDAwMDAxMDEwMGU4ZDUyZGE0OTRkMTk4MjUyYjg3MTg5MjIzYmZmYjBiYzFiNjgz MzVhZTk4N2RmMTViZjdjZjk1YmQ3NGE5NTFiNWVhYTg3YjE3MzlmOTFlZmM5N2YyOGY1YTdmMGEy MDZmZGJjZjMzZTM5MDAzZTE1NGIzMzQwMDk1NjNhYmQ2MmE0MTY5NDYyODY1YmE5MzFjYTNmOGY0 ZDcwNjExZThiY2I0NjIyOGVlNzQ5ODNkMmVjNzljNjkwZDg2MzI5YzJkYWFjOGRiZGFmZTQ1NzNm MTE0MzEzZjI5Yzc1MDdiZDRhYTUwZDg3YmI4M2IxY2ViYjYyOGUzN2IyNTAxZmZjOWIxMjAwZDhk MzYwZTFiNDZiZjZmZGVjZDQ4NmZhZTc5MDM1MmViNzlhYTNmMzdlNDk2NDk2M2E4NGRiZDgwZmIz YjgwNDkxMjEwNTY1ZDk0NDk1OTliYzkzMDZlZTc2YTkzMmE3NjQwNzA3MDJjZDA5Yzg3ZTFmMjYw OTViMWI3ODA0MmJjYzM3ZDVmMDk3ZTNmN2IyZGI2Y2I2ZjdiM2UyYTMzMjAyMWY3NTZmZTE3ODRl ZGQyYTgyODAyYzEyNzRiOTk0NGRmZjk5ZmIxYzE4MWY0MWQ2ZDJmNGVhYzVhYTMzYzYxOWM0ODE2 N2RjZTFlYjQ3ZGRhZmJlNWViCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDozZTgxYmQz YjRiNjA5OTU1ZGYwZGVhYWIyOTM4NzY1OTIxMjJlMmQ3ZmRjNzE5ZWNkNTAzYjU3MmM1ZTk4Y2Zh YWFjMWY3ZTA4NWQ0MDk3Yzc2NTE1ZjViNzA0MTM5NDRhNDY0Y2UzNDZhZGE2ZDg1ZDdjMzlhODAw OWQ0YjEyMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6M2U4MWJkM2I0YjYw OTk1NWRmMGRlYWFiMjkzODc2NTkyMTIyZTJkN2ZkYzcxOWVjZDUwM2I1NzJjNWU5OGNmYWFhYzFm N2UwODVkNDA5N2M3NjUxNWY1YjcwNDEzOTQ0YTQ2NGNlMzQ2YWRhNmQ4NWQ3YzM5YTgwMDlkNGIx MjEKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSAyMjNkNmZjNTcyNjNkYTlhZDYxZGFk OTc1OTQ1NGUwZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJs LmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwZThkNTJkYTQ5NGQxOTgyNTJiODcxODkyMjNiZmZi MGJjMWI2ODMzNWFlOTg3ZGYxNWJmN2NmOTViZDc0YTk1MWI1ZWFhODdiMTczOWY5MWVmYzk3ZjI4 ZjVhN2YwYTIwNmZkYmNmMzNlMzkwMDNlMTU0YjMzNDAwOTU2M2FiZDYyYTQxNjk0NjI4NjViYTkz MWNhM2Y4ZjRkNzA2MTFlOGJjYjQ2MjI4ZWU3NDk4M2QyZWM3OWM2OTBkODYzMjljMmRhYWM4ZGJk YWZlNDU3M2YxMTQzMTNmMjljNzUwN2JkNGFhNTBkODdiYjgzYjFjZWJiNjI4ZTM3YjI1MDFmZmM5 YjEyMDBkOGQzNjBlMWI0NmJmNmZkZWNkNDg2ZmFlNzkwMzUyZWI3OWFhM2YzN2U0OTY0OTYzYTg0 ZGJkODBmYjNiODA0OTEyMTA1NjVkOTQ0OTU5OWJjOTMwNmVlNzZhOTMyYTc2NDA3MDcwMmNkMDlj ODdlMWYyNjA5NWIxYjc4MDQyYmNjMzdkNWYwOTdlM2Y3YjJkYjZjYjZmN2IzZTJhMzMyMDIxZjc1 NmZlMTc4NGVkZDJhODI4MDJjMTI3NGI5OTQ0ZGZmOTlmYjFjMTgxZjQxZDZkMmY0ZWFjNWFhMzNj NjE5YzQ4MTY3ZGNlMWViNDdkZGFmYmU1ZWIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OjNlODFiZDNiNGI2MDk5NTVkZjBkZWFhYjI5Mzg3NjU5MjEyMmUyZDdmZGM3MTllY2Q1MDNiNTcy YzVlOThjZmFhYWMxZjdlMDg1ZDQwOTdjNzY1MTVmNWI3MDQxMzk0NGE0NjRjZTM0NmFkYTZkODVk N2MzOWE4MDA5ZDRiMTIxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDozZTgx YmQzYjRiNjA5OTU1ZGYwZGVhYWIyOTM4NzY1OTIxMjJlMmQ3ZmRjNzE5ZWNkNTAzYjU3MmM1ZTk4 Y2ZhYWFjMWY3ZTA4NWQ0MDk3Yzc2NTE1ZjViNzA0MTM5NDRhNDY0Y2UzNDZhZGE2ZDg1ZDdjMzlh ODAwOWQ0YjEyMQotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDdjODAzZTA3NTA2OTY5 NjY2ZjQ0NjQwMGIyMzcyZWVlCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUx MgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBlOGQ1MmRhNDk0ZDE5ODI1MmI4NzE4 OTIyM2JmZmIwYmMxYjY4MzM1YWU5ODdkZjE1YmY3Y2Y5NWJkNzRhOTUxYjVlYWE4N2IxNzM5Zjkx ZWZjOTdmMjhmNWE3ZjBhMjA2ZmRiY2YzM2UzOTAwM2UxNTRiMzM0MDA5NTYzYWJkNjJhNDE2OTQ2 Mjg2NWJhOTMxY2EzZjhmNGQ3MDYxMWU4YmNiNDYyMjhlZTc0OTgzZDJlYzc5YzY5MGQ4NjMyOWMy ZGFhYzhkYmRhZmU0NTczZjExNDMxM2YyOWM3NTA3YmQ0YWE1MGQ4N2JiODNiMWNlYmI2MjhlMzdi MjUwMWZmYzliMTIwMGQ4ZDM2MGUxYjQ2YmY2ZmRlY2Q0ODZmYWU3OTAzNTJlYjc5YWEzZjM3ZTQ5 NjQ5NjNhODRkYmQ4MGZiM2I4MDQ5MTIxMDU2NWQ5NDQ5NTk5YmM5MzA2ZWU3NmE5MzJhNzY0MDcw NzAyY2QwOWM4N2UxZjI2MDk1YjFiNzgwNDJiY2MzN2Q1ZjA5N2UzZjdiMmRiNmNiNmY3YjNlMmEz MzIwMjFmNzU2ZmUxNzg0ZWRkMmE4MjgwMmMxMjc0Yjk5NDRkZmY5OWZiMWMxODFmNDFkNmQyZjRl YWM1YWEzM2M2MTljNDgxNjdkY2UxZWI0N2RkYWZiZTVlYgotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6M2U4MWJkM2I0YjYwOTk1NWRmMGRlYWFiMjkzODc2NTkyMTIyZTJkN2ZkYzcxOWVj ZDUwM2I1NzJjNWU5OGNmYWFhYzFmN2UwODVkNDA5N2M3NjUxNWY1YjcwNDEzOTQ0YTQ2NGNlMzQ2 YWRhNmQ4NWQ3YzM5YTgwMDlkNGIxMjEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9u X2lkOjNlODFiZDNiNGI2MDk5NTVkZjBkZWFhYjI5Mzg3NjU5MjEyMmUyZDdmZGM3MTllY2Q1MDNi NTcyYzVlOThjZmFhYWMxZjdlMDg1ZDQwOTdjNzY1MTVmNWI3MDQxMzk0NGE0NjRjZTM0NmFkYTZk ODVkN2MzOWE4MDA5ZDRiMTIxCi0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gNGFkNzA1 ZmJjOWU4OWMwM2MxNWY5ZGJiZjM0OTgxZGYKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGU4ZDUyZGE0OTRkMTk4 MjUyYjg3MTg5MjIzYmZmYjBiYzFiNjgzMzVhZTk4N2RmMTViZjdjZjk1YmQ3NGE5NTFiNWVhYTg3 YjE3MzlmOTFlZmM5N2YyOGY1YTdmMGEyMDZmZGJjZjMzZTM5MDAzZTE1NGIzMzQwMDk1NjNhYmQ2 MmE0MTY5NDYyODY1YmE5MzFjYTNmOGY0ZDcwNjExZThiY2I0NjIyOGVlNzQ5ODNkMmVjNzljNjkw ZDg2MzI5YzJkYWFjOGRiZGFmZTQ1NzNmMTE0MzEzZjI5Yzc1MDdiZDRhYTUwZDg3YmI4M2IxY2Vi YjYyOGUzN2IyNTAxZmZjOWIxMjAwZDhkMzYwZTFiNDZiZjZmZGVjZDQ4NmZhZTc5MDM1MmViNzlh YTNmMzdlNDk2NDk2M2E4NGRiZDgwZmIzYjgwNDkxMjEwNTY1ZDk0NDk1OTliYzkzMDZlZTc2YTkz MmE3NjQwNzA3MDJjZDA5Yzg3ZTFmMjYwOTViMWI3ODA0MmJjYzM3ZDVmMDk3ZTNmN2IyZGI2Y2I2 ZjdiM2UyYTMzMjAyMWY3NTZmZTE3ODRlZGQyYTgyODAyYzEyNzRiOTk0NGRmZjk5ZmIxYzE4MWY0 MWQ2ZDJmNGVhYzVhYTMzYzYxOWM0ODE2N2RjZTFlYjQ3ZGRhZmJlNWViCi0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDozZTgxYmQzYjRiNjA5OTU1ZGYwZGVhYWIyOTM4NzY1OTIxMjJlMmQ3 ZmRjNzE5ZWNkNTAzYjU3MmM1ZTk4Y2ZhYWFjMWY3ZTA4NWQ0MDk3Yzc2NTE1ZjViNzA0MTM5NDRh NDY0Y2UzNDZhZGE2ZDg1ZDdjMzlhODAwOWQ0YjEyMQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhl eHNlc3Npb25faWQ6M2U4MWJkM2I0YjYwOTk1NWRmMGRlYWFiMjkzODc2NTkyMTIyZTJkN2ZkYzcx OWVjZDUwM2I1NzJjNWU5OGNmYWFhYzFmN2UwODVkNDA5N2M3NjUxNWY1YjcwNDEzOTQ0YTQ2NGNl MzQ2YWRhNmQ4NWQ3YzM5YTgwMDlkNGIxMjEKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQg PSAzNmNhYzMyY2FiOGI5NDNjZDlkMjE0MjU1OWM0Njc1OTNiZmFmMzBkMGJlNzE1NjAyNDVjOGIz OGE1NjcxOTAxYTg1OGNjYzYzN2IwZWY2OTY2YTJiYmZiMWE3ZjUxZjJjZjZkNTJjNDE2NWNhMDAw ZDUyYmQ5MDg0MDVjMzA1ZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIK LStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwZThkNTJkYTQ5NGQxOTgyNTJiODcxODky MjNiZmZiMGJjMWI2ODMzNWFlOTg3ZGYxNWJmN2NmOTViZDc0YTk1MWI1ZWFhODdiMTczOWY5MWVm Yzk3ZjI4ZjVhN2YwYTIwNmZkYmNmMzNlMzkwMDNlMTU0YjMzNDAwOTU2M2FiZDYyYTQxNjk0NjI4 NjViYTkzMWNhM2Y4ZjRkNzA2MTFlOGJjYjQ2MjI4ZWU3NDk4M2QyZWM3OWM2OTBkODYzMjljMmRh YWM4ZGJkYWZlNDU3M2YxMTQzMTNmMjljNzUwN2JkNGFhNTBkODdiYjgzYjFjZWJiNjI4ZTM3YjI1 MDFmZmM5YjEyMDBkOGQzNjBlMWI0NmJmNmZkZWNkNDg2ZmFlNzkwMzUyZWI3OWFhM2YzN2U0OTY0 OTYzYTg0ZGJkODBmYjNiODA0OTEyMTA1NjVkOTQ0OTU5OWJjOTMwNmVlNzZhOTMyYTc2NDA3MDcw MmNkMDljODdlMWYyNjA5NWIxYjc4MDQyYmNjMzdkNWYwOTdlM2Y3YjJkYjZjYjZmN2IzZTJhMzMy MDIxZjc1NmZlMTc4NGVkZDJhODI4MDJjMTI3NGI5OTQ0ZGZmOTlmYjFjMTgxZjQxZDZkMmY0ZWFj NWFhMzNjNjE5YzQ4MTY3ZGNlMWViNDdkZGFmYmU1ZWIKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOjNlODFiZDNiNGI2MDk5NTVkZjBkZWFhYjI5Mzg3NjU5MjEyMmUyZDdmZGM3MTllY2Q1 MDNiNTcyYzVlOThjZmFhYWMxZjdlMDg1ZDQwOTdjNzY1MTVmNWI3MDQxMzk0NGE0NjRjZTM0NmFk YTZkODVkN2MzOWE4MDA5ZDRiMTIxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDozZTgxYmQzYjRiNjA5OTU1ZGYwZGVhYWIyOTM4NzY1OTIxMjJlMmQ3ZmRjNzE5ZWNkNTAzYjU3 MmM1ZTk4Y2ZhYWFjMWY3ZTA4NWQ0MDk3Yzc2NTE1ZjViNzA0MTM5NDRhNDY0Y2UzNDZhZGE2ZDg1 ZDdjMzlhODAwOWQ0YjEyMQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDY3ZDQyMzAx Y2U2MjljMGYyYTM0YjlkZmIyNGVjNjBjMTM4YjRlZGM3MWY3MTIzYmIwZGI5NDQ3YjNjOTE1ZWJk OGM1NGQzYjIwYWYwNGUzMGI0ODRiZTNhMmQ0MTM2ZjVkNWM0NmY5YzU2ZGUxODliOTFmZWM3OGVj ZDUzZTFjCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMTAwMzRhNWQyNzg0Yzk5OTc2ZmIzYjYxNWM1YjFiZmFjYzlhNzQ5 MzMwZDIyYmNmNWE3YzQwNGMxMGY4ODZlMmEzMTE1NjYwYTM5OWQ3YzcyMWQ1ZGQxNDFmNDU4YjBk MjdlMGU2NzA5YTgyOTBmOWVmNmY2MTY4MWExMWQ4NzZlYjdiZDUyYjkzMGY3OWZiOTUxNmY1ZDIx MzdjNWJmYTk1YTg5Mzg5MGQyNmQ3NzEyZmM5ZWNjNGRjODJhNTE3MTM0MWI0MWE5ZjJjNGE4ZjBj MTRlZmU4MmVmMmE0ZGI2MGE4YTBiOGU0M2QzZjkyOTkyZjhkY2MyZDZiYWUzNzU5YWVhODZhNGYx NGY4MDlmZTY0ODAyMWZjNGFhNzk5MzZiZDY4NzQ1MGU4MDE5MTZkN2QyNjdkZmFiNjZiZDg2Zjk0 MjRiMzQ2MGZhNzViMTZhZjM3MTUxOTE4Y2IyZjhiYThhYzMzZGY1YjBjY2Y3ZmIyMWMzZWE5ZmIw ZWQyOTE3YTRlYjlkNmVkMzQ1YzQyYTVhNjdhNjZmY2E3YjdlNjljMWFkNWM0NWM1MTg2NjY5MmYw NThhZDUzN2MwZjU5YzgzYTI3ODhlZjliOTYxMGNjMDZhYTE1NWFhMTExNWYyM2ZhMzZkNzczNDE1 MmEwZGEyMDkyNDRjMzJkMzdlM2EKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmFiNmY5 YzA0NTE0YWUzZjY1OTEwMzljOWNjNmE5OTE5Mjc5MjgyZDdjOTU5NzFiNGMyNzk1N2UzMWNjZWQ1 ZWY1YjFjNTlhNDQxODQwMjIwM2FiNTBhNDZkZjdkYzAzYmQ2N2Q0MmE2MjU5MjcwOGIwNTgxNjE3 YTQyZWE2ZDcxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo0ZTIyNjYzOWZh Y2FjY2Y5ODk0MzY3Y2IxMDA4NjYzZTk4OWViMzE3NTdiOTEyYmQxY2IzYmQ1MTA1OGM3YWRmNTZl OWE1NGVlZjg3YjYzMjk5YTVjYzA5MmMwNDc5OTFkYzlhMzgwZTc0OWM3YzU2NTdiYjk5NDI0YmNj ZTZkNgotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IDhlYmJmMGU5YWZkOWYxMDg0OThm MTU0MzEwNGJhOGUyCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMzRhNWQyNzg0Yzk5OTc2ZmIzYjYxNWM1YjFiZmFj YzlhNzQ5MzMwZDIyYmNmNWE3YzQwNGMxMGY4ODZlMmEzMTE1NjYwYTM5OWQ3YzcyMWQ1ZGQxNDFm NDU4YjBkMjdlMGU2NzA5YTgyOTBmOWVmNmY2MTY4MWExMWQ4NzZlYjdiZDUyYjkzMGY3OWZiOTUx NmY1ZDIxMzdjNWJmYTk1YTg5Mzg5MGQyNmQ3NzEyZmM5ZWNjNGRjODJhNTE3MTM0MWI0MWE5ZjJj NGE4ZjBjMTRlZmU4MmVmMmE0ZGI2MGE4YTBiOGU0M2QzZjkyOTkyZjhkY2MyZDZiYWUzNzU5YWVh ODZhNGYxNGY4MDlmZTY0ODAyMWZjNGFhNzk5MzZiZDY4NzQ1MGU4MDE5MTZkN2QyNjdkZmFiNjZi ZDg2Zjk0MjRiMzQ2MGZhNzViMTZhZjM3MTUxOTE4Y2IyZjhiYThhYzMzZGY1YjBjY2Y3ZmIyMWMz ZWE5ZmIwZWQyOTE3YTRlYjlkNmVkMzQ1YzQyYTVhNjdhNjZmY2E3YjdlNjljMWFkNWM0NWM1MTg2 NjY5MmYwNThhZDUzN2MwZjU5YzgzYTI3ODhlZjliOTYxMGNjMDZhYTE1NWFhMTExNWYyM2ZhMzZk NzczNDE1MmEwZGEyMDkyNDRjMzJkMzdlM2EKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OmFiNmY5YzA0NTE0YWUzZjY1OTEwMzljOWNjNmE5OTE5Mjc5MjgyZDdjOTU5NzFiNGMyNzk1N2Uz MWNjZWQ1ZWY1YjFjNTlhNDQxODQwMjIwM2FiNTBhNDZkZjdkYzAzYmQ2N2Q0MmE2MjU5MjcwOGIw NTgxNjE3YTQyZWE2ZDcxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo0ZTIy NjYzOWZhY2FjY2Y5ODk0MzY3Y2IxMDA4NjYzZTk4OWViMzE3NTdiOTEyYmQxY2IzYmQ1MTA1OGM3 YWRmNTZlOWE1NGVlZjg3YjYzMjk5YTVjYzA5MmMwNDc5OTFkYzlhMzgwZTc0OWM3YzU2NTdiYjk5 NDI0YmNjZTZkNgotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDM4YmZlNmJlZDc1Zjc3 Njc1ZmEzNmQ3NmI2MzgxNmE0Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUx MgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMzRhNWQyNzg0Yzk5OTc2ZmIzYjYxNWM1 YjFiZmFjYzlhNzQ5MzMwZDIyYmNmNWE3YzQwNGMxMGY4ODZlMmEzMTE1NjYwYTM5OWQ3YzcyMWQ1 ZGQxNDFmNDU4YjBkMjdlMGU2NzA5YTgyOTBmOWVmNmY2MTY4MWExMWQ4NzZlYjdiZDUyYjkzMGY3 OWZiOTUxNmY1ZDIxMzdjNWJmYTk1YTg5Mzg5MGQyNmQ3NzEyZmM5ZWNjNGRjODJhNTE3MTM0MWI0 MWE5ZjJjNGE4ZjBjMTRlZmU4MmVmMmE0ZGI2MGE4YTBiOGU0M2QzZjkyOTkyZjhkY2MyZDZiYWUz NzU5YWVhODZhNGYxNGY4MDlmZTY0ODAyMWZjNGFhNzk5MzZiZDY4NzQ1MGU4MDE5MTZkN2QyNjdk ZmFiNjZiZDg2Zjk0MjRiMzQ2MGZhNzViMTZhZjM3MTUxOTE4Y2IyZjhiYThhYzMzZGY1YjBjY2Y3 ZmIyMWMzZWE5ZmIwZWQyOTE3YTRlYjlkNmVkMzQ1YzQyYTVhNjdhNjZmY2E3YjdlNjljMWFkNWM0 NWM1MTg2NjY5MmYwNThhZDUzN2MwZjU5YzgzYTI3ODhlZjliOTYxMGNjMDZhYTE1NWFhMTExNWYy M2ZhMzZkNzczNDE1MmEwZGEyMDkyNDRjMzJkMzdlM2EKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOmFiNmY5YzA0NTE0YWUzZjY1OTEwMzljOWNjNmE5OTE5Mjc5MjgyZDdjOTU5NzFiNGMy Nzk1N2UzMWNjZWQ1ZWY1YjFjNTlhNDQxODQwMjIwM2FiNTBhNDZkZjdkYzAzYmQ2N2Q0MmE2MjU5 MjcwOGIwNTgxNjE3YTQyZWE2ZDcxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDo0ZTIyNjYzOWZhY2FjY2Y5ODk0MzY3Y2IxMDA4NjYzZTk4OWViMzE3NTdiOTEyYmQxY2IzYmQ1 MTA1OGM3YWRmNTZlOWE1NGVlZjg3YjYzMjk5YTVjYzA5MmMwNDc5OTFkYzlhMzgwZTc0OWM3YzU2 NTdiYjk5NDI0YmNjZTZkNgotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IGY3NTlmMGFk MmQ3Mjk4MGY2YjEyZjBmYjMxNzIyMmYzCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMzRhNWQyNzg0Yzk5OTc2ZmIz YjYxNWM1YjFiZmFjYzlhNzQ5MzMwZDIyYmNmNWE3YzQwNGMxMGY4ODZlMmEzMTE1NjYwYTM5OWQ3 YzcyMWQ1ZGQxNDFmNDU4YjBkMjdlMGU2NzA5YTgyOTBmOWVmNmY2MTY4MWExMWQ4NzZlYjdiZDUy YjkzMGY3OWZiOTUxNmY1ZDIxMzdjNWJmYTk1YTg5Mzg5MGQyNmQ3NzEyZmM5ZWNjNGRjODJhNTE3 MTM0MWI0MWE5ZjJjNGE4ZjBjMTRlZmU4MmVmMmE0ZGI2MGE4YTBiOGU0M2QzZjkyOTkyZjhkY2My ZDZiYWUzNzU5YWVhODZhNGYxNGY4MDlmZTY0ODAyMWZjNGFhNzk5MzZiZDY4NzQ1MGU4MDE5MTZk N2QyNjdkZmFiNjZiZDg2Zjk0MjRiMzQ2MGZhNzViMTZhZjM3MTUxOTE4Y2IyZjhiYThhYzMzZGY1 YjBjY2Y3ZmIyMWMzZWE5ZmIwZWQyOTE3YTRlYjlkNmVkMzQ1YzQyYTVhNjdhNjZmY2E3YjdlNjlj MWFkNWM0NWM1MTg2NjY5MmYwNThhZDUzN2MwZjU5YzgzYTI3ODhlZjliOTYxMGNjMDZhYTE1NWFh MTExNWYyM2ZhMzZkNzczNDE1MmEwZGEyMDkyNDRjMzJkMzdlM2EKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOmFiNmY5YzA0NTE0YWUzZjY1OTEwMzljOWNjNmE5OTE5Mjc5MjgyZDdjOTU5 NzFiNGMyNzk1N2UzMWNjZWQ1ZWY1YjFjNTlhNDQxODQwMjIwM2FiNTBhNDZkZjdkYzAzYmQ2N2Q0 MmE2MjU5MjcwOGIwNTgxNjE3YTQyZWE2ZDcxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDo0ZTIyNjYzOWZhY2FjY2Y5ODk0MzY3Y2IxMDA4NjYzZTk4OWViMzE3NTdiOTEyYmQx Y2IzYmQ1MTA1OGM3YWRmNTZlOWE1NGVlZjg3YjYzMjk5YTVjYzA5MmMwNDc5OTFkYzlhMzgwZTc0 OWM3YzU2NTdiYjk5NDI0YmNjZTZkNgotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDM5 ZjI5NGVjMjVhZmI1MjBmNWQ3ZjEwNjRiNzA3OGM5Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMzRhNWQyNzg0Yzk5 OTc2ZmIzYjYxNWM1YjFiZmFjYzlhNzQ5MzMwZDIyYmNmNWE3YzQwNGMxMGY4ODZlMmEzMTE1NjYw YTM5OWQ3YzcyMWQ1ZGQxNDFmNDU4YjBkMjdlMGU2NzA5YTgyOTBmOWVmNmY2MTY4MWExMWQ4NzZl YjdiZDUyYjkzMGY3OWZiOTUxNmY1ZDIxMzdjNWJmYTk1YTg5Mzg5MGQyNmQ3NzEyZmM5ZWNjNGRj ODJhNTE3MTM0MWI0MWE5ZjJjNGE4ZjBjMTRlZmU4MmVmMmE0ZGI2MGE4YTBiOGU0M2QzZjkyOTky ZjhkY2MyZDZiYWUzNzU5YWVhODZhNGYxNGY4MDlmZTY0ODAyMWZjNGFhNzk5MzZiZDY4NzQ1MGU4 MDE5MTZkN2QyNjdkZmFiNjZiZDg2Zjk0MjRiMzQ2MGZhNzViMTZhZjM3MTUxOTE4Y2IyZjhiYThh YzMzZGY1YjBjY2Y3ZmIyMWMzZWE5ZmIwZWQyOTE3YTRlYjlkNmVkMzQ1YzQyYTVhNjdhNjZmY2E3 YjdlNjljMWFkNWM0NWM1MTg2NjY5MmYwNThhZDUzN2MwZjU5YzgzYTI3ODhlZjliOTYxMGNjMDZh YTE1NWFhMTExNWYyM2ZhMzZkNzczNDE1MmEwZGEyMDkyNDRjMzJkMzdlM2EKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOmFiNmY5YzA0NTE0YWUzZjY1OTEwMzljOWNjNmE5OTE5Mjc5Mjgy ZDdjOTU5NzFiNGMyNzk1N2UzMWNjZWQ1ZWY1YjFjNTlhNDQxODQwMjIwM2FiNTBhNDZkZjdkYzAz YmQ2N2Q0MmE2MjU5MjcwOGIwNTgxNjE3YTQyZWE2ZDcxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDo0ZTIyNjYzOWZhY2FjY2Y5ODk0MzY3Y2IxMDA4NjYzZTk4OWViMzE3NTdi OTEyYmQxY2IzYmQ1MTA1OGM3YWRmNTZlOWE1NGVlZjg3YjYzMjk5YTVjYzA5MmMwNDc5OTFkYzlh MzgwZTc0OWM3YzU2NTdiYjk5NDI0YmNjZTZkNgotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1 dCA9IGZmMmFkMTM5OTk3ZmYyNmU3ZjQzOTNlNDlkNTdkNWZjOTczZGRiNjIyNWQ4ZjRiNWZlOTkw ZTQ2Yjk5NDM3NzJmMGQzM2FhOThkMDEwODlmZjBhZWI1NzQwYmQzODhhZGEzNWRjNDQyNDAxODBj OTllNTIyYzgxN2RlZGZjMmNkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUx MgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMzRhNWQyNzg0Yzk5OTc2ZmIzYjYxNWM1 YjFiZmFjYzlhNzQ5MzMwZDIyYmNmNWE3YzQwNGMxMGY4ODZlMmEzMTE1NjYwYTM5OWQ3YzcyMWQ1 ZGQxNDFmNDU4YjBkMjdlMGU2NzA5YTgyOTBmOWVmNmY2MTY4MWExMWQ4NzZlYjdiZDUyYjkzMGY3 OWZiOTUxNmY1ZDIxMzdjNWJmYTk1YTg5Mzg5MGQyNmQ3NzEyZmM5ZWNjNGRjODJhNTE3MTM0MWI0 MWE5ZjJjNGE4ZjBjMTRlZmU4MmVmMmE0ZGI2MGE4YTBiOGU0M2QzZjkyOTkyZjhkY2MyZDZiYWUz NzU5YWVhODZhNGYxNGY4MDlmZTY0ODAyMWZjNGFhNzk5MzZiZDY4NzQ1MGU4MDE5MTZkN2QyNjdk ZmFiNjZiZDg2Zjk0MjRiMzQ2MGZhNzViMTZhZjM3MTUxOTE4Y2IyZjhiYThhYzMzZGY1YjBjY2Y3 ZmIyMWMzZWE5ZmIwZWQyOTE3YTRlYjlkNmVkMzQ1YzQyYTVhNjdhNjZmY2E3YjdlNjljMWFkNWM0 NWM1MTg2NjY5MmYwNThhZDUzN2MwZjU5YzgzYTI3ODhlZjliOTYxMGNjMDZhYTE1NWFhMTExNWYy M2ZhMzZkNzczNDE1MmEwZGEyMDkyNDRjMzJkMzdlM2EKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOmFiNmY5YzA0NTE0YWUzZjY1OTEwMzljOWNjNmE5OTE5Mjc5MjgyZDdjOTU5NzFiNGMy Nzk1N2UzMWNjZWQ1ZWY1YjFjNTlhNDQxODQwMjIwM2FiNTBhNDZkZjdkYzAzYmQ2N2Q0MmE2MjU5 MjcwOGIwNTgxNjE3YTQyZWE2ZDcxCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDo0ZTIyNjYzOWZhY2FjY2Y5ODk0MzY3Y2IxMDA4NjYzZTk4OWViMzE3NTdiOTEyYmQxY2IzYmQ1 MTA1OGM3YWRmNTZlOWE1NGVlZjg3YjYzMjk5YTVjYzA5MmMwNDc5OTFkYzlhMzgwZTc0OWM3YzU2 NTdiYjk5NDI0YmNjZTZkNgotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IGE2NzBjOTU4 M2M3MWY0MDMyMDdhMTkyNzAwZDVlNGZkN2EwMDdiNjBhNDYxN2I3ZjkzNzA4Mzk5YTBjYjc3MWFm MDhiOWU1ZjQyMzdlNjk3NWYwNTVkNmYwYTRkOTE1MjNmYTA4MDUwMTNkZjZhZTRhMTlmMDc3NjQ2 ZjFjZDRiCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTkyNDcxZDI5ZDlmYmM4YjYxNTcwZTRlZmEwNTNhNWYxN2Iy ZWZjMGFhNTQxNWIzMzA5ZjdkYzM5NzFjNjRkOWYxMDkzZjYxMTQ5NDFkNDkxMmY3YmZiNzcxZGI0 MWQxZjE2NmQ0YmRhZWM4ZGRlMjE0YWViMDU4ZTIyMjcyNzczOTNlM2MwYjEyYWRjMWI2YTQ0NTg3 MGJjMjZlNzUzZTA1ZTI3YjkwYjk3ZDc4MWUzZTg0OTNlYjVlNzE3YzI0MzIxM2RlNGRjZGQ1YTEx ZDQ2N2I4ZDI2NzU5MTE4NjkyYjEwMzU3YzI4YjBlZmIwMjI4Y2JlMjU3YjllZTBjYjc3YmI3YmM4 YjA3MmVkZjQxODc2OGM5NzdlNDg1NjM1YjRhYjYxMDc4NTg3MTI4ZTlhOGIzYzZkZWNhMmE0ZTY0 Y2Y5ZmQ2ZWNhODgwYWViZDEwNDNkZWFmOTQ0NDdlYTUwYjBjMTFiNTc0MjU5Y2RjYWZkMjA4ZDk2 NTdjNzE3N2NmMzk0ZGUyNmRkODM2NGI2MTU3ODYxOThjMzhlNjNjNTY4ZTIyYjUyNjNiZTQxZDZk ZDg4NDNhZDUyNTRmNjFjZjAxYjcxNjI5NDg2NTI1NjhjMmI0MjgzM2E5NTYxOWZhNTA3MmFkYjBi ZmJmMzhlM2VhY2U3ZTE1OTYwNjYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmEwYTUz Y2I4YmNjNDhmZmU0NGZkOWU1MGUwZjc1MzJkM2UzMjZmOTNkN2VjYjEwMTM1ZDQzODVkYWI1NTBj ZDdiZTAzYTczNzRkZmMyYTkyNzk0YmUxM2U0MGM3OTQ4MTFhOTkxNmMzZDFjNGU3ZWEzMWVkNTI2 OTUzN2MxYzIyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo5YmNmM2YzMzk3 ZmY0NjQxMjZjYjJhOTljMDQ5MDg3MjE4NzEzNTRiODQyZmZkM2Q4NzNkNDk0MDdkYjAzODJmOThj YzU0ZDY2NjY1ZDk1MGVjODI3N2MzNzRmMTllOWYwZGQyZTcyN2Y4NzU5MDE3YzQ5YjViODBiYWE4 N2M2MwotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IGY2ODM1M2Y4MDJkMzlhNDNjNzI4 NjQxZTQ0MDg3Y2M1Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTkyNDcxZDI5ZDlmYmM4YjYxNTcwZTRlZmEwNTNh NWYxN2IyZWZjMGFhNTQxNWIzMzA5ZjdkYzM5NzFjNjRkOWYxMDkzZjYxMTQ5NDFkNDkxMmY3YmZi NzcxZGI0MWQxZjE2NmQ0YmRhZWM4ZGRlMjE0YWViMDU4ZTIyMjcyNzczOTNlM2MwYjEyYWRjMWI2 YTQ0NTg3MGJjMjZlNzUzZTA1ZTI3YjkwYjk3ZDc4MWUzZTg0OTNlYjVlNzE3YzI0MzIxM2RlNGRj ZGQ1YTExZDQ2N2I4ZDI2NzU5MTE4NjkyYjEwMzU3YzI4YjBlZmIwMjI4Y2JlMjU3YjllZTBjYjc3 YmI3YmM4YjA3MmVkZjQxODc2OGM5NzdlNDg1NjM1YjRhYjYxMDc4NTg3MTI4ZTlhOGIzYzZkZWNh MmE0ZTY0Y2Y5ZmQ2ZWNhODgwYWViZDEwNDNkZWFmOTQ0NDdlYTUwYjBjMTFiNTc0MjU5Y2RjYWZk MjA4ZDk2NTdjNzE3N2NmMzk0ZGUyNmRkODM2NGI2MTU3ODYxOThjMzhlNjNjNTY4ZTIyYjUyNjNi ZTQxZDZkZDg4NDNhZDUyNTRmNjFjZjAxYjcxNjI5NDg2NTI1NjhjMmI0MjgzM2E5NTYxOWZhNTA3 MmFkYjBiZmJmMzhlM2VhY2U3ZTE1OTYwNjYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OmEwYTUzY2I4YmNjNDhmZmU0NGZkOWU1MGUwZjc1MzJkM2UzMjZmOTNkN2VjYjEwMTM1ZDQzODVk YWI1NTBjZDdiZTAzYTczNzRkZmMyYTkyNzk0YmUxM2U0MGM3OTQ4MTFhOTkxNmMzZDFjNGU3ZWEz MWVkNTI2OTUzN2MxYzIyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo5YmNm M2YzMzk3ZmY0NjQxMjZjYjJhOTljMDQ5MDg3MjE4NzEzNTRiODQyZmZkM2Q4NzNkNDk0MDdkYjAz ODJmOThjYzU0ZDY2NjY1ZDk1MGVjODI3N2MzNzRmMTllOWYwZGQyZTcyN2Y4NzU5MDE3YzQ5YjVi ODBiYWE4N2M2MwotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDIzYzIzNzdmODI2Zjc3 NTE5ODcxOTQxYjYyY2I5ZmRkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUx MgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTkyNDcxZDI5ZDlmYmM4YjYxNTcwZTRl ZmEwNTNhNWYxN2IyZWZjMGFhNTQxNWIzMzA5ZjdkYzM5NzFjNjRkOWYxMDkzZjYxMTQ5NDFkNDkx MmY3YmZiNzcxZGI0MWQxZjE2NmQ0YmRhZWM4ZGRlMjE0YWViMDU4ZTIyMjcyNzczOTNlM2MwYjEy YWRjMWI2YTQ0NTg3MGJjMjZlNzUzZTA1ZTI3YjkwYjk3ZDc4MWUzZTg0OTNlYjVlNzE3YzI0MzIx M2RlNGRjZGQ1YTExZDQ2N2I4ZDI2NzU5MTE4NjkyYjEwMzU3YzI4YjBlZmIwMjI4Y2JlMjU3Yjll ZTBjYjc3YmI3YmM4YjA3MmVkZjQxODc2OGM5NzdlNDg1NjM1YjRhYjYxMDc4NTg3MTI4ZTlhOGIz YzZkZWNhMmE0ZTY0Y2Y5ZmQ2ZWNhODgwYWViZDEwNDNkZWFmOTQ0NDdlYTUwYjBjMTFiNTc0MjU5 Y2RjYWZkMjA4ZDk2NTdjNzE3N2NmMzk0ZGUyNmRkODM2NGI2MTU3ODYxOThjMzhlNjNjNTY4ZTIy YjUyNjNiZTQxZDZkZDg4NDNhZDUyNTRmNjFjZjAxYjcxNjI5NDg2NTI1NjhjMmI0MjgzM2E5NTYx OWZhNTA3MmFkYjBiZmJmMzhlM2VhY2U3ZTE1OTYwNjYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOmEwYTUzY2I4YmNjNDhmZmU0NGZkOWU1MGUwZjc1MzJkM2UzMjZmOTNkN2VjYjEwMTM1 ZDQzODVkYWI1NTBjZDdiZTAzYTczNzRkZmMyYTkyNzk0YmUxM2U0MGM3OTQ4MTFhOTkxNmMzZDFj NGU3ZWEzMWVkNTI2OTUzN2MxYzIyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDo5YmNmM2YzMzk3ZmY0NjQxMjZjYjJhOTljMDQ5MDg3MjE4NzEzNTRiODQyZmZkM2Q4NzNkNDk0 MDdkYjAzODJmOThjYzU0ZDY2NjY1ZDk1MGVjODI3N2MzNzRmMTllOWYwZGQyZTcyN2Y4NzU5MDE3 YzQ5YjViODBiYWE4N2M2MwotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IGM5MmI4NmEw OTllMjYwNTAzN2Q1MzE3NDZhNmFmN2NiCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTkyNDcxZDI5ZDlmYmM4YjYx NTcwZTRlZmEwNTNhNWYxN2IyZWZjMGFhNTQxNWIzMzA5ZjdkYzM5NzFjNjRkOWYxMDkzZjYxMTQ5 NDFkNDkxMmY3YmZiNzcxZGI0MWQxZjE2NmQ0YmRhZWM4ZGRlMjE0YWViMDU4ZTIyMjcyNzczOTNl M2MwYjEyYWRjMWI2YTQ0NTg3MGJjMjZlNzUzZTA1ZTI3YjkwYjk3ZDc4MWUzZTg0OTNlYjVlNzE3 YzI0MzIxM2RlNGRjZGQ1YTExZDQ2N2I4ZDI2NzU5MTE4NjkyYjEwMzU3YzI4YjBlZmIwMjI4Y2Jl MjU3YjllZTBjYjc3YmI3YmM4YjA3MmVkZjQxODc2OGM5NzdlNDg1NjM1YjRhYjYxMDc4NTg3MTI4 ZTlhOGIzYzZkZWNhMmE0ZTY0Y2Y5ZmQ2ZWNhODgwYWViZDEwNDNkZWFmOTQ0NDdlYTUwYjBjMTFi NTc0MjU5Y2RjYWZkMjA4ZDk2NTdjNzE3N2NmMzk0ZGUyNmRkODM2NGI2MTU3ODYxOThjMzhlNjNj NTY4ZTIyYjUyNjNiZTQxZDZkZDg4NDNhZDUyNTRmNjFjZjAxYjcxNjI5NDg2NTI1NjhjMmI0Mjgz M2E5NTYxOWZhNTA3MmFkYjBiZmJmMzhlM2VhY2U3ZTE1OTYwNjYKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOmEwYTUzY2I4YmNjNDhmZmU0NGZkOWU1MGUwZjc1MzJkM2UzMjZmOTNkN2Vj YjEwMTM1ZDQzODVkYWI1NTBjZDdiZTAzYTczNzRkZmMyYTkyNzk0YmUxM2U0MGM3OTQ4MTFhOTkx NmMzZDFjNGU3ZWEzMWVkNTI2OTUzN2MxYzIyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDo5YmNmM2YzMzk3ZmY0NjQxMjZjYjJhOTljMDQ5MDg3MjE4NzEzNTRiODQyZmZkM2Q4 NzNkNDk0MDdkYjAzODJmOThjYzU0ZDY2NjY1ZDk1MGVjODI3N2MzNzRmMTllOWYwZGQyZTcyN2Y4 NzU5MDE3YzQ5YjViODBiYWE4N2M2MwotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDE1 MTdkZTI1M2E1YjlmN2Q5YzRjM2YyMzRiMjczOTJlCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTkyNDcxZDI5ZDlm YmM4YjYxNTcwZTRlZmEwNTNhNWYxN2IyZWZjMGFhNTQxNWIzMzA5ZjdkYzM5NzFjNjRkOWYxMDkz ZjYxMTQ5NDFkNDkxMmY3YmZiNzcxZGI0MWQxZjE2NmQ0YmRhZWM4ZGRlMjE0YWViMDU4ZTIyMjcy NzczOTNlM2MwYjEyYWRjMWI2YTQ0NTg3MGJjMjZlNzUzZTA1ZTI3YjkwYjk3ZDc4MWUzZTg0OTNl YjVlNzE3YzI0MzIxM2RlNGRjZGQ1YTExZDQ2N2I4ZDI2NzU5MTE4NjkyYjEwMzU3YzI4YjBlZmIw MjI4Y2JlMjU3YjllZTBjYjc3YmI3YmM4YjA3MmVkZjQxODc2OGM5NzdlNDg1NjM1YjRhYjYxMDc4 NTg3MTI4ZTlhOGIzYzZkZWNhMmE0ZTY0Y2Y5ZmQ2ZWNhODgwYWViZDEwNDNkZWFmOTQ0NDdlYTUw YjBjMTFiNTc0MjU5Y2RjYWZkMjA4ZDk2NTdjNzE3N2NmMzk0ZGUyNmRkODM2NGI2MTU3ODYxOThj MzhlNjNjNTY4ZTIyYjUyNjNiZTQxZDZkZDg4NDNhZDUyNTRmNjFjZjAxYjcxNjI5NDg2NTI1Njhj MmI0MjgzM2E5NTYxOWZhNTA3MmFkYjBiZmJmMzhlM2VhY2U3ZTE1OTYwNjYKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOmEwYTUzY2I4YmNjNDhmZmU0NGZkOWU1MGUwZjc1MzJkM2UzMjZm OTNkN2VjYjEwMTM1ZDQzODVkYWI1NTBjZDdiZTAzYTczNzRkZmMyYTkyNzk0YmUxM2U0MGM3OTQ4 MTFhOTkxNmMzZDFjNGU3ZWEzMWVkNTI2OTUzN2MxYzIyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDo5YmNmM2YzMzk3ZmY0NjQxMjZjYjJhOTljMDQ5MDg3MjE4NzEzNTRiODQy ZmZkM2Q4NzNkNDk0MDdkYjAzODJmOThjYzU0ZDY2NjY1ZDk1MGVjODI3N2MzNzRmMTllOWYwZGQy ZTcyN2Y4NzU5MDE3YzQ5YjViODBiYWE4N2M2MwotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1 dCA9IGJlNDhhODJjZDI0NmNmNGQ2ZGRiMzk3YTM5ZjFlZDYyZDk4YjUyNjVlNzUxOTA2MjRhNTIz MDMzNzk2ZDA1MDQ2ZDYzZTA4MTBiNGI3YTZlZmU5YjgzNGNiMDQzODcxMjAzNjM4NTU3MDYzOTY4 OTEwYWQxY2ZhMGFiZTYyYmIxCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUx MgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTkyNDcxZDI5ZDlmYmM4YjYxNTcwZTRl ZmEwNTNhNWYxN2IyZWZjMGFhNTQxNWIzMzA5ZjdkYzM5NzFjNjRkOWYxMDkzZjYxMTQ5NDFkNDkx MmY3YmZiNzcxZGI0MWQxZjE2NmQ0YmRhZWM4ZGRlMjE0YWViMDU4ZTIyMjcyNzczOTNlM2MwYjEy YWRjMWI2YTQ0NTg3MGJjMjZlNzUzZTA1ZTI3YjkwYjk3ZDc4MWUzZTg0OTNlYjVlNzE3YzI0MzIx M2RlNGRjZGQ1YTExZDQ2N2I4ZDI2NzU5MTE4NjkyYjEwMzU3YzI4YjBlZmIwMjI4Y2JlMjU3Yjll ZTBjYjc3YmI3YmM4YjA3MmVkZjQxODc2OGM5NzdlNDg1NjM1YjRhYjYxMDc4NTg3MTI4ZTlhOGIz YzZkZWNhMmE0ZTY0Y2Y5ZmQ2ZWNhODgwYWViZDEwNDNkZWFmOTQ0NDdlYTUwYjBjMTFiNTc0MjU5 Y2RjYWZkMjA4ZDk2NTdjNzE3N2NmMzk0ZGUyNmRkODM2NGI2MTU3ODYxOThjMzhlNjNjNTY4ZTIy YjUyNjNiZTQxZDZkZDg4NDNhZDUyNTRmNjFjZjAxYjcxNjI5NDg2NTI1NjhjMmI0MjgzM2E5NTYx OWZhNTA3MmFkYjBiZmJmMzhlM2VhY2U3ZTE1OTYwNjYKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOmEwYTUzY2I4YmNjNDhmZmU0NGZkOWU1MGUwZjc1MzJkM2UzMjZmOTNkN2VjYjEwMTM1 ZDQzODVkYWI1NTBjZDdiZTAzYTczNzRkZmMyYTkyNzk0YmUxM2U0MGM3OTQ4MTFhOTkxNmMzZDFj NGU3ZWEzMWVkNTI2OTUzN2MxYzIyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDo5YmNmM2YzMzk3ZmY0NjQxMjZjYjJhOTljMDQ5MDg3MjE4NzEzNTRiODQyZmZkM2Q4NzNkNDk0 MDdkYjAzODJmOThjYzU0ZDY2NjY1ZDk1MGVjODI3N2MzNzRmMTllOWYwZGQyZTcyN2Y4NzU5MDE3 YzQ5YjViODBiYWE4N2M2MwotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDBjOWFmMzc3 NWQ1ZGM0OWExYjliODVmYTE4NDIwY2UxY2ExMGQ1MTU5ZjgzZjllMDc4YzIxNzI4OTY4ODYzOWRi Y2U1Zjg1NjY1Zjg2NmQ4ZjkzYjJjNjgyM2JjN2IyNjU1ODMwZDhiYjUxZmJhOTQ1Y2U2ZWFjMmIw ZTZjZThhCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTViMzE1N2I1MzhlMzFhMTQ3OTdkOTgxYTZlZjYyODE0Y2Q1 NWZiZWEyNWVhODhhMTZhNTgzOTQ4NGM3NjI0ZDdiZWZjY2M4MmQ5MWUyZmYyYjZmNDAyZGFiYTg2 MWI3N2MxMDE2YmFiOWUzZDU4YmFiOTg1NTYzZjMyZDY2MzQwN2Y5ZjM1ODI4NTZlZTBhYTNhNTY2 ODBjMjIxZWNkZGM0OGFmNmRlNzFmZDM0NjI2YjcxNmQ5ZWZlNTMwZGY0NzBjMGI3YjFlNDEzMTg2 MWJjNGYxMmU0NGRlN2YxZDE5MTAwNDc0NjVjMGViOTVmNzIzMmQ2ZTcxZDYzOWQ3NWFjNThlNjg0 OGU1NjAyMTBhNWRjMmU2OTk2YzFkOTZmOWY2ODhmYjg2NTU4YmE5NjQyMmQxYTY5Y2Y3OTVlYTY3 ZTY2ZDUzNGJlZjIxNjBmNGU5ZDQzNTFjOWMyZmFhYWQ3YzJhZDI0NzZhY2U1NTU2YzliM2M0YzJk M2JkYWM4MmJmYjU0ZDJlNTRlYjZlZDM5OGI4MTNjNTkyOGFhNTYwYjQ0MmM1ODVhMDM4NTcxYzRk Yjk4YTQ0ZDhjOGNkYjAyZmE3MzFiNDAwYWRiODU5YjU5MWMxODQ2OTAwNzkxZDc5MTkyNzM2M2Q3 NDUwNDJhMzg1OTdlZjg4M2NiZGEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjY1MWJk ZWUyNTVlZWY1ZmI0N2M3NzMzZGYwM2Q0MzQ2YmMzMzVjZjFkZTJiZmJkNDUzZjRmZjE4Yzc3NWRl NDc1NzE5YTZlYzRjNWM1NWJhZGFkZGE0ODIyZTNmYmY1YWUzYzBlNmU5NjA4YTg5M2ZlYTY4YmZj YzBhZjg2ZDczCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDplZTYwMzEzMGQw YmRlYzI0OTUyY2QzMzkyMjcyZGJkN2E1MzZjMmU3NmM3OTRjYzJmNjc4Y2E5ZGQ3ODk2NzA0NTNl NmJjZDMzMGRiZjRlOTM5MzBlYzBiM2U1MDZlNGM2MjliM2QxNTZhYjExNzFkMjQ3ZDBiYTQ0MjE3 ZDI5MgotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IDdiODAyYTc0ZDIxNmE0MWY3NzA4 YzU5N2I5MDUzMjIzCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0 cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTViMzE1N2I1MzhlMzFhMTQ3OTdkOTgxYTZlZjYy ODE0Y2Q1NWZiZWEyNWVhODhhMTZhNTgzOTQ4NGM3NjI0ZDdiZWZjY2M4MmQ5MWUyZmYyYjZmNDAy ZGFiYTg2MWI3N2MxMDE2YmFiOWUzZDU4YmFiOTg1NTYzZjMyZDY2MzQwN2Y5ZjM1ODI4NTZlZTBh YTNhNTY2ODBjMjIxZWNkZGM0OGFmNmRlNzFmZDM0NjI2YjcxNmQ5ZWZlNTMwZGY0NzBjMGI3YjFl NDEzMTg2MWJjNGYxMmU0NGRlN2YxZDE5MTAwNDc0NjVjMGViOTVmNzIzMmQ2ZTcxZDYzOWQ3NWFj NThlNjg0OGU1NjAyMTBhNWRjMmU2OTk2YzFkOTZmOWY2ODhmYjg2NTU4YmE5NjQyMmQxYTY5Y2Y3 OTVlYTY3ZTY2ZDUzNGJlZjIxNjBmNGU5ZDQzNTFjOWMyZmFhYWQ3YzJhZDI0NzZhY2U1NTU2Yzli M2M0YzJkM2JkYWM4MmJmYjU0ZDJlNTRlYjZlZDM5OGI4MTNjNTkyOGFhNTYwYjQ0MmM1ODVhMDM4 NTcxYzRkYjk4YTQ0ZDhjOGNkYjAyZmE3MzFiNDAwYWRiODU5YjU5MWMxODQ2OTAwNzkxZDc5MTky NzM2M2Q3NDUwNDJhMzg1OTdlZjg4M2NiZGEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNo OjY1MWJkZWUyNTVlZWY1ZmI0N2M3NzMzZGYwM2Q0MzQ2YmMzMzVjZjFkZTJiZmJkNDUzZjRmZjE4 Yzc3NWRlNDc1NzE5YTZlYzRjNWM1NWJhZGFkZGE0ODIyZTNmYmY1YWUzYzBlNmU5NjA4YTg5M2Zl YTY4YmZjYzBhZjg2ZDczCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDplZTYw MzEzMGQwYmRlYzI0OTUyY2QzMzkyMjcyZGJkN2E1MzZjMmU3NmM3OTRjYzJmNjc4Y2E5ZGQ3ODk2 NzA0NTNlNmJjZDMzMGRiZjRlOTM5MzBlYzBiM2U1MDZlNGM2MjliM2QxNTZhYjExNzFkMjQ3ZDBi YTQ0MjE3ZDI5MgotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IDM1NTIyMzk3MWJlZDcw YjgwNGQxOTFiNjRjZGUzOWU2Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUx MgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTViMzE1N2I1MzhlMzFhMTQ3OTdkOTgx YTZlZjYyODE0Y2Q1NWZiZWEyNWVhODhhMTZhNTgzOTQ4NGM3NjI0ZDdiZWZjY2M4MmQ5MWUyZmYy YjZmNDAyZGFiYTg2MWI3N2MxMDE2YmFiOWUzZDU4YmFiOTg1NTYzZjMyZDY2MzQwN2Y5ZjM1ODI4 NTZlZTBhYTNhNTY2ODBjMjIxZWNkZGM0OGFmNmRlNzFmZDM0NjI2YjcxNmQ5ZWZlNTMwZGY0NzBj MGI3YjFlNDEzMTg2MWJjNGYxMmU0NGRlN2YxZDE5MTAwNDc0NjVjMGViOTVmNzIzMmQ2ZTcxZDYz OWQ3NWFjNThlNjg0OGU1NjAyMTBhNWRjMmU2OTk2YzFkOTZmOWY2ODhmYjg2NTU4YmE5NjQyMmQx YTY5Y2Y3OTVlYTY3ZTY2ZDUzNGJlZjIxNjBmNGU5ZDQzNTFjOWMyZmFhYWQ3YzJhZDI0NzZhY2U1 NTU2YzliM2M0YzJkM2JkYWM4MmJmYjU0ZDJlNTRlYjZlZDM5OGI4MTNjNTkyOGFhNTYwYjQ0MmM1 ODVhMDM4NTcxYzRkYjk4YTQ0ZDhjOGNkYjAyZmE3MzFiNDAwYWRiODU5YjU5MWMxODQ2OTAwNzkx ZDc5MTkyNzM2M2Q3NDUwNDJhMzg1OTdlZjg4M2NiZGEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOjY1MWJkZWUyNTVlZWY1ZmI0N2M3NzMzZGYwM2Q0MzQ2YmMzMzVjZjFkZTJiZmJkNDUz ZjRmZjE4Yzc3NWRlNDc1NzE5YTZlYzRjNWM1NWJhZGFkZGE0ODIyZTNmYmY1YWUzYzBlNmU5NjA4 YTg5M2ZlYTY4YmZjYzBhZjg2ZDczCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDplZTYwMzEzMGQwYmRlYzI0OTUyY2QzMzkyMjcyZGJkN2E1MzZjMmU3NmM3OTRjYzJmNjc4Y2E5 ZGQ3ODk2NzA0NTNlNmJjZDMzMGRiZjRlOTM5MzBlYzBiM2U1MDZlNGM2MjliM2QxNTZhYjExNzFk MjQ3ZDBiYTQ0MjE3ZDI5MgotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDkyNWYyYjAz NmFjMjY4MmUyMGYwMjIzNzc0OTljM2UxCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTViMzE1N2I1MzhlMzFhMTQ3 OTdkOTgxYTZlZjYyODE0Y2Q1NWZiZWEyNWVhODhhMTZhNTgzOTQ4NGM3NjI0ZDdiZWZjY2M4MmQ5 MWUyZmYyYjZmNDAyZGFiYTg2MWI3N2MxMDE2YmFiOWUzZDU4YmFiOTg1NTYzZjMyZDY2MzQwN2Y5 ZjM1ODI4NTZlZTBhYTNhNTY2ODBjMjIxZWNkZGM0OGFmNmRlNzFmZDM0NjI2YjcxNmQ5ZWZlNTMw ZGY0NzBjMGI3YjFlNDEzMTg2MWJjNGYxMmU0NGRlN2YxZDE5MTAwNDc0NjVjMGViOTVmNzIzMmQ2 ZTcxZDYzOWQ3NWFjNThlNjg0OGU1NjAyMTBhNWRjMmU2OTk2YzFkOTZmOWY2ODhmYjg2NTU4YmE5 NjQyMmQxYTY5Y2Y3OTVlYTY3ZTY2ZDUzNGJlZjIxNjBmNGU5ZDQzNTFjOWMyZmFhYWQ3YzJhZDI0 NzZhY2U1NTU2YzliM2M0YzJkM2JkYWM4MmJmYjU0ZDJlNTRlYjZlZDM5OGI4MTNjNTkyOGFhNTYw YjQ0MmM1ODVhMDM4NTcxYzRkYjk4YTQ0ZDhjOGNkYjAyZmE3MzFiNDAwYWRiODU5YjU5MWMxODQ2 OTAwNzkxZDc5MTkyNzM2M2Q3NDUwNDJhMzg1OTdlZjg4M2NiZGEKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOjY1MWJkZWUyNTVlZWY1ZmI0N2M3NzMzZGYwM2Q0MzQ2YmMzMzVjZjFkZTJi ZmJkNDUzZjRmZjE4Yzc3NWRlNDc1NzE5YTZlYzRjNWM1NWJhZGFkZGE0ODIyZTNmYmY1YWUzYzBl NmU5NjA4YTg5M2ZlYTY4YmZjYzBhZjg2ZDczCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDplZTYwMzEzMGQwYmRlYzI0OTUyY2QzMzkyMjcyZGJkN2E1MzZjMmU3NmM3OTRjYzJm Njc4Y2E5ZGQ3ODk2NzA0NTNlNmJjZDMzMGRiZjRlOTM5MzBlYzBiM2U1MDZlNGM2MjliM2QxNTZh YjExNzFkMjQ3ZDBiYTQ0MjE3ZDI5MgotK0N0cmwudHlwZSA9IHR5cGU6RAotK091dHB1dCA9IDM3 YWUyYmJiYjE2MDNjMDdkNTI3NGZjOGY1NzEyNmRjCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTViMzE1N2I1Mzhl MzFhMTQ3OTdkOTgxYTZlZjYyODE0Y2Q1NWZiZWEyNWVhODhhMTZhNTgzOTQ4NGM3NjI0ZDdiZWZj Y2M4MmQ5MWUyZmYyYjZmNDAyZGFiYTg2MWI3N2MxMDE2YmFiOWUzZDU4YmFiOTg1NTYzZjMyZDY2 MzQwN2Y5ZjM1ODI4NTZlZTBhYTNhNTY2ODBjMjIxZWNkZGM0OGFmNmRlNzFmZDM0NjI2YjcxNmQ5 ZWZlNTMwZGY0NzBjMGI3YjFlNDEzMTg2MWJjNGYxMmU0NGRlN2YxZDE5MTAwNDc0NjVjMGViOTVm NzIzMmQ2ZTcxZDYzOWQ3NWFjNThlNjg0OGU1NjAyMTBhNWRjMmU2OTk2YzFkOTZmOWY2ODhmYjg2 NTU4YmE5NjQyMmQxYTY5Y2Y3OTVlYTY3ZTY2ZDUzNGJlZjIxNjBmNGU5ZDQzNTFjOWMyZmFhYWQ3 YzJhZDI0NzZhY2U1NTU2YzliM2M0YzJkM2JkYWM4MmJmYjU0ZDJlNTRlYjZlZDM5OGI4MTNjNTky OGFhNTYwYjQ0MmM1ODVhMDM4NTcxYzRkYjk4YTQ0ZDhjOGNkYjAyZmE3MzFiNDAwYWRiODU5YjU5 MWMxODQ2OTAwNzkxZDc5MTkyNzM2M2Q3NDUwNDJhMzg1OTdlZjg4M2NiZGEKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjY1MWJkZWUyNTVlZWY1ZmI0N2M3NzMzZGYwM2Q0MzQ2YmMzMzVj ZjFkZTJiZmJkNDUzZjRmZjE4Yzc3NWRlNDc1NzE5YTZlYzRjNWM1NWJhZGFkZGE0ODIyZTNmYmY1 YWUzYzBlNmU5NjA4YTg5M2ZlYTY4YmZjYzBhZjg2ZDczCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDplZTYwMzEzMGQwYmRlYzI0OTUyY2QzMzkyMjcyZGJkN2E1MzZjMmU3NmM3 OTRjYzJmNjc4Y2E5ZGQ3ODk2NzA0NTNlNmJjZDMzMGRiZjRlOTM5MzBlYzBiM2U1MDZlNGM2Mjli M2QxNTZhYjExNzFkMjQ3ZDBiYTQ0MjE3ZDI5MgotK0N0cmwudHlwZSA9IHR5cGU6RQotK091dHB1 dCA9IDhiMzZjN2UxNzU3OTdiZjdiYmIwNzlhYzVkMDZlNmY3ZjYyZmM1YTk1N2UwZmVmYWI3ZGY1 NjVlYjcyYWUwNTg2ZGJlYmFkOTc4OTc1YWFhMzU4NDZkZTY2N2I0NGI3MTc0MzE1YjJiOTMyZjBi ZTUzOGZiYTc2YjkyNTMxMDE5Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUx MgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTViMzE1N2I1MzhlMzFhMTQ3OTdkOTgx YTZlZjYyODE0Y2Q1NWZiZWEyNWVhODhhMTZhNTgzOTQ4NGM3NjI0ZDdiZWZjY2M4MmQ5MWUyZmYy YjZmNDAyZGFiYTg2MWI3N2MxMDE2YmFiOWUzZDU4YmFiOTg1NTYzZjMyZDY2MzQwN2Y5ZjM1ODI4 NTZlZTBhYTNhNTY2ODBjMjIxZWNkZGM0OGFmNmRlNzFmZDM0NjI2YjcxNmQ5ZWZlNTMwZGY0NzBj MGI3YjFlNDEzMTg2MWJjNGYxMmU0NGRlN2YxZDE5MTAwNDc0NjVjMGViOTVmNzIzMmQ2ZTcxZDYz OWQ3NWFjNThlNjg0OGU1NjAyMTBhNWRjMmU2OTk2YzFkOTZmOWY2ODhmYjg2NTU4YmE5NjQyMmQx YTY5Y2Y3OTVlYTY3ZTY2ZDUzNGJlZjIxNjBmNGU5ZDQzNTFjOWMyZmFhYWQ3YzJhZDI0NzZhY2U1 NTU2YzliM2M0YzJkM2JkYWM4MmJmYjU0ZDJlNTRlYjZlZDM5OGI4MTNjNTkyOGFhNTYwYjQ0MmM1 ODVhMDM4NTcxYzRkYjk4YTQ0ZDhjOGNkYjAyZmE3MzFiNDAwYWRiODU5YjU5MWMxODQ2OTAwNzkx ZDc5MTkyNzM2M2Q3NDUwNDJhMzg1OTdlZjg4M2NiZGEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOjY1MWJkZWUyNTVlZWY1ZmI0N2M3NzMzZGYwM2Q0MzQ2YmMzMzVjZjFkZTJiZmJkNDUz ZjRmZjE4Yzc3NWRlNDc1NzE5YTZlYzRjNWM1NWJhZGFkZGE0ODIyZTNmYmY1YWUzYzBlNmU5NjA4 YTg5M2ZlYTY4YmZjYzBhZjg2ZDczCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDplZTYwMzEzMGQwYmRlYzI0OTUyY2QzMzkyMjcyZGJkN2E1MzZjMmU3NmM3OTRjYzJmNjc4Y2E5 ZGQ3ODk2NzA0NTNlNmJjZDMzMGRiZjRlOTM5MzBlYzBiM2U1MDZlNGM2MjliM2QxNTZhYjExNzFk MjQ3ZDBiYTQ0MjE3ZDI5MgotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDM4OGVmMzEw YmNlMTMxODhkZjNmZDYyODU1NzYwNDE3NTRhMjgxNTQ4ZmNjNmEyMTJlMGRlNTY0ZGI2NjE2NDAz MjAxMzBlNGRmNGE2ZmYzMTE2MmVkYWE3Y2VkNWI3ZjA1ZjM0NTZmNjc0ZWU4YmUwYjAzNDI0MTQy MDU4Nzk1Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4 a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBiNDFjMGJkZjE4MGQwMmZmNDU5MDc5OTI1YjMyZTU0Mjk5 MTI4Mjk4ZGE4NjRiZTI4YjRjMDI1MzIyNDRiMDU3MjE5ZTNmYTVmZWEwOTg0MTM1MTYwNGFiNzEz MDIxNjIyZTZhNmQwNzQ4ZjM1NGZjM2YyOWE5YWM4YmI2NGZkZDk4NGI3MjVmMDBmNTZkZjNjZjE2 ZDNiYWM3ODY1MjRhMjkxMDUwOTZmOTZmMzg3NDIyMzYxYmNjMjQ3NzRmZDRkNWI3MWJkNmY3NTdh ODE5M2ZkNjkxNDExYjhlMGFhMTQzMDdlNmVkMWU5NzkwNzkyNWQ5M2NlZTllZDI2NmYzODdhZjY2 Y2QzZGEzZTk5ZDU0M2U0YmFhZjhhN2ZkYjM2YzEwODY5MjY3NzY3ZDgwNTA5NzE3YjU2NjZlM2Zj ZGY4Y2NhNjQ4NmExYzE4ZTNkM2MxNWJhMGM2NzczZGNiZTM3NGQ4M2RlMWMxMDhhNDAwOTk4YjI1 YWZhNGQzYjYwOTE3NTk0YTExMjBlNDQ5YTU3ZGIxZjNiMmUwNDhjM2M2NGE0MDhlZDQxYmIzMjE0 NTM2NDkzMmYxMDU3ODhjZDBiMTk4NTIyZjBjNTliMWQ3NzRiMWFjODBjZDc2ZDE4ZTA2YjUzYzNk NTk5ZjYyNWM3MmYzOGIxNTc0NTQ3OAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6OTRj ZTc4NzZkZDdkOTg0NzVmZjhkZDYzNGI5YjQ4ZTBlMzQxNmQxYWZkNjMzNjM3YjQ5YTQ5YzUyNWVl OTA1YWQ4YTE3YzEyMTk0NzQ2ZTIxMDIwN2M1NDYyOGM0NTMyODdhNzc1MTU1NzVhNzlhZDQwYjI3 MGI1MTE1MDMwYjgKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmQyZTdlYTIx NWYzNTM4MTE2NGExMzgyNTMzZjc1MmViMjFlNmZhOWYyNWQzOTliNzkxNGMwMzE3OTk4ZjJiNzgy MGY4OTM1NTc0NTlmMDc3M2VjYTNkYmFmZDgzNzUwMjFiOTU1YThkZmU3YWQ2NTlkZmU0ODBlMzEw NzcyNGY4Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gZWZlYjUzMDVlZGE2OWIwYmQ2 OTk5YjRhMjc0Nzk2NjcKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGI0MWMwYmRmMTgwZDAyZmY0NTkwNzk5MjVi MzJlNTQyOTkxMjgyOThkYTg2NGJlMjhiNGMwMjUzMjI0NGIwNTcyMTllM2ZhNWZlYTA5ODQxMzUx NjA0YWI3MTMwMjE2MjJlNmE2ZDA3NDhmMzU0ZmMzZjI5YTlhYzhiYjY0ZmRkOTg0YjcyNWYwMGY1 NmRmM2NmMTZkM2JhYzc4NjUyNGEyOTEwNTA5NmY5NmYzODc0MjIzNjFiY2MyNDc3NGZkNGQ1Yjcx YmQ2Zjc1N2E4MTkzZmQ2OTE0MTFiOGUwYWExNDMwN2U2ZWQxZTk3OTA3OTI1ZDkzY2VlOWVkMjY2 ZjM4N2FmNjZjZDNkYTNlOTlkNTQzZTRiYWFmOGE3ZmRiMzZjMTA4NjkyNjc3NjdkODA1MDk3MTdi NTY2NmUzZmNkZjhjY2E2NDg2YTFjMThlM2QzYzE1YmEwYzY3NzNkY2JlMzc0ZDgzZGUxYzEwOGE0 MDA5OThiMjVhZmE0ZDNiNjA5MTc1OTRhMTEyMGU0NDlhNTdkYjFmM2IyZTA0OGMzYzY0YTQwOGVk NDFiYjMyMTQ1MzY0OTMyZjEwNTc4OGNkMGIxOTg1MjJmMGM1OWIxZDc3NGIxYWM4MGNkNzZkMThl MDZiNTNjM2Q1OTlmNjI1YzcyZjM4YjE1NzQ1NDc4Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNn aGFzaDo5NGNlNzg3NmRkN2Q5ODQ3NWZmOGRkNjM0YjliNDhlMGUzNDE2ZDFhZmQ2MzM2MzdiNDlh NDljNTI1ZWU5MDVhZDhhMTdjMTIxOTQ3NDZlMjEwMjA3YzU0NjI4YzQ1MzI4N2E3NzUxNTU3NWE3 OWFkNDBiMjcwYjUxMTUwMzBiOAotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6 ZDJlN2VhMjE1ZjM1MzgxMTY0YTEzODI1MzNmNzUyZWIyMWU2ZmE5ZjI1ZDM5OWI3OTE0YzAzMTc5 OThmMmI3ODIwZjg5MzU1NzQ1OWYwNzczZWNhM2RiYWZkODM3NTAyMWI5NTVhOGRmZTdhZDY1OWRm ZTQ4MGUzMTA3NzI0ZjgKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSA4MDZmY2E5MTg5 YzAyZTdlYzJhNjQ1OTM4N2IwMzUwNgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpT SEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwYjQxYzBiZGYxODBkMDJmZjQ1 OTA3OTkyNWIzMmU1NDI5OTEyODI5OGRhODY0YmUyOGI0YzAyNTMyMjQ0YjA1NzIxOWUzZmE1ZmVh MDk4NDEzNTE2MDRhYjcxMzAyMTYyMmU2YTZkMDc0OGYzNTRmYzNmMjlhOWFjOGJiNjRmZGQ5ODRi NzI1ZjAwZjU2ZGYzY2YxNmQzYmFjNzg2NTI0YTI5MTA1MDk2Zjk2ZjM4NzQyMjM2MWJjYzI0Nzc0 ZmQ0ZDViNzFiZDZmNzU3YTgxOTNmZDY5MTQxMWI4ZTBhYTE0MzA3ZTZlZDFlOTc5MDc5MjVkOTNj ZWU5ZWQyNjZmMzg3YWY2NmNkM2RhM2U5OWQ1NDNlNGJhYWY4YTdmZGIzNmMxMDg2OTI2Nzc2N2Q4 MDUwOTcxN2I1NjY2ZTNmY2RmOGNjYTY0ODZhMWMxOGUzZDNjMTViYTBjNjc3M2RjYmUzNzRkODNk ZTFjMTA4YTQwMDk5OGIyNWFmYTRkM2I2MDkxNzU5NGExMTIwZTQ0OWE1N2RiMWYzYjJlMDQ4YzNj NjRhNDA4ZWQ0MWJiMzIxNDUzNjQ5MzJmMTA1Nzg4Y2QwYjE5ODUyMmYwYzU5YjFkNzc0YjFhYzgw Y2Q3NmQxOGUwNmI1M2MzZDU5OWY2MjVjNzJmMzhiMTU3NDU0NzgKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOjk0Y2U3ODc2ZGQ3ZDk4NDc1ZmY4ZGQ2MzRiOWI0OGUwZTM0MTZkMWFmZDYz MzYzN2I0OWE0OWM1MjVlZTkwNWFkOGExN2MxMjE5NDc0NmUyMTAyMDdjNTQ2MjhjNDUzMjg3YTc3 NTE1NTc1YTc5YWQ0MGIyNzBiNTExNTAzMGI4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDpkMmU3ZWEyMTVmMzUzODExNjRhMTM4MjUzM2Y3NTJlYjIxZTZmYTlmMjVkMzk5Yjc5 MTRjMDMxNzk5OGYyYjc4MjBmODkzNTU3NDU5ZjA3NzNlY2EzZGJhZmQ4Mzc1MDIxYjk1NWE4ZGZl N2FkNjU5ZGZlNDgwZTMxMDc3MjRmOAotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDll NTQyMjgyZDBkYjM0NWE2YmEyMGViYTdjNWRlNTMxCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBiNDFjMGJkZjE4 MGQwMmZmNDU5MDc5OTI1YjMyZTU0Mjk5MTI4Mjk4ZGE4NjRiZTI4YjRjMDI1MzIyNDRiMDU3MjE5 ZTNmYTVmZWEwOTg0MTM1MTYwNGFiNzEzMDIxNjIyZTZhNmQwNzQ4ZjM1NGZjM2YyOWE5YWM4YmI2 NGZkZDk4NGI3MjVmMDBmNTZkZjNjZjE2ZDNiYWM3ODY1MjRhMjkxMDUwOTZmOTZmMzg3NDIyMzYx YmNjMjQ3NzRmZDRkNWI3MWJkNmY3NTdhODE5M2ZkNjkxNDExYjhlMGFhMTQzMDdlNmVkMWU5Nzkw NzkyNWQ5M2NlZTllZDI2NmYzODdhZjY2Y2QzZGEzZTk5ZDU0M2U0YmFhZjhhN2ZkYjM2YzEwODY5 MjY3NzY3ZDgwNTA5NzE3YjU2NjZlM2ZjZGY4Y2NhNjQ4NmExYzE4ZTNkM2MxNWJhMGM2NzczZGNi ZTM3NGQ4M2RlMWMxMDhhNDAwOTk4YjI1YWZhNGQzYjYwOTE3NTk0YTExMjBlNDQ5YTU3ZGIxZjNi MmUwNDhjM2M2NGE0MDhlZDQxYmIzMjE0NTM2NDkzMmYxMDU3ODhjZDBiMTk4NTIyZjBjNTliMWQ3 NzRiMWFjODBjZDc2ZDE4ZTA2YjUzYzNkNTk5ZjYyNWM3MmYzOGIxNTc0NTQ3OAotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6OTRjZTc4NzZkZDdkOTg0NzVmZjhkZDYzNGI5YjQ4ZTBlMzQx NmQxYWZkNjMzNjM3YjQ5YTQ5YzUyNWVlOTA1YWQ4YTE3YzEyMTk0NzQ2ZTIxMDIwN2M1NDYyOGM0 NTMyODdhNzc1MTU1NzVhNzlhZDQwYjI3MGI1MTE1MDMwYjgKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOmQyZTdlYTIxNWYzNTM4MTE2NGExMzgyNTMzZjc1MmViMjFlNmZhOWYy NWQzOTliNzkxNGMwMzE3OTk4ZjJiNzgyMGY4OTM1NTc0NTlmMDc3M2VjYTNkYmFmZDgzNzUwMjFi OTU1YThkZmU3YWQ2NTlkZmU0ODBlMzEwNzcyNGY4Ci0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0 cHV0ID0gNDFlNzk2MmI1N2E2N2Y3NTA3MmYxNWE1YmE0MDVkMTUKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGI0 MWMwYmRmMTgwZDAyZmY0NTkwNzk5MjViMzJlNTQyOTkxMjgyOThkYTg2NGJlMjhiNGMwMjUzMjI0 NGIwNTcyMTllM2ZhNWZlYTA5ODQxMzUxNjA0YWI3MTMwMjE2MjJlNmE2ZDA3NDhmMzU0ZmMzZjI5 YTlhYzhiYjY0ZmRkOTg0YjcyNWYwMGY1NmRmM2NmMTZkM2JhYzc4NjUyNGEyOTEwNTA5NmY5NmYz ODc0MjIzNjFiY2MyNDc3NGZkNGQ1YjcxYmQ2Zjc1N2E4MTkzZmQ2OTE0MTFiOGUwYWExNDMwN2U2 ZWQxZTk3OTA3OTI1ZDkzY2VlOWVkMjY2ZjM4N2FmNjZjZDNkYTNlOTlkNTQzZTRiYWFmOGE3ZmRi MzZjMTA4NjkyNjc3NjdkODA1MDk3MTdiNTY2NmUzZmNkZjhjY2E2NDg2YTFjMThlM2QzYzE1YmEw YzY3NzNkY2JlMzc0ZDgzZGUxYzEwOGE0MDA5OThiMjVhZmE0ZDNiNjA5MTc1OTRhMTEyMGU0NDlh NTdkYjFmM2IyZTA0OGMzYzY0YTQwOGVkNDFiYjMyMTQ1MzY0OTMyZjEwNTc4OGNkMGIxOTg1MjJm MGM1OWIxZDc3NGIxYWM4MGNkNzZkMThlMDZiNTNjM2Q1OTlmNjI1YzcyZjM4YjE1NzQ1NDc4Ci0r Q3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo5NGNlNzg3NmRkN2Q5ODQ3NWZmOGRkNjM0Yjli NDhlMGUzNDE2ZDFhZmQ2MzM2MzdiNDlhNDljNTI1ZWU5MDVhZDhhMTdjMTIxOTQ3NDZlMjEwMjA3 YzU0NjI4YzQ1MzI4N2E3NzUxNTU3NWE3OWFkNDBiMjcwYjUxMTUwMzBiOAotK0N0cmwuaGV4c2Vz c2lvbl9pZCA9IGhleHNlc3Npb25faWQ6ZDJlN2VhMjE1ZjM1MzgxMTY0YTEzODI1MzNmNzUyZWIy MWU2ZmE5ZjI1ZDM5OWI3OTE0YzAzMTc5OThmMmI3ODIwZjg5MzU1NzQ1OWYwNzczZWNhM2RiYWZk ODM3NTAyMWI5NTVhOGRmZTdhZDY1OWRmZTQ4MGUzMTA3NzI0ZjgKLStDdHJsLnR5cGUgPSB0eXBl OkUKLStPdXRwdXQgPSA3YmY4ZjI1ZmQxNTVlNDFkMWRjODVjYzgxNDcwNGRkODczMjI3NWIzYTUz ZGMxYjhjNmIzMzBjMDhmMzA3YjVjMGRhMzE2MDZjYjdlYWExYjM3YjI3MjFmNGExYmY3MGE2ODg1 YzMwZDE3ZDdhY2QzMmZjYzg5NDc2OGZlNDEwNgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQg PSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwYjQxYzBiZGYxODBk MDJmZjQ1OTA3OTkyNWIzMmU1NDI5OTEyODI5OGRhODY0YmUyOGI0YzAyNTMyMjQ0YjA1NzIxOWUz ZmE1ZmVhMDk4NDEzNTE2MDRhYjcxMzAyMTYyMmU2YTZkMDc0OGYzNTRmYzNmMjlhOWFjOGJiNjRm ZGQ5ODRiNzI1ZjAwZjU2ZGYzY2YxNmQzYmFjNzg2NTI0YTI5MTA1MDk2Zjk2ZjM4NzQyMjM2MWJj YzI0Nzc0ZmQ0ZDViNzFiZDZmNzU3YTgxOTNmZDY5MTQxMWI4ZTBhYTE0MzA3ZTZlZDFlOTc5MDc5 MjVkOTNjZWU5ZWQyNjZmMzg3YWY2NmNkM2RhM2U5OWQ1NDNlNGJhYWY4YTdmZGIzNmMxMDg2OTI2 Nzc2N2Q4MDUwOTcxN2I1NjY2ZTNmY2RmOGNjYTY0ODZhMWMxOGUzZDNjMTViYTBjNjc3M2RjYmUz NzRkODNkZTFjMTA4YTQwMDk5OGIyNWFmYTRkM2I2MDkxNzU5NGExMTIwZTQ0OWE1N2RiMWYzYjJl MDQ4YzNjNjRhNDA4ZWQ0MWJiMzIxNDUzNjQ5MzJmMTA1Nzg4Y2QwYjE5ODUyMmYwYzU5YjFkNzc0 YjFhYzgwY2Q3NmQxOGUwNmI1M2MzZDU5OWY2MjVjNzJmMzhiMTU3NDU0NzgKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjk0Y2U3ODc2ZGQ3ZDk4NDc1ZmY4ZGQ2MzRiOWI0OGUwZTM0MTZk MWFmZDYzMzYzN2I0OWE0OWM1MjVlZTkwNWFkOGExN2MxMjE5NDc0NmUyMTAyMDdjNTQ2MjhjNDUz Mjg3YTc3NTE1NTc1YTc5YWQ0MGIyNzBiNTExNTAzMGI4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDpkMmU3ZWEyMTVmMzUzODExNjRhMTM4MjUzM2Y3NTJlYjIxZTZmYTlmMjVk Mzk5Yjc5MTRjMDMxNzk5OGYyYjc4MjBmODkzNTU3NDU5ZjA3NzNlY2EzZGJhZmQ4Mzc1MDIxYjk1 NWE4ZGZlN2FkNjU5ZGZlNDgwZTMxMDc3MjRmOAotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1 dCA9IDY2YjhmOGMxYTM4MTIwYzczY2M1NTk1MDQ1NWE2OWM0MjZmZGE0NGI5YzY2YzNiZWNhZjI1 OWRkNTdhNjIwZTVlZDNhNzQ5YTQ4NmQwNWVhYjUyYzI4OWY0ODk1ODFjYjY1NTg2NWQ0Mzg4YTgx ZTc5YjA2YmQxMDVlM2FlODU4Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUx MgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwM2JhNzE3NDZlNDYyMjkxMWRiY2Q3NjM1 OWRiZDAxYTM5NTgxNzVjYWM1MDBmYWM4NzE0NmY0YTI2MTY3ODJhYzAzMjhlYTMyMDQ2NzYyZjYy MDgwZGY4ZmU3NmZmMTEyYWNiZjRlNGM3YTM2ZmE2NDhlYzYwYzUwZDRhMGY3YjI3YjY3Y2RjZDcy NWVkMmQ1MWMzYjVjNDM4YzQ1YzhmNDZkOTUzODQ1YTg5OWU4OTM3OGU5ODFhYTI3MGJkNmNjMTkw YTVhYjUzZTk1MTZmNWMxOTRmOWI2MWVmNzgyNTczYjQxNzcwMjMzN2IzMjc3Njc2NWU3NWQ2ZWZi MzcxYTNhZjk4YzFiMGVhYTkwZWU0M2E5OWU1OGQ4MDNiYzY0NWE2NTEwMDM3MWNkYTgzMTZkNTE2 MThlNGFkYTRkOWE0NmNkMDQ5NjczY2JmY2Y2Y2UzZWM2NmM5NjQ5MDJlYjliZDI4NTE0ZDFmY2Uz MmViZjhlZTJhZTNjOGU0NmY0YmYxOGYxNTNhNmYxMDMxY2VmYzdlNzM2ZDgyMTA1ZGJlYjYwZGI0 MjJiNzlmNGM0ZjNmNDgzOGZlZTg5MTM0MWNjOTgyZTc5OTE3YWVmYjgyNTI5ZDEzNDY0ODg0N2Rl MTVjZjNiYTFkN2I1MDAwZTc0Yjc4MTk4ZDZhM2VmY2UKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4 Y2doYXNoOjMyN2ExY2ZjODk4MzdjOTBmYjcxNDFhZDNhN2RmMjkzYWY1YzllMmZkNDgyZmI3N2Y2 NzY5ZGI4ZTkxNDE3Mzc3ZmUwYTBhMzBjMDcyZjgyNzZlODI0OTc1YWZkYzBmNzNlMWExY2JlZGE4 NmQ1YzcwYzI3OTk5MTI2MDJlZTc4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9p ZDo0NjI4MmI4YTZkZWExNjU0ZGU4OTE5OTk3MmM0MTRlZTUxMmYzM2FiODMyZTcyODQ1NDdjZmMz NDVhZjZlZWE5ZmJhZmI3NWY0NjQ2Nzg5NzU1MDc4YTE3NGM5OGM1YWExZDc0MGFmMWNmNDA4NDRh ZTY4MGNkZDgwNDY2MDg2YgotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IDhmNmFjMThm ZjUzMDA4NDliZTM0NjAyNjMwYmI0MTAyCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1k OlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwM2JhNzE3NDZlNDYyMjkxMWRi Y2Q3NjM1OWRiZDAxYTM5NTgxNzVjYWM1MDBmYWM4NzE0NmY0YTI2MTY3ODJhYzAzMjhlYTMyMDQ2 NzYyZjYyMDgwZGY4ZmU3NmZmMTEyYWNiZjRlNGM3YTM2ZmE2NDhlYzYwYzUwZDRhMGY3YjI3YjY3 Y2RjZDcyNWVkMmQ1MWMzYjVjNDM4YzQ1YzhmNDZkOTUzODQ1YTg5OWU4OTM3OGU5ODFhYTI3MGJk NmNjMTkwYTVhYjUzZTk1MTZmNWMxOTRmOWI2MWVmNzgyNTczYjQxNzcwMjMzN2IzMjc3Njc2NWU3 NWQ2ZWZiMzcxYTNhZjk4YzFiMGVhYTkwZWU0M2E5OWU1OGQ4MDNiYzY0NWE2NTEwMDM3MWNkYTgz MTZkNTE2MThlNGFkYTRkOWE0NmNkMDQ5NjczY2JmY2Y2Y2UzZWM2NmM5NjQ5MDJlYjliZDI4NTE0 ZDFmY2UzMmViZjhlZTJhZTNjOGU0NmY0YmYxOGYxNTNhNmYxMDMxY2VmYzdlNzM2ZDgyMTA1ZGJl YjYwZGI0MjJiNzlmNGM0ZjNmNDgzOGZlZTg5MTM0MWNjOTgyZTc5OTE3YWVmYjgyNTI5ZDEzNDY0 ODg0N2RlMTVjZjNiYTFkN2I1MDAwZTc0Yjc4MTk4ZDZhM2VmY2UKLStDdHJsLmhleHhjZ2hhc2gg PSBoZXh4Y2doYXNoOjMyN2ExY2ZjODk4MzdjOTBmYjcxNDFhZDNhN2RmMjkzYWY1YzllMmZkNDgy ZmI3N2Y2NzY5ZGI4ZTkxNDE3Mzc3ZmUwYTBhMzBjMDcyZjgyNzZlODI0OTc1YWZkYzBmNzNlMWEx Y2JlZGE4NmQ1YzcwYzI3OTk5MTI2MDJlZTc4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vz c2lvbl9pZDo0NjI4MmI4YTZkZWExNjU0ZGU4OTE5OTk3MmM0MTRlZTUxMmYzM2FiODMyZTcyODQ1 NDdjZmMzNDVhZjZlZWE5ZmJhZmI3NWY0NjQ2Nzg5NzU1MDc4YTE3NGM5OGM1YWExZDc0MGFmMWNm NDA4NDRhZTY4MGNkZDgwNDY2MDg2YgotK0N0cmwudHlwZSA9IHR5cGU6QgotK091dHB1dCA9IGYy YjQ1ZGYyNTA4NjU2NzU4NTI5YTFmNDY3OTgzOWZkCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwM2JhNzE3NDZlNDYy MjkxMWRiY2Q3NjM1OWRiZDAxYTM5NTgxNzVjYWM1MDBmYWM4NzE0NmY0YTI2MTY3ODJhYzAzMjhl YTMyMDQ2NzYyZjYyMDgwZGY4ZmU3NmZmMTEyYWNiZjRlNGM3YTM2ZmE2NDhlYzYwYzUwZDRhMGY3 YjI3YjY3Y2RjZDcyNWVkMmQ1MWMzYjVjNDM4YzQ1YzhmNDZkOTUzODQ1YTg5OWU4OTM3OGU5ODFh YTI3MGJkNmNjMTkwYTVhYjUzZTk1MTZmNWMxOTRmOWI2MWVmNzgyNTczYjQxNzcwMjMzN2IzMjc3 Njc2NWU3NWQ2ZWZiMzcxYTNhZjk4YzFiMGVhYTkwZWU0M2E5OWU1OGQ4MDNiYzY0NWE2NTEwMDM3 MWNkYTgzMTZkNTE2MThlNGFkYTRkOWE0NmNkMDQ5NjczY2JmY2Y2Y2UzZWM2NmM5NjQ5MDJlYjli ZDI4NTE0ZDFmY2UzMmViZjhlZTJhZTNjOGU0NmY0YmYxOGYxNTNhNmYxMDMxY2VmYzdlNzM2ZDgy MTA1ZGJlYjYwZGI0MjJiNzlmNGM0ZjNmNDgzOGZlZTg5MTM0MWNjOTgyZTc5OTE3YWVmYjgyNTI5 ZDEzNDY0ODg0N2RlMTVjZjNiYTFkN2I1MDAwZTc0Yjc4MTk4ZDZhM2VmY2UKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjMyN2ExY2ZjODk4MzdjOTBmYjcxNDFhZDNhN2RmMjkzYWY1Yzll MmZkNDgyZmI3N2Y2NzY5ZGI4ZTkxNDE3Mzc3ZmUwYTBhMzBjMDcyZjgyNzZlODI0OTc1YWZkYzBm NzNlMWExY2JlZGE4NmQ1YzcwYzI3OTk5MTI2MDJlZTc4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDo0NjI4MmI4YTZkZWExNjU0ZGU4OTE5OTk3MmM0MTRlZTUxMmYzM2FiODMy ZTcyODQ1NDdjZmMzNDVhZjZlZWE5ZmJhZmI3NWY0NjQ2Nzg5NzU1MDc4YTE3NGM5OGM1YWExZDc0 MGFmMWNmNDA4NDRhZTY4MGNkZDgwNDY2MDg2YgotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1 dCA9IDMzNTZkNThmNjFiY2NhNTA2MDU4ZTA5OTBjOTgyMWY1Ci0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwM2JhNzE3 NDZlNDYyMjkxMWRiY2Q3NjM1OWRiZDAxYTM5NTgxNzVjYWM1MDBmYWM4NzE0NmY0YTI2MTY3ODJh YzAzMjhlYTMyMDQ2NzYyZjYyMDgwZGY4ZmU3NmZmMTEyYWNiZjRlNGM3YTM2ZmE2NDhlYzYwYzUw ZDRhMGY3YjI3YjY3Y2RjZDcyNWVkMmQ1MWMzYjVjNDM4YzQ1YzhmNDZkOTUzODQ1YTg5OWU4OTM3 OGU5ODFhYTI3MGJkNmNjMTkwYTVhYjUzZTk1MTZmNWMxOTRmOWI2MWVmNzgyNTczYjQxNzcwMjMz N2IzMjc3Njc2NWU3NWQ2ZWZiMzcxYTNhZjk4YzFiMGVhYTkwZWU0M2E5OWU1OGQ4MDNiYzY0NWE2 NTEwMDM3MWNkYTgzMTZkNTE2MThlNGFkYTRkOWE0NmNkMDQ5NjczY2JmY2Y2Y2UzZWM2NmM5NjQ5 MDJlYjliZDI4NTE0ZDFmY2UzMmViZjhlZTJhZTNjOGU0NmY0YmYxOGYxNTNhNmYxMDMxY2VmYzdl NzM2ZDgyMTA1ZGJlYjYwZGI0MjJiNzlmNGM0ZjNmNDgzOGZlZTg5MTM0MWNjOTgyZTc5OTE3YWVm YjgyNTI5ZDEzNDY0ODg0N2RlMTVjZjNiYTFkN2I1MDAwZTc0Yjc4MTk4ZDZhM2VmY2UKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjMyN2ExY2ZjODk4MzdjOTBmYjcxNDFhZDNhN2RmMjkz YWY1YzllMmZkNDgyZmI3N2Y2NzY5ZGI4ZTkxNDE3Mzc3ZmUwYTBhMzBjMDcyZjgyNzZlODI0OTc1 YWZkYzBmNzNlMWExY2JlZGE4NmQ1YzcwYzI3OTk5MTI2MDJlZTc4Ci0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDo0NjI4MmI4YTZkZWExNjU0ZGU4OTE5OTk3MmM0MTRlZTUxMmYz M2FiODMyZTcyODQ1NDdjZmMzNDVhZjZlZWE5ZmJhZmI3NWY0NjQ2Nzg5NzU1MDc4YTE3NGM5OGM1 YWExZDc0MGFmMWNmNDA4NDRhZTY4MGNkZDgwNDY2MDg2YgotK0N0cmwudHlwZSA9IHR5cGU6RAot K091dHB1dCA9IDc4NDk1NDM4YTUzMjZjY2E1MzUxYTIzOTU0NTk0MWMxCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAw M2JhNzE3NDZlNDYyMjkxMWRiY2Q3NjM1OWRiZDAxYTM5NTgxNzVjYWM1MDBmYWM4NzE0NmY0YTI2 MTY3ODJhYzAzMjhlYTMyMDQ2NzYyZjYyMDgwZGY4ZmU3NmZmMTEyYWNiZjRlNGM3YTM2ZmE2NDhl YzYwYzUwZDRhMGY3YjI3YjY3Y2RjZDcyNWVkMmQ1MWMzYjVjNDM4YzQ1YzhmNDZkOTUzODQ1YTg5 OWU4OTM3OGU5ODFhYTI3MGJkNmNjMTkwYTVhYjUzZTk1MTZmNWMxOTRmOWI2MWVmNzgyNTczYjQx NzcwMjMzN2IzMjc3Njc2NWU3NWQ2ZWZiMzcxYTNhZjk4YzFiMGVhYTkwZWU0M2E5OWU1OGQ4MDNi YzY0NWE2NTEwMDM3MWNkYTgzMTZkNTE2MThlNGFkYTRkOWE0NmNkMDQ5NjczY2JmY2Y2Y2UzZWM2 NmM5NjQ5MDJlYjliZDI4NTE0ZDFmY2UzMmViZjhlZTJhZTNjOGU0NmY0YmYxOGYxNTNhNmYxMDMx Y2VmYzdlNzM2ZDgyMTA1ZGJlYjYwZGI0MjJiNzlmNGM0ZjNmNDgzOGZlZTg5MTM0MWNjOTgyZTc5 OTE3YWVmYjgyNTI5ZDEzNDY0ODg0N2RlMTVjZjNiYTFkN2I1MDAwZTc0Yjc4MTk4ZDZhM2VmY2UK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjMyN2ExY2ZjODk4MzdjOTBmYjcxNDFhZDNh N2RmMjkzYWY1YzllMmZkNDgyZmI3N2Y2NzY5ZGI4ZTkxNDE3Mzc3ZmUwYTBhMzBjMDcyZjgyNzZl ODI0OTc1YWZkYzBmNzNlMWExY2JlZGE4NmQ1YzcwYzI3OTk5MTI2MDJlZTc4Ci0rQ3RybC5oZXhz ZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo0NjI4MmI4YTZkZWExNjU0ZGU4OTE5OTk3MmM0MTRl ZTUxMmYzM2FiODMyZTcyODQ1NDdjZmMzNDVhZjZlZWE5ZmJhZmI3NWY0NjQ2Nzg5NzU1MDc4YTE3 NGM5OGM1YWExZDc0MGFmMWNmNDA4NDRhZTY4MGNkZDgwNDY2MDg2YgotK0N0cmwudHlwZSA9IHR5 cGU6RQotK091dHB1dCA9IGRjZmM1ZDA5OWY1MDQwNTEzZjc2YjAxMmFiNjJlZTQ1ZDVkODI3MWFl YzljYmJkZDFlMWY3ZTA4MDZmMzYzZDIxYzJlY2E3MzBmOTQ4OWVlNzBmYmM3NDkwYTE5MDE1ODdi MWQ0MThjMGU0ZjQyOWM4MDk4Y2Q3OTNjNmQyODVjCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwM2JhNzE3NDZlNDYy MjkxMWRiY2Q3NjM1OWRiZDAxYTM5NTgxNzVjYWM1MDBmYWM4NzE0NmY0YTI2MTY3ODJhYzAzMjhl YTMyMDQ2NzYyZjYyMDgwZGY4ZmU3NmZmMTEyYWNiZjRlNGM3YTM2ZmE2NDhlYzYwYzUwZDRhMGY3 YjI3YjY3Y2RjZDcyNWVkMmQ1MWMzYjVjNDM4YzQ1YzhmNDZkOTUzODQ1YTg5OWU4OTM3OGU5ODFh YTI3MGJkNmNjMTkwYTVhYjUzZTk1MTZmNWMxOTRmOWI2MWVmNzgyNTczYjQxNzcwMjMzN2IzMjc3 Njc2NWU3NWQ2ZWZiMzcxYTNhZjk4YzFiMGVhYTkwZWU0M2E5OWU1OGQ4MDNiYzY0NWE2NTEwMDM3 MWNkYTgzMTZkNTE2MThlNGFkYTRkOWE0NmNkMDQ5NjczY2JmY2Y2Y2UzZWM2NmM5NjQ5MDJlYjli ZDI4NTE0ZDFmY2UzMmViZjhlZTJhZTNjOGU0NmY0YmYxOGYxNTNhNmYxMDMxY2VmYzdlNzM2ZDgy MTA1ZGJlYjYwZGI0MjJiNzlmNGM0ZjNmNDgzOGZlZTg5MTM0MWNjOTgyZTc5OTE3YWVmYjgyNTI5 ZDEzNDY0ODg0N2RlMTVjZjNiYTFkN2I1MDAwZTc0Yjc4MTk4ZDZhM2VmY2UKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjMyN2ExY2ZjODk4MzdjOTBmYjcxNDFhZDNhN2RmMjkzYWY1Yzll MmZkNDgyZmI3N2Y2NzY5ZGI4ZTkxNDE3Mzc3ZmUwYTBhMzBjMDcyZjgyNzZlODI0OTc1YWZkYzBm NzNlMWExY2JlZGE4NmQ1YzcwYzI3OTk5MTI2MDJlZTc4Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDo0NjI4MmI4YTZkZWExNjU0ZGU4OTE5OTk3MmM0MTRlZTUxMmYzM2FiODMy ZTcyODQ1NDdjZmMzNDVhZjZlZWE5ZmJhZmI3NWY0NjQ2Nzg5NzU1MDc4YTE3NGM5OGM1YWExZDc0 MGFmMWNmNDA4NDRhZTY4MGNkZDgwNDY2MDg2YgotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1 dCA9IGE3NTgxNzQ2NWM3MzUxN2JkNzg4NGRjZDIzMDQ2NDU4M2FlNDkxYWU1ZTM5MzMwODczY2Q3 YTk2NzE4ODAyMmNhZDYzZTcxMmM3ZWMyNjFhYmRiMzRjMDFiZGRkODk4OWRmY2U4ZjVkOGE4Y2Ri ZGNjMzA1NDI5YjNmZDkzYzc2Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUx MgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBmM2EyOGY5NTc0NjkxNzc3ZjJhOWUw NWE4ODIyOTVlNWFlMjcyYTZhZjQ4NmU1M2E4NTc0ZTBjZTc2MzNhNWM2ODcxYTM5ZTZiYTMxNzZh NDFjZTNmZTZjODBhYTg0NjlkZjcxNDAxNTgzOTg3ZTM0Mzc0NTg2ZWM1NjI2OGIzN2Q0MmJjMDQ3 Y2M4OTg3NTAzNzlhYTdkZGM1NTQ5Y2MwNjlmYTEwZDI5ZmNhMzAzZTYwNjNhMmNiODAwMzIyYTg0 YTYzNDgwZDkxNjA2ZGIwMjQ0ZDJkZDQ1NjAwNWJiNGE0YjMzZjkxZGRmMzMzMzVlYzRkNGQ1MTll NDMwNTQyZTA4N2Q1YjFlOTUyYjE4M2EzMmIzZjdiMTE4YzQxMGM0NmRjNDRiN2FkNjY5ZTdkOThi OTM0ZTQ4ODMwZTYxZGRkMmU2MDk0ZTBkMWZhMzliOTA0MWI5Y2E5ZGM3NjhhZjRkYTcwMmY5MTJi MmU4MjczOGNmNTA2NDc5YzY4ZmE5YTVmMmE5MTUzMTg5Y2Y4M2JkMTFhMDVhOTI0MjhkN2M3MTI0 MDk0ZjY4NGY3Yzg0ODExNGRjMjcyZDhhMzA4ZDdiNjVlNDdiMWQzYzJjNzBkNWE2M2VmYmMxOTFm ZjVmMDM1OTM1NmY3MDZhYzcwMzQ0NTc3OGIyYjQzYThkNgotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6NGYzYWFlYTlhZGUzNGEwN2Y0NmMxMWE0NDgwNDYxZTJjNTIzYTc0MDQ5MmIyM2Iw YmZhMmE5ZTJlMmMyY2U1NDJhMDk2NDQxNTRhNGIzYWIwZThiNzFlYTk1MDQ0NGE5OTU0YTE1NmMw NTMwYTE0MzZhYTk4OTUxYWY3ZTE5NzIKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9u X2lkOmM3NzhjZGMwM2VjYzk0MWZmN2QzN2M0MWZlNjdkYzg0ZGYzNzUxMTdhYmQ2MmQwOTkxMjlm MzhkMzczNzVmM2NkZTRlNzVhMDE2MGZiMDVlZGYzOTJkMWVhYzUwOWQ1YTY3OTZmNjM1NjIzNzk0 ZDgxZGY5YjRjZjgxMDIxNzM4Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gNGZhMWI4 YzUzZDI1ZjdjMWFkYjQ4MTBjNDZiNDhhZTcKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGYzYTI4Zjk1NzQ2OTE3 NzdmMmE5ZTA1YTg4MjI5NWU1YWUyNzJhNmFmNDg2ZTUzYTg1NzRlMGNlNzYzM2E1YzY4NzFhMzll NmJhMzE3NmE0MWNlM2ZlNmM4MGFhODQ2OWRmNzE0MDE1ODM5ODdlMzQzNzQ1ODZlYzU2MjY4YjM3 ZDQyYmMwNDdjYzg5ODc1MDM3OWFhN2RkYzU1NDljYzA2OWZhMTBkMjlmY2EzMDNlNjA2M2EyY2I4 MDAzMjJhODRhNjM0ODBkOTE2MDZkYjAyNDRkMmRkNDU2MDA1YmI0YTRiMzNmOTFkZGYzMzMzNWVj NGQ0ZDUxOWU0MzA1NDJlMDg3ZDViMWU5NTJiMTgzYTMyYjNmN2IxMThjNDEwYzQ2ZGM0NGI3YWQ2 NjllN2Q5OGI5MzRlNDg4MzBlNjFkZGQyZTYwOTRlMGQxZmEzOWI5MDQxYjljYTlkYzc2OGFmNGRh NzAyZjkxMmIyZTgyNzM4Y2Y1MDY0NzljNjhmYTlhNWYyYTkxNTMxODljZjgzYmQxMWEwNWE5MjQy OGQ3YzcxMjQwOTRmNjg0ZjdjODQ4MTE0ZGMyNzJkOGEzMDhkN2I2NWU0N2IxZDNjMmM3MGQ1YTYz ZWZiYzE5MWZmNWYwMzU5MzU2ZjcwNmFjNzAzNDQ1Nzc4YjJiNDNhOGQ2Ci0rQ3RybC5oZXh4Y2do YXNoID0gaGV4eGNnaGFzaDo0ZjNhYWVhOWFkZTM0YTA3ZjQ2YzExYTQ0ODA0NjFlMmM1MjNhNzQw NDkyYjIzYjBiZmEyYTllMmUyYzJjZTU0MmEwOTY0NDE1NGE0YjNhYjBlOGI3MWVhOTUwNDQ0YTk5 NTRhMTU2YzA1MzBhMTQzNmFhOTg5NTFhZjdlMTk3MgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhl eHNlc3Npb25faWQ6Yzc3OGNkYzAzZWNjOTQxZmY3ZDM3YzQxZmU2N2RjODRkZjM3NTExN2FiZDYy ZDA5OTEyOWYzOGQzNzM3NWYzY2RlNGU3NWEwMTYwZmIwNWVkZjM5MmQxZWFjNTA5ZDVhNjc5NmY2 MzU2MjM3OTRkODFkZjliNGNmODEwMjE3MzgKLStDdHJsLnR5cGUgPSB0eXBlOkIKLStPdXRwdXQg PSAzYzQ1M2QwZjUwYjdmNDE4MjZlNzRlNWNjZTViNTk5NgotKwotK0tERiA9IFNTSEtERgotK0N0 cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAwZjNhMjhm OTU3NDY5MTc3N2YyYTllMDVhODgyMjk1ZTVhZTI3MmE2YWY0ODZlNTNhODU3NGUwY2U3NjMzYTVj Njg3MWEzOWU2YmEzMTc2YTQxY2UzZmU2YzgwYWE4NDY5ZGY3MTQwMTU4Mzk4N2UzNDM3NDU4NmVj NTYyNjhiMzdkNDJiYzA0N2NjODk4NzUwMzc5YWE3ZGRjNTU0OWNjMDY5ZmExMGQyOWZjYTMwM2U2 MDYzYTJjYjgwMDMyMmE4NGE2MzQ4MGQ5MTYwNmRiMDI0NGQyZGQ0NTYwMDViYjRhNGIzM2Y5MWRk ZjMzMzM1ZWM0ZDRkNTE5ZTQzMDU0MmUwODdkNWIxZTk1MmIxODNhMzJiM2Y3YjExOGM0MTBjNDZk YzQ0YjdhZDY2OWU3ZDk4YjkzNGU0ODgzMGU2MWRkZDJlNjA5NGUwZDFmYTM5YjkwNDFiOWNhOWRj NzY4YWY0ZGE3MDJmOTEyYjJlODI3MzhjZjUwNjQ3OWM2OGZhOWE1ZjJhOTE1MzE4OWNmODNiZDEx YTA1YTkyNDI4ZDdjNzEyNDA5NGY2ODRmN2M4NDgxMTRkYzI3MmQ4YTMwOGQ3YjY1ZTQ3YjFkM2My YzcwZDVhNjNlZmJjMTkxZmY1ZjAzNTkzNTZmNzA2YWM3MDM0NDU3NzhiMmI0M2E4ZDYKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjRmM2FhZWE5YWRlMzRhMDdmNDZjMTFhNDQ4MDQ2MWUy YzUyM2E3NDA0OTJiMjNiMGJmYTJhOWUyZTJjMmNlNTQyYTA5NjQ0MTU0YTRiM2FiMGU4YjcxZWE5 NTA0NDRhOTk1NGExNTZjMDUzMGExNDM2YWE5ODk1MWFmN2UxOTcyCi0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDpjNzc4Y2RjMDNlY2M5NDFmZjdkMzdjNDFmZTY3ZGM4NGRmMzc1 MTE3YWJkNjJkMDk5MTI5ZjM4ZDM3Mzc1ZjNjZGU0ZTc1YTAxNjBmYjA1ZWRmMzkyZDFlYWM1MDlk NWE2Nzk2ZjYzNTYyMzc5NGQ4MWRmOWI0Y2Y4MTAyMTczOAotK0N0cmwudHlwZSA9IHR5cGU6Qwot K091dHB1dCA9IDIyZjQ3YTAwYTVkZTBmNTZiM2U1ODYzNTdlZWViZTU3Ci0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAx MDBmM2EyOGY5NTc0NjkxNzc3ZjJhOWUwNWE4ODIyOTVlNWFlMjcyYTZhZjQ4NmU1M2E4NTc0ZTBj ZTc2MzNhNWM2ODcxYTM5ZTZiYTMxNzZhNDFjZTNmZTZjODBhYTg0NjlkZjcxNDAxNTgzOTg3ZTM0 Mzc0NTg2ZWM1NjI2OGIzN2Q0MmJjMDQ3Y2M4OTg3NTAzNzlhYTdkZGM1NTQ5Y2MwNjlmYTEwZDI5 ZmNhMzAzZTYwNjNhMmNiODAwMzIyYTg0YTYzNDgwZDkxNjA2ZGIwMjQ0ZDJkZDQ1NjAwNWJiNGE0 YjMzZjkxZGRmMzMzMzVlYzRkNGQ1MTllNDMwNTQyZTA4N2Q1YjFlOTUyYjE4M2EzMmIzZjdiMTE4 YzQxMGM0NmRjNDRiN2FkNjY5ZTdkOThiOTM0ZTQ4ODMwZTYxZGRkMmU2MDk0ZTBkMWZhMzliOTA0 MWI5Y2E5ZGM3NjhhZjRkYTcwMmY5MTJiMmU4MjczOGNmNTA2NDc5YzY4ZmE5YTVmMmE5MTUzMTg5 Y2Y4M2JkMTFhMDVhOTI0MjhkN2M3MTI0MDk0ZjY4NGY3Yzg0ODExNGRjMjcyZDhhMzA4ZDdiNjVl NDdiMWQzYzJjNzBkNWE2M2VmYmMxOTFmZjVmMDM1OTM1NmY3MDZhYzcwMzQ0NTc3OGIyYjQzYThk NgotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6NGYzYWFlYTlhZGUzNGEwN2Y0NmMxMWE0 NDgwNDYxZTJjNTIzYTc0MDQ5MmIyM2IwYmZhMmE5ZTJlMmMyY2U1NDJhMDk2NDQxNTRhNGIzYWIw ZThiNzFlYTk1MDQ0NGE5OTU0YTE1NmMwNTMwYTE0MzZhYTk4OTUxYWY3ZTE5NzIKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmM3NzhjZGMwM2VjYzk0MWZmN2QzN2M0MWZlNjdk Yzg0ZGYzNzUxMTdhYmQ2MmQwOTkxMjlmMzhkMzczNzVmM2NkZTRlNzVhMDE2MGZiMDVlZGYzOTJk MWVhYzUwOWQ1YTY3OTZmNjM1NjIzNzk0ZDgxZGY5YjRjZjgxMDIxNzM4Ci0rQ3RybC50eXBlID0g dHlwZTpECi0rT3V0cHV0ID0gOGQzMmQxOTQ1ZTkzYzQ5ODJiZDEwNjU2N2Y4ZTQ4MWYKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6 MDAwMDAxMDEwMGYzYTI4Zjk1NzQ2OTE3NzdmMmE5ZTA1YTg4MjI5NWU1YWUyNzJhNmFmNDg2ZTUz YTg1NzRlMGNlNzYzM2E1YzY4NzFhMzllNmJhMzE3NmE0MWNlM2ZlNmM4MGFhODQ2OWRmNzE0MDE1 ODM5ODdlMzQzNzQ1ODZlYzU2MjY4YjM3ZDQyYmMwNDdjYzg5ODc1MDM3OWFhN2RkYzU1NDljYzA2 OWZhMTBkMjlmY2EzMDNlNjA2M2EyY2I4MDAzMjJhODRhNjM0ODBkOTE2MDZkYjAyNDRkMmRkNDU2 MDA1YmI0YTRiMzNmOTFkZGYzMzMzNWVjNGQ0ZDUxOWU0MzA1NDJlMDg3ZDViMWU5NTJiMTgzYTMy YjNmN2IxMThjNDEwYzQ2ZGM0NGI3YWQ2NjllN2Q5OGI5MzRlNDg4MzBlNjFkZGQyZTYwOTRlMGQx ZmEzOWI5MDQxYjljYTlkYzc2OGFmNGRhNzAyZjkxMmIyZTgyNzM4Y2Y1MDY0NzljNjhmYTlhNWYy YTkxNTMxODljZjgzYmQxMWEwNWE5MjQyOGQ3YzcxMjQwOTRmNjg0ZjdjODQ4MTE0ZGMyNzJkOGEz MDhkN2I2NWU0N2IxZDNjMmM3MGQ1YTYzZWZiYzE5MWZmNWYwMzU5MzU2ZjcwNmFjNzAzNDQ1Nzc4 YjJiNDNhOGQ2Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDo0ZjNhYWVhOWFkZTM0YTA3 ZjQ2YzExYTQ0ODA0NjFlMmM1MjNhNzQwNDkyYjIzYjBiZmEyYTllMmUyYzJjZTU0MmEwOTY0NDE1 NGE0YjNhYjBlOGI3MWVhOTUwNDQ0YTk5NTRhMTU2YzA1MzBhMTQzNmFhOTg5NTFhZjdlMTk3Mgot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6Yzc3OGNkYzAzZWNjOTQxZmY3ZDM3 YzQxZmU2N2RjODRkZjM3NTExN2FiZDYyZDA5OTEyOWYzOGQzNzM3NWYzY2RlNGU3NWEwMTYwZmIw NWVkZjM5MmQxZWFjNTA5ZDVhNjc5NmY2MzU2MjM3OTRkODFkZjliNGNmODEwMjE3MzgKLStDdHJs LnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA5ZWVmZTU4MWIxNTE0MTYwZjgxYzk0MTkzZDM3NGQ4 Zjg1ODc5MTM2ZTlhZTQ5NGM0ODcxMTliMTk3NGFhYzNlMTQzOTQ4ZjY1NmMxYzFlODM3ZmYxMzY4 ZWYwZDk5N2NkM2NhOWY0NmM3MTA1NjI2OWViOGExZGE4ZGFmNTY3OAotKwotK0tERiA9IFNTSEtE RgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDEwMTAw ZjNhMjhmOTU3NDY5MTc3N2YyYTllMDVhODgyMjk1ZTVhZTI3MmE2YWY0ODZlNTNhODU3NGUwY2U3 NjMzYTVjNjg3MWEzOWU2YmEzMTc2YTQxY2UzZmU2YzgwYWE4NDY5ZGY3MTQwMTU4Mzk4N2UzNDM3 NDU4NmVjNTYyNjhiMzdkNDJiYzA0N2NjODk4NzUwMzc5YWE3ZGRjNTU0OWNjMDY5ZmExMGQyOWZj YTMwM2U2MDYzYTJjYjgwMDMyMmE4NGE2MzQ4MGQ5MTYwNmRiMDI0NGQyZGQ0NTYwMDViYjRhNGIz M2Y5MWRkZjMzMzM1ZWM0ZDRkNTE5ZTQzMDU0MmUwODdkNWIxZTk1MmIxODNhMzJiM2Y3YjExOGM0 MTBjNDZkYzQ0YjdhZDY2OWU3ZDk4YjkzNGU0ODgzMGU2MWRkZDJlNjA5NGUwZDFmYTM5YjkwNDFi OWNhOWRjNzY4YWY0ZGE3MDJmOTEyYjJlODI3MzhjZjUwNjQ3OWM2OGZhOWE1ZjJhOTE1MzE4OWNm ODNiZDExYTA1YTkyNDI4ZDdjNzEyNDA5NGY2ODRmN2M4NDgxMTRkYzI3MmQ4YTMwOGQ3YjY1ZTQ3 YjFkM2MyYzcwZDVhNjNlZmJjMTkxZmY1ZjAzNTkzNTZmNzA2YWM3MDM0NDU3NzhiMmI0M2E4ZDYK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjRmM2FhZWE5YWRlMzRhMDdmNDZjMTFhNDQ4 MDQ2MWUyYzUyM2E3NDA0OTJiMjNiMGJmYTJhOWUyZTJjMmNlNTQyYTA5NjQ0MTU0YTRiM2FiMGU4 YjcxZWE5NTA0NDRhOTk1NGExNTZjMDUzMGExNDM2YWE5ODk1MWFmN2UxOTcyCi0rQ3RybC5oZXhz ZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpjNzc4Y2RjMDNlY2M5NDFmZjdkMzdjNDFmZTY3ZGM4 NGRmMzc1MTE3YWJkNjJkMDk5MTI5ZjM4ZDM3Mzc1ZjNjZGU0ZTc1YTAxNjBmYjA1ZWRmMzkyZDFl YWM1MDlkNWE2Nzk2ZjYzNTYyMzc5NGQ4MWRmOWI0Y2Y4MTAyMTczOAotK0N0cmwudHlwZSA9IHR5 cGU6RgotK091dHB1dCA9IDhkZDc2ZjU5ZTY2OTJmZjY0Mjg5NGVlMWJiMTQ3ZjNlMTQ5MGNhYzk0 NGFmMjlkZTZiMmI1YWJjYzRhYjllYjQxZDIzNmU5Y2QyZjQwY2Y4MzkzNTA5N2YzMDdhMjQ2ZDdi MzUwMDVkZDMwMmJhY2ZlN2U0ZmVkMzdkMmY0NmU5Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTJjOTlkMWUwNTQy YjNiNzFlMjg3YjFlYTE1ZTU0YTMxOTdmOTVjZmJmN2Y2YTIwOWFkYTQxZmNlM2E2ZmFhZDliYzRk NTY5YjY5MDIyM2U1ZDY2ODAxOWMxMTIwNDcxNmJiOTZhODU4YzM2Yzg1M2JkNDFiMjhjMTUwNWRk Y2U5ZGYyMmIzMWRiZGFhMDE0YjA3ZWM1M2E3OWNmZWI1YjU0MDkwMjY2OWM3YTI4M2YzNjQ3YzFh OWY2ODViNTAyN2JmYjE4ZTgyNzgxOGE3NmMyM2ZhNmFkMjA3NjBmMjI4YTQyMzlhNGQ1NTgyNDAx MzBiNWNjMzg5ZDJiZTQxYjgwNmNhZmQyNGQxZDQyNWMyNmE2MTUwOGM5NzRkNjJhYWU2ZjY4MzA0 NTljNzllN2E5ZmY1NjEwMjkxNjYxYmYwMzUyOGZiYWZlNDdjZjRjMmU1MWY0ODU2NzQ5ZWY1NDNl YjdjZDhmNzJlODRhNDA3NWZhN2RmOWFkMTI1NjVlNWIzODEwYzZkNjI5MmZmODc4ZWU4NDk5NjEx Njg4OTg5ZjBhMDRmNGRjNzI3NWUwMWMwNDQ0YTAzMjFmMGEwMzI3ZmJlOGE1NTY4OTMwN2IxYmZk NjZkNWQyN2FkZTc4ZGY1YzFkZmNlZjg4NjhlYmJlMzM5ZDdlZmRhZTE5NzMKLStDdHJsLmhleHhj Z2hhc2ggPSBoZXh4Y2doYXNoOjczMTdmNTc2Y2U5NWQ1YmVkOTNkMDhjNjVlYjgxNGQwMzdlY2Q0 MmYwOWIyZDUxNGZhZDU4MzM1ZThlOGJlYzgwN2I5Y2Y3NGI5MDQ0ZjQ0OTU4MWM3OTJlYmIwODg0 M2YyYjgwZGE4N2Q5MTYyNWUyMGYyNWRlOTFiNGQ1ZDIzCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0g aGV4c2Vzc2lvbl9pZDo3ZDE1M2ZkYTg1YmQzNDg4OTYyYmRmMDNiOGQwZjI2Y2Y2MWY3MzcxNzM1 ODdhYzZlZTNkNmY2MDFhMDBmNjQ3NGY1NDAxMzcwZWYwNDcyMGM2MjBlYTJiOTY2OGFiNzJjYjZj NDBkYzk2MDU3ZmM0NTM3ZTdhNmIwZTc5ZTljNQotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1 dCA9IGYzMzViM2FiMjcwZDdlNjg2YzVlMDIzYjNhMmRhNzViCi0rCi0rS0RGID0gU1NIS0RGCi0r Q3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAwMTJjOTlk MWUwNTQyYjNiNzFlMjg3YjFlYTE1ZTU0YTMxOTdmOTVjZmJmN2Y2YTIwOWFkYTQxZmNlM2E2ZmFh ZDliYzRkNTY5YjY5MDIyM2U1ZDY2ODAxOWMxMTIwNDcxNmJiOTZhODU4YzM2Yzg1M2JkNDFiMjhj MTUwNWRkY2U5ZGYyMmIzMWRiZGFhMDE0YjA3ZWM1M2E3OWNmZWI1YjU0MDkwMjY2OWM3YTI4M2Yz NjQ3YzFhOWY2ODViNTAyN2JmYjE4ZTgyNzgxOGE3NmMyM2ZhNmFkMjA3NjBmMjI4YTQyMzlhNGQ1 NTgyNDAxMzBiNWNjMzg5ZDJiZTQxYjgwNmNhZmQyNGQxZDQyNWMyNmE2MTUwOGM5NzRkNjJhYWU2 ZjY4MzA0NTljNzllN2E5ZmY1NjEwMjkxNjYxYmYwMzUyOGZiYWZlNDdjZjRjMmU1MWY0ODU2NzQ5 ZWY1NDNlYjdjZDhmNzJlODRhNDA3NWZhN2RmOWFkMTI1NjVlNWIzODEwYzZkNjI5MmZmODc4ZWU4 NDk5NjExNjg4OTg5ZjBhMDRmNGRjNzI3NWUwMWMwNDQ0YTAzMjFmMGEwMzI3ZmJlOGE1NTY4OTMw N2IxYmZkNjZkNWQyN2FkZTc4ZGY1YzFkZmNlZjg4NjhlYmJlMzM5ZDdlZmRhZTE5NzMKLStDdHJs LmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjczMTdmNTc2Y2U5NWQ1YmVkOTNkMDhjNjVlYjgxNGQw MzdlY2Q0MmYwOWIyZDUxNGZhZDU4MzM1ZThlOGJlYzgwN2I5Y2Y3NGI5MDQ0ZjQ0OTU4MWM3OTJl YmIwODg0M2YyYjgwZGE4N2Q5MTYyNWUyMGYyNWRlOTFiNGQ1ZDIzCi0rQ3RybC5oZXhzZXNzaW9u X2lkID0gaGV4c2Vzc2lvbl9pZDo3ZDE1M2ZkYTg1YmQzNDg4OTYyYmRmMDNiOGQwZjI2Y2Y2MWY3 MzcxNzM1ODdhYzZlZTNkNmY2MDFhMDBmNjQ3NGY1NDAxMzcwZWYwNDcyMGM2MjBlYTJiOTY2OGFi NzJjYjZjNDBkYzk2MDU3ZmM0NTM3ZTdhNmIwZTc5ZTljNQotK0N0cmwudHlwZSA9IHR5cGU6Qgot K091dHB1dCA9IDg1N2M5MjQ1YzY3YmFkODRiNzM3N2M0MjRjNWU3ZTdhCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAw MTJjOTlkMWUwNTQyYjNiNzFlMjg3YjFlYTE1ZTU0YTMxOTdmOTVjZmJmN2Y2YTIwOWFkYTQxZmNl M2E2ZmFhZDliYzRkNTY5YjY5MDIyM2U1ZDY2ODAxOWMxMTIwNDcxNmJiOTZhODU4YzM2Yzg1M2Jk NDFiMjhjMTUwNWRkY2U5ZGYyMmIzMWRiZGFhMDE0YjA3ZWM1M2E3OWNmZWI1YjU0MDkwMjY2OWM3 YTI4M2YzNjQ3YzFhOWY2ODViNTAyN2JmYjE4ZTgyNzgxOGE3NmMyM2ZhNmFkMjA3NjBmMjI4YTQy MzlhNGQ1NTgyNDAxMzBiNWNjMzg5ZDJiZTQxYjgwNmNhZmQyNGQxZDQyNWMyNmE2MTUwOGM5NzRk NjJhYWU2ZjY4MzA0NTljNzllN2E5ZmY1NjEwMjkxNjYxYmYwMzUyOGZiYWZlNDdjZjRjMmU1MWY0 ODU2NzQ5ZWY1NDNlYjdjZDhmNzJlODRhNDA3NWZhN2RmOWFkMTI1NjVlNWIzODEwYzZkNjI5MmZm ODc4ZWU4NDk5NjExNjg4OTg5ZjBhMDRmNGRjNzI3NWUwMWMwNDQ0YTAzMjFmMGEwMzI3ZmJlOGE1 NTY4OTMwN2IxYmZkNjZkNWQyN2FkZTc4ZGY1YzFkZmNlZjg4NjhlYmJlMzM5ZDdlZmRhZTE5NzMK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjczMTdmNTc2Y2U5NWQ1YmVkOTNkMDhjNjVl YjgxNGQwMzdlY2Q0MmYwOWIyZDUxNGZhZDU4MzM1ZThlOGJlYzgwN2I5Y2Y3NGI5MDQ0ZjQ0OTU4 MWM3OTJlYmIwODg0M2YyYjgwZGE4N2Q5MTYyNWUyMGYyNWRlOTFiNGQ1ZDIzCi0rQ3RybC5oZXhz ZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo3ZDE1M2ZkYTg1YmQzNDg4OTYyYmRmMDNiOGQwZjI2 Y2Y2MWY3MzcxNzM1ODdhYzZlZTNkNmY2MDFhMDBmNjQ3NGY1NDAxMzcwZWYwNDcyMGM2MjBlYTJi OTY2OGFiNzJjYjZjNDBkYzk2MDU3ZmM0NTM3ZTdhNmIwZTc5ZTljNQotK0N0cmwudHlwZSA9IHR5 cGU6QwotK091dHB1dCA9IDFjNDRlZjU2NDQwZjU4NTZiZGZkOTUxMzA1ZmQ4MWU0Ci0rCi0rS0RG ID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMTAwMTJjOTlkMWUwNTQyYjNiNzFlMjg3YjFlYTE1ZTU0YTMxOTdmOTVjZmJmN2Y2YTIwOWFk YTQxZmNlM2E2ZmFhZDliYzRkNTY5YjY5MDIyM2U1ZDY2ODAxOWMxMTIwNDcxNmJiOTZhODU4YzM2 Yzg1M2JkNDFiMjhjMTUwNWRkY2U5ZGYyMmIzMWRiZGFhMDE0YjA3ZWM1M2E3OWNmZWI1YjU0MDkw MjY2OWM3YTI4M2YzNjQ3YzFhOWY2ODViNTAyN2JmYjE4ZTgyNzgxOGE3NmMyM2ZhNmFkMjA3NjBm MjI4YTQyMzlhNGQ1NTgyNDAxMzBiNWNjMzg5ZDJiZTQxYjgwNmNhZmQyNGQxZDQyNWMyNmE2MTUw OGM5NzRkNjJhYWU2ZjY4MzA0NTljNzllN2E5ZmY1NjEwMjkxNjYxYmYwMzUyOGZiYWZlNDdjZjRj MmU1MWY0ODU2NzQ5ZWY1NDNlYjdjZDhmNzJlODRhNDA3NWZhN2RmOWFkMTI1NjVlNWIzODEwYzZk NjI5MmZmODc4ZWU4NDk5NjExNjg4OTg5ZjBhMDRmNGRjNzI3NWUwMWMwNDQ0YTAzMjFmMGEwMzI3 ZmJlOGE1NTY4OTMwN2IxYmZkNjZkNWQyN2FkZTc4ZGY1YzFkZmNlZjg4NjhlYmJlMzM5ZDdlZmRh ZTE5NzMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjczMTdmNTc2Y2U5NWQ1YmVkOTNk MDhjNjVlYjgxNGQwMzdlY2Q0MmYwOWIyZDUxNGZhZDU4MzM1ZThlOGJlYzgwN2I5Y2Y3NGI5MDQ0 ZjQ0OTU4MWM3OTJlYmIwODg0M2YyYjgwZGE4N2Q5MTYyNWUyMGYyNWRlOTFiNGQ1ZDIzCi0rQ3Ry bC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo3ZDE1M2ZkYTg1YmQzNDg4OTYyYmRmMDNi OGQwZjI2Y2Y2MWY3MzcxNzM1ODdhYzZlZTNkNmY2MDFhMDBmNjQ3NGY1NDAxMzcwZWYwNDcyMGM2 MjBlYTJiOTY2OGFiNzJjYjZjNDBkYzk2MDU3ZmM0NTM3ZTdhNmIwZTc5ZTljNQotK0N0cmwudHlw ZSA9IHR5cGU6RAotK091dHB1dCA9IDhkMzQ5NmFjNjMxYmIzNTg4YWJiYjEzZDRhZTJkYzJkCi0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMTAwMTJjOTlkMWUwNTQyYjNiNzFlMjg3YjFlYTE1ZTU0YTMxOTdmOTVjZmJmN2Y2 YTIwOWFkYTQxZmNlM2E2ZmFhZDliYzRkNTY5YjY5MDIyM2U1ZDY2ODAxOWMxMTIwNDcxNmJiOTZh ODU4YzM2Yzg1M2JkNDFiMjhjMTUwNWRkY2U5ZGYyMmIzMWRiZGFhMDE0YjA3ZWM1M2E3OWNmZWI1 YjU0MDkwMjY2OWM3YTI4M2YzNjQ3YzFhOWY2ODViNTAyN2JmYjE4ZTgyNzgxOGE3NmMyM2ZhNmFk MjA3NjBmMjI4YTQyMzlhNGQ1NTgyNDAxMzBiNWNjMzg5ZDJiZTQxYjgwNmNhZmQyNGQxZDQyNWMy NmE2MTUwOGM5NzRkNjJhYWU2ZjY4MzA0NTljNzllN2E5ZmY1NjEwMjkxNjYxYmYwMzUyOGZiYWZl NDdjZjRjMmU1MWY0ODU2NzQ5ZWY1NDNlYjdjZDhmNzJlODRhNDA3NWZhN2RmOWFkMTI1NjVlNWIz ODEwYzZkNjI5MmZmODc4ZWU4NDk5NjExNjg4OTg5ZjBhMDRmNGRjNzI3NWUwMWMwNDQ0YTAzMjFm MGEwMzI3ZmJlOGE1NTY4OTMwN2IxYmZkNjZkNWQyN2FkZTc4ZGY1YzFkZmNlZjg4NjhlYmJlMzM5 ZDdlZmRhZTE5NzMKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjczMTdmNTc2Y2U5NWQ1 YmVkOTNkMDhjNjVlYjgxNGQwMzdlY2Q0MmYwOWIyZDUxNGZhZDU4MzM1ZThlOGJlYzgwN2I5Y2Y3 NGI5MDQ0ZjQ0OTU4MWM3OTJlYmIwODg0M2YyYjgwZGE4N2Q5MTYyNWUyMGYyNWRlOTFiNGQ1ZDIz Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo3ZDE1M2ZkYTg1YmQzNDg4OTYy YmRmMDNiOGQwZjI2Y2Y2MWY3MzcxNzM1ODdhYzZlZTNkNmY2MDFhMDBmNjQ3NGY1NDAxMzcwZWYw NDcyMGM2MjBlYTJiOTY2OGFiNzJjYjZjNDBkYzk2MDU3ZmM0NTM3ZTdhNmIwZTc5ZTljNQotK0N0 cmwudHlwZSA9IHR5cGU6RQotK091dHB1dCA9IGFjNzg5OTQ5NGNmY2ViYmRhYThlZTdjMzQzYTBh NDU4MjI4YTBhNWU1OTczMGM5MjhlOWM4Nzc1NDg3ZTU3YzNhNWYzNGZkYjcyYzFiM2I1N2NjMzVl MDM1NmU0YjdjNmE1NjM2OGU3NGM2OGEwMTc1MzhhNWI0ODQ4ODZlYzgxCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAw MTJjOTlkMWUwNTQyYjNiNzFlMjg3YjFlYTE1ZTU0YTMxOTdmOTVjZmJmN2Y2YTIwOWFkYTQxZmNl M2E2ZmFhZDliYzRkNTY5YjY5MDIyM2U1ZDY2ODAxOWMxMTIwNDcxNmJiOTZhODU4YzM2Yzg1M2Jk NDFiMjhjMTUwNWRkY2U5ZGYyMmIzMWRiZGFhMDE0YjA3ZWM1M2E3OWNmZWI1YjU0MDkwMjY2OWM3 YTI4M2YzNjQ3YzFhOWY2ODViNTAyN2JmYjE4ZTgyNzgxOGE3NmMyM2ZhNmFkMjA3NjBmMjI4YTQy MzlhNGQ1NTgyNDAxMzBiNWNjMzg5ZDJiZTQxYjgwNmNhZmQyNGQxZDQyNWMyNmE2MTUwOGM5NzRk NjJhYWU2ZjY4MzA0NTljNzllN2E5ZmY1NjEwMjkxNjYxYmYwMzUyOGZiYWZlNDdjZjRjMmU1MWY0 ODU2NzQ5ZWY1NDNlYjdjZDhmNzJlODRhNDA3NWZhN2RmOWFkMTI1NjVlNWIzODEwYzZkNjI5MmZm ODc4ZWU4NDk5NjExNjg4OTg5ZjBhMDRmNGRjNzI3NWUwMWMwNDQ0YTAzMjFmMGEwMzI3ZmJlOGE1 NTY4OTMwN2IxYmZkNjZkNWQyN2FkZTc4ZGY1YzFkZmNlZjg4NjhlYmJlMzM5ZDdlZmRhZTE5NzMK LStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOjczMTdmNTc2Y2U5NWQ1YmVkOTNkMDhjNjVl YjgxNGQwMzdlY2Q0MmYwOWIyZDUxNGZhZDU4MzM1ZThlOGJlYzgwN2I5Y2Y3NGI5MDQ0ZjQ0OTU4 MWM3OTJlYmIwODg0M2YyYjgwZGE4N2Q5MTYyNWUyMGYyNWRlOTFiNGQ1ZDIzCi0rQ3RybC5oZXhz ZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo3ZDE1M2ZkYTg1YmQzNDg4OTYyYmRmMDNiOGQwZjI2 Y2Y2MWY3MzcxNzM1ODdhYzZlZTNkNmY2MDFhMDBmNjQ3NGY1NDAxMzcwZWYwNDcyMGM2MjBlYTJi OTY2OGFiNzJjYjZjNDBkYzk2MDU3ZmM0NTM3ZTdhNmIwZTc5ZTljNQotK0N0cmwudHlwZSA9IHR5 cGU6RgotK091dHB1dCA9IGQzMmQ4NDliNDg4NTk0ZDBiOGVmY2U5MTYwNDI5NjM5M2IyMjQwMTIx ZjJlZDUxZmI3YzBiYjViMzcxYzMzNzc1ZDE4NGZmYWYzMDI4MzA2YmM4MDQwYjIxODg3ZjY4ODVl NTkxNmFlMTU4ZWY3NGEzYmEwOWExZjMwNjU0ZjFhCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5t ZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBjNmM0MDFlN2E0 MTcwMjVmY2U4Y2E1ZDVlNjU0ZGU2Y2FjOGViMWJmMjRmZmZhMWVlZmFiYTgyOGY0MjViNWRmOTMz MjNhZDYyNTY1ZDllNzRjMGI0NTYxOWMzZTk3YThlMDA2YTliMjhhNDJlOTZlMTNlYTJmMzgwNzMx OWFjNTg3ODUwNzMxZjY0Yzg2YTNhOWFjZDRhYWEwNGU4YTU4NjgzM2ZhZWI5MDJmOTUxNzdkMjdl ODljZTI1MzA3MzY1YjIyYjdiZjQ0NGM4ZTcyZWYyYmIwZmNlODZmZTMyNmE5MGI3ODc5NDgwODVm ZDEwMWYwNGE3MzExZWQ2Y2Y2NWQ1MDczYTZhMjljN2Q5OWZlOWZhMGI5MTVmYWMxZDliYjZiOTUx NDNjYTg5MzZlMTBlNmUzMTkyMDExMTJiYTUyODIzZGJhYWQ5MzU5NzI4NDIzNjEzOTQ5OTllNWE2 NzM1NjA3NmU5ZjBiNTI4ZDYyMzI1MTgxZjgwZDY2ZTliMzI4OGJhNzQ4MjQ1OGM3Mzc4MDZmNDc0 ODY3MDM2YTIzNDIwMTI1M2E5MWE2MjQ2YzhjMjg3NmQyMTBkMjU3OTk1MWRkMTJjYmMxNTNkY2Vj NDAzMTU2NzM5YmU5YzdkMjkxZTQ5MDRmMDc5YTVhNzFjMDFiOWE4NDQ4MTgwMAotK0N0cmwuaGV4 eGNnaGFzaCA9IGhleHhjZ2hhc2g6YjA2MDE5NTA5NTY5MjM1MmJkZTgxZTkwYzFiNjQ4ZWM0NmQ1 NzQ3Njg5MmU3OTQ4OWQ0MmNiOGUwZGEyMDI3ZWM0MWZkMmU2MmRhOGU4ZTJhOWUxZWJjYjhlZWNm YWFkZWY3NWU2NzE0MDA4ZWQ2YTJjYmRlZjZjMzIxYmJhYWEKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOjVjOTEwYTUzY2FmY2E2ZjhjMGQ5N2M0NzQ4ZjY3YWVjZDlhNTRjOGJh OTZiZjMzMzI3NTY1ZjZmNjhhZTBhMmU3YTYyNzMzYTkwNTEzNjRmZjlmNjhiZGI0MTYxNzY1MjJh MGU1YTJmMjhmZTI3YTNmNWVjNDAyYjNkOTlkYTEzCi0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0 cHV0ID0gNWFhOGVkNTMxNTU3YTFkYzkzNGVkNjY3MDI5ZTA2MmYKLSsKLStLREYgPSBTU0hLREYK LStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGM2 YzQwMWU3YTQxNzAyNWZjZThjYTVkNWU2NTRkZTZjYWM4ZWIxYmYyNGZmZmExZWVmYWJhODI4ZjQy NWI1ZGY5MzMyM2FkNjI1NjVkOWU3NGMwYjQ1NjE5YzNlOTdhOGUwMDZhOWIyOGE0MmU5NmUxM2Vh MmYzODA3MzE5YWM1ODc4NTA3MzFmNjRjODZhM2E5YWNkNGFhYTA0ZThhNTg2ODMzZmFlYjkwMmY5 NTE3N2QyN2U4OWNlMjUzMDczNjViMjJiN2JmNDQ0YzhlNzJlZjJiYjBmY2U4NmZlMzI2YTkwYjc4 Nzk0ODA4NWZkMTAxZjA0YTczMTFlZDZjZjY1ZDUwNzNhNmEyOWM3ZDk5ZmU5ZmEwYjkxNWZhYzFk OWJiNmI5NTE0M2NhODkzNmUxMGU2ZTMxOTIwMTExMmJhNTI4MjNkYmFhZDkzNTk3Mjg0MjM2MTM5 NDk5OWU1YTY3MzU2MDc2ZTlmMGI1MjhkNjIzMjUxODFmODBkNjZlOWIzMjg4YmE3NDgyNDU4Yzcz NzgwNmY0NzQ4NjcwMzZhMjM0MjAxMjUzYTkxYTYyNDZjOGMyODc2ZDIxMGQyNTc5OTUxZGQxMmNi YzE1M2RjZWM0MDMxNTY3MzliZTljN2QyOTFlNDkwNGYwNzlhNWE3MWMwMWI5YTg0NDgxODAwCi0r Q3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpiMDYwMTk1MDk1NjkyMzUyYmRlODFlOTBjMWI2 NDhlYzQ2ZDU3NDc2ODkyZTc5NDg5ZDQyY2I4ZTBkYTIwMjdlYzQxZmQyZTYyZGE4ZThlMmE5ZTFl YmNiOGVlY2ZhYWRlZjc1ZTY3MTQwMDhlZDZhMmNiZGVmNmMzMjFiYmFhYQotK0N0cmwuaGV4c2Vz c2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NWM5MTBhNTNjYWZjYTZmOGMwZDk3YzQ3NDhmNjdhZWNk OWE1NGM4YmE5NmJmMzMzMjc1NjVmNmY2OGFlMGEyZTdhNjI3MzNhOTA1MTM2NGZmOWY2OGJkYjQx NjE3NjUyMmEwZTVhMmYyOGZlMjdhM2Y1ZWM0MDJiM2Q5OWRhMTMKLStDdHJsLnR5cGUgPSB0eXBl OkIKLStPdXRwdXQgPSAxMWE4MTBjNjk3ODU5NDlkNWEwZWY2ZWVmZjk2MGZiNAotKwotK0tERiA9 IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAw MDEwMTAwYzZjNDAxZTdhNDE3MDI1ZmNlOGNhNWQ1ZTY1NGRlNmNhYzhlYjFiZjI0ZmZmYTFlZWZh YmE4MjhmNDI1YjVkZjkzMzIzYWQ2MjU2NWQ5ZTc0YzBiNDU2MTljM2U5N2E4ZTAwNmE5YjI4YTQy ZTk2ZTEzZWEyZjM4MDczMTlhYzU4Nzg1MDczMWY2NGM4NmEzYTlhY2Q0YWFhMDRlOGE1ODY4MzNm YWViOTAyZjk1MTc3ZDI3ZTg5Y2UyNTMwNzM2NWIyMmI3YmY0NDRjOGU3MmVmMmJiMGZjZTg2ZmUz MjZhOTBiNzg3OTQ4MDg1ZmQxMDFmMDRhNzMxMWVkNmNmNjVkNTA3M2E2YTI5YzdkOTlmZTlmYTBi OTE1ZmFjMWQ5YmI2Yjk1MTQzY2E4OTM2ZTEwZTZlMzE5MjAxMTEyYmE1MjgyM2RiYWFkOTM1OTcy ODQyMzYxMzk0OTk5ZTVhNjczNTYwNzZlOWYwYjUyOGQ2MjMyNTE4MWY4MGQ2NmU5YjMyODhiYTc0 ODI0NThjNzM3ODA2ZjQ3NDg2NzAzNmEyMzQyMDEyNTNhOTFhNjI0NmM4YzI4NzZkMjEwZDI1Nzk5 NTFkZDEyY2JjMTUzZGNlYzQwMzE1NjczOWJlOWM3ZDI5MWU0OTA0ZjA3OWE1YTcxYzAxYjlhODQ0 ODE4MDAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmIwNjAxOTUwOTU2OTIzNTJiZGU4 MWU5MGMxYjY0OGVjNDZkNTc0NzY4OTJlNzk0ODlkNDJjYjhlMGRhMjAyN2VjNDFmZDJlNjJkYThl OGUyYTllMWViY2I4ZWVjZmFhZGVmNzVlNjcxNDAwOGVkNmEyY2JkZWY2YzMyMWJiYWFhCi0rQ3Ry bC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo1YzkxMGE1M2NhZmNhNmY4YzBkOTdjNDc0 OGY2N2FlY2Q5YTU0YzhiYTk2YmYzMzMyNzU2NWY2ZjY4YWUwYTJlN2E2MjczM2E5MDUxMzY0ZmY5 ZjY4YmRiNDE2MTc2NTIyYTBlNWEyZjI4ZmUyN2EzZjVlYzQwMmIzZDk5ZGExMwotK0N0cmwudHlw ZSA9IHR5cGU6QwotK091dHB1dCA9IDU0ZTk0MDJlNGY4NWIwOGMyNzFiMmE5ZjE1ZDU2Yzc1Ci0r Ci0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4 a2V5OjAwMDAwMTAxMDBjNmM0MDFlN2E0MTcwMjVmY2U4Y2E1ZDVlNjU0ZGU2Y2FjOGViMWJmMjRm ZmZhMWVlZmFiYTgyOGY0MjViNWRmOTMzMjNhZDYyNTY1ZDllNzRjMGI0NTYxOWMzZTk3YThlMDA2 YTliMjhhNDJlOTZlMTNlYTJmMzgwNzMxOWFjNTg3ODUwNzMxZjY0Yzg2YTNhOWFjZDRhYWEwNGU4 YTU4NjgzM2ZhZWI5MDJmOTUxNzdkMjdlODljZTI1MzA3MzY1YjIyYjdiZjQ0NGM4ZTcyZWYyYmIw ZmNlODZmZTMyNmE5MGI3ODc5NDgwODVmZDEwMWYwNGE3MzExZWQ2Y2Y2NWQ1MDczYTZhMjljN2Q5 OWZlOWZhMGI5MTVmYWMxZDliYjZiOTUxNDNjYTg5MzZlMTBlNmUzMTkyMDExMTJiYTUyODIzZGJh YWQ5MzU5NzI4NDIzNjEzOTQ5OTllNWE2NzM1NjA3NmU5ZjBiNTI4ZDYyMzI1MTgxZjgwZDY2ZTli MzI4OGJhNzQ4MjQ1OGM3Mzc4MDZmNDc0ODY3MDM2YTIzNDIwMTI1M2E5MWE2MjQ2YzhjMjg3NmQy MTBkMjU3OTk1MWRkMTJjYmMxNTNkY2VjNDAzMTU2NzM5YmU5YzdkMjkxZTQ5MDRmMDc5YTVhNzFj MDFiOWE4NDQ4MTgwMAotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YjA2MDE5NTA5NTY5 MjM1MmJkZTgxZTkwYzFiNjQ4ZWM0NmQ1NzQ3Njg5MmU3OTQ4OWQ0MmNiOGUwZGEyMDI3ZWM0MWZk MmU2MmRhOGU4ZTJhOWUxZWJjYjhlZWNmYWFkZWY3NWU2NzE0MDA4ZWQ2YTJjYmRlZjZjMzIxYmJh YWEKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOjVjOTEwYTUzY2FmY2E2Zjhj MGQ5N2M0NzQ4ZjY3YWVjZDlhNTRjOGJhOTZiZjMzMzI3NTY1ZjZmNjhhZTBhMmU3YTYyNzMzYTkw NTEzNjRmZjlmNjhiZGI0MTYxNzY1MjJhMGU1YTJmMjhmZTI3YTNmNWVjNDAyYjNkOTlkYTEzCi0r Q3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gODM4MjA5ZTBlYmU3NjI2Y2Y2NDgyZjI1Yzc3 NzRiZmQKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhr ZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGM2YzQwMWU3YTQxNzAyNWZjZThjYTVkNWU2NTRkZTZjYWM4 ZWIxYmYyNGZmZmExZWVmYWJhODI4ZjQyNWI1ZGY5MzMyM2FkNjI1NjVkOWU3NGMwYjQ1NjE5YzNl OTdhOGUwMDZhOWIyOGE0MmU5NmUxM2VhMmYzODA3MzE5YWM1ODc4NTA3MzFmNjRjODZhM2E5YWNk NGFhYTA0ZThhNTg2ODMzZmFlYjkwMmY5NTE3N2QyN2U4OWNlMjUzMDczNjViMjJiN2JmNDQ0Yzhl NzJlZjJiYjBmY2U4NmZlMzI2YTkwYjc4Nzk0ODA4NWZkMTAxZjA0YTczMTFlZDZjZjY1ZDUwNzNh NmEyOWM3ZDk5ZmU5ZmEwYjkxNWZhYzFkOWJiNmI5NTE0M2NhODkzNmUxMGU2ZTMxOTIwMTExMmJh NTI4MjNkYmFhZDkzNTk3Mjg0MjM2MTM5NDk5OWU1YTY3MzU2MDc2ZTlmMGI1MjhkNjIzMjUxODFm ODBkNjZlOWIzMjg4YmE3NDgyNDU4YzczNzgwNmY0NzQ4NjcwMzZhMjM0MjAxMjUzYTkxYTYyNDZj OGMyODc2ZDIxMGQyNTc5OTUxZGQxMmNiYzE1M2RjZWM0MDMxNTY3MzliZTljN2QyOTFlNDkwNGYw NzlhNWE3MWMwMWI5YTg0NDgxODAwCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDpiMDYw MTk1MDk1NjkyMzUyYmRlODFlOTBjMWI2NDhlYzQ2ZDU3NDc2ODkyZTc5NDg5ZDQyY2I4ZTBkYTIw MjdlYzQxZmQyZTYyZGE4ZThlMmE5ZTFlYmNiOGVlY2ZhYWRlZjc1ZTY3MTQwMDhlZDZhMmNiZGVm NmMzMjFiYmFhYQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6NWM5MTBhNTNj YWZjYTZmOGMwZDk3YzQ3NDhmNjdhZWNkOWE1NGM4YmE5NmJmMzMzMjc1NjVmNmY2OGFlMGEyZTdh NjI3MzNhOTA1MTM2NGZmOWY2OGJkYjQxNjE3NjUyMmEwZTVhMmYyOGZlMjdhM2Y1ZWM0MDJiM2Q5 OWRhMTMKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSBiYzYyMDQ4ZGRiNzYyYWM1MDMz NmFlMGU5MWE0MDJjYzc4ZTczNDcyZmUxODA3NTZhNDY4NjI5OTk2N2QyOTA0MzE4YjhhZDFiOGRj NjIyZWRkNzVlOWZmMGU3NGY3ZmNiOGExZjhhY2I4NmUyNTY3YTUxNjcwODRjNjQ4YzdlZgotKwot K0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9IGhleGtl eTowMDAwMDEwMTAwYzZjNDAxZTdhNDE3MDI1ZmNlOGNhNWQ1ZTY1NGRlNmNhYzhlYjFiZjI0ZmZm YTFlZWZhYmE4MjhmNDI1YjVkZjkzMzIzYWQ2MjU2NWQ5ZTc0YzBiNDU2MTljM2U5N2E4ZTAwNmE5 YjI4YTQyZTk2ZTEzZWEyZjM4MDczMTlhYzU4Nzg1MDczMWY2NGM4NmEzYTlhY2Q0YWFhMDRlOGE1 ODY4MzNmYWViOTAyZjk1MTc3ZDI3ZTg5Y2UyNTMwNzM2NWIyMmI3YmY0NDRjOGU3MmVmMmJiMGZj ZTg2ZmUzMjZhOTBiNzg3OTQ4MDg1ZmQxMDFmMDRhNzMxMWVkNmNmNjVkNTA3M2E2YTI5YzdkOTlm ZTlmYTBiOTE1ZmFjMWQ5YmI2Yjk1MTQzY2E4OTM2ZTEwZTZlMzE5MjAxMTEyYmE1MjgyM2RiYWFk OTM1OTcyODQyMzYxMzk0OTk5ZTVhNjczNTYwNzZlOWYwYjUyOGQ2MjMyNTE4MWY4MGQ2NmU5YjMy ODhiYTc0ODI0NThjNzM3ODA2ZjQ3NDg2NzAzNmEyMzQyMDEyNTNhOTFhNjI0NmM4YzI4NzZkMjEw ZDI1Nzk5NTFkZDEyY2JjMTUzZGNlYzQwMzE1NjczOWJlOWM3ZDI5MWU0OTA0ZjA3OWE1YTcxYzAx YjlhODQ0ODE4MDAKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmIwNjAxOTUwOTU2OTIz NTJiZGU4MWU5MGMxYjY0OGVjNDZkNTc0NzY4OTJlNzk0ODlkNDJjYjhlMGRhMjAyN2VjNDFmZDJl NjJkYThlOGUyYTllMWViY2I4ZWVjZmFhZGVmNzVlNjcxNDAwOGVkNmEyY2JkZWY2YzMyMWJiYWFh Ci0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDo1YzkxMGE1M2NhZmNhNmY4YzBk OTdjNDc0OGY2N2FlY2Q5YTU0YzhiYTk2YmYzMzMyNzU2NWY2ZjY4YWUwYTJlN2E2MjczM2E5MDUx MzY0ZmY5ZjY4YmRiNDE2MTc2NTIyYTBlNWEyZjI4ZmUyN2EzZjVlYzQwMmIzZDk5ZGExMwotK0N0 cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDRlOTY0NGEwMWEzZmU2YzNmNGY1YWNlZGRiMDBl MjU4NGUyNzczNTRhZWU2MzkyYTFhNWFlZjA1MDI0ZDM3ZmNmMjVmZjQ2ZmRkOGZlNTJlN2QxZGQ5 YTk2ZTc3MzI4YWFkZjQ0YjhmYzkyYWMyMmExNGY2M2Q2NGFkMGRiNjIxCi0rCi0rS0RGID0gU1NI S0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAx MDBhODJhZTQwNjJiYWVmNjc4ZDIwZGQ5Y2YxNzA0Y2RjNjllOWU3OGVlYTVmYWE0MzVlNGRmZmVj MDY5NzZmZjczYmQxZTJlYmQyMDY2NThhMjZmYjg1YTA5MTFlMjAzNGVlZGUzMWU3ZGYyZDdiODdh YTk3MDBjZjMwMWI2YjM4NTAyYmE0ZGIyYjk3MjM1MDU0NTVhN2RhMGM2ZTBjZjM3NGIwNjM5MjEx NzlkMWJjNjk1MDhmNjYwYmJiMjZkMDVhYjE2YTIzMjU3MTZkYmQwYTczMzgwOWNhYzM2NjYwZDlh NzNmZjBmNjFlMDlmNTVkMWZmMDY1MjQ3NDEzMGJlN2ZjZDJkMzdlYmQxMjAzOTYwZDc4OGExMzA3 ZmFlNDhlYzRlMTA0MmFiODVmMDM3YTAxYmZkMTdmMTU3MjVlZTkyOWQ2ZTYyNDZiYmRhMDBmZTcx MDU0NjFlZTg3M2IwMTkwYzJmNDQ2OTI4NDVlNDY0OTQ5ZjkwOWRmNDYzMDlhOGViNzIwMzcyNzhm NzkyYzg3MjQ5ODk3YTA1NjRkMjkwYmVjMWUwOWIyYzlkM2FkMzAxMTcxMGZjNGRjZmFiZmE0MzU2 MTE3OTRkYzdkMTUwN2I2NTcyMjlhMmFhYjY1Y2UyZTc4OTMwNWQ1ZDI0ZWQ5NTVlODlkOGViNGY3 ZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YTZlZjhlMzEwMmIxNmNlNTFiMmEyZmUx N2U4ZGM3MTFhOTY0YzE5NWNhNGQ1OTdhYWJlY2NlNTk1MTg3MzQ0Y2NiMmVhMzdkYzRjYWMwYTc3 YTQ3ZTdlYTFiOTA1NWIxYzk5NDhlNmUwOTc5M2E5MTIxZjEyMGIzYmQwN2M1ZjIKLStDdHJsLmhl eHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmNjODVjZjk1ZTI5YTU5OTEzMDZiMjFjMTczOGRl OWE2NjEyYjhjYjA5ZjEyYjE3MzhhNDg3M2MyOWY5NzFlOGQyMDRhZWI5OGJiN2E3NTAyY2RhYjk1 MmVhYWE2ZWMxZTNhOTY1NWRiM2U1MjE3YWZiZmY2M2FkNTg4ZmJiZjg1Ci0rQ3RybC50eXBlID0g dHlwZTpBCi0rT3V0cHV0ID0gNzdjYjQzMmM2N2JmMGFlNjU4YWE0ZTM0Mzc2ZDAxYjUKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEyCi0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6 MDAwMDAxMDEwMGE4MmFlNDA2MmJhZWY2NzhkMjBkZDljZjE3MDRjZGM2OWU5ZTc4ZWVhNWZhYTQz NWU0ZGZmZWMwNjk3NmZmNzNiZDFlMmViZDIwNjY1OGEyNmZiODVhMDkxMWUyMDM0ZWVkZTMxZTdk ZjJkN2I4N2FhOTcwMGNmMzAxYjZiMzg1MDJiYTRkYjJiOTcyMzUwNTQ1NWE3ZGEwYzZlMGNmMzc0 YjA2MzkyMTE3OWQxYmM2OTUwOGY2NjBiYmIyNmQwNWFiMTZhMjMyNTcxNmRiZDBhNzMzODA5Y2Fj MzY2NjBkOWE3M2ZmMGY2MWUwOWY1NWQxZmYwNjUyNDc0MTMwYmU3ZmNkMmQzN2ViZDEyMDM5NjBk Nzg4YTEzMDdmYWU0OGVjNGUxMDQyYWI4NWYwMzdhMDFiZmQxN2YxNTcyNWVlOTI5ZDZlNjI0NmJi ZGEwMGZlNzEwNTQ2MWVlODczYjAxOTBjMmY0NDY5Mjg0NWU0NjQ5NDlmOTA5ZGY0NjMwOWE4ZWI3 MjAzNzI3OGY3OTJjODcyNDk4OTdhMDU2NGQyOTBiZWMxZTA5YjJjOWQzYWQzMDExNzEwZmM0ZGNm YWJmYTQzNTYxMTc5NGRjN2QxNTA3YjY1NzIyOWEyYWFiNjVjZTJlNzg5MzA1ZDVkMjRlZDk1NWU4 OWQ4ZWI0ZjdlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDphNmVmOGUzMTAyYjE2Y2U1 MWIyYTJmZTE3ZThkYzcxMWE5NjRjMTk1Y2E0ZDU5N2FhYmVjY2U1OTUxODczNDRjY2IyZWEzN2Rj NGNhYzBhNzdhNDdlN2VhMWI5MDU1YjFjOTk0OGU2ZTA5NzkzYTkxMjFmMTIwYjNiZDA3YzVmMgot K0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6Y2M4NWNmOTVlMjlhNTk5MTMwNmIy MWMxNzM4ZGU5YTY2MTJiOGNiMDlmMTJiMTczOGE0ODczYzI5Zjk3MWU4ZDIwNGFlYjk4YmI3YTc1 MDJjZGFiOTUyZWFhYTZlYzFlM2E5NjU1ZGIzZTUyMTdhZmJmZjYzYWQ1ODhmYmJmODUKLStDdHJs LnR5cGUgPSB0eXBlOkIKLStPdXRwdXQgPSBmNTVjNzRkMTEyNzQ2MDAxZDg5MDhlZGQzNDdkN2U2 OQotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhleGtleSA9 IGhleGtleTowMDAwMDEwMTAwYTgyYWU0MDYyYmFlZjY3OGQyMGRkOWNmMTcwNGNkYzY5ZTllNzhl ZWE1ZmFhNDM1ZTRkZmZlYzA2OTc2ZmY3M2JkMWUyZWJkMjA2NjU4YTI2ZmI4NWEwOTExZTIwMzRl ZWRlMzFlN2RmMmQ3Yjg3YWE5NzAwY2YzMDFiNmIzODUwMmJhNGRiMmI5NzIzNTA1NDU1YTdkYTBj NmUwY2YzNzRiMDYzOTIxMTc5ZDFiYzY5NTA4ZjY2MGJiYjI2ZDA1YWIxNmEyMzI1NzE2ZGJkMGE3 MzM4MDljYWMzNjY2MGQ5YTczZmYwZjYxZTA5ZjU1ZDFmZjA2NTI0NzQxMzBiZTdmY2QyZDM3ZWJk MTIwMzk2MGQ3ODhhMTMwN2ZhZTQ4ZWM0ZTEwNDJhYjg1ZjAzN2EwMWJmZDE3ZjE1NzI1ZWU5Mjlk NmU2MjQ2YmJkYTAwZmU3MTA1NDYxZWU4NzNiMDE5MGMyZjQ0NjkyODQ1ZTQ2NDk0OWY5MDlkZjQ2 MzA5YThlYjcyMDM3Mjc4Zjc5MmM4NzI0OTg5N2EwNTY0ZDI5MGJlYzFlMDliMmM5ZDNhZDMwMTE3 MTBmYzRkY2ZhYmZhNDM1NjExNzk0ZGM3ZDE1MDdiNjU3MjI5YTJhYWI2NWNlMmU3ODkzMDVkNWQy NGVkOTU1ZTg5ZDhlYjRmN2UKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmE2ZWY4ZTMx MDJiMTZjZTUxYjJhMmZlMTdlOGRjNzExYTk2NGMxOTVjYTRkNTk3YWFiZWNjZTU5NTE4NzM0NGNj YjJlYTM3ZGM0Y2FjMGE3N2E0N2U3ZWExYjkwNTViMWM5OTQ4ZTZlMDk3OTNhOTEyMWYxMjBiM2Jk MDdjNWYyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpjYzg1Y2Y5NWUyOWE1 OTkxMzA2YjIxYzE3MzhkZTlhNjYxMmI4Y2IwOWYxMmIxNzM4YTQ4NzNjMjlmOTcxZThkMjA0YWVi OThiYjdhNzUwMmNkYWI5NTJlYWFhNmVjMWUzYTk2NTVkYjNlNTIxN2FmYmZmNjNhZDU4OGZiYmY4 NQotK0N0cmwudHlwZSA9IHR5cGU6QwotK091dHB1dCA9IDM0YTQ4YWI5MDg5MGIzODUxOThlYTZi ZjhjNTBjM2Y2Ci0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNIQTUxMgotK0N0cmwu aGV4a2V5ID0gaGV4a2V5OjAwMDAwMTAxMDBhODJhZTQwNjJiYWVmNjc4ZDIwZGQ5Y2YxNzA0Y2Rj NjllOWU3OGVlYTVmYWE0MzVlNGRmZmVjMDY5NzZmZjczYmQxZTJlYmQyMDY2NThhMjZmYjg1YTA5 MTFlMjAzNGVlZGUzMWU3ZGYyZDdiODdhYTk3MDBjZjMwMWI2YjM4NTAyYmE0ZGIyYjk3MjM1MDU0 NTVhN2RhMGM2ZTBjZjM3NGIwNjM5MjExNzlkMWJjNjk1MDhmNjYwYmJiMjZkMDVhYjE2YTIzMjU3 MTZkYmQwYTczMzgwOWNhYzM2NjYwZDlhNzNmZjBmNjFlMDlmNTVkMWZmMDY1MjQ3NDEzMGJlN2Zj ZDJkMzdlYmQxMjAzOTYwZDc4OGExMzA3ZmFlNDhlYzRlMTA0MmFiODVmMDM3YTAxYmZkMTdmMTU3 MjVlZTkyOWQ2ZTYyNDZiYmRhMDBmZTcxMDU0NjFlZTg3M2IwMTkwYzJmNDQ2OTI4NDVlNDY0OTQ5 ZjkwOWRmNDYzMDlhOGViNzIwMzcyNzhmNzkyYzg3MjQ5ODk3YTA1NjRkMjkwYmVjMWUwOWIyYzlk M2FkMzAxMTcxMGZjNGRjZmFiZmE0MzU2MTE3OTRkYzdkMTUwN2I2NTcyMjlhMmFhYjY1Y2UyZTc4 OTMwNWQ1ZDI0ZWQ5NTVlODlkOGViNGY3ZQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6 YTZlZjhlMzEwMmIxNmNlNTFiMmEyZmUxN2U4ZGM3MTFhOTY0YzE5NWNhNGQ1OTdhYWJlY2NlNTk1 MTg3MzQ0Y2NiMmVhMzdkYzRjYWMwYTc3YTQ3ZTdlYTFiOTA1NWIxYzk5NDhlNmUwOTc5M2E5MTIx ZjEyMGIzYmQwN2M1ZjIKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lkOmNjODVj Zjk1ZTI5YTU5OTEzMDZiMjFjMTczOGRlOWE2NjEyYjhjYjA5ZjEyYjE3MzhhNDg3M2MyOWY5NzFl OGQyMDRhZWI5OGJiN2E3NTAyY2RhYjk1MmVhYWE2ZWMxZTNhOTY1NWRiM2U1MjE3YWZiZmY2M2Fk NTg4ZmJiZjg1Ci0rQ3RybC50eXBlID0gdHlwZTpECi0rT3V0cHV0ID0gZjJiNjA0NmQzNDM5YzUw YTkwMDBhNjM5MDkxNDZhYmMKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBNTEy Ci0rQ3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAxMDEwMGE4MmFlNDA2MmJhZWY2NzhkMjBkZDlj ZjE3MDRjZGM2OWU5ZTc4ZWVhNWZhYTQzNWU0ZGZmZWMwNjk3NmZmNzNiZDFlMmViZDIwNjY1OGEy NmZiODVhMDkxMWUyMDM0ZWVkZTMxZTdkZjJkN2I4N2FhOTcwMGNmMzAxYjZiMzg1MDJiYTRkYjJi OTcyMzUwNTQ1NWE3ZGEwYzZlMGNmMzc0YjA2MzkyMTE3OWQxYmM2OTUwOGY2NjBiYmIyNmQwNWFi MTZhMjMyNTcxNmRiZDBhNzMzODA5Y2FjMzY2NjBkOWE3M2ZmMGY2MWUwOWY1NWQxZmYwNjUyNDc0 MTMwYmU3ZmNkMmQzN2ViZDEyMDM5NjBkNzg4YTEzMDdmYWU0OGVjNGUxMDQyYWI4NWYwMzdhMDFi ZmQxN2YxNTcyNWVlOTI5ZDZlNjI0NmJiZGEwMGZlNzEwNTQ2MWVlODczYjAxOTBjMmY0NDY5Mjg0 NWU0NjQ5NDlmOTA5ZGY0NjMwOWE4ZWI3MjAzNzI3OGY3OTJjODcyNDk4OTdhMDU2NGQyOTBiZWMx ZTA5YjJjOWQzYWQzMDExNzEwZmM0ZGNmYWJmYTQzNTYxMTc5NGRjN2QxNTA3YjY1NzIyOWEyYWFi NjVjZTJlNzg5MzA1ZDVkMjRlZDk1NWU4OWQ4ZWI0ZjdlCi0rQ3RybC5oZXh4Y2doYXNoID0gaGV4 eGNnaGFzaDphNmVmOGUzMTAyYjE2Y2U1MWIyYTJmZTE3ZThkYzcxMWE5NjRjMTk1Y2E0ZDU5N2Fh YmVjY2U1OTUxODczNDRjY2IyZWEzN2RjNGNhYzBhNzdhNDdlN2VhMWI5MDU1YjFjOTk0OGU2ZTA5 NzkzYTkxMjFmMTIwYjNiZDA3YzVmMgotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25f aWQ6Y2M4NWNmOTVlMjlhNTk5MTMwNmIyMWMxNzM4ZGU5YTY2MTJiOGNiMDlmMTJiMTczOGE0ODcz YzI5Zjk3MWU4ZDIwNGFlYjk4YmI3YTc1MDJjZGFiOTUyZWFhYTZlYzFlM2E5NjU1ZGIzZTUyMTdh ZmJmZjYzYWQ1ODhmYmJmODUKLStDdHJsLnR5cGUgPSB0eXBlOkUKLStPdXRwdXQgPSA3MDM1NzQ4 NmNhNTdjOTM0MThjNjcwNWI3MzFiMDU0YmM0MWJlMDMyODljMjVhNWVkMjlhOTM3NzMyODA3YWUx MGEzNjA0NDg2YzUzZDFmMjQzMTQxMTgwOGQ4N2JmYmFhNmIyNTk3MWZhMmU0ZWMzNzE5YjVkMjYy MmFlZDJmZgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEE1MTIKLStDdHJsLmhl eGtleSA9IGhleGtleTowMDAwMDEwMTAwYTgyYWU0MDYyYmFlZjY3OGQyMGRkOWNmMTcwNGNkYzY5 ZTllNzhlZWE1ZmFhNDM1ZTRkZmZlYzA2OTc2ZmY3M2JkMWUyZWJkMjA2NjU4YTI2ZmI4NWEwOTEx ZTIwMzRlZWRlMzFlN2RmMmQ3Yjg3YWE5NzAwY2YzMDFiNmIzODUwMmJhNGRiMmI5NzIzNTA1NDU1 YTdkYTBjNmUwY2YzNzRiMDYzOTIxMTc5ZDFiYzY5NTA4ZjY2MGJiYjI2ZDA1YWIxNmEyMzI1NzE2 ZGJkMGE3MzM4MDljYWMzNjY2MGQ5YTczZmYwZjYxZTA5ZjU1ZDFmZjA2NTI0NzQxMzBiZTdmY2Qy ZDM3ZWJkMTIwMzk2MGQ3ODhhMTMwN2ZhZTQ4ZWM0ZTEwNDJhYjg1ZjAzN2EwMWJmZDE3ZjE1NzI1 ZWU5MjlkNmU2MjQ2YmJkYTAwZmU3MTA1NDYxZWU4NzNiMDE5MGMyZjQ0NjkyODQ1ZTQ2NDk0OWY5 MDlkZjQ2MzA5YThlYjcyMDM3Mjc4Zjc5MmM4NzI0OTg5N2EwNTY0ZDI5MGJlYzFlMDliMmM5ZDNh ZDMwMTE3MTBmYzRkY2ZhYmZhNDM1NjExNzk0ZGM3ZDE1MDdiNjU3MjI5YTJhYWI2NWNlMmU3ODkz MDVkNWQyNGVkOTU1ZTg5ZDhlYjRmN2UKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmE2 ZWY4ZTMxMDJiMTZjZTUxYjJhMmZlMTdlOGRjNzExYTk2NGMxOTVjYTRkNTk3YWFiZWNjZTU5NTE4 NzM0NGNjYjJlYTM3ZGM0Y2FjMGE3N2E0N2U3ZWExYjkwNTViMWM5OTQ4ZTZlMDk3OTNhOTEyMWYx MjBiM2JkMDdjNWYyCi0rQ3RybC5oZXhzZXNzaW9uX2lkID0gaGV4c2Vzc2lvbl9pZDpjYzg1Y2Y5 NWUyOWE1OTkxMzA2YjIxYzE3MzhkZTlhNjYxMmI4Y2IwOWYxMmIxNzM4YTQ4NzNjMjlmOTcxZThk MjA0YWViOThiYjdhNzUwMmNkYWI5NTJlYWFhNmVjMWUzYTk2NTVkYjNlNTIxN2FmYmZmNjNhZDU4 OGZiYmY4NQotK0N0cmwudHlwZSA9IHR5cGU6RgotK091dHB1dCA9IDRlNjQyOGY3YTg3NDU1YmRl ZjYwMjZjZGY2OGEyZjZkOTNkNmNkYTUxNDVkNmJjYTYwZWU0ZWIyZDYyNDhiMzk5ZjY1NjhjNjVl YzkyY2VlOGQ5YjBjN2ZkODMwNTNjOTFjNWJlNzJiZjk2YjU5MDQwODA2MjRhMzQ4MjQzODk5Ci0r Ci0rVGl0bGUgPSBTU0hLREYgdGVzdCBlcnJvciBjb25kaXRpb25zCi0rCi0rS0RGID0gU1NIS0RG Ci0rQ3RybC5tZCA9IG1kOlNIQTEKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmE0ZWJk NDU5MzRmNTY3OTJiNTExMmRjZDc1YTEwNzVmZGM4ODkyNDUKLStDdHJsLmhleHNlc3Npb25faWQg PSBoZXhzZXNzaW9uX2lkOmE0ZWJkNDU5MzRmNTY3OTJiNTExMmRjZDc1YTEwNzVmZGM4ODkyNDUK LStDdHJsLnR5cGUgPSB0eXBlOkEKLStPdXRwdXQgPSBGRgotK1Jlc3VsdCA9IEtERl9ERVJJVkVf RVJST1IKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5 ID0gaGV4a2V5OjAwMDAwMDgwNTViYWU5MzFjMDdmZDgyNGJmMTBhZGQxOTAyYjZmYmM3YzY2NTM0 NzM4MzQ5OGE2ODY5MjlmZjVhMjVmOGU0MGNiNjY0NWVhODE0ZmIxYTVlMGExMWY4NTJmODYyNTU2 NDFlNWVkOTg2ZTgzYTc4YmM4MjY5NDgwZWFjMGIwZGZkNzcwY2FiOTJlN2EyOGRkODdmZjQ1MjQ2 NmQ2YWU4NjdjZWFkNjNiMzY2YjFjMjg2ZTZjNDgxMWE5ZjE0YzI3YWVhMTRjNTE3MWQ0OWI3OGMw NmUzNzM1ZDM2ZTZhM2JlMzIxZGQ1ZmM4MjMwOGYzNGVlMWNiMTdmYmE5NGE1OQotK0N0cmwuaGV4 c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTRlYmQ0NTkzNGY1Njc5MmI1MTEyZGNkNzVhMTA3 NWZkYzg4OTI0NQotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IEZGCi0rUmVzdWx0ID0g S0RGX0RFUklWRV9FUlJPUgotKwotK0tERiA9IFNTSEtERgotK0N0cmwubWQgPSBtZDpTSEExCi0r Q3RybC5oZXhrZXkgPSBoZXhrZXk6MDAwMDAwODA1NWJhZTkzMWMwN2ZkODI0YmYxMGFkZDE5MDJi NmZiYzdjNjY1MzQ3MzgzNDk4YTY4NjkyOWZmNWEyNWY4ZTQwY2I2NjQ1ZWE4MTRmYjFhNWUwYTEx Zjg1MmY4NjI1NTY0MWU1ZWQ5ODZlODNhNzhiYzgyNjk0ODBlYWMwYjBkZmQ3NzBjYWI5MmU3YTI4 ZGQ4N2ZmNDUyNDY2ZDZhZTg2N2NlYWQ2M2IzNjZiMWMyODZlNmM0ODExYTlmMTRjMjdhZWExNGM1 MTcxZDQ5Yjc4YzA2ZTM3MzVkMzZlNmEzYmUzMjFkZDVmYzgyMzA4ZjM0ZWUxY2IxN2ZiYTk0YTU5 Ci0rQ3RybC5oZXh4Y2doYXNoID0gaGV4eGNnaGFzaDphNGViZDQ1OTM0ZjU2NzkyYjUxMTJkY2Q3 NWExMDc1ZmRjODg5MjQ1Ci0rQ3RybC50eXBlID0gdHlwZTpBCi0rT3V0cHV0ID0gRkYKLStSZXN1 bHQgPSBLREZfREVSSVZFX0VSUk9SCi0rCi0rS0RGID0gU1NIS0RGCi0rQ3RybC5tZCA9IG1kOlNI QTEKLStDdHJsLmhleGtleSA9IGhleGtleTowMDAwMDA4MDU1YmFlOTMxYzA3ZmQ4MjRiZjEwYWRk MTkwMmI2ZmJjN2M2NjUzNDczODM0OThhNjg2OTI5ZmY1YTI1ZjhlNDBjYjY2NDVlYTgxNGZiMWE1 ZTBhMTFmODUyZjg2MjU1NjQxZTVlZDk4NmU4M2E3OGJjODI2OTQ4MGVhYzBiMGRmZDc3MGNhYjky ZTdhMjhkZDg3ZmY0NTI0NjZkNmFlODY3Y2VhZDYzYjM2NmIxYzI4NmU2YzQ4MTFhOWYxNGMyN2Fl YTE0YzUxNzFkNDliNzhjMDZlMzczNWQzNmU2YTNiZTMyMWRkNWZjODIzMDhmMzRlZTFjYjE3ZmJh OTRhNTkKLStDdHJsLmhleHhjZ2hhc2ggPSBoZXh4Y2doYXNoOmE0ZWJkNDU5MzRmNTY3OTJiNTEx MmRjZDc1YTEwNzVmZGM4ODkyNDUKLStDdHJsLmhleHNlc3Npb25faWQgPSBoZXhzZXNzaW9uX2lk OmE0ZWJkNDU5MzRmNTY3OTJiNTExMmRjZDc1YTEwNzVmZGM4ODkyNDUKLStPdXRwdXQgPSBGRgot K1Jlc3VsdCA9IEtERl9ERVJJVkVfRVJST1IKLSsKLStLREYgPSBTU0hLREYKLStDdHJsLm1kID0g bWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAwMDAwMDgwNTViYWU5MzFjMDdmZDgyNGJm MTBhZGQxOTAyYjZmYmM3YzY2NTM0NzM4MzQ5OGE2ODY5MjlmZjVhMjVmOGU0MGNiNjY0NWVhODE0 ZmIxYTVlMGExMWY4NTJmODYyNTU2NDFlNWVkOTg2ZTgzYTc4YmM4MjY5NDgwZWFjMGIwZGZkNzcw Y2FiOTJlN2EyOGRkODdmZjQ1MjQ2NmQ2YWU4NjdjZWFkNjNiMzY2YjFjMjg2ZTZjNDgxMWE5ZjE0 YzI3YWVhMTRjNTE3MWQ0OWI3OGMwNmUzNzM1ZDM2ZTZhM2JlMzIxZGQ1ZmM4MjMwOGYzNGVlMWNi MTdmYmE5NGE1OQotK0N0cmwuaGV4eGNnaGFzaCA9IGhleHhjZ2hhc2g6YTRlYmQ0NTkzNGY1Njc5 MmI1MTEyZGNkNzVhMTA3NWZkYzg4OTI0NQotK0N0cmwuaGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Np b25faWQ6YTRlYmQ0NTkzNGY1Njc5MmI1MTEyZGNkNzVhMTA3NWZkYzg4OTI0NQotK0N0cmwudHlw ZSA9IHR5cGU6WAotK091dHB1dCA9IEZGCi0rUmVzdWx0ID0gS0RGX0NUUkxfRVJST1IKLSsKLStL REYgPSBTU0hLREYKLStDdHJsLm1kID0gbWQ6U0hBMQotK0N0cmwuaGV4a2V5ID0gaGV4a2V5OjAw MDAwMDgwNTViYWU5MzFjMDdmZDgyNGJmMTBhZGQxOTAyYjZmYmM3YzY2NTM0NzM4MzQ5OGE2ODY5 MjlmZjVhMjVmOGU0MGNiNjY0NWVhODE0ZmIxYTVlMGExMWY4NTJmODYyNTU2NDFlNWVkOTg2ZTgz YTc4YmM4MjY5NDgwZWFjMGIwZGZkNzcwY2FiOTJlN2EyOGRkODdmZjQ1MjQ2NmQ2YWU4NjdjZWFk NjNiMzY2YjFjMjg2ZTZjNDgxMWE5ZjE0YzI3YWVhMTRjNTE3MWQ0OWI3OGMwNmUzNzM1ZDM2ZTZh M2JlMzIxZGQ1ZmM4MjMwOGYzNGVlMWNiMTdmYmE5NGE1OQotK0N0cmwuaGV4eGNnaGFzaCA9IGhl eHhjZ2hhc2g6YTRlYmQ0NTkzNGY1Njc5MmI1MTEyZGNkNzVhMTA3NWZkYzg4OTI0NQotK0N0cmwu aGV4c2Vzc2lvbl9pZCA9IGhleHNlc3Npb25faWQ6YTRlYmQ0NTkzNGY1Njc5MmI1MTEyZGNkNzVh MTA3NWZkYzg4OTI0NQotK0N0cmwudHlwZSA9IHR5cGU6QQotK091dHB1dCA9IEZGCi0rUmVzdWx0 ID0gS0RGX01JU01BVENICi1Gcm9tIDE0OGNjNWVlMjQ2ZTEwOGIxZTczMzIwMzUwMzdiYWI1MzU3 NGIwYTkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBTaW1vIFNvcmNlIDxzaW1vQHJl ZGhhdC5jb20+Ci1EYXRlOiBUaHUsIDE4IEFwciAyMDE5IDA4OjI2OjI5IC0wNDAwCi1TdWJqZWN0 OiBbUEFUQ0hdIENoYW5nZSB0aGUgZGlnZXN0IHN0cmluZyBmcm9tICJtZCIgdG8gImRpZ2VzdCIK LQotQ29uZm9ybSB0byBvdGhlciBtb2R1bGVzIHdoaWNoIHdlcmUgY2hhbmdlZCBhdCB0aGUgbGFz dCBtaW51dGUgYW5kIHRoaXMKLWRpc2NyZXBhbmN5IHdhcyBub3Qgbm90aWNlZC4KLVJldGFpbiAi bWQiIGFzIGFuIGFsaWFzIHNvIG5vdCB0byBicmVhayAzcmQgcGFydHkgYmFja3BvcnRzL3Rlc3Rz IHNjcmlwdHMuCi0KLVNpZ25lZC1vZmYtYnk6IFNpbW8gU29yY2UgPHNpbW9AcmVkaGF0LmNvbT4K LS0tLQotIGNyeXB0by9rZGYvc3Noa2RmLmMgICAgICAgIHwgMyArKysKLSB0ZXN0L3JlY2lwZXMv MjAtdGVzdF9rZGYudCB8IDIgKy0KLSAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwg MSBkZWxldGlvbigtKQotIG1vZGUgY2hhbmdlIDEwMDY0NCA9PiAxMDA3NTUgdGVzdC9yZWNpcGVz LzIwLXRlc3Rfa2RmLnQKLQotZGlmZiAtLWdpdCBhL2NyeXB0by9rZGYvc3Noa2RmLmMgYi9jcnlw dG8va2RmL3NzaGtkZi5jCi1pbmRleCAzMDBlMWFkYmIyMy4uZjU4NWU4YTBkNmQgMTAwNjQ0Ci0t LS0gYS9jcnlwdG8va2RmL3NzaGtkZi5jCi0rKysgYi9jcnlwdG8va2RmL3NzaGtkZi5jCi1AQCAt MTI1LDYgKzEyNSw5IEBAIHN0YXRpYyBpbnQga2RmX3NzaGtkZl9jdHJsX3N0cihFVlBfS0RGX0lN UEwgKmltcGwsIGNvbnN0IGNoYXIgKnR5cGUsCi0gICAgICAgICByZXR1cm4gMDsKLSAgICAgfQot IAotKyAgICBpZiAoc3RyY21wKHR5cGUsICJkaWdlc3QiKSA9PSAwKQotKyAgICAgICAgcmV0dXJu IGtkZl9tZDJjdHJsKGltcGwsIGtkZl9zc2hrZGZfY3RybCwgRVZQX0tERl9DVFJMX1NFVF9NRCwg dmFsdWUpOwotKyAgICAvKiBhbGlhcywgZm9yIGhpc3RvcmljYWwgcmVhc29ucyAqLwotICAgICBp ZiAoc3RyY21wKHR5cGUsICJtZCIpID09IDApCi0gICAgICAgICByZXR1cm4ga2RmX21kMmN0cmwo aW1wbCwga2RmX3NzaGtkZl9jdHJsLCBFVlBfS0RGX0NUUkxfU0VUX01ELCB2YWx1ZSk7Ci0gCgpk aWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS1zeXN0ZW0tY2lwaGVybGlzdC5wYXRjaCBiL29wZW5z c2wtMS4xLjEtc3lzdGVtLWNpcGhlcmxpc3QucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IGE3MGYyMGIuLjAwMDAwMDAKLS0tIGEvb3BlbnNzbC0xLjEuMS1zeXN0ZW0tY2lwaGVy bGlzdC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDMxMCArMCwwIEBACi1kaWZmIC11cCBvcGVu c3NsLTEuMS4xYy9Db25maWd1cmF0aW9ucy91bml4LU1ha2VmaWxlLnRtcGwuc3lzdGVtLWNpcGhl cmxpc3Qgb3BlbnNzbC0xLjEuMWMvQ29uZmlndXJhdGlvbnMvdW5peC1NYWtlZmlsZS50bXBsCi0t LS0gb3BlbnNzbC0xLjEuMWMvQ29uZmlndXJhdGlvbnMvdW5peC1NYWtlZmlsZS50bXBsLnN5c3Rl bS1jaXBoZXJsaXN0CTIwMTktMDUtMjkgMTU6NDI6MjcuOTUxMzI5MjcxICswMjAwCi0rKysgb3Bl bnNzbC0xLjEuMWMvQ29uZmlndXJhdGlvbnMvdW5peC1NYWtlZmlsZS50bXBsCTIwMTktMDUtMjkg MTU6NDI6MjcuOTc0MzI4ODY3ICswMjAwCi1AQCAtMTgwLDYgKzE4MCwxMCBAQCBNQU5ESVI9JChJ TlNUQUxMVE9QKS9zaGFyZS9tYW4KLSBET0NESVI9JChJTlNUQUxMVE9QKS9zaGFyZS9kb2MvJChC QVNFTkFNRSkKLSBIVE1MRElSPSQoRE9DRElSKS9odG1sCi0gCi0rey0gb3V0cHV0X29mZigpIGlm ICRjb25maWd7c3lzdGVtX2NpcGhlcnNfZmlsZX0gZXEgIiI7ICIiIC19Ci0rU1lTVEVNX0NJUEhF UlNfRklMRV9ERUZJTkU9LURTWVNURU1fQ0lQSEVSU19GSUxFPSJcInstICRjb25maWd7c3lzdGVt X2NpcGhlcnNfZmlsZX0gLX1cIiIKLSt7LSBvdXRwdXRfb24oKSBpZiAkY29uZmlne3N5c3RlbV9j aXBoZXJzX2ZpbGV9IGVxICIiOyAiIiAtfQotKwotICMgTUFOU1VGRklYIGlzIGZvciB0aGUgYmVu ZWZpdCBvZiBhbnlvbmUgd2hvIG1heSB3YW50IHRvIGhhdmUgYSBzdWZmaXgKLSAjIGFwcGVuZGVk IGFmdGVyIHRoZSBtYW5wYWdlIGZpbGUgc2VjdGlvbiBudW1iZXIuICAic3NsIiBpcyBwb3B1bGFy LAotICMgcmVzdWx0aW5nIGluIGZpbGVzIHN1Y2ggYXMgY29uZmlnLjVzc2wgcmF0aGVyIHRoYW4g Y29uZmlnLjUuCi1AQCAtMjAzLDYgKzIwNyw3IEBAIENDPSQoQ1JPU1NfQ09NUElMRSl7LSAkY29u Zmlne0NDfSAtfQotIENYWD17LSAkY29uZmlne0NYWH0gPyAiXCQoQ1JPU1NfQ09NUElMRSkkY29u Zmlne0NYWH0iIDogJycgLX0KLSBDUFBGTEFHUz17LSBvdXIgJGNwcGZsYWdzMSA9IGpvaW4oIiAi LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWFwIHsgIi1EIi4kX30gQHsk Y29uZmlne0NQUERFRklORVN9fSksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJcJChTWVNURU1fQ0lQSEVSU19GSUxFX0RFRklORSkiLAotICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAobWFwIHsgIi1JIi4kX30gQHskY29uZmlne0NQUElOQ0xVREVTfX0pLAot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAeyRjb25maWd7Q1BQRkxBR1N9fSkg LX0KLSBDRkxBR1M9ey0gam9pbignICcsIEB7JGNvbmZpZ3tDRkxBR1N9fSkgLX0KLWRpZmYgLXVw IG9wZW5zc2wtMS4xLjFjL0NvbmZpZ3VyZS5zeXN0ZW0tY2lwaGVybGlzdCBvcGVuc3NsLTEuMS4x Yy9Db25maWd1cmUKLS0tLSBvcGVuc3NsLTEuMS4xYy9Db25maWd1cmUuc3lzdGVtLWNpcGhlcmxp c3QJMjAxOS0wNS0yOCAxNToxMjoyMS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4x Yy9Db25maWd1cmUJMjAxOS0wNS0yOSAxNTo0NToxMC40NjU0Njk1MzMgKzAyMDAKLUBAIC0yNCw3 ICsyNCw3IEBAIHVzZSBPcGVuU1NMOjpHbG9iOwotIG15ICRvcmlnX2RlYXRoX2hhbmRsZXIgPSAk U0lHe19fRElFX199OwotICRTSUd7X19ESUVfX30gPSBcJmRlYXRoX2hhbmRsZXI7Ci0gCi0tbXkg JHVzYWdlPSJVc2FnZTogQ29uZmlndXJlIFtuby08Y2lwaGVyPiAuLi5dIFtlbmFibGUtPGNpcGhl cj4gLi4uXSBbLUR4eHhdIFstbHh4eF0gWy1MeHh4XSBbLWZ4eHhdIFstS3h4eF0gW25vLWh3LXh4 eHxuby1od10gW1tuby1ddGhyZWFkc10gW1tuby1dc2hhcmVkXSBbW25vLV16bGlifHpsaWItZHlu YW1pY10gW25vLWFzbV0gW25vLWVnZF0gW3NjdHBdIFszODZdIFstLXByZWZpeD1ESVJdIFstLW9w ZW5zc2xkaXI9T1BFTlNTTERJUl0gWy0td2l0aC14eHhbPXZ2dl1dIFstLWNvbmZpZz1GSUxFXSBv cy9jb21waWxlcls6ZmxhZ3NdXG4iOwotK215ICR1c2FnZT0iVXNhZ2U6IENvbmZpZ3VyZSBbbm8t PGNpcGhlcj4gLi4uXSBbZW5hYmxlLTxjaXBoZXI+IC4uLl0gWy1EeHh4XSBbLWx4eHhdIFstTHh4 eF0gWy1meHh4XSBbLUt4eHhdIFtuby1ody14eHh8bm8taHddIFtbbm8tXXRocmVhZHNdIFtbbm8t XXNoYXJlZF0gW1tuby1demxpYnx6bGliLWR5bmFtaWNdIFtuby1hc21dIFtuby1lZ2RdIFtzY3Rw XSBbMzg2XSBbLS1wcmVmaXg9RElSXSBbLS1vcGVuc3NsZGlyPU9QRU5TU0xESVJdIFstLXN5c3Rl bS1jaXBoZXJzLWZpbGU9U1lTVEVNQ0lQSEVSRklMRV0gWy0td2l0aC14eHhbPXZ2dl1dIFstLWNv bmZpZz1GSUxFXSBvcy9jb21waWxlcls6ZmxhZ3NdXG4iOwotIAotICMgT3B0aW9uczoKLSAjCi1A QCAtNDEsNiArNDEsOSBAQCBteSAkdXNhZ2U9IlVzYWdlOiBDb25maWd1cmUgW25vLTxjaXBoZXI+ Ci0gIyAgICAgICAgICAgICAgIFRoaXMgYmVjb21lcyB0aGUgdmFsdWUgb2YgT1BFTlNTTERJUiBp biBNYWtlZmlsZSBhbmQgaW4gQy4KLSAjICAgICAgICAgICAgICAgKERlZmF1bHQ6IFBSRUZJWC9z c2wpCi0gIwotKyMgLS1zeXN0ZW0tY2lwaGVycy1maWxlICBBIGZpbGUgdG8gcmVhZCBjaXBoZXIg c3RyaW5nIGZyb20gd2hlbiB0aGUgUFJPRklMRT1TWVNURU0KLSsjCQljaXBoZXIgaXMgc3BlY2lm aWVkIChkZWZhdWx0KS4KLSsjCi0gIyAtLWNyb3NzLWNvbXBpbGUtcHJlZml4IEFkZCBzcGVjaWZp ZWQgcHJlZml4IHRvIGJpbnV0aWxzIGNvbXBvbmVudHMuCi0gIwotICMgLS1hcGkgICAgICAgICBP bmUgb2YgMC45LjgsIDEuMC4wIG9yIDEuMS4wLiAgRG8gbm90IGNvbXBpbGUgc3VwcG9ydCBmb3IK LUBAIC0yOTUsNiArMjk4LDcgQEAgJGNvbmZpZ3twcmVmaXh9PSIiOwotICRjb25maWd7b3BlbnNz bGRpcn09IiI7Ci0gJGNvbmZpZ3twcm9jZXNzb3J9PSIiOwotICRjb25maWd7bGliZGlyfT0iIjsK LSskY29uZmlne3N5c3RlbV9jaXBoZXJzX2ZpbGV9PSIiOwotIG15ICRhdXRvX3RocmVhZHM9MTsg ICAgIyBlbmFibGUgdGhyZWFkcyBhdXRvbWF0aWNhbGx5PyB0cnVlIGJ5IGRlZmF1bHQKLSBteSAk ZGVmYXVsdF9yYW5saWI7Ci0gCi1AQCAtODI0LDYgKzgyOCwxMCBAQCB3aGlsZSAoQGFyZ3Zjb3B5 KQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwdXNoIEBzZWVkX3NvdXJjZXMsICR4Owot ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgICAgICAgICAg fQotKwkJZWxzaWYgKC9eLS1zeXN0ZW0tY2lwaGVycy1maWxlPSguKikkLykKLSsJCQl7Ci0rCQkJ JGNvbmZpZ3tzeXN0ZW1fY2lwaGVyc19maWxlfT0kMTsKLSsJCQl9Ci0gICAgICAgICAgICAgICAg IGVsc2lmICgvXi0tY3Jvc3MtY29tcGlsZS1wcmVmaXg9KC4qKSQvKQotICAgICAgICAgICAgICAg ICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAkdXNlcntDUk9TU19DT01QSUxF fT0kMTsKLUBAIC0xMDE2LDYgKzEwMjQsOCBAQCBpZiAoJHRhcmdldCBlcSAiSEFTSCIpIHsKLSAg ICAgZXhpdCAwOwotIH0KLSAKLStjaG9wICRjb25maWd7c3lzdGVtX2NpcGhlcnNfZmlsZX0gaWYg JGNvbmZpZ3tzeXN0ZW1fY2lwaGVyc19maWxlfSA9fiAvXC8kLzsKLSsKLSBwcmludCAiQ29uZmln dXJpbmcgT3BlblNTTCB2ZXJzaW9uICRjb25maWd7dmVyc2lvbn0gKCRjb25maWd7dmVyc2lvbl9u dW19KSAiOwotIHByaW50ICJmb3IgJHRhcmdldFxuIjsKLSAKLWRpZmYgLXVwIG9wZW5zc2wtMS4x LjFjL2RvYy9tYW4xL2NpcGhlcnMucG9kLnN5c3RlbS1jaXBoZXJsaXN0IG9wZW5zc2wtMS4xLjFj L2RvYy9tYW4xL2NpcGhlcnMucG9kCi0tLS0gb3BlbnNzbC0xLjEuMWMvZG9jL21hbjEvY2lwaGVy cy5wb2Quc3lzdGVtLWNpcGhlcmxpc3QJMjAxOS0wNS0yOCAxNToxMjoyMS4wMDAwMDAwMDAgKzAy MDAKLSsrKyBvcGVuc3NsLTEuMS4xYy9kb2MvbWFuMS9jaXBoZXJzLnBvZAkyMDE5LTA1LTI5IDE1 OjQyOjI3Ljk3NTMyODg0OSArMDIwMAotQEAgLTE4Miw2ICsxODIsMTUgQEAgQXMgb2YgT3BlblNT TCAxLjAuMCwgdGhlIEI8QUxMPiBjaXBoZXIgcwotIAotIFRoZSBjaXBoZXIgc3VpdGVzIG5vdCBl bmFibGVkIGJ5IEI8QUxMPiwgY3VycmVudGx5IEI8ZU5VTEw+LgotIAotKz1pdGVtIEI8UFJPRklM RT1TWVNURU0+Ci0rCi0rVGhlIGxpc3Qgb2YgZW5hYmxlZCBjaXBoZXIgc3VpdGVzIHdpbGwgYmUg bG9hZGVkIGZyb20gdGhlIHN5c3RlbSBjcnlwdG8gcG9saWN5Ci0rY29uZmlndXJhdGlvbiBmaWxl IEI8L2V0Yy9jcnlwdG8tcG9saWNpZXMvYmFjay1lbmRzL29wZW5zc2wuY29uZmlnPi4KLStTZWUg YWxzbyBMPHVwZGF0ZS1jcnlwdG8tcG9saWNpZXMoOCk+LgotK1RoaXMgaXMgdGhlIGRlZmF1bHQg YmVoYXZpb3IgdW5sZXNzIGFuIGFwcGxpY2F0aW9uIGV4cGxpY2l0bHkgc2V0cyBhIGNpcGhlcgot K2xpc3QuIElmIHVzZWQgaW4gYSBjaXBoZXIgbGlzdCBjb25maWd1cmF0aW9uIHZhbHVlIHRoaXMg c3RyaW5nIG11c3QgYmUgYXQgdGhlCi0rYmVnaW5uaW5nIG9mIHRoZSBjaXBoZXIgbGlzdCwgb3Ro ZXJ3aXNlIGl0IHdpbGwgbm90IGJlIHJlY29nbml6ZWQuCi0rCi0gPWl0ZW0gQjxISUdIPgotIAot ICJIaWdoIiBlbmNyeXB0aW9uIGNpcGhlciBzdWl0ZXMuIFRoaXMgY3VycmVudGx5IG1lYW5zIHRo b3NlIHdpdGgga2V5IGxlbmd0aHMKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFjL2luY2x1ZGUvb3Bl bnNzbC9zc2wuaC5zeXN0ZW0tY2lwaGVybGlzdCBvcGVuc3NsLTEuMS4xYy9pbmNsdWRlL29wZW5z c2wvc3NsLmgKLS0tLSBvcGVuc3NsLTEuMS4xYy9pbmNsdWRlL29wZW5zc2wvc3NsLmguc3lzdGVt LWNpcGhlcmxpc3QJMjAxOS0wNS0yOCAxNToxMjoyMS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBvcGVu c3NsLTEuMS4xYy9pbmNsdWRlL29wZW5zc2wvc3NsLmgJMjAxOS0wNS0yOSAxNTo0MjoyNy45NzUz Mjg4NDkgKzAyMDAKLUBAIC0xODYsNiArMTg2LDExIEBAIGV4dGVybiAiQyIgewotICAqIHRocm93 aW5nIG91dCBhbm9ueW1vdXMgYW5kIHVuZW5jcnlwdGVkIGNpcGhlcnN1aXRlcyEgKFRoZSBsYXR0 ZXIgYXJlIG5vdAotICAqIGFjdHVhbGx5IGVuYWJsZWQgYnkgQUxMLCBidXQgIkFMTDpSU0EiIHdv dWxkIGVuYWJsZSBzb21lIG9mIHRoZW0uKQotICAqLwotKyMgaWZkZWYgU1lTVEVNX0NJUEhFUlNf RklMRQotKyMgIGRlZmluZSBTU0xfU1lTVEVNX0RFRkFVTFRfQ0lQSEVSX0xJU1QgIlBST0ZJTEU9 U1lTVEVNIgotKyMgZWxzZQotKyMgIGRlZmluZSBTU0xfU1lTVEVNX0RFRkFVTFRfQ0lQSEVSX0xJ U1QgU1NMX0RFRkFVTFRfQ0lQSEVSX0xJU1QKLSsjIGVuZGlmCi0gCi0gLyogVXNlZCBpbiBTU0xf c2V0X3NodXRkb3duKCkvU1NMX2dldF9zaHV0ZG93bigpOyAqLwotICMgZGVmaW5lIFNTTF9TRU5U X1NIVVRET1dOICAgICAgIDEKLWRpZmYgLXVwIG9wZW5zc2wtMS4xLjFjL3NzbC9zc2xfY2lwaC5j LnN5c3RlbS1jaXBoZXJsaXN0IG9wZW5zc2wtMS4xLjFjL3NzbC9zc2xfY2lwaC5jCi0tLS0gb3Bl bnNzbC0xLjEuMWMvc3NsL3NzbF9jaXBoLmMuc3lzdGVtLWNpcGhlcmxpc3QJMjAxOS0wNS0yOCAx NToxMjoyMS4wMDAwMDAwMDAgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xYy9zc2wvc3NsX2NpcGgu YwkyMDE5LTA1LTI5IDE1OjQyOjI3Ljk3NjMyODgzMSArMDIwMAotQEAgLTksNiArOSw4IEBACi0g ICogaHR0cHM6Ly93d3cub3BlbnNzbC5vcmcvc291cmNlL2xpY2Vuc2UuaHRtbAotICAqLwotIAot Ky8qIGZvciBzZWN1cmVfZ2V0ZW52ICovCi0rI2RlZmluZSBfR05VX1NPVVJDRQotICNpbmNsdWRl IDxzdGRpby5oPgotICNpbmNsdWRlIDxjdHlwZS5oPgotICNpbmNsdWRlIDxvcGVuc3NsL29iamVj dHMuaD4KLUBAIC0xMzk5LDYgKzE0MDEsNTMgQEAgaW50IFNTTF9zZXRfY2lwaGVyc3VpdGVzKFNT TCAqcywgY29uc3QgYwotICAgICByZXR1cm4gcmV0OwotIH0KLSAKLSsjaWZkZWYgU1lTVEVNX0NJ UEhFUlNfRklMRQotK3N0YXRpYyBjaGFyICpsb2FkX3N5c3RlbV9zdHIoY29uc3QgY2hhciAqc3Vm Zml4KQotK3sKLSsgICAgRklMRSAqZnA7Ci0rICAgIGNoYXIgYnVmWzEwMjRdOwotKyAgICBjaGFy ICpuZXdfcnVsZXM7Ci0rICAgIGNvbnN0IGNoYXIgKmNpcGhlcnNfcGF0aDsKLSsgICAgdW5zaWdu ZWQgbGVuLCBzbGVuOwotKwotKyAgICBpZiAoKGNpcGhlcnNfcGF0aCA9IHNlY3VyZV9nZXRlbnYo Ik9QRU5TU0xfU1lTVEVNX0NJUEhFUlNfT1ZFUlJJREUiKSkgPT0gTlVMTCkKLSsgICAgICAgIGNp cGhlcnNfcGF0aCA9IFNZU1RFTV9DSVBIRVJTX0ZJTEU7Ci0rICAgIGZwID0gZm9wZW4oY2lwaGVy c19wYXRoLCAiciIpOwotKyAgICBpZiAoZnAgPT0gTlVMTCB8fCBmZ2V0cyhidWYsIHNpemVvZihi dWYpLCBmcCkgPT0gTlVMTCkgewotKyAgICAgICAgLyogY2Fubm90IG9wZW4gb3IgZmlsZSBpcyBl bXB0eSAqLwotKyAgICAgICAgc25wcmludGYoYnVmLCBzaXplb2YoYnVmKSwgIiVzIiwgU1NMX0RF RkFVTFRfQ0lQSEVSX0xJU1QpOwotKyAgICB9Ci0rCi0rICAgIGlmIChmcCkKLSsgICAgICAgIGZj bG9zZShmcCk7Ci0rCi0rICAgIHNsZW4gPSBzdHJsZW4oc3VmZml4KTsKLSsgICAgbGVuID0gc3Ry bGVuKGJ1Zik7Ci0rCi0rICAgIGlmIChidWZbbGVuIC0gMV0gPT0gJ1xuJykgewotKyAgICAgICAg bGVuLS07Ci0rICAgICAgICBidWZbbGVuXSA9IDA7Ci0rICAgIH0KLSsgICAgaWYgKGJ1ZltsZW4g LSAxXSA9PSAnXHInKSB7Ci0rICAgICAgICBsZW4tLTsKLSsgICAgICAgIGJ1ZltsZW5dID0gMDsK LSsgICAgfQotKwotKyAgICBuZXdfcnVsZXMgPSBPUEVOU1NMX21hbGxvYyhsZW4gKyBzbGVuICsg MSk7Ci0rICAgIGlmIChuZXdfcnVsZXMgPT0gMCkKLSsgICAgICAgIHJldHVybiBOVUxMOwotKwot KyAgICBtZW1jcHkobmV3X3J1bGVzLCBidWYsIGxlbik7Ci0rICAgIGlmIChzbGVuID4gMCkgewot KyAgICAgICAgbWVtY3B5KCZuZXdfcnVsZXNbbGVuXSwgc3VmZml4LCBzbGVuKTsKLSsgICAgICAg IGxlbiArPSBzbGVuOwotKyAgICB9Ci0rICAgIG5ld19ydWxlc1tsZW5dID0gMDsKLSsKLSsgICAg cmV0dXJuIG5ld19ydWxlczsKLSt9Ci0rI2VuZGlmCi0rCi0gU1RBQ0tfT0YoU1NMX0NJUEhFUikg KnNzbF9jcmVhdGVfY2lwaGVyX2xpc3QoY29uc3QgU1NMX01FVEhPRCAqc3NsX21ldGhvZCwKLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTVEFDS19PRihTU0xf Q0lQSEVSKSAqdGxzMTNfY2lwaGVyc3VpdGVzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFNUQUNLX09GKFNTTF9DSVBIRVIpICoqY2lwaGVyX2xpc3QsCi1A QCAtMTQxMiwxNSArMTQ2MSwyNSBAQCBTVEFDS19PRihTU0xfQ0lQSEVSKSAqc3NsX2NyZWF0ZV9j aXBoZXJfCi0gICAgIGNvbnN0IGNoYXIgKnJ1bGVfcDsKLSAgICAgQ0lQSEVSX09SREVSICpjb19s aXN0ID0gTlVMTCwgKmhlYWQgPSBOVUxMLCAqdGFpbCA9IE5VTEwsICpjdXJyOwotICAgICBjb25z dCBTU0xfQ0lQSEVSICoqY2FfbGlzdCA9IE5VTEw7Ci0rI2lmZGVmIFNZU1RFTV9DSVBIRVJTX0ZJ TEUKLSsgICAgY2hhciAqbmV3X3J1bGVzID0gTlVMTDsKLSsKLSsgICAgaWYgKHJ1bGVfc3RyICE9 IE5VTEwgJiYgc3RybmNtcChydWxlX3N0ciwgIlBST0ZJTEU9U1lTVEVNIiwgMTQpID09IDApIHsK LSsgICAgICAgIGNoYXIgKnAgPSBydWxlX3N0ciArIDE0OwotKyAgICAKLSsgICAgICAgIG5ld19y dWxlcyA9IGxvYWRfc3lzdGVtX3N0cihwKTsKLSsgICAgICAgIHJ1bGVfc3RyID0gbmV3X3J1bGVz OwotKyAgICB9Ci0rI2VuZGlmCi0gCi0gICAgIC8qCi0gICAgICAqIFJldHVybiB3aXRoIGVycm9y IGlmIG5vdGhpbmcgdG8gZG8uCi0gICAgICAqLwotICAgICBpZiAocnVsZV9zdHIgPT0gTlVMTCB8 fCBjaXBoZXJfbGlzdCA9PSBOVUxMIHx8IGNpcGhlcl9saXN0X2J5X2lkID09IE5VTEwpCi0tICAg ICAgICByZXR1cm4gTlVMTDsKLSsgICAgICAgIGdvdG8gZXJyOwotICNpZm5kZWYgT1BFTlNTTF9O T19FQwotICAgICBpZiAoIWNoZWNrX3N1aXRlYl9jaXBoZXJfbGlzdChzc2xfbWV0aG9kLCBjLCAm cnVsZV9zdHIpKQotLSAgICAgICAgcmV0dXJuIE5VTEw7Ci0rICAgICAgICBnb3RvIGVycjsKLSAj ZW5kaWYKLSAKLSAgICAgLyoKLUBAIC0xNDQzLDcgKzE1MDIsNyBAQCBTVEFDS19PRihTU0xfQ0lQ SEVSKSAqc3NsX2NyZWF0ZV9jaXBoZXJfCi0gICAgIGNvX2xpc3QgPSBPUEVOU1NMX21hbGxvYyhz aXplb2YoKmNvX2xpc3QpICogbnVtX29mX2NpcGhlcnMpOwotICAgICBpZiAoY29fbGlzdCA9PSBO VUxMKSB7Ci0gICAgICAgICBTU0xlcnIoU1NMX0ZfU1NMX0NSRUFURV9DSVBIRVJfTElTVCwgRVJS X1JfTUFMTE9DX0ZBSUxVUkUpOwotLSAgICAgICAgcmV0dXJuIE5VTEw7ICAgICAgICAgIC8qIEZh aWx1cmUgKi8KLSsgICAgICAgIGdvdG8gZXJyOwotICAgICB9Ci0gCi0gICAgIHNzbF9jaXBoZXJf Y29sbGVjdF9jaXBoZXJzKHNzbF9tZXRob2QsIG51bV9vZl9jaXBoZXJzLAotQEAgLTE1MDksOCAr MTU2OCw3IEBAIFNUQUNLX09GKFNTTF9DSVBIRVIpICpzc2xfY3JlYXRlX2NpcGhlcl8KLSAgICAg ICogaW4gZm9yY2Ugd2l0aGluIGVhY2ggY2xhc3MKLSAgICAgICovCi0gICAgIGlmICghc3NsX2Np cGhlcl9zdHJlbmd0aF9zb3J0KCZoZWFkLCAmdGFpbCkpIHsKLS0gICAgICAgIE9QRU5TU0xfZnJl ZShjb19saXN0KTsKLS0gICAgICAgIHJldHVybiBOVUxMOwotKyAgICAgICAgZ290byBlcnI7Ci0g ICAgIH0KLSAKLSAgICAgLyoKLUBAIC0xNTU1LDkgKzE2MTMsOCBAQCBTVEFDS19PRihTU0xfQ0lQ SEVSKSAqc3NsX2NyZWF0ZV9jaXBoZXJfCi0gICAgIG51bV9vZl9hbGlhc19tYXggPSBudW1fb2Zf Y2lwaGVycyArIG51bV9vZl9ncm91cF9hbGlhc2VzICsgMTsKLSAgICAgY2FfbGlzdCA9IE9QRU5T U0xfbWFsbG9jKHNpemVvZigqY2FfbGlzdCkgKiBudW1fb2ZfYWxpYXNfbWF4KTsKLSAgICAgaWYg KGNhX2xpc3QgPT0gTlVMTCkgewotLSAgICAgICAgT1BFTlNTTF9mcmVlKGNvX2xpc3QpOwotICAg ICAgICAgU1NMZXJyKFNTTF9GX1NTTF9DUkVBVEVfQ0lQSEVSX0xJU1QsIEVSUl9SX01BTExPQ19G QUlMVVJFKTsKLS0gICAgICAgIHJldHVybiBOVUxMOyAgICAgICAgICAvKiBGYWlsdXJlICovCi0r ICAgICAgICBnb3RvIGVycjsKLSAgICAgfQotICAgICBzc2xfY2lwaGVyX2NvbGxlY3RfYWxpYXNl cyhjYV9saXN0LCBudW1fb2ZfZ3JvdXBfYWxpYXNlcywKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZGlzYWJsZWRfbWtleSwgZGlzYWJsZWRfYXV0aCwgZGlzYWJsZWRfZW5jLAotQEAg LTE1ODMsOCArMTY0MCw3IEBAIFNUQUNLX09GKFNTTF9DSVBIRVIpICpzc2xfY3JlYXRlX2NpcGhl cl8KLSAgICAgT1BFTlNTTF9mcmVlKGNhX2xpc3QpOyAgICAgIC8qIE5vdCBuZWVkZWQgYW55bW9y ZSAqLwotIAotICAgICBpZiAoIW9rKSB7ICAgICAgICAgICAgICAgICAgLyogUnVsZSBwcm9jZXNz aW5nIGZhaWx1cmUgKi8KLS0gICAgICAgIE9QRU5TU0xfZnJlZShjb19saXN0KTsKLS0gICAgICAg IHJldHVybiBOVUxMOwotKyAgICAgICAgZ290byBlcnI7Ci0gICAgIH0KLSAKLSAgICAgLyoKLUBA IC0xNTkyLDE0ICsxNjQ4LDE4IEBAIFNUQUNLX09GKFNTTF9DSVBIRVIpICpzc2xfY3JlYXRlX2Np cGhlcl8KLSAgICAgICogaWYgd2UgY2Fubm90IGdldCBvbmUuCi0gICAgICAqLwotICAgICBpZiAo KGNpcGhlcnN0YWNrID0gc2tfU1NMX0NJUEhFUl9uZXdfbnVsbCgpKSA9PSBOVUxMKSB7Ci0tICAg ICAgICBPUEVOU1NMX2ZyZWUoY29fbGlzdCk7Ci0tICAgICAgICByZXR1cm4gTlVMTDsKLSsgICAg ICAgIGdvdG8gZXJyOwotICAgICB9Ci0gCi0rI2lmZGVmIFNZU1RFTV9DSVBIRVJTX0ZJTEUKLSsg ICAgT1BFTlNTTF9mcmVlKG5ld19ydWxlcyk7ICAgIC8qIE5vdCBuZWVkZWQgYW55bW9yZSAqLwot KyNlbmRpZgotKwotICAgICAvKiBBZGQgVExTdjEuMyBjaXBoZXJzIGZpcnN0IC0gd2UgYWx3YXlz IHByZWZlciB0aG9zZSBpZiBwb3NzaWJsZSAqLwotICAgICBmb3IgKGkgPSAwOyBpIDwgc2tfU1NM X0NJUEhFUl9udW0odGxzMTNfY2lwaGVyc3VpdGVzKTsgaSsrKSB7Ci0gICAgICAgICBpZiAoIXNr X1NTTF9DSVBIRVJfcHVzaChjaXBoZXJzdGFjaywKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHNrX1NTTF9DSVBIRVJfdmFsdWUodGxzMTNfY2lwaGVyc3VpdGVzLCBpKSkpIHsKLSsg ICAgICAgICAgICBPUEVOU1NMX2ZyZWUoY29fbGlzdCk7Ci0gICAgICAgICAgICAgc2tfU1NMX0NJ UEhFUl9mcmVlKGNpcGhlcnN0YWNrKTsKLSAgICAgICAgICAgICByZXR1cm4gTlVMTDsKLSAgICAg ICAgIH0KLUBAIC0xNjMxLDYgKzE2OTEsMTQgQEAgU1RBQ0tfT0YoU1NMX0NJUEhFUikgKnNzbF9j cmVhdGVfY2lwaGVyXwotICAgICAqY2lwaGVyX2xpc3QgPSBjaXBoZXJzdGFjazsKLSAKLSAgICAg cmV0dXJuIGNpcGhlcnN0YWNrOwotKwotK2VycjoKLSsgICAgT1BFTlNTTF9mcmVlKGNvX2xpc3Qp OwotKyNpZmRlZiBTWVNURU1fQ0lQSEVSU19GSUxFCi0rICAgIE9QRU5TU0xfZnJlZShuZXdfcnVs ZXMpOwotKyNlbmRpZgotKyAgICByZXR1cm4gTlVMTDsKLSsgIAotIH0KLSAKLSBjaGFyICpTU0xf Q0lQSEVSX2Rlc2NyaXB0aW9uKGNvbnN0IFNTTF9DSVBIRVIgKmNpcGhlciwgY2hhciAqYnVmLCBp bnQgbGVuKQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWMvc3NsL3NzbF9saWIuYy5zeXN0ZW0tY2lw aGVybGlzdCBvcGVuc3NsLTEuMS4xYy9zc2wvc3NsX2xpYi5jCi0tLS0gb3BlbnNzbC0xLjEuMWMv c3NsL3NzbF9saWIuYy5zeXN0ZW0tY2lwaGVybGlzdAkyMDE5LTA1LTI5IDE1OjQyOjI3Ljk3MDMy ODkzNyArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFjL3NzbC9zc2xfbGliLmMJMjAxOS0wNS0yOSAx NTo0MjoyNy45NzczMjg4MTQgKzAyMDAKLUBAIC02NjIsNyArNjYyLDcgQEAgaW50IFNTTF9DVFhf c2V0X3NzbF92ZXJzaW9uKFNTTF9DVFggKmN0eAotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY3R4LT50bHMxM19jaXBoZXJzdWl0ZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAmKGN0eC0+Y2lwaGVyX2xpc3QpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgJihjdHgtPmNpcGhlcl9saXN0X2J5X2lkKSwKLS0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFNTTF9ERUZBVUxUX0NJUEhFUl9MSVNULCBjdHgtPmNlcnQpOwotKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgU1NMX1NZU1RFTV9ERUZBVUxUX0NJUEhFUl9MSVNULCBj dHgtPmNlcnQpOwotICAgICBpZiAoKHNrID09IE5VTEwpIHx8IChza19TU0xfQ0lQSEVSX251bShz aykgPD0gMCkpIHsKLSAgICAgICAgIFNTTGVycihTU0xfRl9TU0xfQ1RYX1NFVF9TU0xfVkVSU0lP TiwgU1NMX1JfU1NMX0xJQlJBUllfSEFTX05PX0NJUEhFUlMpOwotICAgICAgICAgcmV0dXJuIDA7 Ci1AQCAtMjk1NCw3ICsyOTU0LDcgQEAgU1NMX0NUWCAqU1NMX0NUWF9uZXcoY29uc3QgU1NMX01F VEhPRCAqbQotICAgICBpZiAoIXNzbF9jcmVhdGVfY2lwaGVyX2xpc3QocmV0LT5tZXRob2QsCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXQtPnRsczEzX2NpcGhlcnN1aXRlcywK LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZyZXQtPmNpcGhlcl9saXN0LCAmcmV0 LT5jaXBoZXJfbGlzdF9ieV9pZCwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNT TF9ERUZBVUxUX0NJUEhFUl9MSVNULCByZXQtPmNlcnQpCi0rICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBTU0xfU1lTVEVNX0RFRkFVTFRfQ0lQSEVSX0xJU1QsIHJldC0+Y2VydCkKLSAg ICAgICAgIHx8IHNrX1NTTF9DSVBIRVJfbnVtKHJldC0+Y2lwaGVyX2xpc3QpIDw9IDApIHsKLSAg ICAgICAgIFNTTGVycihTU0xfRl9TU0xfQ1RYX05FVywgU1NMX1JfTElCUkFSWV9IQVNfTk9fQ0lQ SEVSUyk7Ci0gICAgICAgICBnb3RvIGVycjI7Ci1kaWZmIC11cCBvcGVuc3NsLTEuMS4xYy90ZXN0 L2NpcGhlcmxpc3RfdGVzdC5jLnN5c3RlbS1jaXBoZXJsaXN0IG9wZW5zc2wtMS4xLjFjL3Rlc3Qv Y2lwaGVybGlzdF90ZXN0LmMKLS0tLSBvcGVuc3NsLTEuMS4xYy90ZXN0L2NpcGhlcmxpc3RfdGVz dC5jLnN5c3RlbS1jaXBoZXJsaXN0CTIwMTktMDUtMjggMTU6MTI6MjEuMDAwMDAwMDAwICswMjAw Ci0rKysgb3BlbnNzbC0xLjEuMWMvdGVzdC9jaXBoZXJsaXN0X3Rlc3QuYwkyMDE5LTA1LTI5IDE1 OjQyOjI3Ljk3NzMyODgxNCArMDIwMAotQEAgLTI1MSw3ICsyNTEsOSBAQCBlbmQ6Ci0gCi0gaW50 IHNldHVwX3Rlc3RzKHZvaWQpCi0gewotKyNpZm5kZWYgU1lTVEVNX0NJUEhFUlNfRklMRQotICAg ICBBRERfVEVTVCh0ZXN0X2RlZmF1bHRfY2lwaGVybGlzdF9pbXBsaWNpdCk7Ci0rI2VuZGlmCi0g ICAgIEFERF9URVNUKHRlc3RfZGVmYXVsdF9jaXBoZXJsaXN0X2V4cGxpY2l0KTsKLSAgICAgQURE X1RFU1QodGVzdF9kZWZhdWx0X2NpcGhlcmxpc3RfY2xlYXIpOwotICAgICByZXR1cm4gMTsKCmRp ZmYgLS1naXQgYS9vcGVuc3NsLTEuMS4xLXRzLXNoYTI1Ni1kZWZhdWx0LnBhdGNoIGIvb3BlbnNz bC0xLjEuMS10cy1zaGEyNTYtZGVmYXVsdC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMmExZGQ2Yy4uMDAwMDAwMAotLS0gYS9vcGVuc3NsLTEuMS4xLXRzLXNoYTI1Ni1kZWZh dWx0LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNzAgKzAsMCBAQAotZGlmZiAtdXAgb3BlbnNz bC0xLjEuMWgvYXBwcy9vcGVuc3NsLmNuZi50cy1zaGEyNTYtZGVmYXVsdCBvcGVuc3NsLTEuMS4x aC9hcHBzL29wZW5zc2wuY25mCi0tLS0gb3BlbnNzbC0xLjEuMWgvYXBwcy9vcGVuc3NsLmNuZi50 cy1zaGEyNTYtZGVmYXVsdAkyMDIwLTExLTA2IDExOjA3OjI4Ljg1MDEwMDg5OSArMDEwMAotKysr IG9wZW5zc2wtMS4xLjFoL2FwcHMvb3BlbnNzbC5jbmYJMjAyMC0xMS0wNiAxMToxMToyOC4wNDI5 MTM3OTEgKzAxMDAKLUBAIC0zNjQsNSArMzQ4LDUgQEAgdHNhX25hbWUJCT0geWVzCSMgTXVzdCB0 aGUgVFNBIG5hbWUgYmUgaQotIAkJCQkjIChvcHRpb25hbCwgZGVmYXVsdDogbm8pCi0gZXNzX2Nl cnRfaWRfY2hhaW4JPSBubwkjIE11c3QgdGhlIEVTUyBjZXJ0IGlkIGNoYWluIGJlIGluY2x1ZGVk PwotIAkJCQkjIChvcHRpb25hbCwgZGVmYXVsdDogbm8pCi0tZXNzX2NlcnRfaWRfYWxnCQk9IHNo YTEJIyBhbGdvcml0aG0gdG8gY29tcHV0ZSBjZXJ0aWZpY2F0ZQotK2Vzc19jZXJ0X2lkX2FsZwkJ PSBzaGEyNTYJIyBhbGdvcml0aG0gdG8gY29tcHV0ZSBjZXJ0aWZpY2F0ZQotIAkJCQkjIGlkZW50 aWZpZXIgKG9wdGlvbmFsLCBkZWZhdWx0OiBzaGExKQotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWgv YXBwcy90cy5jLnRzLXNoYTI1Ni1kZWZhdWx0IG9wZW5zc2wtMS4xLjFoL2FwcHMvdHMuYwotLS0t IG9wZW5zc2wtMS4xLjFoL2FwcHMvdHMuYy50cy1zaGEyNTYtZGVmYXVsdAkyMDIwLTA5LTIyIDE0 OjU1OjA3LjAwMDAwMDAwMCArMDIwMAotKysrIG9wZW5zc2wtMS4xLjFoL2FwcHMvdHMuYwkyMDIw LTExLTA2IDExOjA3OjI4Ljg4MzEwMTIyMCArMDEwMAotQEAgLTQyMyw3ICs0MjMsNyBAQCBzdGF0 aWMgVFNfUkVRICpjcmVhdGVfcXVlcnkoQklPICpkYXRhX2JpCi0gICAgIEFTTjFfT0JKRUNUICpw b2xpY3lfb2JqID0gTlVMTDsKLSAgICAgQVNOMV9JTlRFR0VSICpub25jZV9hc24xID0gTlVMTDsK LSAKLS0gICAgaWYgKG1kID09IE5VTEwgJiYgKG1kID0gRVZQX2dldF9kaWdlc3RieW5hbWUoInNo YTEiKSkgPT0gTlVMTCkKLSsgICAgaWYgKG1kID09IE5VTEwgJiYgKG1kID0gRVZQX2dldF9kaWdl c3RieW5hbWUoInNoYTI1NiIpKSA9PSBOVUxMKQotICAgICAgICAgZ290byBlcnI7Ci0gICAgIGlm ICgodHNfcmVxID0gVFNfUkVRX25ldygpKSA9PSBOVUxMKQotICAgICAgICAgZ290byBlcnI7Ci1k aWZmIC11cCBvcGVuc3NsLTEuMS4xaC9jcnlwdG8vdHMvdHNfY29uZi5jLnRzLXNoYTI1Ni1kZWZh dWx0IG9wZW5zc2wtMS4xLjFoL2NyeXB0by90cy90c19jb25mLmMKLS0tLSBvcGVuc3NsLTEuMS4x aC9jcnlwdG8vdHMvdHNfY29uZi5jLnRzLXNoYTI1Ni1kZWZhdWx0CTIwMjAtMTEtMDYgMTI6MDM6 NTEuMjI2MzcyODY3ICswMTAwCi0rKysgb3BlbnNzbC0xLjEuMWgvY3J5cHRvL3RzL3RzX2NvbmYu YwkyMDIwLTExLTA2IDEyOjA0OjAxLjcxMzQ4ODk5MCArMDEwMAotQEAgLTQ3Niw3ICs0NzYsNyBA QCBpbnQgVFNfQ09ORl9zZXRfZXNzX2NlcnRfaWRfZGlnZXN0KENPTkYKLSAgICAgY29uc3QgY2hh ciAqbWQgPSBOQ09ORl9nZXRfc3RyaW5nKGNvbmYsIHNlY3Rpb24sIEVOVl9FU1NfQ0VSVF9JRF9B TEcpOwotIAotICAgICBpZiAobWQgPT0gTlVMTCkKLS0gICAgICAgIG1kID0gInNoYTEiOwotKyAg ICAgICAgbWQgPSAic2hhMjU2IjsKLSAKLSAgICAgY2VydF9tZCA9IEVWUF9nZXRfZGlnZXN0Ynlu YW1lKG1kKTsKLSAgICAgaWYgKGNlcnRfbWQgPT0gTlVMTCkgewotZGlmZiAtdXAgb3BlbnNzbC0x LjEuMWgvZG9jL21hbjEvdHMucG9kLnRzLXNoYTI1Ni1kZWZhdWx0IG9wZW5zc2wtMS4xLjFoL2Rv Yy9tYW4xL3RzLnBvZAotLS0tIG9wZW5zc2wtMS4xLjFoL2RvYy9tYW4xL3RzLnBvZC50cy1zaGEy NTYtZGVmYXVsdAkyMDIwLTA5LTIyIDE0OjU1OjA3LjAwMDAwMDAwMCArMDIwMAotKysrIG9wZW5z c2wtMS4xLjFoL2RvYy9tYW4xL3RzLnBvZAkyMDIwLTExLTA2IDExOjA3OjI4Ljg4MzEwMTIyMCAr MDEwMAotQEAgLTUxOCw3ICs1MTgsNyBAQCBpbmNsdWRlZC4gRGVmYXVsdCBpcyBuby4gKE9wdGlv bmFsKQotID1pdGVtIEI8ZXNzX2NlcnRfaWRfYWxnPgotIAotIFRoaXMgb3B0aW9uIHNwZWNpZmll cyB0aGUgaGFzaCBmdW5jdGlvbiB0byBiZSB1c2VkIHRvIGNhbGN1bGF0ZSB0aGUgVFNBJ3MKLS1w dWJsaWMga2V5IGNlcnRpZmljYXRlIGlkZW50aWZpZXIuIERlZmF1bHQgaXMgc2hhMS4gKE9wdGlv bmFsKQotK3B1YmxpYyBrZXkgY2VydGlmaWNhdGUgaWRlbnRpZmllci4gRGVmYXVsdCBpcyBzaGEy NTYuIChPcHRpb25hbCkKLSAKLSA9YmFjawotIAotQEAgLTUzMCw3ICs1MzAsNyBAQCBvcGVuc3Ns L2FwcHMvb3BlbnNzbC5jbmYgd2lsbCBkby4KLSAKLSA9aGVhZDIgVGltZSBTdGFtcCBSZXF1ZXN0 Ci0gCi0tVG8gY3JlYXRlIGEgdGltZXN0YW1wIHJlcXVlc3QgZm9yIGRlc2lnbjEudHh0IHdpdGgg U0hBLTEKLStUbyBjcmVhdGUgYSB0aW1lc3RhbXAgcmVxdWVzdCBmb3IgZGVzaWduMS50eHQgd2l0 aCBTSEEtMjU2Ci0gd2l0aG91dCBub25jZSBhbmQgcG9saWN5IGFuZCBubyBjZXJ0aWZpY2F0ZSBp cyByZXF1aXJlZCBpbiB0aGUgcmVzcG9uc2U6Ci0gCi0gICBvcGVuc3NsIHRzIC1xdWVyeSAtZGF0 YSBkZXNpZ24xLnR4dCAtbm9fbm9uY2UgXAotQEAgLTU0NiwxMiArNTQ2LDEyIEBAIFRvIHByaW50 IHRoZSBjb250ZW50IG9mIHRoZSBwcmV2aW91cyByZXEKLSAKLSAgIG9wZW5zc2wgdHMgLXF1ZXJ5 IC1pbiBkZXNpZ24xLnRzcSAtdGV4dAotIAotLVRvIGNyZWF0ZSBhIHRpbWVzdGFtcCByZXF1ZXN0 IHdoaWNoIGluY2x1ZGVzIHRoZSBNRC01IGRpZ2VzdAotK1RvIGNyZWF0ZSBhIHRpbWVzdGFtcCBy ZXF1ZXN0IHdoaWNoIGluY2x1ZGVzIHRoZSBTSEEtNTEyIGRpZ2VzdAotIG9mIGRlc2lnbjIudHh0 LCByZXF1ZXN0cyB0aGUgc2lnbmVyIGNlcnRpZmljYXRlIGFuZCBub25jZSwKLSBzcGVjaWZpZXMg YSBwb2xpY3kgaWQgKGFzc3VtaW5nIHRoZSB0c2FfcG9saWN5MSBuYW1lIGlzIGRlZmluZWQgaW4g dGhlCi0gT0lEIHNlY3Rpb24gb2YgdGhlIGNvbmZpZyBmaWxlKToKLSAKLS0gIG9wZW5zc2wgdHMg LXF1ZXJ5IC1kYXRhIGRlc2lnbjIudHh0IC1tZDUgXAotKyAgb3BlbnNzbCB0cyAtcXVlcnkgLWRh dGEgZGVzaWduMi50eHQgLXNoYTUxMiBcCi0gICAgICAgICAtdHNwb2xpY3kgdHNhX3BvbGljeTEg LWNlcnQgLW91dCBkZXNpZ24yLnRzcQotIAotID1oZWFkMiBUaW1lIFN0YW1wIFJlc3BvbnNlCgpk aWZmIC0tZ2l0IGEvb3BlbnNzbC0xLjEuMS12ZXJzaW9uLWFkZC1lbmdpbmVzLnBhdGNoIGIvb3Bl bnNzbC0xLjEuMS12ZXJzaW9uLWFkZC1lbmdpbmVzLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAzYzNmNThlLi4wMDAwMDAwCi0tLSBhL29wZW5zc2wtMS4xLjEtdmVyc2lvbi1h ZGQtZW5naW5lcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDM4ICswLDAgQEAKLWRpZmYgLXVw IG9wZW5zc2wtMS4xLjEtcHJlOC9hcHBzL3ZlcnNpb24uYy52ZXJzaW9uLWFkZC1lbmdpbmVzIG9w ZW5zc2wtMS4xLjEtcHJlOC9hcHBzL3ZlcnNpb24uYwotLS0tIG9wZW5zc2wtMS4xLjEtcHJlOC9h cHBzL3ZlcnNpb24uYy52ZXJzaW9uLWFkZC1lbmdpbmVzCTIwMTgtMDYtMjAgMTY6NDg6MDkuMDAw MDAwMDAwICswMjAwCi0rKysgb3BlbnNzbC0xLjEuMS1wcmU4L2FwcHMvdmVyc2lvbi5jCTIwMTgt MDctMTYgMTg6MDA6NDAuNjA4NjI0MzQ2ICswMjAwCi1AQCAtNjQsNyArNjQsNyBAQCBpbnQgdmVy c2lvbl9tYWluKGludCBhcmdjLCBjaGFyICoqYXJndikKLSB7Ci0gICAgIGludCByZXQgPSAxLCBk aXJ0eSA9IDAsIHNlZWQgPSAwOwotICAgICBpbnQgY2ZsYWdzID0gMCwgdmVyc2lvbiA9IDAsIGRh dGUgPSAwLCBvcHRpb25zID0gMCwgcGxhdGZvcm0gPSAwLCBkaXIgPSAwOwotLSAgICBpbnQgZW5n ZGlyID0gMDsKLSsgICAgaW50IGVuZ2RpciA9IDAsIGVuZ2luZXMgPSAwOwotICAgICBjaGFyICpw cm9nOwotICAgICBPUFRJT05fQ0hPSUNFIG87Ci0gCi1AQCAtMTA2LDcgKzEwNiw3IEBAIG9wdGhl bHA6Ci0gICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICBjYXNlIE9QVF9BOgotICAgICAgICAg ICAgIHNlZWQgPSBvcHRpb25zID0gY2ZsYWdzID0gdmVyc2lvbiA9IGRhdGUgPSBwbGF0Zm9ybSA9 IGRpciA9IGVuZ2RpcgotLSAgICAgICAgICAgICAgICA9IDE7Ci0rICAgICAgICAgICAgICAgID0g ZW5naW5lcyA9IDE7Ci0gICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICB9Ci0gICAgIH0KLUBA IC0xODgsNiArMTg4LDE2IEBAIG9wdGhlbHA6Ci0gI2VuZGlmCi0gICAgICAgICBwcmludGYoIlxu Iik7Ci0gICAgIH0KLSsgICAgaWYgKGVuZ2luZXMpIHsKLSsgICAgICAgIEVOR0lORSAqZTsKLSsg ICAgICAgIHByaW50ZigiZW5naW5lczogICIpOwotKyAgICAgICAgZSA9IEVOR0lORV9nZXRfZmly c3QoKTsKLSsgICAgICAgIHdoaWxlIChlKSB7Ci0rICAgICAgICAgICAgcHJpbnRmKCIlcyAiLCBF TkdJTkVfZ2V0X2lkKGUpKTsKLSsgICAgICAgICAgICBlID0gRU5HSU5FX2dldF9uZXh0KGUpOwot KyAgICAgICAgfQotKyAgICAgICAgcHJpbnRmKCJcbiIpOwotKyAgICB9Ci0gICAgIHJldCA9IDA7 Ci0gIGVuZDoKLSAgICAgcmV0dXJuIHJldDsKCmRpZmYgLS1naXQgYS9vcGVuc3NsLTEuMS4xLXZl cnNpb24tb3ZlcnJpZGUucGF0Y2ggYi9vcGVuc3NsLTEuMS4xLXZlcnNpb24tb3ZlcnJpZGUucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGI4OWViYzYuLjAwMDAwMDAKLS0tIGEv b3BlbnNzbC0xLjEuMS12ZXJzaW9uLW92ZXJyaWRlLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEs MTIgKzAsMCBAQAotZGlmZiAtdXAgb3BlbnNzbC0xLjEuMWkvaW5jbHVkZS9vcGVuc3NsL29wZW5z c2x2LmgudmVyc2lvbi1vdmVycmlkZSBvcGVuc3NsLTEuMS4xaS9pbmNsdWRlL29wZW5zc2wvb3Bl bnNzbHYuaAotLS0tIG9wZW5zc2wtMS4xLjFpL2luY2x1ZGUvb3BlbnNzbC9vcGVuc3Nsdi5oLnZl cnNpb24tb3ZlcnJpZGUJMjAyMC0xMi0wOSAxMDoyNToxMi4wNDIzNzQ0MDkgKzAxMDAKLSsrKyBv cGVuc3NsLTEuMS4xaS9pbmNsdWRlL29wZW5zc2wvb3BlbnNzbHYuaAkyMDIwLTEyLTA5IDEwOjI2 OjAwLjM2Mjc2OTE3MCArMDEwMAotQEAgLTQwLDcgKzQwLDcgQEAgZXh0ZXJuICJDIiB7Ci0gICog IG1ham9yIG1pbm9yIGZpeCBmaW5hbCBwYXRjaC9iZXRhKQotICAqLwotICMgZGVmaW5lIE9QRU5T U0xfVkVSU0lPTl9OVU1CRVIgIDB4MTAxMDEwYmZMCi0tIyBkZWZpbmUgT1BFTlNTTF9WRVJTSU9O X1RFWFQgICAgIk9wZW5TU0wgMS4xLjFrICAyNSBNYXIgMjAyMSIKLSsjIGRlZmluZSBPUEVOU1NM X1ZFUlNJT05fVEVYVCAgICAiT3BlblNTTCAxLjEuMWsgIEZJUFMgMjUgTWFyIDIwMjEiCi0gCi0g LyotCi0gICogVGhlIG1hY3JvcyBiZWxvdyBhcmUgdG8gYmUgdXNlZCBmb3Igc2hhcmVkIGxpYnJh cnkgKC5zbywgLmRsbCwgLi4uKQoKZGlmZiAtLWdpdCBhL29wZW5zc2wtMS4xLjEtd2Vhay1jaXBo ZXJzLnBhdGNoIGIvb3BlbnNzbC0xLjEuMS13ZWFrLWNpcGhlcnMucGF0Y2gKZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwODM2NDMuLjAwMDAwMDAKLS0tIGEvb3BlbnNzbC0xLjEuMS13 ZWFrLWNpcGhlcnMucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw1NyArMCwwIEBACi1kaWZmIC11 cCBvcGVuc3NsLTEuMS4xL3NzbC9zM19saWIuYy53ZWFrLWNpcGhlcnMgb3BlbnNzbC0xLjEuMS9z c2wvczNfbGliLmMKLS0tLSBvcGVuc3NsLTEuMS4xL3NzbC9zM19saWIuYy53ZWFrLWNpcGhlcnMJ MjAxOC0wOS0xMSAxNDo0ODoyMy4wMDAwMDAwMDAgKzAyMDAKLSsrKyBvcGVuc3NsLTEuMS4xL3Nz bC9zM19saWIuYwkyMDE4LTA5LTE3IDEyOjUzOjMzLjg1MDYzNzE4MSArMDIwMAotQEAgLTI2MTIs NyArMjYxMiw3IEBAIHN0YXRpYyBTU0xfQ0lQSEVSIHNzbDNfY2lwaGVyc1tdID0gewotICAgICAg U1NMX0dPU1Q4OU1BQywKLSAgICAgIFRMUzFfVkVSU0lPTiwgVExTMV8yX1ZFUlNJT04sCi0gICAg ICAwLCAwLAotLSAgICAgU1NMX0hJR0gsCi0rICAgICBTU0xfTUVESVVNLAotICAgICAgU1NMX0hB TkRTSEFLRV9NQUNfR09TVDk0IHwgVExTMV9QUkZfR09TVDk0IHwgVExTMV9TVFJFQU1fTUFDLAot ICAgICAgMjU2LAotICAgICAgMjU2LAotQEAgLTI2NDQsNyArMjY0NCw3IEBAIHN0YXRpYyBTU0xf Q0lQSEVSIHNzbDNfY2lwaGVyc1tdID0gewotICAgICAgU1NMX0dPU1Q4OU1BQzEyLAotICAgICAg VExTMV9WRVJTSU9OLCBUTFMxXzJfVkVSU0lPTiwKLSAgICAgIDAsIDAsCi0tICAgICBTU0xfSElH SCwKLSsgICAgIFNTTF9NRURJVU0sCi0gICAgICBTU0xfSEFORFNIQUtFX01BQ19HT1NUMTJfMjU2 IHwgVExTMV9QUkZfR09TVDEyXzI1NiB8IFRMUzFfU1RSRUFNX01BQywKLSAgICAgIDI1NiwKLSAg ICAgIDI1NiwKLUBAIC0yNzUzLDcgKzI3NTMsNyBAQCBzdGF0aWMgU1NMX0NJUEhFUiBzc2wzX2Np cGhlcnNbXSA9IHsKLSAgICAgIH0sCi0gI2VuZGlmICAgICAgICAgICAgICAgICAgICAgICAgICAv KiBPUEVOU1NMX05PX1NFRUQgKi8KLSAKLS0jaWZuZGVmIE9QRU5TU0xfTk9fV0VBS19TU0xfQ0lQ SEVSUwotKyNpZiAwIC8qIE5vIE1ENSBjaXBoZXJzdWl0ZXMgKi8KLSAgICAgewotICAgICAgMSwK LSAgICAgIFNTTDNfVFhUX1JTQV9SQzRfMTI4X01ENSwKLUBAIC0yNzcwLDYgKzI3NzAsOCBAQCBz dGF0aWMgU1NMX0NJUEhFUiBzc2wzX2NpcGhlcnNbXSA9IHsKLSAgICAgIDEyOCwKLSAgICAgIDEy OCwKLSAgICAgIH0sCi0rI2VuZGlmCi0rI2lmbmRlZiBPUEVOU1NMX05PX1dFQUtfU1NMX0NJUEhF UlMKLSAgICAgewotICAgICAgMSwKLSAgICAgIFNTTDNfVFhUX1JTQV9SQzRfMTI4X1NIQSwKLUBA IC0yNzg2LDYgKzI3ODgsOCBAQCBzdGF0aWMgU1NMX0NJUEhFUiBzc2wzX2NpcGhlcnNbXSA9IHsK LSAgICAgIDEyOCwKLSAgICAgIDEyOCwKLSAgICAgIH0sCi0rI2VuZGlmCi0rI2lmIDAKLSAgICAg ewotICAgICAgMSwKLSAgICAgIFNTTDNfVFhUX0FESF9SQzRfMTI4X01ENSwKLUBAIC0yODAyLDYg KzI4MDYsOCBAQCBzdGF0aWMgU1NMX0NJUEhFUiBzc2wzX2NpcGhlcnNbXSA9IHsKLSAgICAgIDEy OCwKLSAgICAgIDEyOCwKLSAgICAgIH0sCi0rI2VuZGlmCi0rI2lmbmRlZiBPUEVOU1NMX05PX1dF QUtfU1NMX0NJUEhFUlMKLSAgICAgewotICAgICAgMSwKLSAgICAgIFRMUzFfVFhUX0VDREhFX1BT S19XSVRIX1JDNF8xMjhfU0hBLAoKZGlmZiAtLWdpdCBhL29wZW5zc2wuc3BlYyBiL29wZW5zc2wu c3BlYwppbmRleCA2ZjcyNjJjLi5kMmY0MjIzIDEwMDY0NAotLS0gYS9vcGVuc3NsLnNwZWMKKysr IGIvb3BlbnNzbC5zcGVjCkBAIC0xLDE3ICsxLDEwIEBACiAjIEZvciB0aGUgY3VyaW91czoKLSMg MC45LjVhIHNvdmVyc2lvbiA9IDAKLSMgMC45LjYgIHNvdmVyc2lvbiA9IDEKLSMgMC45LjZhIHNv dmVyc2lvbiA9IDIKLSMgMC45LjZjIHNvdmVyc2lvbiA9IDMKLSMgMC45LjdhIHNvdmVyc2lvbiA9 IDQKLSMgMC45LjdlZiBzb3ZlcnNpb24gPSA1Ci0jIDAuOS44YWIgc292ZXJzaW9uID0gNgotIyAw LjkuOGcgc292ZXJzaW9uID0gNwogIyAwLjkuOGprICsgRUFQLUZBU1Qgc292ZXJzaW9uID0gOAog IyAxLjAuMCBzb3ZlcnNpb24gPSAxMAogIyAxLjEuMCBzb3ZlcnNpb24gPSAxLjEgKHNhbWUgYXMg dXBzdHJlYW0gYWx0aG91Z2ggcHJlc2VuY2Ugb2Ygc29tZSBzeW1ib2xzCiAjICAgICAgICAgICAg ICAgICAgICAgICAgZGVwZW5kcyBvbiBidWlsZCBjb25maWd1cmF0aW9uIG9wdGlvbnMpCi0lZGVm aW5lIHNvdmVyc2lvbiAxLjEKKyMgMy4wLjAgc292ZXJzaW9uID0gMyAoc2FtZSBhcyB1cHN0cmVh bSkKKyVkZWZpbmUgc292ZXJzaW9uIDMKIAogIyBBcmNoZXMgb24gd2hpY2ggd2UgbmVlZCB0byBw cmV2ZW50IGFyY2ggY29uZmxpY3RzIG9uIG9wZW5zc2xjb25mLmgsIG11c3QKICMgYWxzbyBiZSBo YW5kbGVkIGluIG9wZW5zc2xjb25mLW5ldy5oLgpAQCAtMjEsOCArMTQsOCBAQAogCiBTdW1tYXJ5 OiBVdGlsaXRpZXMgZnJvbSB0aGUgZ2VuZXJhbCBwdXJwb3NlIGNyeXB0b2dyYXBoeSBsaWJyYXJ5 IHdpdGggVExTIGltcGxlbWVudGF0aW9uCiBOYW1lOiBvcGVuc3NsCi1WZXJzaW9uOiAxLjEuMWsK LVJlbGVhc2U6IDIlez9kaXN0fQorVmVyc2lvbjogMy4wLjAKK1JlbGVhc2U6IDElez9kaXN0fQog RXBvY2g6IDEKICMgV2UgaGF2ZSB0byByZW1vdmUgY2VydGFpbiBwYXRlbnRlZCBhbGdvcml0aG1z IGZyb20gdGhlIG9wZW5zc2wgc291cmNlCiAjIHRhcmJhbGwgd2l0aCB0aGUgaG9iYmxlLW9wZW5z c2wgc2NyaXB0IHdoaWNoIGlzIGluY2x1ZGVkIGJlbG93LgpAQCAtMzAsNTQgKzIzLDQwIEBAIEVw b2NoOiAxCiBTb3VyY2U6IG9wZW5zc2wtJXt2ZXJzaW9ufS1ob2JibGVkLnRhci54egogU291cmNl MTogaG9iYmxlLW9wZW5zc2wKIFNvdXJjZTI6IE1ha2VmaWxlLmNlcnRpZmljYXRlCitTb3VyY2Uz OiBnZW5wYXRjaGVzCiBTb3VyY2U2OiBtYWtlLWR1bW15LWNlcnQKIFNvdXJjZTc6IHJlbmV3LWR1 bW15LWNlcnQKLVNvdXJjZTk6IG9wZW5zc2xjb25mLW5ldy5oCi1Tb3VyY2UxMDogb3BlbnNzbGNv bmYtbmV3LXdhcm5pbmcuaAotU291cmNlMTE6IFJFQURNRS5GSVBTCitTb3VyY2U5OiBjb25maWd1 cmF0aW9uLXN3aXRjaC5oCitTb3VyY2UxMDogY29uZmlndXJhdGlvbi1wcmVmaXguaAogU291cmNl MTI6IGVjX2N1cnZlLmMKIFNvdXJjZTEzOiBlY3Rlc3QuYwotIyBCdWlsZCBjaGFuZ2VzCi1QYXRj aDE6IG9wZW5zc2wtMS4xLjEtYnVpbGQucGF0Y2gKLVBhdGNoMjogb3BlbnNzbC0xLjEuMS1kZWZh dWx0cy5wYXRjaAotUGF0Y2gzOiBvcGVuc3NsLTEuMS4xLW5vLWh0bWwucGF0Y2gKLVBhdGNoNDog b3BlbnNzbC0xLjEuMS1tYW4tcmVuYW1lLnBhdGNoCiAKLSMgRnVuY3Rpb25hbGl0eSBjaGFuZ2Vz Ci1QYXRjaDMxOiBvcGVuc3NsLTEuMS4xLWNvbmYtcGF0aHMucGF0Y2gKLVBhdGNoMzI6IG9wZW5z c2wtMS4xLjEtdmVyc2lvbi1hZGQtZW5naW5lcy5wYXRjaAotUGF0Y2gzMzogb3BlbnNzbC0xLjEu MS1hcHBzLWRnc3QucGF0Y2gKLVBhdGNoMzY6IG9wZW5zc2wtMS4xLjEtbm8tYnJhaW5wb29sLnBh dGNoCi1QYXRjaDM3OiBvcGVuc3NsLTEuMS4xLWVjLWN1cnZlcy5wYXRjaAotUGF0Y2gzODogb3Bl bnNzbC0xLjEuMS1uby13ZWFrLXZlcmlmeS5wYXRjaAotUGF0Y2g0MDogb3BlbnNzbC0xLjEuMS1k aXNhYmxlLXNzbDMucGF0Y2gKLVBhdGNoNDE6IG9wZW5zc2wtMS4xLjEtc3lzdGVtLWNpcGhlcmxp c3QucGF0Y2gKLVBhdGNoNDI6IG9wZW5zc2wtMS4xLjEtZmlwcy5wYXRjaAotUGF0Y2g0NDogb3Bl bnNzbC0xLjEuMS12ZXJzaW9uLW92ZXJyaWRlLnBhdGNoCi1QYXRjaDQ1OiBvcGVuc3NsLTEuMS4x LXdlYWstY2lwaGVycy5wYXRjaAotUGF0Y2g0Njogb3BlbnNzbC0xLjEuMS1zZWNsZXZlbC5wYXRj aAotUGF0Y2g0Nzogb3BlbnNzbC0xLjEuMS10cy1zaGEyNTYtZGVmYXVsdC5wYXRjaAotUGF0Y2g0 ODogb3BlbnNzbC0xLjEuMS1maXBzLXBvc3QtcmFuZC5wYXRjaAotUGF0Y2g0OTogb3BlbnNzbC0x LjEuMS1ldnAta2RmLnBhdGNoCi1QYXRjaDUwOiBvcGVuc3NsLTEuMS4xLXNzaC1rZGYucGF0Y2gK LVBhdGNoNTE6IG9wZW5zc2wtMS4xLjEtaW50ZWwtY2V0LnBhdGNoCi1QYXRjaDYwOiBvcGVuc3Ns LTEuMS4xLWtyYjUta2RmLnBhdGNoCi1QYXRjaDYxOiBvcGVuc3NsLTEuMS4xLWVkazItYnVpbGQu cGF0Y2gKLVBhdGNoNjI6IG9wZW5zc2wtMS4xLjEtZmlwcy1jdXJ2ZXMucGF0Y2gKLVBhdGNoNjU6 IG9wZW5zc2wtMS4xLjEtZmlwcy1kcmJnLXNlbGZ0ZXN0LnBhdGNoCi1QYXRjaDY2OiBvcGVuc3Ns LTEuMS4xLWZpcHMtZGgucGF0Y2gKLVBhdGNoNjc6IG9wZW5zc2wtMS4xLjEta2RmLXNlbGZ0ZXN0 LnBhdGNoCi1QYXRjaDY5OiBvcGVuc3NsLTEuMS4xLWFscG4tY2IucGF0Y2gKLVBhdGNoNzA6IG9w ZW5zc2wtMS4xLjEtcmV3aXJlLWZpcHMtZHJiZy5wYXRjaAotIyBCYWNrcG9ydGVkIGZpeGVzIGlu Y2x1ZGluZyBzZWN1cml0eSBmaXhlcwotUGF0Y2g1Mjogb3BlbnNzbC0xLjEuMS1zMzkweC11cGRh dGUucGF0Y2gKLVBhdGNoNTM6IG9wZW5zc2wtMS4xLjEtZmlwcy1jcm5nLXRlc3QucGF0Y2gKLVBh dGNoNTU6IG9wZW5zc2wtMS4xLjEtYXJtLXVwZGF0ZS5wYXRjaAotUGF0Y2g1Njogb3BlbnNzbC0x LjEuMS1zMzkweC1lY2MucGF0Y2gKLQotTGljZW5zZTogT3BlblNTTCBhbmQgQVNMIDIuMAorIyBQ YXRjaGVzIGV4cG9ydGVkIGZyb20gc291cmNlIGdpdAorIyBBYXJjaDY0IGFuZCBwcGM2NGxlIHVz ZSBsaWI2NAorUGF0Y2gxOiAwMDAxLUFhcmNoNjQtYW5kLXBwYzY0bGUtdXNlLWxpYjY0LnBhdGNo CisjIFVzZSBtb3JlIGdlbmVyYWwgZGVmYXVsdCB2YWx1ZXMgaW4gb3BlbnNzbC5jbmYKK1BhdGNo MjogMDAwMi1Vc2UtbW9yZS1nZW5lcmFsLWRlZmF1bHQtdmFsdWVzLWluLW9wZW5zc2wuY25mLnBh dGNoCisjIERvIG5vdCBpbnN0YWxsIGh0bWwgZG9jcworUGF0Y2gzOiAwMDAzLURvLW5vdC1pbnN0 YWxsLWh0bWwtZG9jcy5wYXRjaAorIyBPdmVycmlkZSBkZWZhdWx0IHBhdGhzIGZvciB0aGUgQ0Eg ZGlyZWN0b3J5IHRyZWUKK1BhdGNoNDogMDAwNC1PdmVycmlkZS1kZWZhdWx0LXBhdGhzLWZvci10 aGUtQ0EtZGlyZWN0b3J5LXRyZWUucGF0Y2gKKyMgYXBwcy9jYTogZml4IG1kIG9wdGlvbiBoZWxw IHRleHQKK1BhdGNoNTogMDAwNS1hcHBzLWNhLWZpeC1tZC1vcHRpb24taGVscC10ZXh0LnBhdGNo CisjIERpc2FibGUgc2lnbmF0dXJlIHZlcmlmaWNhdGlvbiB3aXRoIHRvdGFsbHkgdW5zYWZlIGhh c2ggYWxnb3JpdGhtcworUGF0Y2g2OiAwMDA2LURpc2FibGUtc2lnbmF0dXJlLXZlcmlmaWNhdGlv bi13aXRoLXRvdGFsbHktdW5zYWZlLWgucGF0Y2gKKyMgQWRkIHN1cHBvcnQgZm9yIFBST0ZJTEU9 U1lTVEVNIHN5c3RlbSBkZWZhdWx0IGNpcGhlcmxpc3QKK1BhdGNoNzogMDAwNy1BZGQtc3VwcG9y dC1mb3ItUFJPRklMRS1TWVNURU0tc3lzdGVtLWRlZmF1bHQtY2lwaGVyLnBhdGNoCisjIEFkZCBG SVBTX21vZGUoKSBjb21wYXRpYmlsaXR5IG1hY3JvCitQYXRjaDg6IDAwMDgtQWRkLUZJUFNfbW9k ZS1jb21wYXRpYmlsaXR5LW1hY3JvLnBhdGNoCisjIEFkZCBjaGVjayB0byBzZWUgaWYgZmlwcyBm bGFnIGlzIGVuYWJsZWQgaW4ga2VybmVsCisjUGF0Y2g5OiAwMDA5LUFkZC1LZXJuZWwtRklQUy1t b2RlLWZsYWctc3VwcG9ydC5wYXRjaAorIyByZW1vdmUgdW5zdXBwb3J0ZWQgRUMgY3VydmVzCitQ YXRjaDExOiAwMDExLVJlbW92ZS1FQy1jdXJ2ZXMucGF0Y2gKKyMgSW5zdHJ1Y3Rpb25zIHRvIGxv YWQgbGVnYWN5IHByb3ZpZGVyIGluIG9wZW5zc2wuY25mCitQYXRjaDI0OiAwMDI0LWxvYWQtbGVn YWN5LXByb3YucGF0Y2gKKworTGljZW5zZTogQVNMIDIuMAogVVJMOiBodHRwOi8vd3d3Lm9wZW5z c2wub3JnLwotQnVpbGRSZXF1aXJlczogbWFrZQogQnVpbGRSZXF1aXJlczogZ2NjCiBCdWlsZFJl cXVpcmVzOiBjb3JldXRpbHMsIHBlcmwtaW50ZXJwcmV0ZXIsIHNlZCwgemxpYi1kZXZlbCwgL3Vz ci9iaW4vY21wCiBCdWlsZFJlcXVpcmVzOiBsa3NjdHAtdG9vbHMtZGV2ZWwKQEAgLTg2LDggKzY1 LDkgQEAgQnVpbGRSZXF1aXJlczogL3Vzci9iaW4vcG9kMm1hbgogQnVpbGRSZXF1aXJlczogL3Vz ci9zYmluL3N5c2N0bAogQnVpbGRSZXF1aXJlczogcGVybChUZXN0OjpIYXJuZXNzKSwgcGVybChU ZXN0OjpNb3JlKSwgcGVybChNYXRoOjpCaWdJbnQpCiBCdWlsZFJlcXVpcmVzOiBwZXJsKE1vZHVs ZTo6TG9hZDo6Q29uZGl0aW9uYWwpLCBwZXJsKEZpbGU6OlRlbXApCi1CdWlsZFJlcXVpcmVzOiBw ZXJsKFRpbWU6OkhpUmVzKQotQnVpbGRSZXF1aXJlczogcGVybChGaW5kQmluKSwgcGVybChsaWIp LCBwZXJsKEZpbGU6OkNvbXBhcmUpLCBwZXJsKEZpbGU6OkNvcHkpCitCdWlsZFJlcXVpcmVzOiBw ZXJsKFRpbWU6OkhpUmVzKSwgcGVybChJUEM6OkNtZCksIHBlcmwoUG9kOjpIdG1sKSwgcGVybChE aWdlc3Q6OlNIQSkKK0J1aWxkUmVxdWlyZXM6IHBlcmwoRmluZEJpbiksIHBlcmwobGliKSwgcGVy bChGaWxlOjpDb21wYXJlKSwgcGVybChGaWxlOjpDb3B5KSwgcGVybChiaWdpbnQpCitCdWlsZFJl cXVpcmVzOiBnaXQtY29yZQogUmVxdWlyZXM6IGNvcmV1dGlscwogUmVxdWlyZXM6ICV7bmFtZX0t bGlicyV7P19pc2F9ID0gJXtlcG9jaH06JXt2ZXJzaW9ufS0le3JlbGVhc2V9CiAKQEAgLTEwMiw3 ICs4Miw2IEBAIFN1bW1hcnk6IEEgZ2VuZXJhbCBwdXJwb3NlIGNyeXB0b2dyYXBoeSBsaWJyYXJ5 IHdpdGggVExTIGltcGxlbWVudGF0aW9uCiBSZXF1aXJlczogY2EtY2VydGlmaWNhdGVzID49IDIw MDgtNQogUmVxdWlyZXM6IGNyeXB0by1wb2xpY2llcyA+PSAyMDE4MDczMAogUmVjb21tZW5kczog b3BlbnNzbC1wa2NzMTElez9faXNhfQotUHJvdmlkZXM6IG9wZW5zc2wtZmlwcyA9ICV7ZXBvY2h9 OiV7dmVyc2lvbn0tJXtyZWxlYXNlfQogCiAlZGVzY3JpcHRpb24gbGlicwogT3BlblNTTCBpcyBh IHRvb2xraXQgZm9yIHN1cHBvcnRpbmcgY3J5cHRvZ3JhcGh5LiBUaGUgb3BlbnNzbC1saWJzCkBA IC0xMTksMTYgKzk4LDYgQEAgT3BlblNTTCBpcyBhIHRvb2xraXQgZm9yIHN1cHBvcnRpbmcgY3J5 cHRvZ3JhcGh5LiBUaGUgb3BlbnNzbC1kZXZlbAogcGFja2FnZSBjb250YWlucyBpbmNsdWRlIGZp bGVzIG5lZWRlZCB0byBkZXZlbG9wIGFwcGxpY2F0aW9ucyB3aGljaAogc3VwcG9ydCB2YXJpb3Vz IGNyeXB0b2dyYXBoaWMgYWxnb3JpdGhtcyBhbmQgcHJvdG9jb2xzLgogCi0lcGFja2FnZSBzdGF0 aWMKLVN1bW1hcnk6ICBMaWJyYXJpZXMgZm9yIHN0YXRpYyBsaW5raW5nIG9mIGFwcGxpY2F0aW9u cyB3aGljaCB3aWxsIHVzZSBPcGVuU1NMCi1SZXF1aXJlczogJXtuYW1lfS1kZXZlbCV7P19pc2F9 ID0gJXtlcG9jaH06JXt2ZXJzaW9ufS0le3JlbGVhc2V9Ci0KLSVkZXNjcmlwdGlvbiBzdGF0aWMK LU9wZW5TU0wgaXMgYSB0b29sa2l0IGZvciBzdXBwb3J0aW5nIGNyeXB0b2dyYXBoeS4gVGhlIG9w ZW5zc2wtc3RhdGljCi1wYWNrYWdlIGNvbnRhaW5zIHN0YXRpYyBsaWJyYXJpZXMgbmVlZGVkIGZv ciBzdGF0aWMgbGlua2luZyBvZgotYXBwbGljYXRpb25zIHdoaWNoIHN1cHBvcnQgdmFyaW91cyBj cnlwdG9ncmFwaGljIGFsZ29yaXRobXMgYW5kCi1wcm90b2NvbHMuCi0KICVwYWNrYWdlIHBlcmwK IFN1bW1hcnk6IFBlcmwgc2NyaXB0cyBwcm92aWRlZCB3aXRoIE9wZW5TU0wKIFJlcXVpcmVzOiBw ZXJsLWludGVycHJldGVyCkBAIC0xNDAsNyArMTA5LDcgQEAgcGFja2FnZSBwcm92aWRlcyBQZXJs IHNjcmlwdHMgZm9yIGNvbnZlcnRpbmcgY2VydGlmaWNhdGVzIGFuZCBrZXlzCiBmcm9tIG90aGVy IGZvcm1hdHMgdG8gdGhlIGZvcm1hdHMgdXNlZCBieSB0aGUgT3BlblNTTCB0b29sa2l0LgogCiAl cHJlcAotJXNldHVwIC1xIC1uICV7bmFtZX0tJXt2ZXJzaW9ufQorJWF1dG9zZXR1cCAtUyBnaXQg LW4gJXtuYW1lfS0le3ZlcnNpb259CiAKICMgVGhlIGhvYmJsZV9vcGVuc3NsIGlzIGNhbGxlZCBo ZXJlIHJlZHVuZGFudGx5LCBqdXN0IHRvIGJlIHN1cmUuCiAjIFRoZSB0YXJiYWxsIGhhcyBhbHJl YWR5IHRoZSBzb3VyY2VzIHJlbW92ZWQuCkBAIC0xNDksNDIgKzExOCw2IEBAIGZyb20gb3RoZXIg Zm9ybWF0cyB0byB0aGUgZm9ybWF0cyB1c2VkIGJ5IHRoZSBPcGVuU1NMIHRvb2xraXQuCiBjcCAl e1NPVVJDRTEyfSBjcnlwdG8vZWMvCiBjcCAle1NPVVJDRTEzfSB0ZXN0LwogCi0lcGF0Y2gxIC1w MSAtYiAuYnVpbGQgICAlez9fcmF3YnVpbGR9Ci0lcGF0Y2gyIC1wMSAtYiAuZGVmYXVsdHMKLSVw YXRjaDMgLXAxIC1iIC5uby1odG1sICAlez9fcmF3YnVpbGR9Ci0lcGF0Y2g0IC1wMSAtYiAubWFu LXJlbmFtZQotCi0lcGF0Y2gzMSAtcDEgLWIgLmNvbmYtcGF0aHMKLSVwYXRjaDMyIC1wMSAtYiAu dmVyc2lvbi1hZGQtZW5naW5lcwotJXBhdGNoMzMgLXAxIC1iIC5kZ3N0Ci0lcGF0Y2gzNiAtcDEg LWIgLm5vLWJyYWlucG9vbAotJXBhdGNoMzcgLXAxIC1iIC5jdXJ2ZXMKLSVwYXRjaDM4IC1wMSAt YiAubm8td2Vhay12ZXJpZnkKLSVwYXRjaDQwIC1wMSAtYiAuZGlzYWJsZS1zc2wzCi0lcGF0Y2g0 MSAtcDEgLWIgLnN5c3RlbS1jaXBoZXJsaXN0Ci0lcGF0Y2g0MiAtcDEgLWIgLmZpcHMKLSVwYXRj aDQ0IC1wMSAtYiAudmVyc2lvbi1vdmVycmlkZQotJXBhdGNoNDUgLXAxIC1iIC53ZWFrLWNpcGhl cnMKLSVwYXRjaDQ2IC1wMSAtYiAuc2VjbGV2ZWwKLSVwYXRjaDQ3IC1wMSAtYiAudHMtc2hhMjU2 LWRlZmF1bHQKLSVwYXRjaDQ4IC1wMSAtYiAuZmlwcy1wb3N0LXJhbmQKLSVwYXRjaDQ5IC1wMSAt YiAuZXZwLWtkZgotJXBhdGNoNTAgLXAxIC1iIC5zc2gta2RmCi0lcGF0Y2g1MSAtcDEgLWIgLmlu dGVsLWNldAotJXBhdGNoNTIgLXAxIC1iIC5zMzkweC11cGRhdGUKLSVwYXRjaDUzIC1wMSAtYiAu Y3JuZy10ZXN0Ci0lcGF0Y2g1NSAtcDEgLWIgLmFybS11cGRhdGUKLSVwYXRjaDU2IC1wMSAtYiAu czM5MHgtZWNjCi0lcGF0Y2g2MCAtcDEgLWIgLmtyYjUta2RmCi0lcGF0Y2g2MSAtcDEgLWIgLmVk azItYnVpbGQKLSVwYXRjaDYyIC1wMSAtYiAuZmlwcy1jdXJ2ZXMKLSVwYXRjaDY1IC1wMSAtYiAu ZHJiZy1zZWxmdGVzdAotJXBhdGNoNjYgLXAxIC1iIC5maXBzLWRoCi0lcGF0Y2g2NyAtcDEgLWIg LmtkZi1zZWxmdGVzdAotJXBhdGNoNjkgLXAxIC1iIC5hbHBuLWNiCi0lcGF0Y2g3MCAtcDEgLWIg LnJld2lyZS1maXBzLWRyYmcKLQotCiAlYnVpbGQKICMgRmlndXJlIG91dCB3aGljaCBmbGFncyB3 ZSB3YW50IHRvIHVzZS4KICMgZGVmYXVsdApAQCAtMjYxLDE4ICsxOTQsMTQgQEAgZXhwb3J0IEhB U0hCQU5HUEVSTD0vdXNyL2Jpbi9wZXJsCiAJLS1wcmVmaXg9JXtfcHJlZml4fSAtLW9wZW5zc2xk aXI9JXtfc3lzY29uZmRpcn0vcGtpL3RscyAke3NzbGZsYWdzfSBcCiAJLS1zeXN0ZW0tY2lwaGVy cy1maWxlPSV7X3N5c2NvbmZkaXJ9L2NyeXB0by1wb2xpY2llcy9iYWNrLWVuZHMvb3BlbnNzbC5j b25maWcgXAogCXpsaWIgZW5hYmxlLWNhbWVsbGlhIGVuYWJsZS1zZWVkIGVuYWJsZS1yZmMzNzc5 IGVuYWJsZS1zY3RwIFwKLQllbmFibGUtY21zIGVuYWJsZS1tZDIgZW5hYmxlLXJjNSBlbmFibGUt c3NsMyBlbmFibGUtc3NsMy1tZXRob2QgXAotCWVuYWJsZS13ZWFrLXNzbC1jaXBoZXJzIFwKKwll bmFibGUtY21zIGVuYWJsZS1tZDIgZW5hYmxlLXJjNSBlbmFibGUta3RscyBlbmFibGUtZmlwc1wK IAluby1tZGMyIG5vLWVjMm0gbm8tc20yIG5vLXNtNCBcCiAJc2hhcmVkICAke3NzbGFyY2h9ICRS UE1fT1BUX0ZMQUdTICctRERFVlJBTkRPTT0iXCIvZGV2L3VyYW5kb21cIiInCiAKICMgRG8gbm90 IHJ1biB0aGlzIGluIGEgcHJvZHVjdGlvbiBwYWNrYWdlIHRoZSBGSVBTIHN5bWJvbHMgbXVzdCBi ZSBwYXRjaGVkLWluCiAjdXRpbC9ta2RlZi5wbCBjcnlwdG8gdXBkYXRlCiAKLW1ha2UgYWxsCi0K LSMgT3ZlcndyaXRlIEZJUFMgUkVBRE1FCi1jcCAtZiAle1NPVVJDRTExfSAuCittYWtlIC1zICV7 P19zbXBfbWZsYWdzfSBhbGwKIAogIyBDbGVhbiB1cCB0aGUgLnBjIGZpbGVzCiBmb3IgaSBpbiBs aWJjcnlwdG8ucGMgbGlic3NsLnBjIG9wZW5zc2wucGMgOyBkbwpAQCAtMjg1LDM1ICsyMTQsMjkg QEAgZG9uZQogIyBIYWNrIC0gZWl0aGVyIGVuYWJsZSBTQ1RQIEFVVEggY2h1bmtzIGluIGtlcm5l bCBvciBkaXNhYmxlIHNjdHAgZm9yIGNoZWNrCiAoc3lzY3RsIG5ldC5zY3RwLmFkZGlwX2VuYWJs ZT0xICYmIHN5c2N0bCBuZXQuc2N0cC5hdXRoX2VuYWJsZT0xKSB8fCBcCiAoZWNobyAnRmFpbGVk IHRvIGVuYWJsZSBTQ1RQIEFVVEggY2h1bmtzLCBkaXNhYmxpbmcgU0NUUCBmb3IgdGVzdHMuLi4n ICYmCi0gc2VkICcvInpsaWItZHluYW1pYyIgPT4gImRlZmF1bHQiLC9hXCBcICJzY3RwIiA9PiAi ZGVmYXVsdCIsJyBjb25maWdkYXRhLnBtID4gY29uZmlnZGF0YS5wbS5uZXcgJiYgXAorIHNlZCAn LyJtc2FuIiA9PiAiZGVmYXVsdCIsL2FcIFwgInNjdHAiID0+ICJkZWZhdWx0IiwnIGNvbmZpZ2Rh dGEucG0gPiBjb25maWdkYXRhLnBtLm5ldyAmJiBcCiAgdG91Y2ggLXIgY29uZmlnZGF0YS5wbSBj b25maWdkYXRhLnBtLm5ldyAmJiBcCiAgbXYgLWYgY29uZmlnZGF0YS5wbS5uZXcgY29uZmlnZGF0 YS5wbSkKIAotIyBXZSBtdXN0IHJldmVydCBwYXRjaDMxIGJlZm9yZSB0ZXN0cyBvdGhlcndpc2Ug dGhleSB3aWxsIGZhaWwKLXBhdGNoIC1wMSAtUiA8ICV7UEFUQ0gzMX0KKyMgV2UgbXVzdCByZXZl cnQgcGF0Y2g0IGJlZm9yZSB0ZXN0cyBvdGhlcndpc2UgdGhleSB3aWxsIGZhaWwKK3BhdGNoIC1w MSAtUiA8ICV7UEFUQ0g0fQogCi1MRF9MSUJSQVJZX1BBVEg9YHB3ZGAke0xEX0xJQlJBUllfUEFU SDorOiR7TERfTElCUkFSWV9QQVRIfX0KLWV4cG9ydCBMRF9MSUJSQVJZX1BBVEgKLWNyeXB0by9m aXBzL2ZpcHNfc3RhbmRhbG9uZV9obWFjIGxpYmNyeXB0by5zby4le3NvdmVyc2lvbn0gPi5saWJj cnlwdG8uc28uJXtzb3ZlcnNpb259LmhtYWMKLWxuIC1zIC5saWJjcnlwdG8uc28uJXtzb3ZlcnNp b259LmhtYWMgLmxpYmNyeXB0by5zby5obWFjCi1jcnlwdG8vZmlwcy9maXBzX3N0YW5kYWxvbmVf aG1hYyBsaWJzc2wuc28uJXtzb3ZlcnNpb259ID4ubGlic3NsLnNvLiV7c292ZXJzaW9ufS5obWFj Ci1sbiAtcyAubGlic3NsLnNvLiV7c292ZXJzaW9ufS5obWFjIC5saWJzc2wuc28uaG1hYwogT1BF TlNTTF9FTkFCTEVfTUQ1X1ZFUklGWT0KIGV4cG9ydCBPUEVOU1NMX0VOQUJMRV9NRDVfVkVSSUZZ CiBPUEVOU1NMX1NZU1RFTV9DSVBIRVJTX09WRVJSSURFPXh5el9ub25leGlzdGVudF9maWxlCiBl eHBvcnQgT1BFTlNTTF9TWVNURU1fQ0lQSEVSU19PVkVSUklERQotbWFrZSB0ZXN0CittYWtlIHRl c3QgSEFSTkVTU19KT0JTPTgKIAogIyBBZGQgZ2VuZXJhdGlvbiBvZiBITUFDIGNoZWNrc3VtIG9m IHRoZSBmaW5hbCBzdHJpcHBlZCBsaWJyYXJ5Ci0lZGVmaW5lIF9fc3BlY19pbnN0YWxsX3Bvc3Qg XAotICAgICV7P19fZGVidWdfcGFja2FnZTole19fZGVidWdfaW5zdGFsbF9wb3N0fX0gXAotICAg ICV7X19hcmNoX2luc3RhbGxfcG9zdH0gXAotICAgICV7X19vc19pbnN0YWxsX3Bvc3R9IFwKLSAg ICBjcnlwdG8vZmlwcy9maXBzX3N0YW5kYWxvbmVfaG1hYyAkUlBNX0JVSUxEX1JPT1Qle19saWJk aXJ9L2xpYmNyeXB0by5zby4le3ZlcnNpb259ID4kUlBNX0JVSUxEX1JPT1Qle19saWJkaXJ9Ly5s aWJjcnlwdG8uc28uJXt2ZXJzaW9ufS5obWFjIFwKLSAgICBsbiAtc2YgLmxpYmNyeXB0by5zby4l e3ZlcnNpb259LmhtYWMgJFJQTV9CVUlMRF9ST09UJXtfbGliZGlyfS8ubGliY3J5cHRvLnNvLiV7 c292ZXJzaW9ufS5obWFjIFwKLSAgICBjcnlwdG8vZmlwcy9maXBzX3N0YW5kYWxvbmVfaG1hYyAk UlBNX0JVSUxEX1JPT1Qle19saWJkaXJ9L2xpYnNzbC5zby4le3ZlcnNpb259ID4kUlBNX0JVSUxE X1JPT1Qle19saWJkaXJ9Ly5saWJzc2wuc28uJXt2ZXJzaW9ufS5obWFjIFwKLSAgICBsbiAtc2Yg LmxpYnNzbC5zby4le3ZlcnNpb259LmhtYWMgJFJQTV9CVUlMRF9ST09UJXtfbGliZGlyfS8ubGli c3NsLnNvLiV7c292ZXJzaW9ufS5obWFjIFwKLSV7bmlsfQorIyVkZWZpbmUgX19zcGVjX2luc3Rh bGxfcG9zdCBcCisjICAgICV7P19fZGVidWdfcGFja2FnZTole19fZGVidWdfaW5zdGFsbF9wb3N0 fX0gXAorIyAgICAle19fYXJjaF9pbnN0YWxsX3Bvc3R9IFwKKyMgICAgJXtfX29zX2luc3RhbGxf cG9zdH0gXAorIyAgICBjcnlwdG8vZmlwcy9maXBzX3N0YW5kYWxvbmVfaG1hYyAkUlBNX0JVSUxE X1JPT1Qle19saWJkaXJ9L2xpYmNyeXB0by5zby4le3ZlcnNpb259ID4kUlBNX0JVSUxEX1JPT1Ql e19saWJkaXJ9Ly5saWJjcnlwdG8uc28uJXt2ZXJzaW9ufS5obWFjIFwKKyMgICAgbG4gLXNmIC5s aWJjcnlwdG8uc28uJXt2ZXJzaW9ufS5obWFjICRSUE1fQlVJTERfUk9PVCV7X2xpYmRpcn0vLmxp YmNyeXB0by5zby4le3NvdmVyc2lvbn0uaG1hYyBcCisjICAgIGNyeXB0by9maXBzL2ZpcHNfc3Rh bmRhbG9uZV9obWFjICRSUE1fQlVJTERfUk9PVCV7X2xpYmRpcn0vbGlic3NsLnNvLiV7dmVyc2lv bn0gPiRSUE1fQlVJTERfUk9PVCV7X2xpYmRpcn0vLmxpYnNzbC5zby4le3ZlcnNpb259LmhtYWMg XAorIyAgICBsbiAtc2YgLmxpYnNzbC5zby4le3ZlcnNpb259LmhtYWMgJFJQTV9CVUlMRF9ST09U JXtfbGliZGlyfS8ubGlic3NsLnNvLiV7c292ZXJzaW9ufS5obWFjIFwKKyMle25pbH0KIAogJWRl ZmluZSBfX3Byb3ZpZGVzX2V4Y2x1ZGVfZnJvbSAle19saWJkaXJ9L29wZW5zc2wKIApAQCAtMzI5 LDYgKzI1MiwxMSBAQCBmb3IgbGliIGluICRSUE1fQlVJTERfUk9PVCV7X2xpYmRpcn0vKi5zby4l e3ZlcnNpb259IDsgZG8KIAlsbiAtcyAtZiBgYmFzZW5hbWUgJHtsaWJ9YCAkUlBNX0JVSUxEX1JP T1Qle19saWJkaXJ9L2BiYXNlbmFtZSAke2xpYn0gLiV7dmVyc2lvbn1gLiV7c292ZXJzaW9ufQog ZG9uZQogCisjIFJlbW92ZSBzdGF0aWMgbGlicmFyaWVzCitmb3IgbGliIGluICRSUE1fQlVJTERf Uk9PVCV7X2xpYmRpcn0vKi5hIDsgZG8KKwlybSAtZiAke2xpYn0KK2RvbmUKKwogIyBJbnN0YWxs IGEgbWFrZWZpbGUgZm9yIGdlbmVyYXRpbmcga2V5cyBhbmQgc2VsZi1zaWduZWQgY2VydHMsIGFu ZCBhIHNjcmlwdAogIyBmb3IgZ2VuZXJhdGluZyB0aGVtIG9uIHRoZSBmbHkuCiBta2RpciAtcCAk UlBNX0JVSUxEX1JPT1Qle19zeXNjb25mZGlyfS9wa2kvdGxzL2NlcnRzCkBAIC0zNDIsMjQgKzI3 MCw3IEBAIG12ICRSUE1fQlVJTERfUk9PVCV7X3N5c2NvbmZkaXJ9L3BraS90bHMvbWlzYy90c2dl dCAkUlBNX0JVSUxEX1JPT1Qle19iaW5kaXJ9CiAKICMgUmVuYW1lIG1hbiBwYWdlcyBzbyB0aGF0 IHRoZXkgZG9uJ3QgY29uZmxpY3Qgd2l0aCBvdGhlciBzeXN0ZW0gbWFuIHBhZ2VzLgogcHVzaGQg JFJQTV9CVUlMRF9ST09UJXtfbWFuZGlyfQotbG4gLXMgLWYgY29uZmlnLjUgbWFuNS9vcGVuc3Ns LmNuZi41Ci1mb3IgbWFucGFnZSBpbiBtYW4qLyogOyBkbwotCWlmIFsgLUwgJHttYW5wYWdlfSBd OyB0aGVuCi0JCVRBUkdFVD1gbHMgLWwgJHttYW5wYWdlfSB8IGF3ayAneyBwcmludCAkTkYgfSdg Ci0JCWxuIC1zbmYgJHtUQVJHRVR9c3NsICR7bWFucGFnZX1zc2wKLQkJcm0gLWYgJHttYW5wYWdl fQotCWVsc2UKLQkJbXYgJHttYW5wYWdlfSAke21hbnBhZ2V9c3NsCi0JZmkKLWRvbmUKLWZvciBj b25mbGljdCBpbiBwYXNzd2QgcmFuZCA7IGRvCi0JcmVuYW1lICR7Y29uZmxpY3R9IHNzbCR7Y29u ZmxpY3R9IG1hbiovJHtjb25mbGljdH0qCi0jIEZpeCBkYW5nbGluZyBzeW1saW5rcwotCW1hbnBh Z2U9bWFuMS9vcGVuc3NsLSR7Y29uZmxpY3R9LioKLQlpZiBbIC1MICR7bWFucGFnZX0gXSA7IHRo ZW4KLQkJbG4gLXNuZiBzc2wke2NvbmZsaWN0fS4xc3NsICR7bWFucGFnZX0KLQlmaQotZG9uZQor bXYgbWFuNS9jb25maWcuNW9zc2wgbWFuNS9vcGVuc3NsLmNuZi41CiBwb3BkCiAKIG1rZGlyIC1t NzU1ICRSUE1fQlVJTERfUk9PVCV7X3N5c2NvbmZkaXJ9L3BraS9DQQpAQCAtMzc1LDYgKzI4Niw5 IEBAIHRvdWNoIC1yICV7U09VUkNFMn0gJFJQTV9CVUlMRF9ST09UJXtfc3lzY29uZmRpcn0vcGtp L3Rscy9jdF9sb2dfbGlzdC5jbmYKIAogcm0gLWYgJFJQTV9CVUlMRF9ST09UJXtfc3lzY29uZmRp cn0vcGtpL3Rscy9vcGVuc3NsLmNuZi5kaXN0CiBybSAtZiAkUlBNX0JVSUxEX1JPT1Qle19zeXNj b25mZGlyfS9wa2kvdGxzL2N0X2xvZ19saXN0LmNuZi5kaXN0CislaWZhcmNoIGk2ODYKK3JtIC1m ICRSUE1fQlVJTERfUk9PVCV7X3N5c2NvbmZkaXJ9L3BraS90bHMvZmlwc21vZHVsZS5jbmYKKyVl bmRpZgogCiAjIERldGVybWluZSB3aGljaCBhcmNoIG9wZW5zc2xjb25mLmggaXMgZ29pbmcgdG8g dHJ5IHRvICNpbmNsdWRlLgogYmFzZWFyY2g9JXtfYXJjaH0KQEAgLTM5NiwzOSArMzEwLDM0IEBA IHNlZCAtaSAnL15cI2lmbmRlZiBPUEVOU1NMX05PX1NTTF9UUkFDRS9pXAogI2VuZGlmJyAkUlBN X0JVSUxEX1JPT1QvJXtfcHJlZml4fS9pbmNsdWRlL29wZW5zc2wvb3BlbnNzbGNvbmYuaAogCiAl aWZhcmNoICV7bXVsdGlsaWJfYXJjaGVzfQotIyBEbyBhbiBvcGVuc3NsY29uZi5oIHN3aXRjaGVy b28gdG8gYXZvaWQgZmlsZSBjb25mbGljdHMgb24gc3lzdGVtcyB3aGVyZSB5b3UKKyMgRG8gYW4g Y29uZmlndXJhdGlvbi5oIHN3aXRjaGVyb28gdG8gYXZvaWQgZmlsZSBjb25mbGljdHMgb24gc3lz dGVtcyB3aGVyZSB5b3UKICMgY2FuIGhhdmUgYm90aCBhIDMyLSBhbmQgNjQtYml0IHZlcnNpb24g b2YgdGhlIGxpYnJhcnksIGFuZCB0aGV5IGVhY2ggbmVlZAogIyB0aGVpciBvd24gY29ycmVjdC1i dXQtZGlmZmVyZW50IHZlcnNpb25zIG9mIG9wZW5zc2xjb25mLmggdG8gYmUgdXNhYmxlLgogaW5z dGFsbCAtbTY0NCAle1NPVVJDRTEwfSBcCi0JJFJQTV9CVUlMRF9ST09ULyV7X3ByZWZpeH0vaW5j bHVkZS9vcGVuc3NsL29wZW5zc2xjb25mLSR7YmFzZWFyY2h9LmgKLWNhdCAkUlBNX0JVSUxEX1JP T1QvJXtfcHJlZml4fS9pbmNsdWRlL29wZW5zc2wvb3BlbnNzbGNvbmYuaCA+PiBcCi0JJFJQTV9C VUlMRF9ST09ULyV7X3ByZWZpeH0vaW5jbHVkZS9vcGVuc3NsL29wZW5zc2xjb25mLSR7YmFzZWFy Y2h9LmgKKwkkUlBNX0JVSUxEX1JPT1QvJXtfcHJlZml4fS9pbmNsdWRlL29wZW5zc2wvY29uZmln dXJhdGlvbi0ke2Jhc2VhcmNofS5oCitjYXQgJFJQTV9CVUlMRF9ST09ULyV7X3ByZWZpeH0vaW5j bHVkZS9vcGVuc3NsL2NvbmZpZ3VyYXRpb24uaCA+PiBcCisJJFJQTV9CVUlMRF9ST09ULyV7X3By ZWZpeH0vaW5jbHVkZS9vcGVuc3NsL2NvbmZpZ3VyYXRpb24tJHtiYXNlYXJjaH0uaAogaW5zdGFs bCAtbTY0NCAle1NPVVJDRTl9IFwKLQkkUlBNX0JVSUxEX1JPT1QvJXtfcHJlZml4fS9pbmNsdWRl L29wZW5zc2wvb3BlbnNzbGNvbmYuaAorCSRSUE1fQlVJTERfUk9PVC8le19wcmVmaXh9L2luY2x1 ZGUvb3BlbnNzbC9jb25maWd1cmF0aW9uLmgKICVlbmRpZgotTERfTElCUkFSWV9QQVRIPWBwd2Rg JHtMRF9MSUJSQVJZX1BBVEg6Kzoke0xEX0xJQlJBUllfUEFUSH19Ci1leHBvcnQgTERfTElCUkFS WV9QQVRICiAKICVmaWxlcwogJXshP19saWNlbnNlZGlyOiVnbG9iYWwgbGljZW5zZSAlJWRvY30K LSVsaWNlbnNlIExJQ0VOU0UKLSVkb2MgRkFRIE5FV1MgUkVBRE1FIFJFQURNRS5GSVBTCislbGlj ZW5zZSBMSUNFTlNFLnR4dAorJWRvYyBORVdTLm1kIFJFQURNRS5tZAogJXtfYmluZGlyfS9tYWtl LWR1bW15LWNlcnQKICV7X2JpbmRpcn0vcmVuZXctZHVtbXktY2VydAogJXtfYmluZGlyfS9vcGVu c3NsCi0le19tYW5kaXJ9L21hbjEqLyoKLSV7X21hbmRpcn0vbWFuNSovKgotJXtfbWFuZGlyfS9t YW43Ki8qCisle19tYW5kaXJ9L21hbjEvKgorJXtfbWFuZGlyfS9tYW41LyoKKyV7X21hbmRpcn0v bWFuNy8qCiAle19wa2dkb2NkaXJ9L01ha2VmaWxlLmNlcnRpZmljYXRlCi0lZXhjbHVkZSAle19t YW5kaXJ9L21hbjEqLyoucGwqCi0lZXhjbHVkZSAle19tYW5kaXJ9L21hbjEqL2NfcmVoYXNoKgot JWV4Y2x1ZGUgJXtfbWFuZGlyfS9tYW4xKi9vcGVuc3NsLWNfcmVoYXNoKgotJWV4Y2x1ZGUgJXtf bWFuZGlyfS9tYW4xKi90c2dldCoKLSVleGNsdWRlICV7X21hbmRpcn0vbWFuMSovb3BlbnNzbC10 c2dldCoKKyVleGNsdWRlICV7X21hbmRpcn0vbWFuMS8qLnBsKgorJWV4Y2x1ZGUgJXtfbWFuZGly fS9tYW4xL3RzZ2V0KgogCiAlZmlsZXMgbGlicwogJXshP19saWNlbnNlZGlyOiVnbG9iYWwgbGlj ZW5zZSAlJWRvY30KLSVsaWNlbnNlIExJQ0VOU0UKKyVsaWNlbnNlIExJQ0VOU0UudHh0CiAlZGly ICV7X3N5c2NvbmZkaXJ9L3BraS90bHMKICVkaXIgJXtfc3lzY29uZmRpcn0vcGtpL3Rscy9jZXJ0 cwogJWRpciAle19zeXNjb25mZGlyfS9wa2kvdGxzL21pc2MKQEAgLTQzNiwzMiArMzQ1LDI4IEBA IGV4cG9ydCBMRF9MSUJSQVJZX1BBVEgKICVjb25maWcobm9yZXBsYWNlKSAle19zeXNjb25mZGly fS9wa2kvdGxzL29wZW5zc2wuY25mCiAlY29uZmlnKG5vcmVwbGFjZSkgJXtfc3lzY29uZmRpcn0v cGtpL3Rscy9jdF9sb2dfbGlzdC5jbmYKICVhdHRyKDA3NTUscm9vdCxyb290KSAle19saWJkaXJ9 L2xpYmNyeXB0by5zby4le3ZlcnNpb259Ci0lYXR0cigwNzU1LHJvb3Qscm9vdCkgJXtfbGliZGly fS9saWJjcnlwdG8uc28uJXtzb3ZlcnNpb259Cisle19saWJkaXJ9L2xpYmNyeXB0by5zby4le3Nv dmVyc2lvbn0KICVhdHRyKDA3NTUscm9vdCxyb290KSAle19saWJkaXJ9L2xpYnNzbC5zby4le3Zl cnNpb259Ci0lYXR0cigwNzU1LHJvb3Qscm9vdCkgJXtfbGliZGlyfS9saWJzc2wuc28uJXtzb3Zl cnNpb259Ci0lYXR0cigwNjQ0LHJvb3Qscm9vdCkgJXtfbGliZGlyfS8ubGliY3J5cHRvLnNvLiou aG1hYwotJWF0dHIoMDY0NCxyb290LHJvb3QpICV7X2xpYmRpcn0vLmxpYnNzbC5zby4qLmhtYWMK KyV7X2xpYmRpcn0vbGlic3NsLnNvLiV7c292ZXJzaW9ufQogJWF0dHIoMDc1NSxyb290LHJvb3Qp ICV7X2xpYmRpcn0vZW5naW5lcy0le3NvdmVyc2lvbn0KKyVhdHRyKDA3NTUscm9vdCxyb290KSAl e19saWJkaXJ9L29zc2wtbW9kdWxlcworJWlmbmFyY2ggaTY4NgorJWNvbmZpZyhub3JlcGxhY2Up ICV7X3N5c2NvbmZkaXJ9L3BraS90bHMvZmlwc21vZHVsZS5jbmYKKyVlbmRpZgogCiAlZmlsZXMg ZGV2ZWwKLSVkb2MgQ0hBTkdFUyBkb2MvZGlyLWxvY2Fscy5leGFtcGxlLmVsIGRvYy9vcGVuc3Ns LWMtaW5kZW50LmVsCislZG9jIENIQU5HRVMubWQgZG9jL2Rpci1sb2NhbHMuZXhhbXBsZS5lbCBk b2Mvb3BlbnNzbC1jLWluZGVudC5lbAogJXtfcHJlZml4fS9pbmNsdWRlL29wZW5zc2wKICV7X2xp YmRpcn0vKi5zbwotJXtfbWFuZGlyfS9tYW4zKi8qCisle19tYW5kaXJ9L21hbjMvKgogJXtfbGli ZGlyfS9wa2djb25maWcvKi5wYwogCi0lZmlsZXMgc3RhdGljCi0le19saWJkaXJ9LyouYQotCiAl ZmlsZXMgcGVybAogJXtfYmluZGlyfS9jX3JlaGFzaAogJXtfYmluZGlyfS8qLnBsCiAle19iaW5k aXJ9L3RzZ2V0Ci0le19tYW5kaXJ9L21hbjEqLyoucGwqCi0le19tYW5kaXJ9L21hbjEqL2NfcmVo YXNoKgotJXtfbWFuZGlyfS9tYW4xKi9vcGVuc3NsLWNfcmVoYXNoKgotJXtfbWFuZGlyfS9tYW4x Ki90c2dldCoKLSV7X21hbmRpcn0vbWFuMSovb3BlbnNzbC10c2dldCoKKyV7X21hbmRpcn0vbWFu MS8qLnBsKgorJXtfbWFuZGlyfS9tYW4xL3RzZ2V0KgogJWRpciAle19zeXNjb25mZGlyfS9wa2kv Q0EKICVkaXIgJXtfc3lzY29uZmRpcn0vcGtpL0NBL3ByaXZhdGUKICVkaXIgJXtfc3lzY29uZmRp cn0vcGtpL0NBL2NlcnRzCkBAIC00NzEsMTc1MyArMzc2LDUgQEAgZXhwb3J0IExEX0xJQlJBUllf UEFUSAogJWxkY29uZmlnX3NjcmlwdGxldHMgbGlicwogCiAlY2hhbmdlbG9nCi0qIFRodSBKdWwg MjIgMjAyMSBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qu b3JnPiAtIDE6MS4xLjFrLTIKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9y Zy93aWtpL0ZlZG9yYV8zNV9NYXNzX1JlYnVpbGQKLQotKiBGcmkgTWFyIDI2IDIwMjEgU2FoYW5h IFByYXNhZCA8c2FoYW5hQHJlZGhhdC5jb20+IC0gMToxLjEuMWstMQotLSBVcGdyYWRlIHRvIHZl cnNpb24gMS4xLjEuawotCi0qIFR1ZSBGZWIgMjMgMjAyMSBTYWhhbmEgUHJhc2FkIDxzYWhhbmFA cmVkaGF0LmNvbT4gLSAxOjEuMS4xai0xCi0tIFVwZ3JhZGUgdG8gdmVyc2lvbiAxLjEuMS5qCi0K LSogV2VkIEZlYiAxMCAyMDIxIFNhaGFuYSBQcmFzYWQgPHNhaGFuYUByZWRoYXQuY29tPiAtIDE6 MS4xLjFpLTMKLS0gRml4IHJlZ3Jlc3Npb24gaW4gWDUwOV92ZXJpZnlfY2VydCgpIChiejE5MTY1 OTQpCi0KLSogVHVlIEphbiAyNiAyMDIxIEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxl bmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gMToxLjEuMWktMgotLSBSZWJ1aWx0IGZvciBodHRwczov L2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzM0X01hc3NfUmVidWlsZAotCi0qIFdlZCBE ZWMgOSAyMDIwIFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4xaS0xCi0tIFVw ZGF0ZSB0byB0aGUgMS4xLjFpIHJlbGVhc2UgZml4aW5nIENWRS0yMDIwLTE5NzEKLQotKiBNb24g Tm92IDkgMjAyMCBTYWhhbmEgUHJhc2FkIDxzYWhhbmFAcmVkaGF0LmNvbT4gLSAxLjEuMWgtMQot LSBVcGdyYWRlIHRvIHZlcnNpb24gMS4xLjEuaAotCi0qIFR1ZSBKdWwgMjggMjAyMCBGZWRvcmEg UmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDE6MS4xLjFn LTE1Ci0tIFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFf MzNfTWFzc19SZWJ1aWxkCi0KLSogVHVlIEp1bCAyMSAyMDIwIFRvbSBTdGVsbGFyZCA8dHN0ZWxs YXJAcmVkaGF0LmNvbT4gLSAxOjEuMS4xZy0xNAotLSBVc2UgbWFrZSBtYWNyb3MKLS0gaHR0cHM6 Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0NoYW5nZXMvVXNlTWFrZUJ1aWxkSW5zdGFsbE1hY3Jv Ci0KLSogTW9uIEp1bCAyMCAyMDIwIFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEu MS4xZy0xMwotLSBBZGRpdGlvbmFsIEZJUFMgbW9kZSBjaGVjayBmb3IgRUMga2V5IGdlbmVyYXRp b24KLQotKiBGcmkgSnVsIDE3IDIwMjAgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4g MS4xLjFnLTEyCi0tIEZ1cnRoZXIgY2hhbmdlcyBmb3IgU1AgODAwLTU2QSByZXYzIHJlcXVpcmVt ZW50cwotCi0qIE1vbiBKdW4gMjIgMjAyMCBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29t PiAxLjEuMWctMTEKLS0gRHJvcCBsb25nIGFnbyBvYnNvbGV0ZSBwYXJ0IG9mIHRoZSBGSVBTIHBh dGNoCi0KLSogTW9uIEp1biAyMiAyMDIwIFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+ IDEuMS4xZy0xMAotLSBSZXdpcmUgRklQU19kcmJnIEFQSSB0byB1c2UgdGhlIFJBTkRfRFJCRwot Ci0qIEZyaSBKdW4gIDUgMjAyMCBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEu MWctOQotLSBEaXNhbGxvdyBkcm9wcGluZyBFeHRlbmRlZCBNYXN0ZXIgU2VjcmV0IGV4dGVuc2lv bgotICBvbiByZW5lZ290aWF0aW9uCi0tIFJldHVybiBhbGVydCBmcm9tIHNfc2VydmVyIGlmIEFM UE4gcHJvdG9jb2wgZG9lcyBub3QgbWF0Y2gKLS0gU0hBMSBpcyBhbGxvd2VkIGluIEBTRUNMRVZF TD0yIG9ubHkgaWYgYWxsb3dlZCBieQotICBUTFMgU2lnQWxncyBjb25maWd1cmF0aW9uCi0KLSog V2VkIEp1biAgMyAyMDIwIFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4xZy04 Ci0tIEFkZCBGSVBTIHNlbGZ0ZXN0IGZvciBQQktERjIgYW5kIEtCS0RGCi0KLSogVHVlIE1heSAy NiAyMDIwIFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4xZy03Ci0tIFVzZSB0 aGUgd2VsbCBrbm93biBESCBncm91cHMgaW4gVExTCi0KLSogTW9uIE1heSAyNSAyMDIwIFRvbcOh xaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4xZy02Ci0tIEFsbG93IG9ubHkgd2VsbCBr bm93biBESCBncm91cHMgaW4gdGhlIEZJUFMgbW9kZQotCi0qIFRodSBNYXkgMjEgMjAyMCBBZGFt IFdpbGxpYW1zb24gPGF3aWxsaWFtQHJlZGhhdC5jb20+IC0gMS4xLjFnLTUKLS0gUmUtYXBwbHkg dGhlIGNoYW5nZSBmcm9tIC0yIG5vdyB3ZSBoYXZlIGZpeGVkIG5vc3luYyB0byB3b3JrIHdpdGgg aXQKLQotKiBUdWUgTWF5IDE5IDIwMjAgQWRhbSBXaWxsaWFtc29uIDxhd2lsbGlhbUByZWRoYXQu Y29tPiAtIDEuMS4xZy00Ci0tIFJldmVydCB0aGUgY2hhbmdlIGZyb20gLTIgYXMgaXQgc2VlbXMg dG8gY2F1c2Ugc2VnZmF1bHRzIGluIHN5c3RlbWQKLQotKiBNb24gTWF5IDE4IDIwMjAgVG9tw6HF oSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjFnLTMKLS0gcHVsbCBzb21lIGZpeGVzIGFu ZCBpbXByb3ZlbWVudHMgZnJvbSBSSEVMLTgKLQotKiBGcmkgTWF5IDE1IDIwMjAgVG9tw6HFoSBN csOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjFnLTIKLS0gRklQUyBtb2R1bGUgaW5zdGFsbGVk IHN0YXRlIGRlZmluaXRpb24gaXMgbW9kaWZpZWQKLQotKiBUaHUgQXByIDIzIDIwMjAgVG9tw6HF oSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjFnLTEKLS0gdXBkYXRlIHRvIHRoZSAxLjEu MWcgcmVsZWFzZQotCi0qIFR1ZSBBcHIgIDcgMjAyMCBUb23DocWhIE1yw6F6IDx0bXJhekByZWRo YXQuY29tPiAxLjEuMWYtMQotLSB1cGRhdGUgdG8gdGhlIDEuMS4xZiByZWxlYXNlCi0KLSogVGh1 IE1hciAyNiAyMDIwIFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4xZS0yCi0t IHJldmVydCB0aGUgdW5leHBlY3RlZCBFT0YgZXJyb3IgcmVwb3J0aW5nIGNoYW5nZSBhcyBpdCBp cwotICB0b28gZGlzcnVwdGl2ZSBmb3IgdGhlIHN0YWJsZSByZWxlYXNlIGJyYW5jaAotCi0qIEZy aSBNYXIgMjAgMjAyMCBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMWUtMQot LSB1cGRhdGUgdG8gdGhlIDEuMS4xZSByZWxlYXNlCi0tIGFkZCBzZWxmdGVzdCBvZiB0aGUgUkFO RF9EUkJHIGltcGxlbWVudGF0aW9uCi0tIGZpeCBpbmNvcnJlY3QgZXJyb3IgcmV0dXJuIHZhbHVl IGZyb20gRklQU19zZWxmdGVzdF9kc2EKLQotKiBNb24gRmViIDE3IDIwMjAgVG9tw6HFoSBNcsOh eiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjFkLTcKLS0gYXBwbHkgSW50ZWwgQ0VUIHN1cHBvcnQg cGF0Y2hlcyBieSBoamwgKCMxNzg4Njk5KQotCi0qIFdlZCBKYW4gMjkgMjAyMCBGZWRvcmEgUmVs ZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDE6MS4xLjFkLTYK LS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8zMl9N YXNzX1JlYnVpbGQKLQotKiBUaHUgTm92IDIxIDIwMTkgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVk aGF0LmNvbT4gMS4xLjFkLTUKLS0gYWxsb3cgemVybyBsZW5ndGggcGFyYW1ldGVycyBpbiBLREZf Q1RYX2N0cmwoKQotCi0qIFRodSBOb3YgMTQgMjAxOSBUb23DocWhIE1yw6F6IDx0bXJhekByZWRo YXQuY29tPiAxLjEuMWQtNAotLSBiYWNrcG9ydCBvZiBTU0tERiBmcm9tIG1hc3RlcgotCi0qIFdl ZCBOb3YgMTMgMjAxOSBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMWQtMwot LSBiYWNrcG9ydCBvZiBLQktERiBhbmQgS1JCNUtERiBmcm9tIG1hc3RlcgotCi0qIFRodSBPY3Qg IDMgMjAxOSBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMWQtMgotLSByZS1l bmFibGUgdGhlIHN0aXRjaGVkIEFFUy1DQkMtU0hBIGltcGxlbWVudGF0aW9ucwotLSBtYWtlIEFF Uy1HQ00gd29yayBpbiBGSVBTIG1vZGUgYWdhaW4KLS0gZW5hYmxlIFRMUy0xLjIgQUVTLUNDTSBj aXBoZXJzIGluIEZJUFMgbW9kZQotLSBmaXggb3BlbnNzbCBzcGVlZCBlcnJvcnMgaW4gRklQUyBt b2RlCi0KLSogRnJpIFNlcCAxMyAyMDE5IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+ IDEuMS4xZC0xCi0tIHVwZGF0ZSB0byB0aGUgMS4xLjFkIHJlbGVhc2UKLQotKiBGcmkgU2VwICA2 IDIwMTkgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjFjLTYKLS0gdXBzdHJl YW0gZml4IGZvciBzdGF0dXMgcmVxdWVzdCBleHRlbnNpb24gbm9uLWNvbXBsaWFuY2UgKCMxNzM3 NDcxKQotCi0qIFRodSBKdWwgMjUgMjAxOSBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVs ZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDE6MS4xLjFjLTUKLS0gUmVidWlsdCBmb3IgaHR0cHM6 Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8zMV9NYXNzX1JlYnVpbGQKLQotKiBNb24g SnVuIDI0IDIwMTkgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjFjLTQKLS0g ZG8gbm90IHRyeSB0byB1c2UgRUMgZ3JvdXBzIGRpc2FsbG93ZWQgaW4gRklQUyBtb2RlCi0gIGlu IFRMUwotLSBmaXggVmFsZ3JpbmQgcmVncmVzc2lvbiB3aXRoIGNvbnN0YW50LXRpbWUgY29kZQot Ci0qIE1vbiBKdW4gIDMgMjAxOSBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEu MWMtMwotLSBhZGQgdXBzdHJlYW0gcGF0Y2ggdG8gZGVmZXIgc2VuZGluZyBLZXlVcGRhdGUgYWZ0 ZXIKLSAgcGVuZGluZyB3cml0ZXMgYXJlIGNvbXBsZXRlCi0KLSogVGh1IE1heSAzMCAyMDE5IFRv bcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4xYy0yCi0tIGZpeCB1c2Ugb2YgdW5p bml0aWFsaXplZCBtZW1vcnkKLQotKiBXZWQgTWF5IDI5IDIwMTkgVG9tw6HFoSBNcsOheiA8dG1y YXpAcmVkaGF0LmNvbT4gMS4xLjFjLTEKLS0gdXBkYXRlIHRvIHRoZSAxLjEuMWMgcmVsZWFzZQot Ci0qIEZyaSBNYXkgMTAgMjAxOSBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEu MWItMTAKLS0gQW5vdGhlciBhdHRlbXB0IGF0IHRoZSBBRVMtQ0NNIHJlZ3Jlc3Npb24gZml4Ci0K LSogRnJpIE1heSAxMCAyMDE5IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4x Yi05Ci0tIEZpeCB0d28gc21hbGwgcmVncmVzc2lvbnMKLS0gQ2hhbmdlIHRoZSB0cyBhcHBsaWNh dGlvbiBkZWZhdWx0IGhhc2ggdG8gU0hBMjU2Ci0KLSogVHVlIE1heSAgNyAyMDE5IFRvbcOhxaEg TXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4xYi04Ci0tIEZJUFMgY29tcGxpYW5jZSBmaXhl cwotCi0qIE1vbiBNYXkgIDYgMjAxOSBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAx LjEuMWItNwotLSBhZGQgUzM5MHggY2hhY2hhMjAtcG9seTEzMDUgYXNzZW1ibGVyIHN1cHBvcnQg ZnJvbSBtYXN0ZXIgYnJhbmNoCi0KLSogRnJpIE1heSAgMyAyMDE5IFRvbcOhxaEgTXLDoXogPHRt cmF6QHJlZGhhdC5jb20+IDEuMS4xYi02Ci0tIGFwcGx5IG5ldyBidWdmaXhlcyBmcm9tIHVwc3Ry ZWFtIDEuMS4xIGJyYW5jaAotCi0qIFR1ZSBBcHIgMTYgMjAxOSBUb23DocWhIE1yw6F6IDx0bXJh ekByZWRoYXQuY29tPiAxLjEuMWItNQotLSBmaXggZm9yIEJJT19nZXRfbWVtX3B0cigpIHJlZ3Jl c3Npb24gaW4gMS4xLjFiICgjMTY5MTg1MykKLQotKiBXZWQgTWFyIDI3IDIwMTkgVG9tw6HFoSBN csOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjFiLTQKLS0gZHJvcCB1bnVzZWQgQnVpbGRSZXF1 aXJlcyBhbmQgUmVxdWlyZXMgaW4gdGhlIC1kZXZlbCBzdWJwYWNrYWdlCi0KLSogRnJpIE1hciAx NSAyMDE5IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4xYi0zCi0tIGZpeCBy ZWdyZXNzaW9uIGluIEVWUF9QQkVfc2NyeXB0KCkgKCMxNjg4Mjg0KQotLSBmaXggaW5jb3JyZWN0 IGhlbHAgbWVzc2FnZSBpbiBjYSBhcHAgKCMxNTUzMjA2KQotCi0qIEZyaSBNYXIgIDEgMjAxOSBU b23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMWItMgotLSB1c2UgLmluY2x1ZGUg PSBzeW50YXggaW4gdGhlIGNvbmZpZyBmaWxlIHRvIGFsbG93IGl0Ci0gIHRvIGJlIHBhcnNlZCBi eSAxLjAuMiB2ZXJzaW9uICgjMTY2ODkxNikKLQotKiBUaHUgRmViIDI4IDIwMTkgVG9tw6HFoSBN csOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjFiLTEKLS0gdXBkYXRlIHRvIHRoZSAxLjEuMWIg cmVsZWFzZQotLSBFVlBfS0RGIEFQSSBiYWNrcG9ydCBmcm9tIG1hc3RlcgotLSBTU0ggS0RGIGlt cGxlbWVudGF0aW9uIGZvciBFVlBfS0RGIEFQSSBiYWNrcG9ydCBmcm9tIG1hc3RlcgotCi0qIEZy aSBGZWIgMDEgMjAxOSBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXBy b2plY3Qub3JnPiAtIDE6MS4xLjFhLTIKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9q ZWN0Lm9yZy93aWtpL0ZlZG9yYV8zMF9NYXNzX1JlYnVpbGQKLQotKiBUdWUgSmFuIDE1IDIwMTkg VG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjFhLTEKLS0gdXBkYXRlIHRvIHRo ZSAxLjEuMWEgcmVsZWFzZQotCi0qIEZyaSBOb3YgIDkgMjAxOCBUb23DocWhIE1yw6F6IDx0bXJh ekByZWRoYXQuY29tPiAxLjEuMS03Ci0tIHVzZSAvZGV2L3VyYW5kb20gZm9yIHNlZWRpbmcgdGhl IFJORyBpbiBGSVBTIFBPU1QKLQotKiBGcmkgT2N0IDEyIDIwMTggVG9tw6HFoSBNcsOheiA8dG1y YXpAcmVkaGF0LmNvbT4gMS4xLjEtNgotLSBmaXggU0VDTEVWRUwgMyBzdXBwb3J0Ci0tIGZpeCBz b21lIGlzc3VlcyBmb3VuZCBpbiBDb3Zlcml0eSBzY2FuCi0KLSogVGh1IFNlcCAyNyAyMDE4IENo YXJhbGFtcG9zIFN0cmF0YWtpcyA8Y3N0cmF0YWtAcmVkaGF0LmNvbT4gLSAxOjEuMS4xLTUKLS0g Q29ycmVjdGx5IGludm9rZSBzZWQgZm9yIGRlZmluaW5nIE9QRU5TU0xfTk9fU1NMMwotCi0qIFRo dSBTZXAgMjcgMjAxOCBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMS00Ci0t IGRlZmluZSBPUEVOU1NMX05PX1NTTDMgc28gdGhlIG5ld2x5IGJ1aWx0IGRlcGVuZGVuY2llcyBk byBub3QKLSAgaGF2ZSBhY2Nlc3MgdG8gU1NMMyBBUEkgY2FsbHMgYW55bW9yZQotCi0qIE1vbiBT ZXAgMTcgMjAxOCBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMS0zCi0tIHJl aW5zdGF0ZSBhY2NpZGVudGFsbHkgZHJvcHBlZCBwYXRjaCBmb3Igd2VhayBjaXBoZXJzdWl0ZXMK LQotKiBGcmkgU2VwIDE0IDIwMTggVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4x LjEtMgotLSBmb3IgY29uc2lzdGVudCBzdXBwb3J0IG9mIHNlY3VyaXR5IHBvbGljaWVzIHdlIGJ1 aWxkCi0gIFJDNCBzdXBwb3J0IGluIFRMUyAobm90IGRlZmF1bHQpIGFuZCBhbGxvdyBTSEExIGlu IFNFQ0xFVkVMIDIKLQotKiBUaHUgU2VwIDEzIDIwMTggVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVk aGF0LmNvbT4gMS4xLjEtMQotLSB1cGRhdGUgdG8gdGhlIGZpbmFsIDEuMS4xIHZlcnNpb24KLQot KiBUaHUgU2VwICA2IDIwMTggVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjEt MC5wcmU5LjMKLS0gZG8gbm90IHRyeSB0byBpbml0aWFsaXplIFJORyBpbiBjbGVhbnVwIGlmIGl0 IHdhcyBub3QgaW5pdGlhbGl6ZWQKLSAgYmVmb3JlICgjMTYyNDU1NCkKLS0gdXNlIG9ubHkgL2Rl di91cmFuZG9tIGlmIGdldHJhbmRvbSgpIGlzIG5vdCBhdmFpbGFibGUKLS0gZGlzYWJsZSBTTTQK LQotKiBXZWQgQXVnIDI5IDIwMTggVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4x LjEtMC5wcmU5LjIKLS0gZml4IGRhbmdsaW5nIHN5bWxpbmtzIHRvIG1hbnVhbCBwYWdlcwotLSBt YWtlIFNTTHYzX21ldGhvZCB3b3JrCi0KLSogV2VkIEF1ZyAyMiAyMDE4IFRvbcOhxaEgTXLDoXog PHRtcmF6QHJlZGhhdC5jb20+IDEuMS4xLTAucHJlOS4xCi0tIHVwZGF0ZSB0byB0aGUgbGF0ZXN0 IDEuMS4xIGJldGEgdmVyc2lvbgotCi0qIE1vbiBBdWcgMTMgMjAxOCBUb23DocWhIE1yw6F6IDx0 bXJhekByZWRoYXQuY29tPiAxLjEuMS0wLnByZTguNAotLSBiaWRpcmVjdGlvbmFsIHNodXRkb3du IGZpeGVzIGZyb20gdXBzdHJlYW0KLQotKiBNb24gQXVnIDEzIDIwMTggVG9tw6HFoSBNcsOheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjEtMC5wcmU4LjMKLS0gZG8gbm90IHB1dCBlcnJvciBvbiBz dGFjayB3aGVuIHVzaW5nIGZpeGVkIHByb3RvY29sIHZlcnNpb24KLSAgd2l0aCB0aGUgZGVmYXVs dCBjb25maWcgKCMxNjE1MDk4KQotCi0qIEZyaSBKdWwgMjcgMjAxOCBUb23DocWhIE1yw6F6IDx0 bXJhekByZWRoYXQuY29tPiAxLjEuMS0wLnByZTguMgotLSBsb2FkIGNyeXB0byBwb2xpY3kgY29u ZmlnIGZpbGUgZnJvbSB0aGUgZGVmYXVsdCBjb25maWcKLQotKiBXZWQgSnVsIDI1IDIwMTggVG9t w6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjEtMC5wcmU4Ci0tIHVwZGF0ZSB0byB0 aGUgbGF0ZXN0IDEuMS4xIGJldGEgdmVyc2lvbgotCi0qIEZyaSBKdWwgMTMgMjAxOCBGZWRvcmEg UmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDE6MS4xLjBo LTYKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8y OV9NYXNzX1JlYnVpbGQKLQotKiBUdWUgSnVuIDE5IDIwMTggVG9tw6HFoSBNcsOheiA8dG1yYXpA cmVkaGF0LmNvbT4gMS4xLjBoLTUKLS0gZml4IEZJUFMgUlNBIGtleSBnZW5lcmF0aW9uIGZhaWx1 cmUKLQotKiBNb24gSnVuICA0IDIwMTggVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4g MS4xLjBoLTQKLS0gcHBjNjRsZSBpcyBub3QgbXVsdGlsaWIgYXJjaCAoIzE1ODQ5OTQpCi0KLSog VHVlIEFwciAgMyAyMDE4IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4waC0z Ci0tIGZpeCByZWdyZXNzaW9uIG9mIGNfcmVoYXNoICgjMTU2Mjk1MykKLQotKiBUaHUgTWFyIDI5 IDIwMTggVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjBoLTIKLS0gZml4IEZJ UFMgc3ltYm9sIHZlcnNpb25zCi0KLSogVGh1IE1hciAyOSAyMDE4IFRvbcOhxaEgTXLDoXogPHRt cmF6QHJlZGhhdC5jb20+IDEuMS4waC0xCi0tIHVwZGF0ZSB0byB1cHN0cmVhbSB2ZXJzaW9uIDEu MS4waAotLSBhZGQgUmVjb21tZW5kcyBmb3Igb3BlbnNzbC1wa2NzMTEKLQotKiBGcmkgRmViIDIz IDIwMTggVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjBnLTYKLS0gb25lIG1v cmUgdHJ5IHRvIGFwcGx5IFJQTV9MRF9GTEFHUyBwcm9wZXJseSAoIzE1NDEwMzMpCi0tIGRyb3Bw ZWQgdW5uZWVkZWQgc3RhcnR0bHMgeG1wcCBwYXRjaCAoIzE0MTcwMTcpCi0KLSogVGh1IEZlYiAw OCAyMDE4IEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5v cmc+IC0gMToxLjEuMGctNQotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3Jn L3dpa2kvRmVkb3JhXzI4X01hc3NfUmVidWlsZAotCi0qIFRodSBGZWIgIDEgMjAxOCBUb23DocWh IE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMGctNAotLSBhcHBseSBSUE1fTERfRkxBR1Mg cHJvcGVybHkgKCMxNTQxMDMzKQotCi0qIFRodSBKYW4gMTEgMjAxOCBUb23DocWhIE1yw6F6IDx0 bXJhekByZWRoYXQuY29tPiAxLjEuMGctMwotLSBzaWxlbmNlIHRoZSAucm5kIHdyaXRlIGZhaWx1 cmUgYXMgdGhhdCBpcyBhdXhpbGlhcnkgZnVuY3Rpb25hbGl0eSAoIzE1MjQ4MzMpCi0KLSogVGh1 IERlYyAxNCAyMDE3IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4wZy0yCi0t IHB1dCB0aGUgTWFrZWZpbGUuY2VydGlmaWNhdGUgaW4gcGtnZG9jZGlyIGFuZCBkcm9wIHRoZSBy ZXF1aXJlbWVudCBvbiBtYWtlCi0KLSogRnJpIE5vdiAgMyAyMDE3IFRvbcOhxaEgTXLDoXogPHRt cmF6QHJlZGhhdC5jb20+IDEuMS4wZy0xCi0tIHVwZGF0ZSB0byB1cHN0cmVhbSB2ZXJzaW9uIDEu MS4wZwotCi0qIFRodSBBdWcgMDMgMjAxNyBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVs ZW5nQGZlZG9yYXByb2plY3Qub3JnPiAtIDE6MS4xLjBmLTkKLS0gUmVidWlsdCBmb3IgaHR0cHM6 Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8yN19CaW51dGlsc19NYXNzX1JlYnVpbGQK LQotKiBUaHUgSnVsIDI3IDIwMTcgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbGVuZ0Bm ZWRvcmFwcm9qZWN0Lm9yZz4gLSAxOjEuMS4wZi04Ci0tIFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVk b3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMjdfTWFzc19SZWJ1aWxkCi0KLSogTW9uIEp1bCAx NyAyMDE3IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDE6MS4xLjBmLTcKLS0gbWFr ZSBzX2NsaWVudCBhbmQgc19zZXJ2ZXIgd29yayB3aXRoIC1zc2wzIG9wdGlvbiAoIzE0NzE3ODMp Ci0KLSogVGh1IEp1bCAxMyAyMDE3IFBldHIgUGlzYXIgPHBwaXNhckByZWRoYXQuY29tPiAtIDE6 MS4xLjBmLTYKLS0gcGVybCBkZXBlbmRlbmN5IHJlbmFtZWQgdG8gcGVybC1pbnRlcnByZXRlcgot ICA8aHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0NoYW5nZXMvcGVybF9QYWNrYWdlX3Rv X0luc3RhbGxfQ29yZV9Nb2R1bGVzPgotCi0qIE1vbiBKdW4gMjYgMjAxNyBUb23DocWhIE1yw6F6 IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMGYtNQotLSBkaXNhYmxlIHZlcmlmaWNhdGlvbiBvZiBh bGwgaW5zZWN1cmUgaGFzaGVzCi0KLSogRnJpIEp1biAyMyAyMDE3IFRvbcOhxaEgTXLDoXogPHRt cmF6QHJlZGhhdC5jb20+IDEuMS4wZi00Ci0tIG1ha2UgRFRMUyB3b3JrICgjMTQ2MjU0MSkKLQot KiBUaHUgSnVuIDE1IDIwMTcgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjBm LTMKLS0gZW5hYmxlIDNERVMgU1NMIGNpcGhlcnN1aXRlcywgUkM0IGlzIGtlcHQgZGlzYWJsZWQg KCMxNDUzMDY2KQotCi0qIE1vbiBKdW4gIDUgMjAxNyBUb23DocWhIE1yw6F6IDx0bXJhekByZWRo YXQuY29tPiAxLjEuMGYtMgotLSBvbmx5IHJlbGVhc2UgdGhyZWFkLWxvY2FsIGtleSBpZiB3ZSBj cmVhdGVkIGl0IChmcm9tIHVwc3RyZWFtKSAoIzE0NTg3NzUpCi0KLSogRnJpIEp1biAgMiAyMDE3 IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4wZi0xCi0tIHVwZGF0ZSB0byB1 cHN0cmVhbSB2ZXJzaW9uIDEuMS4wZgotLSBTUlAgYW5kIEdPU1QgaXMgbm93IGFsbG93ZWQsIG5v dGUgdGhhdCBHT1NUIHN1cHBvcnQgcmVxdWlyZXMKLSAgYWRkaW5nIEdPU1QgZW5naW5lIHdoaWNo IGlzIG5vdCBwYXJ0IG9mIG9wZW5zc2wgYW55bW9yZQotCi0qIFRodSBGZWIgMTYgMjAxNyBUb23D ocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMGUtMQotLSB1cGRhdGUgdG8gdXBzdHJl YW0gdmVyc2lvbiAxLjEuMGUKLS0gYWRkIGRvY3VtZW50YXRpb24gb2YgdGhlIFBST0ZJTEU9U1lT VEVNIHNwZWNpYWwgY2lwaGVyIHN0cmluZyAoIzE0MjAyMzIpCi0KLSogU2F0IEZlYiAxMSAyMDE3 IEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0g MToxLjEuMGQtMwotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kv RmVkb3JhXzI2X01hc3NfUmVidWlsZAotCi0qIFdlZCBGZWIgIDEgMjAxNyBUb23DocWhIE1yw6F6 IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMGQtMgotLSBhcHBsaWVkIHVwc3RyZWFtIGZpeGVzIChm aXggcmVncmVzc2lvbiBpbiBYNTA5X0NSTF9kaWdlc3QpCi0KLSogVGh1IEphbiAyNiAyMDE3IFRv bcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4wZC0xCi0tIHVwZGF0ZSB0byB1cHN0 cmVhbSB2ZXJzaW9uIDEuMS4wZAotCi0qIFRodSBEZWMgMjIgMjAxNiBUb23DocWhIE1yw6F6IDx0 bXJhekByZWRoYXQuY29tPiAxLjEuMGMtNQotLSBwcmVzZXJ2ZSBuZXcgbGluZSBpbiBmZCBCSU8g QklPX2dldHMoKSBhcyBvdGhlciBCSU9zIGRvCi0KLSogRnJpIERlYyAgMiAyMDE2IFRvbcOhxaEg TXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4wYy00Ci0tIEZJUFMgbW9kZSBmaXhlcyBmb3Ig VExTCi0KLSogV2VkIE5vdiAzMCAyMDE2IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+ IDEuMS4wYy0zCi0tIHJldmVydCBTU0xfcmVhZCgpIGJlaGF2aW9yIGNoYW5nZSAtIHBhdGNoIGZy b20gdXBzdHJlYW0gKCMxMzk0Njc3KQotLSBmaXggYmVoYXZpb3Igb24gY2xpZW50IGNlcnRpZmlj YXRlIHJlcXVlc3QgaW4gcmVuZWdvdGlhdGlvbiAoIzEzOTM1NzkpCi0KLSogVHVlIE5vdiAyMiAy MDE2IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4wYy0yCi0tIEVDIGN1cnZl IE5JU1QgUC0yMjQgaXMgbm93IGFsbG93ZWQsIHN0aWxsIGtlcHQgZGlzYWJsZWQgaW4gVExTIGR1 ZQotICB0byBsZXNzIHRoYW4gb3B0aW1hbCBzZWN1cml0eQotCi0qIEZyaSBOb3YgMTEgMjAxNiBU b23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjEuMGMtMQotLSB1cGRhdGUgdG8gdXBz dHJlYW0gdmVyc2lvbiAxLjEuMGMKLQotKiBGcmkgTm92ICA0IDIwMTYgVG9tw6HFoSBNcsOheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjBiLTQKLS0gdXNlIGEgcmFuZG9tIHNlZWQgaWYgdGhlIHN1 cHBsaWVkIG9uZSBkaWQgbm90IGdlbmVyYXRlIHZhbGlkCi0gIHBhcmFtZXRlcnMgaW4gZHNhX2J1 aWx0aW5fcGFyYW1nZW4yKCkKLQotKiBXZWQgT2N0IDEyIDIwMTYgVG9tw6HFoSBNcsOheiA8dG1y YXpAcmVkaGF0LmNvbT4gMS4xLjBiLTMKLS0gZG8gbm90IGJyZWFrIGNvbnRyYWN0IG9uIHJldHVy biB2YWx1ZSB3aGVuIHVzaW5nIGRzYV9idWlsdGluX3BhcmFtZ2VuMigpCi0KLSogV2VkIE9jdCAx MiAyMDE2IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMS4wYi0yCi0tIGZpeCBh ZmFsZyBmYWlsdXJlIG9uIGJpZyBlbmRpYW4KLQotKiBUdWUgT2N0IDExIDIwMTYgVG9tw6HFoSBN csOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4xLjBiLTEKLS0gdXBkYXRlIHRvIHVwc3RyZWFtIHZl cnNpb24gMS4xLjBiCi0KLSogRnJpIE9jdCAwNyAyMDE2IFJpY2hhcmQgVy5NLiBKb25lcyA8cmpv bmVzQHJlZGhhdC5jb20+IC0gMToxLjAuMmotMgotLSBBZGQgZmxhZ3MgZm9yIHJpc2N2NjQuCi0K LSogTW9uIFNlcCAyNiAyMDE2IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4y ai0xCi0tIG1pbm9yIHVwc3RyZWFtIHJlbGVhc2UgMS4wLjJqIGZpeGluZyByZWdyZXNzaW9uIGZy b20gcHJldmlvdXMgcmVsZWFzZQotCi0qIFNhdCBTZXAgMjQgMjAxNiBEYXZpZCBXb29kaG91c2Ug PGR3bXcyQGluZnJhZGVhZC5vcmc+IDEuMC4yaS0yCi0tIEZpeCBlbmdpbmVzZGlyIGluIGxpYmNy eXB0by5jICgjMTM3NTM2MSkKLQotKiBUaHUgU2VwIDIyIDIwMTYgVG9tw6HFoSBNcsOheiA8dG1y YXpAcmVkaGF0LmNvbT4gMS4wLjJpLTEKLS0gbWlub3IgdXBzdHJlYW0gcmVsZWFzZSAxLjAuMmkg Zml4aW5nIHNlY3VyaXR5IGlzc3VlcwotLSBtb3ZlIG1hbiBwYWdlcyBmb3IgcGVybCBiYXNlZCBz Y3JpcHRzIHRvIHBlcmwgc3VicGFja2FnZSAoIzEzNzc2MTcpCi0KLSogV2VkIEF1ZyAxMCAyMDE2 IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4yaC0zCi0tIGZpeCByZWdyZXNz aW9uIGluIENpc2NvIEFueUNvbm5lY3QgVlBOIHN1cHBvcnQgKCMxMzU0NTg4KQotCi0qIE1vbiBK dW4gMjcgMjAxNiBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMmgtMgotLSBy ZXF1aXJlIGxpYmNyeXB0byBpbiBsaWJzc2wucGMgKCMxMzAxMzAxKQotCi0qIFR1ZSBNYXkgIDMg MjAxNiBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMmgtMQotLSBtaW5vciB1 cHN0cmVhbSByZWxlYXNlIDEuMC4yaCBmaXhpbmcgc2VjdXJpdHkgaXNzdWVzCi0KLSogVHVlIE1h ciAyOSAyMDE2IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4yZy00Ci0tIGRp c2FibGUgU1NMdjIgc3VwcG9ydCBhbHRvZ2V0aGVyICh3aXRob3V0IEFCSSBicmVhaykKLQotKiBN b24gTWFyICA3IDIwMTYgVG9tIENhbGxhd2F5IDxzcG90QGZlZG9yYXByb2plY3Qub3JnPiAtIDEu MC4yZy0zCi0tIGVuYWJsZSBSQzUKLQotKiBXZWQgTWFyICAyIDIwMTYgVG9tw6HFoSBNcsOheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjJnLTIKLS0gcmVlbmFibGUgU1NMMiBpbiB0aGUgYnVpbGQg dG8gYXZvaWQgQUJJIGJyZWFrIChpdCBkb2VzIG5vdAotICBtYWtlIHRoZSBvcGVuc3NsIHZ1bG5l cmFibGUgdG8gRFJPV04gYXR0YWNrKQotCi0qIFR1ZSBNYXIgIDEgMjAxNiBUb23DocWhIE1yw6F6 IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMmctMQotLSBtaW5vciB1cHN0cmVhbSByZWxlYXNlIDEu MC4yZyBmaXhpbmcgc2VjdXJpdHkgaXNzdWVzCi0KLSogVGh1IEZlYiAwNCAyMDE2IEZlZG9yYSBS ZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWxlbmdAZmVkb3JhcHJvamVjdC5vcmc+IC0gMToxLjAuMmYt MgotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzI0 X01hc3NfUmVidWlsZAotCi0qIFRodSBKYW4gMjggMjAxNiBUb23DocWhIE1yw6F6IDx0bXJhekBy ZWRoYXQuY29tPiAxLjAuMmYtMQotLSBtaW5vciB1cHN0cmVhbSByZWxlYXNlIDEuMC4yZiBmaXhp bmcgc2VjdXJpdHkgaXNzdWVzCi0tIGFkZCBzdXBwb3J0IGZvciBNSVBTIHNlY29uZGFyeSBhcmNo aXRlY3R1cmUKLQotKiBGcmkgSmFuIDE1IDIwMTYgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0 LmNvbT4gMS4wLjJlLTUKLS0gZG9jdW1lbnQgc29tZSBvcHRpb25zIG9mIG9wZW5zc2wgc3BlZWQg Y29tbWFuZAotCi0qIEZyaSBEZWMgMTggMjAxNSBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQu Y29tPiAxLjAuMmUtNAotLSBlbmFibGUgc2N0cCBzdXBwb3J0IGluIERUTFMKLQotKiBUdWUgRGVj ICA4IDIwMTUgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjJlLTMKLS0gcmVt b3ZlIHVuaW1wbGVtZW50ZWQgRUMgbWV0aG9kIGZyb20gaGVhZGVyICgjMTI4OTU5OSkKLQotKiBN b24gRGVjICA3IDIwMTUgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjJlLTIK LS0gdGhlIGZhc3QgbmlzdHAgaW1wbGVtZW50YXRpb24gd29ya3Mgb25seSBvbiBsaXR0bGUgZW5k aWFuIGFyY2hpdGVjdHVyZXMKLQotKiBGcmkgRGVjICA0IDIwMTUgVG9tw6HFoSBNcsOheiA8dG1y YXpAcmVkaGF0LmNvbT4gMS4wLjJlLTEKLS0gbWlub3IgdXBzdHJlYW0gcmVsZWFzZSAxLjAuMmUg Zml4aW5nIG1vZGVyYXRlIHNldmVyaXR5IHNlY3VyaXR5IGlzc3VlcwotLSBlbmFibGUgZmFzdCBh c3NlbWJsZXIgaW1wbGVtZW50YXRpb24gZm9yIE5JU1QgUC0yNTYgYW5kIFAtNTIxCi0gIGVsbGlw dGljIGN1cnZlcyAoIzExNjQyMTApCi0tIGZpbHRlciBvdXQgdW53YW50ZWQgbGluayBvcHRpb25z IGZyb20gdGhlIC5wYyBmaWxlcyAoIzEyNTc4MzYpCi0tIGRvIG5vdCBzZXQgc2VyaWFsIHRvIDAg aW4gTWFrZWZpbGUuY2VydGlmaWNhdGUgKCMxMTM1NzE5KQotCi0qIE1vbiBOb3YgMTYgMjAxNSBU b23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMmQtMwotLSBmaXggc2lnaWxsIG9u IHNvbWUgQU1EIENQVXMgKCMxMjc4MTk0KQotCi0qIFdlZCBBdWcgMTIgMjAxNSBUb20gQ2FsbGF3 YXkgPHNwb3RAZmVkb3JhcHJvamVjdC5vcmc+IDEuMC4yZC0yCi0tIHJlLWVuYWJsZSBzZWNwMjU2 azEgKGJ6MTAyMTg5OCkKLQotKiBUaHUgSnVsICA5IDIwMTUgVG9tw6HFoSBNcsOheiA8dG1yYXpA cmVkaGF0LmNvbT4gMS4wLjJkLTEKLS0gbWlub3IgdXBzdHJlYW0gcmVsZWFzZSAxLjAuMmQgZml4 aW5nIGEgaGlnaCBzZXZlcml0eSBzZWN1cml0eSBpc3N1ZQotCi0qIFR1ZSBKdWwgIDcgMjAxNSBU b23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMmMtMwotLSBmaXggdGhlIGFhcmNo NjQgYnVpbGQKLQotKiBUaHUgSnVuIDE4IDIwMTUgRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcg PHJlbC1lbmdAbGlzdHMuZmVkb3JhcHJvamVjdC5vcmc+IC0gMToxLjAuMmMtMgotLSBSZWJ1aWx0 IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kvRmVkb3JhXzIzX01hc3NfUmVidWls ZAotCi0qIE1vbiBKdW4gMTUgMjAxNSBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAx LjAuMmMtMQotLSBtaW5vciB1cHN0cmVhbSByZWxlYXNlIDEuMC4yYyBmaXhpbmcgbXVsdGlwbGUg c2VjdXJpdHkgaXNzdWVzCi0KLSogVGh1IE1heSAgNyAyMDE1IFBldGVyIFJvYmluc29uIDxwYnJv Ymluc29uQGZlZG9yYXByb2plY3Qub3JnPiAxLjAuMmEtNAotLSBBZGQgYWFyY2g2NCBzc2xhcmNo IGRldGFpbHMKLQotKiBUaHUgTWF5ICA3IDIwMTUgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0 LmNvbT4gMS4wLjJhLTMKLS0gZml4IHNvbWUgNjQgYml0IGJ1aWxkIHRhcmdldHMKLQotKiBUdWUg QXByIDI4IDIwMTUgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjJhLTIKLS0g YWRkIGFsdGVybmF0aXZlIGNlcnRpZmljYXRlIGNoYWluIGRpc2NvdmVyeSBzdXBwb3J0IGZyb20g dXBzdHJlYW0KLQotKiBUaHUgQXByIDIzIDIwMTUgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0 LmNvbT4gMS4wLjJhLTEKLS0gcmViYXNlIHRvIDEuMC4yIGJyYW5jaAotCi0qIFRodSBBcHIgIDkg MjAxNSBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWstNwotLSBkcm9wIHRo ZSBBRVMtR0NNIHJlc3RyaWN0aW9uIG9mIDJeMzIgb3BlcmF0aW9ucyBiZWNhdXNlIHRoZSBJViBp cwotICBhbHdheXMgOTYgYml0cyAoMzIgYml0IGZpeGVkIGZpZWxkICsgNjQgYml0IGludm9jYXRp b24gZmllbGQpCi0KLSogVGh1IE1hciAxOSAyMDE1IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhh dC5jb20+IDEuMC4xay02Ci0tIGZpeCBDVkUtMjAxNS0wMjA5IC0gcG90ZW50aWFsIHVzZSBhZnRl ciBmcmVlIGluIGQyaV9FQ1ByaXZhdGVLZXkoKQotLSBmaXggQ1ZFLTIwMTUtMDI4NiAtIGltcHJv cGVyIGhhbmRsaW5nIG9mIEFTTi4xIGJvb2xlYW4gY29tcGFyaXNvbgotLSBmaXggQ1ZFLTIwMTUt MDI4NyAtIEFTTi4xIHN0cnVjdHVyZSByZXVzZSBkZWNvZGluZyBtZW1vcnkgY29ycnVwdGlvbgot LSBmaXggQ1ZFLTIwMTUtMDI4OSAtIE5VTEwgZGVyZWZlcmVuY2UgZGVjb2RpbmcgaW52YWxpZCBQ S0NTIzcgZGF0YQotLSBmaXggQ1ZFLTIwMTUtMDI5MyAtIHRyaWdnZXJhYmxlIGFzc2VydCBpbiBT U0x2MiBzZXJ2ZXIKLQotKiBNb24gTWFyIDE2IDIwMTUgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVk aGF0LmNvbT4gMS4wLjFrLTUKLS0gZml4IGJ1ZyBpbiB0aGUgQ1JZUFRPXzEyOF91bndyYXAoKQot Ci0qIEZyaSBGZWIgMjcgMjAxNSBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAu MWstNAotLSBmaXggYnVnIGluIHRoZSBSRkMgNTY0OSBzdXBwb3J0ICgjMTE4NTg3OCkKLQotKiBT YXQgRmViIDIxIDIwMTUgVGlsbCBNYWFzIDxvcGVuc291cmNlQHRpbGwubmFtZT4gLSAxOjEuMC4x ay0zCi0tIFJlYnVpbHQgZm9yIEZlZG9yYSAyMyBDaGFuZ2UKLSAgaHR0cHM6Ly9mZWRvcmFwcm9q ZWN0Lm9yZy93aWtpL0NoYW5nZXMvSGFyZGVuX2FsbF9wYWNrYWdlc193aXRoX3Bvc2l0aW9uLWlu ZGVwZW5kZW50X2NvZGUKLQotKiBUaHUgSmFuIDE1IDIwMTUgVG9tw6HFoSBNcsOheiA8dG1yYXpA cmVkaGF0LmNvbT4gMS4wLjFrLTIKLS0gdGVzdCBpbiB0aGUgbm9uLUZJUFMgUlNBIGtleWdlbiBm b3IgbWluaW1hbCBkaXN0YW5jZSBvZiBwIGFuZCBxCi0gIHNpbWlsYXJseSB0byB0aGUgRklQUyBS U0Ega2V5Z2VuCi0KLSogRnJpIEphbiAgOSAyMDE1IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhh dC5jb20+IDEuMC4xay0xCi0tIG5ldyB1cHN0cmVhbSByZWxlYXNlIGZpeGluZyBtdWx0aXBsZSBz ZWN1cml0eSBpc3N1ZXMKLQotKiBUaHUgTm92IDIwIDIwMTQgVG9tw6HFoSBNcsOheiA8dG1yYXpA cmVkaGF0LmNvbT4gMS4wLjFqLTMKLS0gZGlzYWJsZSBTU0x2MyBieSBkZWZhdWx0IGFnYWluICht YWlsIHNlcnZlcnMgYW5kIHBvc3NpYmx5Ci0gIExEQVAgc2VydmVycyBzaG91bGQgcHJvYmFibHkg YWxsb3cgaXQgZXhwbGljaXRseSBmb3IgbGVnYWN5Ci0gIGNsaWVudHMpCi0KLSogVHVlIE9jdCAy MSAyMDE0IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xai0yCi0tIHVwZGF0 ZSB0aGUgRklQUyBSU0Ega2V5Z2VuIHRvIGJlIEZJUFMgMTg2LTQgY29tcGxpYW50Ci0KLSogVGh1 IE9jdCAxNiAyMDE0IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xai0xCi0t IG5ldyB1cHN0cmVhbSByZWxlYXNlIGZpeGluZyBtdWx0aXBsZSBzZWN1cml0eSBpc3N1ZXMKLQot KiBGcmkgT2N0IDEwIDIwMTQgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFp LTUKLS0gY29weSBuZWdvdGlhdGVkIGRpZ2VzdHMgd2hlbiBzd2l0Y2hpbmcgY2VydHMgYnkgU05J ICgjMTE1MDAzMikKLQotKiBNb24gU2VwICA4IDIwMTQgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVk aGF0LmNvbT4gMS4wLjFpLTQKLS0gYWRkIHN1cHBvcnQgZm9yIFJGQyA1NjQ5Ci0KLSogU3VuIEF1 ZyAxNyAyMDE0IEZlZG9yYSBSZWxlYXNlIEVuZ2luZWVyaW5nIDxyZWwtZW5nQGxpc3RzLmZlZG9y YXByb2plY3Qub3JnPiAtIDE6MS4wLjFpLTMKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFw cm9qZWN0Lm9yZy93aWtpL0ZlZG9yYV8yMV8yMl9NYXNzX1JlYnVpbGQKLQotKiBXZWQgQXVnIDEz IDIwMTQgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFpLTIKLS0gZHJvcCBS U0EgWDkuMzEgZnJvbSBSU0EgRklQUyBzZWxmdGVzdHMKLS0gYWRkIFBvd2VyIDggb3B0aW1hbGl6 YXRpb25zCi0KLSogVGh1IEF1ZyAgNyAyMDE0IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5j b20+IDEuMC4xaS0xCi0tIG5ldyB1cHN0cmVhbSByZWxlYXNlIGZpeGluZyBtdWx0aXBsZSBtb2Rl cmF0ZSBzZWN1cml0eSBpc3N1ZXMKLS0gZm9yIG5vdyBkaXNhYmxlIG9ubHkgU1NMdjIgYnkgZGVm YXVsdAotCi0qIEZyaSBKdWwgMTggMjAxNCBUb20gQ2FsbGF3YXkgPHNwb3RAZmVkb3JhcHJvamVj dC5vcmc+IDEuMC4xaC02Ci0tIGZpeCBsaWNlbnNlIGhhbmRsaW5nCi0KLSogTW9uIEp1biAzMCAy MDE0IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xaC01Ci0tIGRpc2FibGUg U1NMdjIgYW5kIFNTTHYzIHByb3RvY29scyBieSBkZWZhdWx0IChjYW4gYmUgZW5hYmxlZAotICB2 aWEgYXBwcm9wcmlhdGUgU1NMX0NUWF9jbGVhcl9vcHRpb25zKCkgY2FsbCkKLQotKiBXZWQgSnVu IDExIDIwMTQgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFoLTQKLS0gdXNl IHN5c3RlbSBwcm9maWxlIGZvciBkZWZhdWx0IGNpcGhlciBsaXN0Ci0KLSogVHVlIEp1biAxMCAy MDE0IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xaC0zCi0tIG1ha2UgRklQ UyBtb2RlIGtleWdlbiBiaXQgbGVuZ3RoIHJlc3RyaWN0aW9uIGVuZm9yY2VkIG9ubHkgd2hlbgot ICBPUEVOU1NMX0VORk9SQ0VfTU9EVUxVU19CSVRTIGlzIHNldAotLSBmaXggQ1ZFLTIwMTQtMDIy NCBmaXggdGhhdCBicm9rZSBFQVAtRkFTVCBzZXNzaW9uIHJlc3VtcHRpb24gc3VwcG9ydAotCi0q IFNhdCBKdW4gMDcgMjAxNCBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsLWVuZ0BsaXN0 cy5mZWRvcmFwcm9qZWN0Lm9yZz4gLSAxOjEuMC4xaC0yCi0tIFJlYnVpbHQgZm9yIGh0dHBzOi8v ZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMjFfTWFzc19SZWJ1aWxkCi0KLSogVGh1IEp1 biAgNSAyMDE0IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xaC0xCi0tIG5l dyB1cHN0cmVhbSByZWxlYXNlIDEuMC4xaAotCi0qIFNhdCBNYXkgMzEgMjAxNCBQZXRlciBSb2Jp bnNvbiA8cGJyb2JpbnNvbkBmZWRvcmFwcm9qZWN0Lm9yZz4gMS4wLjFnLTIKLS0gRHJvcCBvYnNv bGV0ZSBhbmQgaXJyZWxldmFudCBkb2NzCi0tIE1vdmUgZGV2ZWwgZG9jcyB0byBhcHByb3ByaWF0 ZSBwYWNrYWdlCi0KLSogV2VkIE1heSAgNyAyMDE0IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhh dC5jb20+IDEuMC4xZy0xCi0tIG5ldyB1cHN0cmVhbSByZWxlYXNlIDEuMC4xZwotLSBkbyBub3Qg aW5jbHVkZSBFQ0MgY2lwaGVyc3VpdGVzIGluIFNTTHYyIGNsaWVudCBoZWxsbyAoIzEwOTA5NTIp Ci0tIGZhaWwgb24gaG1hYyBpbnRlZ3JpdHkgY2hlY2sgaWYgdGhlIC5obWFjIGZpbGUgaXMgZW1w dHkKLQotKiBNb24gQXByIDA3IDIwMTQgRGVubmlzIEdpbG1vcmUgPGRlbm5pc0BhdXNpbC51cz4g LSAxLjAuMWUtNDQKLS0gcHVsbCBpbiB1cHN0cmVhbSBwYXRjaCBmb3IgQ1ZFLTIwMTQtMDE2MAot LSByZW1vdmVkIENIQU5HRVMgZmlsZSBwb3J0aW9uIGZyb20gcGF0Y2ggZm9yIGV4cGVkaWVuY3kK LQotKiBUaHUgQXByICAzIDIwMTQgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4w LjFlLTQzCi0tIGFkZCBzdXBwb3J0IGZvciBwcGM2NGxlIGFyY2hpdGVjdHVyZSAoIzEwNzI2MzMp Ci0KLSogTW9uIE1hciAxNyAyMDE0IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEu MC4xZS00MgotLSBwcm9wZXJseSBkZXRlY3QgZW5jcnlwdGlvbiBmYWlsdXJlIGluIEJJTwotLSB1 c2UgMjA0OCBiaXQgUlNBIGtleSBpbiBGSVBTIHNlbGZ0ZXN0cwotCi0qIEZyaSBGZWIgMTQgMjAx NCBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWUtNDEKLS0gdXNlIHRoZSBr ZXkgbGVuZ3RoIGZyb20gY29uZmlndXJhdGlvbiBmaWxlIGlmIHJlcSAtbmV3a2V5IHJzYSBpcyBp bnZva2VkCi0KLSogVGh1IEZlYiAxMyAyMDE0IFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5j b20+IDEuMC4xZS00MAotLSBwcmludCBlcGhlbWVyYWwga2V5IHNpemUgbmVnb3RpYXRlZCBpbiBU TFMgaGFuZHNoYWtlICgjMTA1NzcxNSkKLS0gYWRkIERIX2NvbXB1dGVfa2V5X3BhZGRlZCBuZWVk ZWQgZm9yIEZJUFMgQ0FWUyB0ZXN0aW5nCi0KLSogVGh1IEZlYiAgNiAyMDE0IFRvbcOhxaEgTXLD oXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xZS0zOQotLSBtYWtlIGV4cGlyYXRpb24gYW5kIGtl eSBsZW5ndGggY2hhbmdlYWJsZSBieSBEQVlTIGFuZCBLRVlMRU4KLSAgdmFyaWFibGVzIGluIHRo ZSBjZXJ0aWZpY2F0ZSBNYWtlZmlsZSAoIzEwNTgxMDgpCi0tIGNoYW5nZSBkZWZhdWx0IGhhc2gg dG8gc2hhMjU2ICgjMTA2MjMyNSkKLQotKiBXZWQgSmFuIDIyIDIwMTQgVG9tw6HFoSBNcsOheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFlLTM4Ci0tIG1ha2UgM2RlcyBzdHJlbmd0aCB0byBiZSAx MjggYml0cyBpbnN0ZWFkIG9mIDE2OCAoIzEwNTY2MTYpCi0KLSogVHVlIEphbiAgNyAyMDE0IFRv bcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xZS0zNwotLSBmaXggQ1ZFLTIwMTMt NDM1MyAtIEludmFsaWQgVExTIGhhbmRzaGFrZSBjcmFzaAotLSBmaXggQ1ZFLTIwMTMtNjQ1MCAt IHBvc3NpYmxlIE1pVE0gYXR0YWNrIG9uIERUTFMxCi0KLSogRnJpIERlYyAyMCAyMDEzIFRvbcOh xaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xZS0zNgotLSBmaXggQ1ZFLTIwMTMtNjQ0 OSAtIGNyYXNoIHdoZW4gdmVyc2lvbiBpbiBTU0wgc3RydWN0dXJlIGlzIGluY29ycmVjdAotLSBt b3JlIEZJUFMgdmFsaWRhdGlvbiByZXF1aXJlbWVudCBjaGFuZ2VzCi0KLSogV2VkIERlYyAxOCAy MDEzIFRvbcOhxaEgTXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xZS0zNQotLSBkcm9wIHdl YWsgY2lwaGVycyBmcm9tIHRoZSBkZWZhdWx0IFRMUyBjaXBoZXJzdWl0ZSBsaXN0Ci0tIGFkZCBi YWNrIHNvbWUgc3ltYm9scyB0aGF0IHdlcmUgZHJvcHBlZCB3aXRoIHVwZGF0ZSB0byAxLjAuMSBi cmFuY2gKLS0gbW9yZSBGSVBTIHZhbGlkYXRpb24gcmVxdWlyZW1lbnQgY2hhbmdlcwotCi0qIFR1 ZSBOb3YgMTkgMjAxMyBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWUtMzQK LS0gZml4IGxvY2tpbmcgYW5kIHJlc2VlZGluZyBwcm9ibGVtcyB3aXRoIEZJUFMgZHJiZwotCi0q IEZyaSBOb3YgMTUgMjAxMyBUb23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWUt MzMKLS0gYWRkaXRpb25hbCBjaGFuZ2VzIHJlcXVpcmVkIGZvciBGSVBTIHZhbGlkYXRpb24KLQot KiBXZWQgTm92IDEzIDIwMTMgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFl LTMyCi0tIGRpc2FibGUgdmVyaWZpY2F0aW9uIG9mIGNlcnRpZmljYXRlLCBDUkwsIGFuZCBPQ1NQ IHNpZ25hdHVyZXMKLSAgdXNpbmcgTUQ1IGlmIE9QRU5TU0xfRU5BQkxFX01ENV9WRVJJRlkgZW52 aXJvbm1lbnQgdmFyaWFibGUKLSAgaXMgbm90IHNldAotCi0qIEZyaSBOb3YgIDggMjAxMyBUb23D ocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWUtMzEKLS0gYWRkIGJhY2sgc3VwcG9y dCBmb3Igc2VjcDUyMXIxIEVDIGN1cnZlCi0tIGFkZCBhYXJjaDY0IHRvIENvbmZpZ3VyZSAoIzk2 OTY5MikKLQotKiBUdWUgT2N0IDI5IDIwMTMgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNv bT4gMS4wLjFlLTMwCi0tIGZpeCBtaXNkZXRlY3Rpb24gb2YgUkRSQU5EIHN1cHBvcnQgb24gQ3ly aXggQ1BVUyAoZnJvbSB1cHN0cmVhbSkgKCMxMDIyMzQ2KQotCi0qIFRodSBPY3QgMjQgMjAxMyBU b23DocWhIE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWUtMjkKLS0gZG8gbm90IGFkdmVy dGlzZSBFQ0MgY3VydmVzIHdlIGRvIG5vdCBzdXBwb3J0ICgjMTAyMjQ5MykKLQotKiBXZWQgT2N0 IDE2IDIwMTMgVG9tw6HFoSBNcsOheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFlLTI4Ci0tIG9u bHkgRUNDIE5JU1QgU3VpdGUgQiBjdXJ2ZXMgc3VwcG9ydAotLSBkcm9wIC1maXBzIHN1YnBhY2th Z2UKLQotKiBNb24gT2N0IDE0IDIwMTMgVG9tIENhbGxhd2F5IDxzcG90QGZlZG9yYXByb2plY3Qu b3JnPiAtIDEuMC4xZS0yNwotLSByZXNvbHZlIGJ1Z3ppbGxhIDMxOTkwMSAocGhldyEgb25seSB0 b29rIDYgeWVhcnMgJiA5IGRheXMpCi0KLSogRnJpIFNlcCAyNyAyMDEzIFRvbcOhxaEgTXLDoXog PHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xZS0yNgotLSBtYWtlIERUTFMxIHdvcmsgaW4gRklQUyBt b2RlCi0tIGF2b2lkIFJTQSBhbmQgRFNBIDUxMiBiaXRzIGFuZCBXaGlybHBvb2wgaW4gJ29wZW5z c2wgc3BlZWQnIGluIEZJUFMgbW9kZQotCi0qIE1vbiBTZXAgMjMgMjAxMyBUb23DocWhIE1yw6F6 IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWUtMjUKLS0gYXZvaWQgZGxvcGVuaW5nIGxpYnNzbC5z byBmcm9tIGxpYmNyeXB0byAoIzEwMTAzNTcpCi0KLSogRnJpIFNlcCAyMCAyMDEzIFRvbcOhxaEg TXLDoXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xZS0yNAotLSBmaXggc21hbGwgbWVtb3J5IGxl YWsgaW4gRklQUyBhZXMgc2VsZnRlc3QKLQotKiBUaHUgU2VwIDE5IDIwMTMgVG9tw6HFoSBNcsOh eiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFlLTIzCi0tIGZpeCBzZWdmYXVsdCBpbiBvcGVuc3Ns IHNwZWVkIGhtYWMgaW4gdGhlIEZJUFMgbW9kZQotCi0qIFRodSBTZXAgMTIgMjAxMyBUb23DocWh IE1yw6F6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWUtMjIKLS0gZG9jdW1lbnQgdGhlIG5leHRw cm90b25lZyBvcHRpb24gaW4gbWFudWFsIHBhZ2VzCi0gIG9yaWdpbmFsIHBhdGNoIGJ5IEh1YmVy dCBLYXJpbwotCi0qIFR1ZSBTZXAgMTAgMjAxMyBLeWxlIE1jTWFydGluIDxreWxlQHJlZGhhdC5j b20+IDEuMC4xZS0yMQotLSBbYXJtXSB1c2UgZWxmIGF1eHYgdG8gZmlndXJlIG91dCBhcm1jYXAu YyBpbnN0ZWFkIG9mIHBsYXlpbmcgc2lsbHkKLSAgZ2FtZXMgd2l0aCBTSUdJTEwgaGFuZGxlcnMu ICgjMTAwNjQ3NCkKLQotKiBXZWQgU2VwICA0IDIwMTMgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0 LmNvbT4gMS4wLjFlLTIwCi0tIHRyeSB0byBhdm9pZCBzb21lIHJhY2VzIHdoZW4gdXBkYXRpbmcg dGhlIC1maXBzIHN1YnBhY2thZ2UKLQotKiBNb24gU2VwICAyIDIwMTMgVG9tYXMgTXJheiA8dG1y YXpAcmVkaGF0LmNvbT4gMS4wLjFlLTE5Ci0tIHVzZSB2ZXJzaW9uLXJlbGVhc2UgaW4gLmhtYWMg c3VmZml4IHRvIGF2b2lkIG92ZXJ3cml0ZQotICBkdXJpbmcgdXBncmFkZQotCi0qIFRodSBBdWcg MjkgMjAxMyBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWUtMTgKLS0gYWxsb3cg ZGVpbml0aWFsaXphdGlvbiBvZiB0aGUgRklQUyBtb2RlCi0KLSogVGh1IEF1ZyAyOSAyMDEzIFRv bWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xZS0xNwotLSBhbHdheXMgcGVyZm9ybSB0 aGUgRklQUyBzZWxmdGVzdHMgaW4gbGlicmFyeSBjb25zdHJ1Y3RvcgotICBpZiBGSVBTIG1vZHVs ZSBpcyBpbnN0YWxsZWQKLQotKiBUdWUgQXVnIDI3IDIwMTMgVG9tYXMgTXJheiA8dG1yYXpAcmVk aGF0LmNvbT4gMS4wLjFlLTE2Ci0tIGFkZCAtZmlwcyBzdWJwYWNrYWdlIHRoYXQgY29udGFpbnMg dGhlIEZJUFMgbW9kdWxlIGZpbGVzCi0KLSogRnJpIEF1ZyAxNiAyMDEzIFRvbWFzIE1yYXogPHRt cmF6QHJlZGhhdC5jb20+IDEuMC4xZS0xNQotLSBmaXggdXNlIG9mIHJkcmFuZCBpZiBhdmFpbGFi bGUKLS0gbW9yZSBjb21taXRzIGNoZXJyeSBwaWNrZWQgZnJvbSB1cHN0cmVhbQotLSBkb2N1bWVu dGF0aW9uIGZpeGVzCi0KLSogU2F0IEF1ZyAwMyAyMDEzIFBldHIgUGlzYXIgPHBwaXNhckByZWRo YXQuY29tPiAtIDE6MS4wLjFlLTE0Ci0tIFBlcmwgNS4xOCByZWJ1aWxkCi0KLSogRnJpIEp1bCAy NiAyMDEzIFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xZS0xMwotLSBhZGRpdGlv bmFsIG1hbnVhbCBwYWdlIGZpeAotLSB1c2Ugc3ltYm9sIHZlcnNpb25pbmcgYWxzbyBmb3IgdGhl IHRleHR1YWwgdmVyc2lvbgotCi0qIFRodSBKdWwgMjUgMjAxMyBUb21hcyBNcmF6IDx0bXJhekBy ZWRoYXQuY29tPiAxLjAuMWUtMTIKLS0gYWRkaXRpb25hbCBtYW51YWwgcGFnZSBmaXhlcwotCi0q IEZyaSBKdWwgMTkgMjAxMyBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWUtMTEK LS0gdXNlIF9wcmVmaXggbWFjcm8KLQotKiBXZWQgSnVsIDE3IDIwMTMgUGV0ciBQaXNhciA8cHBp c2FyQHJlZGhhdC5jb20+IC0gMToxLjAuMWUtMTAKLS0gUGVybCA1LjE4IHJlYnVpbGQKLQotKiBU aHUgSnVsIDExIDIwMTMgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFlLTkKLS0g YWRkIG9wZW5zc2wuY25mLjUgbWFucGFnZSBzeW1saW5rIHRvIGNvbmZpZy41Ci0KLSogV2VkIEp1 bCAxMCAyMDEzIFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xZS04Ci0tIGFkZCBy ZWxybyBsaW5raW5nIGZsYWcKLQotKiBXZWQgSnVsIDEwIDIwMTMgVG9tYXMgTXJheiA8dG1yYXpA cmVkaGF0LmNvbT4gMS4wLjFlLTcKLS0gYWRkIHN1cHBvcnQgZm9yIHRoZSAtdHJ1c3RlZF9maXJz dCBvcHRpb24gZm9yIGNlcnRpZmljYXRlIGNoYWluIHZlcmlmaWNhdGlvbgotCi0qIEZyaSBNYXkg IDMgMjAxMyBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWUtNgotLSBmaXggYnVp bGQgb2YgbWFudWFsIHBhZ2VzIHdpdGggY3VycmVudCBwb2QybWFuICgjOTU5NDM5KQotCi0qIFN1 biBBcHIgMjEgMjAxMyBQZXRlciBSb2JpbnNvbiA8cGJyb2JpbnNvbkBmZWRvcmFwcm9qZWN0Lm9y Zz4gMS4wLjFlLTUKLS0gRW5hYmxlIEFSTSBvcHRpbWlzZWQgYnVpbGQKLQotKiBNb24gTWFyIDE4 IDIwMTMgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFlLTQKLS0gZml4IHJhbmRv bSBiYWQgcmVjb3JkIG1hYyBlcnJvcnMgKCM5MTg5ODEpCi0KLSogVHVlIEZlYiAxOSAyMDEzIFRv bWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xZS0zCi0tIGZpeCB1cCB0aGUgU0hMSUJf VkVSU0lPTl9OVU1CRVIKLQotKiBUdWUgRmViIDE5IDIwMTMgVG9tYXMgTXJheiA8dG1yYXpAcmVk aGF0LmNvbT4gMS4wLjFlLTIKLS0gZGlzYWJsZSBaTElCIGxvYWRpbmcgYnkgZGVmYXVsdCAoZHVl IHRvIENSSU1FIGF0dGFjaykKLQotKiBUdWUgRmViIDE5IDIwMTMgVG9tYXMgTXJheiA8dG1yYXpA cmVkaGF0LmNvbT4gMS4wLjFlLTEKLS0gbmV3IHVwc3RyZWFtIHZlcnNpb24KLQotKiBXZWQgSmFu IDMwIDIwMTMgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFjLTEyCi0tIG1vcmUg Zml4ZXMgZnJvbSB1cHN0cmVhbQotLSBmaXggZXJyb3JzIGluIG1hbnVhbCBjYXVzaW5nIGJ1aWxk IGZhaWx1cmUgKCM5MDQ3NzcpCi0KLSogRnJpIERlYyAyMSAyMDEyIFRvbWFzIE1yYXogPHRtcmF6 QHJlZGhhdC5jb20+IDEuMC4xYy0xMQotLSBhZGQgc2NyaXB0IGZvciByZW5ld2FsIG9mIGEgc2Vs Zi1zaWduZWQgY2VydCBieSBQaGlsaXAgUHJpbmRldmlsbGUgKCM4NzE1NjYpCi0tIGFsbG93IFg1 MDlfaXNzdWVyX2FuZF9zZXJpYWxfaGFzaCgpIHByb2R1Y2UgY29ycmVjdCByZXN1bHQgaW4KLSAg dGhlIEZJUFMgbW9kZSAoIzg4MTMzNikKLQotKiBUaHUgRGVjICA2IDIwMTIgVG9tYXMgTXJheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFjLTEwCi0tIGRvIG5vdCBsb2FkIGRlZmF1bHQgdmVyaWZ5 IHBhdGhzIGlmIENBcGF0aCBvciBDQWZpbGUgc3BlY2lmaWVkICgjODg0MzA1KQotCi0qIFR1ZSBO b3YgMjAgMjAxMiBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWMtOQotLSBtb3Jl IGZpeGVzIGZyb20gdXBzdHJlYW0gQ1ZTCi0tIGZpeCBEU0Ega2V5IHBhaXJ3aXNlIGNoZWNrICgj ODc4NTk3KQotCi0qIFRodSBOb3YgMTUgMjAxMiBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29t PiAxLjAuMWMtOAotLSB1c2UgMTAyNCBiaXQgREggcGFyYW1ldGVycyBpbiBzX3NlcnZlciBhcyA1 MTIgYml0IGlzIG5vdCBhbGxvd2VkCi0gIGluIEZJUFMgbW9kZSBhbmQgaXQgaXMgcXVpdGUgd2Vh ayBhbnl3YXkKLQotKiBNb24gU2VwIDEwIDIwMTIgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNv bT4gMS4wLjFjLTcKLS0gYWRkIG1pc3NpbmcgaW5pdGlhbGl6YXRpb24gb2Ygc3RyIGluIGFlc19j Y21faW5pdF9rZXkgKCM4NTM5NjMpCi0tIGFkZCBpbXBvcnRhbnQgcGF0Y2hlcyBmcm9tIHVwc3Ry ZWFtIENWUwotLSB1c2UgdGhlIHNlY3VyZV9nZXRlbnYoKSB3aXRoIG5ldyBnbGliYwotCi0qIEZy aSBKdWwgMjAgMjAxMiBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsLWVuZ0BsaXN0cy5m ZWRvcmFwcm9qZWN0Lm9yZz4gLSAxOjEuMC4xYy02Ci0tIFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVk b3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMThfTWFzc19SZWJ1aWxkCi0KLSogRnJpIEp1bCAx MyAyMDEyIFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xYy01Ci0tIHVzZSBfX2dl dGVudl9zZWN1cmUoKSBpbnN0ZWFkIG9mIF9fbGliY19lbmFibGVfc2VjdXJlCi0KLSogRnJpIEp1 bCAxMyAyMDEyIFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xYy00Ci0tIGRvIG5v dCBtb3ZlIGxpYmNyeXB0byB0byAvbGliCi0tIGRvIG5vdCB1c2UgZW52aXJvbm1lbnQgdmFyaWFi bGVzIGlmIF9fbGliY19lbmFibGVfc2VjdXJlIGlzIG9uCi0tIGZpeCBzdHJpY3QgYWxpYXNpbmcg cHJvYmxlbXMgaW4gbW9kZXMKLQotKiBUaHUgSnVsIDEyIDIwMTIgVG9tYXMgTXJheiA8dG1yYXpA cmVkaGF0LmNvbT4gMS4wLjFjLTMKLS0gZml4IERTQSBrZXkgZ2VuZXJhdGlvbiBpbiBGSVBTIG1v ZGUgKCM4MzM4NjYpCi0tIGFsbG93IGR1cGxpY2F0ZSBGSVBTX21vZGVfc2V0KDEpCi0tIGVuYWJs ZSBidWlsZCBvbiBwcGM2NCBzdWJhcmNoICgjODM0NjUyKQotCi0qIFdlZCBKdWwgMTEgMjAxMiBU b21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMWMtMgotLSBmaXggc19zZXJ2ZXIgd2l0 aCBuZXcgZ2xpYmMgd2hlbiBubyBnbG9iYWwgSVB2NiBhZGRyZXNzICgjODM5MDMxKQotLSBtYWtl IGl0IGJ1aWxkIHdpdGggbmV3IFBlcmwKLQotKiBUdWUgTWF5IDE1IDIwMTIgVG9tYXMgTXJheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFjLTEKLS0gbmV3IHVwc3RyZWFtIHZlcnNpb24KLQotKiBU aHUgQXByIDI2IDIwMTIgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjFiLTEKLS0g bmV3IHVwc3RyZWFtIHZlcnNpb24KLQotKiBGcmkgQXByIDIwIDIwMTIgVG9tYXMgTXJheiA8dG1y YXpAcmVkaGF0LmNvbT4gMS4wLjFhLTEKLS0gbmV3IHVwc3RyZWFtIHZlcnNpb24gZml4aW5nIENW RS0yMDEyLTIxMTAKLQotKiBXZWQgQXByIDExIDIwMTIgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0 LmNvbT4gMS4wLjEtMwotLSBhZGQgS2VyYmVyb3MgNSBsaWJyYXJpZXMgdG8gcGtnY29uZmlnIGZv ciBzdGF0aWMgbGlua2luZyAoIzgwNzA1MCkKLQotKiBUaHUgQXByICA1IDIwMTIgVG9tYXMgTXJh eiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjEtMgotLSBiYWNrcG9ydHMgZnJvbSB1cHN0cmVhbSBD VlMKLS0gZml4IHNlZ2ZhdWx0IHdoZW4gL2Rldi91cmFuZG9tIGlzIG5vdCBhdmFpbGFibGUgKCM4 MDk1ODYpCi0KLSogV2VkIE1hciAxNCAyMDEyIFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+ IDEuMC4xLTEKLS0gbmV3IHVwc3RyZWFtIHJlbGVhc2UKLQotKiBNb24gTWFyICA1IDIwMTIgVG9t YXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjEtMC4zLmJldGEzCi0tIGFkZCBvYnNvbGV0 ZXMgdG8gYXNzaXN0IG11bHRpbGliIHVwZGF0ZXMgKCM3OTk2MzYpCi0KLSogV2VkIEZlYiAyOSAy MDEyIFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4xLTAuMi5iZXRhMwotLSBlcG9j aCBidW1wZWQgdG8gMSBkdWUgdG8gcmV2ZXJ0IHRvIDEuMC4wZyBvbiBGZWRvcmEgMTcKLS0gbmV3 IHVwc3RyZWFtIHJlbGVhc2UgZnJvbSB0aGUgMS4wLjEgYnJhbmNoCi0tIGZpeCBzMzkweCBidWls ZCAoIzc5ODQxMSkKLS0gdmVyc2lvbmluZyBmb3IgdGhlIFNTTGVheSBzeW1ib2wgKCM3OTQ5NTAp Ci0tIGFkZCAtRFBVUklGWSB0byBidWlsZCBmbGFncyAoIzc5NzMyMykKLS0gZmlsdGVyIGVuZ2lu ZSBwcm92aWRlcwotLSBzcGxpdCB0aGUgbGlicmFyaWVzIHRvIGEgc2VwYXJhdGUgLWxpYnMgcGFj a2FnZQotLSBhZGQgbWFrZSB0byByZXF1aXJlcyBvbiB0aGUgYmFzZSBwYWNrYWdlICgjNzgzNDQ2 KQotCi0qIFR1ZSBGZWIgIDcgMjAxMiBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAu MS0wLjEuYmV0YTIKLS0gbmV3IHVwc3RyZWFtIHJlbGVhc2UgZnJvbSB0aGUgMS4wLjEgYnJhbmNo LCBBQkkgY29tcGF0aWJsZQotLSBhZGQgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIC1ub19pZ25fZW9m IG9wdGlvbgotCi0qIFRodSBKYW4gMTkgMjAxMiBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29t PiAxLjAuMGctMQotLSBuZXcgdXBzdHJlYW0gcmVsZWFzZSBmaXhpbmcgQ1ZFLTIwMTItMDA1MCAt IERvUyByZWdyZXNzaW9uIGluCi0gIERUTFMgc3VwcG9ydCBpbnRyb2R1Y2VkIGJ5IHRoZSBwcmV2 aW91cyByZWxlYXNlICgjNzgyNzk1KQotCi0qIFRodSBKYW4gIDUgMjAxMiBUb21hcyBNcmF6IDx0 bXJhekByZWRoYXQuY29tPiAxLjAuMGYtMQotLSBuZXcgdXBzdHJlYW0gcmVsZWFzZSBmaXhpbmcg bXVsdGlwbGUgQ1ZFcwotCi0qIFR1ZSBOb3YgMjIgMjAxMSBUb21hcyBNcmF6IDx0bXJhekByZWRo YXQuY29tPiAxLjAuMGUtNAotLSBtb3ZlIHRoZSBsaWJyYXJpZXMgbmVlZGVkIGZvciBzdGF0aWMg bGlua2luZyB0byBMaWJzLnByaXZhdGUKLQotKiBUaHUgTm92ICAzIDIwMTEgVG9tYXMgTXJheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjBlLTMKLS0gZG8gbm90IHVzZSBBVlggaW5zdHJ1Y3Rpb25z IHdoZW4gb3N4c2F2ZSBiaXQgbm90IHNldAotLSBhZGQgZGlyZWN0IGtub3duIGFuc3dlciB0ZXN0 cyBmb3IgU0hBMiBhbGdvcml0aG1zCi0KLSogV2VkIFNlcCAyMSAyMDExIFRvbWFzIE1yYXogPHRt cmF6QHJlZGhhdC5jb20+IDEuMC4wZS0yCi0tIGZpeCBtaXNzaW5nIGluaXRpYWxpemF0aW9uIG9m IHZhcmlhYmxlIGluIENISUwgZW5naW5lCi0KLSogV2VkIFNlcCAgNyAyMDExIFRvbWFzIE1yYXog PHRtcmF6QHJlZGhhdC5jb20+IDEuMC4wZS0xCi0tIG5ldyB1cHN0cmVhbSByZWxlYXNlIGZpeGlu ZyBDVkUtMjAxMS0zMjA3ICgjNzM2MDg4KQotCi0qIFdlZCBBdWcgMjQgMjAxMSBUb21hcyBNcmF6 IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMGQtOAotLSBkcm9wIHRoZSBzZXBhcmF0ZSBlbmdpbmUg Zm9yIEludGVsIGFjY2VsZXJhdGlvbiBpbXByb3ZlbWVudHMKLSAgYW5kIG1lcmdlIGluIHRoZSBB RVMtTkksIFNIQTEsIGFuZCBSQzQgb3B0aW1pemF0aW9ucwotLSBhZGQgc3VwcG9ydCBmb3IgT1BF TlNTTF9ESVNBQkxFX0FFU19OSSBlbnZpcm9ubWVudCB2YXJpYWJsZQotICB0aGF0IGRpc2FibGVz IHRoZSBBRVMtTkkgc3VwcG9ydAotCi0qIFR1ZSBKdWwgMjYgMjAxMSBUb21hcyBNcmF6IDx0bXJh ekByZWRoYXQuY29tPiAxLjAuMGQtNwotLSBjb3JyZWN0IG9wZW5zc2wgY21zIGhlbHAgb3V0cHV0 ICgjNjM2MjY2KQotLSBtb3JlIHRvbGVyYW50IHN0YXJ0dGxzIGRldGVjdGlvbiBpbiBYTVBQIHBy b3RvY29sICgjNjA4MjM5KQotCi0qIFdlZCBKdWwgMjAgMjAxMSBUb21hcyBNcmF6IDx0bXJhekBy ZWRoYXQuY29tPiAxLjAuMGQtNgotLSBhZGQgc3VwcG9ydCBmb3IgbmV3ZXN0IEludGVsIGFjY2Vs ZXJhdGlvbiBpbXByb3ZlbWVudHMgYmFja3BvcnRlZAotICBmcm9tIHVwc3RyZWFtIGJ5IEludGVs IGluIGZvcm0gb2YgYSBzZXBhcmF0ZSBlbmdpbmUKLQotKiBUaHUgSnVuICA5IDIwMTEgVG9tYXMg TXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjBkLTUKLS0gYWxsb3cgdGhlIEFFUy1OSSBlbmdp bmUgaW4gdGhlIEZJUFMgbW9kZQotCi0qIFR1ZSBNYXkgMjQgMjAxMSBUb21hcyBNcmF6IDx0bXJh ekByZWRoYXQuY29tPiAxLjAuMGQtNAotLSBhZGQgQVBJIG5lY2Vzc2FyeSBmb3IgQ0FWUyB0ZXN0 aW5nIG9mIHRoZSBuZXcgRFNBIHBhcmFtZXRlciBnZW5lcmF0aW9uCi0KLSogVGh1IEFwciAyOCAy MDExIFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4wZC0zCi0tIGFkZCBzdXBwb3J0 IGZvciBWSUEgUGFkbG9jayBvbiA2NGJpdCBhcmNoIGZyb20gdXBzdHJlYW0gKCM2MTc1MzkpCi0t IGRvIG5vdCByZXR1cm4gYm9ndXMgdmFsdWVzIGZyb20gbG9hZF9jZXJ0cyAoIzY1MjI4NikKLQot KiBUdWUgQXByICA1IDIwMTEgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjBkLTIK LS0gY2xhcmlmeSBhcHBzIGhlbHAgdGV4dHMgZm9yIGF2YWlsYWJsZSBkaWdlc3QgYWxnb3JpdGht cyAoIzY5Mzg1OCkKLQotKiBUaHUgRmViIDEwIDIwMTEgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0 LmNvbT4gMS4wLjBkLTEKLS0gbmV3IHVwc3RyZWFtIHJlbGVhc2UgZml4aW5nIENWRS0yMDExLTAw MTQgKE9DU1Agc3RhcGxpbmcgdnVsbmVyYWJpbGl0eSkKLQotKiBUdWUgRmViIDA4IDIwMTEgRmVk b3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbC1lbmdAbGlzdHMuZmVkb3JhcHJvamVjdC5vcmc+ IC0gMS4wLjBjLTQKLS0gUmVidWlsdCBmb3IgaHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtp L0ZlZG9yYV8xNV9NYXNzX1JlYnVpbGQKLQotKiBGcmkgRmViICA0IDIwMTEgVG9tYXMgTXJheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjBjLTMKLS0gYWRkIC14OTMxIHBhcmFtZXRlciB0byBvcGVu c3NsIGdlbnJzYSBjb21tYW5kIHRvIHVzZSB0aGUgQU5TSSBYOS4zMQotICBrZXkgZ2VuZXJhdGlv biBtZXRob2QKLS0gdXNlIEZJUFMtMTg2LTMgbWV0aG9kIGZvciBEU0EgcGFyYW1ldGVyIGdlbmVy YXRpb24KLS0gYWRkIE9QRU5TU0xfRklQU19OT05fQVBQUk9WRURfTUQ1X0FMTE9XIGVudmlyb25t ZW50IHZhcmlhYmxlCi0gIHRvIGFsbG93IHVzaW5nIE1ENSB3aGVuIHRoZSBzeXN0ZW0gaXMgaW4g dGhlIG1haW50ZW5hbmNlIHN0YXRlCi0gIGV2ZW4gaWYgdGhlIC9wcm9jIGZpcHMgZmxhZyBpcyBv bgotLSBtYWtlIG9wZW5zc2wgcGtjczEyIGNvbW1hbmQgd29yayBieSBkZWZhdWx0IGluIHRoZSBG SVBTIG1vZGUKLQotKiBNb24gSmFuIDI0IDIwMTEgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNv bT4gMS4wLjBjLTIKLS0gbGlzdGVuIG9uIGlwdjYgd2lsZGNhcmQgaW4gc19zZXJ2ZXIgc28gd2Ug YWNjZXB0IGNvbm5lY3Rpb25zCi0gIGZyb20gYm90aCBpcHY0IGFuZCBpcHY2ICgjNjAxNjEyKQot LSBmaXggb3BlbnNzbCBzcGVlZCBjb21tYW5kIHNvIGl0IGNhbiBiZSB1c2VkIGluIHRoZSBGSVBT IG1vZGUKLSAgd2l0aCBGSVBTIGFsbG93ZWQgY2lwaGVycwotCi0qIEZyaSBEZWMgIDMgMjAxMCBU b21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMGMtMQotLSBuZXcgdXBzdHJlYW0gdmVy c2lvbiBmaXhpbmcgQ1ZFLTIwMTAtNDE4MAotCi0qIFR1ZSBOb3YgMjMgMjAxMCBUb21hcyBNcmF6 IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMGItMwotLSByZXBsYWNlIHRoZSByZXZlcnQgZm9yIHRo ZSBzMzkweCBiaWdudW0gYXNtIHJvdXRpbmVzIHdpdGgKLSAgZml4IGZyb20gdXBzdHJlYW0KLQot KiBNb24gTm92IDIyIDIwMTAgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjBiLTIK LS0gcmV2ZXJ0IHVwc3RyZWFtIGNoYW5nZSBpbiBzMzkweCBiaWdudW0gYXNtIHJvdXRpbmVzCi0K LSogVHVlIE5vdiAxNiAyMDEwIFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4wYi0x Ci0tIG5ldyB1cHN0cmVhbSB2ZXJzaW9uIGZpeGluZyBDVkUtMjAxMC0zODY0ICgjNjQ5MzA0KQot Ci0qIFR1ZSBTZXAgIDcgMjAxMCBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMGEt MwotLSBtYWtlIFNITElCX1ZFUlNJT04gcmVmbGVjdCB0aGUgbGlicmFyeSBzdWZmaXgKLQotKiBX ZWQgSnVuIDMwIDIwMTAgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjBhLTIKLS0g b3BlbnNzbCBtYW4gcGFnZSBmaXggKCM2MDk0ODQpCi0KLSogRnJpIEp1biAgNCAyMDEwIFRvbWFz IE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4wYS0xCi0tIG5ldyB1cHN0cmVhbSBwYXRjaCBy ZWxlYXNlLCBmaXhlcyBDVkUtMjAxMC0wNzQyICgjNTk4NzM4KQotICBhbmQgQ1ZFLTIwMTAtMTYz MyAoIzU5ODczMikKLQotKiBXZWQgTWF5IDE5IDIwMTAgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0 LmNvbT4gMS4wLjAtNQotLSBwa2djb25maWcgZmlsZXMgbm93IGNvbnRhaW4gdGhlIGNvcnJlY3Qg bGliZGlyICgjNTkzNzIzKQotCi0qIFR1ZSBNYXkgMTggMjAxMCBUb21hcyBNcmF6IDx0bXJhekBy ZWRoYXQuY29tPiAxLjAuMC00Ci0tIG1ha2UgQ0EgZGlyIHJlYWRhYmxlIC0gdGhlIHByaXZhdGUg a2V5cyBhcmUgaW4gcHJpdmF0ZSBzdWJkaXIgKCM1ODQ4MTApCi0KLSogRnJpIEFwciAgOSAyMDEw IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4wLTMKLS0gYSBmZXcgZml4ZXMgZnJv bSB1cHN0cmVhbSBDVlMKLS0gbW92ZSBsaWJjcnlwdG8gdG8gL2xpYiAoIzU1OTk1MykKLQotKiBU dWUgQXByICA2IDIwMTAgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjAtMgotLSBz ZXQgVVRDIHRpbWV6b25lIG9uIHBvZDJtYW4gcnVuICgjNTc4ODQyKQotLSBtYWtlIFg1MDlfTkFN RV9oYXNoX29sZCB3b3JrIGluIEZJUFMgbW9kZQotCi0qIFR1ZSBNYXIgMzAgMjAxMCBUb21hcyBN cmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMC0xCi0tIHVwZGF0ZSB0byBmaW5hbCAxLjAuMCB1 cHN0cmVhbSByZWxlYXNlCi0KLSogVHVlIEZlYiAxNiAyMDEwIFRvbWFzIE1yYXogPHRtcmF6QHJl ZGhhdC5jb20+IDEuMC4wLTAuMjIuYmV0YTUKLS0gbWFrZSBUTFMgd29yayBpbiB0aGUgRklQUyBt b2RlCi0KLSogRnJpIEZlYiAxMiAyMDEwIFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEu MC4wLTAuMjEuYmV0YTUKLS0gZ3JhY2VmdWxseSBoYW5kbGUgemVybyBsZW5ndGggaW4gYXNzZW1i bGVyIGltcGxlbWVudGF0aW9ucyBvZgotICBPUEVOU1NMX2NsZWFuc2UgKCM1NjQwMjkpCi0tIGRv IG5vdCBmYWlsIGluIHNfc2VydmVyIGlmIGNsaWVudCBob3N0bmFtZSBub3QgcmVzb2x2YWJsZSAo IzU2MTI2MCkKLQotKiBXZWQgSmFuIDIwIDIwMTAgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNv bT4gMS4wLjAtMC4yMC5iZXRhNQotLSBuZXcgdXBzdHJlYW0gcmVsZWFzZQotCi0qIFRodSBKYW4g MTQgMjAxMCBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMC0wLjE5LmJldGE0Ci0t IGZpeCBDVkUtMjAwOS00MzU1IC0gbGVhayBpbiBhcHBsaWNhdGlvbnMgaW5jb3JyZWN0bHkgY2Fs bGluZwotICBDUllQVE9fZnJlZV9hbGxfZXhfZGF0YSgpIGJlZm9yZSBhcHBsaWNhdGlvbiBleGl0 ICgjNTQ2NzA3KQotLSB1cHN0cmVhbSBmaXggZm9yIGZ1dHVyZSBUTFMgcHJvdG9jb2wgdmVyc2lv biBoYW5kbGluZwotCi0qIFdlZCBKYW4gMTMgMjAxMCBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQu Y29tPiAxLjAuMC0wLjE4LmJldGE0Ci0tIGFkZCBzdXBwb3J0IGZvciBJbnRlbCBBRVMtTkkKLQot KiBUaHUgSmFuICA3IDIwMTAgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjAtMC4x Ny5iZXRhNAotLSB1cHN0cmVhbSBmaXggY29tcHJlc3Npb24gaGFuZGxpbmcgb24gc2Vzc2lvbiBy ZXN1bXB0aW9uCi0tIHZhcmlvdXMgbnVsbCBjaGVja3MgYW5kIG90aGVyIHNtYWxsIGZpeGVzIGZy b20gdXBzdHJlYW0KLS0gdXBzdHJlYW0gY2hhbmdlcyBmb3IgdGhlIHJlbmVnb3RpYXRpb24gaW5m byBhY2NvcmRpbmcgdG8gdGhlIGxhdGVzdCBkcmFmdAotCi0qIE1vbiBOb3YgMjMgMjAwOSBUb21h cyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMC0wLjE2LmJldGE0Ci0tIGZpeCBub24tZmlw cyBtaW5ndyBidWlsZCAocGF0Y2ggYnkgS2FsZXYgTGVtYmVyKQotLSBhZGQgSVBWNiBmaXggZm9y IERUTFMKLQotKiBGcmkgTm92IDIwIDIwMDkgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4g MS4wLjAtMC4xNS5iZXRhNAotLSBhZGQgYmV0dGVyIGVycm9yIHJlcG9ydGluZyBmb3IgdGhlIHVu c2FmZSByZW5lZ290aWF0aW9uCi0KLSogRnJpIE5vdiAyMCAyMDA5IFRvbWFzIE1yYXogPHRtcmF6 QHJlZGhhdC5jb20+IDEuMC4wLTAuMTQuYmV0YTQKLS0gZml4IGJ1aWxkIG9uIHMzOTB4Ci0KLSog V2VkIE5vdiAxOCAyMDA5IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4wLTAuMTMu YmV0YTQKLS0gZGlzYWJsZSBlbmZvcmNlbWVudCBvZiB0aGUgcmVuZWdvdGlhdGlvbiBleHRlbnNp b24gb24gdGhlIGNsaWVudCAoIzUzNzk2MikKLS0gYWRkIGZpeGVzIGZyb20gdGhlIGN1cnJlbnQg dXBzdHJlYW0gc25hcHNob3QKLQotKiBGcmkgTm92IDEzIDIwMDkgVG9tYXMgTXJheiA8dG1yYXpA cmVkaGF0LmNvbT4gMS4wLjAtMC4xMi5iZXRhNAotLSBrZWVwIHRoZSBiZXRhIHN0YXR1cyBpbiB2 ZXJzaW9uIG51bWJlciBhdCAzIHNvIHdlIGRvIG5vdCBoYXZlIHRvIHJlYnVpbGQKLSAgb3BlbnNz aCBhbmQgcG9zc2libHkgb3RoZXIgZGVwZW5kZW5jaWVzIHdpdGggdG9vIHN0cmljdCB2ZXJzaW9u IGNoZWNrCi0KLSogVGh1IE5vdiAxMiAyMDA5IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+ IDEuMC4wLTAuMTEuYmV0YTQKLS0gdXBkYXRlIHRvIG5ldyB1cHN0cmVhbSB2ZXJzaW9uLCBubyBz b25hbWUgYnVtcCBuZWVkZWQKLS0gZml4IENWRS0yMDA5LTM1NTUgLSBub3RlIHRoYXQgdGhlIGZp eCBpcyBieXBhc3NlZCBpZiBTU0xfT1BfQUxMIGlzIHVzZWQKLSAgc28gdGhlIGNvbXBhdGliaWxp dHkgd2l0aCB1bmZpeGVkIGNsaWVudHMgaXMgbm90IGJyb2tlbi4gVGhlCi0gIHByb3RvY29sIGV4 dGVuc2lvbiBpcyBhbHNvIG5vdCBmaW5hbC4KLQotKiBGcmkgT2N0IDE2IDIwMDkgVG9tYXMgTXJh eiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjAtMC4xMC5iZXRhMwotLSBmaXggdXNlIG9mIGZyZWVk IG1lbW9yeSBpZiBTU0xfQ1RYX2ZyZWUoKSBpcyBjYWxsZWQgYmVmb3JlCi0gIFNTTF9mcmVlKCkg KCM1MjEzNDIpCi0KLSogVGh1IE9jdCAgOCAyMDA5IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5j b20+IDEuMC4wLTAuOS5iZXRhMwotLSBmaXggdHlwbyBpbiBEVExTMSBjb2RlICgjNTI3MDE1KQot LSBmaXggbGVhayBpbiBlcnJvciBoYW5kbGluZyBvZiBkMmlfU1NMX1NFU1NJT04oKQotCi0qIFdl ZCBTZXAgMzAgMjAwOSBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMC0wLjguYmV0 YTMKLS0gZml4IFJTQSBhbmQgRFNBIEZJUFMgc2VsZnRlc3RzCi0tIHJlZW5hYmxlIGZpeGVkIHg4 Nl82NCBjYW1lbGxpYSBhc3NlbWJsZXIgY29kZSAoIzUyMTEyNykKLQotKiBGcmkgU2VwICA0IDIw MDkgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjAtMC43LmJldGEzCi0tIHRlbXBv cmFyaWx5IGRpc2FibGUgeDg2XzY0IGNhbWVsbGlhIGFzc2VtYmxlciBjb2RlICgjNTIxMTI3KQot Ci0qIE1vbiBBdWcgMzEgMjAwOSBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAxLjAuMC0w LjYuYmV0YTMKLS0gZml4IG9wZW5zc2wgZGdzdCAtZHNzMSAoIzUyMDE1MikKLQotKiBXZWQgQXVn IDI2IDIwMDkgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjAtMC41LmJldGEzCi0t IGRyb3AgdGhlIGNvbXBhdCBzeW1saW5rIGhhY2tzCi0KLSogU2F0IEF1ZyAyMiAyMDA5IFRvbWFz IE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDEuMC4wLTAuNC5iZXRhMwotLSBjb25zdGlmeSBTU0xf Q0lQSEVSX2Rlc2NyaXB0aW9uKCkKLQotKiBGcmkgQXVnIDIxIDIwMDkgVG9tYXMgTXJheiA8dG1y YXpAcmVkaGF0LmNvbT4gMS4wLjAtMC4zLmJldGEzCi0tIGZpeCBXV1c6Q3VybDpFYXN5IHJlZmVy ZW5jZSBpbiB0c2dldAotCi0qIEZyaSBBdWcgMjEgMjAwOSBUb21hcyBNcmF6IDx0bXJhekByZWRo YXQuY29tPiAxLjAuMC0wLjIuYmV0YTMKLS0gZW5hYmxlIE1ELTIKLQotKiBUaHUgQXVnIDIwIDIw MDkgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMS4wLjAtMC4xLmJldGEzCi0tIHVwZGF0 ZSB0byBuZXcgbWFqb3IgdXBzdHJlYW0gcmVsZWFzZQotCi0qIFNhdCBKdWwgMjUgMjAwOSBGZWRv cmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsLWVuZ0BsaXN0cy5mZWRvcmFwcm9qZWN0Lm9yZz4g LSAwLjkuOGstNwotLSBSZWJ1aWx0IGZvciBodHRwczovL2ZlZG9yYXByb2plY3Qub3JnL3dpa2kv RmVkb3JhXzEyX01hc3NfUmVidWlsZAotCi0qIFdlZCBKdWwgMjIgMjAwOSBCaWxsIE5vdHRpbmdo YW0gPG5vdHRpbmdAcmVkaGF0LmNvbT4KLS0gZG8gbm90IGJ1aWxkIHNwZWNpYWwgJ29wdGltaXpl ZCcgdmVyc2lvbnMgZm9yIGk2ODYsIGFzIHRoYXQncyB0aGUgYmFzZQotICBhcmNoIGluIEZlZG9y YSBub3cKLQotKiBUdWUgSnVuIDMwIDIwMDkgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4g MC45LjhrLTYKLS0gYWJvcnQgaWYgc2VsZnRlc3RzIGZhaWxlZCBhbmQgcmFuZG9tIG51bWJlciBn ZW5lcmF0b3IgaXMgcG9sbGVkCi0tIG1lbnRpb24gRVZQX2FlcyBhbmQgRVZQX3NoYTJ4eCByb3V0 aW5lcyBpbiB0aGUgbWFucGFnZXMKLS0gYWRkIFJFQURNRS5GSVBTCi0tIG1ha2UgQ0EgZGlyIGFi c29sdXRlIHBhdGggKCM0NDUzNDQpCi0tIGNoYW5nZSBkZWZhdWx0IGxlbmd0aCBmb3IgUlNBIGtl eSBnZW5lcmF0aW9uIHRvIDIwNDggKCM0ODQxMDEpCi0KLSogVGh1IE1heSAyMSAyMDA5IFRvbWFz IE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDAuOS44ay01Ci0tIGZpeCBDVkUtMjAwOS0xMzc3IENW RS0yMDA5LTEzNzggQ1ZFLTIwMDktMTM3OQotICAoRFRMUyBEb1MgcHJvYmxlbXMpICgjNTAxMjUz LCAjNTAxMjU0LCAjNTAxNTcyKQotCi0qIFR1ZSBBcHIgMjEgMjAwOSBUb21hcyBNcmF6IDx0bXJh ekByZWRoYXQuY29tPiAwLjkuOGstNAotLSBzdXBwb3J0IGNvbXBhdGliaWxpdHkgRFRMUyBtb2Rl IGZvciBDSVNDTyBBbnlDb25uZWN0ICgjNDY0NjI5KQotCi0qIEZyaSBBcHIgMTcgMjAwOSBUb21h cyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGstMwotLSBjb3JyZWN0IHRoZSBTSExJQl9W RVJTSU9OIGRlZmluZQotCi0qIFdlZCBBcHIgMTUgMjAwOSBUb21hcyBNcmF6IDx0bXJhekByZWRo YXQuY29tPiAwLjkuOGstMgotLSBhZGQgc3VwcG9ydCBmb3IgbXVsdGlwbGUgQ1JMcyB3aXRoIHNh bWUgc3ViamVjdAotLSBsb2FkIG9ubHkgZHluYW1pYyBlbmdpbmUgc3VwcG9ydCBpbiBGSVBTIG1v ZGUKLQotKiBXZWQgTWFyIDI1IDIwMDkgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMC45 LjhrLTEKLS0gdXBkYXRlIHRvIG5ldyB1cHN0cmVhbSByZWxlYXNlIChtaW5vciBidWcgZml4ZXMs IHNlY3VyaXR5Ci0gIGZpeGVzIGFuZCBtYWNoaW5lIGNvZGUgb3B0aW1pemF0aW9ucyBvbmx5KQot Ci0qIFRodSBNYXIgMTkgMjAwOSBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGot MTAKLS0gbW92ZSBsaWJyYXJpZXMgdG8gL3Vzci9saWIgKCMyMzkzNzUpCi0KLSogRnJpIE1hciAx MyAyMDA5IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDAuOS44ai05Ci0tIGFkZCBhIHN0 YXRpYyBzdWJwYWNrYWdlCi0KLSogVGh1IEZlYiAyNiAyMDA5IEZlZG9yYSBSZWxlYXNlIEVuZ2lu ZWVyaW5nIDxyZWwtZW5nQGxpc3RzLmZlZG9yYXByb2plY3Qub3JnPiAtIDAuOS44ai04Ci0tIFJl YnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5vcmcvd2lraS9GZWRvcmFfMTFfTWFzc19S ZWJ1aWxkCi0KLSogTW9uIEZlYiAgMiAyMDA5IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+ IDAuOS44ai03Ci0tIG11c3QgYWxzbyB2ZXJpZnkgY2hlY2tzdW0gb2YgbGlic3NsLnNvIGluIHRo ZSBGSVBTIG1vZGUKLS0gb2J0YWluIHRoZSBzZWVkIGZvciBGSVBTIHJuZyBkaXJlY3RseSBmcm9t IHRoZSBrZXJuZWwgZGV2aWNlCi0tIGRyb3AgdGhlIHRlbXBvcmFyeSBzeW1saW5rcwotCi0qIE1v biBKYW4gMjYgMjAwOSBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGotNgotLSBk cm9wIHRoZSB0ZW1wb3JhcnkgdHJpZ2dlcnBvc3R1biBhbmQgc3ltbGlua2luZyBpbiBwb3N0Ci0t IGZpeCB0aGUgcGtnY29uZmlnIGZpbGVzIGFuZCBkcm9wIHRoZSB1bm5lY2Vzc2FyeSBidWlsZHJl cXVpcmVzCi0gIG9uIHBrZ2NvbmZpZyBhcyBpdCBpcyBhIHJwbWJ1aWxkIGRlcGVuZGVuY3kgKCM0 ODE0MTkpCi0KLSogU2F0IEphbiAxNyAyMDA5IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+ IDAuOS44ai01Ci0tIGFkZCB0ZW1wb3JhcnkgdHJpZ2dlcnBvc3R1biB0byByZWluc3RhdGUgdGhl IHN5bWxpbmtzCi0KLSogU2F0IEphbiAxNyAyMDA5IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5j b20+IDAuOS44ai00Ci0tIG5vIHBhaXJ3aXNlIGtleSB0ZXN0cyBpbiBub24tZmlwcyBtb2RlICgj NDc5ODE3KQotCi0qIEZyaSBKYW4gMTYgMjAwOSBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29t PiAwLjkuOGotMwotLSBldmVuIG1vcmUgcm9idXN0IHRlc3QgZm9yIHRoZSB0ZW1wb3Jhcnkgc3lt bGlua3MKLQotKiBGcmkgSmFuIDE2IDIwMDkgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4g MC45LjhqLTIKLS0gdHJ5IHRvIGVuc3VyZSB0aGUgdGVtcG9yYXJ5IHN5bWxpbmtzIGV4aXN0Ci0K LSogVGh1IEphbiAxNSAyMDA5IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDAuOS44ai0x Ci0tIG5ldyB1cHN0cmVhbSB2ZXJzaW9uIHdpdGggbmVjZXNzYXJ5IHNvbmFtZSBidW1wICgjNDU1 NzUzKQotLSB0ZW1wb3JhcmlseSBwcm92aWRlIHN5bWxpbmsgdG8gb2xkIHNvbmFtZSB0byBtYWtl IGl0IHBvc3NpYmxlIHRvIHJlYnVpbGQKLSAgdGhlIGRlcGVuZGVudCBwYWNrYWdlcyBpbiByYXdo aWRlCi0tIGFkZCBlYXAtZmFzdCBzdXBwb3J0ICgjNDI4MTgxKQotLSBhZGQgcG9zc2liaWxpdHkg dG8gZGlzYWJsZSB6bGliIGJ5IHNldHRpbmcKLS0gYWRkIGZpcHMgbW9kZSBzdXBwb3J0IGZvciB0 ZXN0aW5nIHB1cnBvc2VzCi0tIGRvIG5vdCBudWxsIGRlcmVmZXJlbmNlIG9uIHNvbWUgaW52YWxp ZCBzbWltZSBmaWxlcwotLSBhZGQgYnVpbGRyZXF1aXJlcyBwa2djb25maWcgKCM0Nzk0OTMpCi0K LSogU3VuIEF1ZyAxMCAyMDA4IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDAuOS44Zy0x MQotLSBkbyBub3QgYWRkIHRscyBleHRlbnNpb25zIHRvIHNlcnZlciBoZWxsbyBmb3IgU1NMdjMg ZWl0aGVyCi0KLSogTW9uIEp1biAgMiAyMDA4IEpvZSBPcnRvbiA8am9ydG9uQHJlZGhhdC5jb20+ IDAuOS44Zy0xMAotLSBtb3ZlIHJvb3QgQ0EgYnVuZGxlIHRvIGNhLWNlcnRpZmljYXRlcyBwYWNr YWdlCi0KLSogV2VkIE1heSAyOCAyMDA4IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDAu OS44Zy05Ci0tIGZpeCBDVkUtMjAwOC0wODkxIC0gc2VydmVyIG5hbWUgZXh0ZW5zaW9uIGNyYXNo ICgjNDQ4NDkyKQotLSBmaXggQ1ZFLTIwMDgtMTY3MiAtIHNlcnZlciBrZXkgZXhjaGFuZ2UgbWVz c2FnZSBvbWl0IGNyYXNoICgjNDQ4NDk1KQotCi0qIFR1ZSBNYXkgMjcgMjAwOCBUb21hcyBNcmF6 IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGctOAotLSBzdXBlci1IIGFyY2ggc3VwcG9ydAotLSBk cm9wIHdvcmthcm91bmQgZm9yIGJ1ZyAxOTk2MDQgYXMgaXQgc2hvdWxkIGJlIGZpeGVkIGluIGdj Yy00LjMKLQotKiBNb24gTWF5IDE5IDIwMDggVG9tICJzcG90IiBDYWxsYXdheSA8dGNhbGxhd2FA cmVkaGF0LmNvbT4gMC45LjhnLTcKLS0gc3BhcmMgaGFuZGxpbmcKLQotKiBNb24gTWFyIDEwIDIw MDggSm9lIE9ydG9uIDxqb3J0b25AcmVkaGF0LmNvbT4gMC45LjhnLTYKLS0gdXBkYXRlIHRvIG5l dyByb290IENBIGJ1bmRsZSBmcm9tIG1vemlsbGEub3JnIChyMS40NSkKLQotKiBXZWQgRmViIDIw IDIwMDggRmVkb3JhIFJlbGVhc2UgRW5naW5lZXJpbmcgPHJlbC1lbmdAZmVkb3JhcHJvamVjdC5v cmc+IC0gMC45LjhnLTUKLS0gQXV0b3JlYnVpbGQgZm9yIEdDQyA0LjMKLQotKiBUaHUgSmFuIDI0 IDIwMDggVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMC45LjhnLTQKLS0gbWVyZ2UgcmV2 aWV3IGZpeGVzICgjMjI2MjIwKQotLSBhZGp1c3QgdGhlIFNITElCX1ZFUlNJT05fTlVNQkVSIHRv IHJlZmxlY3QgbGlicmFyeSBuYW1lICgjNDI5ODQ2KQotCi0qIFRodSBEZWMgMTMgMjAwNyBUb21h cyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGctMwotLSBzZXQgZGVmYXVsdCBwYXRocyB3 aGVuIG5vIGV4cGxpY2l0IHBhdGhzIGFyZSBzZXQgKCM0MTg3NzEpCi0tIGRvIG5vdCBhZGQgdGxz IGV4dGVuc2lvbnMgdG8gY2xpZW50IGhlbGxvIGZvciBTU0x2MyAoIzQyMjA4MSkKLQotKiBUdWUg RGVjICA0IDIwMDcgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMC45LjhnLTIKLS0gZW5h YmxlIHNvbWUgbmV3IGNyeXB0byBhbGdvcml0aG1zIGFuZCBmZWF0dXJlcwotLSBhZGQgc29tZSBt b3JlIGltcG9ydGFudCBidWcgZml4ZXMgZnJvbSBvcGVuc3NsIENWUwotCi0qIE1vbiBEZWMgIDMg MjAwNyBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGctMQotLSB1cGRhdGUgdG8g bGF0ZXN0IHVwc3RyZWFtIHJlbGVhc2UsIFNPTkFNRSBidW1wZWQgdG8gNwotCi0qIE1vbiBPY3Qg MTUgMjAwNyBKb2UgT3J0b24gPGpvcnRvbkByZWRoYXQuY29tPiAwLjkuOGItMTcKLS0gdXBkYXRl IHRvIG5ldyBDQSBidW5kbGUgZnJvbSBtb3ppbGxhLm9yZwotCi0qIEZyaSBPY3QgMTIgMjAwNyBU b21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGItMTYKLS0gZml4IENWRS0yMDA3LTUx MzUgLSBvZmYtYnktb25lIGluIFNTTF9nZXRfc2hhcmVkX2NpcGhlcnMgKCMzMDk4MDEpCi0tIGZp eCBDVkUtMjAwNy00OTk1IC0gb3V0IG9mIG9yZGVyIERUTFMgZnJhZ21lbnRzIGJ1ZmZlciBvdmVy ZmxvdyAoIzMyMTE5MSkKLS0gYWRkIGFscGhhIHN1Yi1hcmNocyAoIzI5NjAzMSkKLQotKiBUdWUg QXVnIDIxIDIwMDcgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMC45LjhiLTE1Ci0tIHJl YnVpbGQKLQotKiBGcmkgQXVnICAzIDIwMDcgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4g MC45LjhiLTE0Ci0tIHVzZSBsb2NhbGhvc3QgaW4gdGVzdHN1aXRlLCBob3BlZnVsbHkgZml4ZXMg c2xvdyBidWlsZCBpbiBrb2ppCi0tIENWRS0yMDA3LTMxMDggLSBmaXggc2lkZSBjaGFubmVsIGF0 dGFjayBvbiBwcml2YXRlIGtleXMgKCMyNTA1NzcpCi0tIG1ha2Ugc3NsIHNlc3Npb24gY2FjaGUg aWQgbWF0Y2hpbmcgc3RyaWN0ICgjMjMzNTk5KQotCi0qIFdlZCBKdWwgMjUgMjAwNyBUb21hcyBN cmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGItMTMKLS0gYWxsb3cgYnVpbGRpbmcgb24gQVJN IGFyY2hpdGVjdHVyZXMgKCMyNDU0MTcpCi0tIHVzZSByZWZlcmVuY2UgdGltZXN0YW1wcyB0byBw cmV2ZW50IG11bHRpbGliIGNvbmZsaWN0cyAoIzIxODA2NCkKLS0gLWRldmVsIHBhY2thZ2UgbXVz dCByZXF1aXJlIHBrZ2NvbmZpZyAoIzI0MTAzMSkKLQotKiBNb24gRGVjIDExIDIwMDYgVG9tYXMg TXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMC45LjhiLTEyCi0tIGRldGVjdCBkdXBsaWNhdGVzIGlu IGFkZF9kaXIgcHJvcGVybHkgKCMyMDYzNDYpCi0KLSogVGh1IE5vdiAzMCAyMDA2IFRvbWFzIE1y YXogPHRtcmF6QHJlZGhhdC5jb20+IDAuOS44Yi0xMQotLSB0aGUgcHJldmlvdXMgY2hhbmdlIHN0 aWxsIGRpZG4ndCBtYWtlIFg1MDlfTkFNRV9jbXAgdHJhbnNpdGl2ZQotCi0qIFRodSBOb3YgMjMg MjAwNiBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGItMTAKLS0gbWFrZSBYNTA5 X05BTUVfY21wIHRyYW5zaXRpdmUgb3RoZXJ3aXNlIGNlcnRpZmljYXRlIGxvb2t1cAotICBpcyBi cm9rZW4gKCMyMTYwNTApCi0KLSogVGh1IE5vdiAgMiAyMDA2IFRvbWFzIE1yYXogPHRtcmF6QHJl ZGhhdC5jb20+IDAuOS44Yi05Ci0tIGFsaWFzaW5nIGJ1ZyBpbiBlbmdpbmUgbG9hZGluZywgcGF0 Y2ggYnkgSUJNICgjMjEzMjE2KQotCi0qIE1vbiBPY3QgIDIgMjAwNiBUb21hcyBNcmF6IDx0bXJh ekByZWRoYXQuY29tPiAwLjkuOGItOAotLSBDVkUtMjAwNi0yOTQwIGZpeCB3YXMgaW5jb3JyZWN0 ICgjMjA4NzQ0KQotCi0qIE1vbiBTZXAgMjUgMjAwNiBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQu Y29tPiAwLjkuOGItNwotLSBmaXggQ1ZFLTIwMDYtMjkzNyAtIG1pc2hhbmRsZWQgZXJyb3Igb24g QVNOLjEgcGFyc2luZyAoIzIwNzI3NikKLS0gZml4IENWRS0yMDA2LTI5NDAgLSBwYXJhc2l0aWMg cHVibGljIGtleXMgRG9TICgjMjA3Mjc0KQotLSBmaXggQ1ZFLTIwMDYtMzczOCAtIGJ1ZmZlciBv dmVyZmxvdyBpbiBTU0xfZ2V0X3NoYXJlZF9jaXBoZXJzICgjMjA2OTQwKQotLSBmaXggQ1ZFLTIw MDYtNDM0MyAtIHNzbHYyIGNsaWVudCBEb1MgKCMyMDY5NDApCi0KLSogVHVlIFNlcCAgNSAyMDA2 IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDAuOS44Yi02Ci0tIGZpeCBDVkUtMjAwNi00 MzM5IC0gcHJldmVudCBhdHRhY2sgb24gUEtDUyMxIHYxLjUgc2lnbmF0dXJlcyAoIzIwNTE4MCkK LQotKiBXZWQgQXVnICAyIDIwMDYgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gLSAwLjku OGItNQotLSBzZXQgYnVmZmVyaW5nIHRvIG5vbmUgb24gc3RkaW8vc3Rkb3V0IEZJTEUgd2hlbiBi dWZzaXplIGlzIHNldCAoIzIwMDU4MCkKLSAgcGF0Y2ggYnkgSUJNCi0KLSogRnJpIEp1bCAyOCAy MDA2IEFsZXhhbmRyZSBPbGl2YSA8YW9saXZhQHJlZGhhdC5jb20+IC0gMC45LjhiLTQuMQotLSBy ZWJ1aWxkIHdpdGggbmV3IGJpbnV0aWxzICgjMjAwMzMwKQotCi0qIEZyaSBKdWwgMjEgMjAwNiBU b21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAtIDAuOS44Yi00Ci0tIGFkZCBhIHRlbXBvcmFy eSB3b3JrYXJvdW5kIGZvciBzaGE1MTIgdGVzdCBmYWlsdXJlIG9uIHMzOTAgKCMxOTk2MDQpCi0K LSogVGh1IEp1bCAyMCAyMDA2IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+Ci0tIGFkZCBp cHY2IHN1cHBvcnQgdG8gc19jbGllbnQgYW5kIHNfc2VydmVyIChieSBKYW4gUGF6ZHppb3JhKSAo IzE5ODczNykKLS0gYWRkIHBhdGNoZXMgZm9yIEJOIHRocmVhZHNhZmV0eSwgQUVTIGNhY2hlIGNv bGxpc2lvbiBhdHRhY2sgaGF6YXJkIGZpeCBhbmQKLSAgcGtjczcgY29kZSBtZW1sZWFrIGZpeCBm cm9tIHVwc3RyZWFtIENWUwotCi0qIFdlZCBKdWwgMTIgMjAwNiBKZXNzZSBLZWF0aW5nIDxqa2Vh dGluZ0ByZWRoYXQuY29tPiAtIDAuOS44Yi0zLjEKLS0gcmVidWlsZAotCi0qIFdlZCBKdW4gMjEg MjAwNiBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAtIDAuOS44Yi0zCi0tIGRyb3BwZWQg bGliaWNhIGFuZCBpY2EgZW5naW5lIGZyb20gYnVpbGQKLQotKiBXZWQgSnVuIDIxIDIwMDYgSm9l IE9ydG9uIDxqb3J0b25AcmVkaGF0LmNvbT4KLS0gdXBkYXRlIHRvIG5ldyBDQSBidW5kbGUgZnJv bSBtb3ppbGxhLm9yZzsgYWRkcyBDQSBjZXJ0aWZpY2F0ZXMKLSAgZnJvbSBuZXRsb2NrLmh1IGFu ZCBzdGFydGNvbS5vcmcKLQotKiBNb24gSnVuICA1IDIwMDYgVG9tYXMgTXJheiA8dG1yYXpAcmVk aGF0LmNvbT4gLSAwLjkuOGItMgotLSBmaXhlZCBhIGZldyBycG1saW50IHdhcm5pbmdzCi0tIGJl dHRlciBmaXggZm9yICMxNzMzOTkgZnJvbSB1cHN0cmVhbQotLSB1cHN0cmVhbSBmaXggZm9yIHBr Y3MxMgotCi0qIFRodSBNYXkgMTEgMjAwNiBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAt IDAuOS44Yi0xCi0tIHVwZ3JhZGUgdG8gbmV3IHZlcnNpb24sIHN0YXlzIEFCSSBjb21wYXRpYmxl Ci0tIHRoZXJlIGlzIG5vIG1vcmUgbGludXgvY29uZmlnLmggKGl0IHdhcyBlbXB0eSBhbnl3YXkp Ci0KLSogVHVlIEFwciAgNCAyMDA2IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IC0gMC45 LjhhLTYKLS0gZml4IHN0YWxlIG9wZW4gaGFuZGxlcyBpbiBsaWJpY2EgKCMxNzcxNTUpCi0tIGZp eCBidWlsZCBpZiAncmFuZCcgb3IgJ3Bhc3N3ZCcgaW4gYnVpbGRyb290IHBhdGggKCMxNzg3ODIp Ci0tIGluaXRpYWxpemUgVklBIFBhZGxvY2sgZW5naW5lICgjMTg2ODU3KQotCi0qIEZyaSBGZWIg MTAgMjAwNiBKZXNzZSBLZWF0aW5nIDxqa2VhdGluZ0ByZWRoYXQuY29tPiAtIDAuOS44YS01LjIK LS0gYnVtcCBhZ2FpbiBmb3IgZG91YmxlLWxvbmcgYnVnIG9uIHBwYyg2NCkKLQotKiBUdWUgRmVi IDA3IDIwMDYgSmVzc2UgS2VhdGluZyA8amtlYXRpbmdAcmVkaGF0LmNvbT4gLSAwLjkuOGEtNS4x Ci0tIHJlYnVpbHQgZm9yIG5ldyBnY2M0LjEgc25hcHNob3QgYW5kIGdsaWJjIGNoYW5nZXMKLQot KiBUaHUgRGVjIDE1IDIwMDUgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4gMC45LjhhLTUK LS0gZG9uJ3QgaW5jbHVkZSBTU0xfT1BfTkVUU0NBUEVfUkVVU0VfQ0lQSEVSX0NIQU5HRV9CVUcK LSAgaW4gU1NMX09QX0FMTCAoIzE3NTc3OSkKLQotKiBGcmkgRGVjIDA5IDIwMDUgSmVzc2UgS2Vh dGluZyA8amtlYXRpbmdAcmVkaGF0LmNvbT4KLS0gcmVidWlsdAotCi0qIFR1ZSBOb3YgMjkgMjAw NSBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGEtNAotLSBmaXggYnVpbGQgKC1s Y3J5cHRvIHdhcyBlcnJvbmV1c2x5IGRyb3BwZWQpIG9mIHRoZSB1cGRhdGVkIGxpYmljYQotLSB1 cGRhdGVkIElDQSBlbmdpbmUgdG8gMS4zLjYtcmMzCi0KLSogVHVlIE5vdiAyMiAyMDA1IFRvbWFz IE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDAuOS44YS0zCi0tIGRpc2FibGUgYnVpbHRpbiBjb21w cmVzc2lvbiBtZXRob2RzIGZvciBub3cgdW50aWwgdGhleSB3b3JrCi0gIHByb3Blcmx5ICgjMTcz Mzk5KQotCi0qIFdlZCBOb3YgMTYgMjAwNSBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAw LjkuOGEtMgotLSBkb24ndCBzZXQgLXJwYXRoIGZvciBvcGVuc3NsIGJpbmFyeQotCi0qIFR1ZSBO b3YgIDggMjAwNSBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuOGEtMQotLSBuZXcg dXBzdHJlYW0gdmVyc2lvbgotLSBwYXRjaGVzIHBhcnRpYWxseSByZW51bWJlcmVkCi0KLSogRnJp IE9jdCAyMSAyMDA1IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5jb20+IDAuOS43Zi0xMQotLSB1 cGRhdGVkIElCTSBJQ0EgZW5naW5lIGxpYnJhcnkgYW5kIHBhdGNoIHRvIGxhdGVzdCB1cHN0cmVh bSB2ZXJzaW9uCi0KLSogV2VkIE9jdCAxMiAyMDA1IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5j b20+IDAuOS43Zi0xMAotLSBmaXggQ0FOLTIwMDUtMjk2OSAtIHJlbW92ZSBTU0xfT1BfTVNJRV9T U0xWMl9SU0FfUEFERElORyB3aGljaAotICBkaXNhYmxlcyB0aGUgY291bnRlcm1lYXN1cmUgYWdh aW5zdCBtYW4gaW4gdGhlIG1pZGRsZSBhdHRhY2sgaW4gU1NMdjIKLSAgKCMxNjk4NjMpCi0tIHVz ZSBzaGExIGFzIGRlZmF1bHQgZm9yIENBIGFuZCBjZXJ0IHJlcXVlc3RzIC0gQ0FOLTIwMDUtMjk0 NiAoIzE2OTgwMykKLQotKiBUdWUgQXVnIDIzIDIwMDUgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0 LmNvbT4gMC45LjdmLTkKLS0gYWRkICouc28uc292ZXJzaW9uIGFzIHN5bWxpbmtzIGluIC9saWIg KCMxNjUyNjQpCi0tIHJlbW92ZSB1bnBhY2thZ2VkIHN5bWxpbmtzICgjMTU5NTk1KQotLSBmaXhl cyBmcm9tIHVwc3RyZWFtIChjb25zdGFudCB0aW1lIGZpeGVzIGZvciBEU0EsCi0gIGJuIGFzc2Vt YmxlciBkaXYgb24gcHBjIGFyY2gsIGluaXRpYWxpemUgbWVtb3J5IG9uIHJlYWxsb2MpCi0KLSog VGh1IEF1ZyAxMSAyMDA1IFBoaWwgS25pcnNjaCA8cGtuaXJzY2hAcmVkaGF0LmNvbT4gMC45Ljdm LTgKLS0gVXBkYXRlZCBJQ0EgZW5naW5lIElCTSBwYXRjaCB0byBsYXRlc3QgdXBzdHJlYW0gdmVy c2lvbi4KLQotKiBUaHUgTWF5IDE5IDIwMDUgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNvbT4g MC45LjdmLTcKLS0gZml4IENBTi0yMDA1LTAxMDkgLSB1c2UgY29uc3RhbnQgdGltZS9tZW1vcnkg YWNjZXNzIG1vZF9leHAKLSAgc28gYml0cyBvZiBwcml2YXRlIGtleSBhcmVuJ3QgbGVha2VkIGJ5 IGNhY2hlIGV2aWN0aW9uICgjMTU3NjMxKQotLSBhIGZldyBtb3JlIGZpeGVzIGZyb20gdXBzdHJl YW0gMC45LjdnCi0KLSogV2VkIEFwciAyNyAyMDA1IFRvbWFzIE1yYXogPHRtcmF6QHJlZGhhdC5j b20+IDAuOS43Zi02Ci0tIHVzZSBwb2xsIGluc3RlYWQgb2Ygc2VsZWN0IGluIHJhbmQgKCMxMjgy ODUpCi0tIGZpeCBNYWtlZmlsZS5jZXJ0aWZpY2F0ZSB0byBwb2ludCB0byAvZXRjL3BraS90bHMK LS0gY2hhbmdlIHRoZSBkZWZhdWx0IHN0cmluZyBtYXNrIGluIEFTTjEgdG8gUHJpbnRhYmxlU3Ry aW5nK1VURjhTdHJpbmcKLQotKiBNb24gQXByIDI1IDIwMDUgSm9lIE9ydG9uIDxqb3J0b25AcmVk aGF0LmNvbT4gMC45LjdmLTUKLS0gdXBkYXRlIHRvIHJldmlzaW9uIDEuMzcgb2YgTW96aWxsYSBD QSBidW5kbGUKLQotKiBUaHUgQXByIDIxIDIwMDUgVG9tYXMgTXJheiA8dG1yYXpAcmVkaGF0LmNv bT4gMC45LjdmLTQKLS0gbW92ZSBjZXJ0aWZpY2F0ZXMgdG8gX3N5c2NvbmZkaXIvcGtpL3RscyAo IzE0MzM5MikKLS0gbW92ZSBDQSBkaXJlY3RvcmllcyB0byBfc3lzY29uZmRpci9wa2kvQ0EKLS0g cGF0Y2ggdGhlIENBIHNjcmlwdCBhbmQgdGhlIGRlZmF1bHQgY29uZmlnIHNvIGl0IHBvaW50cyB0 byB0aGUKLSAgQ0EgZGlyZWN0b3JpZXMKLQotKiBGcmkgQXByICAxIDIwMDUgVG9tYXMgTXJheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMC45LjdmLTMKLS0gdW5pbml0aWFsaXplZCB2YXJpYWJsZSBtdXN0 bid0IGJlIHVzZWQgYXMgaW5wdXQgaW4gaW5saW5lCi0gIGFzc2VtYmx5Ci0tIHJlZW5hYmxlIHRo ZSB4ODZfNjQgYXNzZW1ibHkgYWdhaW4KLQotKiBUaHUgTWFyIDMxIDIwMDUgVG9tYXMgTXJheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMC45LjdmLTIKLS0gYWRkIGJhY2sgUkM0X0NIQVIgb24gaWE2NCBh bmQgeDg2XzY0IHNvIHRoZSBBQkkgaXNuJ3QgYnJva2VuCi0tIGRpc2FibGUgYnJva2VuIGJpZ251 bSBhc3NlbWJseSBvbiB4ODZfNjQKLQotKiBXZWQgTWFyIDMwIDIwMDUgVG9tYXMgTXJheiA8dG1y YXpAcmVkaGF0LmNvbT4gMC45LjdmLTEKLS0gcmVlbmFibGUgb3B0aW1pemF0aW9ucyBvbiBwcGM2 NCBhbmQgYXNzZW1ibHkgY29kZSBvbiBpYTY0Ci0tIHVwZ3JhZGUgdG8gbmV3IHVwc3RyZWFtIHZl cnNpb24gKG5vIHNvbmFtZSBidW1wIG5lZWRlZCkKLS0gZGlzYWJsZSB0aHJlYWQgdGVzdCAtIGl0 IHdhcyB0ZXN0aW5nIHRoZSBiYWNrcG9ydCBvZiB0aGUKLSAgUlNBIGJsaW5kaW5nIC0gbm8gbG9u Z2VyIG5lZWRlZAotLSBhZGRlZCBzdXBwb3J0IGZvciBjaGFuZ2luZyBzZXJpYWwgbnVtYmVyIHRv Ci0gIE1ha2VmaWxlLmNlcnRpZmljYXRlICgjMTUxMTg4KQotLSBtYWtlIGNhLWJ1bmRsZS5jcnQg YSBjb25maWcgZmlsZSAoIzExODkwMykKLQotKiBUdWUgTWFyICAxIDIwMDUgVG9tYXMgTXJheiA8 dG1yYXpAcmVkaGF0LmNvbT4gMC45LjdlLTMKLS0gbGliY3J5cHRvIHNob3VsZG4ndCBkZXBlbmQg b24gbGlia3JiNSAoIzEzNTk2MSkKLQotKiBNb24gRmViIDI4IDIwMDUgVG9tYXMgTXJheiA8dG1y YXpAcmVkaGF0LmNvbT4gMC45LjdlLTIKLS0gcmVidWlsZAotCi0qIE1vbiBGZWIgMjggMjAwNSBU b21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPiAwLjkuN2UtMQotLSBuZXcgdXBzdHJlYW0gc291 cmNlLCB1cGRhdGVkIHBhdGNoZXMKLS0gYWRkZWQgcGF0Y2ggc28gd2UgYXJlIGhvcGVmdWxseSBB QkkgY29tcGF0aWJsZSB3aXRoIHVwY29taW5nCi0gIDAuOS43ZgotCi0qIFRodSBGZWIgMTAgMjAw NSBUb21hcyBNcmF6IDx0bXJhekByZWRoYXQuY29tPgotLSBTdXBwb3J0IFVURi04IGNoYXJzZXQg aW4gdGhlIE1ha2VmaWxlLmNlcnRpZmljYXRlICgjMTM0OTQ0KQotLSBBZGRlZCBjbXAgdG8gQnVp bGRQcmVyZXEKLQotKiBUaHUgSmFuIDI3IDIwMDUgSm9lIE9ydG9uIDxqb3J0b25AcmVkaGF0LmNv bT4gMC45LjdhLTQ2Ci0tIGdlbmVyYXRlIG5ldyBjYS1idW5kbGUuY3J0IGZyb20gTW96aWxsYSBj ZXJ0ZGF0YS50eHQgKHJldmlzaW9uIDEuMzIpCi0KLSogVGh1IERlYyAyMyAyMDA0IFBoaWwgS25p cnNjaCA8cGtuaXJzY2hAcmVkaGF0LmNvbT4gMC45LjdhLTQ1Ci0tIEZpeGVkIGFuZCB1cGRhdGVk IGxpYmljYS0xLjMuNC11cmFuZG9tLnBhdGNoIHBhdGNoICgjMTIyOTY3KQotCi0qIEZyaSBOb3Yg MTkgMjAwNCBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+IDAuOS43YS00NAotLSBy ZWJ1aWxkCi0KLSogRnJpIE5vdiAxOSAyMDA0IE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0 LmNvbT4gMC45LjdhLTQzCi0tIHJlYnVpbGQKLQotKiBGcmkgTm92IDE5IDIwMDQgTmFsaW4gRGFo eWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPiAwLjkuN2EtNDIKLS0gcmVidWlsZAotCi0qIEZyaSBO b3YgMTkgMjAwNCBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+IDAuOS43YS00MQot LSByZW1vdmUgZGVyX2Nob3AsIGFzIHVwc3RyZWFtIGN2cyBoYXMgZG9uZSAoQ0FOLTIwMDQtMDk3 NSwgIzE0MDA0MCkKLQotKiBUdWUgT2N0IDA1IDIwMDQgUGhpbCBLbmlyc2NoIDxwa25pcnNjaEBy ZWRoYXQuY29tPiAwLjkuN2EtNDAKLS0gSW5jbHVkZSBsYXRlc3QgbGliaWNhIHZlcnNpb24gd2l0 aCBpbXBvcnRhbnQgYnVnZml4ZXMKLQotKiBUdWUgSnVuIDE1IDIwMDQgRWxsaW90IExlZSA8c29w d2l0aEByZWRoYXQuY29tPgotLSByZWJ1aWx0Ci0KLSogTW9uIEp1biAxNCAyMDA0IFBoaWwgS25p cnNjaCA8cGtuaXJzY2hAcmVkaGF0LmNvbT4gMC45LjdhLTM4Ci0tIFVwZGF0ZWQgSUNBIGVuZ2lu ZSBJQk0gcGF0Y2ggdG8gbGF0ZXN0IHVwc3RyZWFtIHZlcnNpb24uCi0KLSogTW9uIEp1biAgNyAy MDA0IE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjdhLTM3Ci0tIGJ1aWxk IGZvciBsaW51eC1hbHBoYS1nY2MgaW5zdGVhZCBvZiBhbHBoYS1nY2Mgb24gYWxwaGEgKEplZmYg R2FyemlrKQotCi0qIFR1ZSBNYXkgMjUgMjAwNCBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhh dC5jb20+IDAuOS43YS0zNgotLSBoYW5kbGUgJSV7X2FyY2h9PWk0ODYvaTU4Ni9pNjg2L2F0aGxv biBjYXNlcyBpbiB0aGUgaW50ZXJtZWRpYXRlCi0gIGhlYWRlciAoIzEyNDMwMykKLQotKiBUaHUg TWFyIDI1IDIwMDQgSm9lIE9ydG9uIDxqb3J0b25AcmVkaGF0LmNvbT4gMC45LjdhLTM1Ci0tIGFk ZCBzZWN1cml0eSBmaXhlcyBmb3IgQ0FOLTIwMDQtMDA3OSwgQ0FOLTIwMDQtMDExMgotCi0qIFR1 ZSBNYXIgMTYgMjAwNCBQaGlsIEtuaXJzY2ggPHBrbmlyc2NoQHJlZGhhdC5jb20+Ci0tIEZpeGVk IGxpYmljYSBmaWxlc3BlYy4KLQotKiBUaHUgTWFyIDExIDIwMDQgTmFsaW4gRGFoeWFiaGFpIDxu YWxpbkByZWRoYXQuY29tPiAwLjkuN2EtMzQKLS0gcHBjL3BwYzY0IGRlZmluZSBfX3Bvd2VycGNf Xy9fX3Bvd2VycGM2NF9fLCBub3QgX19wcGNfXy9fX3BwYzY0X18sIGZpeAotICB0aGUgaW50ZXJt ZWRpYXRlIGhlYWRlcgotCi0qIFdlZCBNYXIgMTAgMjAwNCBOYWxpbiBEYWh5YWJoYWkgPG5hbGlu QHJlZGhhdC5jb20+IDAuOS43YS0zMwotLSBhZGQgYW4gaW50ZXJtZWRpYXRlIDxvcGVuc3NsL29w ZW5zc2xjb25mLmg+IHdoaWNoIHBvaW50cyB0byB0aGUgcmlnaHQKLSAgYXJjaC1zcGVjaWZpYyBv cGVuc3NsY29uZi5oIG9uIG11bHRpbGliIGFyY2hlcwotCi0qIFR1ZSBNYXIgMDIgMjAwNCBFbGxp b3QgTGVlIDxzb3B3aXRoQHJlZGhhdC5jb20+Ci0tIHJlYnVpbHQKLQotKiBUaHUgRmViIDI2IDIw MDQgUGhpbCBLbmlyc2NoIDxwa25pcnNjaEByZWRoYXQuY29tPiAwLjkuN2EtMzIKLS0gVXBkYXRl ZCBsaWJpY2EgdG8gbGF0ZXN0IHVwc3RyZWFtIHZlcnNpb24gMS4zLjUuCi0KLSogVHVlIEZlYiAx NyAyMDA0IFBoaWwgS25pcnNjaCA8cGtuaXJzY2hAcmVkaGF0LmNvbT4gMC45LjdhLTMxCi0tIFVw ZGF0ZSBJQ0EgY3J5cHRvIGVuZ2luZSBwYXRjaCBmcm9tIElCTSB0byBsYXRlc3QgdmVyc2lvbi4K LQotKiBGcmkgRmViIDEzIDIwMDQgRWxsaW90IExlZSA8c29wd2l0aEByZWRoYXQuY29tPgotLSBy ZWJ1aWx0Ci0KLSogRnJpIEZlYiAxMyAyMDA0IFBoaWwgS25pcnNjaCA8cGtuaXJzY2hAcmVkaGF0 LmNvbT4gMC45LjdhLTI5Ci0tIHJlYnVpbHQKLQotKiBXZWQgRmViIDExIDIwMDQgUGhpbCBLbmly c2NoIDxwa25pcnNjaEByZWRoYXQuY29tPiAwLjkuN2EtMjgKLS0gRml4ZWQgbGliaWNhIGJ1aWxk LgotCi0qIFdlZCBGZWIgIDQgMjAwNCBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+ Ci0tIGFkZCAiLWxkbCIgdG8gbGluayBmbGFncyBhZGRlZCBmb3IgTGludXgtb24tQVJNICgjOTkz MTMpCi0KLSogV2VkIEZlYiAgNCAyMDA0IEpvZSBPcnRvbiA8am9ydG9uQHJlZGhhdC5jb20+IDAu OS43YS0yNwotLSB1cGRhdGVkIGNhLWJ1bmRsZS5jcnQ6IHJlbW92ZWQgZXhwaXJlZCBHZW9UcnVz dCByb290cywgYWRkZWQKLSAgZnJlZXNzbC5jb20gcm9vdCwgcmVtb3ZlZCB0cnVzdGNlbnRlci5k ZSBDbGFzcyAwIHJvb3QKLQotKiBTdW4gTm92IDMwIDIwMDMgVGltIFdhdWdoIDx0d2F1Z2hAcmVk aGF0LmNvbT4gMC45LjdhLTI2Ci0tIEZpeCBsaW5rIGxpbmUgZm9yIGxpYnNzbCAoYnVnICMxMTEx NTQpLgotCi0qIEZyaSBPY3QgMjQgMjAwMyBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5j b20+IDAuOS43YS0yNQotLSBhZGQgZGVwZW5kZW5jeSBvbiB6bGliLWRldmVsIGZvciB0aGUgLWRl dmVsIHBhY2thZ2UsIHdoaWNoIGRlcGVuZHMgb24gemxpYgotICBzeW1ib2xzIGJlY2F1c2Ugd2Ug ZW5hYmxlIHpsaWIgZm9yIGxpYnNzbCAoIzEwMjk2MikKLQotKiBGcmkgT2N0IDI0IDIwMDMgUGhp bCBLbmlyc2NoIDxwa25pcnNjaEByZWRoYXQuY29tPiAwLjkuN2EtMjQKLS0gVXNlIC9kZXYvdXJh bmRvbSBpbnN0ZWFkIG9mIFBSTkcgZm9yIGxpYmljYS4KLS0gQXBwbHkgbGliaWNhLTEuMy41IGZp eCBmb3IgL2Rldi91cmFuZG9tIGluIGljYWxpbnV4LmMKLS0gVXNlIGxhdGVzdCBJQ0EgZW5naW5l IHBhdGNoIGZyb20gSUJNLgotCi0qIFNhdCBPY3QgIDQgMjAwMyBOYWxpbiBEYWh5YWJoYWkgPG5h bGluQHJlZGhhdC5jb20+IDAuOS43YS0yMi4xCi0tIHJlYnVpbGQKLQotKiBXZWQgT2N0ICAxIDIw MDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPiAwLjkuN2EtMjIKLS0gcmVidWls ZCAoMjIgd2Fzbid0IGFjdHVhbGx5IGJ1aWx0LCBmdW4gZWg/KQotCi0qIFR1ZSBTZXAgMzAgMjAw MyBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+IDAuOS43YS0yMwotLSByZS1kaXNh YmxlIG9wdGltaXphdGlvbnMgb24gcHBjNjQKLQotKiBUdWUgU2VwIDMwIDIwMDMgSm9lIE9ydG9u IDxqb3J0b25AcmVkaGF0LmNvbT4KLS0gYWRkIGFfbWJzdHIuYyBmaXggZm9yIDY0LWJpdCBwbGF0 Zm9ybXMgZnJvbSBDVlMKLQotKiBUdWUgU2VwIDMwIDIwMDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxp bkByZWRoYXQuY29tPiAwLjkuN2EtMjIKLS0gYWRkIC1XYSwtLW5vZXhlY3N0YWNrIHRvIFJQTV9P UFRfRkxBR1Mgc28gdGhhdCBhc3NlbWJsZWQgbW9kdWxlcyBnZXQgdGFnZ2VkCi0gIGFzIG5vdCBu ZWVkaW5nIGV4ZWN1dGFibGUgc3RhY2tzCi0KLSogTW9uIFNlcCAyOSAyMDAzIE5hbGluIERhaHlh YmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjdhLTIxCi0tIHJlYnVpbGQKLQotKiBUaHUgU2Vw IDI1IDIwMDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPgotLSByZS1lbmFibGUg b3B0aW1pemF0aW9ucyBvbiBwcGM2NAotCi0qIFRodSBTZXAgMjUgMjAwMyBOYWxpbiBEYWh5YWJo YWkgPG5hbGluQHJlZGhhdC5jb20+Ci0tIHJlbW92ZSBleGNsdXNpdmVhcmNoCi0KLSogV2VkIFNl cCAyNCAyMDAzIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjdhLTIwCi0t IG9ubHkgcGFyc2UgYSBjbGllbnQgY2VydCBpZiBvbmUgd2FzIHJlcXVlc3RlZAotLSB0ZW1wb3Jh cmlseSBleGNsdXNpdmVhcmNoIGZvciAlJXtpeDg2fQotCi0qIFR1ZSBTZXAgMjMgMjAwMyBOYWxp biBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+Ci0tIGFkZCBzZWN1cml0eSBmaXhlcyBmb3Ig cHJvdG9jb2wgcGFyc2luZyBidWdzIChDQU4tMjAwMy0wNTQzLCBDQU4tMjAwMy0wNTQ0KQotICBh bmQgaGVhcCBjb3JydXB0aW9uIChDQU4tMjAwMy0wNTQ1KQotLSB1cGRhdGUgUkhOUy1DQS1DRVJU IGZpbGVzCi0tIGVhc2UgYmFjayBvbiB0aGUgbnVtYmVyIG9mIHRocmVhZHMgdXNlZCBpbiB0aGUg dGhyZWFkaW5nIHRlc3QKLQotKiBXZWQgU2VwIDE3IDIwMDMgTWF0dCBXaWxzb24gPG1zd0ByZWRo YXQuY29tPiAwLjkuN2EtMTkKLS0gcmVidWlsZCB0byBmaXggZ3ppcHBlZCBmaWxlIG1kNXN1bXMg KCM5MTIxMSkKLQotKiBNb24gQXVnIDI1IDIwMDMgUGhpbCBLbmlyc2NoIDxwa25pcnNjaEByZWRo YXQuY29tPiAwLjkuN2EtMTgKLS0gVXBkYXRlZCBsaWJpY2EgdG8gdmVyc2lvbiAxLjMuNC4KLQot KiBUaHUgSnVsIDE3IDIwMDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPiAwLjku N2EtMTcKLS0gcmVidWlsZAotCi0qIFR1ZSBKdWwgMTUgMjAwMyBOYWxpbiBEYWh5YWJoYWkgPG5h bGluQHJlZGhhdC5jb20+IDAuOS43YS0xMC45Ci0tIGZyZWUgdGhlIGtzc2xfY3R4IHN0cnVjdHVy ZSB3aGVuIHdlIGZyZWUgYW4gU1NMIHN0cnVjdHVyZSAoIzk5MDY2KQotCi0qIEZyaSBKdWwgMTEg MjAwMyBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+IDAuOS43YS0xNgotLSByZWJ1 aWxkCi0KLSogVGh1IEp1bCAxMCAyMDAzIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNv bT4gMC45LjdhLTE1Ci0tIGxvd2VyIHRocmVhZCB0ZXN0IGNvdW50IG9uIHMzOTB4Ci0KLSogVHVl IEp1bCAgOCAyMDAzIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjdhLTE0 Ci0tIHJlYnVpbGQKLQotKiBUaHUgSnVuIDI2IDIwMDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkBy ZWRoYXQuY29tPiAwLjkuN2EtMTMKLS0gZGlzYWJsZSBhc3NlbWJseSBvbiBhcmNoZXMgd2hlcmUg aXQgc2VlbXMgdG8gY29uZmxpY3Qgd2l0aCB0aHJlYWRpbmcKLQotKiBUaHUgSnVuIDI2IDIwMDMg UGhpbCBLbmlyc2NoIDxwa25pcnNjaEByZWRoYXQuY29tPiAwLjkuN2EtMTIKLS0gVXBkYXRlZCBs aWJpY2EgdG8gbGF0ZXN0IHVwc3RyZWFtIHZlcnNpb24gMS4zLjAKLQotKiBXZWQgSnVuIDExIDIw MDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPiAwLjkuN2EtOS45Ci0tIHJlYnVp bGQKLQotKiBXZWQgSnVuIDExIDIwMDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29t PiAwLjkuN2EtMTEKLS0gcmVidWlsZAotCi0qIFR1ZSBKdW4gMTAgMjAwMyBOYWxpbiBEYWh5YWJo YWkgPG5hbGluQHJlZGhhdC5jb20+IDAuOS43YS0xMAotLSB1YnNlYzogZG9uJ3Qgc3RvbXAgb24g b3V0cHV0IGRhdGEgd2hpY2ggbWlnaHQgYWxzbyBiZSBpbnB1dCBkYXRhCi0KLSogVHVlIEp1biAx MCAyMDAzIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjdhLTkKLS0gdGVt cG9yYXJpbHkgZGlzYWJsZSBvcHRpbWl6YXRpb25zIG9uIHBwYzY0Ci0KLSogTW9uIEp1biAgOSAy MDAzIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4KLS0gYmFja3BvcnQgZml4IGZv ciBlbmdpbmUtdXNlZC1mb3ItZXZlcnl0aGluZyBmcm9tIDAuOS43YgotLSBiYWNrcG9ydCBmaXgg Zm9yIHBybmcgbm90IGJlaW5nIHNlZWRlZCBjYXVzaW5nIHByb2JsZW1zLCBhbHNvIGZyb20gMC45 LjdiCi0tIGFkZCBhIGNoZWNrIGF0IGJ1aWxkLXRpbWUgdG8gZW5zdXJlIHRoYXQgUlNBIGlzIHRo cmVhZC1zYWZlCi0tIGtlZXAgcGVybHBhdGggZnJvbSBzdG9tcGluZyBvbiB0aGUgbGliaWNhIGNv bmZpZ3VyZSBzY3JpcHRzCi0KLSogRnJpIEp1biAgNiAyMDAzIE5hbGluIERhaHlhYmhhaSA8bmFs aW5AcmVkaGF0LmNvbT4KLS0gdGhyZWFkLXNhZmV0eSBmaXggZm9yIFJTQSBibGluZGluZwotCi0q IFdlZCBKdW4gMDQgMjAwMyBFbGxpb3QgTGVlIDxzb3B3aXRoQHJlZGhhdC5jb20+IDAuOS43YS04 Ci0tIHJlYnVpbHQKLQotKiBGcmkgTWF5IDMwIDIwMDMgUGhpbCBLbmlyc2NoIDxwa25pcnNjaEBy ZWRoYXQuY29tPiAwLjkuN2EtNwotLSBBZGRlZCBsaWJpY2EtMS4yIHRvIG9wZW5zc2wgKGZlYXR1 cmVyZXF1ZXN0KS4KLQotKiBXZWQgQXByIDE2IDIwMDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkBy ZWRoYXQuY29tPiAwLjkuN2EtNgotLSBmaXggYnVpbGRpbmcgd2l0aCBpbmNvcnJlY3QgZmxhZ3Mg b24gcHBjNjQKLQotKiBXZWQgTWFyIDE5IDIwMDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRo YXQuY29tPiAwLjkuN2EtNQotLSBhZGQgcGF0Y2ggdG8gaGFyZGVuIGFnYWluc3QgS2xpbWEtUG9r b3JueS1Sb3NhIGV4dGVuc2lvbiBvZiBCbGVpY2hlbmJhY2hlcidzCi0gIGF0dGFjayAoQ0FOLTIw MDMtMDEzMSkKLQotKiBNb24gTWFyIDE3IDIwMDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRo YXQuY29tPiAgMC45LjdhLTQKLS0gYWRkIHBhdGNoIHRvIGVuYWJsZSBSU0EgYmxpbmRpbmcgYnkg ZGVmYXVsdCwgY2xvc2luZyBhIHRpbWluZyBhdHRhY2sKLSAgKENBTi0yMDAzLTAxNDcpCi0KLSog V2VkIE1hciAgNSAyMDAzIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45Ljdh LTMKLS0gZGlzYWJsZSB1c2Ugb2YgQk4gYXNzZW1ibHkgbW9kdWxlIG9uIHg4Nl82NCwgYnV0IGNv bnRpbnVlIHRvIGFsbG93IGlubGluZQotICBhc3NlbWJseSAoIzgzNDAzKQotCi0qIFRodSBGZWIg MjcgMjAwMyBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+IDAuOS43YS0yCi0tIGRp c2FibGUgRUMgYWxnb3JpdGhtcwotCi0qIFdlZCBGZWIgMTkgMjAwMyBOYWxpbiBEYWh5YWJoYWkg PG5hbGluQHJlZGhhdC5jb20+IDAuOS43YS0xCi0tIHVwZGF0ZSB0byAwLjkuN2EKLQotKiBXZWQg RmViIDE5IDIwMDMgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPiAwLjkuNy04Ci0t IGFkZCBmaXggdG8gZ3VhcmQgYWdhaW5zdCBhdHRlbXB0cyB0byBhbGxvY2F0ZSBuZWdhdGl2ZSBh bW91bnRzIG9mIG1lbW9yeQotLSBhZGQgcGF0Y2ggZm9yIENBTi0yMDAzLTAwNzgsIGZpeGluZyBh IHRpbWluZyBhdHRhY2sKLQotKiBUaHUgRmViIDEzIDIwMDMgRWxsaW90IExlZSA8c29wd2l0aEBy ZWRoYXQuY29tPiAwLjkuNy03Ci0tIEFkZCBvcGVuc3NsLXBwYzY0LnBhdGNoCi0KLSogTW9uIEZl YiAxMCAyMDAzIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjctNgotLSBF VlBfRGVjcnlwdEluaXQgc2hvdWxkIGNhbGwgRVZQX0NpcGhlckluaXQoKSBpbnN0ZWFkIG9mIEVW UF9DaXBoZXJJbml0X2V4KCksCi0gIHRvIGdldCB0aGUgcmlnaHQgYmVoYXZpb3Igd2hlbiBwYXNz ZWQgdW5pbml0aWFsaXplZCBjb250ZXh0IHN0cnVjdHVyZXMKLSAgKCM4Mzc2NikKLS0gYnVpbGQg d2l0aCAtbWNwdT1ldjUgb24gYWxwaGEgZmFtaWx5ICgjODM4MjgpCi0KLSogV2VkIEphbiAyMiAy MDAzIFRpbSBQb3dlcnMgPHRpbXBAcmVkaGF0LmNvbT4KLS0gcmVidWlsdAotCi0qIEZyaSBKYW4g MTcgMjAwMyBQaGlsIEtuaXJzY2ggPHBrbmlyc2NoQHJlZGhhdC5jb20+IDAuOS43LTQKLS0gQWRk ZWQgSUJNIGh3IGNyeXB0byBzdXBwb3J0IHBhdGNoLgotCi0qIFdlZCBKYW4gMTUgMjAwMyBOYWxp biBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+Ci0tIGFkZCBtaXNzaW5nIGJ1aWxkZGVwIG9u IHNlZAotCi0qIFRodSBKYW4gIDkgMjAwMyBCaWxsIE5vdHRpbmdoYW0gPG5vdHRpbmdAcmVkaGF0 LmNvbT4gMC45LjctMwotLSBkZWJsb2F0Ci0tIGZpeCBicm9rZW4gbWFucGFnZSBzeW1saW5rcwot Ci0qIFdlZCBKYW4gIDggMjAwMyBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+IDAu OS43LTIKLS0gZml4IGRvdWJsZS1mcmVlIGluICdvcGVuc3NsIGNhJwotCi0qIEZyaSBKYW4gIDMg MjAwMyBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+IDAuOS43LTEKLS0gdXBkYXRl IHRvIDAuOS43IGZpbmFsCi0KLSogVHVlIERlYyAxNyAyMDAyIE5hbGluIERhaHlhYmhhaSA8bmFs aW5AcmVkaGF0LmNvbT4gMC45LjctMAotLSB1cGRhdGUgdG8gMC45LjcgYmV0YTYgKERPIE5PVCBV U0UgVU5USUwgVVBEQVRFRCBUTyBGSU5BTCAwLjkuNykKLQotKiBXZWQgRGVjIDExIDIwMDIgTmFs aW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPgotLSB1cGRhdGUgdG8gMC45LjcgYmV0YTUg KERPIE5PVCBVU0UgVU5USUwgVVBEQVRFRCBUTyBGSU5BTCAwLjkuNykKLQotKiBUdWUgT2N0IDIy IDIwMDIgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPiAwLjkuNmItMzAKLS0gYWRk IGNvbmZpZ3VyYXRpb24gc3RhbnphIGZvciB4ODZfNjQgYW5kIHVzZSBpdCBvbiB4ODZfNjQKLS0g YnVpbGQgZm9yIGxpbnV4LXBwYyBvbiBwcGMKLS0gc3RhcnQgcnVubmluZyB0aGUgc2VsZi10ZXN0 cyBhZ2FpbgotCi0qIFdlZCBPY3QgMDIgMjAwMiBFbGxpb3QgTGVlIDxzb3B3aXRoQHJlZGhhdC5j b20+IDAuOS42Yi0yOWhhbW1lci4zCi0tIE1lcmdlIGZpeGVzIGZyb20gcHJldmlvdXMgaGFtbWVy IHBhY2thZ2VzLCBpbmNsdWRpbmcgZ2VuZXJhbCB4ODYtNjQgYW5kCi0gIG11bHRpbGliCi0KLSog VHVlIEF1ZyAgNiAyMDAyIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjZi LTI5Ci0tIHJlYnVpbGQKLQotKiBUaHUgQXVnICAxIDIwMDIgTmFsaW4gRGFoeWFiaGFpIDxuYWxp bkByZWRoYXQuY29tPiAwLjkuNmItMjgKLS0gdXBkYXRlIGFzbiBwYXRjaCB0byBmaXggYWNjaWRl bnRhbCByZXZlcnNhbCBvZiBhIGxvZ2ljIGNoZWNrCi0KLSogV2VkIEp1bCAzMSAyMDAyIE5hbGlu IERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjZiLTI3Ci0tIHVwZGF0ZSBhc24gcGF0 Y2ggdG8gcmVkdWNlIGNoYW5jZSB0aGF0IGNvbXBpbGVyIG9wdGltaXphdGlvbiB3aWxsIHJlbW92 ZQotICBvbmUgb2YgdGhlIGFkZGVkIHRlc3RzCi0KLSogV2VkIEp1bCAzMSAyMDAyIE5hbGluIERh aHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjZiLTI2Ci0tIHJlYnVpbGQKLQotKiBNb24g SnVsIDI5IDIwMDIgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPiAwLjkuNmItMjUK LS0gYWRkIHBhdGNoIHRvIGZpeCBBU04uMSB2dWxuZXJhYmlsaXRpZXMKLQotKiBUaHUgSnVsIDI1 IDIwMDIgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPiAwLjkuNmItMjQKLS0gYWRk IGJhY2twb3J0IG9mIEJlbiBMYXVyaWUncyBwYXRjaGVzIGZvciBPcGVuU1NMIDAuOS42ZAotCi0q IFdlZCBKdWwgMTcgMjAwMiBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+IDAuOS42 Yi0yMwotLSBvd24ge19kYXRhZGlyfS9zc2wvbWlzYwotCi0qIEZyaSBKdW4gMjEgMjAwMiBUaW0g UG93ZXJzIDx0aW1wQHJlZGhhdC5jb20+Ci0tIGF1dG9tYXRlZCByZWJ1aWxkCi0KLSogU3VuIE1h eSAyNiAyMDAyIFRpbSBQb3dlcnMgPHRpbXBAcmVkaGF0LmNvbT4KLS0gYXV0b21hdGVkIHJlYnVp bGQKLQotKiBGcmkgTWF5IDE3IDIwMDIgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29t PiAwLjkuNmItMjAKLS0gZnJlZSByaWRlIHRocm91Z2ggdGhlIGJ1aWxkIHN5c3RlbSAod2hlZSEp Ci0KLSogVGh1IE1heSAxNiAyMDAyIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4g MC45LjZiLTE5Ci0tIHJlYnVpbGQgaW4gbmV3IGVudmlyb25tZW50Ci0KLSogVGh1IEFwciAgNCAy MDAyIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjZiLTE3LCAwLjkuNmIt MTgKLS0gbWVyZ2UgUkhMLXNwZWNpZmljIGJpdHMgaW50byBzdHJvbmdob2xkIHBhY2thZ2UsIHJl bmFtZQotCi0qIFR1ZSBBcHIgMDIgMjAwMiBHYXJ5IEJlbnNvbiA8Z2JlbnNvbkByZWRoYXQuY29t PiBzdHJvbmdob2xkLTAuOS42Yy0yCi0tIGFkZCBzdXBwb3J0IGZvciBDaHJ5c2FsaXMgTHVuYSB0 b2tlbgotCi0qIFR1ZSBNYXIgMjYgMjAwMiBHYXJ5IEJlbnNvbiA8Z2JlbnNvbkByZWRoYXQuY29t PgotLSBkaXNhYmxlIEFFUCByYW5kb20gbnVtYmVyIGdlbmVyYXRpb24sIG90aGVyIEFFUCBmaXhl cwotCi0qIEZyaSBNYXIgMTUgMjAwMiBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+ IDAuOS42Yi0xNQotLSBvbmx5IGJ1aWxkIHN1YnBhY2thZ2VzIG9uIHByaW1hcnkgYXJjaGVzCi0K LSogVGh1IE1hciAxNCAyMDAyIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45 LjZiLTEzCi0tIG9uIGlhMzIsIG9ubHkgZGlzYWJsZSB1c2Ugb2YgYXNzZW1ibGVyIG9uIGkzODYK LS0gZW5hYmxlIGFzc2VtYmx5IG9uIGlhNjQKLQotKiBNb24gSmFuICA3IDIwMDIgRmxvcmlhbiBM YSBSb2NoZSA8Rmxvcmlhbi5MYVJvY2hlQHJlZGhhdC5kZT4gMC45LjZiLTExCi0tIGZpeCBzcGFy Y3Y5IGVudHJ5Ci0KLSogTW9uIEphbiAgNyAyMDAyIEdhcnkgQmVuc29uIDxnYmVuc29uQHJlZGhh dC5jb20+IHN0cm9uZ2hvbGQtMC45LjZjLTEKLS0gdXBncmFkZSB0byAwLjkuNmMKLS0gYnVtcCBC dWlsZEFyY2ggdG8gaTY4NiBhbmQgZW5hYmxlIGFzc2VtYmxlciBvbiBhbGwgcGxhdGZvcm1zCi0t IHN5bmNocm9uaXNlIHdpdGggc2hyaW1weSBhbmQgcmF3aGlkZQotLSBidW1wIHNvdmVyc2lvbiB0 byAzCi0KLSogV2VkIE9jdCAxMCAyMDAxIEZsb3JpYW4gTGEgUm9jaGUgPEZsb3JpYW4uTGFSb2No ZUByZWRoYXQuZGU+Ci0tIGRlbGV0ZSBCTl9MTE9ORyBmb3IgczM5MHgsIHBhdGNoIGZyb20gT2xp dmVyIFBhdWtzdGFkdAotCi0qIE1vbiBTZXAgMTcgMjAwMSBOYWxpbiBEYWh5YWJoYWkgPG5hbGlu QHJlZGhhdC5jb20+IDAuOS42Yi05Ci0tIHVwZGF0ZSBBRVAgZHJpdmVyIHBhdGNoCi0KLSogTW9u IFNlcCAxMCAyMDAxIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4KLS0gYWRqdXN0 IFJORyBkaXNhYmxpbmcgcGF0Y2ggdG8gbWF0Y2ggdmVyc2lvbiBvZiBwYXRjaCBmcm9tIEJyb2Fk Y29tCi0KLSogRnJpIFNlcCAgNyAyMDAxIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNv bT4gMC45LjZiLTgKLS0gZGlzYWJsZSB0aGUgUk5HIGluIHRoZSB1YnNlYyBlbmdpbmUgZHJpdmVy Ci0KLSogVHVlIEF1ZyAyOCAyMDAxIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4g MC45LjZiLTcKLS0gdHdlYWtzIHRvIHRoZSB1YnNlYyBlbmdpbmUgZHJpdmVyCi0KLSogRnJpIEF1 ZyAyNCAyMDAxIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjZiLTYKLS0g dHdlYWtzIHRvIHRoZSB1YnNlYyBlbmdpbmUgZHJpdmVyCi0KLSogVGh1IEF1ZyAyMyAyMDAxIE5h bGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjZiLTUKLS0gdXBkYXRlIHVic2Vj IGVuZ2luZSBkcml2ZXIgZnJvbSBCcm9hZGNvbQotCi0qIEZyaSBBdWcgMTAgMjAwMSBOYWxpbiBE YWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+IDAuOS42Yi00Ci0tIG1vdmUgbWFuIHBhZ2VzIGJh Y2sgdG8gJSV7X21hbmRpcn0vbWFuPy9mb28uP3NzbCBmcm9tCi0gICUle19tYW5kaXJ9L21hbj9z c2wvZm9vLj8KLS0gYWRkIGFuIFsgZW5naW5lIF0gc2VjdGlvbiB0byB0aGUgZGVmYXVsdCBjb25m aWd1cmF0aW9uIGZpbGUKLQotKiBUaHUgQXVnICA5IDIwMDEgTmFsaW4gRGFoeWFiaGFpIDxuYWxp bkByZWRoYXQuY29tPgotLSBhZGQgYSBwYXRjaCBmb3Igc2VsZWN0aW5nIGEgZGVmYXVsdCBlbmdp bmUgaW4gU1NMX2xpYnJhcnlfaW5pdCgpCi0KLSogTW9uIEp1bCAyMyAyMDAxIE5hbGluIERhaHlh YmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjZiLTMKLS0gYWRkIHBhdGNoZXMgZm9yIEFFUCBo YXJkd2FyZSBzdXBwb3J0Ci0tIGFkZCBwYXRjaCB0byBrZWVwIHRyeWluZyB3aGVuIHdlIGZhaWwg dG8gbG9hZCBhIGNlcnQgZnJvbSBhIGZpbGUgYW5kCi0gIHRoZXJlIGFyZSBtb3JlIGluIHRoZSBm aWxlCi0tIGFkZCBtaXNzaW5nIHByb3RvdHlwZSBmb3IgRU5HSU5FX3Vic2VjKCkgaW4gZW5naW5l X2ludC5oCi0KLSogV2VkIEp1bCAxOCAyMDAxIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0 LmNvbT4gMC45LjZiLTIKLS0gYWN0dWFsbHkgYWRkIGh3X3Vic2VjIHRvIHRoZSBlbmdpbmUgbGlz dAotCi0qIFR1ZSBKdWwgMTcgMjAwMSBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+ Ci0tIGFkZCBpbiB0aGUgaHdfdWJzZWMgZHJpdmVyIGZyb20gQ1ZTCi0KLSogV2VkIEp1bCAxMSAy MDAxIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4gMC45LjZiLTEKLS0gdXBkYXRl IHRvIDAuOS42YgotCi0qIFRodSBKdWwgIDUgMjAwMSBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJl ZGhhdC5jb20+Ci0tIG1vdmUgLnNvIHN5bWxpbmtzIGJhY2sgdG8gJSV7X2xpYmRpcn0KLQotKiBU dWUgSnVsICAzIDIwMDEgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPgotLSBtb3Zl IHNoYXJlZCBsaWJyYXJpZXMgdG8gL2xpYiAoIzM4NDEwKQotCi0qIE1vbiBKdW4gMjUgMjAwMSBO YWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+Ci0tIHN3aXRjaCB0byBlbmdpbmUgY29k ZSBiYXNlCi0KLSogTW9uIEp1biAxOCAyMDAxIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0 LmNvbT4KLS0gYWRkIGEgc2NyaXB0IGZvciBjcmVhdGluZyBkdW1teSBjZXJ0aWZpY2F0ZXMKLS0g bW92ZSBtYW4gcGFnZXMgZnJvbSAlJXtfbWFuZGlyfS9tYW4/L2Zvby4/c3NsIHRvICUle19tYW5k aXJ9L21hbj9zc2wvZm9vLj8KLQotKiBUaHUgSnVuIDA3IDIwMDEgRmxvcmlhbiBMYSBSb2NoZSA8 Rmxvcmlhbi5MYVJvY2hlQHJlZGhhdC5kZT4KLS0gYWRkIHMzOTB4IHN1cHBvcnQKLQotKiBGcmkg SnVuICAxIDIwMDEgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPgotLSBjaGFuZ2Ug dHdvIG1lbWNweSgpIGNhbGxzIHRvIG1lbW1vdmUoKQotLSBkb24ndCBkZWZpbmUgTF9FTkRJQU4g b24gYWxwaGEKLQotKiBXZWQgTWF5IDIzIDIwMDEgSm9lIE9ydG9uIDxqb3J0b25AcmVkaGF0LmNv bT4gc3Ryb25naG9sZC0wLjkuNmEtMQotLSBBZGQgJ3N0cm9uZ2hvbGQtJyBwcmVmaXggdG8gcGFj a2FnZSBuYW1lcy4KLS0gT2Jzb2xldGUgc3RhbmRhcmQgb3BlbnNzbCBwYWNrYWdlcy4KLQotKiBX ZWQgTWF5IDE2IDIwMDEgSm9lIE9ydG9uIDxqb3J0b25AcmVkaGF0LmNvbT4KLS0gQWRkIEJ1aWxk QXJjaDogaTU4NiBhcyBwZXIgTmFsaW4ncyBhZHZpY2UuCi0KLSogVHVlIE1heSAxNSAyMDAxIEpv ZSBPcnRvbiA8am9ydG9uQHJlZGhhdC5jb20+Ci0tIEVuYWJsZSBhc3NlbWJsZXIgb24gaXg4NiAo dXNpbmcgbmV3IC50YXIuYnoyIHdoaWNoIGRvZXMKLSAgaW5jbHVkZSB0aGUgYXNtIGRpcmVjdG9y aWVzKS4KLQotKiBUdWUgTWF5IDE1IDIwMDEgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQu Y29tPgotLSBtYWtlIHN1YnBhY2thZ2VzIGRlcGVuZCBvbiB0aGUgbWFpbiBwYWNrYWdlCi0KLSog VHVlIE1heSAgMSAyMDAxIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4KLS0gYWRq dXN0IHRoZSBob2JibGUgc2NyaXB0IHRvIG5vdCBkaXN0dXJiIHN5bWxpbmtzIGluIGluY2x1ZGUv IChmaXggZnJvbQotICBKb2UgT3J0b24pCi0KLSogRnJpIEFwciAyNyAyMDAxIE5hbGluIERhaHlh YmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4KLS0gZHJvcCB0aGUgbTJjcnlwbyBwYXRjaCB3ZSB3ZXJl bid0IHVzaW5nCi0KLSogVHVlIEFwciAyNCAyMDAxIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVk aGF0LmNvbT4KLS0gY29uZmlndXJlIHVzaW5nICJzaGFyZWQiIGFzIHdlbGwKLQotKiBTdW4gQXBy ICA4IDIwMDEgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPgotLSB1cGRhdGUgdG8g MC45LjZhCi0tIHVzZSB0aGUgYnVpbGQtc2hhcmVkIHRhcmdldCB0byBidWlsZCBzaGFyZWQgbGli cmFyaWVzCi0tIGJ1bXAgdGhlIHNvdmVyc2lvbiB0byAyIGJlY2F1c2Ugd2UncmUgbm8gbG9uZ2Vy IGNvbXBhdGlibGUgd2l0aAotICBvdXIgMC45LjVhIHBhY2thZ2VzIG9yIG91ciAwLjkuNiBwYWNr YWdlcwotLSBkcm9wIHRoZSBwYXRjaCBmb3IgbWFraW5nIHJzYXRlc3QgYSBuby1vcCB3aGVuIHJz YSBudWxsIHN1cHBvcnQgaXMgdXNlZAotLSBwdXQgYWxsIG1hbiBwYWdlcyBpbnRvIDxzZWN0aW9u PnNzbCBpbnN0ZWFkIG9mIDxzZWN0aW9uPgotLSBicmVhayB0aGUgbTJjcnlwdG8gbW9kdWxlcyBp bnRvIGEgc2VwYXJhdGUgcGFja2FnZQotCi0qIFR1ZSBNYXIgMTMgMjAwMSBOYWxpbiBEYWh5YWJo YWkgPG5hbGluQHJlZGhhdC5jb20+Ci0tIHVzZSBCTl9MTE9ORyBvbiBzMzkwCi0KLSogTW9uIE1h ciAxMiAyMDAxIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4KLS0gZml4IHRoZSBz MzkwIGNoYW5nZXMgZm9yIDAuOS42IChpc24ndCBzdXBwb3NlZCB0byBiZSBtYXJrZWQgYXMgNjQt Yml0KQotCi0qIFNhdCBNYXIgIDMgMjAwMSBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5j b20+Ci0tIG1vdmUgY19yZWhhc2ggdG8gdGhlIHBlcmwgc3VicGFja2FnZSwgYmVjYXVzZSBpdCdz IGEgcGVybCBzY3JpcHQgbm93Ci0KLSogRnJpIE1hciAgMiAyMDAxIE5hbGluIERhaHlhYmhhaSA8 bmFsaW5AcmVkaGF0LmNvbT4KLS0gdXBkYXRlIHRvIDAuOS42Ci0tIGVuYWJsZSBNRDIKLS0gdXNl IHRoZSBsaWJjcnlwdG8uc28gYW5kIGxpYnNzbC5zbyB0YXJnZXRzIHRvIGJ1aWxkIHNoYXJlZCBs aWJzIHdpdGgKLS0gYnVtcCB0aGUgc292ZXJzaW9uIHRvIDEgYmVjYXVzZSB3ZSdyZSBubyBsb25n ZXIgY29tcGF0aWJsZSB3aXRoIGFueSBvZgotICB0aGUgdmFyaW91cyAwLjkuNWEgcGFja2FnZXMg Y2lyY3VsYXRpbmcgYXJvdW5kLCB3aGljaCBwcm92aWRlIGxpYiouc28uMAotCi0qIFdlZCBGZWIg MjggMjAwMSBGbG9yaWFuIExhIFJvY2hlIDxGbG9yaWFuLkxhUm9jaGVAcmVkaGF0LmRlPgotLSBj aGFuZ2UgaG9iYmxlLW9wZW5zc2wgZm9yIGRpc2FibGluZyBNRDIgYWdhaW4KLQotKiBUdWUgRmVi IDI3IDIwMDEgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPgotLSByZS1kaXNhYmxl IE1EMiAtLSB0aGUgRVZQX01EX0NUWCBzdHJ1Y3R1cmUgd291bGQgZ3JvdyBmcm9tIDEwMCB0byAx NTIKLSAgYnl0ZXMgb3Igc28sIGNhdXNpbmcgRVZQX0RpZ2VzdEluaXQoKSB0byB6ZXJvIG91dCBz dGFjayB2YXJpYWJsZXMgaW4KLSAgYXBwcyBidWlsdCBhZ2FpbnN0IGEgdmVyc2lvbiBvZiB0aGUg bGlicmFyeSB3aXRob3V0IGl0Ci0KLSogTW9uIEZlYiAyNiAyMDAxIE5hbGluIERhaHlhYmhhaSA8 bmFsaW5AcmVkaGF0LmNvbT4KLS0gZGlzYWJsZSBzb21lIGlubGluZSBhc3NlbWJseSwgd2hpY2gg b24geDg2IGlzIFBlbnRpdW0tc3BlY2lmaWMKLS0gcmUtZW5hYmxlIE1EMiAoc2VlIGh0dHA6Ly93 d3cuaWV0Zi5vcmcvaWV0Zi9JUFIvUlNBLU1ELWFsbCkKLQotKiBUaHUgRmViIDA4IDIwMDEgRmxv cmlhbiBMYSBSb2NoZSA8Rmxvcmlhbi5MYVJvY2hlQHJlZGhhdC5kZT4KLS0gZml4IHMzOTAgcGF0 Y2gKLQotKiBGcmkgRGVjIDggMjAwMCBUaGFuIE5nbyA8dGhhbkByZWRoYXQuY29tPgotLSBhZGRl ZCBzdXBwb3J0IHMzOTAKLQotKiBNb24gTm92IDIwIDIwMDAgTmFsaW4gRGFoeWFiaGFpIDxuYWxp bkByZWRoYXQuY29tPgotLSByZW1vdmUgLVdhLCogYW5kIC1tKiBjb21waWxlciBmbGFncyBmcm9t IHRoZSBkZWZhdWx0IENvbmZpZ3VyZSBmaWxlICgjMjA2NTYpCi0tIGFkZCB0aGUgQ0EucGwgbWFu IHBhZ2UgdG8gdGhlIHBlcmwgc3VicGFja2FnZQotCi0qIFRodSBOb3YgIDIgMjAwMCBOYWxpbiBE YWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+Ci0tIGFsd2F5cyBidWlsZCB3aXRoIC1tY3B1PWV2 NSBvbiBhbHBoYQotCi0qIFR1ZSBPY3QgMzEgMjAwMCBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJl ZGhhdC5jb20+Ci0tIGFkZCBhIHN5bWxpbmsgZnJvbSBjZXJ0LnBlbSB0byBjYS1idW5kbGUuY3J0 Ci0KLSogV2VkIE9jdCAyNSAyMDAwIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4K LS0gYWRkIGEgY2EtYnVuZGxlIGZpbGUgZm9yIHBhY2thZ2VzIGxpa2UgU2FtYmEgdG8gcmVmZXJl bmNlIGZvciBDQSBjZXJ0aWZpY2F0ZXMKLQotKiBUdWUgT2N0IDI0IDIwMDAgTmFsaW4gRGFoeWFi aGFpIDxuYWxpbkByZWRoYXQuY29tPgotLSByZW1vdmUgbGliY3J5cHRvJ3MgY3J5cHQoKSwgd2hp Y2ggZG9lc24ndCBoYW5kbGUgbWQ1Y3J5cHQgKCMxOTI5NSkKLQotKiBNb24gT2N0ICAyIDIwMDAg TmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPgotLSBhZGQgdW56aXAgYXMgYSBidWls ZHByZXJlcSAoIzE3NjYyKQotLSB1cGRhdGUgbTJjcnlwdG8gdG8gMC4wNS1zbmFwNAotCi0qIFR1 ZSBTZXAgMjYgMjAwMCBCaWxsIE5vdHRpbmdoYW0gPG5vdHRpbmdAcmVkaGF0LmNvbT4KLS0gZml4 IHNvbWUgaXNzdWVzIGluIGJ1aWxkaW5nIHdoZW4gaXQncyBub3QgaW5zdGFsbGVkCi0KLSogV2Vk IFNlcCAgNiAyMDAwIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4KLS0gbWFrZSBz dXJlIHRoZSBoZWFkZXJzIHdlIGluY2x1ZGUgYXJlIHRoZSBvbmVzIHdlIGJ1aWx0IHdpdGggKGFh YWFhcnJnaCEpCi0KLSogRnJpIFNlcCAgMSAyMDAwIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVk aGF0LmNvbT4KLS0gYWRkIFJpY2hhcmQgSGVuZGVyc29uJ3MgcGF0Y2ggZm9yIEJOIG9uIGlhNjQK LS0gY2xlYW4gdXAgdGhlIGNoYW5nZWxvZwotCi0qIFR1ZSBBdWcgMjkgMjAwMCBOYWxpbiBEYWh5 YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+Ci0tIGZpeCB0aGUgYnVpbGRpbmcgb2YgcHl0aG9uIG1v ZHVsZXMgd2l0aG91dCBvcGVuc3NsLWRldmVsIGFscmVhZHkgaW5zdGFsbGVkCi0KLSogV2VkIEF1 ZyAyMyAyMDAwIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4KLS0gYnl0ZS1jb21w aWxlIHB5dGhvbiBleHRlbnNpb25zIHdpdGhvdXQgdGhlIGJ1aWxkLXJvb3QKLS0gYWRqdXN0IHRo ZSBtYWtlZmlsZSB0byBub3QgcmVtb3ZlIHRlbXBvcmFyeSBmaWxlcyAobGlrZSAua2V5IGZpbGVz IHdoZW4KLSAgYnVpbGRpbmcgLmNzciBmaWxlcykgYnkgbWFya2luZyB0aGVtIGFzIC5QUkVDSU9V UwotCi0qIFNhdCBBdWcgMTkgMjAwMCBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+ Ci0tIGJyZWFrIG91dCBweXRob24gZXh0ZW5zaW9ucyBpbnRvIGEgc3VicGFja2FnZQotCi0qIE1v biBKdWwgMTcgMjAwMCBOYWxpbiBEYWh5YWJoYWkgPG5hbGluQHJlZGhhdC5jb20+Ci0tIHR3ZWFr IHRoZSBtYWtlZmlsZSBzb21lIG1vcmUKLQotKiBUdWUgSnVsIDExIDIwMDAgTmFsaW4gRGFoeWFi aGFpIDxuYWxpbkByZWRoYXQuY29tPgotLSBkaXNhYmxlIE1EMiBzdXBwb3J0Ci0KLSogVGh1IEp1 bCAgNiAyMDAwIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4KLS0gZGlzYWJsZSBN REMyIHN1cHBvcnQKLQotKiBTdW4gSnVsICAyIDIwMDAgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkBy ZWRoYXQuY29tPgotLSB0d2VhayB0aGUgZGlzYWJsaW5nIG9mIFJDNSwgSURFQSBzdXBwb3J0Ci0t IHR3ZWFrIHRoZSBtYWtlZmlsZQotCi0qIFRodSBKdW4gMjkgMjAwMCBOYWxpbiBEYWh5YWJoYWkg PG5hbGluQHJlZGhhdC5jb20+Ci0tIHN0cmlwIGJpbmFyaWVzIGFuZCBsaWJyYXJpZXMKLS0gcmV3 b3JrIGNlcnRpZmljYXRlIG1ha2VmaWxlIHRvIGhhdmUgdGhlIHJpZ2h0IHBhcnRzIGZvciBBcGFj aGUKLQotKiBXZWQgSnVuIDI4IDIwMDAgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29t PgotLSB1c2UgJSV7X3Blcmx9IGluc3RlYWQgb2YgL3Vzci9iaW4vcGVybAotLSBkaXNhYmxlIGFs cGhhIHVudGlsIGl0IHBhc3NlcyBpdHMgb3duIHRlc3Qgc3VpdGUKLQotKiBGcmkgSnVuICA5IDIw MDAgTmFsaW4gRGFoeWFiaGFpIDxuYWxpbkByZWRoYXQuY29tPgotLSBtb3ZlIHRoZSBwYXNzd2Qu MSBtYW4gcGFnZSBvdXQgb2YgdGhlIHBhc3N3ZCBwYWNrYWdlJ3Mgd2F5Ci0KLSogRnJpIEp1biAg MiAyMDAwIE5hbGluIERhaHlhYmhhaSA8bmFsaW5AcmVkaGF0LmNvbT4KLS0gdXBkYXRlIHRvIDAu OS41YSwgbW9kaWZpZWQgZm9yIFUuUy4KLS0gYWRkIHBlcmwgYXMgYSBidWlsZC10aW1lIHJlcXVp cmVtZW50Ci0tIG1vdmUgY2VydGlmaWNhdGUgbWFrZWZpbGUgdG8gYW5vdGhlciBwYWNrYWdlCi0t IGRpc2FibGUgUkM1LCBJREVBLCBSU0Egc3VwcG9ydAotLSByZW1vdmUgb3B0aW1pemF0aW9ucyBm b3Igbm93Ci0KLSogV2VkIE1hciAgMSAyMDAwIEZsb3JpYW4gTGEgUm9jaGUgPEZsb3JpYW4uTGFS b2NoZUByZWRoYXQuZGU+Ci0tIEJlcm8gdG9sZCBtZSB0byBtb3ZlIHRoZSBNYWtlZmlsZSBpbnRv IHRoaXMgcGFja2FnZQotCi0qIFdlZCBNYXIgIDEgMjAwMCBGbG9yaWFuIExhIFJvY2hlIDxGbG9y aWFuLkxhUm9jaGVAcmVkaGF0LmRlPgotLSBhZGQgbGliKi5zbyBzeW1saW5rcyB0byBsaW5rIGR5 bmFtaWNhbGx5IGFnYWluc3Qgc2hhcmVkIGxpYnMKLQotKiBUdWUgRmViIDI5IDIwMDAgRmxvcmlh biBMYSBSb2NoZSA8Rmxvcmlhbi5MYVJvY2hlQHJlZGhhdC5kZT4KLS0gdXBkYXRlIHRvIDAuOS41 Ci0tIHJ1biBsZGNvbmZpZyBkaXJlY3RseSBpbiBwb3N0L3Bvc3R1bgotLSBhZGQgRkFRCi0KLSog U2F0IERlYyAxOCAxOTk5IEJlcm5oYXJkIFJvc2Vua3JkbnplciA8YmVyb0ByZWRoYXQuZGU+Ci0t IEZpeCBidWlsZCBvbiBub24teDg2IHBsYXRmb3JtcwotCi0qIEZyaSBOb3YgMTIgMTk5OSBCZXJu aGFyZCBSb3NlbmtyZG56ZXIgPGJlcm9AcmVkaGF0LmRlPgotLSBtb3ZlIC91c3Ivc2hhcmUvc3Ns LyogZnJvbSAtZGV2ZWwgdG8gbWFpbiBwYWNrYWdlCi0KLSogVHVlIE9jdCAyNiAxOTk5IEJlcm5o YXJkIFJvc2Vua3JkbnplciA8YmVyb0ByZWRoYXQuZGU+Ci0tIGluaXRhbCBwYWNrYWdpbmcKLS0g Y2hhbmdlcyBmcm9tIGJhc2U6Ci0gIC0gTW92ZSAvdXNyL2xvY2FsL3NzbCB0byAvdXNyL3NoYXJl L3NzbCBmb3IgRkhTIGNvbXBsaWFuY2UKLSAgLSBoYW5kbGUgUlBNX09QVF9GTEFHUworKiBUaHUg U2VwIDA5IDIwMjEgU2FoYW5hIFByYXNhZCA8c2FoYW5hQHJlZGhhdC5jb20+IC0gMTozLjAuMC0x CistIFJlYmFzZSB0byB1cHN0cmVhbSB2ZXJzaW9uIDMuMC4wCgpkaWZmIC0tZ2l0IGEvc291cmNl cyBiL3NvdXJjZXMKaW5kZXggY2M5Zjk2Mi4uNDE3Mzk3NCAxMDA2NDQKLS0tIGEvc291cmNlcwor KysgYi9zb3VyY2VzCkBAIC0xICsxIEBACi1TSEE1MTIgKG9wZW5zc2wtMS4xLjFrLWhvYmJsZWQu dGFyLnh6KSA9IGI1MjgyZTQwYWY4ZjI4ZjdhODU5ZGZkZGViMjY5ZjNhNGIwZjRmYjUzNWRlMzMw ZGZkM2FkMTRhMTIzYjU3ZmU2NmUzODgwYzZjOWFhY2Y0OTg2NTE3NWIxZjdmNmM4OGNhZTMxNDUx YTk5ZDRhYzJiMmNiMWM1MTM1ZDRhZGE5CitTSEE1MTIgKG9wZW5zc2wtMy4wLjAtaG9iYmxlZC50 YXIueHopID0gYWViNjgzNGRlOTZiYmY1M2IwZTI4N2M5ZjBlZDg2NjEwMGQzMGRkMDJiNjk0ZmQ3 MTQyZGE4NTVhYzEwMDc0YzlhZDc3Y2Q3YzFjNjg4ODkwMDk0ZjMxZmQyZWU1YjU2MTBhN2JhMTEx Mjc3NWI5NGFlODBiYTUxYzY2ZTBiMjcKCmRpZmYgLS1naXQgYS90ZXN0cy9zaW1wbGUtcnNhcHNz LXRlc3QvTWFrZWZpbGUgYi90ZXN0cy9zaW1wbGUtcnNhcHNzLXRlc3QvTWFrZWZpbGUKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEzYTEyM2QuLjAwMDAwMDAKLS0tIGEvdGVzdHMvc2lt cGxlLXJzYXBzcy10ZXN0L01ha2VmaWxlCisrKyAvZGV2L251bGwKQEAgLTEsNjMgKzAsMCBAQAot IyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fgotIwotIyAgIE1ha2VmaWxlIG9mIC9Db3JlT1Mvb3BlbnNzbC9TYW5pdHkv c2ltcGxlLXJzYXBzcy10ZXN0Ci0jICAgRGVzY3JpcHRpb246IFRlc3QgaWYgUlNBLVBTUyBzaWdu YXR1cmUgc2NoZW1lIGlzIHN1cHBvcnRlZAotIyAgIEF1dGhvcjogSHViZXJ0IEthcmlvIDxoa2Fy aW9AcmVkaGF0LmNvbT4KLSMKLSMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLSMKLSMgICBDb3B5cmlnaHQgKGMpIDIw MTMgUmVkIEhhdCwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotIwotIyAgIFRoaXMgY29weXJp Z2h0ZWQgbWF0ZXJpYWwgaXMgbWFkZSBhdmFpbGFibGUgdG8gYW55b25lIHdpc2hpbmcKLSMgICB0 byB1c2UsIG1vZGlmeSwgY29weSwgb3IgcmVkaXN0cmlidXRlIGl0IHN1YmplY3QgdG8gdGhlIHRl cm1zCi0jICAgYW5kIGNvbmRpdGlvbnMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl IHZlcnNpb24gMi4KLSMKLSMgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv cGUgdGhhdCBpdCB3aWxsIGJlCi0jICAgdXNlZnVsLCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZAotIyAgIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElU WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSMgICBQVVJQT1NFLiBTZWUgdGhlIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0jCi0jICAgWW91IHNob3Vs ZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljCi0jICAgTGlj ZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZQot IyAgIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGgg Rmxvb3IsCi0jICAgQm9zdG9uLCBNQSAwMjExMC0xMzAxLCBVU0EuCi0jCi0jIH5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ Ci0KLWV4cG9ydCBURVNUPS9Db3JlT1Mvb3BlbnNzbC9TYW5pdHkvc2ltcGxlLXJzYXBzcy10ZXN0 Ci1leHBvcnQgVEVTVFZFUlNJT049MS4wCi0KLUJVSUxUX0ZJTEVTPQotCi1GSUxFUz0kKE1FVEFE QVRBKSBydW50ZXN0LnNoIE1ha2VmaWxlIFBVUlBPU0UKLQotLlBIT05ZOiBhbGwgaW5zdGFsbCBk b3dubG9hZCBjbGVhbgotCi1ydW46ICQoRklMRVMpIGJ1aWxkCi0JLi9ydW50ZXN0LnNoCi0KLWJ1 aWxkOiAkKEJVSUxUX0ZJTEVTKQotCXRlc3QgLXggcnVudGVzdC5zaCB8fCBjaG1vZCBhK3ggcnVu dGVzdC5zaAotCi1jbGVhbjoKLQlybSAtZiAqfiAkKEJVSUxUX0ZJTEVTKQotCi0KLS1pbmNsdWRl IC91c3Ivc2hhcmUvcmh0cy9saWIvcmh0cy1tYWtlLmluY2x1ZGUKLQotJChNRVRBREFUQSk6IE1h a2VmaWxlCi0JQGVjaG8gIk93bmVyOiAgICAgICAgICAgSHViZXJ0IEthcmlvIDxoa2FyaW9AcmVk aGF0LmNvbT4iID4gJChNRVRBREFUQSkKLQlAZWNobyAiTmFtZTogICAgICAgICAgICAkKFRFU1Qp IiA+PiAkKE1FVEFEQVRBKQotCUBlY2hvICJUZXN0VmVyc2lvbjogICAgICQoVEVTVFZFUlNJT04p IiA+PiAkKE1FVEFEQVRBKQotCUBlY2hvICJQYXRoOiAgICAgICAgICAgICQoVEVTVF9ESVIpIiA+ PiAkKE1FVEFEQVRBKQotCUBlY2hvICJEZXNjcmlwdGlvbjogICAgIFRlc3QgaWYgUlNBLVBTUyBz aWduYXR1cmUgc2NoZW1lIGlzIHN1cHBvcnRlZCIgPj4gJChNRVRBREFUQSkKLQlAZWNobyAiVHlw ZTogICAgICAgICAgICBTYW5pdHkiID4+ICQoTUVUQURBVEEpCi0JQGVjaG8gIlRlc3RUaW1lOiAg ICAgICAgMW0iID4+ICQoTUVUQURBVEEpCi0JQGVjaG8gIlJ1bkZvcjogICAgICAgICAgb3BlbnNz bCIgPj4gJChNRVRBREFUQSkKLQlAZWNobyAiUmVxdWlyZXM6ICAgICAgICBvcGVuc3NsIG1hbiBt YW4tZGIiID4+ICQoTUVUQURBVEEpCi0JQGVjaG8gIlByaW9yaXR5OiAgICAgICAgTm9ybWFsIiA+ PiAkKE1FVEFEQVRBKQotCUBlY2hvICJMaWNlbnNlOiAgICAgICAgIEdQTHYyIiA+PiAkKE1FVEFE QVRBKQotCUBlY2hvICJDb25maWRlbnRpYWw6ICAgIG5vIiA+PiAkKE1FVEFEQVRBKQotCUBlY2hv ICJEZXN0cnVjdGl2ZTogICAgIG5vIiA+PiAkKE1FVEFEQVRBKQotCi0Jcmh0cy1saW50ICQoTUVU QURBVEEpCgpkaWZmIC0tZ2l0IGEvdGVzdHMvc2ltcGxlLXJzYXBzcy10ZXN0L1BVUlBPU0UgYi90 ZXN0cy9zaW1wbGUtcnNhcHNzLXRlc3QvUFVSUE9TRQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggNjY4NDhlNy4uMDAwMDAwMAotLS0gYS90ZXN0cy9zaW1wbGUtcnNhcHNzLXRlc3QvUFVS UE9TRQorKysgL2Rldi9udWxsCkBAIC0xLDMgKzAsMCBAQAotUFVSUE9TRSBvZiAvQ29yZU9TL29w ZW5zc2wvU2FuaXR5L3NpbXBsZS1yc2Fwc3MtdGVzdAotRGVzY3JpcHRpb246IFRlc3QgaWYgUlNB LVBTUyBzaWduYXR1cmUgc2NoZW1lIGlzIHN1cHBvcnRlZAotQXV0aG9yOiBIdWJlcnQgS2FyaW8g PGhrYXJpb0ByZWRoYXQuY29tPgoKZGlmZiAtLWdpdCBhL3Rlc3RzL3NpbXBsZS1yc2Fwc3MtdGVz dC9ydW50ZXN0LnNoIGIvdGVzdHMvc2ltcGxlLXJzYXBzcy10ZXN0L3J1bnRlc3Quc2gKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDhiNjBlMmYuLjAwMDAwMDAKLS0tIGEvdGVzdHMvc2lt cGxlLXJzYXBzcy10ZXN0L3J1bnRlc3Quc2gKKysrIC9kZXYvbnVsbApAQCAtMSw3NCArMCwwIEBA Ci0jIS9iaW4vYmFzaAotIyB2aW06IGRpY3Q9L3Vzci9zaGFyZS9iZWFrZXJsaWIvZGljdGlvbmFy eS52aW0gY3B0PS4sdyxiLHUsdCxpLGsKLSMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KLSMKLSMgICBydW50ZXN0LnNo IG9mIC9Db3JlT1Mvb3BlbnNzbC9TYW5pdHkvc2ltcGxlLXJzYXBzcy10ZXN0Ci0jICAgRGVzY3Jp cHRpb246IFRlc3QgaWYgUlNBLVBTUyBzaWduYXR1cmUgc2NoZW1lIGlzIHN1cHBvcnRlZAotIyAg IEF1dGhvcjogSHViZXJ0IEthcmlvIDxoa2FyaW9AcmVkaGF0LmNvbT4KLSMKLSMgfn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4KLSMKLSMgICBDb3B5cmlnaHQgKGMpIDIwMTMgUmVkIEhhdCwgSW5jLiBBbGwgcmlnaHRzIHJl c2VydmVkLgotIwotIyAgIFRoaXMgY29weXJpZ2h0ZWQgbWF0ZXJpYWwgaXMgbWFkZSBhdmFpbGFi bGUgdG8gYW55b25lIHdpc2hpbmcKLSMgICB0byB1c2UsIG1vZGlmeSwgY29weSwgb3IgcmVkaXN0 cmlidXRlIGl0IHN1YmplY3QgdG8gdGhlIHRlcm1zCi0jICAgYW5kIGNvbmRpdGlvbnMgb2YgdGhl IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMi4KLSMKLSMgICBUaGlzIHByb2dy YW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlCi0jICAgdXNlZnVs LCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZAotIyAg IHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIK LSMgICBQVVJQT1NFLiBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl IGRldGFpbHMuCi0jCi0jICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljCi0jICAgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsg aWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZQotIyAgIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4s IDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCi0jICAgQm9zdG9uLCBNQSAwMjExMC0x MzAxLCBVU0EuCi0jCi0jIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Ci0KLSMgSW5jbHVkZSBCZWFrZXIgZW52aXJvbm1l bnQKLS4gL3Vzci9zaGFyZS9iZWFrZXJsaWIvYmVha2VybGliLnNoIHx8IGV4aXQgMQotCi1QQUNL QUdFPSJvcGVuc3NsIgotCi1QVUJfS0VZPSJyc2FfcHVia2V5LnBlbSIKLVBSSVZfS0VZPSJyc2Ff a2V5LnBlbSIKLUZJTEU9InRleHQudHh0IgotU0lHPSJ0ZXh0LnNpZyIKLQotcmxKb3VybmFsU3Rh cnQKLSAgICBybFBoYXNlU3RhcnRTZXR1cAotICAgICAgICBybEFzc2VydFJwbSAkUEFDS0FHRQot ICAgICAgICBybFJ1biAiVG1wRGlyPVwkKG1rdGVtcCAtZCkiIDAgIkNyZWF0aW5nIHRtcCBkaXJl Y3RvcnkiCi0gICAgICAgIHJsUnVuICJwdXNoZCAkVG1wRGlyIgotICAgICAgICBybFJ1biAib3Bl bnNzbCBnZW5yc2EgLW91dCAkUFJJVl9LRVkgMjA0OCIgMCAiR2VuZXJhdGUgUlNBIGtleSIKLSAg ICAgICAgcmxSdW4gIm9wZW5zc2wgcnNhIC1pbiAkUFJJVl9LRVkgLW91dCAkUFVCX0tFWSAtcHVi b3V0IiAwICJTcGxpdCB0aGUgcHVibGljIGtleSBmcm9tIHByaXZhdGUga2V5IgotICAgICAgICBy bFJ1biAiZWNobyAnc2lnbiBtZSEnID4gJEZJTEUiIDAgIkNyZWF0ZSBmaWxlIGZvciBzaWduaW5n IgotICAgICAgICBybEFzc2VydEV4aXN0cyAkRklMRQotICAgICAgICBybEFzc2VydEV4aXN0cyAk UFJJVl9LRVkKLSAgICAgICAgcmxBc3NlcnRFeGlzdHMgJFBVQl9LRVkKLSAgICBybFBoYXNlRW5k Ci0KLSAgICBybFBoYXNlU3RhcnRUZXN0ICJUZXN0IFJTQS1QU1MgcGFkZGluZyBtb2RlIgotICAg ICAgICBzZXQgLW8gcGlwZWZhaWwKLSAgICAgICAgcmxSdW4gIm9wZW5zc2wgZGdzdCAtc2hhMjU2 IC1zaWdvcHQgcnNhX3BhZGRpbmdfbW9kZTpwc3MgLXNpZ29wdCByc2FfcHNzX3NhbHRsZW46MzIg LW91dCAkU0lHIC1zaWduICRQUklWX0tFWSAkRklMRSIgMCAiU2lnbiB0aGUgZmlsZSIKLSAgICAg ICAgcmxSdW4gIm9wZW5zc2wgZGdzdCAtc2hhMjU2IC1zaWdvcHQgcnNhX3BhZGRpbmdfbW9kZTpw c3MgLXNpZ29wdCByc2FfcHNzX3NhbHRsZW46MzIgLXBydmVyaWZ5ICRQUklWX0tFWSAtc2lnbmF0 dXJlICRTSUcgJEZJTEUgfCBncmVwICdWZXJpZmllZCBPSyciIDAgIlZlcmlmeSB0aGUgc2lnbmF0 dXJlIHVzaW5nIHRoZSBwcml2YXRlIGtleSBmaWxlIgotICAgICAgICBybFJ1biAib3BlbnNzbCBk Z3N0IC1zaGEyNTYgLXNpZ29wdCByc2FfcGFkZGluZ19tb2RlOnBzcyAtc2lnb3B0IHJzYV9wc3Nf c2FsdGxlbjozMiAtdmVyaWZ5ICRQVUJfS0VZIC1zaWduYXR1cmUgJFNJRyAkRklMRSB8IGdyZXAg J1ZlcmlmaWVkIE9LJyIgMCAiVmVyaWZ5IHRoZSBzaWduYXR1cmUgdXNpbmcgcHVibGljIGtleSBm aWxlIgotICAgICAgICBybFJ1biAib3BlbnNzbCBkZ3N0IC1zaGEyNTYgLXNpZ29wdCByc2FfcGFk ZGluZ19tb2RlOnBzcyAtcHJ2ZXJpZnkgJFBSSVZfS0VZIC1zaWduYXR1cmUgJFNJRyAkRklMRSB8 IGdyZXAgJ1ZlcmlmaWVkIE9LJyIgMCAiVmVyaWZ5IHRoZSBzaWduYXR1cmUgdXNpbmcgdGhlIHBy aXZhdGUga2V5IGZpbGUgd2l0aG91dCBzcGVjaWZ5aW5nIHNhbHQgbGVuZ3RoIgotICAgICAgICBy bFJ1biAib3BlbnNzbCBkZ3N0IC1zaGEyNTYgLXNpZ29wdCByc2FfcGFkZGluZ19tb2RlOnBzcyAt dmVyaWZ5ICRQVUJfS0VZIC1zaWduYXR1cmUgJFNJRyAkRklMRSB8IGdyZXAgJ1ZlcmlmaWVkIE9L JyIgMCAiVmVyaWZ5IHRoZSBzaWduYXR1cmUgdXNpbmcgcHVibGljIGtleSBmaWxlIHdpdGhvdXQg c3BlY2lmeWluZyBzYWx0IGxlbmd0aCIKLSAgICAgICAgc2V0ICtvIHBpcGVmYWlsCi0gICAgICAg IHJsUnVuICJzZWQgLWkgJ3Mvc2lnbi9TaWduLycgJEZJTEUiIDAgIk1vZGlmeSBzaWduZWQgZmls ZSIKLSAgICAgICAgcmxSdW4gIm9wZW5zc2wgZGdzdCAtc2hhMjU2IC1zaWdvcHQgcnNhX3BhZGRp bmdfbW9kZTpwc3MgLXZlcmlmeSAkUFVCX0tFWSAtc2lnbmF0dXJlICRTSUcgJEZJTEUgfCBncmVw ICdWZXJpZmljYXRpb24gRmFpbHVyZSciIDAgIlZlcmlmeSB0aGF0IHRoZSBzaWduYXR1cmUgaXMg bm8gbG9uZ2VyIHZhbGlkIgotICAgIHJsUGhhc2VFbmQKLQotICAgIHJsUGhhc2VTdGFydFRlc3Qg IkRvY3VtZW50YXRpb24gY2hlY2siCi0gICAgICAgIFsgLWUgIiQocnBtIC1xbCBvcGVuc3NsIHwg Z3JlcCBkZ3N0KSJdICYmIHJsUnVuICJtYW4gZGdzdCB8IGNvbCAtYiB8IGdyZXAgLS0gLXNpZ29w dCIgMCAiQ2hlY2sgaWYgLXNpZ29wdCBvcHRpb24gaXMgZGVzY3JpYmVkIGluIG1hbiBwYWdlIgot ICAgICAgICBybFJ1biAib3BlbnNzbCBkZ3N0IC1oZWxwIDI+JjEgfCBncmVwIC0tIC1zaWdvcHQi IDAgIkNoZWNrIGlmIC1zaWdvcHQgb3B0aW9uIGlzIHByZXNlbnQgaW4gaGVscCBtZXNzYWdlIgot ICAgIHJsUGhhc2VFbmQKLQotICAgIHJsUGhhc2VTdGFydENsZWFudXAKLSAgICAgICAgcmxSdW4g InBvcGQiCi0gICAgICAgIHJsUnVuICJybSAtciAkVG1wRGlyIiAwICJSZW1vdmluZyB0bXAgZGly ZWN0b3J5IgotICAgIHJsUGhhc2VFbmQKLXJsSm91cm5hbFByaW50VGV4dAotcmxKb3VybmFsRW5k CgpkaWZmIC0tZ2l0IGEvdGVzdHMvdGVzdHMueW1sIGIvdGVzdHMvdGVzdHMueW1sCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0YjcxZDU2Li4wMDAwMDAwCi0tLSBhL3Rlc3RzL3Rlc3Rz LnltbAorKysgL2Rldi9udWxsCkBAIC0xLDE1ICswLDAgQEAKLS0tLQotIyBUaGlzIGZpcnN0IHBs YXkgYWx3YXlzIHJ1bnMgb24gdGhlIGxvY2FsIHN0YWdpbmcgc3lzdGVtCi0tIGhvc3RzOiBsb2Nh bGhvc3QKLSAgcm9sZXM6Ci0gIC0gcm9sZTogc3RhbmRhcmQtdGVzdC1iZWFrZXJsaWIKLSAgICB0 YWdzOgotICAgIC0gY2xhc3NpYwotICAgIC0gY29udGFpbmVyCi0gICAgdGVzdHM6Ci0gICAgLSBz aW1wbGUtcnNhcHNzLXRlc3QKLSAgICByZXF1aXJlZF9wYWNrYWdlczoKLSAgICAtIGZpbmR1dGls cyAgICAgICAgICMgYmVha2VybGliIG5lZWRzIGZpbmQgY29tbWFuZAotICAgIC0gbWFuICAgICAg ICAgICAgICAgIyBuZWVkZWQgYnkgc2ltcGxlLXJzYXBzcy10ZXN0Ci0gICAgLSBtYW4tZGIgICAg ICAgICAgICAjIG5lZWRlZCBieSBzaW1wbGUtcnNhcHNzLXRlc3QKLSAgICAtIG9wZW5zc2wgICAg ICAgICAgICMgbmVlZGVkIGJ5IHNpbXBsZS1yc2Fwc3MtdGVzdAoKZGlmZiAtLWdpdCBhL3Rlc3Rz L3Rlc3RzX3B5dGhvbi55bWwgYi90ZXN0cy90ZXN0c19weXRob24ueW1sCmRlbGV0ZWQgZmlsZSBt b2RlIDEwMDY0NAppbmRleCA1MzQxNDQ2Li4wMDAwMDAwCi0tLSBhL3Rlc3RzL3Rlc3RzX3B5dGhv bi55bWwKKysrIC9kZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi0tLS0KLS0gaG9zdHM6IGxvY2Fs aG9zdAotICByb2xlczoKLSAgLSByb2xlOiBzdGFuZGFyZC10ZXN0LWJhc2ljCi0gICAgdGFnczoK LSAgICAtIGNsYXNzaWMKLSAgICByZXBvc2l0b3JpZXM6Ci0gICAgLSByZXBvOiAiaHR0cHM6Ly9z cmMuZmVkb3JhcHJvamVjdC5vcmcvdGVzdHMvcHl0aG9uLmdpdCIKLSAgICAgIGRlc3Q6ICJweXRo b24iCi0gICAgdGVzdHM6Ci0gICAgLSBweXRob25fc2VsZnRlc3Q6Ci0gICAgICAgIGRpcjogcHl0 aG9uL3NlbGZ0ZXN0Ci0gICAgICAgIHJ1bjogWD0idGVzdF9zc2wgdGVzdF9hc3luY2lvIHRlc3Rf aGFzaGxpYiB0ZXN0X2Z0cGxpYiB0ZXN0X2h0dHBsaWIgdGVzdF9pbWFwbGliIHRlc3RfbG9nZ2lu ZyB0ZXN0X25udHBsaWIgdGVzdF9wb3BsaWIgdGVzdF91cmxsaWIyX2xvY2FsbmV0IHRlc3RfdXJs bGliIHRlc3RfeG1scnBjIiAuL3BhcmFsbGVsLnNoCi0gICAgcmVxdWlyZWRfcGFja2FnZXM6Ci0g ICAgLSBnY2MgICMgZm9yIGV4dGVuc2lvbiBidWlsZGluZyBpbiB2ZW52IGFuZCBzZWxmdGVzdAot ICAgIC0gcHl0aG9uMy10a2ludGVyICAjIGZvciBzZWxmdGVzdAotICAgIC0gcHl0aG9uMy10ZXN0 ICAjIGZvciBzZWxmdGVzdAotICAgIC0gcHl0aG9uMy1ycG0tbWFjcm9zICAjIGZvciBkeW5hbWlj IHB5dGhvbiB2ZXJzaW9uCg==