IyEgL2Jpbi9zaAouICIke3NyY2Rpcj0ufS9pbml0LnNoIjsgcGF0aF9wcmVwZW5kXyAuIC4uL3NyYwoKIyBUZXN0IC0tbG9jYXRpb24gb3B0aW9uLgoKY2F0IDw8XEVPRiA+IG1nLXRlc3QxLnBvCiMgR2VybWFuIHRyYW5zbGF0aW9ucyBmb3IgR05VIGdldHRleHQgcGFja2FnZS4KIyBDb3B5cmlnaHQgKEMpIDE5OTUsIDE5OTYsIDE5OTcsIDIwMDEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCm1zZ2lkICIiCm1zZ3N0ciAiIgoiUHJvamVjdC1JZC1WZXJzaW9uOiBHTlUgZ2V0dGV4dCAwLjExLXByZTFcbiIKIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDAxLTEyLTA4IDIwOjMzKzAxMDBcbiIKIlBPLVJldmlzaW9uLURhdGU6IDIwMDEtMTEtMDQgMTI6MjUrMDEwMFxuIgoiTGFzdC1UcmFuc2xhdG9yOiBLYXJsIEVpY2h3YWxkZXIgPGtlQHN1c2UuZGU+XG4iCiJMYW5ndWFnZS1UZWFtOiBHZXJtYW4gPGRlQGxpLm9yZz5cbiIKIk1JTUUtVmVyc2lvbjogMS4wXG4iCiJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9SVNPLTg4NTktMVxuIgoiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgoiUGx1cmFsLUZvcm1zOiBucGx1cmFscz0yOyBwbHVyYWw9KG4gIT0gMSk7XG4iCgojOiBhcmdtYXRjaC5jOjE0MQojLCBjLWZvcm1hdAptc2dpZCAiaW52YWxpZCBhcmd1bWVudCBgJXMnIGZvciBgJXMnIgptc2dzdHIgInVuZ/xsdGlnZXMgQXJndW1lbnQguyVzqyBm/HIguyVzqyIKCiM6IGFyZ21hdGNoLmM6MTQyCiMsIGMtZm9ybWF0Cm1zZ2lkICJhbWJpZ3VvdXMgYXJndW1lbnQgYCVzJyBmb3IgYCVzJyIKbXNnc3RyICJtZWhyZGV1dGlnZXMgQXJndW1lbnQguyVzqyBm/HIguyVzqyIKCiM6IGFyZ21hdGNoLmM6MTYyCm1zZ2lkICJWYWxpZCBhcmd1bWVudHMgYXJlOiIKbXNnc3RyICJH/Gx0aWdlIEFyZ3VtZW50ZSBzaW5kOiIKCiM6IGNvcHktZmlsZS5jOjYwCiMsIGMtZm9ybWF0Cm1zZ2lkICJlcnJvciB3aGlsZSBvcGVuaW5nIFwiJXNcIiBmb3IgcmVhZGluZyIKbXNnc3RyICLWZmZuZW4gZGVyIERhdGVpILslc6sgenVtIExlc2VuIGZlaGxnZXNjaGxhZ2VuIgoKIzogY29weS1maWxlLmM6NjcKIywgYy1mb3JtYXQKbXNnaWQgImNhbm5vdCBvcGVuIGJhY2t1cCBmaWxlIFwiJXNcIiBmb3Igd3JpdGluZyIKbXNnc3RyICLWZmZuZW4gZGVyIFNpY2hlcnVuZ3NkYXRlaSC7JXOrIHp1bSBTY2hyZWliZW4gZmVobGdlc2NobGFnZW4iCgojOiBjb3B5LWZpbGUuYzo4MAojLCBjLWZvcm1hdAptc2dpZCAiZXJyb3IgcmVhZGluZyBcIiVzXCIiCm1zZ3N0ciAiRmVobGVyIGJlaW0gTGVzZW4gdm9uILslc6siCgojOiBjb3B5LWZpbGUuYzo4NiBjb3B5LWZpbGUuYzo5MAojLCBjLWZvcm1hdAptc2dpZCAiZXJyb3Igd3JpdGluZyBcIiVzXCIiCm1zZ3N0ciAiRmVobGVyIGJlaW0gU2NocmVpYmVuIHZvbiC7JXOrIgoKIzogY29weS1maWxlLmM6OTIKIywgYy1mb3JtYXQKbXNnaWQgImVycm9yIGFmdGVyIHJlYWRpbmcgXCIlc1wiIgptc2dzdHIgIkZlaGxlciBuYWNoIGRlbSBMZXNlbiB2b24guyVzqyIKCiM6IGVycm9yLmM6MTE1Cm1zZ2lkICJVbmtub3duIHN5c3RlbSBlcnJvciIKbXNnc3RyICJVbmJla2FubnRlciBTeXN0ZW1mZWhsZXIiCgojOiBleGVjdXRlLmM6MTcwIGV4ZWN1dGUuYzoyMDUgcGlwZS1iaWRpLmM6MTU2IHBpcGUtYmlkaS5jOjE5MSBwaXBlLWluLmM6MTY5CiM6IHBpcGUtaW4uYzoyMDUgcGlwZS1vdXQuYzoxNjkgcGlwZS1vdXQuYzoyMDUgd2FpdC1wcm9jZXNzLmM6MTM2CiMsIGMtZm9ybWF0Cm1zZ2lkICIlcyBzdWJwcm9jZXNzIGZhaWxlZCIKbXNnc3RyICJTdWJwcm96ZXNzICVzIGZlaGxnZXNjaGxhZ2VuIgoKIzogZ2V0b3B0LmM6NjkxCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogb3B0aW9uIGAlcycgaXMgYW1iaWd1b3VzXG4iCm1zZ3N0ciAiJXM6IE9wdGlvbiC7JXOrIGlzdCBtZWhyZGV1dGlnXG4iCgojOiBnZXRvcHQuYzo3MTYKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBvcHRpb24gYC0tJXMnIGRvZXNuJ3QgYWxsb3cgYW4gYXJndW1lbnRcbiIKbXNnc3RyICIlczogT3B0aW9uILstLSVzqyBlcndhcnRldCBrZWluIEFyZ3VtZW50XG4iCgojOiBnZXRvcHQuYzo3MjEKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBvcHRpb24gYCVjJXMnIGRvZXNuJ3QgYWxsb3cgYW4gYXJndW1lbnRcbiIKbXNnc3RyICIlczogT3B0aW9uILslYyVzqyBlcndhcnRldCBrZWluIEFyZ3VtZW50XG4iCgojOiBnZXRvcHQuYzo3MzkgZ2V0b3B0LmM6OTEyCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogb3B0aW9uIGAlcycgcmVxdWlyZXMgYW4gYXJndW1lbnRcbiIKbXNnc3RyICIlczogT3B0aW9uILslc6sgZXJ3YXJ0ZXQgZWluIEFyZ3VtZW50XG4iCgojOiBnZXRvcHQuYzo3NjgKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiB1bnJlY29nbml6ZWQgb3B0aW9uIGAtLSVzJ1xuIgptc2dzdHIgIiVzOiB1bmJla2FubnRlIE9wdGlvbiC7LS0lc6tcbiIKCiM6IGdldG9wdC5jOjc3MgojLCBjLWZvcm1hdAptc2dpZCAiJXM6IHVucmVjb2duaXplZCBvcHRpb24gYCVjJXMnXG4iCm1zZ3N0ciAiJXM6IHVuYmVrYW5udGUgT3B0aW9uILslYyVzq1xuIgoKIzogZ2V0b3B0LmM6Nzk4CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogaWxsZWdhbCBvcHRpb24gLS0gJWNcbiIKbXNnc3RyICIlczogdW56dWzkc3NpZ2UgT3B0aW9uIC0tICVjXG4iCgojOiBnZXRvcHQuYzo4MDEKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBpbnZhbGlkIG9wdGlvbiAtLSAlY1xuIgptc2dzdHIgIiVzOiB1bmf8bHRpZ2UgT3B0aW9uIC0tICVjXG4iCgojOiBnZXRvcHQuYzo4MzEgZ2V0b3B0LmM6OTYxCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogb3B0aW9uIHJlcXVpcmVzIGFuIGFyZ3VtZW50IC0tICVjXG4iCm1zZ3N0ciAiJXM6IE9wdGlvbiBlcndhcnRldCBlaW4gQXJndW1lbnQgLS0gJWNcbiIKCiM6IGdldG9wdC5jOjg3OAojLCBjLWZvcm1hdAptc2dpZCAiJXM6IG9wdGlvbiBgLVcgJXMnIGlzIGFtYmlndW91c1xuIgptc2dzdHIgIiVzOiBPcHRpb24guy1XICVzqyBpc3QgbWVocmRldXRpZ1xuIgoKIzogZ2V0b3B0LmM6ODk2CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogb3B0aW9uIGAtVyAlcycgZG9lc24ndCBhbGxvdyBhbiBhcmd1bWVudFxuIgptc2dzdHIgIiVzOiBPcHRpb24guy1XICVzqyBlcndhcnRldCBrZWluIEFyZ3VtZW50XG4iCgojOiBqYXZhY29tcC5jOjQ2NQptc2dpZCAiSmF2YSBjb21waWxlciBub3QgZm91bmQsIHRyeSBpbnN0YWxsaW5nIGdjaiBvciBzZXQgJEpBVkFDIgptc2dzdHIgIiIKIkphdmEtQ29tcGlsZXIgbmljaHQgZ2VmdW5kZW47IGJpdHRlILtnY2qrIGluc3RhbGxpZXJlbiBvZGVyICRKQVZBQyBzZXR6ZW4iCgojOiBqYXZhZXhlYy5jOjQwNAptc2dpZCAiSmF2YSB2aXJ0dWFsIG1hY2hpbmUgbm90IGZvdW5kLCB0cnkgaW5zdGFsbGluZyBnaWogb3Igc2V0ICRKQVZBIgptc2dzdHIgIiIKIlZpcnR1ZWxsZSBKYXZhLU1hc2NoaW5lIG5pY2h0IGdlZnVuZGVuOyBiaXR0ZSC7Z2NqqyBpbnN0YWxsaWVyZW4gb2RlclxuIgoiJEpBVkEgc2V0emVuIgoKIzogb2JzdGFjay5jOjQ3NCB4ZXJyb3IuYzo3NSB4bWFsbG9jLmM6NTYKbXNnaWQgIm1lbW9yeSBleGhhdXN0ZWQiCm1zZ3N0ciAidmlydHVlbGxlciBTcGVpY2hlciBlcnNjaPZwZnQiCgojOiBwaXBlLWJpZGkuYzoxMTkgcGlwZS1iaWRpLmM6MTIxIHBpcGUtaW4uYzoxMzYgcGlwZS1vdXQuYzoxMzYKbXNnaWQgImNhbm5vdCBjcmVhdGUgcGlwZSIKbXNnc3RyICJFcyBpc3QgbmljaHQgbfZnbGljaCwgZWluZSBQaXBlIHp1IGVyemV1Z2VuIgoKIzogd2FpdC1wcm9jZXNzLmM6MTE3CiMsIGMtZm9ybWF0Cm1zZ2lkICIlcyBzdWJwcm9jZXNzIgptc2dzdHIgIlN1YnByb3plc3MgJXMiCgojOiB3YWl0LXByb2Nlc3MuYzoxMjkKIywgYy1mb3JtYXQKbXNnaWQgIiVzIHN1YnByb2Nlc3MgZ290IGZhdGFsIHNpZ25hbCIKbXNnc3RyICJTdWJwcm96ZXNzICVzIGhhdCBlaW4gZmF0YWxlcyBTaWduYWwgZXJoYWx0ZW4iCkVPRgoKOiAke01TR0dSRVA9bXNnZ3JlcH0KJHtNU0dHUkVQfSAtTiBwaXBlLWJpZGkuYyAtbyBtZy10ZXN0MS50bXAgbWctdGVzdDEucG8gfHwgRXhpdCAxCkxDX0FMTD1DIHRyIC1kICdccicgPCBtZy10ZXN0MS50bXAgPiBtZy10ZXN0MS5vdXQgfHwgRXhpdCAxCgpjYXQgPDxcRU9GID4gbWctdGVzdDEub2sKIyBHZXJtYW4gdHJhbnNsYXRpb25zIGZvciBHTlUgZ2V0dGV4dCBwYWNrYWdlLgojIENvcHlyaWdodCAoQykgMTk5NSwgMTk5NiwgMTk5NywgMjAwMSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KbXNnaWQgIiIKbXNnc3RyICIiCiJQcm9qZWN0LUlkLVZlcnNpb246IEdOVSBnZXR0ZXh0IDAuMTEtcHJlMVxuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMDEtMTItMDggMjA6MzMrMDEwMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogMjAwMS0xMS0wNCAxMjoyNSswMTAwXG4iCiJMYXN0LVRyYW5zbGF0b3I6IEthcmwgRWljaHdhbGRlciA8a2VAc3VzZS5kZT5cbiIKIkxhbmd1YWdlLVRlYW06IEdlcm1hbiA8ZGVAbGkub3JnPlxuIgoiTUlNRS1WZXJzaW9uOiAxLjBcbiIKIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1JU08tODg1OS0xXG4iCiJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCiJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD0obiAhPSAxKTtcbiIKCiM6IGV4ZWN1dGUuYzoxNzAgZXhlY3V0ZS5jOjIwNSBwaXBlLWJpZGkuYzoxNTYgcGlwZS1iaWRpLmM6MTkxIHBpcGUtaW4uYzoxNjkKIzogcGlwZS1pbi5jOjIwNSBwaXBlLW91dC5jOjE2OSBwaXBlLW91dC5jOjIwNSB3YWl0LXByb2Nlc3MuYzoxMzYKIywgYy1mb3JtYXQKbXNnaWQgIiVzIHN1YnByb2Nlc3MgZmFpbGVkIgptc2dzdHIgIlN1YnByb3plc3MgJXMgZmVobGdlc2NobGFnZW4iCgojOiBwaXBlLWJpZGkuYzoxMTkgcGlwZS1iaWRpLmM6MTIxIHBpcGUtaW4uYzoxMzYgcGlwZS1vdXQuYzoxMzYKbXNnaWQgImNhbm5vdCBjcmVhdGUgcGlwZSIKbXNnc3RyICJFcyBpc3QgbmljaHQgbfZnbGljaCwgZWluZSBQaXBlIHp1IGVyemV1Z2VuIgpFT0YKCjogJHtESUZGPWRpZmZ9CiR7RElGRn0gbWctdGVzdDEub2sgbWctdGVzdDEub3V0CnJlc3VsdD0kPwoKZXhpdCAkcmVzdWx0Cg==