IyBQb2xpc2ggdHJhbnNsYXRpb25zIGZvciBHTlUgc2VkIHBhY2thZ2UuCiMgQ29weXJpZ2h0IChDKSAyMDAzLCAyMDA0LCAyMDA1LCAyMDA2LCAyMDA4IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgojIFdvamNpZWNoIFBvbGFrIDxwb2xha0BnbnUub3JnPiwgMjAwMywgMjAwNCwgMjAwNSwgMjAwNiwgMjAwOC4KIyBjb3JyZWN0aW9uczogSmFrdWIgQm9ndXN6IDxxYm9vc2hAcGxkLWxpbnV4Lm9yZz4sIDIwMDMuCiMKbXNnaWQgIiIKbXNnc3RyICIiCiJQcm9qZWN0LUlkLVZlcnNpb246IHNlZCA0LjIuMFxuIgoiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGJ1Zy1nbnUtdXRpbHNAZ251Lm9yZ1xuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMDktMDYtMjcgMTU6MDgrMDIwMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogMjAwOC0wMy0wMSAxMjowNSswMTAwXG4iCiJMYXN0LVRyYW5zbGF0b3I6IFdvamNpZWNoIFBvbGFrIDxwb2xha0BnbnUub3JnPlxuIgoiTGFuZ3VhZ2UtVGVhbTogUG9saXNoIDx0cmFuc2xhdGlvbi10ZWFtLXBsQGxpc3RzLnNvdXJjZWZvcmdlLm5ldD5cbiIKIk1JTUUtVmVyc2lvbjogMS4wXG4iCiJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9SVNPLTg4NTktMlxuIgoiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgoiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0zOyBwbHVyYWw9KG49PTEgPyAwIDogbiUxMD49MiAmJiBuJTEwPD00ICYmIChuJTEwMDwxMCAiCiJ8fCBuJTEwMD49MjApID8gMSA6IDIpO1xuIgoKIzogc2VkL2NvbXBpbGUuYzoxNjEKbXNnaWQgIm11bHRpcGxlIGAhJ3MiCm1zZ3N0ciAid2llbG9rcm90bnkgem5hayBgISciCgojOiBzZWQvY29tcGlsZS5jOjE2Mgptc2dpZCAidW5leHBlY3RlZCBgLCciCm1zZ3N0ciAibmllb2N6ZWtpd2FueSB6bmFrIGAsJyIKCiM6IHNlZC9jb21waWxlLmM6MTYzCm1zZ2lkICJpbnZhbGlkIHVzYWdlIG9mICtOIG9yIH5OIGFzIGZpcnN0IGFkZHJlc3MiCm1zZ3N0ciAibmllcHJhd2lks293ZSB1v3ljaWUgK04gbHViIH5OIGpha28gcGllcndzemVnbyBhZHJlc3UiCgojOiBzZWQvY29tcGlsZS5jOjE2NAptc2dpZCAidW5tYXRjaGVkIGB7JyIKbXNnc3RyICJuaWVkb3Bhc293YW55IHpuYWsgYHsnIgoKIzogc2VkL2NvbXBpbGUuYzoxNjUKbXNnaWQgInVuZXhwZWN0ZWQgYH0nIgptc2dzdHIgIm5pZW9jemVraXdhbnkgem5hayBgfSciCgojOiBzZWQvY29tcGlsZS5jOjE2Ngptc2dpZCAiZXh0cmEgY2hhcmFjdGVycyBhZnRlciBjb21tYW5kIgptc2dzdHIgImRvZGF0a293ZSB6bmFraSBwbyBwb2xlY2VuaXUiCgojOiBzZWQvY29tcGlsZS5jOjE2Nwptc2dpZCAiZXhwZWN0ZWQgXFwgYWZ0ZXIgYGEnLCBgYycgb3IgYGknIgptc2dzdHIgIm9jemVraXdhbm8gem5ha3UgXFwgcG8gYGEnLCBgYycgbHViIGBpJyIKCiM6IHNlZC9jb21waWxlLmM6MTY4Cm1zZ2lkICJgfScgZG9lc24ndCB3YW50IGFueSBhZGRyZXNzZXMiCm1zZ3N0ciAiYH0nIG5pZSBjaGNlIL9hZG55Y2ggYWRyZXPzdyIKCiM6IHNlZC9jb21waWxlLmM6MTY5Cm1zZ2lkICI6IGRvZXNuJ3Qgd2FudCBhbnkgYWRkcmVzc2VzIgptc2dzdHIgIjogbmllIGNoY2Ugv2FkbnljaCBhZHJlc/N3IgoKIzogc2VkL2NvbXBpbGUuYzoxNzAKbXNnaWQgImNvbW1lbnRzIGRvbid0IGFjY2VwdCBhbnkgYWRkcmVzc2VzIgptc2dzdHIgImtvbWVudGFyemUgbmllIGFrY2VwdHVqsSC/YWRueWNoIGFkcmVz83ciCgojOiBzZWQvY29tcGlsZS5jOjE3MQptc2dpZCAibWlzc2luZyBjb21tYW5kIgptc2dzdHIgImJyYWt1amUgcG9sZWNlbmlhIgoKIzogc2VkL2NvbXBpbGUuYzoxNzIKbXNnaWQgImNvbW1hbmQgb25seSB1c2VzIG9uZSBhZGRyZXNzIgptc2dzdHIgInBvbGVjZW5pZSB1v3l3YSB0eWxrbyBqZWRuZWdvIGFkcmVzdSIKCiM6IHNlZC9jb21waWxlLmM6MTczCm1zZ2lkICJ1bnRlcm1pbmF0ZWQgYWRkcmVzcyByZWdleCIKbXNnc3RyICJuaWV6YWtv8WN6b255IGFkcmVzIHd5cmG/ZW5pYSByZWd1bGFybmVnbyIKCiM6IHNlZC9jb21waWxlLmM6MTc0Cm1zZ2lkICJ1bnRlcm1pbmF0ZWQgYHMnIGNvbW1hbmQiCm1zZ3N0ciAibmllemFrb/Fjem9uZSBwb2xlY2VuaWUgYHMnIgoKIzogc2VkL2NvbXBpbGUuYzoxNzUKbXNnaWQgInVudGVybWluYXRlZCBgeScgY29tbWFuZCIKbXNnc3RyICJuaWV6YWtv8WN6b25lIHBvbGVjZW5pZSBgeSciCgojOiBzZWQvY29tcGlsZS5jOjE3Ngptc2dpZCAidW5rbm93biBvcHRpb24gdG8gYHMnIgptc2dzdHIgIm5pZXpuYW5hIG9wY2phIGRsYSBwb2xlY2VuaWEgYHMnIgoKIzogc2VkL2NvbXBpbGUuYzoxNzcKbXNnaWQgIm11bHRpcGxlIGBwJyBvcHRpb25zIHRvIGBzJyBjb21tYW5kIgptc2dzdHIgIndpZWxva3JvdG5lIG9wY2plIGBwJyBkbGEgcG9sZWNlbmlhIGBzJyIKCiM6IHNlZC9jb21waWxlLmM6MTc4Cm1zZ2lkICJtdWx0aXBsZSBgZycgb3B0aW9ucyB0byBgcycgY29tbWFuZCIKbXNnc3RyICJ3aWVsb2tyb3RuZSBvcGNqZSBgZycgZGxhIHBvbGVjZW5pYSBgcyciCgojOiBzZWQvY29tcGlsZS5jOjE3OQptc2dpZCAibXVsdGlwbGUgbnVtYmVyIG9wdGlvbnMgdG8gYHMnIGNvbW1hbmQiCm1zZ3N0ciAid2llbG9rcm90bmUgb3BjamUgbGljemJvd2UgZGxhIHBvbGVjZW5pYSBgcyciCgojOiBzZWQvY29tcGlsZS5jOjE4MAptc2dpZCAibnVtYmVyIG9wdGlvbiB0byBgcycgY29tbWFuZCBtYXkgbm90IGJlIHplcm8iCm1zZ3N0ciAib3BjamEgbGljemJvd2EgZGxhIHBvbGVjZW5pYSBgcycgbmllIG1vv2UgYnnmIHplcmVtIgoKIzogc2VkL2NvbXBpbGUuYzoxODEKbXNnaWQgInN0cmluZ3MgZm9yIGB5JyBjb21tYW5kIGFyZSBkaWZmZXJlbnQgbGVuZ3RocyIKbXNnc3RyICKzYfFjdWNoeSBkbGEgcG9sZWNlbmlhIGB5JyBzsSBy879ueWNoIGSzdWdvtmNpIgoKIzogc2VkL2NvbXBpbGUuYzoxODIKbXNnaWQgImRlbGltaXRlciBjaGFyYWN0ZXIgaXMgbm90IGEgc2luZ2xlLWJ5dGUgY2hhcmFjdGVyIgptc2dzdHIgInpuYWsgb2dyYW5pY3puaWthIG5pZSBqZXN0IHBvamVkeW5jenltIHpuYWtpZW0tYmFqdGVtIgoKIzogc2VkL2NvbXBpbGUuYzoxODMKbXNnaWQgImV4cGVjdGVkIG5ld2VyIHZlcnNpb24gb2Ygc2VkIgptc2dzdHIgIm9jemVraXdhbm8gbm93c3plaiB3ZXJzamkgcHJvZ3JhbXUgc2VkIgoKIzogc2VkL2NvbXBpbGUuYzoxODQKbXNnaWQgImludmFsaWQgdXNhZ2Ugb2YgbGluZSBhZGRyZXNzIDAiCm1zZ3N0ciAibmllcHJhd2lks293ZSB1v3ljaWUgYWRyZXN1IGxpbmlpIDAiCgojOiBzZWQvY29tcGlsZS5jOjE4NQojLCBjLWZvcm1hdAptc2dpZCAidW5rbm93biBjb21tYW5kOiBgJWMnIgptc2dzdHIgIm5pZXpuYW5lIHBvbGVjZW5pZTogYCVjJyIKCiM6IHNlZC9jb21waWxlLmM6MjA4CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogZmlsZSAlcyBsaW5lICVsdTogJXNcbiIKbXNnc3RyICIlczogcGxpayAlcyBsaW5pYSAlbHU6ICVzXG4iCgojOiBzZWQvY29tcGlsZS5jOjIxMQojLCBjLWZvcm1hdAptc2dpZCAiJXM6IC1lIGV4cHJlc3Npb24gIyVsdSwgY2hhciAlbHU6ICVzXG4iCm1zZ3N0ciAiJXM6IC1lIHd5cmG/ZW5pZSAjJWx1LCB6bmFrICVsdTogJXNcbiIKCiM6IHNlZC9jb21waWxlLmM6MTY2NQojLCBjLWZvcm1hdAptc2dpZCAiY2FuJ3QgZmluZCBsYWJlbCBmb3IganVtcCB0byBgJXMnIgptc2dzdHIgIm5pZSBtb79uYSB6bmFsZbzmIGV0eWtpZXR5IGRsYSBza29rdSBkbyBgJXMnIgoKIzogc2VkL2V4ZWN1dGUuYzo3MDkKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBjYW4ndCByZWFkICVzOiAlc1xuIgptc2dzdHIgIiVzOiBuaWUgbW+/bmEgb2Rjenl0YeYgJXM6ICVzXG4iCgojOiBzZWQvZXhlY3V0ZS5jOjc0MAojLCBjLWZvcm1hdAptc2dpZCAiY291bGRuJ3QgZWRpdCAlczogaXMgYSB0ZXJtaW5hbCIKbXNnc3RyICJuaWUgbW+/bmEgZWR5dG93YeYgJXM6IHBsaWsgamVzdCB0ZXJtaW5hbGVtIgoKIzogc2VkL2V4ZWN1dGUuYzo3NDUKIywgYy1mb3JtYXQKbXNnaWQgImNvdWxkbid0IGVkaXQgJXM6IG5vdCBhIHJlZ3VsYXIgZmlsZSIKbXNnc3RyICJuaWUgbW+/bmEgZWR5dG93YeYgJXM6IHRvIG5pZSBqZXN0IHJlZ3VsYXJueSBwbGlrIgoKIzogc2VkL2V4ZWN1dGUuYzo3NTcKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiB3YXJuaW5nOiBmYWlsZWQgdG8gc2V0IGRlZmF1bHQgZmlsZSBjcmVhdGlvbiBjb250ZXh0IHRvICVzOiAlcyIKbXNnc3RyICIiCgojOiBzZWQvZXhlY3V0ZS5jOjc2NAojLCBjLWZvcm1hdAptc2dpZCAiJXM6IHdhcm5pbmc6IGZhaWxlZCB0byBnZXQgc2VjdXJpdHkgY29udGV4dCBvZiAlczogJXMiCm1zZ3N0ciAiIgoKIzogc2VkL2V4ZWN1dGUuYzo3ODMgc2VkL3V0aWxzLmM6MjI3CiMsIGMtZm9ybWF0Cm1zZ2lkICJjb3VsZG4ndCBvcGVuIHRlbXBvcmFyeSBmaWxlICVzOiAlcyIKbXNnc3RyICJuaWUgbW+/bmEgb3R3b3J6eeYgdHltY3phc293ZWdvIHBsaWt1ICVzOiAlcyIKCiM6IHNlZC9leGVjdXRlLmM6MTMxNyBzZWQvZXhlY3V0ZS5jOjE0OTcKbXNnaWQgImVycm9yIGluIHN1YnByb2Nlc3MiCm1zZ3N0ciAiYrOxZCB3IHBvZHByb2Nlc2llIgoKIzogc2VkL2V4ZWN1dGUuYzoxMzE5Cm1zZ2lkICJvcHRpb24gYGUnIG5vdCBzdXBwb3J0ZWQiCm1zZ3N0ciAib3BjamEgYGUnIG5pZSBqZXN0IHdzcGllcmFuYSIKCiM6IHNlZC9leGVjdXRlLmM6MTQ5OQptc2dpZCAiYGUnIGNvbW1hbmQgbm90IHN1cHBvcnRlZCIKbXNnc3RyICJwb2xlY2VuaWUgYGUnIG5pZSBqZXN0IHdzcGllcmFuZSIKCiM6IHNlZC9leGVjdXRlLmM6MTg0Mwptc2dpZCAibm8gaW5wdXQgZmlsZXMiCm1zZ3N0ciAiYnJhayBwbGlr83cgd2VqtmNpb3d5Y2giCgojOiBzZWQvcmVnZXhwLmM6NDEKbXNnaWQgIm5vIHByZXZpb3VzIHJlZ3VsYXIgZXhwcmVzc2lvbiIKbXNnc3RyICJicmFrIHBvcHJ6ZWRuaWVnbyB3eXJhv2VuaWEgcmVndWxhcm5lZ28iCgojOiBzZWQvcmVnZXhwLmM6NDIKbXNnaWQgImNhbm5vdCBzcGVjaWZ5IG1vZGlmaWVycyBvbiBlbXB0eSByZWdleHAiCm1zZ3N0ciAibmllIG1vv25hIHd5c3pjemVn82xuaeYgbW9keWZpa2F0b3LzdyB3IHB1c3R5bSB3eXJhv2VuaXUgcmVndWxhcm55bSIKCiM6IHNlZC9yZWdleHAuYzoxMzEKIywgYy1mb3JtYXQKbXNnaWQgImludmFsaWQgcmVmZXJlbmNlIFxcJWQgb24gYHMnIGNvbW1hbmQncyBSSFMiCm1zZ3N0ciAibmllcHJhd2lks293ZSBvZHdvs2FuaWUgXFwlZCBwbyBwcmF3ZWogc3Ryb25pZSBwb2xlY2VuaWEgYHMnIgoKIzogc2VkL3NlZC5jOjk3CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJHTlUgc2VkIGhvbWUgcGFnZTogPGh0dHA6Ly93d3cuZ251Lm9yZy9zb2Z0d2FyZS9zZWQvPi5cbiIKIkdlbmVyYWwgaGVscCB1c2luZyBHTlUgc29mdHdhcmU6IDxodHRwOi8vd3d3LmdudS5vcmcvZ2V0aGVscC8+LlxuIgptc2dzdHIgIiIKCiM6IHNlZC9zZWQuYzoxMDQKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIiCiJFLW1haWwgYnVnIHJlcG9ydHMgdG86IDwlcz4uXG4iCiJCZSBzdXJlIHRvIGluY2x1ZGUgdGhlIHdvcmQgYGAlcycnIHNvbWV3aGVyZSBpbiB0aGUgYGBTdWJqZWN0OicnIGZpZWxkLlxuIgptc2dzdHIgIiIKIkV3ZW50dWFsbmUgYrPqZHkgcHJvc2lteSB6Z7Nhc3ph5iBuYSBhZHJlczogJXNcbiIKIlcgdHltIGNlbHUgcHJvc3rqIGRvZGHmIHOzb3dvIGBgJXMnJyBkbyB0ZW1hdHUgbGlzdHUuXG4iCgojOiBzZWQvc2VkLmM6MTE3Cm1zZ2lkICIiCiIgIC1SLCAtLXJlZ2V4cC1wZXJsXG4iCiIgICAgICAgICAgICAgICAgIHVzZSBQZXJsIDUncyByZWd1bGFyIGV4cHJlc3Npb25zIHN5bnRheCBpbiB0aGUgc2NyaXB0LlxuIgptc2dzdHIgIiIKIiAgLVIsIC0tcmVnZXhwLXBlcmxcbiIKIiAgICAgICAgICAgICAgICAgdb95d2EgdyBza3J5cGNpZSB3eXJhv2VuaWEgcmVndWxhcm5lIHpnb2RuZSB6ZSBza7NhZG5psSAiCiJQZXJsIDUuXG4iCgojOiBzZWQvc2VkLmM6MTIyCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJVc2FnZTogJXMgW09QVElPTl0uLi4ge3NjcmlwdC1vbmx5LWlmLW5vLW90aGVyLXNjcmlwdH0gW2lucHV0LWZpbGVdLi4uXG4iCiJcbiIKbXNnc3RyICIiCiJVv3ljaWU6ICVzIFtPUENKRV0ge3NrcnlwdC10eWxrby13dGVkeS1nZHktv2FkZW4taW5ueS1za3J5cHR9IFtwbGlrLSIKIndlarZjaW93eV0uLi5cbiIKIlxuIgoKIzogc2VkL3NlZC5jOjEyNgojLCBjLWZvcm1hdAptc2dpZCAiIgoiICAtbiwgLS1xdWlldCwgLS1zaWxlbnRcbiIKIiAgICAgICAgICAgICAgICAgc3VwcHJlc3MgYXV0b21hdGljIHByaW50aW5nIG9mIHBhdHRlcm4gc3BhY2VcbiIKbXNnc3RyICIiCiIgIC1uLCAtLXF1aWV0LCAtLXNpbGVudFxuIgoiICAgICAgICAgICAgICAgICBwb3dzdHJ6eW11amUgYXV0b21hdHljem5lIGRydWtvd2FuaWUgcHJ6ZXR3YXJ6YW55Y2ggbGluaWkuXG4iCgojOiBzZWQvc2VkLmM6MTI4CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiIgIC1lIHNjcmlwdCwgLS1leHByZXNzaW9uPXNjcmlwdFxuIgoiICAgICAgICAgICAgICAgICBhZGQgdGhlIHNjcmlwdCB0byB0aGUgY29tbWFuZHMgdG8gYmUgZXhlY3V0ZWRcbiIKbXNnc3RyICIiCiIgIC1lIHNrcnlwdCwgLS1leHByZXNzaW9uPXNrcnlwdFxuIgoiICAgICAgICAgICAgICAgICBkb2RhamUgc2tyeXB0IGRvIHBvbGVjZfEsIGt083JlIG1harEgYnnmIHd5a29uYW5lLlxuIgoKIzogc2VkL3NlZC5jOjEzMAojLCBjLWZvcm1hdAptc2dpZCAiIgoiICAtZiBzY3JpcHQtZmlsZSwgLS1maWxlPXNjcmlwdC1maWxlXG4iCiIgICAgICAgICAgICAgICAgIGFkZCB0aGUgY29udGVudHMgb2Ygc2NyaXB0LWZpbGUgdG8gdGhlIGNvbW1hbmRzIHRvIGJlICIKImV4ZWN1dGVkXG4iCm1zZ3N0ciAiIgoiICAtZiBwbGlrLXNrcnlwdG93eSwgLS1maWxlPXBsaWstc2tyeXB0b3d5XG4iCiIgICAgICAgICAgICAgICAgIGRvZGFqZSB6YXdhcnRvtuYgcGxpa3Ugc2tyeXB0b3dlZ28gZG8gcG9sZWNl8SxcbiIKIiAgICAgICAgICAgICAgICAga3TzcmUgbWFqsSBieeYgd3lrb25hbmUuXG4iCgojOiBzZWQvc2VkLmM6MTMzCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiIgIC0tZm9sbG93LXN5bWxpbmtzXG4iCiIgICAgICAgICAgICAgICAgIGZvbGxvdyBzeW1saW5rcyB3aGVuIHByb2Nlc3NpbmcgaW4gcGxhY2VcbiIKbXNnc3RyICIiCiIgIC0tZm9sbG93LXN5bWxpbmtzXG4iCiIgICAgICAgICAgICAgICAgIHBvZLG/YSB6YSBkb3dpsXphbmlhbWkgc3ltYm9saWN6bnltaSxcbiIKIiAgICAgICAgICAgICAgICAgZ2R5IHByemV0d2FyemEgXCJ3IG1pZWpzY3VcIi5cbiIKCiM6IHNlZC9zZWQuYzoxMzYKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiAgLWlbU1VGRklYXSwgLS1pbi1wbGFjZVs9U1VGRklYXVxuIgoiICAgICAgICAgICAgICAgICBlZGl0IGZpbGVzIGluIHBsYWNlIChtYWtlcyBiYWNrdXAgaWYgZXh0ZW5zaW9uIHN1cHBsaWVkKVxuIgptc2dzdHIgIiIKIiAgLWlbcm96c3plcnplbmllXSwgLS1pbi1wbGFjZVs9cm96c3plcnplbmllXVxuIgoiICAgICAgICAgICAgICAgICBlZHl0dWplIHBsaWtpIFwidyBtaWVqc2N1XCIgKHR3b3J6eSBrb3BpZSB6YXBhc293ZVxuIgoiICAgICAgICAgICAgICAgICBqZb9lbGkgem9zdGGzbyBwb2RhbmUgcm96c3plcnplbmllKS5cbiIKCiM6IHNlZC9zZWQuYzoxMzkKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiAgLWIsIC0tYmluYXJ5XG4iCiIgICAgICAgICAgICAgICAgIG9wZW4gZmlsZXMgaW4gYmluYXJ5IG1vZGUgKENSK0xGcyBhcmUgbm90IHByb2Nlc3NlZCAiCiJzcGVjaWFsbHkpXG4iCm1zZ3N0ciAiIgoiICAtYiwgLS1iaW5hcnlcbiIKIiAgICAgICAgICAgICAgICAgb3R3aWVyYSBwbGlraSB3IHRyeWJpZSBiaW5hcm55bSAoQ1IrTEYgbmllIGplc3QgIgoicHJ6ZXR3YXJ6YW5lKS5cbiIKCiM6IHNlZC9zZWQuYzoxNDIKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiAgLWwgTiwgLS1saW5lLWxlbmd0aD1OXG4iCiIgICAgICAgICAgICAgICAgIHNwZWNpZnkgdGhlIGRlc2lyZWQgbGluZS13cmFwIGxlbmd0aCBmb3IgdGhlIGBsJyBjb21tYW5kXG4iCm1zZ3N0ciAiIgoiICAtbCBOLCAtLWxpbmUtbGVuZ3RoPU5cbiIKIiAgICAgICAgICAgICAgICAgdXN0YWxhIHBvv7FkYW6xIGSzdWdvtuYgs2FtYW55Y2ggbGluaWkgZGxhIHBvbGVjZW5pYSBgbCcuXG4iCgojOiBzZWQvc2VkLmM6MTQ0CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiIgIC0tcG9zaXhcbiIKIiAgICAgICAgICAgICAgICAgZGlzYWJsZSBhbGwgR05VIGV4dGVuc2lvbnMuXG4iCm1zZ3N0ciAiIgoiICAgICAgLS1wb3NpeFxuIgoiICAgICAgICAgICAgICAgICB3ebOxY3phIHdzenlzdGtpZSByb3pzemVyemVuaWEgR05VLlxuIgoKIzogc2VkL3NlZC5jOjE0NgojLCBjLWZvcm1hdAptc2dpZCAiIgoiICAtciwgLS1yZWdleHAtZXh0ZW5kZWRcbiIKIiAgICAgICAgICAgICAgICAgdXNlIGV4dGVuZGVkIHJlZ3VsYXIgZXhwcmVzc2lvbnMgaW4gdGhlIHNjcmlwdC5cbiIKbXNnc3RyICIiCiIgIC1yLCAtLXJlZ2V4cC1leHRlbmRlZFxuIgoiICAgICAgICAgICAgICAgICB1v3l3YSB3IHNrcnlwY2llIHJvenN6ZXJ6b255Y2ggd3lyYb9l8SByZWd1bGFybnljaC5cbiIKCiM6IHNlZC9zZWQuYzoxNTEKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiAgLXMsIC0tc2VwYXJhdGVcbiIKIiAgICAgICAgICAgICAgICAgY29uc2lkZXIgZmlsZXMgYXMgc2VwYXJhdGUgcmF0aGVyIHRoYW4gYXMgYSBzaW5nbGUgIgoiY29udGludW91c1xuIgoiICAgICAgICAgICAgICAgICBsb25nIHN0cmVhbS5cbiIKbXNnc3RyICIiCiIgIC1zLCAtLXNlcGFyYXRlXG4iCiIgICAgICAgICAgICAgICAgIHRyYWt0dWplIHBsaWtpIGpha28gb2RkemllbG5lLCBhIG5pZSBqYWtvIHBvamVkeW5jenksXG4iCiIgICAgICAgICAgICAgICAgIGSzdWdpIGkgY2mxZ7N5IHN0cnVtaWXxLlxuIgoKIzogc2VkL3NlZC5jOjE1NAojLCBjLWZvcm1hdAptc2dpZCAiIgoiICAtdSwgLS11bmJ1ZmZlcmVkXG4iCiIgICAgICAgICAgICAgICAgIGxvYWQgbWluaW1hbCBhbW91bnRzIG9mIGRhdGEgZnJvbSB0aGUgaW5wdXQgZmlsZXMgYW5kICIKImZsdXNoXG4iCiIgICAgICAgICAgICAgICAgIHRoZSBvdXRwdXQgYnVmZmVycyBtb3JlIG9mdGVuXG4iCm1zZ3N0ciAiIgoiICAtdSwgLS11bmJ1ZmZlcmVkXG4iCiIgICAgICAgICAgICAgICAgILNhZHVqZSBtaW5pbWFsbrEgaWxvtuYgZGFueWNoIHogcGxpa/N3IHdlarZjaW93eWNoXG4iCiIgICAgICAgICAgICAgICAgIGkgY3rqtmNpZWogb2N6eXN6Y3phIGJ1Zm9yIHd5arZjaW93eS5cbiIKCiM6IHNlZC9zZWQuYzoxNTcKIywgYy1mb3JtYXQKbXNnaWQgIiAgICAgIC0taGVscCAgICAgZGlzcGxheSB0aGlzIGhlbHAgYW5kIGV4aXRcbiIKbXNnc3RyICIgICAgICAtLWhlbHAgICAgIHd5tndpZXRsYSB06iBvdG8gcG9tb2MgaSBrb/FjenkgcHJhY+ouXG4iCgojOiBzZWQvc2VkLmM6MTU4CiMsIGMtZm9ybWF0Cm1zZ2lkICIgICAgICAtLXZlcnNpb24gIG91dHB1dCB2ZXJzaW9uIGluZm9ybWF0aW9uIGFuZCBleGl0XG4iCm1zZ3N0ciAiICAgICAgLS12ZXJzaW9uICB3ebZ3aWV0bGEgbnVtZXIgd2Vyc2ppIGkga2/xY3p5IHByYWPqLlxuIgoKIzogc2VkL3NlZC5jOjE1OQojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJJZiBubyAtZSwgLS1leHByZXNzaW9uLCAtZiwgb3IgLS1maWxlIG9wdGlvbiBpcyBnaXZlbiwgdGhlbiB0aGUgZmlyc3RcbiIKIm5vbi1vcHRpb24gYXJndW1lbnQgaXMgdGFrZW4gYXMgdGhlIHNlZCBzY3JpcHQgdG8gaW50ZXJwcmV0LiAgQWxsXG4iCiJyZW1haW5pbmcgYXJndW1lbnRzIGFyZSBuYW1lcyBvZiBpbnB1dCBmaWxlczsgaWYgbm8gaW5wdXQgZmlsZXMgYXJlXG4iCiJzcGVjaWZpZWQsIHRoZW4gdGhlIHN0YW5kYXJkIGlucHV0IGlzIHJlYWQuXG4iCiJcbiIKbXNnc3RyICIiCiJcbiIKIkplv2VsaSBuaWUgem9zdGFusSBwb2RhbmUgb3BjamUgLWUsIC0tZXhwcmVzc2lvbiwgLWYsIGx1YiAtLWZpbGUsXG4iCiJ0byB3dGVkeSBwaWVyd3N6eSBhcmd1bWVudCwga3TzcnkgbmllIGplc3Qgb3BjarEgbGluaWkgcG9sZWNl8SBzZWQsXG4iCiJ6b3N0YW5pZSB3emnqdHkgamFrbyBza3J5cHQgc2VkIGRvIHByemV0d29yemVuaWEuIFdzenlzdGtpZSBwb3pvc3Rhs2VcbiIKImFyZ3VtZW50eSBzsSBuYXp3YW1pIHBsaWvzdyB3ZWq2Y2lvd3ljaDsgamW/ZWxpIG5pZSB6b3N0YW6xIHBvZGFuZVxuIgoiv2FkbmUgcGxpa2kgd2VqtmNpb3dlLCB0byB3dGVkeSBvZGN6eXRhbmUgem9zdGFuaWUgc3RhbmRhcmRvd2Ugd2VqtmNpZS5cbiIKIlxuIgoKIzogc2VkL3NlZC5jOjMxNQojLCBjLWZvcm1hdAptc2dpZCAic3VwZXItc2VkIHZlcnNpb24gJXNcbiIKbXNnc3RyICJzdXBlci1zZWQgd2Vyc2phICVzXG4iCgojOiBzZWQvc2VkLmM6MzE2CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJiYXNlZCBvbiBHTlUgc2VkIHZlcnNpb24gJXNcbiIKIlxuIgptc2dzdHIgIiIKIm5hIHBvZHN0YXdpZSB3ZXJzamkgR05VIHNlZCAlc1xuIgoiXG4iCgojOiBzZWQvc2VkLmM6MzE4CiMsIGMtZm9ybWF0Cm1zZ2lkICJHTlUgc2VkIHZlcnNpb24gJXNcbiIKbXNnc3RyICJHTlUgc2VkIHdlcnNqYSAlc1xuIgoKIzogc2VkL3NlZC5jOjMyMAojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiIKIkNvcHlyaWdodCAoQykgJWQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuXG4iCiJUaGlzIGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgc291cmNlIGZvciBjb3B5aW5nIGNvbmRpdGlvbnMuICBUaGVyZSBpcyBOT1xuIgoid2FycmFudHk7IG5vdCBldmVuIGZvciBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UsXG4iCiJ0byB0aGUgZXh0ZW50IHBlcm1pdHRlZCBieSBsYXcuXG4iCm1zZ3N0ciAiIgoiJXNcbiIKIk5pbmllanN6eSBwcm9ncmFtIGplc3Qgd29sbnltIG9wcm9ncmFtb3dhbmllbTsgd2FydW5raSBrb3Bpb3dhbmlhIHOxICIKIm9waXNhbmVcbiIKIncgvHLzZLNhY2guIEF1dG9yenkgbmllIGRharEgr0FETllDSCBnd2FyYW5jamksIHcgdHltIHLzd25pZb8gZ3dhcmFuY2ppXG4iCiJQUlpZREFUTk+mQ0kgRE8gU1BSWkVEQa9ZIExVQiBETyBLT05LUkVUTllDSCBDRUzTVy5cbiIKCiM6IHNlZC91dGlscy5jOjkzIHNlZC91dGlscy5jOjQzOAojLCBjLWZvcm1hdAptc2dpZCAiY2Fubm90IHJlbW92ZSAlczogJXMiCm1zZ3N0ciAibmllIG1vv25hIHVzdW6x5iAlczogJXMiCgojOiBzZWQvdXRpbHMuYzoxNjMKIywgYy1mb3JtYXQKbXNnaWQgImNvdWxkbid0IG9wZW4gZmlsZSAlczogJXMiCm1zZ3N0ciAibmllIG1vv25hIG90d29yennmIHBsaWt1ICVzOiAlcyIKCiM6IHNlZC91dGlscy5jOjE4NgojLCBjLWZvcm1hdAptc2dpZCAiY291bGRuJ3QgYXR0YWNoIHRvICVzOiAlcyIKbXNnc3RyICJuaWUgbW+/bmEgZG+zsWN6eeYgZG8gJXM6ICVzIgoKIzogc2VkL3V0aWxzLmM6MjQ1CiMsIGMtZm9ybWF0Cm1zZ2lkICJjb3VsZG4ndCB3cml0ZSAlZCBpdGVtIHRvICVzOiAlcyIKbXNnaWRfcGx1cmFsICJjb3VsZG4ndCB3cml0ZSAlZCBpdGVtcyB0byAlczogJXMiCm1zZ3N0clswXSAibmllIG1vv25hIHphcGlzYeYgJWQgZWxlbWVudHUgZG8gJXM6ICVzIgptc2dzdHJbMV0gIm5pZSBtb79uYSB6YXBpc2HmICVkIGVsZW1lbnTzdyBkbyAlczogJXMiCm1zZ3N0clsyXSAibmllIG1vv25hIHphcGlzYeYgJWQgZWxlbWVudPN3IGRvICVzOiAlcyIKCiM6IHNlZC91dGlscy5jOjI2MCBzZWQvdXRpbHMuYzoyNzYKIywgYy1mb3JtYXQKbXNnaWQgInJlYWQgZXJyb3Igb24gJXM6ICVzIgptc2dzdHIgImKzsWQgb2Rjenl0dSB3ICVzOiAlcyIKCiM6IHNlZC91dGlscy5jOjM3OAojLCBjLWZvcm1hdAptc2dpZCAiY291bGRuJ3QgZm9sbG93IHN5bWxpbmsgJXM6ICVzIgptc2dzdHIgIm5pZSBtb79uYSBwb2Sxv3nmIHphIGRvd2mxemFuaWVtICVzOiAlcyIKCiM6IHNlZC91dGlscy5jOjQxMgojLCBjLWZvcm1hdAptc2dpZCAiY2Fubm90IHN0YXQgJXM6ICVzIgptc2dzdHIgIm5pZSBtb79uYSB1enlza2HmIGluZm9ybWFjamkgbyAlczogJXMiCgojOiBzZWQvdXRpbHMuYzo0NDMKIywgYy1mb3JtYXQKbXNnaWQgImNhbm5vdCByZW5hbWUgJXM6ICVzIgptc2dzdHIgIm5pZSBtb79uYSB6bWllbmnmIG5hend5ICVzOiAlcyIKCiM6IGxpYi9yZWdjb21wLmM6MTM0Cm1zZ2lkICJTdWNjZXNzIgptc2dzdHIgIlN1a2NlcyIKCiM6IGxpYi9yZWdjb21wLmM6MTM3Cm1zZ2lkICJObyBtYXRjaCIKbXNnc3RyICJCcmFrIGRvcGFzb3dhbmlhIgoKIzogbGliL3JlZ2NvbXAuYzoxNDAKbXNnaWQgIkludmFsaWQgcmVndWxhciBleHByZXNzaW9uIgptc2dzdHIgIk5pZXByYXdpZLNvd2Ugd3lyYb9lbmllIHJlZ3VsYXJuZSIKCiM6IGxpYi9yZWdjb21wLmM6MTQzCm1zZ2lkICJJbnZhbGlkIGNvbGxhdGlvbiBjaGFyYWN0ZXIiCm1zZ3N0ciAiTmllcHJhd2lks293eSB6bmFrIHBvcvN3bmFuaWEiCgojOiBsaWIvcmVnY29tcC5jOjE0Ngptc2dpZCAiSW52YWxpZCBjaGFyYWN0ZXIgY2xhc3MgbmFtZSIKbXNnc3RyICJOaWVwcmF3aWSzb3dhIG5hendhIGtsYXN5IHpuYWt1IgoKIzogbGliL3JlZ2NvbXAuYzoxNDkKbXNnaWQgIlRyYWlsaW5nIGJhY2tzbGFzaCIKbXNnc3RyICJLb/Fjb3d5IHpuYWsgYmFja3NsYXNoIgoKIzogbGliL3JlZ2NvbXAuYzoxNTIKbXNnaWQgIkludmFsaWQgYmFjayByZWZlcmVuY2UiCm1zZ3N0ciAiTmllcHJhd2lks293ZSBvZHdvs2FuaWUgd3N0ZWN6bmUiCgojOiBsaWIvcmVnY29tcC5jOjE1NQptc2dpZCAiVW5tYXRjaGVkIFsgb3IgW14iCm1zZ3N0ciAiTmllZG9wYXNvd2FueSB6bmFrIFsgbHViIFteIgoKIzogbGliL3JlZ2NvbXAuYzoxNTgKbXNnaWQgIlVubWF0Y2hlZCAoIG9yIFxcKCIKbXNnc3RyICJOaWVkb3Bhc293YW55IHpuYWsgKCBsdWIgXFwoIgoKIzogbGliL3JlZ2NvbXAuYzoxNjEKbXNnaWQgIlVubWF0Y2hlZCBcXHsiCm1zZ3N0ciAiTmllZG9wYXNvd2FueSB6bmFrIFxceyIKCiM6IGxpYi9yZWdjb21wLmM6MTY0Cm1zZ2lkICJJbnZhbGlkIGNvbnRlbnQgb2YgXFx7XFx9Igptc2dzdHIgIk5pZXByYXdpZLNvd2EgemF3YXJ0b7bmIFxce1xcfSIKCiM6IGxpYi9yZWdjb21wLmM6MTY3Cm1zZ2lkICJJbnZhbGlkIHJhbmdlIGVuZCIKbXNnc3RyICJOaWVwcmF3aWSzb3d5IGtvbmllYyB6YWtyZXN1IgoKIzogbGliL3JlZ2NvbXAuYzoxNzAKbXNnaWQgIk1lbW9yeSBleGhhdXN0ZWQiCm1zZ3N0ciAiUGFtaermIHd5Y3plcnBhbmEiCgojOiBsaWIvcmVnY29tcC5jOjE3Mwptc2dpZCAiSW52YWxpZCBwcmVjZWRpbmcgcmVndWxhciBleHByZXNzaW9uIgptc2dzdHIgIk5pZXByYXdpZLNvd2UgcG9wcnplZHpharFjZSB3eXJhv2VuaWUgcmVndWxhcm5lIgoKIzogbGliL3JlZ2NvbXAuYzoxNzYKbXNnaWQgIlByZW1hdHVyZSBlbmQgb2YgcmVndWxhciBleHByZXNzaW9uIgptc2dzdHIgIlByemVkd2N6ZXNueSBrb25pZWMgd3lyYb9lbmlhIHJlZ3VsYXJuZWdvIgoKIzogbGliL3JlZ2NvbXAuYzoxNzkKbXNnaWQgIlJlZ3VsYXIgZXhwcmVzc2lvbiB0b28gYmlnIgptc2dzdHIgIld5cmG/ZW5pZSByZWd1bGFybmUgamVzdCB6Ynl0IGR1v2UiCgojOiBsaWIvcmVnY29tcC5jOjE4Mgptc2dpZCAiVW5tYXRjaGVkICkgb3IgXFwpIgptc2dzdHIgIk5pZWRvcGFzb3dhbnkgem5hayApIGx1YiBcXCkiCgojOiBsaWIvcmVnY29tcC5jOjcwMwptc2dpZCAiTm8gcHJldmlvdXMgcmVndWxhciBleHByZXNzaW9uIgptc2dzdHIgIkJyYWsgcG9wcnplZG5pZWdvIHd5cmG/ZW5pYSByZWd1bGFybmVnbyIK