IyAkSWQkCiMgU3BhbmlzaCBNZXNzYWdlcyBmb3IgdGhlIG5hbm8gZWRpdG9yLgojIEpvcmRpIE1hbGxhY2ggPGpvcmRpQHNpbmRvbWluaW8ubmV0PiBKYW51YXJ5IDksIDIwMDAKIyBDb3B5cmlnaHQgKEMpIDIwMDAgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMgSm9yZGkgTWFsbGFjaCA8am9yZGlAc2luZG9taW5pby5uZXQ+LCAyMDAwLgojCm1zZ2lkICIiCm1zZ3N0ciAiIgoiUHJvamVjdC1JZC1WZXJzaW9uOiAwLjkuMjErQ1ZTXG4iCiJQT1QtQ3JlYXRpb24tRGF0ZTogMjAwMC0xMS0yNyAxODowMC0wNTAwXG4iCiJQTy1SZXZpc2lvbi1EYXRlOiAyMDAwLTExLTI1IDA1OjQ1KzAxMDBcbiIKIkxhc3QtVHJhbnNsYXRvcjogSm9yZGkgTWFsbGFjaCA8am9yZGlAc2luZG9taW5pby5uZXQ+XG4iCiJMYW5ndWFnZS1UZWFtOiBTcGFuaXNoIDxlc0BsaS5vcmc+XG4iCiJNSU1FLVZlcnNpb246IDEuMFxuIgoiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PWlzbzg4NTktMVxuIgoiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgoKIzogY3V0LmM6NDQKIywgYy1mb3JtYXQKbXNnaWQgImFkZF90b19jdXRidWZmZXIgY2FsbGVkIHdpdGggaW5wdHItPmRhdGEgPSAlc1xuIgptc2dzdHIgImFkZF90b19jdXRidWZmZXIgbGxhbWFkbyBjb24gaW5wdHItPmRhdGEgPSAlc1xuIgoKIzogY3V0LmM6MTUwCm1zZ2lkICJCbGV3IGF3YXkgY3V0YnVmZmVyID0pXG4iCm1zZ3N0ciAiTm9zIGhlbW9zIGNhcmdhZG8gZWwgY3V0YnVmZmVyID0pXG4iCgojOiBmaWxlcy5jOjEyMgptc2dpZCAicmVhZF9saW5lOiBub3Qgb24gZmlyc3QgbGluZSBhbmQgcHJldiBpcyBOVUxMIgptc2dzdHIgInJlYWRfbGluZTogbm8gZXN0YW1vcyBlbiBsYSBwcmltZXJhIGztbmVhIHkgbGEgYW50ZXJpb3IgZXMgTlVMTCIKCiM6IGZpbGVzLmM6MTg0IGZpbGVzLmM6MjAxCiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWFkICVkIGxpbmVzIgptc2dzdHIgIiVkIGztbmVhcyBsZe1kYXMiCgojOiBmaWxlcy5jOjIxOSBzZWFyY2guYzoxODgKIywgYy1mb3JtYXQKbXNnaWQgIlwiJXNcIiBub3QgZm91bmQiCm1zZ3N0ciAiXCIlc1wiIG5vIGVuY29udHJhZG8iCgojLiBXZSBoYXZlIGEgbmV3IGZpbGUKIzogZmlsZXMuYzoyMjMKbXNnaWQgIk5ldyBGaWxlIgptc2dzdHIgIk51ZXZvIEZpY2hlcm8iCgojOiBmaWxlcy5jOjIzMgojLCBjLWZvcm1hdAptc2dpZCAiRmlsZSBcIiVzXCIgaXMgYSBkaXJlY3RvcnkiCm1zZ3N0ciAiRmljaGVybyBcIiVzXCIgZXMgdW4gZGlyZWN0b3JpbyIKCiM6IGZpbGVzLmM6MjM4Cm1zZ2lkICJSZWFkaW5nIEZpbGUiCm1zZ3N0ciAiTGV5ZW5kbyBGaWNoZXJvIgoKIzogZmlsZXMuYzoyNTIKbXNnaWQgIkZpbGUgdG8gaW5zZXJ0IFtmcm9tIC4vXSAiCm1zZ3N0ciAiRmljaGVybyBhIGluc2VydGFyIFtkZXNkZSAuL10gIgoKIzogZmlsZXMuYzoyODAgZmlsZXMuYzozMDUgZmlsZXMuYzo1MTMgbmFuby5jOjEzNzMKbXNnaWQgIkNhbmNlbGxlZCIKbXNnc3RyICJDYW5jZWxhZG8iCgojOiBmaWxlcy5jOjMzNSBmaWxlcy5jOjM1NiBmaWxlcy5jOjM3MCBmaWxlcy5jOjM4NyBmaWxlcy5jOjM5MwojLCBjLWZvcm1hdAptc2dpZCAiQ291bGQgbm90IG9wZW4gZmlsZSBmb3Igd3JpdGluZzogJXMiCm1zZ3N0ciAiTm8gcHVkZSBhYnJpciBlbCBmaWNoZXJvIHBhcmEgZXNjcmliaXI6ICVzIgoKIzogZmlsZXMuYzozNDQKbXNnaWQgIkNvdWxkIG5vdCBvcGVuIGZpbGU6IFBhdGggbGVuZ3RoIGV4Y2VlZGVkLiIKbXNnc3RyICJFbCBmaWNoZXJvIG5vIHB1ZG8gc2VyIGFiaWVydG86IGxvbmdpdHVkIGRlbCBwYXRoIGV4Y2VkaWRhLiIKCiM6IGZpbGVzLmM6Mzc1CiMsIGMtZm9ybWF0Cm1zZ2lkICJXcm90ZSA+JXNcbiIKbXNnc3RyICJFc2NyaWLtID4lc1xuIgoKIzogZmlsZXMuYzo0MDIKIywgYy1mb3JtYXQKbXNnaWQgIkNvdWxkIG5vdCBjbG9zZSAlczogJXMiCm1zZ3N0ciAiTm8gcHVkZSBjZXJyYXIgJXM6ICVzIgoKIy4gVHJ5IGEgcmVuYW1lPz8KIzogZmlsZXMuYzo0MjMgZmlsZXMuYzo0MzQgZmlsZXMuYzo0MzkKIywgYy1mb3JtYXQKbXNnaWQgIkNvdWxkIG5vdCBvcGVuICVzIGZvciB3cml0aW5nOiAlcyIKbXNnc3RyICJObyBwdWRlIGFicmlyICVzIHBhcmEgZXNjcmliaXI6ICVzIgoKIzogZmlsZXMuYzo0NDUKIywgYy1mb3JtYXQKbXNnaWQgIkNvdWxkIG5vdCBzZXQgcGVybWlzc2lvbnMgJW8gb24gJXM6ICVzIgptc2dzdHIgIk5vIHB1ZGUgZXN0YWJsZWNlciBwZXJtaXNvcyAlbyBlbiAlczogJXMiCgojOiBmaWxlcy5jOjQ1MgojLCBjLWZvcm1hdAptc2dpZCAiV3JvdGUgJWQgbGluZXMiCm1zZ3N0ciAiJWQgbO1uZWFzIGVzY3JpdGFzIgoKIzogZmlsZXMuYzo0ODQKbXNnaWQgIkZpbGUgTmFtZSB0byB3cml0ZSIKbXNnc3RyICJOb21icmUgZGUgRmljaGVybyBhIGVzY3JpYmlyIgoKIzogZmlsZXMuYzo0ODkKIywgYy1mb3JtYXQKbXNnaWQgImZpbGVuYW1lIGlzICVzIgptc2dzdHIgImZpbGVuYW1lIGVzICVzIgoKIzogZmlsZXMuYzo1MDIKbXNnaWQgIkZpbGUgZXhpc3RzLCBPVkVSV1JJVEUgPyIKbXNnc3RyICJFbCBmaWNoZXJvIGV4aXN0ZSwgU09CUkVFU0NSSUJJUiA/IgoKIzogZmlsZXMuYzo5OTAKbXNnaWQgIihtb3JlKSIKbXNnc3RyICIobeFzKSIKCiM6IGdsb2JhbC5jOjEyNAptc2dpZCAiQ29uc3RhbnQgY3Vyc29yIHBvc2l0aW9uIgptc2dzdHIgIlBvc2ljafNuIGRlbCBjdXJzb3IgY29uc3RhbnRlIgoKIzogZ2xvYmFsLmM6MTI1Cm1zZ2lkICJBdXRvIGluZGVudCIKbXNnc3RyICJBdXRvIGluZGVudGFyIgoKIzogZ2xvYmFsLmM6MTI2Cm1zZ2lkICJTdXNwZW5kIgptc2dzdHIgIlN1c3BlbmRlciIKCiM6IGdsb2JhbC5jOjEyNwptc2dpZCAiSGVscCBtb2RlIgptc2dzdHIgIk1vZG8gYXl1ZGEiCgojOiBnbG9iYWwuYzoxMjgKbXNnaWQgIlBpY28gbW9kZSIKbXNnc3RyICJNb2RvIFBpY28iCgojOiBnbG9iYWwuYzoxMjkKbXNnaWQgIk1vdXNlIHN1cHBvcnQiCm1zZ3N0ciAiU29wb3J0ZSBwYXJhIHJhdPNuIgoKIzogZ2xvYmFsLmM6MTMwCm1zZ2lkICJDdXQgdG8gZW5kIgptc2dzdHIgIkNvcnRhciBoYXN0YSBlbCBmaW5hbCBkZSBs7W5lYSIKCiM6IGdsb2JhbC5jOjEzMgptc2dpZCAiUmVndWxhciBleHByZXNzaW9ucyIKbXNnc3RyICJFeHByZXNpb25lcyByZWd1bGFyZXMiCgojOiBnbG9iYWwuYzoxMzQKbXNnaWQgIkF1dG8gd3JhcCIKbXNnc3RyICJBdXRvIHdyYXBlYXIiCgojOiBnbG9iYWwuYzoxNzYKbXNnaWQgIkludm9rZSB0aGUgaGVscCBtZW51Igptc2dzdHIgIkludm9jYXIgZWwgbWVu+iBkZSBheXVkYSIKCiM6IGdsb2JhbC5jOjE3Nwptc2dpZCAiV3JpdGUgdGhlIGN1cnJlbnQgZmlsZSB0byBkaXNrIgptc2dzdHIgIkVzY3JpYmlyIGVsIGZpY2hlcm8gYWN0dWFsIGEgZGlzY28iCgojOiBnbG9iYWwuYzoxNzgKbXNnaWQgIkV4aXQgZnJvbSBuYW5vIgptc2dzdHIgIlNhbGlyIGRlIG5hbm8iCgojOiBnbG9iYWwuYzoxNzkKbXNnaWQgIkdvdG8gYSBzcGVjaWZpYyBsaW5lIG51bWJlciIKbXNnc3RyICJJciBhIHVuIG76bWVybyBkZSBs7W5lYSBlbiBjb25jcmV0byIKCiM6IGdsb2JhbC5jOjE4MAptc2dpZCAiSnVzdGlmeSB0aGUgY3VycmVudCBwYXJhZ3JhcGgiCm1zZ3N0ciAiSnVzdGlmaWNhciBlbCBw4XJyYWZvIGFjdHVhbCIKCiM6IGdsb2JhbC5jOjE4MQptc2dpZCAiVW5qdXN0aWZ5IGFmdGVyIGEganVzdGlmeSIKbXNnc3RyICJEZXNqdXN0aWZpY2FyIGRlc3B16XMgZGUgdW4ganVzdGlmaWNhciIKCiM6IGdsb2JhbC5jOjE4Mgptc2dpZCAiUmVwbGFjZSB0ZXh0IHdpdGhpbiB0aGUgZWRpdG9yIgptc2dzdHIgIlJlZW1wbGF6YXIgdGV4dG8gZW4gZWwgZWRpdG9yIgoKIzogZ2xvYmFsLmM6MTgzCm1zZ2lkICJJbnNlcnQgYW5vdGhlciBmaWxlIGludG8gdGhlIGN1cnJlbnQgb25lIgptc2dzdHIgIkluc2VydGFyIG90cm8gZmljaGVybyBlbiBlbCBhY3R1YWwiCgojOiBnbG9iYWwuYzoxODQKbXNnaWQgIlNlYXJjaCBmb3IgdGV4dCB3aXRoaW4gdGhlIGVkaXRvciIKbXNnc3RyICJCdXNjYXIgdW4gdGV4dG8gZW4gZWwgZWRpdG9yIgoKIzogZ2xvYmFsLmM6MTg1Cm1zZ2lkICJNb3ZlIHRvIHRoZSBwcmV2aW91cyBzY3JlZW4iCm1zZ3N0ciAiTW92ZXJzZSBhIGxhIHDhZ2luYSBhbnRlcmlvciIKCiM6IGdsb2JhbC5jOjE4Ngptc2dpZCAiTW92ZSB0byB0aGUgbmV4dCBzY3JlZW4iCm1zZ3N0ciAiTW92ZXJzZSBhIGxhIHDhZ2luYSBzaWd1aWVudGUiCgojOiBnbG9iYWwuYzoxODcKbXNnaWQgIkN1dCB0aGUgY3VycmVudCBsaW5lIGFuZCBzdG9yZSBpdCBpbiB0aGUgY3V0YnVmZmVyIgptc2dzdHIgIkNvcnRhciBsYSBs7W5lYSBhY3R1YWwgeSBndWFyZGFybGEgZW4gZWwgY3V0YnVmZmVyIgoKIzogZ2xvYmFsLmM6MTg4Cm1zZ2lkICJVbmN1dCBmcm9tIHRoZSBjdXRidWZmZXIgaW50byB0aGUgY3VycmVudCBsaW5lIgptc2dzdHIgIlBlZ2FyIGVsIGN1dGJ1ZmZlciBlbiBsYSBs7W5lYSBhY3R1YWwiCgojOiBnbG9iYWwuYzoxODkKbXNnaWQgIlNob3cgdGhlIHBvc2l0aXRvbiBvZiB0aGUgY3Vyc29yIgptc2dzdHIgIk1vc3RyYXIgbGEgcG9zaWNp824gZGVsIGN1cnNvciIKCiM6IGdsb2JhbC5jOjE5MAptc2dpZCAiSW52b2tlIHRoZSBzcGVsbCBjaGVja2VyIChpZiBhdmFpbGFibGUpIgptc2dzdHIgIkludm9jYXIgZWwgY29ycmVjdG9yIG9ydG9ncuFmaWNvIChzaSBlc3ThIGRpc3BvbmlibGUpIgoKIzogZ2xvYmFsLmM6MTkxCm1zZ2lkICJNb3ZlIHVwIG9uZSBsaW5lIgptc2dzdHIgIk1vdmVyc2UgdW5hIGztbmVhIGhhY2lhIGFycmliYSIKCiM6IGdsb2JhbC5jOjE5Mgptc2dpZCAiTW92ZSBkb3duIG9uZSBsaW5lIgptc2dzdHIgIk1vdmVyc2UgdW5hIGztbmVhIGhhY2lhIGFiYWpvIgoKIzogZ2xvYmFsLmM6MTkzCm1zZ2lkICJNb3ZlIGZvcndhcmQgb25lIGNoYXJhY3RlciIKbXNnc3RyICJNb3ZlcnNlIGhhY2lhIGFkZWxhbnRlIHVuIGNhcuFjdGVyIgoKIzogZ2xvYmFsLmM6MTk0Cm1zZ2lkICJNb3ZlIGJhY2sgb25lIGNoYXJhY3RlciIKbXNnc3RyICJNb3ZlcnNlIGhhY2lhIGF0cuFzIHVuIGNhcuFjdGVyIgoKIzogZ2xvYmFsLmM6MTk1Cm1zZ2lkICJNb3ZlIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGN1cnJlbnQgbGluZSIKbXNnc3RyICJNb3ZlcnNlIGFsIHByaW5jaXBpbyBkZSBsYSBs7W5lYSBhY3R1YWwiCgojOiBnbG9iYWwuYzoxOTYKbXNnaWQgIk1vdmUgdG8gdGhlIGVuZCBvZiB0aGUgY3VycmVudCBsaW5lIgptc2dzdHIgIk1vdmVyc2UgYWwgZmluYWwgZGUgbGEgbO1uZWEgYWN0dWFsIgoKIzogZ2xvYmFsLmM6MTk3Cm1zZ2lkICJHbyB0byB0aGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSIKbXNnc3RyICJJciBhIGxhIHByaW1lcmEgbO1uZWEgZGVsIGZpY2hlcm8iCgojOiBnbG9iYWwuYzoxOTgKbXNnaWQgIkdvIHRvIHRoZSBsYXN0IGxpbmUgb2YgdGhlIGZpbGUiCm1zZ3N0ciAiSXIgYSBsYSD6bHRpbWEgbO1uZWEgZGVsIGZpY2hlcm8iCgojOiBnbG9iYWwuYzoxOTkKbXNnaWQgIlJlZnJlc2ggKHJlZHJhdykgdGhlIGN1cnJlbnQgc2NyZWVuIgptc2dzdHIgIlJlZGlidWphciBsYSBwYW50YWxsYSBhY3R1YWwiCgojOiBnbG9iYWwuYzoyMDAKbXNnaWQgIk1hcmsgdGV4dCBhdCB0aGUgY3VycmVudCBjdXJzb3IgbG9jYXRpb24iCm1zZ3N0ciAiTWFyY2FyIHRleHRvIGVuIGxhIHBvc2ljafNuIGFjdHVhbCBkZWwgY3Vyc29yIgoKIzogZ2xvYmFsLmM6MjAxCm1zZ2lkICJEZWxldGUgdGhlIGNoYXJhY3RlciB1bmRlciB0aGUgY3Vyc29yIgptc2dzdHIgIkJvcnJhciBlbCBjYXLhY3RlciBiYWpvIGVsIGN1cnNvciIKCiM6IGdsb2JhbC5jOjIwMwptc2dpZCAiRGVsZXRlIHRoZSBjaGFyYWN0ZXIgdG8gdGhlIGxlZnQgb2YgdGhlIGN1cnNvciIKbXNnc3RyICJCb3JyYXIgZWwgY2Fy4WN0ZXIgYSBsYSBpenF1aWVyZGEgZGVsIGN1cnNvciIKCiM6IGdsb2JhbC5jOjIwNAptc2dpZCAiSW5zZXJ0IGEgdGFiIGNoYXJhY3RlciIKbXNnc3RyICJJbnNlcnRhciB1biBjYXLhY3RlciB0YWIiCgojOiBnbG9iYWwuYzoyMDUKbXNnaWQgIkluc2VydCBhIGNhcnJpYWdlIHJldHVybiBhdCB0aGUgY3Vyc29yIHBvc2l0aW9uIgptc2dzdHIgIkluc2VydGFyIHVuIHJldG9ybm8gZGUgY2Fycm8gZW4gbGEgcG9zaWNp824gZGVsIGN1cnNvciIKCiM6IGdsb2JhbC5jOjIwNwptc2dpZCAiTWFrZSB0aGUgY3VycmVudCBzZWFyY2ggb3IgcmVwbGFjZSBjYXNlIChpbilzZW5zaXRpdmUiCm1zZ3N0ciAiSGFjZXIgcXVlIGxhIGL6c3F1ZWRhIGFjdHVhbCBzZWEgc2Vuc2libGUgYSBtYXn6c2N1bGFzIgoKIzogZ2xvYmFsLmM6MjA4Cm1zZ2lkICJDYW5jZWwgdGhlIGN1cnJlbnQgZnVuY3Rpb24iCm1zZ3N0ciAiQ2FuY2VsYXIgbGEgZnVuY2nzbiBhY3R1YWwiCgojOiBnbG9iYWwuYzoyMTIgZ2xvYmFsLmM6MzI4IGdsb2JhbC5jOjQxMwptc2dpZCAiR2V0IEhlbHAiCm1zZ3N0ciAiVmVyIEF5dWRhIgoKIzogZ2xvYmFsLmM6MjE1IGdsb2JhbC5jOjIyMwptc2dpZCAiV3JpdGVPdXQiCm1zZ3N0ciAiR3VhcmRhciIKCiM6IGdsb2JhbC5jOjIxOSBnbG9iYWwuYzo0MDIKbXNnaWQgIkV4aXQiCm1zZ3N0ciAiU2FsaXIiCgojOiBnbG9iYWwuYzoyMjcgZ2xvYmFsLmM6MzI0IGdsb2JhbC5jOjM0NiBnbG9iYWwuYzozNjYKbXNnaWQgIkdvdG8gTGluZSIKbXNnc3RyICJJciBhIEztbmVhIgoKIzogZ2xvYmFsLmM6MjMyIGdsb2JhbC5jOjMxNQptc2dpZCAiSnVzdGlmeSIKbXNnc3RyICJKdXN0aWZpY2FyIgoKIzogZ2xvYmFsLmM6MjM2IGdsb2JhbC5jOjMxMSBnbG9iYWwuYzozNDIKbXNnaWQgIlJlcGxhY2UiCm1zZ3N0ciAiUmVlbXBsYXphciIKCiM6IGdsb2JhbC5jOjI0MAptc2dpZCAiUmVhZCBGaWxlIgptc2dzdHIgIkwgRmljaGVybyIKCiM6IGdsb2JhbC5jOjI0NAptc2dpZCAiV2hlcmUgSXMiCm1zZ3N0ciAiQnVzY2FyIgoKIzogZ2xvYmFsLmM6MjQ4IGdsb2JhbC5jOjM5NAptc2dpZCAiUHJldiBQYWdlIgptc2dzdHIgIlBhZyBQcmV2IgoKIzogZ2xvYmFsLmM6MjUyIGdsb2JhbC5jOjM5OAptc2dpZCAiTmV4dCBQYWdlIgptc2dzdHIgIlBhZyBTaWciCgojOiBnbG9iYWwuYzoyNTYKbXNnaWQgIkN1dCBUZXh0Igptc2dzdHIgIkNvcnRhclR4dCIKCiM6IGdsb2JhbC5jOjI2MAptc2dpZCAiVW5KdXN0aWZ5Igptc2dzdHIgIkRlc2p1c3RpZmljYXIiCgojOiBnbG9iYWwuYzoyNjMKbXNnaWQgIlVuQ3V0IFR4dCIKbXNnc3RyICJQZWdhclR4dCIKCiM6IGdsb2JhbC5jOjI2Nwptc2dpZCAiQ3VyIFBvcyIKbXNnc3RyICJQb3MgQWN0IgoKIzogZ2xvYmFsLmM6MjcxCm1zZ2lkICJUbyBTcGVsbCIKbXNnc3RyICJPcnRvZ3JhZu1hIgoKIzogZ2xvYmFsLmM6Mjc1Cm1zZ2lkICJVcCIKbXNnc3RyICJBcnJpYmEiCgojOiBnbG9iYWwuYzoyNzgKbXNnaWQgIkRvd24iCm1zZ3N0ciAiQWJham8iCgojOiBnbG9iYWwuYzoyODEKbXNnaWQgIkZvcndhcmQiCm1zZ3N0ciAiQWRlbGFudGUiCgojOiBnbG9iYWwuYzoyODQKbXNnaWQgIkJhY2siCm1zZ3N0ciAiQXRy4XMiCgojOiBnbG9iYWwuYzoyODcKbXNnaWQgIkhvbWUiCm1zZ3N0ciAiSW5pY2lvIgoKIzogZ2xvYmFsLmM6MjkwCm1zZ2lkICJFbmQiCm1zZ3N0ciAiRmluIgoKIzogZ2xvYmFsLmM6MjkzCm1zZ2lkICJSZWZyZXNoIgptc2dzdHIgIlJlZnJlc2NhciIKCiM6IGdsb2JhbC5jOjI5Ngptc2dpZCAiTWFyayBUZXh0Igptc2dzdHIgIk1hcmNhclR4dCIKCiM6IGdsb2JhbC5jOjI5OQptc2dpZCAiRGVsZXRlIgptc2dzdHIgIlN1cHJpbWlyIgoKIzogZ2xvYmFsLmM6MzAzCm1zZ2lkICJCYWNrc3BhY2UiCm1zZ3N0ciAiQm9ycmFyIgoKIzogZ2xvYmFsLmM6MzA3Cm1zZ2lkICJUYWIiCm1zZ3N0ciAiVGFiIgoKIzogZ2xvYmFsLmM6MzE5Cm1zZ2lkICJFbnRlciIKbXNnc3RyICJFbnRlciIKCiM6IGdsb2JhbC5jOjMzMiBnbG9iYWwuYzozNTMgZ2xvYmFsLmM6Mzc0IGdsb2JhbC5jOjM4NAptc2dpZCAiRmlyc3QgTGluZSIKbXNnc3RyICJQcmltZXJhIEztbmVhIgoKIzogZ2xvYmFsLmM6MzM1IGdsb2JhbC5jOjM1NiBnbG9iYWwuYzozNzcgZ2xvYmFsLmM6Mzg3Cm1zZ2lkICJMYXN0IExpbmUiCm1zZ3N0ciAi2mx0aW1hIEztbmVhIgoKIzogZ2xvYmFsLmM6MzM4IGdsb2JhbC5jOjM1OQptc2dpZCAiQ2FzZSBTZW5zIgptc2dzdHIgIk1heS9NaW4iCgojOiBnbG9iYWwuYzozNDkgZ2xvYmFsLmM6MzY5IGdsb2JhbC5jOjM4MCBnbG9iYWwuYzozOTAgZ2xvYmFsLmM6NDA2CiM6IGdsb2JhbC5jOjQxMCBnbG9iYWwuYzo0MTYgd2luaW8uYzoxMDI2Cm1zZ2lkICJDYW5jZWwiCm1zZ3N0ciAiQ2FuY2VsYXIiCgojOiBnbG9iYWwuYzozNjIKbXNnaWQgIk5vIFJlcGxhY2UiCm1zZ3N0ciAiTm8gUmVlbXBsYXphciIKCiM6IG5hbm8uYzoxMzEKbXNnaWQgIiIKIlxuIgoiQnVmZmVyIHdyaXR0ZW4gdG8gJ25hbm8uc2F2ZSdcbiIKbXNnc3RyICIiCiJcbiIKIkJ1ZmZlciBlc2NyaXRvIGVuICduYW5vLnNhdmUnXG4iCgojOiBuYW5vLmM6MTM4Cm1zZ2lkICJLZXkgaWxsZWdhbCBpbiBWSUVXIG1vZGUiCm1zZ3N0ciAiVGVjbGEgaWxlZ2FsIGVuIG1vZG8gVklTVUFMSVpBQ0nTTiIKCiM6IG5hbm8uYzoxNzUKbXNnaWQgIiIKIiBuYW5vIGhlbHAgdGV4dFxuIgoiXG4iCiIgVGhlIG5hbm8gZWRpdG9yIGlzIGRlc2lnbmVkIHRvIGVtdWxhdGUgdGhlIGZ1bmN0aW9uYWxpdHkgYW5kIGVhc2Utb2YtdXNlIG9mICIKInRoZSBVVyBQaWNvIHRleHQgZWRpdG9yLiAgVGhlcmUgYXJlIGZvdXIgbWFpbiBzZWN0aW9ucyBvZiB0aGUgZWRpdG9yOiBUaGUgIgoidG9wIGxpbmUgc2hvd3MgdGhlIHByb2dyYW0gdmVyc2lvbiwgdGhlIGN1cnJlbnQgZmlsZW5hbWUgYmVpbmcgZWRpdGVkLCBhbmQgIgoid2hldGhlciBvciBub3QgdGhlIGZpbGUgaGFzIGJlZW4gbW9kaWZpZWQuICBOZXh0IGlzIHRoZSBtYWluIGVkaXRvciB3aW5kb3cgIgoic2hvd2luZyB0aGUgZmlsZSBiZWluZyBlZGl0ZWQuICBUaGUgc3RhdHVzIGxpbmUgaXMgdGhlIHRoaXJkIGxpbmUgZnJvbSB0aGUgIgoiYm90dG9tIGFuZCBzaG93cyBpbXBvcnRhbnQgbWVzc2FnZXMuIFRoZSBib3R0b20gdHdvIGxpbmVzIHNob3cgdGhlIG1vc3QgIgoiY29tbW9ubHkgdXNlZCBzaG9ydGN1dHMgaW4gdGhlIGVkaXRvci5cbiIKIlxuIgoiIFRoZSBub3RhdGlvbiBmb3Igc2hvcnRjdXRzIGlzIGFzIGZvbGxvd3M6IENvbnRyb2wta2V5IHNlcXVlbmNlcyBhcmUgbm90YXRlZCAiCiJ3aXRoIGEgY2FyZXQgKF4pIHN5bWJvbCBhbmQgYXJlIGVudGVyZWQgd2l0aCB0aGUgQ29udHJvbCAoQ3RybCkga2V5LiAgIgoiRXNjYXBlLWtleSBzZXF1ZW5jZXMgYXJlIG5vdGF0ZWQgd2l0aCB0aGUgTWV0YSAoTSkgc3ltYm9sIGFuZCBjYW4gYmUgZW50ZXJlZCAiCiJ1c2luZyBlaXRoZXIgdGhlIEVzYywgQWx0IG9yIE1ldGEga2V5IGRlcGVuZGluZyBvbiB5b3VyIGtleWJvYXJkIHNldHVwLiAgVGhlICIKImZvbGxvd2luZyBrZXlzdHJva2VzIGFyZSBhdmFpbGFibGUgaW4gdGhlIG1haW4gZWRpdG9yIHdpbmRvdy4gT3B0aW9uYWwga2V5cyAiCiJhcmUgc2hvd24gaW4gcGFyZW50aGVzZXM6XG4iCiJcbiIKbXNnc3RyICIiCiIgdGV4dG8gZGUgYXl1ZGEgZGUgbmFub1xuIgoiXG4iCiIgRWwgZWRpdG9yIG5hbm8gZXN04SBkaXNl8WFkbyBwYXJhIGVtdWxhciBsYSBmdW5jaW9uYWxpZGFkIHkgbGEgZmFjaWxpZGFkIGRlICIKInVzbyBkZSBQaWNvLCBlbCBlZGl0b3IgZGUgdGV4dG8gZGUgbGEgVVcuIEhheSBjdWF0cm8gc2VjY2lvbmVzIGVuIGVsIGVkaXRvcjogIgoibGEgbO1uZWEgc3VwZXJpb3IgbXVlc3RyYSBsYSB2ZXJzafNuIGRlbCBwcm9ncmFtYSwgZWwgbm9tYnJlIGRlbCBmaWNoZXJvICIKImVkaXRhZG8geSBzaSBlbCBmaWNoZXJvIGhhIHNpZG8gbyBubyBtb2RpZmljYWRvLiBUYW1iaeluIHRlbmVtb3MgbGEgdmVudGFuYSAiCiJwcmluY2lwYWwgZGUgZWRpY2nzbiwgcXVlIG11ZXN0cmEgZWwgZmljaGVybyBxdWUgZXN04SBzaWVuZG8gZWRpdGFkby4gTGEgIgoibO1uZWEgZGUgZXN0YWRvIGVzIGxhIHRlcmNlcmEgZGVzZGUgYWJham8geSBtdWVzdHJhIG1lbnNhamVzIGltcG9ydGFudGVzLiAiCiJMYXMg+mx0aW1hcyBkb3MgbO1uZWFzIG11ZXN0cmFuIGxvcyBhdGFqb3MgbeFzIHVzYWRvcyBlbiBlbCBlZGl0b3IuXG4iCiJcbiIKIiBMYSBub3RhY2nzbiBkZSBsb3MgYXRham9zIGVzIGxhIHNpZ3VpZW50ZTogbGFzIHNlY3VlbmNpYXMgY29uIGxhIHRlY2xhICIKIkNvbnRyb2wgZXN04W4gYW5vdGFkYXMgY29uIGVsIHPtbWJvbG8gY2lyY3VuZmxlam8gKF4pIHkgc29uIGFjY2VkaWRhcyAiCiJtZWRpYW50ZSBsYSB0ZWNsYSBDb250cm9sLiBMYXMgc2VjdWVuY2lhcyBjb24gdGVjbGFzIGRlIGVzY2FwZSBlc3ThbiAiCiJhbm90YWRhcyBjb24gZWwgc+1tYm9sbyBNZXRhIChNKSB5IHNlIHB1ZWRlIGFjY2VkZXIgYSBlbGxhcyBtZWRpYW50ZSBsYXMgIgoidGVjbGFzIEVzYywgQWx0IG8gTWV0YSBkZXBlbmRpZW5kbyBkZSBsYSBjb25maWd1cmFjafNuIGRlIHR1IHRlY2xhZG8uIExhcyAiCiJzaWd1aWVudGVzIGNvbWJpbmFjaW9uZXMgZXN04W4gZGlzcG9uaWJsZXMgZW4gbGEgdmVudGFuYSBwcmluY2lwYWwuIExhcyAiCiJ0ZWNsYXMgb3BjaW9uYWxlcyBlc3ThbiByZXByZXNlbnRhZGFzIGVudHJlIHBhculudGVzaXM6XG4iCiJcbiIKCiM6IG5hbm8uYzoyNzgKbXNnaWQgImZyZWVfbm9kZSgpOiBmcmVlJ2QgYSBub2RlLCBZQVkhXG4iCm1zZ3N0ciAiZnJlZV9ub2RlKCk6IGxpYmVyYWRvIHVuIG5vZG8sIFlFQUghXG4iCgojOiBuYW5vLmM6MjgzCm1zZ2lkICJmcmVlX25vZGUoKTogZnJlZSdkIGxhc3Qgbm9kZS5cbiIKbXNnc3RyICJmcmVlX25vZGUoKTogbGliZXJhZG8gZWwg+mx0aW1vIG5vZG8uXG4iCgojOiBuYW5vLmM6MzM1Cm1zZ2lkICIiCiJVc2FnZTogbmFubyBbR05VIGxvbmcgb3B0aW9uXSBbb3B0aW9uXSArTElORSA8ZmlsZT5cbiIKIlxuIgptc2dzdHIgIiIKIlVzbzogbmFubyBbb3BjafNuIGxhcmdhIEdOVV0gW29wY2nzbl0gK0zNTkVBIDxmaWNoZXJvPlxuIgoiXG4iCgojOiBuYW5vLmM6MzM2Cm1zZ2lkICJPcHRpb25cdFx0TG9uZyBvcHRpb25cdFx0TWVhbmluZ1xuIgptc2dzdHIgIk9wY2lvblx0XHRPcGNpb24gbGFyZ2FcdFx0U2lnbmlmaWNhZG9cbiIKCiM6IG5hbm8uYzozMzgKbXNnaWQgIiAtVCBcdFx0LS10YWJzaXplPVtudW1dXHRcdFNldCB3aWR0aCBvZiBhIHRhYiB0byBudW1cbiIKbXNnc3RyICIgLVQgXHRcdC0tdGFic2l6ZT1bbnVtXVx0XHRGaWphciBlbCBhbmNobyBkZSB0YWIgYSBudW1cbiIKCiM6IG5hbm8uYzozNDEKbXNnaWQgIiAtUlx0XHQtLXJlZ2V4cFx0XHRVc2UgcmVndWxhciBleHByZXNzaW9ucyBmb3Igc2VhcmNoXG4iCm1zZ3N0ciAiIC1SXHRcdC0tcmVnZXhwXHRcdFVzYXIgZXhwcmVzaW9uZXMgcmVndWxhcmVzIHBhcmEgbGFzIGL6c3F1ZWRhc1xuIgoKIzogbmFuby5jOjM0NQptc2dpZCAiIC1WIFx0XHQtLXZlcnNpb25cdFx0UHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgZXhpdFxuIgptc2dzdHIgIiAtViBcdFx0LS12ZXJzaW9uXHRcdEltcHJpbWlyIHZlcnNp824geSBzYWxpclxuIgoKIzogbmFuby5jOjM0Nwptc2dpZCAiIC1jIFx0XHQtLWNvbnN0XHRcdFx0Q29uc3RhbnRseSBzaG93IGN1cnNvciBwb3NpdGlvblxuIgptc2dzdHIgIiAtYyBcdFx0LS1jb25zdFx0XHRcdE1vc3RyYXIgY29uc3RhbnRlbWVudGUgbGEgcG9zaWNp824gZGVsIGN1cnNvclxuIgoKIzogbmFuby5jOjM0OQptc2dpZCAiIC1oIFx0XHQtLWhlbHBcdFx0XHRTaG93IHRoaXMgbWVzc2FnZVxuIgptc2dzdHIgIiAtaCBcdFx0LS1oZWxwXHRcdFx0TW9zdHJhciBlc3RlIG1lbnNhamVcbiIKCiM6IG5hbm8uYzozNTIKbXNnaWQgIiAtayBcdFx0LS1jdXRcdFx0XHRMZXQgXksgY3V0IGZyb20gY3Vyc29yIHRvIGVuZCBvZiBsaW5lXG4iCm1zZ3N0ciAiIC1rIFx0XHQtLWN1dFx0XHRcdF5LIGNvcnRhIGRlc2RlIGVsIGN1cnNvciBhbCBmaW5hbCBkZSBs7W5lYVxuIgoKIzogbmFuby5jOjM1NQptc2dpZCAiIC1pIFx0XHQtLWF1dG9pbmRlbnRcdFx0QXV0b21hdGljYWxseSBpbmRlbnQgbmV3IGxpbmVzXG4iCm1zZ3N0ciAiIC1pIFx0XHQtLWF1dG9pbmRlbnRcdFx0SW5kZW50YXIgYXV0b23hdGljYW1lbnRlIG51ZXZhcyBs7W5lYXNcbiIKCiM6IG5hbm8uYzozNTcKbXNnaWQgIiAtbCBcdFx0LS1ub2ZvbGxvd1x0XHREb24ndCBmb2xsb3cgc3ltYm9saWMgbGlua3MsIG92ZXJ3cml0ZVxuIgptc2dzdHIgIiAtbCBcdFx0LS1ub2ZvbGxvd1x0XHRObyBzZWd1aXIgZW5sYWNlcyBzaW1i82xpY29zLCBzb2JyZWVzY3JpYmlybG9zXG4iCgojOiBuYW5vLmM6MzYwCm1zZ2lkICIgLW0gXHRcdC0tbW91c2VcdFx0XHRFbmFibGUgbW91c2VcbiIKbXNnc3RyICIgLW0gXHRcdC0tbW91c2VcdFx0XHRIYWJpbGl0YXIgcmF0825cbiIKCiM6IG5hbm8uYzozNjUKbXNnaWQgIiIKIiAtciBbI2NvbHNdIFx0LS1maWxsPVsjY29sc11cdFx0U2V0IGZpbGwgY29scyB0byAod3JhcCBsaW5lcyBhdCkgI2NvbHNcbiIKbXNnc3RyICIgLXIgWyNjb2xzXSBcdC0tZmlsbD1bI2NvbHNdXHRcdFJlbGxlbmFyIGNvbHVtbmFzICh3cmFwZWFyIGVuKSAjY29sc1xuIgoKIzogbmFuby5jOjM2Nwptc2dpZCAiIC1wXHQgXHQtLXBpY29cdFx0XHRFbXVsYXRlIFBpY28gYXMgY2xvc2VseSBhcyBwb3NzaWJsZVxuIgptc2dzdHIgIiAtcFx0IFx0LS1waWNvXHRcdFx0RW11bGFyIGEgUGljbyBsbyBt4XhpbW8gcG9zaWJsZVxuIgoKIzogbmFuby5jOjM2OQptc2dpZCAiIC1zIFtwcm9nXSBcdC0tc3BlbGxlcj1bcHJvZ11cdEVuYWJsZSBhbHRlcm5hdGUgc3BlbGxlclxuIgptc2dzdHIgIiAtcyBbcHJvZ10gXHQtLXNwZWxsZXI9W3Byb2ddXHRIYWJpbGl0YXIgY29ycmVjdG9yIGFsdGVybmF0aXZvXG4iCgojOiBuYW5vLmM6MzcxCm1zZ2lkICIgLXQgXHRcdC0tdGVtcGZpbGVcdFx0QXV0byBzYXZlIG9uIGV4aXQsIGRvbid0IHByb21wdFxuIgptc2dzdHIgIiAtdCBcdFx0LS10ZW1wZmlsZVx0XHRBdXRvc2FsdmFyIGFsIHNhbGlyLCBzaW4gcHJlZ3VudGFyXG4iCgojOiBuYW5vLmM6MzczCm1zZ2lkICIgLXYgXHRcdC0tdmlld1x0XHRcdFZpZXcgKHJlYWQgb25seSkgbW9kZVxuIgptc2dzdHIgIiAtdiBcdFx0LS12aWV3XHRcdFx0TW9kbyB2aXN1YWxpemFjafNuIChz82xvIGxlY3R1cmEpXG4iCgojOiBuYW5vLmM6Mzc1Cm1zZ2lkICIgLXcgXHRcdC0tbm93cmFwXHRcdERvbid0IHdyYXAgbG9uZyBsaW5lc1xuIgptc2dzdHIgIiAtdyBcdFx0LS1ub3dyYXBcdFx0Tm8gd3JhcGVhciBs7W5lYXMgbGFyZ2FzXG4iCgojOiBuYW5vLmM6Mzc3Cm1zZ2lkICIgLXggXHRcdC0tbm9oZWxwXHRcdERvbid0IHNob3cgaGVscCB3aW5kb3dcbiIKbXNnc3RyICIgLXggXHRcdC0tbm9oZWxwXHRcdE5vIG1vc3RyYXIgbGEgdmVudGFuYSBkZSBheXVkYVxuIgoKIzogbmFuby5jOjM3OQptc2dpZCAiIC16IFx0XHQtLXN1c3BlbmRcdFx0RW5hYmxlIHN1c3BlbmRcbiIKbXNnc3RyICIgLXogXHRcdC0tc3VzcGVuZFx0XHRIYWJpbGl0YXIgc3VzcGVuc2nzblxuIgoKIzogbmFuby5jOjM4MQptc2dpZCAiICtMSU5FXHRcdFx0XHRcdFN0YXJ0IGF0IGxpbmUgbnVtYmVyIExJTkVcbiIKbXNnc3RyICIgK0xJTkVcdFx0XHRcdFx0Q29tZW56YXIgZW4gbGEgbO1uZWEgbvptZXJvIEzNTkVBXG4iCgojOiBuYW5vLmM6MzgzCm1zZ2lkICIiCiJVc2FnZTogbmFubyBbb3B0aW9uXSArTElORSA8ZmlsZT5cbiIKIlxuIgptc2dzdHIgIiIKIlVzbzogbmFubyBbb3BjafNuXSArTM1ORUEgPGZpY2hlcm8+XG4iCiJcbiIKCiM6IG5hbm8uYzozODQKbXNnaWQgIk9wdGlvblx0XHRNZWFuaW5nXG4iCm1zZ3N0ciAiT3BjafNuXHRcdFNpZ25pZmljYWRvXG4iCgojOiBuYW5vLmM6Mzg1Cm1zZ2lkICIgLVQgW251bV1cdFNldCB3aWR0aCBvZiBhIHRhYiB0byBudW1cbiIKbXNnc3RyICIgLVQgW251bV1cdEZpamFyIGVsIGFuY2hvIGRlIHRhYiBhIG51bVxuIgoKIzogbmFuby5jOjM4Ngptc2dpZCAiIC1SXHRcdFVzZSByZWd1bGFyIGV4cHJlc3Npb25zIGZvciBzZWFyY2hcbiIKbXNnc3RyICIgLVJcdFx0VXNhciBleHByZXNpb25lcyByZWd1bGFyZXMgcGFyYSBsYXMgYvpzcXVlZGFzXG4iCgojOiBuYW5vLmM6Mzg3Cm1zZ2lkICIgLVYgXHRcdFByaW50IHZlcnNpb24gaW5mb3JtYXRpb24gYW5kIGV4aXRcbiIKbXNnc3RyICIgLVYgXHRcdEltcHJpbWlyIGluZm9ybWFjafNuIHNvYnJlIGxhIHZlcnNp824geSBzYWxpclxuIgoKIzogbmFuby5jOjM4OAptc2dpZCAiIC1jIFx0XHRDb25zdGFudGx5IHNob3cgY3Vyc29yIHBvc2l0aW9uXG4iCm1zZ3N0ciAiIC1jIFx0XHRNb3N0cmFyIGNvbnN0YW50ZW1lbnRlIGxhIHBvc2ljafNuIGRlbCBjdXJzb3JcbiIKCiM6IG5hbm8uYzozODkKbXNnaWQgIiAtaCBcdFx0U2hvdyB0aGlzIG1lc3NhZ2VcbiIKbXNnc3RyICIgLWggXHRcdE1vc3RyYXIgZXN0ZSBtZW5zYWplXG4iCgojOiBuYW5vLmM6MzkxCm1zZ2lkICIgLWsgXHRcdExldCBeSyBjdXQgZnJvbSBjdXJzb3IgdG8gZW5kIG9mIGxpbmVcbiIKbXNnc3RyICIgLWsgXHRcdF5LIGNvcnRhIGRlc2RlIGVsIGN1cnNvciBhbCBmaW5hbCBkZSBs7W5lYVxuIgoKIzogbmFuby5jOjM5Mwptc2dpZCAiIC1pIFx0XHRBdXRvbWF0aWNhbGx5IGluZGVudCBuZXcgbGluZXNcbiIKbXNnc3RyICIgLXYgXHRcdEluZGVudGFyIGF1dG9t4XRpY2FtZW50ZSBudWV2YXMgbO1uZWFzXG4iCgojOiBuYW5vLmM6Mzk1Cm1zZ2lkICIgLWwgXHRcdERvbid0IGZvbGxvdyBzeW1ib2xpYyBsaW5rcywgb3ZlcndyaXRlXG4iCm1zZ3N0ciAiIC1sIFx0XHRObyBzZWd1aXIgZW5sYWNlcyBzaW1i82xpY29zLCBzb2JyZWVzY3JpYmlybG9zXG4iCgojOiBuYW5vLmM6Mzk4Cm1zZ2lkICIgLW0gXHRcdEVuYWJsZSBtb3VzZVxuIgptc2dzdHIgIiAtbSBcdFx0SGFiaWxpdGFyIHJhdPNuXG4iCgojOiBuYW5vLmM6NDAyCm1zZ2lkICIgLXIgWyNjb2xzXSBcdFNldCBmaWxsIGNvbHMgdG8gKHdyYXAgbGluZXMgYXQpICNjb2xzXG4iCm1zZ3N0ciAiIC1yIFsjY29sc10gXHRSZWxsZW5hciBjb2x1bW5hcyAod3JhcGVhciBs7W5lYXMgZW4pICNjb2xzXG4iCgojOiBuYW5vLmM6NDAzCm1zZ2lkICIgLXMgW3Byb2ddICBcdEVuYWJsZSBhbHRlcm5hdGUgc3BlbGxlclxuIgptc2dzdHIgIiAtcyBbcHJvZ10gXHRIYWJpbGl0YXIgY29ycmVjdG9yIGFsdGVybmF0aXZvXG4iCgojOiBuYW5vLmM6NDA0Cm1zZ2lkICIgLXAgXHRcdEVtdWxhdGUgUGljbyBhcyBjbG9zZWx5IGFzIHBvc3NpYmxlXG4iCm1zZ3N0ciAiIC1wIFx0XHRFbXVsYXIgYSBQaWNvIGxvIG3heGltbyBwb3NpYmxlXG4iCgojOiBuYW5vLmM6NDA1Cm1zZ2lkICIgLXQgXHRcdEF1dG8gc2F2ZSBvbiBleGl0LCBkb24ndCBwcm9tcHRcbiIKbXNnc3RyICIgLXQgXHRcdEF1dG9zYWx2YXIgYWwgc2FsaXIsIG5vIHByZWd1bnRhclxuIgoKIzogbmFuby5jOjQwNgptc2dpZCAiIC12IFx0XHRWaWV3IChyZWFkIG9ubHkpIG1vZGVcbiIKbXNnc3RyICIgLXYgXHRcdE1vZG8gdmlzdWFsaXphY2nzbiAoc/NsbyBsZWN0dXJhKVxuIgoKIzogbmFuby5jOjQwNwptc2dpZCAiIC13IFx0XHREb24ndCB3cmFwIGxvbmcgbGluZXNcbiIKbXNnc3RyICIgLXcgXHRcdE5vIHdyYXBlYXIgbO1uZWFzIGxhcmdhc1xuIgoKIzogbmFuby5jOjQwOAptc2dpZCAiIC14IFx0XHREb24ndCBzaG93IGhlbHAgd2luZG93XG4iCm1zZ3N0ciAiIC14IFx0XHRObyBtb3N0cmFyIGxhIHZlbnRhbmEgZGUgYXl1ZGFcbiIKCiM6IG5hbm8uYzo0MDkKbXNnaWQgIiAteiBcdFx0RW5hYmxlIHN1c3BlbmRcbiIKbXNnc3RyICIgLXogXHRcdEhhYmlsaXRhciBzdXNwZW5zafNuXG4iCgojOiBuYW5vLmM6NDEwCm1zZ2lkICIgK0xJTkVcdFx0U3RhcnQgYXQgbGluZSBudW1iZXIgTElORVxuIgptc2dzdHIgIiArTM1ORUFcdFx0Q29tZW56YXIgZW4gbGEgbO1uZWEgbvptZXJvIEzNTkVBXG4iCgojOiBuYW5vLmM6NDE3CiMsIGMtZm9ybWF0Cm1zZ2lkICIgbmFubyB2ZXJzaW9uICVzIGJ5IENocmlzIEFsbGVncmV0dGEgKGNvbXBpbGVkICVzLCAlcylcbiIKbXNnc3RyICIgbmFubyB2ZXJzafNuICVzIHBvciBDaHJpcyBBbGxlZ3JldHRhIChjb21waWxhZG8gJXMsICVzKVxuIgoKIzogbmFuby5jOjQyMAptc2dpZCAiIEVtYWlsOiBuYW5vQG5hbm8tZWRpdG9yLm9yZ1x0V2ViOiBodHRwOi8vd3d3Lm5hbm8tZWRpdG9yLm9yZyIKbXNnc3RyICIgQ29ycmVvLWU6IG5hbm9AbmFuby1lZGl0b3Iub3JnXHRXZWI6IGh0dHA6Ly93d3cubmFuby1lZGl0b3Iub3JnIgoKIzogbmFuby5jOjQyMwptc2dpZCAiIgoiXG4iCiIgQ29tcGlsZWQgb3B0aW9uczoiCm1zZ3N0ciAiIgoiXG4iCiIgT3BjaW9uZXMgY29tcGlsYWRhczoiCgojOiBuYW5vLmM6NDczCm1zZ2lkICJNYXJrIFNldCIKbXNnc3RyICJNYXJjYSBFc3RhYmxlY2lkYSIKCiM6IG5hbm8uYzo0NzgKbXNnaWQgIk1hcmsgVU5zZXQiCm1zZ3N0ciAiTWFyY2EgQm9ycmFkYSIKCiM6IG5hbm8uYzo5MDUKIywgYy1mb3JtYXQKbXNnaWQgImNoZWNrX3dyYXAgY2FsbGVkIHdpdGggaW5wdHItPmRhdGE9XCIlc1wiXG4iCm1zZ3N0ciAiY2hlY2tfd3JhcCBsbGFtYWRhIGNvbiBpbnB0ci0+ZGF0YT1cIiVzXCJcbiIKCiM6IG5hbm8uYzo5NTYKIywgYy1mb3JtYXQKbXNnaWQgImN1cnJlbnQtPmRhdGEgbm93ID0gXCIlc1wiXG4iCm1zZ3N0ciAiY3VycmVudC0+ZGF0YSBhaG9yYSA9IFwiJWRcIlxuIgoKIzogbmFuby5jOjEwMDkKIywgYy1mb3JtYXQKbXNnaWQgIkFmdGVyLCBkYXRhID0gXCIlc1wiXG4iCm1zZ3N0ciAiRGVzcHXpcywgZGF0YSA9IFwiJXNcIlxuIgoKIzogbmFuby5jOjExMTEKbXNnaWQgIkVkaXQgYSByZXBsYWNlbWVudCIKbXNnc3RyICJFZGl0YXIgdW4gcmVlbXBsYXpvIgoKIzogbmFuby5jOjEzMjIKIywgYy1mb3JtYXQKbXNnaWQgIkNvdWxkIG5vdCBjcmVhdGUgYSB0ZW1wb3JhcnkgZmlsZW5hbWU6ICVzIgptc2dzdHIgIk5vIHB1ZGUgY3JlYXIgdW4gZmljaGVybyB0ZW1wb3JhbDogJXMiCgojOiBuYW5vLmM6MTMzOAptc2dpZCAiRmluaXNoZWQgY2hlY2tpbmcgc3BlbGxpbmciCm1zZ3N0ciAiUmV2aXNp824gZGUgb3J0b2dyYWbtYSBmaW5hbGl6YWRhIgoKIzogbmFuby5jOjEzNDAKbXNnaWQgIlNwZWxsIGNoZWNraW5nIGZhaWxlZCIKbXNnc3RyICJDb21wcm9iYWNp824gZGUgb3J0b2dyYWbtYSBmYWxsaWRhIgoKIzogbmFuby5jOjEzNjAKbXNnaWQgIlNhdmUgbW9kaWZpZWQgYnVmZmVyIChBTlNXRVJJTkcgXCJOb1wiIFdJTEwgREVTVFJPWSBDSEFOR0VTKSA/ICIKbXNnc3RyICJTYWx2YXIgZWwgYnVmZmVyIG1vZGlmaWNhZG8gKFJFU1BPTkRFUiBcIk5vXCIgREVTVFJVSVLBIExPUyBDQU1CSU9TKSA/IgoKIzogbmFuby5jOjE1MjMKbXNnaWQgIkNhbm5vdCByZXNpemUgdG9wIHdpbiIKbXNnc3RyICJObyBzZSBwdWVkZSBjYW1iaWFyIGVsIHRhbWHxbyBkZSBsYSB2ZW50YW5hIHN1cGVyaW9yIgoKIzogbmFuby5jOjE1MjUKbXNnaWQgIkNhbm5vdCBtb3ZlIHRvcCB3aW4iCm1zZ3N0ciAiTm8gc2UgcHVlZGUgbW92ZXIgbGEgdmVudGFuYSBzdXBlcmlvciIKCiM6IG5hbm8uYzoxNTI3Cm1zZ2lkICJDYW5ub3QgcmVzaXplIGVkaXQgd2luIgptc2dzdHIgIk5vIHNlIHB1ZWRlIGNhbWJpYXIgZWwgdGFtYfFvIGRlIGxhIHZlbnRhbmEgZGUgZWRpY2nzbiIKCiM6IG5hbm8uYzoxNTI5Cm1zZ2lkICJDYW5ub3QgbW92ZSBlZGl0IHdpbiIKbXNnc3RyICJObyBzZSBwdWVkZSBtb3ZlciBsYSB2ZW50YW5hIGRlIGVkaWNp824iCgojOiBuYW5vLmM6MTUzMQptc2dpZCAiQ2Fubm90IHJlc2l6ZSBib3R0b20gd2luIgptc2dzdHIgIk5vIHNlIHB1ZWRlIGNhbWJpYXIgZWwgdGFtYfFvIGRlIGxhIHZlbnRhbmEgaW5mZXJpb3IiCgojOiBuYW5vLmM6MTUzMwptc2dpZCAiQ2Fubm90IG1vdmUgYm90dG9tIHdpbiIKbXNnc3RyICJObyBzZSBwdWVkZSBtb3ZlciBsYSB2ZW50YW5hIGluZmVyaW9yIgoKIzogbmFuby5jOjE4MTUKbXNnaWQgIkNhbiBub3cgVW5KdXN0aWZ5ISIKbXNnc3RyICJBaG9yYSBwdWVkZXMgZGVzanVzdGlmaWNhciEiCgojOiBuYW5vLmM6MTkxMwojLCBjLWZvcm1hdAptc2dpZCAiJXMgZW5hYmxlL2Rpc2FibGUiCm1zZ3N0ciAiJXMgaGFiaWxpdGFyL2Rlc2hhYmlsaXRhciIKCiM6IG5hbm8uYzoxOTI1Cm1zZ2lkICJlbmFibGVkIgptc2dzdHIgImhhYmlsaXRhZG8iCgojOiBuYW5vLmM6MTkyNgptc2dpZCAiZGlzYWJsZWQiCm1zZ3N0ciAiZGVzaGFiaWxpdGFkbyIKCiM6IG5hbm8uYzoyMTU2Cm1zZ2lkICJNYWluOiBzZXQgdXAgd2luZG93c1xuIgptc2dzdHIgIk1haW46IGNvbmZpZ3VyYXIgbGFzIHZlbnRhbmFzXG4iCgojOiBuYW5vLmM6MjE2OQptc2dpZCAiTWFpbjogYm90dG9tIHdpblxuIgptc2dzdHIgIk1haW46IHZlbnRhbmEgaW5mZXJpb3JcbiIKCiM6IG5hbm8uYzoyMTc1Cm1zZ2lkICJNYWluOiBvcGVuIGZpbGVcbiIKbXNnc3RyICJNYWluOiBhYnJpciBmaWNoZXJvXG4iCgojOiBuYW5vLmM6MjIxMgojLCBjLWZvcm1hdAptc2dpZCAiSSBnb3QgQWx0LU8tJWMhICglZClcbiIKbXNnc3RyICJQaWxs6SBBbHQtTy0lYyEgKCVkKVxuIgoKIzogbmFuby5jOjIyMzQKIywgYy1mb3JtYXQKbXNnaWQgIkkgZ290IEFsdC1bLTEtJWMhICglZClcbiIKbXNnc3RyICJQaWxs6SBBbHQtWy0xLSVjISAoJWQpXG4iCgojOiBuYW5vLmM6MjI2NwojLCBjLWZvcm1hdAptc2dpZCAiSSBnb3QgQWx0LVstMi0lYyEgKCVkKVxuIgptc2dzdHIgIlBpbGzpIEFsdC1bLTItJWMhICglZClcbiIKCiM6IG5hbm8uYzoyMzE1CiMsIGMtZm9ybWF0Cm1zZ2lkICJJIGdvdCBBbHQtWy0lYyEgKCVkKVxuIgptc2dzdHIgIlBpbGzpIEFsdC1bLSVjISAoJWQpXG4iCgojOiBuYW5vLmM6MjM0MQojLCBjLWZvcm1hdAptc2dpZCAiSSBnb3QgQWx0LSVjISAoJWQpXG4iCm1zZ3N0ciAiUGlsbOkgQWx0LSVjISAoJWQpXG4iCgojOiBzZWFyY2guYzoxMTgKIywgYy1mb3JtYXQKbXNnaWQgIkNhc2UgU2Vuc2l0aXZlIFJlZ2V4cCBTZWFyY2glcyVzIgptc2dzdHIgIkL6c3F1ZWRhIGNvbiBSZWdleHAgeSBNYXn6c2N1bGFzL01pbvpzY3VsYXMlcyVzIgoKIzogc2VhcmNoLmM6MTIwCiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWdleHAgU2VhcmNoJXMlcyIKbXNnc3RyICJCdXNxdWVkYSBjb24gUmVnZXhwJXMlcyIKCiM6IHNlYXJjaC5jOjEyMgojLCBjLWZvcm1hdAptc2dpZCAiQ2FzZSBTZW5zaXRpdmUgU2VhcmNoJXMlcyIKbXNnc3RyICJC+nNxdWVkYSBjb24gTWF5+nNjdWxhcy9NaW76c2N1bGFzJXMlcyIKCiM6IHNlYXJjaC5jOjEyNAojLCBjLWZvcm1hdAptc2dpZCAiU2VhcmNoJXMlcyIKbXNnc3RyICJCdXNjYXIlcyVzIgoKIzogc2VhcmNoLmM6MTI3Cm1zZ2lkICIgKHRvIHJlcGxhY2UpIgptc2dzdHIgIiAoYSByZWVtcGxhemFyKSIKCiM6IHNlYXJjaC5jOjEzNiBzZWFyY2guYzozMTgKbXNnaWQgIlNlYXJjaCBDYW5jZWxsZWQiCm1zZ3N0ciAiQvpzcXVlZGEgQ2FuY2VsYWRhIgoKIzogc2VhcmNoLmM6MTk0CiMsIGMtZm9ybWF0Cm1zZ2lkICJcIiVzLi4uXCIgbm90IGZvdW5kIgptc2dzdHIgIlwiJXMuLi5cIiBubyBlbmNvbnRyYWRvIgoKIzogc2VhcmNoLmM6MjQzCm1zZ2lkICJTZWFyY2ggV3JhcHBlZCIKbXNnc3RyICJC+nNxdWVkYSBSZWNvbWVuemFkYSIKCiM6IHNlYXJjaC5jOjM0MAojLCBjLWZvcm1hdAptc2dpZCAiUmVwbGFjZWQgJWQgb2NjdXJlbmNlcyIKbXNnc3RyICIlZCBvY3VycmVuY2lhcyByZWVtcGxhemFkYXMiCgojOiBzZWFyY2guYzozNDIKbXNnaWQgIlJlcGxhY2VkIDEgb2NjdXJlbmNlIgptc2dzdHIgIjEgb2N1cnJlbmNpYSByZWVtcGxhemFkYSIKCiM6IHNlYXJjaC5jOjQ3OSBzZWFyY2guYzo1NzUgc2VhcmNoLmM6NTkxCm1zZ2lkICJSZXBsYWNlIENhbmNlbGxlZCIKbXNnc3RyICJSZWVtcGxhemFyIENhbmNlbGFkbyIKCiM6IHNlYXJjaC5jOjUyNQptc2dpZCAiUmVwbGFjZSB0aGlzIGluc3RhbmNlPyIKbXNnc3RyICJSZWVtcGxhemFyIGVzdGEgaW5zdGFuY2lhPyIKCiM6IHNlYXJjaC5jOjUzMwptc2dpZCAiUmVwbGFjZSBmYWlsZWQ6IHVua25vd24gc3ViZXhwcmVzc2lvbiEiCm1zZ3N0ciAiRmFsbG8gZW4gcmVlbXBsYXphcjogc3ViZXhwcmVzafNuIGRlc2Nvbm9jaWRhISIKCiM6IHNlYXJjaC5jOjYxNgojLCBjLWZvcm1hdAptc2dpZCAiUmVwbGFjZSB3aXRoIFslc10iCm1zZ3N0ciAiUmVlbXBsYXphciBjb24gWyVzXSIKCiM6IHNlYXJjaC5jOjYyMCBzZWFyY2guYzo2MjQKbXNnaWQgIlJlcGxhY2Ugd2l0aCIKbXNnc3RyICJSZWVtcGxhemFyIGNvbiIKCiMuIEFzayBmb3IgaXQKIzogc2VhcmNoLmM6NjU5Cm1zZ2lkICJFbnRlciBsaW5lIG51bWJlciIKbXNnc3RyICJJbnRyb2R1Y2UgbvptZXJvIGRlIGztbmVhIgoKIzogc2VhcmNoLmM6NjYxCm1zZ2lkICJBYm9ydGVkIgptc2dzdHIgIkFib3J0YWRvIgoKIzogc2VhcmNoLmM6NjgxCm1zZ2lkICJDb21lIG9uLCBiZSByZWFzb25hYmxlIgptc2dzdHIgIlZlbmdhIHlhLCBzZSByYXpvbmFibGUiCgojOiBzZWFyY2guYzo2ODYKIywgYy1mb3JtYXQKbXNnaWQgIk9ubHkgJWQgbGluZXMgYXZhaWxhYmxlLCBza2lwcGluZyB0byBsYXN0IGxpbmUiCm1zZ3N0ciAiU/NsbyBoYXkgJWQgbO1uZWFzLCBzYWx0YW5kbyBoYXN0YSBsYSD6bHRpbWEiCgojOiB3aW5pby5jOjEyMQojLCBjLWZvcm1hdAptc2dpZCAiYWN0dWFsX3hfZnJvbV9zdGFydCBmb3IgeHBsdXM9JWQgcmV0dXJuZWQgJWRcbiIKbXNnc3RyICJhY3R1YWxfeF9mcm9tX3N0YXJ0IHBhcmEgeHBsdXM9JWQgZGV2b2x2afMgJWRcbiIKCiM6IHdpbmlvLmM6NDM5CiMsIGMtZm9ybWF0Cm1zZ2lkICJpbnB1dCAnJWMnICglZClcbiIKbXNnc3RyICJlbnRyYWRhICclYycgKCVkKVxuIgoKIzogd2luaW8uYzo0NzcKbXNnaWQgIk5ldyBCdWZmZXIiCm1zZ3N0ciAiTnVldm8gQnVmZmVyIgoKIzogd2luaW8uYzo0ODAKbXNnaWQgIiAgRmlsZTogLi4uIgptc2dzdHIgIkZpY2hlcm86IC4uLiIKCiM6IHdpbmlvLmM6NDg4Cm1zZ2lkICJNb2RpZmllZCIKbXNnc3RyICJNb2RpZmljYWRvIgoKIzogd2luaW8uYzo5NDAKIywgYy1mb3JtYXQKbXNnaWQgIk1vdmVkIHRvICglZCwgJWQpIGluIGVkaXQgYnVmZmVyXG4iCm1zZ3N0ciAiTW92aWVuZG8gYSAoJWQsICVkKSBlbiBidWZmZXIgZGUgZWRpY2nzblxuIgoKIzogd2luaW8uYzo5NTEKIywgYy1mb3JtYXQKbXNnaWQgImN1cnJlbnQtPmRhdGEgPSBcIiVzXCJcbiIKbXNnc3RyICJjdXJyZW50LT5kYXRhID0gXCIlc1wiXG4iCgojOiB3aW5pby5jOjk5NgojLCBjLWZvcm1hdAptc2dpZCAiSSBnb3QgXCIlc1wiXG4iCm1zZ3N0ciAiUGlsbOkgXCIlc1wiXG4iCgojOiB3aW5pby5jOjEwMjEKbXNnaWQgIlllcyIKbXNnc3RyICJT7SIKCiM6IHdpbmlvLmM6MTAyMwptc2dpZCAiQWxsIgptc2dzdHIgIlRvZGFzIgoKIzogd2luaW8uYzoxMDI1Cm1zZ2lkICJObyIKbXNnc3RyICJObyIKCiM6IHdpbmlvLmM6MTE2MgojLCBjLWZvcm1hdAptc2dpZCAiZG9fY3Vyc29ycG9zOiBsaW5lcGN0ID0gJWYsIGJ5dGVwY3QgPSAlZlxuIgptc2dzdHIgImRvX2N1cnNvcnBvczogbGluZXBjdCA9ICVmLCBieXRlcGN0ID0gJWZcbiIKCiM6IHdpbmlvLmM6MTE2Ngptc2dpZCAibGluZSAlZCBvZiAlZCAoJS4wZiUlKSwgY2hhcmFjdGVyICVkIG9mICVkICglLjBmJSUpIgptc2dzdHIgImztbmVhICVkIGRlICVkICglLjBmJSUpLCBjYXLhY3RlciAlZCBkZSAlZCAoJS4wZiUlKSIKCiM6IHdpbmlvLmM6MTI5NAptc2dpZCAiRHVtcGluZyBmaWxlIGJ1ZmZlciB0byBzdGRlcnIuLi5cbiIKbXNnc3RyICJWb2xjYW5kbyBidWZmZXIgZGUgZmljaGVybyBhIHN0ZGVyci4uLlxuIgoKIzogd2luaW8uYzoxMjk2Cm1zZ2lkICJEdW1waW5nIGN1dGJ1ZmZlciB0byBzdGRlcnIuLi5cbiIKbXNnc3RyICJWb2xjYW5kbyBlbCBjdXRidWZmZXIgYSBzdGRlcnIuLi5cbiIKCiM6IHdpbmlvLmM6MTI5OAptc2dpZCAiRHVtcGluZyBhIGJ1ZmZlciB0byBzdGRlcnIuLi5cbiIKbXNnc3RyICJWb2xjYW5kbyB1biBidWZmZXIgYSBzdGRlcnIuLi5cbiIKCiM6IHdpbmlvLmM6MTMzOQptc2dpZCAiVGhlIG5hbm8gdGV4dCBlZGl0b3IiCm1zZ3N0ciAiRWwgZWRpdG9yIGRlIHRleHRvcyBuYW5vIgoKIzogd2luaW8uYzoxMzQwCm1zZ2lkICJ2ZXJzaW9uICIKbXNnc3RyICJ2ZXJzafNuICIKCiM6IHdpbmlvLmM6MTM0MQptc2dpZCAiQnJvdWdodCB0byB5b3UgYnk6Igptc2dzdHIgIlBvciBjb3J0ZXPtYSBkZToiCgojOiB3aW5pby5jOjEzNDIKbXNnaWQgIlNwZWNpYWwgdGhhbmtzIHRvOiIKbXNnc3RyICJBZ3JhZGVjaW1pZW50b3MgZXNwZWNpYWxlcyBwYXJhOiIKCiM6IHdpbmlvLmM6MTM0Mwptc2dpZCAiVGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiIKbXNnc3RyICJMYSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24iCgojOiB3aW5pby5jOjEzNDQKbXNnaWQgIlBhdmVsIEN1cnRpcywgWmV5ZCBCZW4tSGFsaW0gYW5kIEVyaWMgUy4gUmF5bW9uZCBmb3IgbmN1cnNlcyIKbXNnc3RyICJQYXZlbCBDdXJ0aXMsIFpleWQgQmVuLUhhbGltIHkgRXJpYyBTLiBSYXltb25kIHBvciBuY3Vyc2VzIgoKIzogd2luaW8uYzoxMzQ1Cm1zZ2lkICJhbmQgYW55b25lIGVsc2Ugd2UgZm9yZ290Li4uIgptc2dzdHIgInkgY3VhbHF1aWVyYSBkZWwgcXVlIG5vcyBoYXlhbW9zIG9sdmlkYWRvLi4uIgoKIzogd2luaW8uYzoxMzQ2Cm1zZ2lkICJUaGFuayB5b3UgZm9yIHVzaW5nIG5hbm8hXG4iCm1zZ3N0ciAiR3JhY2lhcyBwb3IgdXNhciBuYW5vIVxuIgoKI34gbXNnaWQgIkp1c3RpZnkgQ29tcGxldGUiCiN+IG1zZ3N0ciAiSnVzdGlmaWNhciBDb21wbGV0YWRvIgoKI34gbXNnaWQgIiAtcFx0IFx0LS1waWNvXHRcdFx0TWFrZSBib3R0b20gMiBsaW5lcyBtb3JlIFBpY28tbGlrZVxuIgojfiBtc2dzdHIgIiAtcFx0IFx0LS1waWNvXHRcdFx0SGFjZXIgZWwgbWVu+iBt4XMgcGFyZWNpZG8gYSBQaWNvXG4iCgojfiBtc2dpZCAiIC1wIFx0XHRNYWtlIGJvdHRvbSAyIGxpbmVzIG1vcmUgUGljby1saWtlXG4iCiN+IG1zZ3N0ciAiIC1wIFx0XHRIYWNlciBlbCBtZW76IG3hcyBwYXJlY2lkbyBhIFBpY29cbiIKCiN+IG1zZ2lkICJFcnJvciBkZWxldGluZyB0ZW1wZmlsZSwgYWNrISIKI34gbXNnc3RyICJFcnJvciBib3JyYW5kbyBlbCBmaWNoZXJvIHRlbXBvcmFsLCBvdWNoISIKCiN+IG1zZ2lkICJDb3VsZCBub3QgaW52b2tlIHNwZWxsIHByb2dyYW0gXCIlc1wiIgojfiBtc2dzdHIgIk5vIHNlIHB1ZG8gbGxhbWFyIGFsIGNvcnJlY3RvciBcIiVzXCIiCgojfiBtc2dpZCAiQ291bGQgbm90IGludm9rZSBcImlzcGVsbFwiIgojfiBtc2dzdHIgIk5vIHB1ZGUgbGxhbWFyIGEgXCJpc3BlbGxcIiIKCiN+IG1zZ2lkICJVc2UgdGhlIG51bGwgc3RyaW5nLCBcIlwiIgojfiBtc2dzdHIgIlVzYXIgbGEgY2FkZW5hIHZhY+1hLCBcIlwiIgoKI34gbXNnaWQgIk51bGwgU3RyIgojfiBtc2dzdHIgIkNhZGVuYSB2YWPtYSIK