IyBuYW5vIC0gTm9yd2VnaWFuIHRyYW5zbGF0aW9uCiMgQ29weXJpZ2h0IChDKSAyMDAyIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgojIEVpdmluZCBLavhyc3RhZCA8ZWtqQHZlc3RkYXRhLm5vPiwgMjAwMS4KIyBTdmVpbiBPLiBCZW5u5nMgPHN2ZWluQG5vcmdlLm5vPiwgMjAwMi4KIyBLamV0aWwgVG9yZ3JpbSBIb21tZSA8a2pldGlsaG9AbGlucHJvLm5vPiwgMjAwMi4KIwptc2dpZCAiIgptc2dzdHIgIiIKIlByb2plY3QtSWQtVmVyc2lvbjogbmFubyAxLjEuN1xuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMDItMDMtMDUgMTg6MjAtMDUwMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogMjAwMi0wMy0yMiAyMDozNCswMTAwXG4iCiJMYXN0LVRyYW5zbGF0b3I6IEtqZXRpbCBUb3JncmltIEhvbW1lIDxramV0aWxob0BsaW5wcm8ubm8+XG4iCiJMYW5ndWFnZS1UZWFtOiBOb3J3ZWdpYW4gbnlub3JzayA8aTE4bi1ubkBsaXN0ZXIucGluZy51aW8ubm8+XG4iCiJNSU1FLVZlcnNpb246IDEuMFxuIgoiQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PWlzby04ODU5LTFcbiIKIkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXRcbiIKCiM6IGN1dC5jOjQzCiMsIGMtZm9ybWF0Cm1zZ2lkICJhZGRfdG9fY3V0YnVmZmVyIGNhbGxlZCB3aXRoIGlucHRyLT5kYXRhID0gJXNcbiIKbXNnc3RyICJhZGRfdG9fY3V0YnVmZmVyIHZhcnQga2FsbGEgbWVkIGlucHRyLT5kYXRhID0gJXNcbiIKCiM6IGN1dC5jOjIxNQptc2dpZCAiQmxldyBhd2F5IGN1dGJ1ZmZlciA9KVxuIgptc2dzdHIgIlT4bXRlIHV0a2xpcHBzYnVmZmVyZXRcbiIKCiM6IGZpbGVzLmM6MTY3Cm1zZ2lkICJyZWFkX2xpbmU6IG5vdCBvbiBmaXJzdCBsaW5lIGFuZCBwcmV2IGlzIE5VTEwiCm1zZ3N0ciAicmVhZF9saW5lOiBpa2tqZSBw5SBm+HJzdGUgbGluamUsIG9nIHByZXYgZXIgTlVMTCIKCiM6IGZpbGVzLmM6MjQ3IGZpbGVzLmM6MjczCiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWFkICVkIGxpbmVzIgptc2dzdHIgIkxlc3RlICVkIGxpbmplciIKCiM6IGZpbGVzLmM6MjY4CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWFkICVkIGxpbmVzIChDb252ZXJ0ZWQgZnJvbSBNYWMgZm9ybWF0KSIKbXNnc3RyICJMZXN0ZSAlZCBsaW5qZXIgKHDlIE1hYy1mb3JtYXQpIgoKIzogZmlsZXMuYzoyNzAKIywgYy1mb3JtYXQKbXNnaWQgIlJlYWQgJWQgbGluZXMgKENvbnZlcnRlZCBmcm9tIERPUyBmb3JtYXQpIgptc2dzdHIgIkxlc3RlICVkIGxpbmplciAocOUgRE9TLWZvcm1hdCkiCgojOiBmaWxlcy5jOjI5MSBzZWFyY2guYzoyMTYKIywgYy1mb3JtYXQKbXNnaWQgIlwiJXNcIiBub3QgZm91bmQiCm1zZ3N0ciAiqyVzuyBpa2tqZSBmdW5uZSIKCiMuIFdlIGhhdmUgYSBuZXcgZmlsZQojOiBmaWxlcy5jOjI5NQptc2dpZCAiTmV3IEZpbGUiCm1zZ3N0ciAiTnkgZmlsIgoKIzogZmlsZXMuYzozMDgKIywgYy1mb3JtYXQKbXNnaWQgIkZpbGUgXCIlc1wiIGlzIGEgZGlyZWN0b3J5Igptc2dzdHIgIkZpbGEgqyVzuyBlciBlaW4ga2F0YWxvZyIKCiMgImVuaGV0IiA9ICJkZXZpY2UiLCBrYW5za2plLCBtZW4gZGV0IGVyIGxpdHQgZm9ydmlycmFuZGUKIy4gRG9uJ3Qgb3BlbiBjaGFyYWN0ZXIgb3IgYmxvY2sgZmlsZXMuICBTb3JyeSwgL2Rldi9zbmRzdGF0IQojOiBmaWxlcy5jOjMxMQojLCBjLWZvcm1hdAptc2dpZCAiRmlsZSBcIiVzXCIgaXMgYSBkZXZpY2UgZmlsZSIKbXNnc3RyICJGaWxhIKslc7sgZXIgaWtramUgZWkgdmFubGVnIGZpbCIKCiM6IGZpbGVzLmM6MzE5Cm1zZ2lkICJSZWFkaW5nIEZpbGUiCm1zZ3N0ciAiTGVzIGZpbCIKCiM6IGZpbGVzLmM6MzcxCiMsIGMtZm9ybWF0Cm1zZ2lkICJGaWxlIHRvIGluc2VydCBbZnJvbSAlc10gIgptc2dzdHIgIkZpbGEgc29tIHNrYWwgc2V0amFzdCBpbm4gW2Zy5SAlc10gIgoKIzogZmlsZXMuYzozNzUKbXNnaWQgIkZpbGUgdG8gaW5zZXJ0IFtmcm9tIC4vXSAiCm1zZ3N0ciAiRmlsYSBzb20gc2thbCBzZXRqYXN0IGlubiBbZnLlIC4vXSAiCgojOiBmaWxlcy5jOjM4MyBmaWxlcy5jOjUyOSBmaWxlcy5jOjU3NyBmaWxlcy5jOjY3NSBmaWxlcy5jOjY4NyBmaWxlcy5jOjc0MCBmaWxlcy5jOjc1MSBmaWxlcy5jOjE0NjkKIywgYy1mb3JtYXQKbXNnaWQgImZpbGVuYW1lIGlzICVzIgptc2dzdHIgImZpbG5hbW5ldCBlciAlcyIKCiM6IGZpbGVzLmM6NDEzCiMsIGMtZm9ybWF0Cm1zZ2lkICJDYW4ndCBpbnNlcnQgZmlsZSBmcm9tIG91dHNpZGUgb2YgJXMiCm1zZ3N0ciAiS2FuIGlra2plIHNldGphIGlubiBmaWwgZnLlIHV0YW5mb3IgJXMiCgojOiBmaWxlcy5jOjQ3MyBmaWxlcy5jOjExNzggZmlsZXMuYzoxNTUyIG5hbm8uYzoxODM5Cm1zZ2lkICJDYW5jZWxsZWQiCm1zZ3N0ciAiQXZicm90ZSIKCiM6IGZpbGVzLmM6NDg4Cm1zZ2lkICJLZXkgaWxsZWdhbCBpbiBub24tbXVsdGlidWZmZXIgbW9kZSIKbXNnc3RyICJUYXN0ZW4gZXIgdWd5bGRpZyB1dGFuIGZsZWlyZSBidWZmZXIiCgojOiBmaWxlcy5jOjY2NyBmaWxlcy5jOjczMgptc2dpZCAiTm8gbW9yZSBvcGVuIGZpbGVzIgptc2dzdHIgIkluZ2VuIGZsZWlyZSBvcG5lIGZpbGVyIgoKIzogZmlsZXMuYzo2OTUgZmlsZXMuYzo3NTkKIywgYy1mb3JtYXQKbXNnaWQgIlN3aXRjaGVkIHRvICVzIgptc2dzdHIgIkJ5dHRhIHRpbCAlcyIKCiM6IGZpbGVzLmM6MTIwMQojLCBjLWZvcm1hdAptc2dpZCAiQ2FuJ3Qgd3JpdGUgb3V0c2lkZSBvZiAlcyIKbXNnc3RyICJLYW4gaWtramUgc2tyaXZhIHV0YW5mb3IgJXMiCgojOiBmaWxlcy5jOjEyMzggZmlsZXMuYzoxMjU0IGZpbGVzLmM6MTI2OCBmaWxlcy5jOjEyOTEgZmlsZXMuYzoxMzAwIGZpbGVzLmM6MTMxMgojLCBjLWZvcm1hdAptc2dpZCAiQ291bGQgbm90IG9wZW4gZmlsZSBmb3Igd3JpdGluZzogJXMiCm1zZ3N0ciAiS3VubmUgaWtramUgb3BuYSBmaWxhIGZvciBza3JpdmluZzogJXMiCgojOiBmaWxlcy5jOjEyNzMKIywgYy1mb3JtYXQKbXNnaWQgIldyb3RlID4lc1xuIgptc2dzdHIgIlNrcmVpdiA+JXNcbiIKCiM6IGZpbGVzLmM6MTMyMgojLCBjLWZvcm1hdAptc2dpZCAiQ291bGQgbm90IGNsb3NlICVzOiAlcyIKbXNnc3RyICJLdW5uZSBpa2tqZSBsdWtrYSAlczogJXMiCgojLiBUcnkgYSByZW5hbWU/PwojOiBmaWxlcy5jOjEzNDUgZmlsZXMuYzoxMzU0IGZpbGVzLmM6MTM1OQojLCBjLWZvcm1hdAptc2dpZCAiQ291bGQgbm90IG9wZW4gJXMgZm9yIHdyaXRpbmc6ICVzIgptc2dzdHIgIkt1bm5lIGlra2plIG9wbmEgJXMgZm9yIHNrcml2aW5nOiAlcyIKCiM6IGZpbGVzLmM6MTM2NgojLCBjLWZvcm1hdAptc2dpZCAiQ291bGQgbm90IHNldCBwZXJtaXNzaW9ucyAlbyBvbiAlczogJXMiCm1zZ3N0ciAiS3VubmUgaWtramUgc2V0amEgdGlsZ2FuZ3NuaXblICVvIHDlICVzOiAlcyIKCiM6IGZpbGVzLmM6MTM3MwojLCBjLWZvcm1hdAptc2dpZCAiV3JvdGUgJWQgbGluZXMiCm1zZ3N0ciAiU2tyZWl2ICVkIGxpbmplciIKCiM6IGZpbGVzLmM6MTQxNAptc2dpZCAiIFtNYWMgRm9ybWF0XSIKbXNnc3RyICIgW01hYy1mb3JtYXRdIgoKIzogZmlsZXMuYzoxNDE2Cm1zZ2lkICIgW0RPUyBGb3JtYXRdIgptc2dzdHIgIiBbRE9TLWZvcm1hdF0iCgojOiBmaWxlcy5jOjE0MjQKbXNnaWQgIkFwcGVuZCBTZWxlY3Rpb24gdG8gRmlsZSIKbXNnc3RyICJMZWdnIHRpbCB2YWx0IG9tcuVkZSBw5SBzbHV0dGVuIGF2IGZpbCIKCiM6IGZpbGVzLmM6MTQyNwptc2dpZCAiV3JpdGUgU2VsZWN0aW9uIHRvIEZpbGUiCm1zZ3N0ciAiTGFncmEgdmFsdCBvbXLlZGUgdGlsIGZpbCIKCiM6IGZpbGVzLmM6MTQzMwptc2dpZCAiRmlsZSBOYW1lIHRvIEFwcGVuZCIKbXNnc3RyICJOYW1uIHDlIGZpbCBzb20gc2thbCBsZWdnamFzdCB0aWwiCgojOiBmaWxlcy5jOjE0MzYKbXNnaWQgIkZpbGUgTmFtZSB0byBXcml0ZSIKbXNnc3RyICJOYW1uIHDlIGZpbGEgc29tIHNrYWwgbGFncmFzdCIKCiM6IGZpbGVzLmM6MTQ4Mwptc2dpZCAiRmlsZSBleGlzdHMsIE9WRVJXUklURSA/Igptc2dzdHIgIkZpbGEgZWtzaXN0ZXJlciwgU0tSSVYgT1ZFUj8iCgojOiBmaWxlcy5jOjIwMDMKbXNnaWQgIihtb3JlKSIKbXNnc3RyICIobWVpcikiCgojOiBmaWxlcy5jOjIzMjUKbXNnaWQgIkNhbid0IG1vdmUgdXAgYSBkaXJlY3RvcnkiCm1zZ3N0ciAiS2FuIGlra2plIHNraWZ0YSB0aWwgZm9yZWxkcmVrYXRhbG9nZW4iCgojOiBmaWxlcy5jOjIzMzcKbXNnaWQgIkNhbid0IHZpc2l0IHBhcmVudCBpbiByZXN0cmljdGVkIG1vZGUiCm1zZ3N0ciAiS2FuIGlra2plIGflIHRpbCBmb3JlbGRyZWthdGFsb2dlbiBpIGF2Z3JlbnNhIG1vZHVzIgoKIy4gV2UgY2FuJ3Qgb3BlbiB0aGlzIGRpciBmb3Igc29tZSByZWFzb24uICBDb21wbGFpbgojOiBmaWxlcy5jOjIzNTkgZmlsZXMuYzoyNDE4CiMsIGMtZm9ybWF0Cm1zZ2lkICJDYW4ndCBvcGVuIFwiJXNcIjogJXMiCm1zZ3N0ciAiS2FuIGlra2plIG9wbmEgqyVzuzogJXMiCgojOiBmaWxlcy5jOjIzODkgZ2xvYmFsLmM6MzIwCm1zZ2lkICJHb3RvIERpcmVjdG9yeSIKbXNnc3RyICJH5SB0aWwga2F0YWxvZyIKCiM6IGZpbGVzLmM6MjM5NgojLCBjLWZvcm1hdAptc2dpZCAiQ2FuJ3QgZ28gb3V0c2lkZSBvZiAlcyBpbiByZXN0cmljdGVkIG1vZGUiCm1zZ3N0ciAiS2FuIGlra2plIGflIHV0YW5mb3IgJXMgaSBhdmdyZW5zYSBtb2R1cyIKCiM6IGZpbGVzLmM6MjQwMwptc2dpZCAiR290byBDYW5jZWxsZWQiCm1zZ3N0ciAiR+UgdGlsLWZ1bmtzam9uZW4gYXZicm90ZW4iCgojOiBnbG9iYWwuYzoyMDUKbXNnaWQgIkNvbnN0YW50IGN1cnNvciBwb3NpdGlvbiIKbXNnc3RyICJGYXN0IG1hcmv4cnBvc2lzam9uIgoKIzogZ2xvYmFsLmM6MjA2Cm1zZ2lkICJBdXRvIGluZGVudCIKbXNnc3RyICJBdXRvbWF0aXNrIGlubnJ5a2siCgojOiBnbG9iYWwuYzoyMDcKbXNnaWQgIlN1c3BlbmQiCm1zZ3N0ciAiTGVnZyBpIGJha2dydW5uZW4iCgojOiBnbG9iYWwuYzoyMDgKbXNnaWQgIkhlbHAgbW9kZSIKbXNnc3RyICJIamVscGV0ZWtzdCIKCiM6IGdsb2JhbC5jOjIwOQptc2dpZCAiUGljbyBtb2RlIgptc2dzdHIgIlBpY28tbW9kdXMiCgojOiBnbG9iYWwuYzoyMTAKbXNnaWQgIk1vdXNlIHN1cHBvcnQiCm1zZ3N0ciAiTXVzZXN0+HR0ZSIKCiM6IGdsb2JhbC5jOjIxMQptc2dpZCAiQ3V0IHRvIGVuZCIKbXNnc3RyICJLbGlwcCB0aWwgc2x1dHRlbiIKCiM6IGdsb2JhbC5jOjIxMgptc2dpZCAiQmFja3dhcmRzIHNlYXJjaCIKbXNnc3RyICJT+GsgYmFrb3ZlciIKCiM6IGdsb2JhbC5jOjIxMwptc2dpZCAiQ2FzZSBzZW5zaXRpdmUgc2VhcmNoIgptc2dzdHIgIlP4ayAoc2tpbCBtZWxsb20gc3RvcmUgb2cgc23lIGJva3N0YXZhcikiCgojOiBnbG9iYWwuYzoyMTYKbXNnaWQgIlJlZ3VsYXIgZXhwcmVzc2lvbiBzZWFyY2giCm1zZ3N0ciAiU/hrIGV0dGVyIHJlZ3Vs5nJ0IHV0dHJ5a2siCgojOiBnbG9iYWwuYzoyMTkKbXNnaWQgIk5vIGNvbnZlcnNpb24gZnJvbSBET1MvTWFjIGZvcm1hdCIKbXNnc3RyICJJbmdhIG9tc2V0amluZyBmcuUgRE9TL01hYy1mb3JtYXQiCgojOiBnbG9iYWwuYzoyMjAKbXNnaWQgIldyaXRpbmcgZmlsZSBpbiBET1MgZm9ybWF0Igptc2dzdHIgIlNrcml2IGZpbCBw5SBET1MtZm9ybWF0IgoKIzogZ2xvYmFsLmM6MjIxCm1zZ2lkICJXcml0aW5nIGZpbGUgaW4gTWFjIGZvcm1hdCIKbXNnc3RyICJTa3JpdiBmaWwgcOUgTWFjLWZvcm1hdCIKCiM6IGdsb2JhbC5jOjIyMgptc2dpZCAiU21vb3RoIHNjcm9sbGluZyIKbXNnc3RyICJKYW1uIGxpbmplcnVsbGluZyIKCiM6IGdsb2JhbC5jOjIyMwptc2dpZCAiQXV0byB3cmFwIgptc2dzdHIgIkF1dG9tYXRpc2sgbGluamVicmVra2luZyIKCiM6IGdsb2JhbC5jOjIyNgptc2dpZCAiTXVsdGlwbGUgZmlsZSBidWZmZXJzIgptc2dzdHIgIk1hbmdlIGZpbGJ1ZmZlciIKCiM6IGdsb2JhbC5jOjI4MQptc2dpZCAiSW52b2tlIHRoZSBoZWxwIG1lbnUiCm1zZ3N0ciAiVmlzIGhqZWxwZW1lbnllbiIKCiM6IGdsb2JhbC5jOjI4Mgptc2dpZCAiV3JpdGUgdGhlIGN1cnJlbnQgZmlsZSB0byBkaXNrIgptc2dzdHIgIkxhZ3JhIGdqZWxkYW5kZSBmaWwiCgojOiBnbG9iYWwuYzoyODUKbXNnaWQgIkNsb3NlIGN1cnJlbnRseSBsb2FkZWQgZmlsZS9FeGl0IGZyb20gbmFubyIKbXNnc3RyICJMdWtrIGdqZWxkYW5kZSBmaWwvQXZzbHV0dCBuYW5vIgoKIzogZ2xvYmFsLmM6Mjg3Cm1zZ2lkICJFeGl0IGZyb20gbmFubyIKbXNnc3RyICJBdnNsdXR0IG5hbm8iCgojOiBnbG9iYWwuYzoyOTAKbXNnaWQgIkdvdG8gYSBzcGVjaWZpYyBsaW5lIG51bWJlciIKbXNnc3RyICJIb3BwIHRpbCBlaXQgbGluamVudW1tZXIiCgojOiBnbG9iYWwuYzoyOTEKbXNnaWQgIkp1c3RpZnkgdGhlIGN1cnJlbnQgcGFyYWdyYXBoIgptc2dzdHIgIkJyZWtrIG9tIGF2c25pdHRldCIKCiM6IGdsb2JhbC5jOjI5Mgptc2dpZCAiVW5qdXN0aWZ5IGFmdGVyIGEganVzdGlmeSIKbXNnc3RyICJHamVyIG9tIG9tYnJla2tpbmciCgojOiBnbG9iYWwuYzoyOTMKbXNnaWQgIlJlcGxhY2UgdGV4dCB3aXRoaW4gdGhlIGVkaXRvciIKbXNnc3RyICJFcnN0YXR0IHRla3N0IgoKIzogZ2xvYmFsLmM6Mjk0Cm1zZ2lkICJJbnNlcnQgYW5vdGhlciBmaWxlIGludG8gdGhlIGN1cnJlbnQgb25lIgptc2dzdHIgIlNldHQgaW5uIGVpIGFubmEgZmlsIGkgZGVubmUiCgojOiBnbG9iYWwuYzoyOTUKbXNnaWQgIlNlYXJjaCBmb3IgdGV4dCB3aXRoaW4gdGhlIGVkaXRvciIKbXNnc3RyICJT+GsgZXR0ZXIgdGVrc3QiCgojOiBnbG9iYWwuYzoyOTYKbXNnaWQgIk1vdmUgdG8gdGhlIHByZXZpb3VzIHNjcmVlbiIKbXNnc3RyICJH5SB0aWwgZvhycmUgc2tqZXJtIgoKIzogZ2xvYmFsLmM6Mjk3Cm1zZ2lkICJNb3ZlIHRvIHRoZSBuZXh0IHNjcmVlbiIKbXNnc3RyICJH5SB0aWwgbmVzdGUgc2tqZXJtIgoKIzogZ2xvYmFsLmM6Mjk4Cm1zZ2lkICJDdXQgdGhlIGN1cnJlbnQgbGluZSBhbmQgc3RvcmUgaXQgaW4gdGhlIGN1dGJ1ZmZlciIKbXNnc3RyICJLbGlwcCB1dCBkZW5uZSBsaW5qYSBvZyBsYWdyYSBobyBpIHV0a2xpcHBzYnVmZmVyZXQiCgojOiBnbG9iYWwuYzoyOTkKbXNnaWQgIlVuY3V0IGZyb20gdGhlIGN1dGJ1ZmZlciBpbnRvIHRoZSBjdXJyZW50IGxpbmUiCm1zZ3N0ciAiU2V0IGlubiB1dGtsaXBwc2J1ZmZlcmV0IGhlciIKCiM6IGdsb2JhbC5jOjMwMAptc2dpZCAiU2hvdyB0aGUgcG9zaXRpb24gb2YgdGhlIGN1cnNvciIKbXNnc3RyICJWaXMgbWFya/hycG9zaXNqb25lbiIKCiM6IGdsb2JhbC5jOjMwMQptc2dpZCAiSW52b2tlIHRoZSBzcGVsbCBjaGVja2VyIChpZiBhdmFpbGFibGUpIgptc2dzdHIgIlN0YXJ0IHN0YXZla29udHJvbGwgKG9tIHRpbGdqZW5nZWxlZykiCgojOiBnbG9iYWwuYzozMDIKbXNnaWQgIk1vdmUgdXAgb25lIGxpbmUiCm1zZ3N0ciAiR+UgZWkgbGluamUgb3BwIgoKIzogZ2xvYmFsLmM6MzAzCm1zZ2lkICJNb3ZlIGRvd24gb25lIGxpbmUiCm1zZ3N0ciAiR+UgZWkgbGluamUgbmVkIgoKIzogZ2xvYmFsLmM6MzA0Cm1zZ2lkICJNb3ZlIGZvcndhcmQgb25lIGNoYXJhY3RlciIKbXNnc3RyICJH5SBlaW4gYm9rc3RhdiBmcmFtIgoKIzogZ2xvYmFsLmM6MzA1Cm1zZ2lkICJNb3ZlIGJhY2sgb25lIGNoYXJhY3RlciIKbXNnc3RyICJH5SBlaW4gYm9rc3RhdiBhdHRlbmRlIgoKIzogZ2xvYmFsLmM6MzA2Cm1zZ2lkICJNb3ZlIHRvIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGN1cnJlbnQgbGluZSIKbXNnc3RyICJH5SB0aWwgc3RhcnRlbiBhdiBsaW5qYSIKCiM6IGdsb2JhbC5jOjMwNwptc2dpZCAiTW92ZSB0byB0aGUgZW5kIG9mIHRoZSBjdXJyZW50IGxpbmUiCm1zZ3N0ciAiR+UgdGlsIHNsdXR0ZW4gYXYgbGluamEiCgojOiBnbG9iYWwuYzozMDgKbXNnaWQgIkdvIHRvIHRoZSBmaXJzdCBsaW5lIG9mIHRoZSBmaWxlIgptc2dzdHIgIkflIHRpbCBm+HJzdGUgbGluamUgaSBmaWxhIgoKIzogZ2xvYmFsLmM6MzA5Cm1zZ2lkICJHbyB0byB0aGUgbGFzdCBsaW5lIG9mIHRoZSBmaWxlIgptc2dzdHIgIkflIHRpbCBzaXN0ZSBsaW5qZSBpIGZpbGEiCgojOiBnbG9iYWwuYzozMTAKbXNnaWQgIlJlZnJlc2ggKHJlZHJhdykgdGhlIGN1cnJlbnQgc2NyZWVuIgptc2dzdHIgIlRlaWtuIHNramVybWVuIHDlIG55dHQiCgojOiBnbG9iYWwuYzozMTEKbXNnaWQgIk1hcmsgdGV4dCBhdCB0aGUgY3VycmVudCBjdXJzb3IgbG9jYXRpb24iCm1zZ3N0ciAiTWFya2VyIHRla3N0ZW4gdmVkIG1hcmv4cmVuIgoKIzogZ2xvYmFsLmM6MzEyCm1zZ2lkICJEZWxldGUgdGhlIGNoYXJhY3RlciB1bmRlciB0aGUgY3Vyc29yIgptc2dzdHIgIlNsZXR0IGJva3N0YXZlbiB1bmRlciBtYXJr+HJlbiIKCiM6IGdsb2JhbC5jOjMxNAptc2dpZCAiRGVsZXRlIHRoZSBjaGFyYWN0ZXIgdG8gdGhlIGxlZnQgb2YgdGhlIGN1cnNvciIKbXNnc3RyICJTbGV0dCBib2tzdGF2ZW4gdGlsIHZlbnN0cmUgZm9yIG1hcmv4cmVuIgoKIzogZ2xvYmFsLmM6MzE1Cm1zZ2lkICJJbnNlcnQgYSB0YWIgY2hhcmFjdGVyIgptc2dzdHIgIlNldHQgaW5uIGVpdCB0YWItdGVpa24iCgojOiBnbG9iYWwuYzozMTYKbXNnaWQgIkluc2VydCBhIGNhcnJpYWdlIHJldHVybiBhdCB0aGUgY3Vyc29yIHBvc2l0aW9uIgptc2dzdHIgIlNldHQgaW5uIGVpdCBsaW5qZXNraWZ0IgoKIzogZ2xvYmFsLmM6MzE4Cm1zZ2lkICJNYWtlIHRoZSBjdXJyZW50IHNlYXJjaCBvciByZXBsYWNlIGNhc2UgKGluKXNlbnNpdGl2ZSIKbXNnc3RyICJHamVyIGdqZWxkYW5kZSBz+GsgdXRhbiDlIHNraWxqZSBtZWxsb20gc3RvcmUvc23lIGJva3N0YXZhciIKCiM6IGdsb2JhbC5jOjMxOQptc2dpZCAiR28gdG8gZmlsZSBicm93c2VyIgptc2dzdHIgIkflIHRpbCBmaWxsZXNhciIKCiM6IGdsb2JhbC5jOjMyMQptc2dpZCAiQ2FuY2VsIHRoZSBjdXJyZW50IGZ1bmN0aW9uIgptc2dzdHIgIkF2YnJ5dCBnamVsZGFuZGUgZnVua3Nqb24iCgojOiBnbG9iYWwuYzozMjIKbXNnaWQgIkFwcGVuZCB0byB0aGUgY3VycmVudCBmaWxlIgptc2dzdHIgIkxlZ2cgdGlsIG5vdmVyYW5kZSBmaWwiCgojOiBnbG9iYWwuYzozMjMKbXNnaWQgIlNlYXJjaCBiYWNrd2FyZHMiCm1zZ3N0ciAiU/hrIGJha292ZXIiCgojOiBnbG9iYWwuYzozMjQKbXNnaWQgIldyaXRlIGZpbGUgb3V0IGluIERPUyBmb3JtYXQiCm1zZ3N0ciAiU2tyaXYgZmlsYSBw5SBET1MtZm9ybWF0IgoKIzogZ2xvYmFsLmM6MzI1Cm1zZ2lkICJXcml0ZSBmaWxlIG91dCBpbiBNYWMgZm9ybWF0Igptc2dzdHIgIlNrcml2IGZpbGEgcOUgTWFjLWZvcm1hdCIKCiM6IGdsb2JhbC5jOjMyNwptc2dpZCAiVXNlIFJlZ3VsYXIgZXhwcmVzc2lvbnMiCm1zZ3N0ciAiQnJ1ayByZWd1bOZyZSB1dHRyeWtrIgoKIzogZ2xvYmFsLmM6MzI4Cm1zZ2lkICJGaW5kIG90aGVyIGJyYWNrZXQiCm1zZ3N0ciAiRmlubiBkZW4gYW5kcmUga2xhbW1hIgoKIzogZ2xvYmFsLmM6MzMxCm1zZ2lkICJPcGVuIHByZXZpb3VzbHkgbG9hZGVkIGZpbGUiCm1zZ3N0ciAiT3BuYSB0aWRsZWdhcmUgbGVzdCBmaWwiCgojOiBnbG9iYWwuYzozMzIKbXNnaWQgIk9wZW4gbmV4dCBsb2FkZWQgZmlsZSIKbXNnc3RyICJPcG5hIG5lc3RlIGxlc3RlIGZpbCIKCiM6IGdsb2JhbC5jOjMzOSBnbG9iYWwuYzo0OTIgZ2xvYmFsLmM6NTI3IGdsb2JhbC5jOjU2MiBnbG9iYWwuYzo1NzcgZ2xvYmFsLmM6NjA2IGdsb2JhbC5jOjYzMiBnbG9iYWwuYzo2NDMgZ2xvYmFsLmM6NjU1IGdsb2JhbC5jOjY3Ngptc2dpZCAiR2V0IEhlbHAiCm1zZ3N0ciAiSGplbHAiCgojOiBnbG9iYWwuYzozNDQKbXNnaWQgIkNsb3NlIgptc2dzdHIgIkx1a2siCgojOiBnbG9iYWwuYzozNDggZ2xvYmFsLmM6NTk5IGdsb2JhbC5jOjY1Nwptc2dpZCAiRXhpdCIKbXNnc3RyICJBdnNsdXR0IgoKIzogZ2xvYmFsLmM6MzUxCm1zZ2lkICJXcml0ZU91dCIKbXNnc3RyICJMYWdyYSIKCiM6IGdsb2JhbC5jOjM1NiBnbG9iYWwuYzo0NjEKbXNnaWQgIkp1c3RpZnkiCm1zZ3N0ciAiQnJla2sgb20iCgojLiB0aGlzIGlzIHNvIHdlIGNhbiB2aWV3IG11bHRpcGxlIGZpbGVzCiM6IGdsb2JhbC5jOjM2MyBnbG9iYWwuYzozNjcgZ2xvYmFsLmM6Mzc2IGdsb2JhbC5jOjM4MAptc2dpZCAiUmVhZCBGaWxlIgptc2dzdHIgIkxlcyBmaWwiCgojOiBnbG9iYWwuYzozODYgZ2xvYmFsLmM6NDU3IGdsb2JhbC5jOjUwMwptc2dpZCAiUmVwbGFjZSIKbXNnc3RyICJFcnN0YXR0IgoKIzogZ2xvYmFsLmM6MzkwCm1zZ2lkICJXaGVyZSBJcyIKbXNnc3RyICJGaW5uIgoKIzogZ2xvYmFsLmM6Mzk0IGdsb2JhbC5jOjU5MSBnbG9iYWwuYzo2NjAKbXNnaWQgIlByZXYgUGFnZSIKbXNnc3RyICJG+HJyZSBzaWRlIgoKIzogZ2xvYmFsLmM6Mzk4IGdsb2JhbC5jOjU5NSBnbG9iYWwuYzo2NjQKbXNnaWQgIk5leHQgUGFnZSIKbXNnc3RyICJOZXN0ZSBzaWRlIgoKIzogZ2xvYmFsLmM6NDAyCm1zZ2lkICJDdXQgVGV4dCIKbXNnc3RyICJLbGlwcCIKCiM6IGdsb2JhbC5jOjQwNgptc2dpZCAiVW5KdXN0aWZ5Igptc2dzdHIgIlUtb21icmVrayIKCiM6IGdsb2JhbC5jOjQwOQptc2dpZCAiVW5DdXQgVHh0Igptc2dzdHIgIlUta2xpcHAiCgojOiBnbG9iYWwuYzo0MTMKbXNnaWQgIkN1ciBQb3MiCm1zZ3N0ciAiUG9zaXNqb24iCgojOiBnbG9iYWwuYzo0MTcKbXNnaWQgIlRvIFNwZWxsIgptc2dzdHIgIlN0YXZpbmciCgojOiBnbG9iYWwuYzo0MjEKbXNnaWQgIlVwIgptc2dzdHIgIk9wcCIKCiM6IGdsb2JhbC5jOjQyNAptc2dpZCAiRG93biIKbXNnc3RyICJOZWQiCgojOiBnbG9iYWwuYzo0MjcKbXNnaWQgIkZvcndhcmQiCm1zZ3N0ciAiRnJhbW92ZXIiCgojOiBnbG9iYWwuYzo0MzAKbXNnaWQgIkJhY2siCm1zZ3N0ciAiQmFrb3ZlciIKCiM6IGdsb2JhbC5jOjQzMwptc2dpZCAiSG9tZSIKbXNnc3RyICJIb21lIgoKIzogZ2xvYmFsLmM6NDM2Cm1zZ2lkICJFbmQiCm1zZ3N0ciAiRW5kIgoKIzogZ2xvYmFsLmM6NDM5Cm1zZ2lkICJSZWZyZXNoIgptc2dzdHIgIkZyaXNrIG9wcCIKCiM6IGdsb2JhbC5jOjQ0Mgptc2dpZCAiTWFyayBUZXh0Igptc2dzdHIgIk1lcmsgdGVrc3QiCgojOiBnbG9iYWwuYzo0NDUKbXNnaWQgIkRlbGV0ZSIKbXNnc3RyICJEZWxldGUiCgojOiBnbG9iYWwuYzo0NDkKbXNnaWQgIkJhY2tzcGFjZSIKbXNnc3RyICJCYWNrc3BhY2UiCgojOiBnbG9iYWwuYzo0NTMKbXNnaWQgIlRhYiIKbXNnc3RyICJUYWIiCgojOiBnbG9iYWwuYzo0NjUKbXNnaWQgIkVudGVyIgptc2dzdHIgIkVudGVyIgoKIzogZ2xvYmFsLmM6NDY5IGdsb2JhbC5jOjUwNyBnbG9iYWwuYzo1NDIKbXNnaWQgIkdvdG8gTGluZSIKbXNnc3RyICJH5SB0aWwgbGluamUiCgojOiBnbG9iYWwuYzo0NzQKbXNnaWQgIkZpbmQgT3RoZXIgQnJhY2tldCIKbXNnc3RyICJGaW5uIGRlbiBhbmRyZSBrbGFtbWEiCgojOiBnbG9iYWwuYzo0ODAKbXNnaWQgIlByZXZpb3VzIEZpbGUiCm1zZ3N0ciAiRvhycmUgZmlsIgoKIzogZ2xvYmFsLmM6NDgzCm1zZ2lkICJOZXh0IEZpbGUiCm1zZ3N0ciAiTmVzdGUgZmlsIgoKIzogZ2xvYmFsLmM6NDk1IGdsb2JhbC5jOjUzMCBnbG9iYWwuYzo1NjUgZ2xvYmFsLmM6NTc5IGdsb2JhbC5jOjYyNiBnbG9iYWwuYzo2MzQgZ2xvYmFsLmM6NjQ1IGdsb2JhbC5jOjY3OCB3aW5pby5jOjE0MTkKbXNnaWQgIkNhbmNlbCIKbXNnc3RyICJBdmJyeXQiCgojOiBnbG9iYWwuYzo0OTcgZ2xvYmFsLmM6NTMyIGdsb2JhbC5jOjU2NyBnbG9iYWwuYzo1ODIKbXNnaWQgIkZpcnN0IExpbmUiCm1zZ3N0ciAiRvhyc3RlIGxpbmplIgoKIzogZ2xvYmFsLmM6NTAwIGdsb2JhbC5jOjUzNSBnbG9iYWwuYzo1NzAgZ2xvYmFsLmM6NTg1Cm1zZ2lkICJMYXN0IExpbmUiCm1zZ3N0ciAiU2lzdGUgbGluamUiCgojOiBnbG9iYWwuYzo1MTEgZ2xvYmFsLmM6NTQ2Cm1zZ2lkICJDYXNlIFNlbnMiCm1zZ3N0ciAiU3RvcmUvc23lIgoKIzogZ2xvYmFsLmM6NTE0IGdsb2JhbC5jOjU0OQptc2dpZCAiRGlyZWN0aW9uIgptc2dzdHIgIlJldG5pbmciCgojOiBnbG9iYWwuYzo1MTkgZ2xvYmFsLmM6NTU0Cm1zZ2lkICJSZWdleHAiCm1zZ3N0ciAiUmVndXR0cnlrayIKCiM6IGdsb2JhbC5jOjUzOAptc2dpZCAiTm8gUmVwbGFjZSIKbXNnc3RyICJJbmdhIGVyc3RhdHRpbmciCgojOiBnbG9iYWwuYzo2MDkgZ2xvYmFsLmM6NjM4Cm1zZ2lkICJUbyBGaWxlcyIKbXNnc3RyICJUaWwgZmlsZXIiCgojOiBnbG9iYWwuYzo2MTUKbXNnaWQgIkRPUyBGb3JtYXQiCm1zZ3N0ciAiRE9TLWZvcm1hdCIKCiM6IGdsb2JhbC5jOjYxOAptc2dpZCAiTWFjIEZvcm1hdCIKbXNnc3RyICJNYWMtZm9ybWF0IgoKIzogZ2xvYmFsLmM6NjIyCm1zZ2lkICJBcHBlbmQiCm1zZ3N0ciAiTGVnZyB0aWwiCgojOiBnbG9iYWwuYzo2NjgKbXNnaWQgIkdvdG8iCm1zZ3N0ciAiR+UgdGlsIgoKIzogbmFuby5jOjE4NgojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJCdWZmZXIgd3JpdHRlbiB0byAlc1xuIgptc2dzdHIgIiIKIlxuIgoiQnVmZmVyIGxhZ3JhIHRpbCAlc1xuIgoKIzogbmFuby5jOjE4OAojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJObyAlcyB3cml0dGVuICh0b28gbWFueSBiYWNrdXAgZmlsZXM/KVxuIgptc2dzdHIgIiIKIlxuIgoiJXMgdmFydCBpa2tqZSBsYWdyYSAoZm9yIG1hbmdlIHNpa3Jpbmdza29waWFyPylcbiIKCiM6IG5hbm8uYzoxOTcKbXNnaWQgIldpbmRvdyBzaXplIGlzIHRvbyBzbWFsbCBmb3IgTmFuby4uLiIKbXNnc3RyICJWaW5kYXVnZXQgZXIgZm9yIGxpdGUgZm9yIE5hbm8uLi4iCgojOiBuYW5vLmM6MjA1Cm1zZ2lkICJLZXkgaWxsZWdhbCBpbiBWSUVXIG1vZGUiCm1zZ3N0ciAiVGFzdGVuIGVyIHVsb3ZsZWcgaSBWSVMtbW9kdXMiCgojOiBuYW5vLmM6MjU3Cm1zZ2lkICIiCiIgbmFubyBoZWxwIHRleHRcbiIKIlxuIgoiIFRoZSBuYW5vIGVkaXRvciBpcyBkZXNpZ25lZCB0byBlbXVsYXRlIHRoZSBmdW5jdGlvbmFsaXR5IGFuZCBlYXNlLW9mLXVzZSBvZiB0aGUgVVcgUGljbyB0ZXh0IGVkaXRvci4gIFRoZXJlIGFyZSBmb3VyIG1haW4gc2VjdGlvbnMgb2YgdGhlIGVkaXRvcjogVGhlIHRvcCBsaW5lIHNob3dzIHRoZSBwcm9ncmFtIHZlcnNpb24sIHRoZSBjdXJyZW50IGZpbGVuYW1lIGJlaW5nIGVkaXRlZCwgYW5kIHdoZXRoZXIgb3Igbm90IHRoZSBmaWxlIGhhcyBiZWVuIG1vZGlmaWVkLiAgTmV4dCBpcyB0aGUgbWFpbiBlZGl0b3Igd2luZG93IHNob3dpbmcgdGhlIGZpbGUgYmVpbmcgZWRpdGVkLiAgVGhlIHN0YXR1cyBsaW5lIGlzIHRoZSB0aGlyZCBsaW5lIGZyb20gdGhlIGJvdHRvbSBhbmQgc2hvd3MgaW1wb3J0YW50IG1lc3NhZ2VzLiBUaGUgYm90dG9tIHR3byBsaW5lcyBzaG93IHRoZSBtb3N0IGNvbW1vbmx5IHVzZWQgc2hvcnRjdXRzIGluIHRoZSBlZGl0b3IuXG4iCiJcbiIKIiBUaGUgbm90YXRpb24gZm9yIHNob3J0Y3V0cyBpcyBhcyBmb2xsb3dzOiBDb250cm9sLWtleSBzZXF1ZW5jZXMgYXJlIG5vdGF0ZWQgd2l0aCBhIGNhcmV0ICheKSBzeW1ib2wgYW5kIGFyZSBlbnRlcmVkIHdpdGggdGhlIENvbnRyb2wgKEN0cmwpIGtleS4gIEVzY2FwZS1rZXkgc2VxdWVuY2VzIGFyZSBub3RhdGVkIHdpdGggdGhlIE1ldGEgKE0pIHN5bWJvbCBhbmQgY2FuIGJlIGVudGVyZWQgdXNpbmcgZWl0aGVyIHRoZSBFc2MsIEFsdCBvciBNZXRhIGtleSBkZXBlbmRpbmcgb24geW91ciBrZXlib2FyZCBzZXR1cC4gIFRoZSBmb2xsb3dpbmcga2V5c3Ryb2tlcyBhcmUgYXZhaWxhYmxlIGluIHRoZSBtYWluIGVkaXRvciB3aW5kb3cuIE9wdGlvbmFsIGtleXMgYXJlIHNob3duIGluIHBhcmVudGhlc2VzOlxuIgoiXG4iCm1zZ3N0ciAiIgoiSGplbHBldGVrc3QgZm9yIG5hbm9cbiIKIlxuIgoiIFRla3N0ZWRpdG9yZW4gbmFubyBwcvh2ZXIg5SBldHRlcmxpa25hIGJydWtzbeV0ZW4gb2cgZnVua3Nqb25hbGl0ZXRlbiB0aWwgVVcgUGljby4gIERlciBlciBmaXJlIGhvdnVkb21y5WRlIGkgZGV0dGUgcHJvZ3JhbW1ldDogRGVuIPh2c3RlIGxpbmphIHZpc2VyIHZlcnNqb25zbnVtbWVyZXQgdGlsIE5hbm8sIG5hbW5ldCBw5SBmaWxhIG9nIGtvcnZpZHQgYnVmZmVyZXQgZXIgZW5kcmEuIE5lZGFuZm9yIGVyIGhvdmVkdmluZGF1Z2V0IHNvbSB2aXNlciBmaWxhIHNvbSB2ZXJ0IHJlZGlnZXJ0LiBTdGF0dXMtbGluamEgZXIgZGVuIDMuIGxpbmphIG5lZGFuZnLlIG9nIHZpc2VyIHZpa3RpZ2UgbWVsZGluZ2FyLiBEZWkgdG8gbmVkc3RlIGxpbmplbmUgdmlzZXIgZGVpIHZhbmxlZ2FzdGUgc25hcnZlZ2FuZSBpIHByb2dyYW1tZXQuXG4iCiJcbiIKIlNuYXJ2ZWdhbmUgYnJ1a2FyIGRlbm5lIG5vdGFzam9uZW46IFRhc3Rlc2VrdmVuc2FyIG1hcmtlcnQgbWVkIHN5bWJvbGV0IKteuyB2ZXJ0IHNrcml2bmUgbWVkIENvbnRyb2wtdGFzdGVuIChldnQuIEN0cmwpLiAgU2VrdmVuc2FyIG1hcmtlcnQgbWVkIG1ldGEtc3ltYm9sZXQgKE0pIGthbiBza3JpdmFzdCBhbnRlbiBtZWQgRXNjLCBBbHQgZWxsZXIgTWV0YS10YXN0ZW4gYXZoZW5naWcgYXYgdGFzdGF0dXJvcHBzZXR0ZXQgZGl0dC4gRGVpIGb4bGdqYW5kZSB0YXN0ZXRyeWtramEgZXIgdGlsZ2plbmdlbGVnZSBpIGhvdnVkdmluZGF1Z2V0LiBWYWxmcmllIHRhc3RhciBlciB2aXN0IGkgcGFyZW50ZXM6XG4iCgojOiBuYW5vLmM6MzU2Cm1zZ2lkICJkZWxldGVfbm9kZSgpOiBmcmVlJ2QgYSBub2RlLCBZQVkhXG4iCm1zZ3N0ciAiZGVsZXRlX25vZGUoKTogZnJpZ2pvcmRlIGVpbiBub2RlLCBIVVJSQSFcbiIKCiM6IG5hbm8uYzozNjEKbXNnaWQgImRlbGV0ZV9ub2RlKCk6IGZyZWUnZCBsYXN0IG5vZGUuXG4iCm1zZ3N0ciAiZGVsZXRlX25vZGUoKTogZnJpZ2pvcmRlIHNpc3RlIG5vZGUuXG4iCgojOiBuYW5vLmM6NDE4Cm1zZ2lkICIiCiJVc2FnZTogbmFubyBbR05VIGxvbmcgb3B0aW9uXSBbb3B0aW9uXSArTElORSA8ZmlsZT5cbiIKIlxuIgptc2dzdHIgIkJydWs6IG5hbm8gW0dOVSBsYW5nZSBvcHNqb25hcl0gW29wc2pvbmFyXSArTElOSkUgPGZpbD5cbiIKCiM6IG5hbm8uYzo0MTkKbXNnaWQgIk9wdGlvblx0XHRMb25nIG9wdGlvblx0XHRNZWFuaW5nXG4iCm1zZ3N0ciAiT3Bzam9uXHRcdExhbmcgb3Bzam9uXHRcdFR5ZGluZ1xuIgoKIzogbmFuby5jOjQyNAptc2dpZCAiIC1EIFx0XHQtLWRvc1x0XHRcdFdyaXRlIGZpbGUgaW4gRE9TIGZvcm1hdFxuIgptc2dzdHIgIiAtRCBcdFx0LS1kb3NcdFx0XHRMYWdyYSBmaWwgcOUgRE9TLWZvcm1hdFxuIgoKIzogbmFuby5jOjQyOQptc2dpZCAiIC1GIFx0XHQtLW11bHRpYnVmZmVyXHRcdEVuYWJsZSBtdWx0aXBsZSBmaWxlIGJ1ZmZlcnNcbiIKbXNnc3RyICIgLUYgXHRcdC0tbXVsdGlidWZmZXJcdFx0U2tydSBw5SBmbGVpcmUgZmlsYnVmZmVyXG4iCgojOiBuYW5vLmM6NDMyCm1zZ2lkICIgLUsgXHRcdC0ta2V5cGFkXHRcdFVzZSBhbHRlcm5hdGUga2V5cGFkIHJvdXRpbmVzXG4iCm1zZ3N0ciAiIC1LIFx0XHQtLWtleXBhZFx0XHRCcnVrIGFsdGVybmF0aXYgdGFzdGF0dXJydXRpbmVcbiIKCiM6IG5hbm8uYzo0MzYKbXNnaWQgIiAtTSBcdFx0LS1tYWNcdFx0XHRXcml0ZSBmaWxlIGluIE1hYyBmb3JtYXRcbiIKbXNnc3RyICIgLU0gXHRcdC0tbWFjXHRcdFx0TGFncmEgZmlsIHDlIE1hYy1mb3JtYXRcbiIKCiM6IG5hbm8uYzo0MzkKbXNnaWQgIiAtTiBcdFx0LS1ub2NvbnZlcnRcdFx0RG9uJ3QgY29udmVydCBmaWxlcyBmcm9tIERPUy9NYWMgZm9ybWF0XG4iCm1zZ3N0ciAiIC1OIFx0XHQtLW5vY29udmVydFx0XHRJa2tqZSBvbXNldCBmaWxlciBmcuUgRE9TL01hYy1mb3JtYXRcbiIKCiM6IG5hbm8uYzo0NDQKbXNnaWQgIiAtUSBbc3RyXVx0LS1xdW90ZXN0ciBbc3RyXVx0UXVvdGluZyBzdHJpbmcsIGRlZmF1bHQgXCI+IFwiXG4iCm1zZ3N0ciAiIC1RIFtzdHJdXHQtLXF1b3Rlc3RyIFtzdHJdXHRTaXRhdGlubnJ5a2ssIFwiPiBcIiBlciBmb3J2YWx0XG4iCgojOiBuYW5vLmM6NDQ4Cm1zZ2lkICIgLVNcdFx0LS1zbW9vdGhcdFx0U21vb3RoIHNjcm9sbGluZ1xuIgptc2dzdHIgIiAtU1x0XHQtLXNtb290aFx0XHRKYW1uIGxpbmplcnVsbGluZ1xuIgoKIzogbmFuby5jOjQ1MQptc2dpZCAiIC1UIFtudW1dXHQtLXRhYnNpemU9W251bV1cdFx0U2V0IHdpZHRoIG9mIGEgdGFiIHRvIG51bVxuIgptc2dzdHIgIiAtVCBbVEFMXVx0LS10YWJzaXplPVtUQUxdXHRTZXQgYnJlaWRkYSBw5SB0YWJ1bGF0b3IgdGlsIFRBTFxuIgoKIzogbmFuby5jOjQ1NAptc2dpZCAiIC1WIFx0XHQtLXZlcnNpb25cdFx0UHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgZXhpdFxuIgptc2dzdHIgIiAtViBcdFx0LS12ZXJzaW9uXHRcdFNrcml2IHV0IHZlcnNqb25zbnVtbWVyIG9nIGF2c2x1dHRcbiIKCiM6IG5hbm8uYzo0NTYKbXNnaWQgIiAtYyBcdFx0LS1jb25zdFx0XHRcdENvbnN0YW50bHkgc2hvdyBjdXJzb3IgcG9zaXRpb25cbiIKbXNnc3RyICIgLWMgXHRcdC0tY29uc3RcdFx0XHRGYXN0IG1hcmv4cnBvc2lzam9uXG4iCgojOiBuYW5vLmM6NDU4Cm1zZ2lkICIgLWggXHRcdC0taGVscFx0XHRcdFNob3cgdGhpcyBtZXNzYWdlXG4iCm1zZ3N0ciAiIC1oIFx0XHQtLWhlbHBcdFx0XHRWaXMgZGVubmUgbWVsZGluZ2FcbiIKCiM6IG5hbm8uYzo0NjEKbXNnaWQgIiAtaSBcdFx0LS1hdXRvaW5kZW50XHRcdEF1dG9tYXRpY2FsbHkgaW5kZW50IG5ldyBsaW5lc1xuIgptc2dzdHIgIiAtaSBcdFx0LS1hdXRvaW5kZW50XHRcdEF1dG9tYXRpc2sgbGluamVpbm5yeWtrXG4iCgojOiBuYW5vLmM6NDYzCm1zZ2lkICIgLWsgXHRcdC0tY3V0XHRcdFx0TGV0IF5LIGN1dCBmcm9tIGN1cnNvciB0byBlbmQgb2YgbGluZVxuIgptc2dzdHIgIiAtayBcdFx0LS1jdXRcdFx0XHRMYXQgXksga2xpcHBlIGZy5SBtYXJr+HJlbiBvZyB1dCBsaW5qYVxuIgoKIzogbmFuby5jOjQ2Ngptc2dpZCAiIC1sIFx0XHQtLW5vZm9sbG93XHRcdERvbid0IGZvbGxvdyBzeW1ib2xpYyBsaW5rcywgb3ZlcndyaXRlXG4iCm1zZ3N0ciAiIC1sIFx0XHQtLW5vZm9sbG93XHRcdEb4bGcgaWtramUgc3ltYm9sc2tlIGxlbmtlciwgc2tyaXYgb3ZlclxuIgoKIzogbmFuby5jOjQ2OQptc2dpZCAiIC1tIFx0XHQtLW1vdXNlXHRcdFx0RW5hYmxlIG1vdXNlXG4iCm1zZ3N0ciAiIC1tIFx0XHQtLW1vdXNlXHRcdFx0U2tydSBw5SBtdXNlc3T4dHRlXG4iCgojOiBuYW5vLmM6NDc0Cm1zZ2lkICIgLW8gW2Rpcl0gXHQtLW9wZXJhdGluZ2Rpcj1bZGlyXVx0U2V0IG9wZXJhdGluZyBkaXJlY3RvcnlcbiIKbXNnc3RyICIgLW8gW2thdF0gXHQtLW9wZXJhdGluZ2Rpcj1ba2F0XVx0U2V0IGFrdGl2IGZpbGthdGFsb2dcbiIKCiM6IG5hbm8uYzo0NzcKbXNnaWQgIiAtcCBcdFx0LS1waWNvXHRcdFx0RW11bGF0ZSBQaWNvIGFzIGNsb3NlbHkgYXMgcG9zc2libGVcbiIKbXNnc3RyICIgLXAgXHRcdC0tcGljb1x0XHRcdEV0dGVybGlrbmEgUGljbyBz5SBu+HllIHNvbSBtb2dsZWdcbiIKCiM6IG5hbm8uYzo0ODIKbXNnaWQgIiAtciBbI2NvbHNdIFx0LS1maWxsPVsjY29sc11cdFx0U2V0IGZpbGwgY29scyB0byAod3JhcCBsaW5lcyBhdCkgI2NvbHNcbiIKbXNnc3RyICIgLXIgW0tPTF0gXHQtLWZpbGw9W0tPTF1cdFx0QnJ5dCBsaW5qZXIgW3DlIGtvbG9ubmUgS09MXVxuIgoKIzogbmFuby5jOjQ4Ngptc2dpZCAiIC1zIFtwcm9nXSBcdC0tc3BlbGxlcj1bcHJvZ11cdEVuYWJsZSBhbHRlcm5hdGUgc3BlbGxlclxuIgptc2dzdHIgIiAtcyBbUFJPR10gXHQtLXNwZWxsZXI9W1BST0ddXHRCcnVrIFBST0cgdGlsIHN0YXZlc2pla2tcbiIKCiM6IG5hbm8uYzo0ODkKbXNnaWQgIiAtdCBcdFx0LS10ZW1wZmlsZVx0XHRBdXRvIHNhdmUgb24gZXhpdCwgZG9uJ3QgcHJvbXB0XG4iCm1zZ3N0ciAiIC10IFx0XHQtLXRlbXBmaWxlXHRcdExhZ3JhIHV0YW4g5SBzcPhyamEgdmVkIGF2c2x1dG5pbmdcbiIKCiM6IG5hbm8uYzo0OTEKbXNnaWQgIiAtdiBcdFx0LS12aWV3XHRcdFx0VmlldyAocmVhZCBvbmx5KSBtb2RlXG4iCm1zZ3N0ciAiIC12IFx0XHQtLXZpZXdcdFx0XHRWaXMtbW9kdXMgKGJlcnJlIGxlc2luZylcbiIKCiM6IG5hbm8uYzo0OTQKbXNnaWQgIiAtdyBcdFx0LS1ub3dyYXBcdFx0RG9uJ3Qgd3JhcCBsb25nIGxpbmVzXG4iCm1zZ3N0ciAiIC13IFx0XHQtLW5vd3JhcFx0XHRJa2tqZSBicnl0IGxhbmdlIGxpbmplclxuIgoKIzogbmFuby5jOjQ5Nwptc2dpZCAiIC14IFx0XHQtLW5vaGVscFx0XHREb24ndCBzaG93IGhlbHAgd2luZG93XG4iCm1zZ3N0ciAiIC14IFx0XHQtLW5vaGVscFx0XHRJa2tqZSB2aXMgaGplbHBldmluZHVcbiIKCiMgS3ZhIGkgYWxsZSBkYWdhciBlciAic3VzcGVuZCIgcOUgbm9yc2s/CiM6IG5hbm8uYzo0OTkKbXNnaWQgIiAteiBcdFx0LS1zdXNwZW5kXHRcdEVuYWJsZSBzdXNwZW5kXG4iCm1zZ3N0ciAiIC16IFx0XHQtLXN1c3BlbmRcdFx0VGlsbGF0IOUgbGVnZ2phIHByb2dyYW1tZXQgaSBiYWtncnVubmVuXG4iCgojOiBuYW5vLmM6NTAxCm1zZ2lkICIgK0xJTkVcdFx0XHRcdFx0U3RhcnQgYXQgbGluZSBudW1iZXIgTElORVxuIgptc2dzdHIgIiArTElOSkVcdFx0XHRcdFx0U3RhcnQgcOUgbGluamUgTElOSkVcbiIKCiM6IG5hbm8uYzo1MDMKbXNnaWQgIiIKIlVzYWdlOiBuYW5vIFtvcHRpb25dICtMSU5FIDxmaWxlPlxuIgoiXG4iCm1zZ3N0ciAiIgoiQnJ1azogbmFubyBbb3Bzam9uXSArTElOSkUgPGZpbD5cbiIKIlxuIgoKIzogbmFuby5jOjUwNAptc2dpZCAiT3B0aW9uXHRcdE1lYW5pbmdcbiIKbXNnc3RyICJPcHNqb25cdFx0VHlkaW5nXG4iCgojOiBuYW5vLmM6NTA2Cm1zZ2lkICIgLUQgXHRcdFdyaXRlIGZpbGUgaW4gRE9TIGZvcm1hdFxuIgptc2dzdHIgIiAtRCBcdFx0TGFncmEgZmlsIHDlIERPUy1mb3JtYXRcbiIKCiM6IG5hbm8uYzo1MDkKbXNnaWQgIiAtRiBcdFx0RW5hYmxlIG11bHRpcGxlIGZpbGUgYnVmZmVyc1xuIgptc2dzdHIgIiAtRiBcdFx0U2tydSBw5SBmbGVpcmUgZmlsYnVmZmVyXG4iCgojOiBuYW5vLmM6NTExCm1zZ2lkICIgLUtcdFx0VXNlIGFsdGVybmF0ZSBrZXlwYWQgcm91dGluZXNcbiIKbXNnc3RyICIgLUtcdFx0QnJ1ayBhbHRlcm5hdGl2IHRhc3RhdHVycnV0aW5lXG4iCgojOiBuYW5vLmM6NTEzCm1zZ2lkICIgLU0gXHRcdFdyaXRlIGZpbGUgaW4gTWFjIGZvcm1hdFxuIgptc2dzdHIgIiAtTSBcdFx0TGFncmEgZmlsIHDlIE1hYy1mb3JtYXRcbiIKCiM6IG5hbm8uYzo1MTYKbXNnaWQgIiAtUSBbc3RyXSBcdFF1b3Rpbmcgc3RyaW5nLCBkZWZhdWx0IFwiPiBcIlxuIgptc2dzdHIgIiAtUSBbc3RyXSBcdFNpdGF0aW5ucnlraywgXCI+IFwiIGVyIGZvcnZhbHRcbiIKCiM6IG5hbm8uYzo1MTgKbXNnaWQgIiAtUlx0XHRVc2UgcmVndWxhciBleHByZXNzaW9ucyBmb3Igc2VhcmNoXG4iCm1zZ3N0ciAiIC1SXHRcdEJydWsgcmVndWzmcmUgdXR0cnlrayBpIHP4a1xuIgoKIzogbmFuby5jOjUyMAptc2dpZCAiIC1TXHRcdFNtb290aCBzY3JvbGxpbmdcbiIKbXNnc3RyICIgLVNcdFx0SmFtbiBsaW5qZXJ1bGxpbmdcbiIKCiM6IG5hbm8uYzo1MjIKbXNnaWQgIiAtVCBbbnVtXVx0U2V0IHdpZHRoIG9mIGEgdGFiIHRvIG51bVxuIgptc2dzdHIgIiAtVCBbVEFMXVx0U2V0IGJyZWlkZGEgcOUgdGFidWxhdG9yIHRpbCBUQUxcbiIKCiM6IG5hbm8uYzo1MjMKbXNnaWQgIiAtViBcdFx0UHJpbnQgdmVyc2lvbiBpbmZvcm1hdGlvbiBhbmQgZXhpdFxuIgptc2dzdHIgIiAtViBcdFx0U2tyaXYgdXQgdmVyc2pvbnNudW1tZXIgb2cgYXZzbHV0dFxuIgoKIzogbmFuby5jOjUyNAptc2dpZCAiIC1jIFx0XHRDb25zdGFudGx5IHNob3cgY3Vyc29yIHBvc2l0aW9uXG4iCm1zZ3N0ciAiIC1jIFx0XHRGYXN0IG1hcmv4cnBvc2lzam9uXG4iCgojOiBuYW5vLmM6NTI1Cm1zZ2lkICIgLWggXHRcdFNob3cgdGhpcyBtZXNzYWdlXG4iCm1zZ3N0ciAiIC1oIFx0XHRWaXMgZGVubmUgbWVsZGluZ2FcbiIKCiM6IG5hbm8uYzo1MjcKbXNnaWQgIiAtaSBcdFx0QXV0b21hdGljYWxseSBpbmRlbnQgbmV3IGxpbmVzXG4iCm1zZ3N0ciAiIC1pIFx0XHRBdXRvbWF0aXNrIGxpbmplaW5ucnlra1xuIgoKIzogbmFuby5jOjUyOAptc2dpZCAiIC1rIFx0XHRMZXQgXksgY3V0IGZyb20gY3Vyc29yIHRvIGVuZCBvZiBsaW5lXG4iCm1zZ3N0ciAiIC1rIFx0XHRMYXQgXksga2xpcHBlIGZy5SBtYXJr+HJlbiBvZyB1dCBsaW5qYVxuIgoKIzogbmFuby5jOjUzMQptc2dpZCAiIC1sIFx0XHREb24ndCBmb2xsb3cgc3ltYm9saWMgbGlua3MsIG92ZXJ3cml0ZVxuIgptc2dzdHIgIiAtbCBcdFx0RvhsZyBpa2tqZSBzeW1ib2xza2UgbGVua2VyLCBza3JpdiBvdmVyXG4iCgojOiBuYW5vLmM6NTM0Cm1zZ2lkICIgLW0gXHRcdEVuYWJsZSBtb3VzZVxuIgptc2dzdHIgIiAtbSBcdFx0U2tydSBw5SBtdXNlc3T4dHRlXG4iCgojOiBuYW5vLmM6NTM4Cm1zZ2lkICIgLW8gW2Rpcl0gXHRTZXQgb3BlcmF0aW5nIGRpcmVjdG9yeVxuIgptc2dzdHIgIiAtbyBba2F0XSBcdFNldCBha3RpdiBmaWxrYXRhbG9nXG4iCgojOiBuYW5vLmM6NTQwCm1zZ2lkICIgLXAgXHRcdEVtdWxhdGUgUGljbyBhcyBjbG9zZWx5IGFzIHBvc3NpYmxlXG4iCm1zZ3N0ciAiIC1wIFx0XHRFdHRlcmxpa25hIFBpY28gc+Ugbvh5ZSBzb20gbW9nbGVnXG4iCgojOiBuYW5vLmM6NTQ0Cm1zZ2lkICIgLXIgWyNjb2xzXSBcdFNldCBmaWxsIGNvbHMgdG8gKHdyYXAgbGluZXMgYXQpICNjb2xzXG4iCm1zZ3N0ciAiIC1yIFtLT0xdIFx0QnJ5dCBsaW5qZXIgW3DlIGtvbG9ubmUgS09MXVxuIgoKIzogbmFuby5jOjU0Nwptc2dpZCAiIC1zIFtwcm9nXSAgXHRFbmFibGUgYWx0ZXJuYXRlIHNwZWxsZXJcbiIKbXNnc3RyICIgLXMgW1BST0ddICBcdEJydWsgUFJPRyB0aWwgc3RhdmVzamVra1xuIgoKIzogbmFuby5jOjU0OQptc2dpZCAiIC10IFx0XHRBdXRvIHNhdmUgb24gZXhpdCwgZG9uJ3QgcHJvbXB0XG4iCm1zZ3N0ciAiIC10IFx0XHRMYWdyYSB1dGFuIOUgc3D4cmphIHZlZCBhdnNsdXRuaW5nXG4iCgojOiBuYW5vLmM6NTUwCm1zZ2lkICIgLXYgXHRcdFZpZXcgKHJlYWQgb25seSkgbW9kZVxuIgptc2dzdHIgIiAtdiBcdFx0VmlzLW1vZHVzIChiZXJyZSBsZXNpbmcpXG4iCgojOiBuYW5vLmM6NTUyCm1zZ2lkICIgLXcgXHRcdERvbid0IHdyYXAgbG9uZyBsaW5lc1xuIgptc2dzdHIgIiAtdyBcdFx0SWtramUgYnJ5dCBsYW5nZSBsaW5qZXJcbiIKCiM6IG5hbm8uYzo1NTQKbXNnaWQgIiAteCBcdFx0RG9uJ3Qgc2hvdyBoZWxwIHdpbmRvd1xuIgptc2dzdHIgIiAteCBcdFx0SWtramUgdmlzIGhqZWxwZXZpbmR1XG4iCgojOiBuYW5vLmM6NTU1Cm1zZ2lkICIgLXogXHRcdEVuYWJsZSBzdXNwZW5kXG4iCm1zZ3N0ciAiIC16IFx0XHRUaWxsYXQg5SBsZWdnamEgcHJvZ3JhbW1ldCBpIGJha2dydW5uZW5cbiIKCiM6IG5hbm8uYzo1NTYKbXNnaWQgIiArTElORVx0XHRTdGFydCBhdCBsaW5lIG51bWJlciBMSU5FXG4iCm1zZ3N0ciAiICtMSU5KRVx0XHRTdGFydCBw5SBsaW5qZSBudW1tZXIgTElOSkVcbiIKCiM6IG5hbm8uYzo1NjMKIywgYy1mb3JtYXQKbXNnaWQgIiBHTlUgbmFubyB2ZXJzaW9uICVzIChjb21waWxlZCAlcywgJXMpXG4iCm1zZ3N0ciAiR05VIG5hbm8gdmVyc2pvbiAlcyAoa29tcGlsZXJ0ICVzLCAlcylcbiIKCiM6IG5hbm8uYzo1NjYKbXNnaWQgIiBFbWFpbDogbmFub0BuYW5vLWVkaXRvci5vcmdcdFdlYjogaHR0cDovL3d3dy5uYW5vLWVkaXRvci5vcmciCm1zZ3N0ciAiRXBvc3Q6IG5hbm9AbmFuby1lZGl0b3Iub3JnXHRWZXY6IGh0dHA6Ly93d3cubmFuby1lZGl0b3Iub3JnIgoKIzogbmFuby5jOjU2Nwptc2dpZCAiIgoiXG4iCiIgQ29tcGlsZWQgb3B0aW9uczoiCm1zZ3N0ciAiIgoiXG4iCiIgS29tcGlsZXJ0ZSB0aWxsZWdnOiIKCiM6IG5hbm8uYzo2NTQKbXNnaWQgIk1hcmsgU2V0Igptc2dzdHIgIk1lcmtlIHNldHQiCgojOiBuYW5vLmM6NjU5Cm1zZ2lkICJNYXJrIFVOc2V0Igptc2dzdHIgIk1lcmtlIGZqZXJuYSIKCiM6IG5hbm8uYzoxMjg0CiMsIGMtZm9ybWF0Cm1zZ2lkICJjaGVja193cmFwIGNhbGxlZCB3aXRoIGlucHRyLT5kYXRhPVwiJXNcIlxuIgptc2dzdHIgImNoZWNrX3dyYXAga2FsbGEgbWVkIGlucHRyLT5kYXRhPVwiJXNcIlxuIgoKIzogbmFuby5jOjEzMzYKIywgYy1mb3JtYXQKbXNnaWQgImN1cnJlbnQtPmRhdGEgbm93ID0gXCIlc1wiXG4iCm1zZ3N0ciAiY3VycmVudC0+ZGF0YSBubyA9IFwiJXNcIlxuIgoKIzogbmFuby5jOjEzODgKIywgYy1mb3JtYXQKbXNnaWQgIkFmdGVyLCBkYXRhID0gXCIlc1wiXG4iCm1zZ3N0ciAiRXR0ZXIsIGRhdGEgPSBcIiVzXCJcbiIKCiMuIGFsbG93IHJlcGxhY2Ugd29yZCB0byBiZSBjb3JyZWN0ZWQKIzogbmFuby5jOjE1MDcKbXNnaWQgIkVkaXQgYSByZXBsYWNlbWVudCIKbXNnc3RyICJSZWRpZ2VyIGVyc3RhdG5pbmciCgojOiBuYW5vLmM6MTc1MQojLCBjLWZvcm1hdAptc2dpZCAiQ291bGQgbm90IGNyZWF0ZSBhIHRlbXBvcmFyeSBmaWxlbmFtZTogJXMiCm1zZ3N0ciAiS3VubmUgaWtramUgb3BwcmV0dGEgbWVsbG9tYmVscyBmaWw6ICVzIgoKIzogbmFuby5jOjE3NTcKbXNnaWQgIlNwZWxsIGNoZWNraW5nIGZhaWxlZDogdW5hYmxlIHRvIHdyaXRlIHRlbXAgZmlsZSEiCm1zZ3N0ciAiU3RhdmVrb250cm9sbCBmZWlsYToga3VubmUgaWtramUgbGFnYSBtZWxsb21iZWxzIGZpbCEiCgojOiBuYW5vLmM6MTc3Ngptc2dpZCAiRmluaXNoZWQgY2hlY2tpbmcgc3BlbGxpbmciCm1zZ3N0ciAiU3RhdmVrb250cm9sbCBmdWxsZvhydCIKCiM6IG5hbm8uYzoxNzc4Cm1zZ2lkICJTcGVsbCBjaGVja2luZyBmYWlsZWQiCm1zZ3N0ciAiU3RhdmVrb250cm9sbCBmZWlsYSIKCiM6IG5hbm8uYzoxODA3Cm1zZ2lkICJTYXZlIG1vZGlmaWVkIGJ1ZmZlciAoQU5TV0VSSU5HIFwiTm9cIiBXSUxMIERFU1RST1kgQ0hBTkdFUykgPyAiCm1zZ3N0ciAiTGFncmEgZW5kcmEgYnVmZmVyIChcIk5vXCIgVklMIE1JU1NBIEVORFJJTkdBTkUpPyAiCgojOiBuYW5vLmM6MTk2Mgptc2dpZCAiUmVjZWl2ZWQgU0lHSFVQIgptc2dzdHIgIk1vdHRvayBTSUdIVVAiCgojOiBuYW5vLmM6MjAzMgptc2dpZCAiQ2Fubm90IHJlc2l6ZSB0b3Agd2luIgptc2dzdHIgIkthbiBpa2tqZSBlbmRyYSBzdG9ybGVpayBw5SB0b3BwdmluZGF1Z2V0IgoKIzogbmFuby5jOjIwMzQKbXNnaWQgIkNhbm5vdCBtb3ZlIHRvcCB3aW4iCm1zZ3N0ciAiS2FuIGlra2UgZmx5dHRhIHRvcHB2aW5kYXVnZXQiCgojOiBuYW5vLmM6MjAzNgptc2dpZCAiQ2Fubm90IHJlc2l6ZSBlZGl0IHdpbiIKbXNnc3RyICJLYW4gaWtramUgZW5kcmEgc3RvcmxlaWsgcOUgcmVkaWdlcmluZ3N2aW5kYXVnZXQiCgojOiBuYW5vLmM6MjAzOAptc2dpZCAiQ2Fubm90IG1vdmUgZWRpdCB3aW4iCm1zZ3N0ciAiS2FuIGlra2plIGZseXR0YSByZWRpZ2VyaW5nc3ZpbmRhdWdldCIKCiM6IG5hbm8uYzoyMDQwCm1zZ2lkICJDYW5ub3QgcmVzaXplIGJvdHRvbSB3aW4iCm1zZ3N0ciAiS2FuIGlra2plIGVuZHJhIHN0b3JsZWlrIHDlIGJ1bm52aW5kYXVnZXQiCgojOiBuYW5vLmM6MjA0Mgptc2dpZCAiQ2Fubm90IG1vdmUgYm90dG9tIHdpbiIKbXNnc3RyICJLYW4gaWtramUgZmx5dHRhIGJvdG52aW5kYXVnZXQiCgojOiBuYW5vLmM6MjQyNQptc2dpZCAiQ2FuIG5vdyBVbkp1c3RpZnkhIgptc2dzdHIgIkR1IGthbiBubyBnamVyYSBvbSBvbWJyZWtraW5nYSEiCgojOiBuYW5vLmM6MjQ5MAptc2dpZCAiIgoiU2VhcmNoIENvbW1hbmQgSGVscCBUZXh0XG4iCiJcbiIKIiBFbnRlciB0aGUgd29yZHMgb3IgY2hhcmFjdGVycyB5b3Ugd291bGQgbGlrZSB0byBzZWFyY2ggZm9yLCB0aGVuIGhpdCBlbnRlci4gIElmIHRoZXJlIGlzIGEgbWF0Y2ggZm9yIHRoZSB0ZXh0IHlvdSBlbnRlcmVkLCB0aGUgc2NyZWVuIHdpbGwgYmUgdXBkYXRlZCB0byB0aGUgbG9jYXRpb24gb2YgdGhlIG5lYXJlc3QgbWF0Y2ggZm9yIHRoZSBzZWFyY2ggc3RyaW5nLlxuIgoiXG4iCiIgSWYgdXNpbmcgUGljbyBNb2RlIHZpYSB0aGUgLXAgb3IgLS1waWNvIGZsYWdzLCB1c2luZyB0aGUgTWV0YS1QIHRvZ2dsZSBvciB1c2luZyBhIG5hbm9yYyBmaWxlLCB0aGUgcHJldmlvdXMgc2VhcmNoIHN0cmluZyB3aWxsIGJlIHNob3duIGluIGJyYWNrZXRzIGFmdGVyIHRoZSBTZWFyY2g6IHByb21wdC4gIEhpdHRpbmcgZW50ZXIgd2l0aG91dCBlbnRlcmluZyBhbnkgdGV4dCB3aWxsIHBlcmZvcm0gdGhlIHByZXZpb3VzIHNlYXJjaC4gT3RoZXJ3aXNlLCB0aGUgcHJldmlvdXMgc3RyaW5nIHdpbGwgYmUgcGxhY2VkIGluIGZyb250IG9mIHRoZSBjdXJzb3IsIGFuZCBjYW4gYmUgZWRpdGVkIG9yIGRlbGV0ZWQgYmVmb3JlIGhpdHRpbmcgZW50ZXIuXG4iCiJcbiIKIiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9ucyBrZXlzIGFyZSBhdmFpbGFibGUgaW4gU2VhcmNoIG1vZGU6XG4iCiJcbiIKbXNnc3RyICIiCiJIamVscGV0ZWtzdCBmb3Igc/hramVrb21tYW5kb2VuXG4iCiJcbiIKIiBUYXN0IGlubiBvcmRhIGVsbGVyIHRlaWtuYSBkdSB2aWwgc/hramEgZXR0ZXIsIG9nIHRyeWtrIEVudGVyLiAgRGVyc29tIHRla3N0ZW4gZHUgdGFzdGEgaW5uIGZpbm5lc3QsIHZpbCBza2plcm1lbiB2ZXJ0YSBvcHBkYXRlcnQgdGlsIOUgdmlzYSBmcmFtIG7mcm1hc3RlIHRyZWZmLlxuIgoiXG4iCiIgRGVyc29tIGR1IGVyIGkgUGljby1tb2R1cyAodmhhLiBvcHNqb25hbmUgLXAgZWxsZXIgLS1waWNvLCBicnl0YXJlbiBNZXRhLVAgZWxsZXIgZWkgbmFub3JjLWZpbCksIHZpbCBm+HJyZSBz+GtqZXN0cmVuZyB2aXNhc3QgaSBrbGFtbWVyIGV0dGVyIKtT+Gu7LiBUcnlra2plciBkdSBFbnRlciB2aWwgZvhycmUgc/hrZXQgdmVydGEgZ2plbnRla2UsIHZpc3MgaWtramUgdmlsIGRlbiBm+HJyZSBzdHJlbmdlbiB2ZXJ0ZSBwbGFzc2VydCBmcmFtZm9yIG1hcmv4cmVuLCBvZyBrYW4gZW5kcmFzdCBlbGxlciBzbGV0dGFzdCBm+HIgZHUgdHJ5a2tqZXIgRW50ZXIuXG4iCiJcbiIKIiBG+GxnamFuZGUgZnVua3Nqb25zdGFzdGFyIGVyIHRpbGdqZW5nZWxlZ2UgaSBz+GtqZW1vZHVzOlxuIgoiXG4iCgojOiBuYW5vLmM6MjUwNAptc2dpZCAiIgoiR290byBMaW5lIEhlbHAgVGV4dFxuIgoiXG4iCiIgRW50ZXIgdGhlIGxpbmUgbnVtYmVyIHRoYXQgeW91IHdpc2ggdG8gZ28gdG8gYW5kIGhpdCBFbnRlci4gIElmIHRoZXJlIGFyZSBmZXdlciBsaW5lcyBvZiB0ZXh0IHRoYW4gdGhlIG51bWJlciB5b3UgZW50ZXJlZCwgeW91IHdpbGwgYmUgYnJvdWdodCB0byB0aGUgbGFzdCBsaW5lIG9mIHRoZSBmaWxlLlxuIgoiXG4iCiIgVGhlIGZvbGxvd2luZyBmdW5jdGlvbnMga2V5cyBhcmUgYXZhaWxhYmxlIGluIEdvdG8gTGluZSBtb2RlOlxuIgoiXG4iCm1zZ3N0ciAiIgoiSGplbHBldGVrc3QgZm9yIEflIHRpbCBsaW5qZVxuIgoiXG4iCiIgU2tyaXYgaW5uIGxpbmplbnVtbWVyZXQgZHUgdmlsIGflIHRpbCBvZyB0cnlrayBFbnRlci4gIERlcnNvbSBkZXIgZXIgZuZycmUgbGluamVyIG1lZCB0ZWtzdCBlbm4gdGFsZXQgZHUgb3BwZ2F2LCB2aWwgZHUgaGFtbmUgcOUgc2lzdGUgbGluamUgaSBidWZmZXJldC5cbiIKIlxuIgoiIEb4bGdqYW5kZSBmdW5rc2pvbnN0YXN0YXIgZXIgdGlsZ2plbmdlbGVnZSBpIEflIHRpbCBsaW5qZS1tb2R1czpcbiIKIlxuIgoKIzogbmFuby5jOjI1MTEKbXNnaWQgIiIKIkluc2VydCBGaWxlIEhlbHAgVGV4dFxuIgoiXG4iCiIgVHlwZSBpbiB0aGUgbmFtZSBvZiBhIGZpbGUgdG8gYmUgaW5zZXJ0ZWQgaW50byB0aGUgY3VycmVudCBmaWxlIGJ1ZmZlciBhdCB0aGUgY3VycmVudCBjdXJzb3IgbG9jYXRpb24uXG4iCiJcbiIKIiBJZiB5b3UgaGF2ZSBjb21waWxlZCBuYW5vIHdpdGggbXVsdGlwbGUgZmlsZSBidWZmZXIgc3VwcG9ydCwgYW5kIGVuYWJsZSBtdWx0aXBsZSBidWZmZXJzIHdpdGggdGhlIC1GIG9yIC0tbXVsdGlidWZmZXIgY29tbWFuZCBsaW5lIGZsYWdzLCB0aGUgTWV0YS1GIHRvZ2dsZSBvciB1c2luZyBhIG5hbm9yYyBmaWxlLCBpbnNlcnRpbmcgYSBmaWxlIHdpbGwgY2F1c2UgaXQgdG8gYmUgbG9hZGVkIGludG8gYSBzZXBhcmF0ZSBidWZmZXIgKHVzZSBNZXRhLTwgYW5kID4gdG8gc3dpdGNoIGJldHdlZW4gZmlsZSBidWZmZXJzKS5cbiIKIlxuIgoiIElmIHlvdSBuZWVkIGFub3RoZXIgYmxhbmsgYnVmZmVyLCBqdXN0IHByZXNzIEVudGVyIGF0IHRoZSBwcm9tcHQgd2l0aG91dCB0eXBpbmcgaW4gYSBmaWxlbmFtZSwgb3IgdHlwZSBpbiBhIG5vbmV4aXN0ZW50IGZpbGVuYW1lIGF0IHRoZSBwcm9tcHQgYW5kIHByZXNzIEVudGVyLlxuIgoiXG4iCiIgVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBrZXlzIGFyZSBhdmFpbGFibGUgaW4gSW5zZXJ0IEZpbGUgbW9kZTpcbiIKIlxuIgptc2dzdHIgIiIKIkhqZWxwZXRla3N0IGZvciBTZXQgaW5uIGZpbFxuIgoiXG4iCiIgVGFzdCBpbm4gbmFtbmV0IHDlIGZpbGEgc29tIHNrYWwgc2V0amFzdCBpbm4gaSBidWZmZXJldCBkZXIgbWFya/hyZW4gc3Tlci5cbiIKIlxuIgoiIERlcnNvbSBkaW4gbmFubyBoYXIgc3T4dHRlIGZvciBmbGVpcmUgYnVmZmVyLCBvZyBkdSBoYXIgc2tydWRkIHDlIGRldHRlICh2aGEuIG9wc2pvbmVuIC1GIGVsbGVyIC0tbXVsdGlidWZmZXIsIGVsbGVyIGJyeXRhcmVuIE1ldGEtRiwgZWxsZXIgaSBlaSBuYW5vcmMtZmlsKSwgdmlsIGZpbGEgaSBzdGFkZW4gc2V0amFzdCBpbm4gaSBlaW4gZWlnZW4gYnVmZmVyLiAgQnJ1ayBNZXRhLTwgb2cgTWV0YS0+IGZvciDlIHNraWZ0ZSBtZWxsb20gZmlsYnVmZmVyLlxuIgoiXG4iCiIgVmlzcyBkdSB0cmVuZyBlaW4gbnkgdG9tIGJ1ZmZlciwga2FuIGR1IHRyeWtramEgRW50ZXIgdXRhbiDlIHRhc3RlIGlubiBlaXQgZmlsbmFtbiBlbGxlciBvcHBnamUgbmFtbmV0IHRpbCBlaSBmaWwgc29tIGlra2plIGZpbm5lc3QuXG4iCiJcbiIKIiBG+GxnamFuZGUgZnVua3Nqb25zdGFzdGFyIGVyIHRpbGdqZW5nZWxlZ2UgaSBTZXQgaW5uIGZpbC1tb2R1czpcbiIKIlxuIgoKIzogbmFuby5jOjI1MjUKbXNnaWQgIiIKIldyaXRlIEZpbGUgSGVscCBUZXh0XG4iCiJcbiIKIiBUeXBlIHRoZSBuYW1lIHRoYXQgeW91IHdpc2ggdG8gc2F2ZSB0aGUgY3VycmVudCBmaWxlIGFzIGFuZCBoaXQgZW50ZXIgdG8gc2F2ZSB0aGUgZmlsZS5cbiIKIlxuIgoiIElmIHlvdSBhcmUgdXNpbmcgdGhlIG1hcmtlciBjb2RlIHdpdGggQ3RybC1eIGFuZCBoYXZlIHNlbGVjdGVkIHRleHQsIHlvdSB3aWxsIGJlIHByb21wdGVkIHRvIHNhdmUgb25seSB0aGUgc2VsZWN0ZWQgcG9ydGlvbiB0byBhIHNlcGFyYXRlIGZpbGUuICBUbyByZWR1Y2UgdGhlIGNoYW5jZSBvZiBvdmVyd3JpdGluZyB0aGUgY3VycmVudCBmaWxlIHdpdGgganVzdCBhIHBvcnRpb24gb2YgaXQsIHRoZSBjdXJyZW50IGZpbGVuYW1lIGlzIG5vdCB0aGUgZGVmYXVsdCBpbiB0aGlzIG1vZGUuXG4iCiJcbiIKIiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGtleXMgYXJlIGF2YWlsYWJsZSBpbiBXcml0ZSBGaWxlIG1vZGU6XG4iCiJcbiIKbXNnc3RyICIiCiJIamVscGV0ZWtzdCBmb3IgTGFncmUgZmlsXG4iCiJcbiIKIiBUYXN0IGlubiBuYW1uZXQgZHUg+G5za2plciBvZyB0cnlrayBFbnRlciBmb3Ig5SBsYWdyYSBidWZmZXJldCBtZWQgZGV0dGUgbmFtbmV0LlxuIgoiXG4iCiIgVmlzcyBkdSBicnVrYXIgbWVya2Vrb2RlbiBtZWQgQ3RybC1eIG9nIGhhciBtZXJrYSB0ZWtzdCwgdmlsIGJlcnJlIGRlbiBtZXJrYSB0ZWtzdGVuIGxhZ3Jhc3QuICBGb3Ig5SByZWR1c2VyYSBzamFuc2VuIGZvciDlIG92ZXJza3JpdmEgZmlsYSBtZWQgYmVycmUgZWluIGRlbCBhdiBobywgdmlsIGZpbG5hbW5ldCB2ZXJ0ZSBlbmRyYSBpIGRlbm5lIG1vZHVzZW4uXG4iCiJcbiIKIiBG+GxnamFuZGUgZnVua3Nqb25zdGFzdGFyIGVyIHRpbGdqZW5nZWxlZ2UgaSBMYWdyZSBmaWwtbW9kdXM6XG4iCiJcbiIKCiM6IG5hbm8uYzoyNTM3Cm1zZ2lkICIiCiJGaWxlIEJyb3dzZXIgSGVscCBUZXh0XG4iCiJcbiIKIiBUaGUgZmlsZSBicm93c2VyIGlzIHVzZWQgdG8gdmlzdWFsbHkgYnJvd3NlIHRoZSBkaXJlY3Rvcnkgc3RydWN0dXJlIHRvIHNlbGVjdCBhIGZpbGUgZm9yIHJlYWRpbmcgb3Igd3JpdGluZy4gIFlvdSBtYXkgdXNlIHRoZSBhcnJvdyBrZXlzIG9yIFBhZ2UgVXAvRG93biB0byBicm93c2UgdGhyb3VnaCB0aGUgZmlsZXMsIGFuZCBTIG9yIEVudGVyIHRvIGNob29zZSB0aGUgc2VsZWN0ZWQgZmlsZSBvciBlbnRlciB0aGUgc2VsZWN0ZWQgZGlyZWN0b3J5LiBUbyBtb3ZlIHVwIG9uZSBsZXZlbCwgc2VsZWN0IHRoZSBkaXJlY3RvcnkgY2FsbGVkIFwiLi5cIiBhdCB0aGUgdG9wIG9mIHRoZSBmaWxlIGxpc3QuXG4iCiJcbiIKIiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9ucyBrZXlzIGFyZSBhdmFpbGFibGUgaW4gdGhlIGZpbGUgYnJvd3NlcjpcbiIKIlxuIgptc2dzdHIgIiIKIkhqZWxwZXRla3N0IGZvciBmaWx1dGZvcnNrYXJlblxuIgoiXG4iCiIgRmlsdXRmb3Jza2FyZW4gdmVydCBicnVrdCB0aWwg5SBibGEgZ2plbm5vbSBrYXRhbG9nYW5lIG7lciBlaW4gc2thbCB2ZWxqYSBlaSBmaWwgZm9yIGxlc2luZyBlbGxlciBza3JpdmluZy4gIER1IGthbiBicnVrYSBwaWx0YXN0YW5lIGVsbGVyIFBhZ2UgVXAvRG93biBmb3Ig5SBibGEsIG9nIFMgZWxsZXIgRW50ZXIgZm9yIOUgdmVsamEgZGVuIG1hcmtlcnRlIGZpbGEgZWxsZXIgZm9yIOUgZ+UgaW5uIGkgZGVuIHZhbHRlIGthdGFsb2dlbi4gIEZvciDlIGflIGVpdCBoYWtrIG9wcCwgdmVsIGthdGFsb2dlbiCrLi67IHDlIHRvcHBlbiBhdiBmaWxsaXN0YS5cbiIKIlxuIgoiIEb4bGdqYW5kZSBmdW5rc2pvbnN0YXN0YXIgZXIgdGlsZ2plbmdlbGVnZSBpIGZpbHV0Zm9yc2thcmVuOlxuIgoiXG4iCgojOiBuYW5vLmM6MjU0OAptc2dpZCAiIgoiQnJvd3NlciBHb3RvIERpcmVjdG9yeSBIZWxwIFRleHRcbiIKIlxuIgoiIEVudGVyIHRoZSBuYW1lIG9mIHRoZSBkaXJlY3RvcnkgeW91IHdvdWxkIGxpa2UgdG8gYnJvd3NlIHRvLlxuIgoiXG4iCiIgSWYgdGFiIGNvbXBsZXRpb24gaGFzIG5vdCBiZWVuIGRpc2FibGVkLCB5b3UgY2FuIHVzZSB0aGUgVEFCIGtleSB0byAoYXR0ZW1wdCB0bykgYXV0b21hdGljYWxseSBjb21wbGV0ZSB0aGUgZGlyZWN0b3J5IG5hbWUuICBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGtleXMgYXJlIGF2YWlsYWJsZSBpbiBCcm93c2VyIEdvdG9EaXIgbW9kZTpcbiIKIlxuIgptc2dzdHIgIiIKIkhqZWxwZXRla3N0IGZvciBH5SB0aWwga2F0YWxvZ1xuIgoiXG4iCiIgVGFzdCBpbm4gbmFtbmV0IHDlIGthdGFsb2dlbiBkdSB2aWwgdXRmb3Jza2UuXG4iCiJcbiIKIiBEdSBrYW4gKG1lZCBtaW5kcmUgZGV0IGVyIHNs5XR0IGF2KSBicnVrZSBUYWItdGFzdGVuIGZvciDlIHBy+HZlIOUgZnVsbGb4cmUga2F0YWxvZ25hbW5ldC5cbiIKIlxuIgoiIEb4bGdqYW5kZSBmdW5rc2pvbnN0YXN0YXIgZXIgdGlsZ2plbmdlbGVnZSBpIEflIHRpbCBrYXRhbG9nLW1vZHVzOlxuIgoiXG4iCgojOiBuYW5vLmM6MjU1Ngptc2dpZCAiIgoiU3BlbGwgQ2hlY2sgSGVscCBUZXh0XG4iCiJcbiIKIiBUaGUgc3BlbGwgY2hlY2tlciBjaGVja3MgdGhlIHNwZWxsaW5nIG9mIGFsbCB0ZXh0IGluIHRoZSBjdXJyZW50IGZpbGUuICBXaGVuIGFuIHVua25vd24gd29yZCBpcyBlbmNvdW50ZXJlZCwgaXQgaXMgaGlnaGxpZ2h0ZWQgYW5kIGEgcmVwbGFjZW1lbnQgY2FuIGJlIGVkaXRlZC4gIEl0IHdpbGwgdGhlbiBwcm9tcHQgdG8gcmVwbGFjZSBldmVyeSBpbnN0YW5jZSBvZiB0aGUgZ2l2ZW4gbWlzc3BlbGxlZCB3b3JkIGluIHRoZSBjdXJyZW50IGZpbGUuXG4iCiJcbiIKIiBUaGUgZm9sbG93aW5nIG90aGVyIGZ1bmN0aW9ucyBhcmUgYXZhaWxhYmxlIGluIFNwZWxsIENoZWNrIG1vZGU6XG4iCiJcbiIKbXNnc3RyICIiCiJIamVscGV0ZWtzdCBmb3Igc3RhdmVzamVra2luZ1xuIgoiXG4iCiIgU3RhdmVzamVra2luZ2Ega29udHJvbGxlcmVyIGFsbCB0ZWtzdGVuIGkgYnVmZmVyZXQuICBO5XIgZWl0IHVramVudCBvcmQgdmVydCBmdW5uZSwgdmVydCBkZXQgZnJhbWhldmEgb2cgZWluIGVuZHJlIGRldC4gIER1IHZpbCBz5SB2ZXJ0ZSBzcHVydCBvbSBkdSB2aWwgZW5kcmUgYWxsZSBhbmRyZSBmb3Jla29tc3RhciBpIGJ1ZmZlcmV0IGF2IGRldCBmZWlsc3RhdmEgb3JkZXQuXG4iCiJcbiIKIiBG+GxnamFuZGUgYW5kcmUgZnVua3Nqb25hciBlciB0aWxnamVuZ2VsZWdlIGkgc3RhdmVzamVra2luZ3Ntb2R1czpcbiIKIlxuIgoKIzogbmFuby5jOjI2NTcKIywgYy1mb3JtYXQKbXNnaWQgIiVzIGVuYWJsZS9kaXNhYmxlIgptc2dzdHIgIiVzIHNrcnUgcOUvYXYiCgojOiBuYW5vLmM6MjY3Mgptc2dpZCAiZW5hYmxlZCIKbXNnc3RyICJw5SIKCiM6IG5hbm8uYzoyNjczCm1zZ2lkICJkaXNhYmxlZCIKbXNnc3RyICJhdiIKCiM6IG5hbm8uYzoyNzM3Cm1zZ2lkICJOdW1Mb2NrIGdsaXRjaCBkZXRlY3RlZC4gIEtleXBhZCB3aWxsIG1hbGZ1bmN0aW9uIHdpdGggTnVtTG9jayBvZmYiCm1zZ3N0ciAiTnVtTG9jay1mZWlsIG9wcGRhZ2EuIE51bW1lci10YXN0YW5lIHZpbCBmdW5nZXJlIGZlaWwgbWVkIE51bUxvY2sgYXYiCgojOiBuYW5vLmM6MzA0Nwptc2dpZCAiTWFpbjogc2V0IHVwIHdpbmRvd3NcbiIKbXNnc3RyICJIb3Z1ZDogVmluZGF1Z2Ugc2V0dCBvcHBcbiIKCiM6IG5hbm8uYzozMDY0Cm1zZ2lkICJNYWluOiBib3R0b20gd2luXG4iCm1zZ3N0ciAiSG92dWQ6IGJvdG52aW5kYXVnZVxuIgoKIzogbmFuby5jOjMwNzAKbXNnaWQgIk1haW46IG9wZW4gZmlsZVxuIgptc2dzdHIgIkhvdnVkOiBvcG5hIGZpbFxuIgoKIzogbmFuby5jOjMxMjgKIywgYy1mb3JtYXQKbXNnaWQgIkkgZ290IEFsdC1PLSVjISAoJWQpXG4iCm1zZ3N0ciAiRWcgZmVrayBBbHQtTy0lYyEgKCVkKVxuIgoKIzogbmFuby5jOjMxNjIKIywgYy1mb3JtYXQKbXNnaWQgIkkgZ290IEFsdC1bLTEtJWMhICglZClcbiIKbXNnc3RyICJFZyBmZWtrIEFsdC1bLTEtJWMhICglZClcbiIKCiM6IG5hbm8uYzozMTkyCiMsIGMtZm9ybWF0Cm1zZ2lkICJJIGdvdCBBbHQtWy0yLSVjISAoJWQpXG4iCm1zZ3N0ciAiRWcgZmVrayBBbHQtWy0yLSVjISAoJWQpXG4iCgojOiBuYW5vLmM6MzI2MQojLCBjLWZvcm1hdAptc2dpZCAiSSBnb3QgQWx0LVstJWMhICglZClcbiIKbXNnc3RyICJFZyBmZWtrIEFsdC1bLSVjISAoJWQpXG4iCgojOiBuYW5vLmM6MzMwOAojLCBjLWZvcm1hdAptc2dpZCAiSSBnb3QgQWx0LSVjISAoJWQpXG4iCm1zZ3N0ciAiRWcgZmVrayBBbHQtJWMgKCVkKVxuIgoKIzogcmNmaWxlLmM6ODAKIywgYy1mb3JtYXQKbXNnaWQgIkVycm9yIGluICVzIG9uIGxpbmUgJWQ6ICIKbXNnc3RyICJGZWlsIGkgJXMgcOUgbGluamUgJWQ6ICIKCiM6IHJjZmlsZS5jOjg0Cm1zZ2lkICIiCiJcbiIKIlByZXNzIHJldHVybiB0byBjb250aW51ZSBzdGFydGluZyBuYW5vXG4iCm1zZ3N0ciAiIgoiXG4iCiJUcnlrayBFbnRlciBmb3Ig5SBoYWxkYSBmcmFtIGxhc3RpbmdhIGF2IG5hbm9cbiIKCiM6IHJjZmlsZS5jOjE3MgojLCBjLWZvcm1hdAptc2dpZCAiIgoiY29sb3IgJXMgbm90IHVuZGVyc3Rvb2QuXG4iCiJWYWxpZCBjb2xvcnMgYXJlIFwiZ3JlZW5cIiwgXCJyZWRcIiwgXCJibHVlXCIsIFxuIgoiXCJ3aGl0ZVwiLCBcInllbGxvd1wiLCBcImN5YW5cIiwgXCJtYWdlbnRhXCIgYW5kIFxuIgoiXCJibGFja1wiLCB3aXRoIHRoZSBvcHRpb25hbCBwcmVmaXggXCJicmlnaHRcIi5cbiIKbXNnc3RyICIiCiJmYXJnZW4gJXMgZXIgdWtqZW5kLlxuIgoiR3lsZGlnZSBmYXJnYXIgZXIgq2dyZWVuuyAoZ3L4biksIKtyZWS7IChyYXVkKSwgq2JsdWW7IChibOUpLCBcbiIKIqt3aGl0ZbsgKGt2aXQpLCCreWVsbG93uyAoZ3VsKSwgq2N5YW67IChseXNibOUpLCCrbWFnZW50YbsgKGZpb2xldHQpIG9nXG4iCiKrYmxhY2u7IChzdmFydCksIG1lZCBkZW4gdmFsZnJpZSBuZW1uaW5nYSCrYnJpZ2h0uyAobHlzKSBm+HJzdC5cbiIKCiM6IHJjZmlsZS5jOjE5Ngptc2dpZCAiTWlzc2luZyBjb2xvciBuYW1lIgptc2dzdHIgIkZhcmdlbmFtbmV0IG1hbmdsYXIiCgojOiByY2ZpbGUuYzoyMjYgcmNmaWxlLmM6MjgwCm1zZ2lkICJyZWdleCBzdHJpbmdzIG11c3QgYmVnaW4gYW5kIGVuZCB3aXRoIGEgXCIgY2hhcmFjdGVyXG4iCm1zZ3N0ciAicmVndXR0cnlrayBt5SBzdGFydGUgb2cgc2x1dHRlIG1lZCBlaXQgXCItdGVpa25cbiIKCiM6IHJjZmlsZS5jOjI3Mgptc2dpZCAiIgoiXG4iCiJcdFwic3RhcnQ9XCIgcmVxdWlyZXMgYSBjb3JyZXNwb25kaW5nIFwiZW5kPVwiIgptc2dzdHIgIiIKIlxuIgoiXHRmb3Iga3ZhciCrc3RhcnQ9uyBt5SBkZXIgdmVyYSBlaW4gq2VuZD27IgoKIzogcmNmaWxlLmM6MzIyCm1zZ2lkICJwYXJzZV9yY2ZpbGU6IFJlYWQgYSBjb21tZW50XG4iCm1zZ3N0ciAicGFyc2VfcmNmaWxlOiBMYXMgZWluIGtvbW1lbnRhclxuIgoKIzogcmNmaWxlLmM6MzQzCiMsIGMtZm9ybWF0Cm1zZ2lkICJjb21tYW5kICVzIG5vdCB1bmRlcnN0b29kIgptc2dzdHIgImtvbW1hbmRvZW4gJXMgZXIgaWtramUgZm9yc3TlZWxlZyIKCiM6IHJjZmlsZS5jOjM1NQojLCBjLWZvcm1hdAptc2dpZCAicGFyc2VfcmNmaWxlOiBQYXJzaW5nIG9wdGlvbiAlc1xuIgptc2dzdHIgInBhcnNlX3JjZmlsZTogTGVzIGlubiBvcHNqb24gJXNcbiIKCiM6IHJjZmlsZS5jOjM3NgojLCBjLWZvcm1hdAptc2dpZCAib3B0aW9uICVzIHJlcXVpcmVzIGFuIGFyZ3VtZW50Igptc2dzdHIgIm9wc2pvbmVuICVzIGtyZXYgZWl0IGFyZ3VtZW50IgoKIzogcmNmaWxlLmM6Mzg3CiMsIGMtZm9ybWF0Cm1zZ2lkICJyZXF1ZXN0ZWQgZmlsbCBzaXplICVkIHRvbyBzbWFsbCIKbXNnc3RyICJmeWxsYnJlaWRkYSBkdSBmb3Jlc2xvICglZCkgZXIgZm9yIHNtYWwiCgojOiByY2ZpbGUuYzozOTcKIywgYy1mb3JtYXQKbXNnaWQgInJlcXVlc3RlZCB0YWIgc2l6ZSAlZCB0b28gc21hbGwiCm1zZ3N0ciAidGFiLWJyZWlkZGEgZHUgZm9yZXNsbyAoJWQpIGVyIGZvciBzbWFsIgoKIzogcmNmaWxlLmM6NDIxCiMsIGMtZm9ybWF0Cm1zZ2lkICJzZXQgZmxhZyAlZCFcbiIKbXNnc3RyICJzZXR0IGZsYWdnZXQgJWQhXG4iCgojOiByY2ZpbGUuYzo0MjcKIywgYy1mb3JtYXQKbXNnaWQgInVuc2V0IGZsYWcgJWQhXG4iCm1zZ3N0ciAic2tydSBhdiBmbGFnZ2V0ICVkIVxuIgoKIzogcmNmaWxlLmM6NDM3Cm1zZ2lkICJFcnJvcnMgZm91bmQgaW4gLm5hbm9yYyBmaWxlIgptc2dzdHIgIkZlaWwgZnVubmUgaSAubmFub3JjIGZpbGEiCgojOiByY2ZpbGUuYzo0NDUKIywgYy1mb3JtYXQKbXNnaWQgIlVuYWJsZSB0byBvcGVuIH4vLm5hbm9yYyBmaWxlLCAlcyIKbXNnc3RyICJLYW4gaWtramUgb3BuYSB+Ly5uYW5vcmMsICVzIgoKIzogc2VhcmNoLmM6MTMxCm1zZ2lkICJTZWFyY2giCm1zZ3N0ciAiU/hrIgoKIy4gVGhpcyBzdHJpbmcgaXMganVzdCBhIG1vZGlmaWVyIGZvciB0aGUgc2VhcmNoIHByb21wdCwKIy4gbm8gZ3JhbW1hciBpcyBpbXBsaWVkCiM6IHNlYXJjaC5jOjEzNQptc2dpZCAiIFtDYXNlIFNlbnNpdGl2ZV0iCm1zZ3N0ciAiIFtTa2lsIHN0b3JlL3Nt5V0iCgojLiBUaGlzIHN0cmluZyBpcyBqdXN0IGEgbW9kaWZpZXIgZm9yIHRoZSBzZWFyY2ggcHJvbXB0LAojLiBubyBncmFtbWFyIGlzIGltcGxpZWQKIzogc2VhcmNoLmM6MTM5Cm1zZ2lkICIgW1JlZ2V4cF0iCm1zZ3N0ciAiIFtSZWd1dHRyeWtrXSIKCiMuIFRoaXMgc3RyaW5nIGlzIGp1c3QgYSBtb2RpZmllciBmb3IgdGhlIHNlYXJjaCBwcm9tcHQsCiMuIG5vIGdyYW1tYXIgaXMgaW1wbGllZAojOiBzZWFyY2guYzoxNDMKbXNnaWQgIiBbQmFja3dhcmRzXSIKbXNnc3RyICIgW0Jha292ZXJdIgoKIzogc2VhcmNoLmM6MTQ1Cm1zZ2lkICIgKHRvIHJlcGxhY2UpIgptc2dzdHIgIiAo5SBlcnN0YXR0YSkiCgojOiBzZWFyY2guYzoxNTAgc2VhcmNoLmM6NDM3Cm1zZ2lkICJTZWFyY2ggQ2FuY2VsbGVkIgptc2dzdHIgIlP4ayBhdmJyb3RlIgoKIzogc2VhcmNoLmM6MjIyCiMsIGMtZm9ybWF0Cm1zZ2lkICJcIiVzLi4uXCIgbm90IGZvdW5kIgptc2dzdHIgIqslcy4uLrsgaWtramUgZnVubmUiCgojOiBzZWFyY2guYzoyOTAgc2VhcmNoLmM6MzUyCm1zZ2lkICJTZWFyY2ggV3JhcHBlZCIKbXNnc3RyICJT+GtldCBnamVrayBydW5kdCIKCiM6IHNlYXJjaC5jOjQ1NQptc2dpZCAiVGhpcyBpcyB0aGUgb25seSBvY2N1cnJlbmNlIgptc2dzdHIgIkRldHRlIGVyIGVpbmFzdGUgZm9yZWtvbXN0IgoKIzogc2VhcmNoLmM6NDY1CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZXBsYWNlZCAlZCBvY2N1cnJlbmNlcyIKbXNnc3RyICJFcnN0YXR0YSAlZCB0aWxmZWxsZSIKCiM6IHNlYXJjaC5jOjQ2Nwptc2dpZCAiUmVwbGFjZWQgMSBvY2N1cnJlbmNlIgptc2dzdHIgIkVyc3RhdHRhIDEgdGlsZmVsbGUiCgojOiBzZWFyY2guYzo2MDYgc2VhcmNoLmM6NzI0IHNlYXJjaC5jOjc0MAptc2dpZCAiUmVwbGFjZSBDYW5jZWxsZWQiCm1zZ3N0ciAiRXJzdGF0dCBhdmJyb3RlIgoKIzogc2VhcmNoLmM6NjUwCm1zZ2lkICJSZXBsYWNlIHRoaXMgaW5zdGFuY2U/Igptc2dzdHIgIkVyc3RhdHRhIGRldHRlIHRpbGZlbGxldD8iCgojOiBzZWFyY2guYzo2NjIKbXNnaWQgIlJlcGxhY2UgZmFpbGVkOiB1bmtub3duIHN1YmV4cHJlc3Npb24hIgptc2dzdHIgIkVyc3RhdHQgZmVpbGE6IHVramVudCBkZWx1dHRyeWtrISIKCiM6IHNlYXJjaC5jOjc2NQojLCBjLWZvcm1hdAptc2dpZCAiUmVwbGFjZSB3aXRoIFslc10iCm1zZ3N0ciAiRXJzdGF0dCBtZWQgWyVzXSIKCiM6IHNlYXJjaC5jOjc2OSBzZWFyY2guYzo3NzMKbXNnaWQgIlJlcGxhY2Ugd2l0aCIKbXNnc3RyICJFcnN0YXR0IG1lZCIKCiM6IHNlYXJjaC5jOjgxNQptc2dpZCAiRW50ZXIgbGluZSBudW1iZXIiCm1zZ3N0ciAiU2tyaXYgbGluamVudW1tZXIiCgojOiBzZWFyY2guYzo4MTcKbXNnaWQgIkFib3J0ZWQiCm1zZ3N0ciAiQXZicm90ZSIKCiM6IHNlYXJjaC5jOjgyNgptc2dpZCAiQ29tZSBvbiwgYmUgcmVhc29uYWJsZSIKbXNnc3RyICJLb20gaWdqZW4sIHNhbWFyYmVpZCBsaXR0IgoKIzogc2VhcmNoLmM6ODg4Cm1zZ2lkICJOb3QgYSBicmFja2V0Igptc2dzdHIgIklra2plIGVpIGtsYW1tZSIKCiMuIGRpZG4ndCBmaW5kIGVpdGhlciBsZWZ0IG9yIHJpZ2h0IGJyYWNrZXQKIzogc2VhcmNoLmM6OTMzCm1zZ2lkICJObyBtYXRjaGluZyBicmFja2V0Igptc2dzdHIgIkluZ2EgbW90c3ZhcmFuZGUga2xhbW1lIgoKIzogdXRpbHMuYzoxNzEKbXNnaWQgIm5hbm86IG1hbGxvYzogb3V0IG9mIG1lbW9yeSEiCm1zZ3N0ciAibmFubzogbWFsbG9jOiB0b20gZm9yIG1pbm5lISIKCiM6IHV0aWxzLmM6MTg1Cm1zZ2lkICJuYW5vOiBjYWxsb2M6IG91dCBvZiBtZW1vcnkhIgptc2dzdHIgIm5hbm86IGNhbGxvYzogdG9tIGZvciBtaW5uZSEiCgojOiB1dGlscy5jOjE5NQptc2dpZCAibmFubzogcmVhbGxvYzogb3V0IG9mIG1lbW9yeSEiCm1zZ3N0ciAibmFubzogcmVhbGxvYzogdG9tIGZvciBtaW5uZSEiCgojOiB3aW5pby5jOjEyNAojLCBjLWZvcm1hdAptc2dpZCAiYWN0dWFsX3hfZnJvbV9zdGFydCBmb3IgeHBsdXM9JWQgcmV0dXJuZWQgJWRcbiIKbXNnc3RyICJhY3R1YWxfeF9mcm9tX3N0YXJ0IGZvciB4cGx1cz0lZCByZXR1cm5lcnRlICVkXG4iCgojOiB3aW5pby5jOjMwMCB3aW5pby5jOjQ3MAojLCBjLWZvcm1hdAptc2dpZCAiQWhhISAnJWMnICglZClcbiIKbXNnc3RyICJBaGEhICclYycgKCVkKVxuIgoKIzogd2luaW8uYzo1MDIKIywgYy1mb3JtYXQKbXNnaWQgImlucHV0ICclYycgKCVkKVxuIgptc2dzdHIgImlucHV0ICclYycgKCVkKVxuIgoKIzogd2luaW8uYzo1NTAKbXNnaWQgIk5ldyBCdWZmZXIiCm1zZ3N0ciAiTnkgYnVmZmVyIgoKIzogd2luaW8uYzo1NTQKbXNnaWQgIiAgRmlsZTogLi4uIgptc2dzdHIgIiAgRmlsOiAuLi4iCgojOiB3aW5pby5jOjU1Ngptc2dpZCAiICAgRElSOiAuLi4iCm1zZ3N0ciAiICAgS0FUOiAuLi4iCgojOiB3aW5pby5jOjU2MQptc2dpZCAiRmlsZTogIgptc2dzdHIgIkZpbDogIgoKIzogd2luaW8uYzo1NjQKbXNnaWQgIiBESVI6ICIKbXNnc3RyICIgS0FUOiAiCgojOiB3aW5pby5jOjU2OQptc2dpZCAiTW9kaWZpZWQiCm1zZ3N0ciAiRW5kcmEiCgojOiB3aW5pby5jOjEyNzgKIywgYy1mb3JtYXQKbXNnaWQgIk1vdmVkIHRvICglZCwgJWQpIGluIGVkaXQgYnVmZmVyXG4iCm1zZ3N0ciAiRmx5dHRhIHRpbCAoJWQsICVkKSBpIHJlZGlnZXJpbmdzYnVmZmVyXG4iCgojOiB3aW5pby5jOjEyODkKIywgYy1mb3JtYXQKbXNnaWQgImN1cnJlbnQtPmRhdGEgPSBcIiVzXCJcbiIKbXNnc3RyICJjdXJyZW50LT5kYXRhID0gXCIlc1wiXG4iCgojOiB3aW5pby5jOjEzNjMKIywgYy1mb3JtYXQKbXNnaWQgIkkgZ290IFwiJXNcIlxuIgptc2dzdHIgIkVnIGZla2sgXCIlc1wiXG4iCgojLiBZZXMsIG5vIGFuZCBhbGwgYXJlIHN0cmluZ3Mgb2YgYW55IGxlbmd0aC4gIEVhY2ggc3RyaW5nIGNvbnNpc3RzIG9mCiMuIGFsbCBjaGFyYWN0ZXJzIGFjY2VwdGVkIGFzIGEgdmFsaWQgY2hhcmFjdGVyIGZvciB0aGF0IHZhbHVlLgojLiBUaGUgZmlyc3QgdmFsdWUgd2lsbCBiZSB0aGUgb25lIGRpc3BsYXllZCBpbiB0aGUgc2hvcnRjdXRzLgojOiB3aW5pby5jOjEzOTIKbXNnaWQgIll5Igptc2dzdHIgIkpqWXkiCgojOiB3aW5pby5jOjEzOTMKbXNnaWQgIk5uIgptc2dzdHIgIk5uIgoKIzogd2luaW8uYzoxMzk0Cm1zZ2lkICJBYSIKbXNnc3RyICJBYSIKCiM6IHdpbmlvLmM6MTQwOAptc2dpZCAiWWVzIgptc2dzdHIgIkphIgoKIzogd2luaW8uYzoxNDEyCm1zZ2lkICJBbGwiCm1zZ3N0ciAiQWxsZSIKCiM6IHdpbmlvLmM6MTQxNwptc2dpZCAiTm8iCm1zZ3N0ciAiTmVpIgoKIzogd2luaW8uYzoxNjMwCiMsIGMtZm9ybWF0Cm1zZ2lkICJkb19jdXJzb3Jwb3M6IGxpbmVwY3QgPSAlZiwgYnl0ZXBjdCA9ICVmXG4iCm1zZ3N0ciAiZG9fY3Vyc29ycG9zOiBsaW5lcGN0ID0gJWYsIGJ5dGVwY3QgPSAlZlxuIgoKIzogd2luaW8uYzoxNjM5CiMsIGMtZm9ybWF0Cm1zZ2lkICJsaW5lICVkLyVkICglLjBmJSUpLCBjb2wgJWxkLyVsZCAoJS4wZiUlKSwgY2hhciAlbGQvJWxkICglLjBmJSUpIgptc2dzdHIgImxpbmplICVkLyVkICglLjBmJSUpLCBrb2wgJWxkLyVsZCAoJS4wZiUlKSwgdGVpa24gJWxkLyVsZCAoJS4wZiUlKSIKCiM6IHdpbmlvLmM6MTgwMAptc2dpZCAiRHVtcGluZyBmaWxlIGJ1ZmZlciB0byBzdGRlcnIuLi5cbiIKbXNnc3RyICJEdW1wYXIgZmlsLWJ1ZmZlcmV0IHRpbCBzdGRlcnIuLi5cbiIKCiM6IHdpbmlvLmM6MTgwMgptc2dpZCAiRHVtcGluZyBjdXRidWZmZXIgdG8gc3RkZXJyLi4uXG4iCm1zZ3N0ciAiRHVtcGFyIHV0a2xpcHBzYnVmZmVyZXQgdGlsIHN0ZGVyci4uLlxuIgoKIzogd2luaW8uYzoxODA0Cm1zZ2lkICJEdW1waW5nIGEgYnVmZmVyIHRvIHN0ZGVyci4uLlxuIgptc2dzdHIgIkR1bXBhciBlaXQgYnVmZmVyIHRpbCBzdGRlcnIuLi5cbiIKCiM6IHdpbmlvLmM6MTg4MAptc2dpZCAiVGhlIG5hbm8gdGV4dCBlZGl0b3IiCm1zZ3N0ciAiVGVrc3RlZGl0b3JlbiBuYW5vIgoKIzogd2luaW8uYzoxODgxCm1zZ2lkICJ2ZXJzaW9uICIKbXNnc3RyICJ2ZXJzam9uICIKCiM6IHdpbmlvLmM6MTg4Mgptc2dpZCAiQnJvdWdodCB0byB5b3UgYnk6Igptc2dzdHIgIkdqZXZlIHRpbCBkZWcgYXY6IgoKIzogd2luaW8uYzoxODgzCm1zZ2lkICJTcGVjaWFsIHRoYW5rcyB0bzoiCm1zZ3N0ciAiU3Blc2llbGwgdGFrayB0aWw6IgoKIyBPdmVyc2V0dGUgZGV0dGUgPwojOiB3aW5pby5jOjE4ODQKbXNnaWQgIlRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24iCm1zZ3N0ciAiRnJlZSBTb2Z3YXJlIEZvdW5kYXRpb24iCgojOiB3aW5pby5jOjE4ODYKbXNnaWQgIlBhdmVsIEN1cnRpcywgWmV5ZCBCZW4tSGFsaW0gYW5kIEVyaWMgUy4gUmF5bW9uZCBmb3IgbmN1cnNlcyIKbXNnc3RyICJQYXZlbCBDdXJ0aXMsIFpleWQgQmVuLUhhbGltIG9nIEVyaWMgUy4gUmF5bW9uZCBmb3IgbmN1cnNlcyIKCiM6IHdpbmlvLmM6MTg4Nwptc2dpZCAiYW5kIGFueW9uZSBlbHNlIHdlIGZvcmdvdC4uLiIKbXNnc3RyICJvZyBhbGxlIGRlaSBhbmRyZSB2aSBnbPh5bWRlLi4uIgoKIzogd2luaW8uYzoxODg4Cm1zZ2lkICJUaGFuayB5b3UgZm9yIHVzaW5nIG5hbm8hXG4iCm1zZ3N0ciAiVGFrayBmb3IgYXQgZHUgYnJ1a2FyIG5hbm8hXG4iCg==