IyBNZW5zYWplcyBlbiBlc3Bh8W9sIHBhcmEgZ3Byb2YgMi4xNHJlbDAzMDcxMi4KIyBDb3B5cmlnaHQgKEMpIDIwMDIsIDIwMDMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMgQ3Jpc3RpYW4gT3Ro824gTWFydO1uZXogVmVyYSA8Y2Z1Z2FAaXRhbS5teD4sIDIwMDIsIDIwMDMuCiMKbXNnaWQgIiIKbXNnc3RyICIiCiJQcm9qZWN0LUlkLVZlcnNpb246IGdwcm9mIDIuMTRyZWwwMzA3MTJcbiIKIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDAzLTA3LTExIDEzOjU4KzA5MzBcbiIKIlBPLVJldmlzaW9uLURhdGU6IDIwMDMtMDctMTQgMTg6NDUtMDUwMFxuIgoiTGFzdC1UcmFuc2xhdG9yOiBDcmlzdGlhbiBPdGjzbiBNYXJ07W5leiBWZXJhIDxjZnVnYUBpdGFtLm14PlxuIgoiTGFuZ3VhZ2UtVGVhbTogU3BhbmlzaCA8ZXNAbGkub3JnPlxuIgoiTUlNRS1WZXJzaW9uOiAxLjBcbiIKIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1JU08tODg1OS0xXG4iCiJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCgojOiBhbHBoYS5jOjEwMyBtaXBzLmM6NTcKbXNnaWQgIjxpbmRpcmVjdCBjaGlsZD4iCm1zZ3N0ciAiPGhpam8gaW5kaXJlY3RvPiIKCiM6IGFscGhhLmM6MTIwIG1pcHMuYzo3NAojLCBjLWZvcm1hdAptc2dpZCAiW2ZpbmRfY2FsbF0gJXM6IDB4JWx4IHRvIDB4JWx4XG4iCm1zZ3N0ciAiW2ZpbmRfY2FsbF0gJXM6IDB4JWx4IGEgMHglbHhcbiIKCiM6IGFscGhhLmM6MTQyCiMsIGMtZm9ybWF0Cm1zZ2lkICJbZmluZF9jYWxsXSAweCVseDoganNyJXMgPGluZGlyZWN0X2NoaWxkPlxuIgptc2dzdHIgIltmaW5kX2NhbGxdIDB4JWx4OiBqc3IlcyA8aGlqb19pbmRpcmVjdG8+XG4iCgojOiBhbHBoYS5jOjE1MgojLCBjLWZvcm1hdAptc2dpZCAiW2ZpbmRfY2FsbF0gMHglbHg6IGJzciIKbXNnc3RyICJbZmluZF9jYWxsXSAweCVseDogYnNyIgoKIzogYmFzaWNfYmxvY2tzLmM6MTM0IGNhbGxfZ3JhcGguYzo5NCBoaXN0LmM6OTgKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiAlczogdW5leHBlY3RlZCBlbmQgb2YgZmlsZVxuIgptc2dzdHIgIiVzOiAlczogZmluIGRlIGZpY2hlcm8gaW5lc3BlcmFkb1xuIgoKIzogYmFzaWNfYmxvY2tzLmM6MjAyCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogd2FybmluZzogaWdub3JpbmcgYmFzaWMtYmxvY2sgZXhlYyBjb3VudHMgKHVzZSAtbCBvciAtLWxpbmUpXG4iCm1zZ3N0ciAiJXM6IGF2aXNvOiBpZ25vcmFuZG8gbGFzIGN1ZW50YXMgZGUgZWplY3VjafNuIGRlIGJsb3F1ZXMgYuFzaWNvcyAodXNlIC1sIG8gLS1saW5lKVxuIgoKIy4gRklYTUU6IFRoaXMgb25seSB3b3JrcyBpZiBiZmRfdm1hIGlzIHVuc2lnbmVkIGxvbmcuCiM6IGJhc2ljX2Jsb2Nrcy5jOjI5NSBiYXNpY19ibG9ja3MuYzozMDUKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiVkOiAoJXM6MHglbHgpICVsdSBleGVjdXRpb25zXG4iCm1zZ3N0ciAiJXM6JWQ6ICglczoweCVseCkgJWx1IGVqZWN1Y2lvbmVzXG4iCgojOiBiYXNpY19ibG9ja3MuYzoyOTYgYmFzaWNfYmxvY2tzLmM6MzA2Cm1zZ2lkICI8dW5rbm93bj4iCm1zZ3N0ciAiPGRlc2Nvbm9jaWRvPiIKCiM6IGJhc2ljX2Jsb2Nrcy5jOjU1MwojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJcbiIKIlRvcCAlZCBMaW5lczpcbiIKIlxuIgoiICAgICBMaW5lICAgICAgQ291bnRcbiIKIlxuIgptc2dzdHIgIiIKIlxuIgoiXG4iCiIlZCBM7W5lYXMgUHJpbmNpcGFsZXM6XG4iCiJcbiIKIiAgICAgTO1uZWEgICAgIEN1ZW50YVxuIgoiXG4iCgojOiBiYXNpY19ibG9ja3MuYzo1NzcKbXNnaWQgIiIKIlxuIgoiRXhlY3V0aW9uIFN1bW1hcnk6XG4iCiJcbiIKbXNnc3RyICIiCiJcbiIKIlJlc3VtZW4gZGUgRWplY3VjafNuOlxuIgoiXG4iCgojOiBiYXNpY19ibG9ja3MuYzo1NzgKIywgYy1mb3JtYXQKbXNnaWQgIiU5bGQgICBFeGVjdXRhYmxlIGxpbmVzIGluIHRoaXMgZmlsZVxuIgptc2dzdHIgIiU5bGQgICBM7W5lYXMgZWplY3V0YWJsZXMgZW4gZXN0ZSBmaWNoZXJvXG4iCgojOiBiYXNpY19ibG9ja3MuYzo1ODAKIywgYy1mb3JtYXQKbXNnaWQgIiU5bGQgICBMaW5lcyBleGVjdXRlZFxuIgptc2dzdHIgIiU5bGQgICBM7W5lYXMgZWplY3V0YWRhc1xuIgoKIzogYmFzaWNfYmxvY2tzLmM6NTgxCiMsIGMtZm9ybWF0Cm1zZ2lkICIlOS4yZiAgIFBlcmNlbnQgb2YgdGhlIGZpbGUgZXhlY3V0ZWRcbiIKbXNnc3RyICIlOS4yZiAgIFBvcmNlbnRhamUgZWplY3V0YWRvIGRlbCBmaWNoZXJvXG4iCgojOiBiYXNpY19ibG9ja3MuYzo1ODUKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiJTlsdSAgIFRvdGFsIG51bWJlciBvZiBsaW5lIGV4ZWN1dGlvbnNcbiIKbXNnc3RyICIiCiJcbiIKIiU5bHUgICBO+m1lcm8gdG90YWwgZGUgZWplY3VjaW9uZXMgZGUgbO1uZWFcbiIKCiM6IGJhc2ljX2Jsb2Nrcy5jOjU4NwojLCBjLWZvcm1hdAptc2dpZCAiJTkuMmYgICBBdmVyYWdlIGV4ZWN1dGlvbnMgcGVyIGxpbmVcbiIKbXNnc3RyICIlOS4yZiAgIEVqZWN1Y2lvbmVzIHByb21lZGlvIHBvciBs7W5lYVxuIgoKIzogY2FsbF9ncmFwaC5jOjcxCiMsIGMtZm9ybWF0Cm1zZ2lkICJbY2dfdGFsbHldIGFyYyBmcm9tICVzIHRvICVzIHRyYXZlcnNlZCAlbHUgdGltZXNcbiIKbXNnc3RyICJbY2dfdGFsbHldIGFyY28gZGVzZGUgJXMgaGFzdGEgJXMgcmVjb3JyaWRvICVsdSB2ZWNlc1xuIgoKIzogY2dfcHJpbnQuYzo3Mwptc2dpZCAiIgoiXHRcdCAgICAgQ2FsbCBncmFwaCAoZXhwbGFuYXRpb24gZm9sbG93cylcbiIKIlxuIgptc2dzdHIgIiIKIlx0XHQgICAgIEdy4WZpY28gZGUgbGxhbWFkYXMgKGV4cGxpY2FjafNuIGEgY29udGludWFjafNuKVxuIgoiXG4iCgojOiBjZ19wcmludC5jOjc1Cm1zZ2lkICIiCiJcdFx0XHRDYWxsIGdyYXBoXG4iCiJcbiIKbXNnc3RyICIiCiJcdFx0XHRHcuFmaWNvIGRlIGxsYW1hZGFzXG4iCiJcbiIKCiM6IGNnX3ByaW50LmM6NzggaGlzdC5jOjM2MwojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJncmFudWxhcml0eTogZWFjaCBzYW1wbGUgaGl0IGNvdmVycyAlbGQgYnl0ZShzKSIKbXNnc3RyICIiCiJcbiIKImdyYW51bGFyaWRhZDogY2FkYSBlbGVtZW50byBkZSBtdWVzdHJhIGN1YnJlICVsZCBieXRlKHMpIgoKIzogY2dfcHJpbnQuYzo4MgojLCBjLWZvcm1hdAptc2dpZCAiIgoiIGZvciAlLjJmJSUgb2YgJS4yZiBzZWNvbmRzXG4iCiJcbiIKbXNnc3RyICIiCiIgcGFyYSAlLjJmJSUgZGUgJS4yZiBzZWd1bmRvc1xuIgoiXG4iCgojOiBjZ19wcmludC5jOjg2Cm1zZ2lkICIiCiIgbm8gdGltZSBwcm9wYWdhdGVkXG4iCiJcbiIKbXNnc3RyICIiCiIgbm8gaGF5IHRpZW1wbyBwcm9wYWdhZG9cbiIKIlxuIgoKIzogY2dfcHJpbnQuYzo5NSBjZ19wcmludC5jOjk4IGNnX3ByaW50LmM6MTAwCm1zZ2lkICJjYWxsZWQiCm1zZ3N0ciAibGxhbWFkbyIKCiM6IGNnX3ByaW50LmM6OTUgY2dfcHJpbnQuYzoxMDAKbXNnaWQgInRvdGFsIgptc2dzdHIgInRvdGFsIgoKIzogY2dfcHJpbnQuYzo5NQptc2dpZCAicGFyZW50cyIKbXNnc3RyICJwYWRyZXMiCgojOiBjZ19wcmludC5jOjk3IGNnX3ByaW50LmM6OTgKbXNnaWQgImluZGV4Igptc2dzdHIgIu1uZGljZSIKCiM6IGNnX3ByaW50LmM6OTcKIywgYy1mb3JtYXQKbXNnaWQgIiV0aW1lIgptc2dzdHIgIiV0aWVtcG8iCgojOiBjZ19wcmludC5jOjk3IGNnX3ByaW50LmM6OTgKbXNnaWQgInNlbGYiCm1zZ3N0ciAic+0gbWlzbW8iCgojOiBjZ19wcmludC5jOjk3Cm1zZ2lkICJkZXNjZW5kYW50cyIKbXNnc3RyICJkZXNjZW5kaWVudGVzIgoKIzogY2dfcHJpbnQuYzo5OCBoaXN0LmM6Mzg5Cm1zZ2lkICJuYW1lIgptc2dzdHIgIm5vbWJyZSIKCiM6IGNnX3ByaW50LmM6MTAwCm1zZ2lkICJjaGlsZHJlbiIKbXNnc3RyICJoaWpvcyIKCiM6IGNnX3ByaW50LmM6MTA1CiMsIGMtZm9ybWF0Cm1zZ2lkICJpbmRleCAlJSB0aW1lICAgIHNlbGYgIGNoaWxkcmVuICAgIGNhbGxlZCAgICAgbmFtZVxuIgptc2dzdHIgImluZCAgICUlIHRpZW1wbyAgc+1fbWlzbW8gaGlqb3MgICAgbGxhbWFkbyAgICBub21icmVcbiIKCiM6IGNnX3ByaW50LmM6MTI5CiMsIGMtZm9ybWF0Cm1zZ2lkICIgPGN5Y2xlICVkIGFzIGEgd2hvbGU+IFslZF1cbiIKbXNnc3RyICIgPGNpY2xvICVkIGNvbW8gdW4gdG9kbz4gWyVkXVxuIgoKIzogY2dfcHJpbnQuYzozNjMKIywgYy1mb3JtYXQKbXNnaWQgIiU2LjZzICU1LjVzICU3LjdzICUxMS4xMXMgJTcuN3MgJTcuN3MgICAgIDxzcG9udGFuZW91cz5cbiIKbXNnc3RyICIlNi42cyAlNS41cyAlNy43cyAlMTEuMTFzICU3LjdzICU3LjdzICAgICA8ZXNwb2504W5lb3M+XG4iCgojOiBjZ19wcmludC5jOjM2NAojLCBjLWZvcm1hdAptc2dpZCAiJTYuNnMgJTUuNXMgJTcuN3MgJTcuN3MgJTcuN3MgJTcuN3MgICAgIDxzcG9udGFuZW91cz5cbiIKbXNnc3RyICIlNi42cyAlNS41cyAlNy43cyAlMTEuMTFzICU3LjdzICU3LjdzICAgPGVzcG9udOFuZW9zPlxuIgoKIzogY2dfcHJpbnQuYzo2MDQKbXNnaWQgIiIKIkluZGV4IGJ5IGZ1bmN0aW9uIG5hbWVcbiIKIlxuIgptc2dzdHIgIiIKIs1uZGljZSBwb3Igbm9tYnJlIGRlIGZ1bmNp825cbiIKIlxuIgoKIzogY2dfcHJpbnQuYzo2NjEgY2dfcHJpbnQuYzo2NzAKIywgYy1mb3JtYXQKbXNnaWQgIjxjeWNsZSAlZD4iCm1zZ3N0ciAiPGNpY2xvICVkPiIKCiM6IGNvcmVmaWxlLmM6NjQKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBjb3VsZCBub3Qgb3BlbiAlcy5cbiIKbXNnc3RyICIlczogbm8gc2UgcHVlZGUgYWJyaXIgJXMuXG4iCgojOiBjb3JlZmlsZS5jOjc4IGNvcmVmaWxlLmM6MTEyCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogdW5hYmxlIHRvIHBhcnNlIG1hcHBpbmcgZmlsZSAlcy5cbiIKbXNnc3RyICIlczogbm8gc2UgcHVlZGUgZGVjb2RpZmljYXIgZWwgZmljaGVybyBkZSBtYXBlbyAlcy5cbiIKCiM6IGNvcmVmaWxlLmM6MTU1CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogJXM6IG5vdCBpbiBhLm91dCBmb3JtYXRcbiIKbXNnc3RyICIlczogJXM6IG5vIGVzdOEgZW4gZWwgZm9ybWF0byBhLm91dFxuIgoKIzogY29yZWZpbGUuYzoxNjYKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBjYW4ndCBmaW5kIC50ZXh0IHNlY3Rpb24gaW4gJXNcbiIKbXNnc3RyICIlczogbm8gc2UgcHVlZGUgZW5jb250cmFyIGxhIHNlY2Np824gLnRleHQgZW4gJXNcbiIKCiM6IGNvcmVmaWxlLmM6MjI1CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogcmFuIG91dCByb29tIGZvciAlbHUgYnl0ZXMgb2YgdGV4dCBzcGFjZVxuIgptc2dzdHIgIiVzOiBzZSB0ZXJtaW7zIGVsIGVzcGFjaW8gcGFyYSAlbHUgYnl0ZXMgZGUgZXNwYWNpbyBkZSB0ZXh0b1xuIgoKIzogY29yZWZpbGUuYzoyMzkKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBjYW4ndCBkbyAtY1xuIgptc2dzdHIgIiVzOiBubyBzZSBwdWVkZSBoYWNlciAtY1xuIgoKIzogY29yZWZpbGUuYzoyNzYKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiAtYyBub3Qgc3VwcG9ydGVkIG9uIGFyY2hpdGVjdHVyZSAlc1xuIgptc2dzdHIgIiVzOiAtYyBubyB0aWVuZSBzb3BvcnRlIGVuIGxhIGFycXVpdGVjdHVyYSAlc1xuIgoKIzogY29yZWZpbGUuYzo0NDcKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBmaWxlIGAlcycgaGFzIG5vIHN5bWJvbHNcbiIKbXNnc3RyICIlczogZWwgZmljaGVybyBgJXMnIG5vIHRpZW5lIHPtbWJvbG9zXG4iCgojOiBjb3JlZmlsZS5jOjc1OAojLCBjLWZvcm1hdAptc2dpZCAiJXM6IHNvbWVib2R5IG1pc2NvdW50ZWQ6IGx0YWIubGVuPSVkIGluc3RlYWQgb2YgJWxkXG4iCm1zZ3N0ciAiJXM6IGFsZ3VpZW4gY29udPMgbWFsOiBsdGFiLmxlbj0lZCBlbiBsdWdhciBkZSAlbGRcbiIKCiM6IGdtb25faW8uYzo4MgojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGFkZHJlc3Mgc2l6ZSBoYXMgdW5leHBlY3RlZCB2YWx1ZSBvZiAldVxuIgptc2dzdHIgIiVzOiBlbCB0YW1h8W8gZGUgbGEgZGlyZWNjafNuIHRpZW5lIHVuIHZhbG9yIGluZXNwZXJhZG8gZGUgJXVcbiIKCiM6IGdtb25faW8uYzozNDUgZ21vbl9pby5jOjQ0MAojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGZpbGUgdG9vIHNob3J0IHRvIGJlIGEgZ21vbiBmaWxlXG4iCm1zZ3N0ciAiJXM6IGVsIGZpY2hlcm8gZXMgbXV5IGNvcnRvIHBhcmEgc2VyIHVuIGZpY2hlcm8gZ21vblxuIgoKIzogZ21vbl9pby5jOjM1NSBnbW9uX2lvLmM6NDgzCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogZmlsZSBgJXMnIGhhcyBiYWQgbWFnaWMgY29va2llXG4iCm1zZ3N0ciAiJXM6IGVsIGZpY2hlcm8gYCVzJyB0aWVuZSB1bmEgZ2FsbGV0YSBt4WdpY2EgZXJy825lYVxuIgoKIzogZ21vbl9pby5jOjM2NgojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGZpbGUgYCVzJyBoYXMgdW5zdXBwb3J0ZWQgdmVyc2lvbiAlZFxuIgptc2dzdHIgIiVzOiBlbCBmaWNoZXJvIGAlcycgdGllbmUgbGEgdmVyc2lvbiAlZCBxdWUgbm8gdGllbmUgc29wb3J0ZVxuIgoKIzogZ21vbl9pby5jOjM5NgojLCBjLWZvcm1hdAptc2dpZCAiJXM6ICVzOiBmb3VuZCBiYWQgdGFnICVkIChmaWxlIGNvcnJ1cHRlZD8pXG4iCm1zZ3N0ciAiJXM6ICVzOiBzZSBlbmNvbnRy8yBsYSBtYXJjYSBlcnLzbmVhICVkICi/ZmljaGVybyBjb3JydXB0bz8pXG4iCgojOiBnbW9uX2lvLmM6NDYyCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogcHJvZmlsaW5nIHJhdGUgaW5jb21wYXRpYmxlIHdpdGggZmlyc3QgZ21vbiBmaWxlXG4iCm1zZ3N0ciAiJXM6IHRhc2EgZGUgYW7hbGlzaXMgZGUgcGVyZmlsIGluY29tcGF0aWJsZSBjb24gZWwgcHJpbWVyIGZpY2hlcm8gZ21vblxuIgoKIzogZ21vbl9pby5jOjUxMAojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGluY29tcGF0aWJsZSB3aXRoIGZpcnN0IGdtb24gZmlsZVxuIgptc2dzdHIgIiVzOiBpbmNvbXBhdGlibGUgY29uIGVsIHByaW1lciBmaWNoZXJvIGdtb25cbiIKCiM6IGdtb25faW8uYzo1MzgKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBmaWxlICclcycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGluIGdtb24ub3V0IGZvcm1hdFxuIgptc2dzdHIgIiVzOiBlbCBmaWNoZXJvICclcycgbm8gcGFyZWNlIGVzdGFyIGVuIGVsIGZvcm1hdG8gZ21vbi5vdXRcbiIKCiMgRklYTUU6IGNvbXByb2JhciBjb24gZWwgY/NkaWdvIHNpIGJpbnMgZXMgYWJyZXZpYXR1cmEgZGUgYmluYXJpb3MgbwojIHNlIHJlZmllcmUgYSBsYSBkZW5vbWluYWNp824gaW5nbGVzYSBkZSAncGFwZWxlcmEnLiBjZnVnYQojOiBnbW9uX2lvLmM6NTU5CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogdW5leHBlY3RlZCBFT0YgYWZ0ZXIgcmVhZGluZyAlZC8lZCBiaW5zXG4iCm1zZ3N0ciAiJXM6IGZpbiBkZSBmaWNoZXJvIGluZXNwZXJhZG8gZGVzcHXpcyBkZSBsZWVyICVkLyVkIGJpbmFyaW9zXG4iCgojOiBnbW9uX2lvLmM6NTkyCm1zZ2lkICJ0aW1lIGlzIGluIHRpY2tzLCBub3Qgc2Vjb25kc1xuIgptc2dzdHIgImVsIHRpZW1wbyBlc3ThIGVuIHRpY3MsIG5vIGVuIHNlZ3VuZG9zXG4iCgojOiBnbW9uX2lvLmM6NTk4IGdtb25faW8uYzo3NzUKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBkb24ndCBrbm93IGhvdyB0byBkZWFsIHdpdGggZmlsZSBmb3JtYXQgJWRcbiIKbXNnc3RyICIlczogc2UgZGVzY29ub2NlIGPzbW8gbGlkaWFyIGNvbiBlbCBmaWNoZXJvIGRlIGZvcm1hdG8gJWRcbiIKCiM6IGdtb25faW8uYzo2MDUKIywgYy1mb3JtYXQKbXNnaWQgIkZpbGUgYCVzJyAodmVyc2lvbiAlZCkgY29udGFpbnM6XG4iCm1zZ3N0ciAiRWwgZmljaGVybyBgJXMnICh2ZXJzafNuICVkKSBjb250aWVuZTpcbiIKCiM6IGdtb25faW8uYzo2MDgKIywgYy1mb3JtYXQKbXNnaWQgIlx0JWQgaGlzdG9ncmFtIHJlY29yZFxuIgptc2dzdHIgIlx0JWQgcmVnaXN0cm8gZGUgaGlzdG9ncmFtYVxuIgoKIzogZ21vbl9pby5jOjYwOQojLCBjLWZvcm1hdAptc2dpZCAiXHQlZCBoaXN0b2dyYW0gcmVjb3Jkc1xuIgptc2dzdHIgIlx0JWQgcmVnaXN0cm9zIGRlIGhpc3RvZ3JhbWFzXG4iCgojOiBnbW9uX2lvLmM6NjExCiMsIGMtZm9ybWF0Cm1zZ2lkICJcdCVkIGNhbGwtZ3JhcGggcmVjb3JkXG4iCm1zZ3N0ciAiXHQlZCByZWdpc3RybyBkZSBncuFmaWNvIGRlIGxsYW1hZGFzXG4iCgojOiBnbW9uX2lvLmM6NjEyCiMsIGMtZm9ybWF0Cm1zZ2lkICJcdCVkIGNhbGwtZ3JhcGggcmVjb3Jkc1xuIgptc2dzdHIgIlx0JWQgcmVnaXN0cm9zIGRlIGdy4WZpY29zIGRlIGxsYW1hZGFzXG4iCgojOiBnbW9uX2lvLmM6NjE0CiMsIGMtZm9ybWF0Cm1zZ2lkICJcdCVkIGJhc2ljLWJsb2NrIGNvdW50IHJlY29yZFxuIgptc2dzdHIgIlx0JWQgcmVnaXN0cm8gZGUgY3VlbnRhIGRlIGJsb3F1ZXMgYuFzaWNvc1xuIgoKIzogZ21vbl9pby5jOjYxNQojLCBjLWZvcm1hdAptc2dpZCAiXHQlZCBiYXNpYy1ibG9jayBjb3VudCByZWNvcmRzXG4iCm1zZ3N0ciAiXHQlZCByZWdpc3Ryb3MgZGUgY3VlbnRhcyBkZSBibG9xdWVzIGLhc2ljb3NcbiIKCiM6IGdwcm9mLmM6MTYzCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJVc2FnZTogJXMgWy1bYWJjRGhpbExzVHZ3eHl6XV0gWy1bQUNlRWZGSm5OT3BQcVFaXVtuYW1lXV0gWy1JIGRpcnNdXG4iCiJcdFstZFtudW1dXSBbLWsgZnJvbS90b10gWy1tIG1pbi1jb3VudF0gWy10IHRhYmxlLWxlbmd0aF1cbiIKIlx0Wy0tW25vLV1hbm5vdGF0ZWQtc291cmNlWz1uYW1lXV0gWy0tW25vLV1leGVjLWNvdW50c1s9bmFtZV1dXG4iCiJcdFstLVtuby1dZmxhdC1wcm9maWxlWz1uYW1lXV0gWy0tW25vLV1ncmFwaFs9bmFtZV1dXG4iCiJcdFstLVtuby1ddGltZT1uYW1lXSBbLS1hbGwtbGluZXNdIFstLWJyaWVmXSBbLS1kZWJ1Z1s9bGV2ZWxdXVxuIgoiXHRbLS1mdW5jdGlvbi1vcmRlcmluZ10gWy0tZmlsZS1vcmRlcmluZ11cbiIKIlx0Wy0tZGlyZWN0b3J5LXBhdGg9ZGlyc10gWy0tZGlzcGxheS11bnVzZWQtZnVuY3Rpb25zXVxuIgoiXHRbLS1maWxlLWZvcm1hdD1uYW1lXSBbLS1maWxlLWluZm9dIFstLWhlbHBdIFstLWxpbmVdIFstLW1pbi1jb3VudD1uXVxuIgoiXHRbLS1uby1zdGF0aWNdIFstLXByaW50LXBhdGhdIFstLXNlcGFyYXRlLWZpbGVzXVxuIgoiXHRbLS1zdGF0aWMtY2FsbC1ncmFwaF0gWy0tc3VtXSBbLS10YWJsZS1sZW5ndGg9bGVuXSBbLS10cmFkaXRpb25hbF1cbiIKIlx0Wy0tdmVyc2lvbl0gWy0td2lkdGg9bl0gWy0taWdub3JlLW5vbi1mdW5jdGlvbnNdXG4iCiJcdFstLWRlbWFuZ2xlWz1TVFlMRV1dIFstLW5vLWRlbWFuZ2xlXVxuIgoiXHRbaW1hZ2UtZmlsZV0gW3Byb2ZpbGUtZmlsZS4uLl1cbiIKbXNnc3RyICIiCiJNb2RvIGRlIGVtcGxlbzogJXMgWy1bYWJjRGhpbExzVHZ3eHl6XV0gWy1bQUNlRWZGSm5OT3BQcVFaXVtub21icmVdXSBbLUkgZGlyc11cbiIKIlx0Wy1kW251bV1dIFstayBkZS9hXSBbLW0gY3VlbnRhLW1pbl0gWy10IGxvbmdpdHVkLXRhYmxhXVxuIgoiXHRbLS1bbm8tXWFubm90YXRlZC1zb3VyY2VbPW5vbWJyZV1dIFstLVtuby1dZXhlYy1jb3VudHNbPW5vbWJyZV1dXG4iCiJcdFstLVtuby1dZmxhdC1wcm9maWxlWz1ub21icmVdXSBbLS1bbm8tXWdyYXBoWz1ub21icmVdXVxuIgoiXHRbLS1bbm8tXXRpbWU9bm9tYnJlXSBbLS1hbGwtbGluZXNdIFstLWJyaWVmXSBbLS1kZWJ1Z1s9bml2ZWxdXVxuIgoiXHRbLS1mdW5jdGlvbi1vcmRlcmluZ10gWy0tZmlsZS1vcmRlcmluZ11cbiIKIlx0Wy0tZGlyZWN0b3J5LXBhdGg9ZGlyc10gWy0tZGlzcGxheS11bnVzZWQtZnVuY3Rpb25zXVxuIgoiXHRbLS1maWxlLWZvcm1hdD1ub21icmVdIFstLWZpbGUtaW5mb10gWy0taGVscF0gWy0tbGluZV0gWy0tbWluLWNvdW50PW5dXG4iCiJcdFstLW5vLXN0YXRpY10gWy0tcHJpbnQtcGF0aF0gWy0tc2VwYXJhdGUtZmlsZXNdXG4iCiJcdFstLXN0YXRpYy1jYWxsLWdyYXBoXSBbLS1zdW1dIFstLXRhYmxlLWxlbmd0aD1sb25nXSBbLS10cmFkaXRpb25hbF1cbiIKIlx0Wy0tdmVyc2lvbl0gWy0td2lkdGg9bl0gWy0taWdub3JlLW5vbi1mdW5jdGlvbnNdXG4iCiJcdFstLWRlbWFuZ2xlWz1FU1RJTE9dXSBbLS1uby1kZW1hbmdsZV1cbiIKIlx0W2ZpY2hlcm8taW1hZ2VuXSBbZmljaGVyby1wZXJmaWwuLi5dXG4iCgojOiBncHJvZi5jOjE3OQojLCBjLWZvcm1hdAptc2dpZCAiUmVwb3J0IGJ1Z3MgdG8gJXNcbiIKbXNnc3RyICJSZXBvcnRhciBiaWNob3MgYSAlc1xuIgoKIzogZ3Byb2YuYzoyNTMKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBkZWJ1Z2dpbmcgbm90IHN1cHBvcnRlZDsgLWQgaWdub3JlZFxuIgptc2dzdHIgIiVzOiBubyBoYXkgc29wb3J0ZSBwYXJhIGRlcHVyYWNp8247IHNlIGlnbm9yYSAtZFxuIgoKIzogZ3Byb2YuYzozMzMKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiB1bmtub3duIGZpbGUgZm9ybWF0ICVzXG4iCm1zZ3N0ciAiJXM6IGZvcm1hdG8gZGUgZmljaGVybyAlcyBkZXNjb25vY2lkb1xuIgoKIy4gVGhpcyBvdXRwdXQgaXMgaW50ZW5kZWQgdG8gZm9sbG93IHRoZSBHTlUgc3RhbmRhcmRzIGRvY3VtZW50LgojOiBncHJvZi5jOjQxNwojLCBjLWZvcm1hdAptc2dpZCAiR05VIGdwcm9mICVzXG4iCm1zZ3N0ciAiR05VIGdwcm9mICVzXG4iCgojOiBncHJvZi5jOjQxOAptc2dpZCAiQmFzZWQgb24gQlNEIGdwcm9mLCBjb3B5cmlnaHQgMTk4MyBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuXG4iCm1zZ3N0ciAiQmFzYWRvIGVuIGdwcm9mIGRlIEJTRCwgY29weXJpZ2h0IDE5ODMgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLlxuIgoKIzogZ3Byb2YuYzo0MTkKbXNnaWQgIlRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlLiAgVGhpcyBwcm9ncmFtIGhhcyBhYnNvbHV0ZWx5IG5vIHdhcnJhbnR5LlxuIgptc2dzdHIgIkVzdGUgcHJvZ3JhbWEgZXMgc29mdHdhcmUgbGlicmUuICBFc3RlIHByb2dyYW1hIG5vIHRpZW5lIG5pbmd1bmEgZ2FyYW507WEgZW4gbG8gYWJzb2x1dG8uXG4iCgojOiBncHJvZi5jOjQ2MAojLCBjLWZvcm1hdAptc2dpZCAiJXM6IHVua25vd24gZGVtYW5nbGluZyBzdHlsZSBgJXMnXG4iCm1zZ3N0ciAiJXM6IGVzdGlsbyBkZSBkZXNlbnJlZG8gZGVzY29ub2NpZG8gYCVzJ1xuIgoKIzogZ3Byb2YuYzo0ODAKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBPbmx5IG9uZSBvZiAtLWZ1bmN0aW9uLW9yZGVyaW5nIGFuZCAtLWZpbGUtb3JkZXJpbmcgbWF5IGJlIHNwZWNpZmllZC5cbiIKbXNnc3RyICIlczogU/NsbyBzZSBwdWVkZSBlc3BlY2lmaWNhciB1bm8gZGUgLS1mdW5jdGlvbi1vcmRlcmluZyB5IC0tZmlsZS1vcmRlcmluZy5cbiIKCiM6IGdwcm9mLmM6NTc4CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogc29ycnksIGZpbGUgZm9ybWF0IGBwcm9mJyBpcyBub3QgeWV0IHN1cHBvcnRlZFxuIgptc2dzdHIgIiVzOiBwZXJk824sIGVsIGZvcm1hdG8gZGUgZmljaGVybyBgcHJvZicgYfpuIG5vIHRpZW5lIHNvcG9ydGVcbiIKCiM6IGdwcm9mLmM6NjM5CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogZ21vbi5vdXQgZmlsZSBpcyBtaXNzaW5nIGhpc3RvZ3JhbVxuIgptc2dzdHIgIiVzOiBhbCBmaWNoZXJvIGdtb24ub3V0IGxlIGZhbHRhIGVsIGhpc3RvZ3JhbWFcbiIKCiM6IGdwcm9mLmM6NjQ2CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogZ21vbi5vdXQgZmlsZSBpcyBtaXNzaW5nIGNhbGwtZ3JhcGggZGF0YVxuIgptc2dzdHIgIiVzOiBhbCBmaWNoZXJvIGdtb24ub3V0IGxlIGZhbHRhIGxvcyBkYXRvcyBkZWwgZ3LhZmljbyBkZSBsbGFtYWRhc1xuIgoKIzogaGlzdC5jOjEyNwojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGAlcycgaXMgaW5jb21wYXRpYmxlIHdpdGggZmlyc3QgZ21vbiBmaWxlXG4iCm1zZ3N0ciAiJXM6IGAlcycgZXMgaW5jb21wYXRpYmxlIGNvbiBlbCBwcmltZXIgZmljaGVybyBnbW9uXG4iCgojOiBoaXN0LmM6MTQzCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogJXM6IHVuZXhwZWN0ZWQgRU9GIGFmdGVyIHJlYWRpbmcgJWQgb2YgJWQgc2FtcGxlc1xuIgptc2dzdHIgIiVzOiAlczogZmluIGRlIGZpY2hlcm8gaW5lc3BlcmFkbyBkZXNwdelzIGRlIGxlZXIgJWQgZGUgJWQgbXVlc3RyYXNcbiIKCiM6IGhpc3QuYzozNTkKIywgYy1mb3JtYXQKbXNnaWQgIiVjJWMvY2FsbCIKbXNnc3RyICIlYyVjL2xsYW1hZGEiCgojOiBoaXN0LmM6MzY3CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiIgZm9yICUuMmYlJSBvZiAlLjJmICVzXG4iCiJcbiIKbXNnc3RyICIiCiIgcGFyYSAlLjJmJSUgZGUgJS4yZiAlc1xuIgoiXG4iCgojOiBoaXN0LmM6MzczCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIkVhY2ggc2FtcGxlIGNvdW50cyBhcyAlZyAlcy5cbiIKbXNnc3RyICIiCiJcbiIKIkNhZGEgbXVlc3RyYSBjdWVudGEgY29tbyAlZyAlcy5cbiIKCiM6IGhpc3QuYzozNzgKbXNnaWQgIiIKIiBubyB0aW1lIGFjY3VtdWxhdGVkXG4iCiJcbiIKbXNnc3RyICIiCiIgbm8gaGF5IHRpZW1wbyBhY3VtdWxhZG9cbiIKIlxuIgoKIzogaGlzdC5jOjM4NQptc2dpZCAiY3VtdWxhdGl2ZSIKbXNnc3RyICJjdW11bGF0aXZvIgoKIzogaGlzdC5jOjM4NQptc2dpZCAic2VsZiAgIgptc2dzdHIgInPtIG1pc21vICAiCgojOiBoaXN0LmM6Mzg1Cm1zZ2lkICJ0b3RhbCAiCm1zZ3N0ciAidG90YWwgIgoKIzogaGlzdC5jOjM4OAptc2dpZCAidGltZSIKbXNnc3RyICJ0aWVtcG8iCgojOiBoaXN0LmM6Mzg4Cm1zZ2lkICJjYWxscyIKbXNnc3RyICJsbGFtYWRhcyIKCiM6IGhpc3QuYzo0ODEKbXNnaWQgIiIKIlxuIgoiXG4iCiJcbiIKImZsYXQgcHJvZmlsZTpcbiIKbXNnc3RyICIiCiJcbiIKIlxuIgoiXG4iCiJwZXJmaWwgcGxhbm86XG4iCgojOiBoaXN0LmM6NDg3Cm1zZ2lkICJGbGF0IHByb2ZpbGU6XG4iCm1zZ3N0ciAiUGVyZmlsIHBsYW5vOlxuIgoKIzogbWlwcy5jOjg1CiMsIGMtZm9ybWF0Cm1zZ2lkICJbZmluZF9jYWxsXSAweCVseDogamFsIgptc2dzdHIgIltmaW5kX2NhbGxdIDB4JWx4OiBqYWwiCgojOiBtaXBzLmM6MTEwCiMsIGMtZm9ybWF0Cm1zZ2lkICJbZmluZF9jYWxsXSAweCVseDogamFsclxuIgptc2dzdHIgIltmaW5kX2NhbGxdIDB4JWx4OiBqYWxyXG4iCgojOiBzb3VyY2UuYzoxNjYKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBjb3VsZCBub3QgbG9jYXRlIGAlcydcbiIKbXNnc3RyICIlczogbm8gc2UgcHVlZGUgZW5jb250cmFyIGAlcydcbiIKCiM6IHNvdXJjZS5jOjI0MQojLCBjLWZvcm1hdAptc2dpZCAiKioqIEZpbGUgJXM6XG4iCm1zZ3N0ciAiKioqIEZpY2hlcm8gJXM6XG4iCgojOiB1dGlscy5jOjEwOQojLCBjLWZvcm1hdAptc2dpZCAiIDxjeWNsZSAlZD4iCm1zZ3N0ciAiIDxjaWNsbyAlZD4iCgojfiBtc2dpZCAiJXM6IGJmZF92bWEgaGFzIHVuZXhwZWN0ZWQgc2l6ZSBvZiAlbGQgYnl0ZXNcbiIKI34gbXNnc3RyICIlczogYmZkX3ZtYSB0aWVuZSB1biB0YW1h8W8gaW5lc3BlcmFkbyBkZSAlbGQgYnl0ZXNcbiIK