IyBJcmlzaCB0cmFuc2xhdGlvbnMgZm9yIGJpc29uLgojIENvcHlyaWdodCAoQykgMjAwNCBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIyBUaGlzIGZpbGUgaXMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHNhbWUgbGljZW5zZSBhcyB0aGUgYmlzb24gcGFja2FnZS4KIyBLZXZpbiBQYXRyaWNrIFNjYW5uZWxsIDxzY2FubmVsbEBTTFUuRURVPiwgMjAwNCwgMjAwNS4KIwptc2dpZCAiIgptc2dzdHIgIiIKIlByb2plY3QtSWQtVmVyc2lvbjogYmlzb24tcnVudGltZSAyLjFcbiIKIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBidWctYmlzb25AZ251Lm9yZ1xuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMTItMTItMTIgMTY6MDkrMDEwMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogMjAwNS0wOS0xOCAyMzoxNC0wNTAwXG4iCiJMYXN0LVRyYW5zbGF0b3I6IEtldmluIFBhdHJpY2sgU2Nhbm5lbGwgPHNjYW5uZWxsQFNMVS5FRFU+XG4iCiJMYW5ndWFnZS1UZWFtOiBJcmlzaCA8Z2FlaWxnZS1nbnVsaW51eEBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQ+XG4iCiJMYW5ndWFnZTogZ2FcbiIKIk1JTUUtVmVyc2lvbjogMS4wXG4iCiJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9SVNPLTg4NTktMVxuIgoiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgoKIzogZGF0YS9nbHIuYzo4NTUgZGF0YS95YWNjLmM6Nzc2Cm1zZ2lkICJzeW50YXggZXJyb3I6IGNhbm5vdCBiYWNrIHVwIgptc2dzdHIgImVhcnLhaWQgY2hvbWhy6WlyZTogbu0gZulpZGlyIGP6bPoiCgojOiBkYXRhL2dsci5jOjE3MjkKbXNnaWQgInN5bnRheCBpcyBhbWJpZ3VvdXMiCm1zZ3N0ciAiY29taHLpaXIgZGjpYmhy7W9jaCIKCiM6IGRhdGEvZ2xyLmM6MjAxNCBkYXRhL2dsci5jOjIwOTQgZGF0YS9nbHIuYzoyMTM0IGRhdGEvZ2xyLmM6MjM5OQojOiBkYXRhL2xhbHIxLmNjOjk0NyBkYXRhL2xhbHIxLmNjOjk2NyBkYXRhL3lhY2MuYzoxMzUxIGRhdGEveWFjYy5jOjE4NTYKIzogZGF0YS95YWNjLmM6MTg2Mgptc2dpZCAic3ludGF4IGVycm9yIgptc2dzdHIgImVhcnLhaWQgY2hvbWhy6WlyZSIKCiM6IGRhdGEvZ2xyLmM6MjA5NSBkYXRhL2xhbHIxLmNjOjk0OCBkYXRhL3lhY2MuYzoxMzUyCiMsIGMtZm9ybWF0Cm1zZ2lkICJzeW50YXggZXJyb3IsIHVuZXhwZWN0ZWQgJXMiCm1zZ3N0ciAiZWFycuFpZCBjaG9taHLpaXJlLCAlcyBnYW4gY2hvaW5uZSIKCiM6IGRhdGEvZ2xyLmM6MjA5NiBkYXRhL2xhbHIxLmNjOjk0OSBkYXRhL3lhY2MuYzoxMzUzCiMsIGMtZm9ybWF0Cm1zZ2lkICJzeW50YXggZXJyb3IsIHVuZXhwZWN0ZWQgJXMsIGV4cGVjdGluZyAlcyIKbXNnc3RyICJlYXJy4WlkIGNob21oculpcmUsICVzIGdhbiBjaG9pbm5lLCBiaO1vdGhhcyBhZyBz+mlsIGxlICVzIgoKIzogZGF0YS9nbHIuYzoyMDk3IGRhdGEvbGFscjEuY2M6OTUwIGRhdGEveWFjYy5jOjEzNTQKIywgYy1mb3JtYXQKbXNnaWQgInN5bnRheCBlcnJvciwgdW5leHBlY3RlZCAlcywgZXhwZWN0aW5nICVzIG9yICVzIgptc2dzdHIgImVhcnLhaWQgY2hvbWhy6WlyZSwgJXMgZ2FuIGNob2lubmUsIGJo7W90aGFzIGFnIHP6aWwgbGUgJXMgbvMgJXMiCgojOiBkYXRhL2dsci5jOjIwOTggZGF0YS9sYWxyMS5jYzo5NTEgZGF0YS95YWNjLmM6MTM1NQojLCBjLWZvcm1hdAptc2dpZCAic3ludGF4IGVycm9yLCB1bmV4cGVjdGVkICVzLCBleHBlY3RpbmcgJXMgb3IgJXMgb3IgJXMiCm1zZ3N0ciAiZWFycuFpZCBjaG9taHLpaXJlLCAlcyBnYW4gY2hvaW5uZSwgYmjtb3RoYXMgYWcgc/ppbCBsZSAlcyBu8yAlcyBu8yAlcyIKCiM6IGRhdGEvZ2xyLmM6MjA5OSBkYXRhL2xhbHIxLmNjOjk1MiBkYXRhL3lhY2MuYzoxMzU2CiMsIGMtZm9ybWF0Cm1zZ2lkICJzeW50YXggZXJyb3IsIHVuZXhwZWN0ZWQgJXMsIGV4cGVjdGluZyAlcyBvciAlcyBvciAlcyBvciAlcyIKbXNnc3RyICIiCiJlYXJy4WlkIGNob21oculpcmUsICVzIGdhbiBjaG9pbm5lLCBiaO1vdGhhcyBhZyBz+mlsIGxlICVzIG7zICVzIG7zICVzIG7zICVzIgoKIzogZGF0YS9nbHIuYzoyNDU5IGRhdGEveWFjYy5jOjE0MzYgZGF0YS95YWNjLmM6MTQzOCBkYXRhL3lhY2MuYzoxNjE2CiM6IGRhdGEveWFjYy5jOjIwMTMKbXNnaWQgIm1lbW9yeSBleGhhdXN0ZWQiCm1zZ3N0ciAiY3VpbWhuZSDtZGl0aGUiCg==