IyBHYWxpY2lhbiB0cmFuc2xhdGlvbiBvZiBHTlUgc2VkCiMgQ29weXJpZ2h0IChDKSAxOTk5LCAyMDAyIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgojIFRoaXMgZmlsZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgc2FtZSBsaWNlbnNlIGFzIHRoZSBzZWQgcGFja2FnZS4KIyBKYWNvYm8gVGFycu1vIEJhcnJlaXJvIDxqdGFycmlvQHRyYXNuby5uZXQ+LCAxOTk5LCAyMDAyLgojIEZyYW5jaXNjbyBKYXZpZXIgVHNhbyBTYW507W4gPHRzYW9AZW5lbHBhcmFpc28ub3JnPiwgMjAwOC4KIwptc2dpZCAiIgptc2dzdHIgIiIKIlByb2plY3QtSWQtVmVyc2lvbjogc2VkIDQuMi4wXG4iCiJSZXBvcnQtTXNnaWQtQnVncy1UbzogYnVnLWdudS11dGlsc0BnbnUub3JnXG4iCiJQT1QtQ3JlYXRpb24tRGF0ZTogMjAwOS0wNi0yNyAxNTowOCswMjAwXG4iCiJQTy1SZXZpc2lvbi1EYXRlOiAyMDA4LTA5LTE4IDA4OjM1KzAyMDBcbiIKIkxhc3QtVHJhbnNsYXRvcjogRnJhbmNpc2NvIEphdmllciBUc2FvIFNhbnTtbiA8dHNhb0BlbmVscGFyYWlzby5vcmc+XG4iCiJMYW5ndWFnZS1UZWFtOiBHYWxpY2lhbiA8cHJveGVjdG9AdHJhc25vLm5ldD5cbiIKIk1JTUUtVmVyc2lvbjogMS4wXG4iCiJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4NTktMVxuIgoiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgoiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9biE9MTtcbiIKCiM6IHNlZC9jb21waWxlLmM6MTYxCm1zZ2lkICJtdWx0aXBsZSBgISdzIgptc2dzdHIgIm36bHRpcGxlcyBgISdzIgoKIzogc2VkL2NvbXBpbGUuYzoxNjIKbXNnaWQgInVuZXhwZWN0ZWQgYCwnIgptc2dzdHIgImAsJyBpbmVzcGVyYWRhIgoKIzogc2VkL2NvbXBpbGUuYzoxNjMKbXNnaWQgImludmFsaWQgdXNhZ2Ugb2YgK04gb3Igfk4gYXMgZmlyc3QgYWRkcmVzcyIKbXNnc3RyICJub24gc2UgcG9kZSB1c2FyICtOIG91IH5OIGNvbW8gcHJpbWVpcmEgZGlyZWNjafNuIgoKIzogc2VkL2NvbXBpbGUuYzoxNjQKbXNnaWQgInVubWF0Y2hlZCBgeyciCm1zZ3N0ciAiYHsnIHNlbiBwYXJlbGxhIgoKIzogc2VkL2NvbXBpbGUuYzoxNjUKbXNnaWQgInVuZXhwZWN0ZWQgYH0nIgptc2dzdHIgImB9JyBpbmVzcGVyYWRvIgoKIzogc2VkL2NvbXBpbGUuYzoxNjYKbXNnaWQgImV4dHJhIGNoYXJhY3RlcnMgYWZ0ZXIgY29tbWFuZCIKbXNnc3RyICJjYXJhY3RlcmVzIGV4dHJhIGRlc3BvaXMgZGEgaW5zdHJ1Y2Np824iCgojOiBzZWQvY29tcGlsZS5jOjE2Nwptc2dpZCAiZXhwZWN0ZWQgXFwgYWZ0ZXIgYGEnLCBgYycgb3IgYGknIgptc2dzdHIgImVzcGVy4WJhc2UgXFwgZGVzcG9pcyBkZSBgYScsIGBjJyBvdSBgaSciCgojOiBzZWQvY29tcGlsZS5jOjE2OAptc2dpZCAiYH0nIGRvZXNuJ3Qgd2FudCBhbnkgYWRkcmVzc2VzIgptc2dzdHIgImB9JyBub24gYWNlcHRhIHVuIGVuZGVyZXpvIgoKIzogc2VkL2NvbXBpbGUuYzoxNjkKbXNnaWQgIjogZG9lc24ndCB3YW50IGFueSBhZGRyZXNzZXMiCm1zZ3N0ciAiOiBub24gYWNlcHRhIHVuIGVuZGVyZXpvIgoKIzogc2VkL2NvbXBpbGUuYzoxNzAKbXNnaWQgImNvbW1lbnRzIGRvbid0IGFjY2VwdCBhbnkgYWRkcmVzc2VzIgptc2dzdHIgIm9zIGNvbWVudGFyaW9zIG5vbiBhY2VwdGFuIGVuZGVyZXpvcyIKCiM6IHNlZC9jb21waWxlLmM6MTcxCm1zZ2lkICJtaXNzaW5nIGNvbW1hbmQiCm1zZ3N0ciAiZmFsdGEgdW5oYSBpbnN0cnVjY2nzbiIKCiM6IHNlZC9jb21waWxlLmM6MTcyCm1zZ2lkICJjb21tYW5kIG9ubHkgdXNlcyBvbmUgYWRkcmVzcyIKbXNnc3RyICJhIGluc3RydWNjafNuIHPzIHVzYSB1biBlbmRlcmV6byIKCiM6IHNlZC9jb21waWxlLmM6MTczCm1zZ2lkICJ1bnRlcm1pbmF0ZWQgYWRkcmVzcyByZWdleCIKbXNnc3RyICJleHByZXNp824gcmVndWxhciBkZSBlbmRlcmV6byBub24gcmVtYXRhZGEiCgojOiBzZWQvY29tcGlsZS5jOjE3NAptc2dpZCAidW50ZXJtaW5hdGVkIGBzJyBjb21tYW5kIgptc2dzdHIgImluc3RydWNjafNuIGBzJyBub24gcmVtYXRhZGEiCgojOiBzZWQvY29tcGlsZS5jOjE3NQptc2dpZCAidW50ZXJtaW5hdGVkIGB5JyBjb21tYW5kIgptc2dzdHIgImluc3RydWNjafNuIGB5JyBub24gcmVtYXRhZGEiCgojOiBzZWQvY29tcGlsZS5jOjE3Ngptc2dpZCAidW5rbm93biBvcHRpb24gdG8gYHMnIgptc2dzdHIgIm9wY2nzbiBkZSBgcycgZGVzY2/xZWNpZGEiCgojOiBzZWQvY29tcGlsZS5jOjE3Nwptc2dpZCAibXVsdGlwbGUgYHAnIG9wdGlvbnMgdG8gYHMnIGNvbW1hbmQiCm1zZ3N0ciAibfpsdGlwbGVzIG9wY2nzbnMgYHAnIHBhcmEgYSBpbnN0cnVjY2nzbiBgcyciCgojOiBzZWQvY29tcGlsZS5jOjE3OAptc2dpZCAibXVsdGlwbGUgYGcnIG9wdGlvbnMgdG8gYHMnIGNvbW1hbmQiCm1zZ3N0ciAibfpsdGlwbGVzIG9wY2nzbnMgYGcnIHBhcmEgYSBpbnN0cnVjY2nzbiBgcyciCgojOiBzZWQvY29tcGlsZS5jOjE3OQptc2dpZCAibXVsdGlwbGUgbnVtYmVyIG9wdGlvbnMgdG8gYHMnIGNvbW1hbmQiCm1zZ3N0ciAibfpsdGlwbGVzIG9wY2nzbnMgbnVt6XJpY2FzIHBhcmEgYSBpbnN0cnVjY2nzbiBgcyciCgojOiBzZWQvY29tcGlsZS5jOjE4MAptc2dpZCAibnVtYmVyIG9wdGlvbiB0byBgcycgY29tbWFuZCBtYXkgbm90IGJlIHplcm8iCm1zZ3N0ciAidW5oYSBvcGNp824gbnVt6XJpY2EgcGFyYSBhIGluc3RydWNjafNuIGBzJyBub24gcG9kZSBzZXIgY2VybyIKCiM6IHNlZC9jb21waWxlLmM6MTgxCm1zZ2lkICJzdHJpbmdzIGZvciBgeScgY29tbWFuZCBhcmUgZGlmZmVyZW50IGxlbmd0aHMiCm1zZ3N0ciAiYXMgY2FkZWFzIHBhcmEgYSBpbnN0cnVjY2nzbiBgeScgdGXxZW4gbG9ueGl0dWRlcyBkaWZlcmVudGVzIgoKIzogc2VkL2NvbXBpbGUuYzoxODIKbXNnaWQgImRlbGltaXRlciBjaGFyYWN0ZXIgaXMgbm90IGEgc2luZ2xlLWJ5dGUgY2hhcmFjdGVyIgptc2dzdHIgIm8gY2Fy4WN0ZXIgZGVsaW1pdGFkb3Igbm9uIOkgdW4gY2Fy4WN0ZXIgZGUgYnl0ZSBzaW1wbGUiCgojOiBzZWQvY29tcGlsZS5jOjE4Mwptc2dpZCAiZXhwZWN0ZWQgbmV3ZXIgdmVyc2lvbiBvZiBzZWQiCm1zZ3N0ciAic2UgZXNwZXJhYmEgdW5oYSB2ZXJzafNuIGRlIHNlZCBt4WlzIG5vdmEiCgojOiBzZWQvY29tcGlsZS5jOjE4NAptc2dpZCAiaW52YWxpZCB1c2FnZSBvZiBsaW5lIGFkZHJlc3MgMCIKbXNnc3RyICJ1c28gbm9uIHbhbGlkbyBkYSBkaXJlY2Np824gZGUgbGnxYSAwIgoKIzogc2VkL2NvbXBpbGUuYzoxODUKIywgYy1mb3JtYXQKbXNnaWQgInVua25vd24gY29tbWFuZDogYCVjJyIKbXNnc3RyICJpbnN0cnVjY2nzbiBkZXNjb/FlY2lkYTpgJWMnIgoKIzogc2VkL2NvbXBpbGUuYzoyMDgKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBmaWxlICVzIGxpbmUgJWx1OiAlc1xuIgptc2dzdHIgIiVzOiBmaWNoZWlybyAlcyBsafFhICVsdTogJXNcbiIKCiM6IHNlZC9jb21waWxlLmM6MjExCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogLWUgZXhwcmVzc2lvbiAjJWx1LCBjaGFyICVsdTogJXNcbiIKbXNnc3RyICIlczogLWUgZXhwcmVzafNuICMlbHUsIGNhcuFjdGVyICVsdTogJXNcbiIKCiM6IHNlZC9jb21waWxlLmM6MTY2NQojLCBjLWZvcm1hdAptc2dpZCAiY2FuJ3QgZmluZCBsYWJlbCBmb3IganVtcCB0byBgJXMnIgptc2dzdHIgIm5vbiBzZSBwdWlkbyBhdG9wYS1sYSBldGlxdWV0YSBwYXJhIHNhbHRhciBhIGAlcyciCgojOiBzZWQvZXhlY3V0ZS5jOjcwOQojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGNhbid0IHJlYWQgJXM6ICVzXG4iCm1zZ3N0ciAiJXM6IG5vbiBzZSBwdWlkbyBsZXIgJXM6ICVzXG4iCgojOiBzZWQvZXhlY3V0ZS5jOjc0MAojLCBjLWZvcm1hdAptc2dpZCAiY291bGRuJ3QgZWRpdCAlczogaXMgYSB0ZXJtaW5hbCIKbXNnc3RyICJub24gc2UgcHVpZG8gZWRpdGFyICVzOiDpIHVuaGEgdGVybWluYWwiCgojOiBzZWQvZXhlY3V0ZS5jOjc0NQojLCBjLWZvcm1hdAptc2dpZCAiY291bGRuJ3QgZWRpdCAlczogbm90IGEgcmVndWxhciBmaWxlIgptc2dzdHIgIm5vbiBzZSBwdWlkbyBlZGl0YXIgJXM6IG5vbiDpIHVuIGZpY2hlaXJvIHJlZ3VsYXIiCgojOiBzZWQvZXhlY3V0ZS5jOjc1NwojLCBjLWZvcm1hdAptc2dpZCAiJXM6IHdhcm5pbmc6IGZhaWxlZCB0byBzZXQgZGVmYXVsdCBmaWxlIGNyZWF0aW9uIGNvbnRleHQgdG8gJXM6ICVzIgptc2dzdHIgIiIKCiM6IHNlZC9leGVjdXRlLmM6NzY0CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogd2FybmluZzogZmFpbGVkIHRvIGdldCBzZWN1cml0eSBjb250ZXh0IG9mICVzOiAlcyIKbXNnc3RyICIiCgojOiBzZWQvZXhlY3V0ZS5jOjc4MyBzZWQvdXRpbHMuYzoyMjcKIywgYy1mb3JtYXQKbXNnaWQgImNvdWxkbid0IG9wZW4gdGVtcG9yYXJ5IGZpbGUgJXM6ICVzIgptc2dzdHIgIm5vbiBzZSBwdWlkbyBhYnJpLWxvIGZpY2hlaXJvIHRlbXBvcmFsICVzOiAlcyIKCiM6IHNlZC9leGVjdXRlLmM6MTMxNyBzZWQvZXhlY3V0ZS5jOjE0OTcKbXNnaWQgImVycm9yIGluIHN1YnByb2Nlc3MiCm1zZ3N0ciAiZXJybyBubyBzdWJwcm9jZXNvIgoKIzogc2VkL2V4ZWN1dGUuYzoxMzE5Cm1zZ2lkICJvcHRpb24gYGUnIG5vdCBzdXBwb3J0ZWQiCm1zZ3N0ciAiYSBvcGNp824gYGUnIG5vbiBlc3ThIHNvcG9ydGFkYSIKCiM6IHNlZC9leGVjdXRlLmM6MTQ5OQptc2dpZCAiYGUnIGNvbW1hbmQgbm90IHN1cHBvcnRlZCIKbXNnc3RyICJvIGNvbWFuZG8gYGUnIG5vbiBlc3ThIHNvcG9ydGFkbyIKCiM6IHNlZC9leGVjdXRlLmM6MTg0Mwptc2dpZCAibm8gaW5wdXQgZmlsZXMiCm1zZ3N0ciAibm9uIGhhaSBmaWNoZWlyb3MgZGUgZW50cmFkYSIKCiM6IHNlZC9yZWdleHAuYzo0MQptc2dpZCAibm8gcHJldmlvdXMgcmVndWxhciBleHByZXNzaW9uIgptc2dzdHIgIm5vbiBoYWkgdW5oYSBleHByZXNp824gcmVndWxhciBhbnRlcmlvciIKCiM6IHNlZC9yZWdleHAuYzo0Mgptc2dpZCAiY2Fubm90IHNwZWNpZnkgbW9kaWZpZXJzIG9uIGVtcHR5IHJlZ2V4cCIKbXNnc3RyICJub24gc2UgcG9kZW4gZXNwZWNpZmljYXIgbW9kaWZpY2Fkb3JlcyBudW5oYSBleHByZXNp824gcmVndWxhciBiYWxlaXJhIgoKIzogc2VkL3JlZ2V4cC5jOjEzMQojLCBjLWZvcm1hdAptc2dpZCAiaW52YWxpZCByZWZlcmVuY2UgXFwlZCBvbiBgcycgY29tbWFuZCdzIFJIUyIKbXNnc3RyICJyZWZlcmVuY2lhIFxcJWQgbm9uIHbhbGlkYSBubyBsYWRvIGRlcmVpdG8gZG8gY29tYW5kbyBgcyciCgojOiBzZWQvc2VkLmM6OTcKIywgYy1mb3JtYXQKbXNnaWQgIiIKIkdOVSBzZWQgaG9tZSBwYWdlOiA8aHR0cDovL3d3dy5nbnUub3JnL3NvZnR3YXJlL3NlZC8+LlxuIgoiR2VuZXJhbCBoZWxwIHVzaW5nIEdOVSBzb2Z0d2FyZTogPGh0dHA6Ly93d3cuZ251Lm9yZy9nZXRoZWxwLz4uXG4iCm1zZ3N0ciAiIgoKIzogc2VkL3NlZC5jOjEwNAojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiIKIkUtbWFpbCBidWcgcmVwb3J0cyB0bzogPCVzPi5cbiIKIkJlIHN1cmUgdG8gaW5jbHVkZSB0aGUgd29yZCBgYCVzJycgc29tZXdoZXJlIGluIHRoZSBgYFN1YmplY3Q6JycgZmllbGQuXG4iCm1zZ3N0ciAiIgoiSW5mb3JtZSBkb3MgZXJyb3Mgbm8gcHJvZ3JhbWEgYTogJXMgLlxuIgoiSW5mb3JtZSBkb3MgZXJyb3MgbmEgdHJhZHVjY2nzbiBhIHRzYW9AZW5lbHBhcmFpc28ub3JnIC5cbiIKIkFzZWf6cmVzZSBkZSBpbmNsde0tbGEgcGFsYWJyYSBgYCVzJycgbmFsZ3VuaGEgcGFydGUgZG8gY2FtcG8gYGBTdWJqZWN0OicnLlxuIgoKIzogc2VkL3NlZC5jOjExNwptc2dpZCAiIgoiICAtUiwgLS1yZWdleHAtcGVybFxuIgoiICAgICAgICAgICAgICAgICB1c2UgUGVybCA1J3MgcmVndWxhciBleHByZXNzaW9ucyBzeW50YXggaW4gdGhlIHNjcmlwdC5cbiIKbXNnc3RyICIiCiIgIC1SLCAtLXJlZ2V4cC1wZXJsXG4iCiIgICAgICAgICAgICAgICAgIHVzYS1sYSBzaW50YXhlIGRlIGV4cHJlc2nzbnMgcmVndWxhcmVzIGRlIFBlcmwgNSBubyAiCiJzY3JpcHQuXG4iCgojOiBzZWQvc2VkLmM6MTIyCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJVc2FnZTogJXMgW09QVElPTl0uLi4ge3NjcmlwdC1vbmx5LWlmLW5vLW90aGVyLXNjcmlwdH0gW2lucHV0LWZpbGVdLi4uXG4iCiJcbiIKbXNnc3RyICIiCiJVc286ICVzIFtPUENJ005dLi4uIHtzY3JpcHQtc/Mtc2VuLW91dHJvLXNjcmlwdH0gW2ZpY2hlaXJvLWRlLWVudHJhZGFdLi4uXG4iCgojOiBzZWQvc2VkLmM6MTI2CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiIgIC1uLCAtLXF1aWV0LCAtLXNpbGVudFxuIgoiICAgICAgICAgICAgICAgICBzdXBwcmVzcyBhdXRvbWF0aWMgcHJpbnRpbmcgb2YgcGF0dGVybiBzcGFjZVxuIgptc2dzdHIgIiIKIiAgLW4sIC0tcXVpZXQsIC0tc2lsZW50XG4iCiIgICAgICAgICAgICAgICAgICAgICAgc3VwcmltZSBhIHZpc3VhbGl6YWNp824gYXV0b23hdGljYSBkbyBlc3BhY2lvIGRlICIKInBhdHLzbnNcbiIKCiM6IHNlZC9zZWQuYzoxMjgKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiAgLWUgc2NyaXB0LCAtLWV4cHJlc3Npb249c2NyaXB0XG4iCiIgICAgICAgICAgICAgICAgIGFkZCB0aGUgc2NyaXB0IHRvIHRoZSBjb21tYW5kcyB0byBiZSBleGVjdXRlZFxuIgptc2dzdHIgIiIKIi1lIHNjcmlwdCwgLS1leHByZXNzaW9uPXNjcmlwdFxuIgoiICAgICAgICAgICAgICAgZW5nYWRlIHNjcmlwdCDhcyBpbnN0cnVjY2nzbnMgcXVlIHNlcuFuIGV4ZWN1dGFkYXNcbiIKCiM6IHNlZC9zZWQuYzoxMzAKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiAgLWYgc2NyaXB0LWZpbGUsIC0tZmlsZT1zY3JpcHQtZmlsZVxuIgoiICAgICAgICAgICAgICAgICBhZGQgdGhlIGNvbnRlbnRzIG9mIHNjcmlwdC1maWxlIHRvIHRoZSBjb21tYW5kcyB0byBiZSAiCiJleGVjdXRlZFxuIgptc2dzdHIgIiIKIiAgLWYgZmljaGVpcm8tZGUtc2NyaXB0LCAtLWZpbGU9ZmljaGVpcm8tZGUtc2NyaXB0XG4iCiIgICAgICAgICAgICAgICAgIGVuZ2FkZSBvIGNvbnRpZG8gZG8gZmljaGVpcm8gZG8gc2NyaXB0IOFzIGluc3RydWNjafNucyBxdWUgIgoic2Vy4W4gZXhlY3V0YWRhc1xuIgoKIzogc2VkL3NlZC5jOjEzMwojLCBjLWZvcm1hdAptc2dpZCAiIgoiICAtLWZvbGxvdy1zeW1saW5rc1xuIgoiICAgICAgICAgICAgICAgICBmb2xsb3cgc3ltbGlua3Mgd2hlbiBwcm9jZXNzaW5nIGluIHBsYWNlXG4iCm1zZ3N0ciAiIgoiICAtLWZvbGxvdy1zeW1saW5rc1xuIgoiICAgICAgICAgICAgICAgICBzZWd1ZSBsaWdhevNucyBzaW1i82xpY2FzIGNhbmRvIHNlIHByb2Nlc2FuIG5vIHNldSBzaXRpb1xuIgoKIzogc2VkL3NlZC5jOjEzNgojLCBjLWZvcm1hdAptc2dpZCAiIgoiICAtaVtTVUZGSVhdLCAtLWluLXBsYWNlWz1TVUZGSVhdXG4iCiIgICAgICAgICAgICAgICAgIGVkaXQgZmlsZXMgaW4gcGxhY2UgKG1ha2VzIGJhY2t1cCBpZiBleHRlbnNpb24gc3VwcGxpZWQpXG4iCm1zZ3N0ciAiIgoiICAtaVtTVUZJWE9dLCAtLWluLXBsYWNlWz1TVUZJWE9dXG4iCiIgICAgICAgICAgICAgICAgIGVkaXRhIGZpY2hlaXJvcyBubyBzZXUgc2l0aW8gKGZhY2VuZG8gY29waWEgZGUgc2VndXJpZGFkZSAiCiJzZSBzZSBpbmRpY2EgdW4gc3VmaXhvKVxuIgoKIzogc2VkL3NlZC5jOjEzOQojLCBjLWZvcm1hdAptc2dpZCAiIgoiICAtYiwgLS1iaW5hcnlcbiIKIiAgICAgICAgICAgICAgICAgb3BlbiBmaWxlcyBpbiBiaW5hcnkgbW9kZSAoQ1IrTEZzIGFyZSBub3QgcHJvY2Vzc2VkICIKInNwZWNpYWxseSlcbiIKbXNnc3RyICIiCiIgIC1iLCAtLWJpbmFyeVxuIgoiICAgICAgICAgICAgICAgICBmaWNoZWlyb3MgYWJlcnRvcyBlbiBtb2RvIGJpbmFyaW8gKG5vbiBzZSBwcm9jZXNhbiBkZSB4ZWl0byAiCiJlc3BlY2lhbCBDUitMRnMpXG4iCgojOiBzZWQvc2VkLmM6MTQyCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiIgIC1sIE4sIC0tbGluZS1sZW5ndGg9TlxuIgoiICAgICAgICAgICAgICAgICBzcGVjaWZ5IHRoZSBkZXNpcmVkIGxpbmUtd3JhcCBsZW5ndGggZm9yIHRoZSBgbCcgY29tbWFuZFxuIgptc2dzdHIgIiIKIiAgLWwgTiwgLS1saW5lLWxlbmd0aD1OXG4iCiIgICAgICAgICAgICAgICAgIGVzcGVjaWZpY2EgYSBsb254aXR1ZGUgZGUgYXh1c3RlIGRhIGxp8WEgZGVzZXhhZG8gcGFyYSBhICIKImluc3RydWNjafNuIGBsJyBcbiIKCiM6IHNlZC9zZWQuYzoxNDQKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiAgLS1wb3NpeFxuIgoiICAgICAgICAgICAgICAgICBkaXNhYmxlIGFsbCBHTlUgZXh0ZW5zaW9ucy5cbiIKbXNnc3RyICIiCiIgIC0tcG9zaXhcbiIKIiAgICAgICAgICAgICAgICAgZGVzYWN0aXZhIHTzZGFsYXMgZXh0ZW5zafNucyBHTlUuXG4iCgojOiBzZWQvc2VkLmM6MTQ2CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiIgIC1yLCAtLXJlZ2V4cC1leHRlbmRlZFxuIgoiICAgICAgICAgICAgICAgICB1c2UgZXh0ZW5kZWQgcmVndWxhciBleHByZXNzaW9ucyBpbiB0aGUgc2NyaXB0LlxuIgptc2dzdHIgIiIKIiAgLXIsIC0tcmVnZXhwLWV4dGVuZGVkXG4iCiIgICAgICAgICAgICAgICAgIHVzYSBhIHNpbnRheGUgZXh0ZW5kaWRhIGRlIGV4cHJlc2nzbnMgcmVndWxhcmVzIG5vIHNjcmlwdC5cbiIKCiM6IHNlZC9zZWQuYzoxNTEKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiAgLXMsIC0tc2VwYXJhdGVcbiIKIiAgICAgICAgICAgICAgICAgY29uc2lkZXIgZmlsZXMgYXMgc2VwYXJhdGUgcmF0aGVyIHRoYW4gYXMgYSBzaW5nbGUgIgoiY29udGludW91c1xuIgoiICAgICAgICAgICAgICAgICBsb25nIHN0cmVhbS5cbiIKbXNnc3RyICIiCiIgIC1zLCAtLXNlcGFyYXRlXG4iCiIgICAgICAgICAgICAgICAgIHRyYXRhIG9zIGZpY2hlaXJvcyBjb21hIHNlcGFyYWRvcyBubyBjYW50byBkZSBjb21hIHVuaGFcbiIKIiAgICAgICAgICAgICAgICAgbG9uZ2EgdGlyYSBkZSBjYXJhY3RlcmVzIGNvbnRpbnVhLlxuIgoKIzogc2VkL3NlZC5jOjE1NAojLCBjLWZvcm1hdAptc2dpZCAiIgoiICAtdSwgLS11bmJ1ZmZlcmVkXG4iCiIgICAgICAgICAgICAgICAgIGxvYWQgbWluaW1hbCBhbW91bnRzIG9mIGRhdGEgZnJvbSB0aGUgaW5wdXQgZmlsZXMgYW5kICIKImZsdXNoXG4iCiIgICAgICAgICAgICAgICAgIHRoZSBvdXRwdXQgYnVmZmVycyBtb3JlIG9mdGVuXG4iCm1zZ3N0ciAiIgoiICAtdSwgLS11bmJ1ZmZlcmVkIFxuIgoiICAgICAgICAgICAgICAgICBjYXJnYSBjYW50aWRhZGVzIG3tbmltYXMgZGUgZGF0b3MgZG9zIGZpY2hlaXJvcyBkZSBlbnRyYWRhXG4iCiIgICAgICAgICAgICAgICAgIGUgYmFsZWlyYSBvcyBidWZmZXJzIGRlIHNh7WRhIG3haXMgZGVjb3RlXG4iCgojOiBzZWQvc2VkLmM6MTU3CiMsIGMtZm9ybWF0Cm1zZ2lkICIgICAgICAtLWhlbHAgICAgIGRpc3BsYXkgdGhpcyBoZWxwIGFuZCBleGl0XG4iCm1zZ3N0ciAiICAgICAtLWhlbHAgICAgIGFtb3NhIGVzdGEgYXh1ZGEgZSBzYWVcbiIKCiM6IHNlZC9zZWQuYzoxNTgKIywgYy1mb3JtYXQKbXNnaWQgIiAgICAgIC0tdmVyc2lvbiAgb3V0cHV0IHZlcnNpb24gaW5mb3JtYXRpb24gYW5kIGV4aXRcbiIKbXNnc3RyICIgICAgIC0tdmVyc2lvbiAgYW1vc2EtbGEgaW5mb3JtYWNp824gZGEgdmVyc2nzbiBlIHNh7XJcbiIKCiM6IHNlZC9zZWQuYzoxNTkKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiSWYgbm8gLWUsIC0tZXhwcmVzc2lvbiwgLWYsIG9yIC0tZmlsZSBvcHRpb24gaXMgZ2l2ZW4sIHRoZW4gdGhlIGZpcnN0XG4iCiJub24tb3B0aW9uIGFyZ3VtZW50IGlzIHRha2VuIGFzIHRoZSBzZWQgc2NyaXB0IHRvIGludGVycHJldC4gIEFsbFxuIgoicmVtYWluaW5nIGFyZ3VtZW50cyBhcmUgbmFtZXMgb2YgaW5wdXQgZmlsZXM7IGlmIG5vIGlucHV0IGZpbGVzIGFyZVxuIgoic3BlY2lmaWVkLCB0aGVuIHRoZSBzdGFuZGFyZCBpbnB1dCBpcyByZWFkLlxuIgoiXG4iCm1zZ3N0ciAiIgoiXG4iCiJTZSBub24gc2UgaW5kaWNhbiBhcyBvcGNp825zIC1lLCAtLWV4cHJlc3Npb24sIC1mIG91IC0tZmlsZSwgZW50824gbyAiCiJwcmltZWlyb1xuIgoiYXJndW1lbnRvIHF1ZSBub24g6SB1bmhhIG9wY2nzbiB0821hc2UgY29tbyBvIHNjcmlwdCBzZWQgcGFyYSBpbnRlcnByZXRhci4gIgoiVPNkb2xvc1xuIgoiYXJndW1lbnRvcyByZXN0YW50ZXMgc29uIG5vbWVzIGRlIGZpY2hlaXJvcyBkZSBlbnRyYWRhOyBzZSBub24gc2UgIgoiZXNwZWNpZmljYW5cbiIKImZpY2hlaXJvcyBkZSBlbnRyYWRhLCBlbnTzbiBzZSBsZSBhIGVudHJhZGEgc3RhbmRhcmQuXG4iCiJcbiIKCiM6IHNlZC9zZWQuYzozMTUKIywgYy1mb3JtYXQKbXNnaWQgInN1cGVyLXNlZCB2ZXJzaW9uICVzXG4iCm1zZ3N0ciAic3VwZXItc2VkIHZlcnNp824gJXNcbiIKCiM6IHNlZC9zZWQuYzozMTYKIywgYy1mb3JtYXQKbXNnaWQgIiIKImJhc2VkIG9uIEdOVSBzZWQgdmVyc2lvbiAlc1xuIgoiXG4iCm1zZ3N0ciAiIgoiYmFzZWFkbyBlbiBHTlUgc2VkIHZlcnNp824gJXNcbiIKIlxuIgoKIzogc2VkL3NlZC5jOjMxOAojLCBjLWZvcm1hdAptc2dpZCAiR05VIHNlZCB2ZXJzaW9uICVzXG4iCm1zZ3N0ciAiR05VIHNlZCB2ZXJzafNuICVzXG4iCgojOiBzZWQvc2VkLmM6MzIwCiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiIgoiQ29weXJpZ2h0IChDKSAlZCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy5cbiIKIlRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBzb3VyY2UgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4gIFRoZXJlIGlzIE5PXG4iCiJ3YXJyYW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSxcbiIKInRvIHRoZSBleHRlbnQgcGVybWl0dGVkIGJ5IGxhdy5cbiIKbXNnc3RyICIiCiIlc1xuIgoiSXN0byDpIHNvZnR3YXJlIGxpYnJlOyB2ZXhhIG8gY/NkaWdvIGZvbnRlIHBvbGFzIGNvbmRpY2nzbnMgZGUgY29waWEuIE5PTiAiCiJoYWlcbiIKImdhcmFudO1hOyBuaW4gc2VxdWVyYSBkZSBDT01FUkNJQUJJTElEQURFIG91IEFQVElUVURFIFBBUkEgVU4gRklOICIKIkRFVEVSTUlOQURPLFxuIgoiYXRhIG8gcXVlIHBlcm1pdGUgYSBsZWkuXG4iCgojOiBzZWQvdXRpbHMuYzo5MyBzZWQvdXRpbHMuYzo0MzgKIywgYy1mb3JtYXQKbXNnaWQgImNhbm5vdCByZW1vdmUgJXM6ICVzIgptc2dzdHIgIm5vbiBzZSBwdWlkbyBib3JyYXIgJXM6ICVzIgoKIzogc2VkL3V0aWxzLmM6MTYzCiMsIGMtZm9ybWF0Cm1zZ2lkICJjb3VsZG4ndCBvcGVuIGZpbGUgJXM6ICVzIgptc2dzdHIgIm5vbiBzZSBwdWlkbyBhYnJpLWxvIGZpY2hlaXJvICVzOiAlcyIKCiM6IHNlZC91dGlscy5jOjE4NgojLCBjLWZvcm1hdAptc2dpZCAiY291bGRuJ3QgYXR0YWNoIHRvICVzOiAlcyIKbXNnc3RyICJub24gc2UgcHVpZG8gYWR4dW50YXIgZWxlbWVudG8gZW4gJXM6ICVzIgoKIzogc2VkL3V0aWxzLmM6MjQ1CiMsIGMtZm9ybWF0Cm1zZ2lkICJjb3VsZG4ndCB3cml0ZSAlZCBpdGVtIHRvICVzOiAlcyIKbXNnaWRfcGx1cmFsICJjb3VsZG4ndCB3cml0ZSAlZCBpdGVtcyB0byAlczogJXMiCm1zZ3N0clswXSAibm9uIHNlIHB1aWRvIGVzY3JpYmlyICVkIGVsZW1lbnRvIGVuICVzOiAlcyIKbXNnc3RyWzFdICJub24gc2UgcHVpZGVyb24gZXNjcmliaXIgJWQgZWxlbWVudG9zIGVuICVzOiAlcyIKCiM6IHNlZC91dGlscy5jOjI2MCBzZWQvdXRpbHMuYzoyNzYKIywgYy1mb3JtYXQKbXNnaWQgInJlYWQgZXJyb3Igb24gJXM6ICVzIgptc2dzdHIgImVycm8gZGUgbGVjdHVyYSBlbiAlczogJXMiCgojOiBzZWQvdXRpbHMuYzozNzgKIywgYy1mb3JtYXQKbXNnaWQgImNvdWxkbid0IGZvbGxvdyBzeW1saW5rICVzOiAlcyIKbXNnc3RyICJub24gc2UgcHVpZG8gc2VndWktbGEgbGlnYXrzbiBzaW1i82xpY2EgJXM6ICVzIgoKIzogc2VkL3V0aWxzLmM6NDEyCiMsIGMtZm9ybWF0Cm1zZ2lkICJjYW5ub3Qgc3RhdCAlczogJXMiCm1zZ3N0ciAibm9uIHNlIHB1aWRvIGxlciAlczogJXMiCgojOiBzZWQvdXRpbHMuYzo0NDMKIywgYy1mb3JtYXQKbXNnaWQgImNhbm5vdCByZW5hbWUgJXM6ICVzIgptc2dzdHIgIm5vbiBzZSBwdWlkbyByZW5vbWVhciAlczogJXMiCgojOiBsaWIvcmVnY29tcC5jOjEzNAptc2dpZCAiU3VjY2VzcyIKbXNnc3RyICLJeGl0byIKCiM6IGxpYi9yZWdjb21wLmM6MTM3Cm1zZ2lkICJObyBtYXRjaCIKbXNnc3RyICJOb24gc2UgYXRvcG91IgoKIzogbGliL3JlZ2NvbXAuYzoxNDAKbXNnaWQgIkludmFsaWQgcmVndWxhciBleHByZXNzaW9uIgptc2dzdHIgIkV4cHJlc2nzbiByZWd1bGFyIG5vbiB24WxpZGEiCgojOiBsaWIvcmVnY29tcC5jOjE0Mwptc2dpZCAiSW52YWxpZCBjb2xsYXRpb24gY2hhcmFjdGVyIgptc2dzdHIgIkNhcuFjdGVyIGRlIG9yZGVhbWVudG8gbm9uIHbhbGlkbyIKCiM6IGxpYi9yZWdjb21wLmM6MTQ2Cm1zZ2lkICJJbnZhbGlkIGNoYXJhY3RlciBjbGFzcyBuYW1lIgptc2dzdHIgIk5vbWUgZGUgY2xhc2UgZGUgY2FyYWN0ZXJlcyBub24gduFsaWRvIgoKIzogbGliL3JlZ2NvbXAuYzoxNDkKbXNnaWQgIlRyYWlsaW5nIGJhY2tzbGFzaCIKbXNnc3RyICJCYXJyYSBpbnZlcnRpZGEg4SBmaW4gZGUgbGnxYSIKCiM6IGxpYi9yZWdjb21wLmM6MTUyCm1zZ2lkICJJbnZhbGlkIGJhY2sgcmVmZXJlbmNlIgptc2dzdHIgIlJlZmVyZW5jaWEgY2FyYSBhIGF0cuFzIG5vbiB24WxpZGEiCgojOiBsaWIvcmVnY29tcC5jOjE1NQptc2dpZCAiVW5tYXRjaGVkIFsgb3IgW14iCm1zZ3N0ciAiWyBvdSBbXiBzZW4gcGFyZWxsYSIKCiM6IGxpYi9yZWdjb21wLmM6MTU4Cm1zZ2lkICJVbm1hdGNoZWQgKCBvciBcXCgiCm1zZ3N0ciAiKCBvdSBcXCggc2VuIHBhcmVsbGEiCgojOiBsaWIvcmVnY29tcC5jOjE2MQptc2dpZCAiVW5tYXRjaGVkIFxceyIKbXNnc3RyICJcXHsgc2VuIHBhcmVsbGEiCgojOiBsaWIvcmVnY29tcC5jOjE2NAptc2dpZCAiSW52YWxpZCBjb250ZW50IG9mIFxce1xcfSIKbXNnc3RyICJDb250aWRvIGRlIFxce1xcfSBub24gduFsaWRvIgoKIzogbGliL3JlZ2NvbXAuYzoxNjcKbXNnaWQgIkludmFsaWQgcmFuZ2UgZW5kIgptc2dzdHIgIkZpbiBkZSByYW5nbyBub24gduFsaWRhIgoKIzogbGliL3JlZ2NvbXAuYzoxNzAKbXNnaWQgIk1lbW9yeSBleGhhdXN0ZWQiCm1zZ3N0ciAiTWVtb3JpYSBlc2dvdGFkYSIKCiM6IGxpYi9yZWdjb21wLmM6MTczCm1zZ2lkICJJbnZhbGlkIHByZWNlZGluZyByZWd1bGFyIGV4cHJlc3Npb24iCm1zZ3N0ciAiRXhwcmVzafNuIHJlZ3VsYXIgYW50ZXJpb3Igbm9uIHbhbGlkYSIKCiM6IGxpYi9yZWdjb21wLmM6MTc2Cm1zZ2lkICJQcmVtYXR1cmUgZW5kIG9mIHJlZ3VsYXIgZXhwcmVzc2lvbiIKbXNnc3RyICJGaW4gcHJlbWF0dXJhIGRhIGV4cHJlc2nzbiByZWd1bGFyIgoKIzogbGliL3JlZ2NvbXAuYzoxNzkKbXNnaWQgIlJlZ3VsYXIgZXhwcmVzc2lvbiB0b28gYmlnIgptc2dzdHIgIkV4cHJlc2nzbiByZWd1bGFyIGdyYW5kZSBkZSBt4WlzIgoKIzogbGliL3JlZ2NvbXAuYzoxODIKbXNnaWQgIlVubWF0Y2hlZCApIG9yIFxcKSIKbXNnc3RyICIpIG91IFxcKSBzZW4gcGFyZWxsYSIKCiM6IGxpYi9yZWdjb21wLmM6NzAzCm1zZ2lkICJObyBwcmV2aW91cyByZWd1bGFyIGV4cHJlc3Npb24iCm1zZ3N0ciAiTm9uIGhhaSB1bmhhIGV4cHJlc2nzbiByZWd1bGFyIGFudGVyaW9yIgo=