IyBNZW5zYWplcyBlbiBlc3Bh8W9sIHBhcmEgZ3Byb2YgMi4xNi45My4KIyBDb3B5cmlnaHQgKEMpIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMgQ3Jpc3RpYW4gT3Ro824gTWFydO1uZXogVmVyYSA8Y2Z1Z2FAaXRhbS5teD4sIDIwMDIsIDIwMDMsIDIwMDQsIDIwMDUsIDIwMDYuCiMKbXNnaWQgIiIKbXNnc3RyICIiCiJQcm9qZWN0LUlkLVZlcnNpb246IGdwcm9mIDIuMTYuOTNcbiIKIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBcbiIKIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDA1LTEwLTAxIDA3OjIzKzA5MzBcbiIKIlBPLVJldmlzaW9uLURhdGU6IDIwMDYtMDUtMjYgMTM6MTYtMDUwMFxuIgoiTGFzdC1UcmFuc2xhdG9yOiBDcmlzdGlhbiBPdGjzbiBNYXJ07W5leiBWZXJhIDxjZnVnYUBpdGFtLm14PlxuIgoiTGFuZ3VhZ2UtVGVhbTogU3BhbmlzaCA8ZXNAbGkub3JnPlxuIgoiTUlNRS1WZXJzaW9uOiAxLjBcbiIKIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1JU08tODg1OS0xXG4iCiJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCgojOiBhbHBoYS5jOjEwMiBtaXBzLmM6NTQKbXNnaWQgIjxpbmRpcmVjdCBjaGlsZD4iCm1zZ3N0ciAiPGhpam8gaW5kaXJlY3RvPiIKCiM6IGFscGhhLmM6MTE5IG1pcHMuYzo3MQojLCBjLWZvcm1hdAptc2dpZCAiW2ZpbmRfY2FsbF0gJXM6IDB4JWx4IHRvIDB4JWx4XG4iCm1zZ3N0ciAiW2ZpbmRfY2FsbF0gJXM6IDB4JWx4IGEgMHglbHhcbiIKCiM6IGFscGhhLmM6MTQxCiMsIGMtZm9ybWF0Cm1zZ2lkICJbZmluZF9jYWxsXSAweCVseDoganNyJXMgPGluZGlyZWN0X2NoaWxkPlxuIgptc2dzdHIgIltmaW5kX2NhbGxdIDB4JWx4OiBqc3IlcyA8aGlqb19pbmRpcmVjdG8+XG4iCgojOiBhbHBoYS5jOjE1MQojLCBjLWZvcm1hdAptc2dpZCAiW2ZpbmRfY2FsbF0gMHglbHg6IGJzciIKbXNnc3RyICJbZmluZF9jYWxsXSAweCVseDogYnNyIgoKIzogYmFzaWNfYmxvY2tzLmM6MTI4IGNhbGxfZ3JhcGguYzo4OSBoaXN0LmM6OTcKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiAlczogdW5leHBlY3RlZCBlbmQgb2YgZmlsZVxuIgptc2dzdHIgIiVzOiAlczogZmluIGRlIGZpY2hlcm8gaW5lc3BlcmFkb1xuIgoKIzogYmFzaWNfYmxvY2tzLmM6MTk2CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogd2FybmluZzogaWdub3JpbmcgYmFzaWMtYmxvY2sgZXhlYyBjb3VudHMgKHVzZSAtbCBvciAtLWxpbmUpXG4iCm1zZ3N0ciAiJXM6IGF2aXNvOiBpZ25vcmFuZG8gbGFzIGN1ZW50YXMgZGUgZWplY3VjafNuIGRlIGJsb3F1ZXMgYuFzaWNvcyAodXNlIC1sIG8gLS1saW5lKVxuIgoKIy4gRklYTUU6IFRoaXMgb25seSB3b3JrcyBpZiBiZmRfdm1hIGlzIHVuc2lnbmVkIGxvbmcuCiM6IGJhc2ljX2Jsb2Nrcy5jOjI4OSBiYXNpY19ibG9ja3MuYzoyOTkKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiVkOiAoJXM6MHglbHgpICVsdSBleGVjdXRpb25zXG4iCm1zZ3N0ciAiJXM6JWQ6ICglczoweCVseCkgJWx1IGVqZWN1Y2lvbmVzXG4iCgojOiBiYXNpY19ibG9ja3MuYzoyOTAgYmFzaWNfYmxvY2tzLmM6MzAwCm1zZ2lkICI8dW5rbm93bj4iCm1zZ3N0ciAiPGRlc2Nvbm9jaWRvPiIKCiM6IGJhc2ljX2Jsb2Nrcy5jOjU0MwojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJcbiIKIlRvcCAlZCBMaW5lczpcbiIKIlxuIgoiICAgICBMaW5lICAgICAgQ291bnRcbiIKIlxuIgptc2dzdHIgIiIKIlxuIgoiXG4iCiIlZCBM7W5lYXMgUHJpbmNpcGFsZXM6XG4iCiJcbiIKIiAgICAgTO1uZWEgICAgIEN1ZW50YVxuIgoiXG4iCgojOiBiYXNpY19ibG9ja3MuYzo1NjcKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiRXhlY3V0aW9uIFN1bW1hcnk6XG4iCiJcbiIKbXNnc3RyICIiCiJcbiIKIlJlc3VtZW4gZGUgRWplY3VjafNuOlxuIgoiXG4iCgojOiBiYXNpY19ibG9ja3MuYzo1NjgKIywgYy1mb3JtYXQKbXNnaWQgIiU5bGQgICBFeGVjdXRhYmxlIGxpbmVzIGluIHRoaXMgZmlsZVxuIgptc2dzdHIgIiU5bGQgICBM7W5lYXMgZWplY3V0YWJsZXMgZW4gZXN0ZSBmaWNoZXJvXG4iCgojOiBiYXNpY19ibG9ja3MuYzo1NzAKIywgYy1mb3JtYXQKbXNnaWQgIiU5bGQgICBMaW5lcyBleGVjdXRlZFxuIgptc2dzdHIgIiU5bGQgICBM7W5lYXMgZWplY3V0YWRhc1xuIgoKIzogYmFzaWNfYmxvY2tzLmM6NTcxCiMsIGMtZm9ybWF0Cm1zZ2lkICIlOS4yZiAgIFBlcmNlbnQgb2YgdGhlIGZpbGUgZXhlY3V0ZWRcbiIKbXNnc3RyICIlOS4yZiAgIFBvcmNlbnRhamUgZWplY3V0YWRvIGRlbCBmaWNoZXJvXG4iCgojOiBiYXNpY19ibG9ja3MuYzo1NzUKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiJTlsdSAgIFRvdGFsIG51bWJlciBvZiBsaW5lIGV4ZWN1dGlvbnNcbiIKbXNnc3RyICIiCiJcbiIKIiU5bHUgICBO+m1lcm8gdG90YWwgZGUgZWplY3VjaW9uZXMgZGUgbO1uZWFcbiIKCiM6IGJhc2ljX2Jsb2Nrcy5jOjU3NwojLCBjLWZvcm1hdAptc2dpZCAiJTkuMmYgICBBdmVyYWdlIGV4ZWN1dGlvbnMgcGVyIGxpbmVcbiIKbXNnc3RyICIlOS4yZiAgIEVqZWN1Y2lvbmVzIHByb21lZGlvIHBvciBs7W5lYVxuIgoKIzogY2FsbF9ncmFwaC5jOjY4CiMsIGMtZm9ybWF0Cm1zZ2lkICJbY2dfdGFsbHldIGFyYyBmcm9tICVzIHRvICVzIHRyYXZlcnNlZCAlbHUgdGltZXNcbiIKbXNnc3RyICJbY2dfdGFsbHldIGFyY28gZGVzZGUgJXMgaGFzdGEgJXMgcmVjb3JyaWRvICVsdSB2ZWNlc1xuIgoKIzogY2dfcHJpbnQuYzo3MwojLCBjLWZvcm1hdAptc2dpZCAiIgoiXHRcdCAgICAgQ2FsbCBncmFwaCAoZXhwbGFuYXRpb24gZm9sbG93cylcbiIKIlxuIgptc2dzdHIgIiIKIlx0XHQgICAgIEdy4WZpY28gZGUgbGxhbWFkYXMgKGV4cGxpY2FjafNuIGEgY29udGludWFjafNuKVxuIgoiXG4iCgojOiBjZ19wcmludC5jOjc1CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcdFx0XHRDYWxsIGdyYXBoXG4iCiJcbiIKbXNnc3RyICIiCiJcdFx0XHRHcuFmaWNvIGRlIGxsYW1hZGFzXG4iCiJcbiIKCiM6IGNnX3ByaW50LmM6NzggaGlzdC5jOjM1OQojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJncmFudWxhcml0eTogZWFjaCBzYW1wbGUgaGl0IGNvdmVycyAlbGQgYnl0ZShzKSIKbXNnc3RyICIiCiJcbiIKImdyYW51bGFyaWRhZDogY2FkYSBlbGVtZW50byBkZSBtdWVzdHJhIGN1YnJlICVsZCBieXRlKHMpIgoKIzogY2dfcHJpbnQuYzo4MgojLCBjLWZvcm1hdAptc2dpZCAiIgoiIGZvciAlLjJmJSUgb2YgJS4yZiBzZWNvbmRzXG4iCiJcbiIKbXNnc3RyICIiCiIgcGFyYSAlLjJmJSUgZGUgJS4yZiBzZWd1bmRvc1xuIgoiXG4iCgojOiBjZ19wcmludC5jOjg2CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiIgbm8gdGltZSBwcm9wYWdhdGVkXG4iCiJcbiIKbXNnc3RyICIiCiIgbm8gaGF5IHRpZW1wbyBwcm9wYWdhZG9cbiIKIlxuIgoKIzogY2dfcHJpbnQuYzo5NSBjZ19wcmludC5jOjk4IGNnX3ByaW50LmM6MTAwCm1zZ2lkICJjYWxsZWQiCm1zZ3N0ciAibGxhbWFkbyIKCiM6IGNnX3ByaW50LmM6OTUgY2dfcHJpbnQuYzoxMDAKbXNnaWQgInRvdGFsIgptc2dzdHIgInRvdGFsIgoKIzogY2dfcHJpbnQuYzo5NQptc2dpZCAicGFyZW50cyIKbXNnc3RyICJwYWRyZXMiCgojOiBjZ19wcmludC5jOjk3IGNnX3ByaW50LmM6OTgKbXNnaWQgImluZGV4Igptc2dzdHIgIu1uZGljZSIKCiM6IGNnX3ByaW50LmM6OTcKIywgYy1mb3JtYXQKbXNnaWQgIiV0aW1lIgptc2dzdHIgIiV0aWVtcG8iCgojOiBjZ19wcmludC5jOjk3IGNnX3ByaW50LmM6OTgKbXNnaWQgInNlbGYiCm1zZ3N0ciAic+0gbWlzbW8iCgojOiBjZ19wcmludC5jOjk3Cm1zZ2lkICJkZXNjZW5kYW50cyIKbXNnc3RyICJkZXNjZW5kaWVudGVzIgoKIzogY2dfcHJpbnQuYzo5OCBoaXN0LmM6Mzg1Cm1zZ2lkICJuYW1lIgptc2dzdHIgIm5vbWJyZSIKCiM6IGNnX3ByaW50LmM6MTAwCm1zZ2lkICJjaGlsZHJlbiIKbXNnc3RyICJoaWpvcyIKCiM6IGNnX3ByaW50LmM6MTA1CiMsIGMtZm9ybWF0Cm1zZ2lkICJpbmRleCAlJSB0aW1lICAgIHNlbGYgIGNoaWxkcmVuICAgIGNhbGxlZCAgICAgbmFtZVxuIgptc2dzdHIgImluZCAgICUlIHRpZW1wbyAgc+1fbWlzbW8gaGlqb3MgICAgbGxhbWFkbyAgICBub21icmVcbiIKCiM6IGNnX3ByaW50LmM6MTI4CiMsIGMtZm9ybWF0Cm1zZ2lkICIgPGN5Y2xlICVkIGFzIGEgd2hvbGU+IFslZF1cbiIKbXNnc3RyICIgPGNpY2xvICVkIGNvbW8gdW4gdG9kbz4gWyVkXVxuIgoKIzogY2dfcHJpbnQuYzozNTQKIywgYy1mb3JtYXQKbXNnaWQgIiU2LjZzICU1LjVzICU3LjdzICUxMS4xMXMgJTcuN3MgJTcuN3MgICAgIDxzcG9udGFuZW91cz5cbiIKbXNnc3RyICIlNi42cyAlNS41cyAlNy43cyAlMTEuMTFzICU3LjdzICU3LjdzICAgICA8ZXNwb2504W5lb3M+XG4iCgojOiBjZ19wcmludC5jOjM1NQojLCBjLWZvcm1hdAptc2dpZCAiJTYuNnMgJTUuNXMgJTcuN3MgJTcuN3MgJTcuN3MgJTcuN3MgICAgIDxzcG9udGFuZW91cz5cbiIKbXNnc3RyICIlNi42cyAlNS41cyAlNy43cyAlMTEuMTFzICU3LjdzICU3LjdzICAgPGVzcG9udOFuZW9zPlxuIgoKIzogY2dfcHJpbnQuYzo1ODkKIywgYy1mb3JtYXQKbXNnaWQgIiIKIkluZGV4IGJ5IGZ1bmN0aW9uIG5hbWVcbiIKIlxuIgptc2dzdHIgIiIKIs1uZGljZSBwb3Igbm9tYnJlIGRlIGZ1bmNp825cbiIKIlxuIgoKIzogY2dfcHJpbnQuYzo2NDYgY2dfcHJpbnQuYzo2NTUKIywgYy1mb3JtYXQKbXNnaWQgIjxjeWNsZSAlZD4iCm1zZ3N0ciAiPGNpY2xvICVkPiIKCiM6IGNvcmVmaWxlLmM6NjQKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBjb3VsZCBub3Qgb3BlbiAlcy5cbiIKbXNnc3RyICIlczogbm8gc2UgcHVlZGUgYWJyaXIgJXMuXG4iCgojOiBjb3JlZmlsZS5jOjc4IGNvcmVmaWxlLmM6MTEyCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogdW5hYmxlIHRvIHBhcnNlIG1hcHBpbmcgZmlsZSAlcy5cbiIKbXNnc3RyICIlczogbm8gc2UgcHVlZGUgZGVjb2RpZmljYXIgZWwgZmljaGVybyBkZSBtYXBlbyAlcy5cbiIKCiM6IGNvcmVmaWxlLmM6MTU4CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogJXM6IG5vdCBpbiBhLm91dCBmb3JtYXRcbiIKbXNnc3RyICIlczogJXM6IG5vIGVzdOEgZW4gZWwgZm9ybWF0byBhLm91dFxuIgoKIzogY29yZWZpbGUuYzoxNjkKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBjYW4ndCBmaW5kIC50ZXh0IHNlY3Rpb24gaW4gJXNcbiIKbXNnc3RyICIlczogbm8gc2UgcHVlZGUgZW5jb250cmFyIGxhIHNlY2Np824gLnRleHQgZW4gJXNcbiIKCiM6IGNvcmVmaWxlLmM6MjQ0CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogcmFuIG91dCByb29tIGZvciAlbHUgYnl0ZXMgb2YgdGV4dCBzcGFjZVxuIgptc2dzdHIgIiVzOiBzZSB0ZXJtaW7zIGVsIGVzcGFjaW8gcGFyYSAlbHUgYnl0ZXMgZGUgZXNwYWNpbyBkZSB0ZXh0b1xuIgoKIzogY29yZWZpbGUuYzoyNTgKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBjYW4ndCBkbyAtY1xuIgptc2dzdHIgIiVzOiBubyBzZSBwdWVkZSBoYWNlciAtY1xuIgoKIzogY29yZWZpbGUuYzoyOTIKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiAtYyBub3Qgc3VwcG9ydGVkIG9uIGFyY2hpdGVjdHVyZSAlc1xuIgptc2dzdHIgIiVzOiAtYyBubyB0aWVuZSBzb3BvcnRlIGVuIGxhIGFycXVpdGVjdHVyYSAlc1xuIgoKIzogY29yZWZpbGUuYzo0NTcKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBmaWxlIGAlcycgaGFzIG5vIHN5bWJvbHNcbiIKbXNnc3RyICIlczogZWwgZmljaGVybyBgJXMnIG5vIHRpZW5lIHPtbWJvbG9zXG4iCgojOiBjb3JlZmlsZS5jOjc3MQojLCBjLWZvcm1hdAptc2dpZCAiJXM6IHNvbWVib2R5IG1pc2NvdW50ZWQ6IGx0YWIubGVuPSVkIGluc3RlYWQgb2YgJWxkXG4iCm1zZ3N0ciAiJXM6IGFsZ3VpZW4gY29udPMgbWFsOiBsdGFiLmxlbj0lZCBlbiBsdWdhciBkZSAlbGRcbiIKCiM6IGdtb25faW8uYzo4MwojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGFkZHJlc3Mgc2l6ZSBoYXMgdW5leHBlY3RlZCB2YWx1ZSBvZiAldVxuIgptc2dzdHIgIiVzOiBlbCB0YW1h8W8gZGUgbGEgZGlyZWNjafNuIHRpZW5lIHVuIHZhbG9yIGluZXNwZXJhZG8gZGUgJXVcbiIKCiM6IGdtb25faW8uYzozMjAgZ21vbl9pby5jOjQxNgojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGZpbGUgdG9vIHNob3J0IHRvIGJlIGEgZ21vbiBmaWxlXG4iCm1zZ3N0ciAiJXM6IGVsIGZpY2hlcm8gZXMgbXV5IGNvcnRvIHBhcmEgc2VyIHVuIGZpY2hlcm8gZ21vblxuIgoKIzogZ21vbl9pby5jOjMzMCBnbW9uX2lvLmM6NDU5CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogZmlsZSBgJXMnIGhhcyBiYWQgbWFnaWMgY29va2llXG4iCm1zZ3N0ciAiJXM6IGVsIGZpY2hlcm8gYCVzJyB0aWVuZSB1bmEgZ2FsbGV0YSBt4WdpY2EgZXJy825lYVxuIgoKIzogZ21vbl9pby5jOjM0MQojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGZpbGUgYCVzJyBoYXMgdW5zdXBwb3J0ZWQgdmVyc2lvbiAlZFxuIgptc2dzdHIgIiVzOiBlbCBmaWNoZXJvIGAlcycgdGllbmUgbGEgdmVyc2lvbiAlZCBxdWUgbm8gdGllbmUgc29wb3J0ZVxuIgoKIzogZ21vbl9pby5jOjM3MQojLCBjLWZvcm1hdAptc2dpZCAiJXM6ICVzOiBmb3VuZCBiYWQgdGFnICVkIChmaWxlIGNvcnJ1cHRlZD8pXG4iCm1zZ3N0ciAiJXM6ICVzOiBzZSBlbmNvbnRy8yBsYSBtYXJjYSBlcnLzbmVhICVkICi/ZmljaGVybyBjb3JydXB0bz8pXG4iCgojOiBnbW9uX2lvLmM6NDM4CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogcHJvZmlsaW5nIHJhdGUgaW5jb21wYXRpYmxlIHdpdGggZmlyc3QgZ21vbiBmaWxlXG4iCm1zZ3N0ciAiJXM6IHRhc2EgZGUgYW7hbGlzaXMgZGUgcGVyZmlsIGluY29tcGF0aWJsZSBjb24gZWwgcHJpbWVyIGZpY2hlcm8gZ21vblxuIgoKIzogZ21vbl9pby5jOjQ4NgojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGluY29tcGF0aWJsZSB3aXRoIGZpcnN0IGdtb24gZmlsZVxuIgptc2dzdHIgIiVzOiBpbmNvbXBhdGlibGUgY29uIGVsIHByaW1lciBmaWNoZXJvIGdtb25cbiIKCiM6IGdtb25faW8uYzo1MTQKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBmaWxlICclcycgZG9lcyBub3QgYXBwZWFyIHRvIGJlIGluIGdtb24ub3V0IGZvcm1hdFxuIgptc2dzdHIgIiVzOiBlbCBmaWNoZXJvICclcycgbm8gcGFyZWNlIGVzdGFyIGVuIGVsIGZvcm1hdG8gZ21vbi5vdXRcbiIKCiMgRklYTUU6IGNvbXByb2JhciBjb24gZWwgY/NkaWdvIHNpIGJpbnMgZXMgYWJyZXZpYXR1cmEgZGUgYmluYXJpb3MgbwojIHNlIHJlZmllcmUgYSBsYSBkZW5vbWluYWNp824gaW5nbGVzYSBkZSAncGFwZWxlcmEnLiBjZnVnYQojOiBnbW9uX2lvLmM6NTM1CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogdW5leHBlY3RlZCBFT0YgYWZ0ZXIgcmVhZGluZyAlZC8lZCBiaW5zXG4iCm1zZ3N0ciAiJXM6IGZpbiBkZSBmaWNoZXJvIGluZXNwZXJhZG8gZGVzcHXpcyBkZSBsZWVyICVkLyVkIGJpbmFyaW9zXG4iCgojOiBnbW9uX2lvLmM6NTY4CiMsIGMtZm9ybWF0Cm1zZ2lkICJ0aW1lIGlzIGluIHRpY2tzLCBub3Qgc2Vjb25kc1xuIgptc2dzdHIgImVsIHRpZW1wbyBlc3ThIGVuIHRpY3MsIG5vIGVuIHNlZ3VuZG9zXG4iCgojOiBnbW9uX2lvLmM6NTc0IGdtb25faW8uYzo3NTAKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBkb24ndCBrbm93IGhvdyB0byBkZWFsIHdpdGggZmlsZSBmb3JtYXQgJWRcbiIKbXNnc3RyICIlczogc2UgZGVzY29ub2NlIGPzbW8gbGlkaWFyIGNvbiBlbCBmaWNoZXJvIGRlIGZvcm1hdG8gJWRcbiIKCiM6IGdtb25faW8uYzo1ODEKIywgYy1mb3JtYXQKbXNnaWQgIkZpbGUgYCVzJyAodmVyc2lvbiAlZCkgY29udGFpbnM6XG4iCm1zZ3N0ciAiRWwgZmljaGVybyBgJXMnICh2ZXJzafNuICVkKSBjb250aWVuZTpcbiIKCiM6IGdtb25faW8uYzo1ODQKIywgYy1mb3JtYXQKbXNnaWQgIlx0JWQgaGlzdG9ncmFtIHJlY29yZFxuIgptc2dzdHIgIlx0JWQgcmVnaXN0cm8gZGUgaGlzdG9ncmFtYVxuIgoKIzogZ21vbl9pby5jOjU4NQojLCBjLWZvcm1hdAptc2dpZCAiXHQlZCBoaXN0b2dyYW0gcmVjb3Jkc1xuIgptc2dzdHIgIlx0JWQgcmVnaXN0cm9zIGRlIGhpc3RvZ3JhbWFzXG4iCgojOiBnbW9uX2lvLmM6NTg3CiMsIGMtZm9ybWF0Cm1zZ2lkICJcdCVkIGNhbGwtZ3JhcGggcmVjb3JkXG4iCm1zZ3N0ciAiXHQlZCByZWdpc3RybyBkZSBncuFmaWNvIGRlIGxsYW1hZGFzXG4iCgojOiBnbW9uX2lvLmM6NTg4CiMsIGMtZm9ybWF0Cm1zZ2lkICJcdCVkIGNhbGwtZ3JhcGggcmVjb3Jkc1xuIgptc2dzdHIgIlx0JWQgcmVnaXN0cm9zIGRlIGdy4WZpY29zIGRlIGxsYW1hZGFzXG4iCgojOiBnbW9uX2lvLmM6NTkwCiMsIGMtZm9ybWF0Cm1zZ2lkICJcdCVkIGJhc2ljLWJsb2NrIGNvdW50IHJlY29yZFxuIgptc2dzdHIgIlx0JWQgcmVnaXN0cm8gZGUgY3VlbnRhIGRlIGJsb3F1ZXMgYuFzaWNvc1xuIgoKIzogZ21vbl9pby5jOjU5MQojLCBjLWZvcm1hdAptc2dpZCAiXHQlZCBiYXNpYy1ibG9jayBjb3VudCByZWNvcmRzXG4iCm1zZ3N0ciAiXHQlZCByZWdpc3Ryb3MgZGUgY3VlbnRhcyBkZSBibG9xdWVzIGLhc2ljb3NcbiIKCiM6IGdwcm9mLmM6MTU4CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJVc2FnZTogJXMgWy1bYWJjRGhpbExzVHZ3eHl6XV0gWy1bQUNlRWZGSm5OT3BQcVFaXVtuYW1lXV0gWy1JIGRpcnNdXG4iCiJcdFstZFtudW1dXSBbLWsgZnJvbS90b10gWy1tIG1pbi1jb3VudF0gWy10IHRhYmxlLWxlbmd0aF1cbiIKIlx0Wy0tW25vLV1hbm5vdGF0ZWQtc291cmNlWz1uYW1lXV0gWy0tW25vLV1leGVjLWNvdW50c1s9bmFtZV1dXG4iCiJcdFstLVtuby1dZmxhdC1wcm9maWxlWz1uYW1lXV0gWy0tW25vLV1ncmFwaFs9bmFtZV1dXG4iCiJcdFstLVtuby1ddGltZT1uYW1lXSBbLS1hbGwtbGluZXNdIFstLWJyaWVmXSBbLS1kZWJ1Z1s9bGV2ZWxdXVxuIgoiXHRbLS1mdW5jdGlvbi1vcmRlcmluZ10gWy0tZmlsZS1vcmRlcmluZ11cbiIKIlx0Wy0tZGlyZWN0b3J5LXBhdGg9ZGlyc10gWy0tZGlzcGxheS11bnVzZWQtZnVuY3Rpb25zXVxuIgoiXHRbLS1maWxlLWZvcm1hdD1uYW1lXSBbLS1maWxlLWluZm9dIFstLWhlbHBdIFstLWxpbmVdIFstLW1pbi1jb3VudD1uXVxuIgoiXHRbLS1uby1zdGF0aWNdIFstLXByaW50LXBhdGhdIFstLXNlcGFyYXRlLWZpbGVzXVxuIgoiXHRbLS1zdGF0aWMtY2FsbC1ncmFwaF0gWy0tc3VtXSBbLS10YWJsZS1sZW5ndGg9bGVuXSBbLS10cmFkaXRpb25hbF1cbiIKIlx0Wy0tdmVyc2lvbl0gWy0td2lkdGg9bl0gWy0taWdub3JlLW5vbi1mdW5jdGlvbnNdXG4iCiJcdFstLWRlbWFuZ2xlWz1TVFlMRV1dIFstLW5vLWRlbWFuZ2xlXVxuIgoiXHRbaW1hZ2UtZmlsZV0gW3Byb2ZpbGUtZmlsZS4uLl1cbiIKbXNnc3RyICIiCiJNb2RvIGRlIGVtcGxlbzogJXMgWy1bYWJjRGhpbExzVHZ3eHl6XV0gWy1bQUNlRWZGSm5OT3BQcVFaXVtub21icmVdXSBbLUkgZGlyc11cbiIKIlx0Wy1kW251bV1dIFstayBkZS9hXSBbLW0gY3VlbnRhLW1pbl0gWy10IGxvbmdpdHVkLXRhYmxhXVxuIgoiXHRbLS1bbm8tXWFubm90YXRlZC1zb3VyY2VbPW5vbWJyZV1dIFstLVtuby1dZXhlYy1jb3VudHNbPW5vbWJyZV1dXG4iCiJcdFstLVtuby1dZmxhdC1wcm9maWxlWz1ub21icmVdXSBbLS1bbm8tXWdyYXBoWz1ub21icmVdXVxuIgoiXHRbLS1bbm8tXXRpbWU9bm9tYnJlXSBbLS1hbGwtbGluZXNdIFstLWJyaWVmXSBbLS1kZWJ1Z1s9bml2ZWxdXVxuIgoiXHRbLS1mdW5jdGlvbi1vcmRlcmluZ10gWy0tZmlsZS1vcmRlcmluZ11cbiIKIlx0Wy0tZGlyZWN0b3J5LXBhdGg9ZGlyc10gWy0tZGlzcGxheS11bnVzZWQtZnVuY3Rpb25zXVxuIgoiXHRbLS1maWxlLWZvcm1hdD1ub21icmVdIFstLWZpbGUtaW5mb10gWy0taGVscF0gWy0tbGluZV0gWy0tbWluLWNvdW50PW5dXG4iCiJcdFstLW5vLXN0YXRpY10gWy0tcHJpbnQtcGF0aF0gWy0tc2VwYXJhdGUtZmlsZXNdXG4iCiJcdFstLXN0YXRpYy1jYWxsLWdyYXBoXSBbLS1zdW1dIFstLXRhYmxlLWxlbmd0aD1sb25nXSBbLS10cmFkaXRpb25hbF1cbiIKIlx0Wy0tdmVyc2lvbl0gWy0td2lkdGg9bl0gWy0taWdub3JlLW5vbi1mdW5jdGlvbnNdXG4iCiJcdFstLWRlbWFuZ2xlWz1FU1RJTE9dXSBbLS1uby1kZW1hbmdsZV1cbiIKIlx0W2ZpY2hlcm8taW1hZ2VuXSBbZmljaGVyby1wZXJmaWwuLi5dXG4iCgojOiBncHJvZi5jOjE3NAojLCBjLWZvcm1hdAptc2dpZCAiUmVwb3J0IGJ1Z3MgdG8gJXNcbiIKbXNnc3RyICJSZXBvcnRhciBiaWNob3MgYSAlc1xuIgoKIzogZ3Byb2YuYzoyNTAKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBkZWJ1Z2dpbmcgbm90IHN1cHBvcnRlZDsgLWQgaWdub3JlZFxuIgptc2dzdHIgIiVzOiBubyBoYXkgc29wb3J0ZSBwYXJhIGRlcHVyYWNp8247IHNlIGlnbm9yYSAtZFxuIgoKIzogZ3Byb2YuYzozMzAKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiB1bmtub3duIGZpbGUgZm9ybWF0ICVzXG4iCm1zZ3N0ciAiJXM6IGZvcm1hdG8gZGUgZmljaGVybyAlcyBkZXNjb25vY2lkb1xuIgoKIy4gVGhpcyBvdXRwdXQgaXMgaW50ZW5kZWQgdG8gZm9sbG93IHRoZSBHTlUgc3RhbmRhcmRzIGRvY3VtZW50LgojOiBncHJvZi5jOjQxNAojLCBjLWZvcm1hdAptc2dpZCAiR05VIGdwcm9mICVzXG4iCm1zZ3N0ciAiR05VIGdwcm9mICVzXG4iCgojOiBncHJvZi5jOjQxNQojLCBjLWZvcm1hdAptc2dpZCAiQmFzZWQgb24gQlNEIGdwcm9mLCBjb3B5cmlnaHQgMTk4MyBSZWdlbnRzIG9mIHRoZSBVbml2ZXJzaXR5IG9mIENhbGlmb3JuaWEuXG4iCm1zZ3N0ciAiQmFzYWRvIGVuIGdwcm9mIGRlIEJTRCwgY29weXJpZ2h0IDE5ODMgUmVnZW50cyBvZiB0aGUgVW5pdmVyc2l0eSBvZiBDYWxpZm9ybmlhLlxuIgoKIzogZ3Byb2YuYzo0MTYKIywgYy1mb3JtYXQKbXNnaWQgIlRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlLiAgVGhpcyBwcm9ncmFtIGhhcyBhYnNvbHV0ZWx5IG5vIHdhcnJhbnR5LlxuIgptc2dzdHIgIkVzdGUgcHJvZ3JhbWEgZXMgc29mdHdhcmUgbGlicmUuICBFc3RlIHByb2dyYW1hIG5vIHRpZW5lIG5pbmd1bmEgZ2FyYW507WEgZW4gbG8gYWJzb2x1dG8uXG4iCgojOiBncHJvZi5jOjQ1NwojLCBjLWZvcm1hdAptc2dpZCAiJXM6IHVua25vd24gZGVtYW5nbGluZyBzdHlsZSBgJXMnXG4iCm1zZ3N0ciAiJXM6IGVzdGlsbyBkZSBkZXNlbnJlZG8gZGVzY29ub2NpZG8gYCVzJ1xuIgoKIzogZ3Byb2YuYzo0NzcKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBPbmx5IG9uZSBvZiAtLWZ1bmN0aW9uLW9yZGVyaW5nIGFuZCAtLWZpbGUtb3JkZXJpbmcgbWF5IGJlIHNwZWNpZmllZC5cbiIKbXNnc3RyICIlczogU/NsbyBzZSBwdWVkZSBlc3BlY2lmaWNhciB1bm8gZGUgLS1mdW5jdGlvbi1vcmRlcmluZyB5IC0tZmlsZS1vcmRlcmluZy5cbiIKCiM6IGdwcm9mLmM6NTI3CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogc29ycnksIGZpbGUgZm9ybWF0IGBwcm9mJyBpcyBub3QgeWV0IHN1cHBvcnRlZFxuIgptc2dzdHIgIiVzOiBwZXJk824sIGVsIGZvcm1hdG8gZGUgZmljaGVybyBgcHJvZicgYfpuIG5vIHRpZW5lIHNvcG9ydGVcbiIKCiM6IGdwcm9mLmM6NTc2CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogZ21vbi5vdXQgZmlsZSBpcyBtaXNzaW5nIGhpc3RvZ3JhbVxuIgptc2dzdHIgIiVzOiBhbCBmaWNoZXJvIGdtb24ub3V0IGxlIGZhbHRhIGVsIGhpc3RvZ3JhbWFcbiIKCiM6IGdwcm9mLmM6NTgzCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogZ21vbi5vdXQgZmlsZSBpcyBtaXNzaW5nIGNhbGwtZ3JhcGggZGF0YVxuIgptc2dzdHIgIiVzOiBhbCBmaWNoZXJvIGdtb24ub3V0IGxlIGZhbHRhIGxvcyBkYXRvcyBkZWwgZ3LhZmljbyBkZSBsbGFtYWRhc1xuIgoKIzogaGlzdC5jOjEyNgojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGAlcycgaXMgaW5jb21wYXRpYmxlIHdpdGggZmlyc3QgZ21vbiBmaWxlXG4iCm1zZ3N0ciAiJXM6IGAlcycgZXMgaW5jb21wYXRpYmxlIGNvbiBlbCBwcmltZXIgZmljaGVybyBnbW9uXG4iCgojOiBoaXN0LmM6MTQyCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogJXM6IHVuZXhwZWN0ZWQgRU9GIGFmdGVyIHJlYWRpbmcgJXUgb2YgJXUgc2FtcGxlc1xuIgptc2dzdHIgIiVzOiAlczogZmluIGRlIGZpY2hlcm8gaW5lc3BlcmFkbyBkZXNwdelzIGRlIGxlZXIgJXUgZGUgJXUgbXVlc3RyYXNcbiIKCiM6IGhpc3QuYzozNTUKIywgYy1mb3JtYXQKbXNnaWQgIiVjJWMvY2FsbCIKbXNnc3RyICIlYyVjL2xsYW1hZGEiCgojOiBoaXN0LmM6MzYzCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiIgZm9yICUuMmYlJSBvZiAlLjJmICVzXG4iCiJcbiIKbXNnc3RyICIiCiIgcGFyYSAlLjJmJSUgZGUgJS4yZiAlc1xuIgoiXG4iCgojOiBoaXN0LmM6MzY5CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIkVhY2ggc2FtcGxlIGNvdW50cyBhcyAlZyAlcy5cbiIKbXNnc3RyICIiCiJcbiIKIkNhZGEgbXVlc3RyYSBjdWVudGEgY29tbyAlZyAlcy5cbiIKCiM6IGhpc3QuYzozNzQKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiBubyB0aW1lIGFjY3VtdWxhdGVkXG4iCiJcbiIKbXNnc3RyICIiCiIgbm8gaGF5IHRpZW1wbyBhY3VtdWxhZG9cbiIKIlxuIgoKIzogaGlzdC5jOjM4MQptc2dpZCAiY3VtdWxhdGl2ZSIKbXNnc3RyICJjdW11bGF0aXZvIgoKIzogaGlzdC5jOjM4MQptc2dpZCAic2VsZiAgIgptc2dzdHIgInPtIG1pc21vICAiCgojOiBoaXN0LmM6MzgxCm1zZ2lkICJ0b3RhbCAiCm1zZ3N0ciAidG90YWwgIgoKIzogaGlzdC5jOjM4NAptc2dpZCAidGltZSIKbXNnc3RyICJ0aWVtcG8iCgojOiBoaXN0LmM6Mzg0Cm1zZ2lkICJjYWxscyIKbXNnc3RyICJsbGFtYWRhcyIKCiM6IGhpc3QuYzo0NzMKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiXG4iCiJcbiIKImZsYXQgcHJvZmlsZTpcbiIKbXNnc3RyICIiCiJcbiIKIlxuIgoiXG4iCiJwZXJmaWwgcGxhbm86XG4iCgojOiBoaXN0LmM6NDc5CiMsIGMtZm9ybWF0Cm1zZ2lkICJGbGF0IHByb2ZpbGU6XG4iCm1zZ3N0ciAiUGVyZmlsIHBsYW5vOlxuIgoKIzogbWlwcy5jOjgyCiMsIGMtZm9ybWF0Cm1zZ2lkICJbZmluZF9jYWxsXSAweCVseDogamFsIgptc2dzdHIgIltmaW5kX2NhbGxdIDB4JWx4OiBqYWwiCgojOiBtaXBzLmM6MTA3CiMsIGMtZm9ybWF0Cm1zZ2lkICJbZmluZF9jYWxsXSAweCVseDogamFsclxuIgptc2dzdHIgIltmaW5kX2NhbGxdIDB4JWx4OiBqYWxyXG4iCgojOiBzb3VyY2UuYzoxNjIKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBjb3VsZCBub3QgbG9jYXRlIGAlcydcbiIKbXNnc3RyICIlczogbm8gc2UgcHVlZGUgZW5jb250cmFyIGAlcydcbiIKCiM6IHNvdXJjZS5jOjIzNwojLCBjLWZvcm1hdAptc2dpZCAiKioqIEZpbGUgJXM6XG4iCm1zZ3N0ciAiKioqIEZpY2hlcm8gJXM6XG4iCgojOiB1dGlscy5jOjEwNwojLCBjLWZvcm1hdAptc2dpZCAiIDxjeWNsZSAlZD4iCm1zZ3N0ciAiIDxjaWNsbyAlZD4iCgojfiBtc2dpZCAiJXM6IGJmZF92bWEgaGFzIHVuZXhwZWN0ZWQgc2l6ZSBvZiAlbGQgYnl0ZXNcbiIKI34gbXNnc3RyICIlczogYmZkX3ZtYSB0aWVuZSB1biB0YW1h8W8gaW5lc3BlcmFkbyBkZSAlbGQgYnl0ZXNcbiIK