IyBTd2VkaXNoIG1lc3NhZ2VzIGZvciBuYW5vLgojIENvcHlyaWdodCAoQykgMjAwMSwgMjAwMiwgMjAwMyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KIyBDaHJpc3RpYW4gUm9zZSA8bWVudGhvc0BtZW50aG9zLmNvbT4sIDIwMDEsIDIwMDIsIDIwMDMuCiMKbXNnaWQgIiIKbXNnc3RyICIiCiJQcm9qZWN0LUlkLVZlcnNpb246IG5hbm8gMS4xLjk5cHJlM1xuIgoiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IFxuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMDMtMDgtMTEgMjE6NDktMDQwMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogMjAwMy0wMi0xNSAxNDoyMCswMTAwXG4iCiJMYXN0LVRyYW5zbGF0b3I6IENocmlzdGlhbiBSb3NlIDxtZW50aG9zQG1lbnRob3MuY29tPlxuIgoiTGFuZ3VhZ2UtVGVhbTogU3dlZGlzaCA8c3ZAbGkub3JnPlxuIgoiTUlNRS1WZXJzaW9uOiAxLjBcbiIKIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1pc28tODg1OS0xXG4iCiJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCiJQbHVyYWwtRm9ybXM6IG5wbHVyYWxzPTI7IHBsdXJhbD0obiAhPSAxKTtcbiIKCiM6IGZpbGVzLmM6MzE3CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWFkICVkIGxpbmUgKENvbnZlcnRlZCBmcm9tIE1hYyBmb3JtYXQpIgptc2dpZF9wbHVyYWwgIlJlYWQgJWQgbGluZXMgKENvbnZlcnRlZCBmcm9tIE1hYyBmb3JtYXQpIgptc2dzdHJbMF0gIkzkc3RlICVkIHJhZCAoa29udmVydGVyYWQgZnLlbiBNYWMtZm9ybWF0KSIKbXNnc3RyWzFdICJM5HN0ZSAlZCByYWRlciAoa29udmVydGVyYWRlIGZy5W4gTWFjLWZvcm1hdCkiCgojOiBmaWxlcy5jOjMyMQojLCBjLWZvcm1hdAptc2dpZCAiUmVhZCAlZCBsaW5lIChDb252ZXJ0ZWQgZnJvbSBET1MgZm9ybWF0KSIKbXNnaWRfcGx1cmFsICJSZWFkICVkIGxpbmVzIChDb252ZXJ0ZWQgZnJvbSBET1MgZm9ybWF0KSIKbXNnc3RyWzBdICJM5HN0ZSAlZCByYWQgKGtvbnZlcnRlcmFkIGZy5W4gRE9TLWZvcm1hdCkiCm1zZ3N0clsxXSAiTORzdGUgJWQgcmFkZXIgKGtvbnZlcnRlcmFkZSBmcuVuIERPUy1mb3JtYXQpIgoKIzogZmlsZXMuYzozMjYKIywgYy1mb3JtYXQKbXNnaWQgIlJlYWQgJWQgbGluZSIKbXNnaWRfcGx1cmFsICJSZWFkICVkIGxpbmVzIgptc2dzdHJbMF0gIkzkc3RlICVkIHJhZCIKbXNnc3RyWzFdICJM5HN0ZSAlZCByYWRlciIKCiM6IGZpbGVzLmM6MzQzIHNlYXJjaC5jOjU4CiMsIGMtZm9ybWF0Cm1zZ2lkICJcIiVzXCIgbm90IGZvdW5kIgptc2dzdHIgIlwiJXNcIiBrdW5kZSBpbnRlIGhpdHRhcyIKCiM6IGZpbGVzLmM6MzQ3Cm1zZ2lkICJOZXcgRmlsZSIKbXNnc3RyICJOeSBmaWwiCgojOiBmaWxlcy5jOjM1MwojLCBjLWZvcm1hdAptc2dpZCAiXCIlc1wiIGlzIGEgZGlyZWN0b3J5Igptc2dzdHIgIlwiJXNcIiDkciBlbiBrYXRhbG9nIgoKIzogZmlsZXMuYzozNTQKIywgYy1mb3JtYXQKbXNnaWQgIkZpbGUgXCIlc1wiIGlzIGEgZGV2aWNlIGZpbGUiCm1zZ3N0ciAiRmlsZW4gXCIlc1wiIORyIGVuIGVuaGV0c2ZpbCIKCiM6IGZpbGVzLmM6MzcyCm1zZ2lkICJSZWFkaW5nIEZpbGUiCm1zZ3N0ciAiTORzZXIgZmlsZW4iCgojOiBmaWxlcy5jOjQ0OAojLCBjLWZvcm1hdAptc2dpZCAiRmlsZSB0byBpbnNlcnQgaW50byBuZXcgYnVmZmVyIFtmcm9tICVzXSAiCm1zZ3N0ciAiRmlsIGF0dCBpbmZvZ2EgaSBueSBidWZmZXJ0IFtmcuVuICVzXSAiCgojOiBmaWxlcy5jOjQ1NgojLCBjLWZvcm1hdAptc2dpZCAiRmlsZSB0byBpbnNlcnQgW2Zyb20gJXNdICIKbXNnc3RyICJGaWwgYXR0IGluZm9nYSBbZnLlbiAlc10gIgoKIzogZmlsZXMuYzo0NjcKbXNnaWQgIkZpbGUgdG8gaW5zZXJ0IGludG8gbmV3IGJ1ZmZlciBbZnJvbSAuL10gIgptc2dzdHIgIkZpbCBhdHQgaW5mb2dhIGkgbnkgYnVmZmVydCBbZnLlbiAuL10gIgoKIzogZmlsZXMuYzo0NzQKbXNnaWQgIkZpbGUgdG8gaW5zZXJ0IFtmcm9tIC4vXSAiCm1zZ3N0ciAiRmlsIGF0dCBpbmZvZ2EgW2Zy5W4gLi9dICIKCiM6IGZpbGVzLmM6NDk1Cm1zZ2lkICJDb21tYW5kIHRvIGV4ZWN1dGUiCm1zZ3N0ciAiS29tbWFuZG8gYXR0IGv2cmEiCgojOiBmaWxlcy5jOjQ5NyBmaWxlcy5jOjYwOSBmaWxlcy5jOjEzNDAgZmlsZXMuYzoxNzc2IG5hbm8uYzoyNzI2Cm1zZ2lkICJDYW5jZWxsZWQiCm1zZ3N0ciAiQXZicnV0ZW4iCgojOiBmaWxlcy5jOjUxOAojLCBjLWZvcm1hdAptc2dpZCAiQ2FuJ3QgaW5zZXJ0IGZpbGUgZnJvbSBvdXRzaWRlIG9mICVzIgptc2dzdHIgIkthbiBpbnRlIGluZm9nYSBmaWwgZnLlbiB1dGFuZvZyICVzIgoKIzogZmlsZXMuYzo2MzIKbXNnaWQgIktleSBpbGxlZ2FsIGluIG5vbi1tdWx0aWJ1ZmZlciBtb2RlIgptc2dzdHIgIlRhbmdlbnRlbiBvZ2lsdGlnIGkgaWNrZS1mbGVyYnVmZmVydGzkZ2V0IgoKIzogZmlsZXMuYzo4NzMgZmlsZXMuYzo5MzYKbXNnaWQgIk5vIG1vcmUgb3BlbiBmaWxlcyIKbXNnc3RyICJJbmdhIGZsZXIg9nBwbmEgZmlsZXIiCgojOiBmaWxlcy5jOjkwMCBmaWxlcy5jOjk2MwojLCBjLWZvcm1hdAptc2dpZCAiU3dpdGNoZWQgdG8gJXMiCm1zZ3N0ciAiVuR4bGFkZSB0aWxsICVzIgoKIzogZmlsZXMuYzoxMzUzCiMsIGMtZm9ybWF0Cm1zZ2lkICJDYW4ndCB3cml0ZSBvdXRzaWRlIG9mICVzIgptc2dzdHIgIkthbiBpbnRlIHNrcml2YSB1dGFuZvZyICVzIgoKIzogZmlsZXMuYzoxMzg0CiMsIGMtZm9ybWF0Cm1zZ2lkICJDb3VsZCBub3QgcmVhZCAlcyBmb3IgYmFja3VwOiAlcyIKbXNnc3RyICJLdW5kZSBpbnRlIPZwcG5hICVzIGb2ciBz5GtlcmhldHNrb3BpZXJpbmc6ICVzIgoKIzogZmlsZXMuYzoxMzk1CiMsIGMtZm9ybWF0Cm1zZ2lkICJDb3VsZG4ndCB3cml0ZSBiYWNrdXA6ICVzIgptc2dzdHIgIkt1bmRlIGludGUgc2tyaXZhIHPka2VyaGV0c2tvcGlhOiAlcyIKCiM6IGZpbGVzLmM6MTQxMwojLCBjLWZvcm1hdAptc2dpZCAiQ291bGQgbm90IHNldCBwZXJtaXNzaW9ucyAlbyBvbiBiYWNrdXAgJXM6ICVzIgptc2dzdHIgIkt1bmRlIGludGUgc+R0dGEgcuR0dGlnaGV0ZXJuYSAlbyBw5SBz5GtlcmhldHNrb3BpYW4gJXM6ICVzIgoKIzogZmlsZXMuYzoxNDE5CiMsIGMtZm9ybWF0Cm1zZ2lkICJDb3VsZCBub3Qgc2V0IG93bmVyICVkL2dyb3VwICVkIG9uIGJhY2t1cCAlczogJXMiCm1zZ3N0ciAiS3VuZGUgaW50ZSBz5HR0YSDkZ2FyZSAlZC9ncnVwcCAlZCBw5SBz5GtlcmhldHNrb3BpYW4gJXM6ICVzIgoKIzogZmlsZXMuYzoxNDI0CiMsIGMtZm9ybWF0Cm1zZ2lkICJDb3VsZCBub3Qgc2V0IGFjY2Vzcy9tb2RpZmljYXRpb24gdGltZSBvbiBiYWNrdXAgJXM6ICVzIgptc2dzdHIgIkt1bmRlIGludGUgc+R0dGEg5XRrb21zdC0vbW9kaWZpZXJpbmdzdGlkIHDlIHPka2VyaGV0c2tvcGlhbiAlczogJXMiCgojOiBmaWxlcy5jOjE0NTkgZmlsZXMuYzoxNDc1IGZpbGVzLmM6MTQ4NyBmaWxlcy5jOjE1MDkgZmlsZXMuYzoxNTQyCiM6IGZpbGVzLmM6MTU0OSBmaWxlcy5jOjE1NjEKIywgYy1mb3JtYXQKbXNnaWQgIkNvdWxkIG5vdCBvcGVuIGZpbGUgZm9yIHdyaXRpbmc6ICVzIgptc2dzdHIgIkt1bmRlIGludGUg9nBwbmEgZmlsZW4gZvZyIHNrcml2bmluZzogJXMiCgojOiBmaWxlcy5jOjE1NzIKIywgYy1mb3JtYXQKbXNnaWQgIkNvdWxkIG5vdCBjbG9zZSAlczogJXMiCm1zZ3N0ciAiS3VuZGUgaW50ZSBzdORuZ2EgJXM6ICVzIgoKIzogZmlsZXMuYzoxNTg0IGZpbGVzLmM6MTU4OSBmaWxlcy5jOjE2MTcKIywgYy1mb3JtYXQKbXNnaWQgIkNvdWxkIG5vdCByZW9wZW4gJXM6ICVzIgptc2dzdHIgIkt1bmRlIGludGUg5XRlcvZwcG5hICVzOiAlcyIKCiM6IGZpbGVzLmM6MTU5NCBmaWxlcy5jOjE2MDAgZmlsZXMuYzoxNjA5CiMsIGMtZm9ybWF0Cm1zZ2lkICJDb3VsZCBub3Qgb3BlbiAlcyBmb3IgcHJlcGVuZDogJXMiCm1zZ3N0ciAiS3VuZGUgaW50ZSD2cHBuYSAlcyBm9nIgaW5mb2dhbmRlOiAlcyIKCiM6IGZpbGVzLmM6MTY0NyBmaWxlcy5jOjE2NTYgZmlsZXMuYzoxNjYxCiMsIGMtZm9ybWF0Cm1zZ2lkICJDb3VsZCBub3Qgb3BlbiAlcyBmb3Igd3JpdGluZzogJXMiCm1zZ3N0ciAiS3VuZGUgaW50ZSD2cHBuYSAlcyBm9nIgc2tyaXZuaW5nOiAlcyIKCiM6IGZpbGVzLmM6MTY2OAojLCBjLWZvcm1hdAptc2dpZCAiQ291bGQgbm90IHNldCBwZXJtaXNzaW9ucyAlbyBvbiAlczogJXMiCm1zZ3N0ciAiS3VuZGUgaW50ZSBz5HR0YSBy5HR0aWdoZXRlcm5hICVvIHDlICVzOiAlcyIKCiM6IGZpbGVzLmM6MTY4NAojLCBjLWZvcm1hdAptc2dpZCAiV3JvdGUgJWQgbGluZSIKbXNnaWRfcGx1cmFsICJXcm90ZSAlZCBsaW5lcyIKbXNnc3RyWzBdICJTa3JldiAlZCByYWQiCm1zZ3N0clsxXSAiU2tyZXYgJWQgcmFkZXIiCgojOiBmaWxlcy5jOjE3MzAKbXNnaWQgIiBbTWFjIEZvcm1hdF0iCm1zZ3N0ciAiIFtNYWMtZm9ybWF0XSIKCiM6IGZpbGVzLmM6MTczMgptc2dpZCAiIFtET1MgRm9ybWF0XSIKbXNnc3RyICIgW0RPUy1mb3JtYXRdIgoKIzogZmlsZXMuYzoxNzM3Cm1zZ2lkICIgW0JhY2t1cF0iCm1zZ3N0ciAiIFtT5GtlcmhldHNrb3BpYV0iCgojOiBmaWxlcy5jOjE3NDUKbXNnaWQgIlByZXBlbmQgU2VsZWN0aW9uIHRvIEZpbGUiCm1zZ3N0ciAiSW5mb2dhIG1hcmtlcmluZyB0aWxsIGZpbCIKCiM6IGZpbGVzLmM6MTc0OAptc2dpZCAiQXBwZW5kIFNlbGVjdGlvbiB0byBGaWxlIgptc2dzdHIgIkzkZ2cgdGlsbCBtYXJrZXJpbmcgdGlsbCBmaWwiCgojOiBmaWxlcy5jOjE3NTEKbXNnaWQgIldyaXRlIFNlbGVjdGlvbiB0byBGaWxlIgptc2dzdHIgIlNrcml2IG1hcmtlcmluZyB0aWxsIGZpbCIKCiM6IGZpbGVzLmM6MTc1NSBmaWxlcy5jOjE3NjYKbXNnaWQgIkZpbGUgTmFtZSB0byBQcmVwZW5kIHRvIgptc2dzdHIgIkZpbG5hbW4gYXR0IGluZm9nYSBpIgoKIzogZmlsZXMuYzoxNzU4IGZpbGVzLmM6MTc2OQptc2dpZCAiRmlsZSBOYW1lIHRvIEFwcGVuZCB0byIKbXNnc3RyICJGaWxuYW1uIGF0dCBs5GdnYSB0aWxsIGkiCgojOiBmaWxlcy5jOjE3NjEgZmlsZXMuYzoxNzcyCm1zZ2lkICJGaWxlIE5hbWUgdG8gV3JpdGUiCm1zZ3N0ciAiRmlsbmFtbiBhdHQgc2tyaXZhIgoKIzogZmlsZXMuYzoxODMwCm1zZ2lkICJGaWxlIGV4aXN0cywgT1ZFUldSSVRFID8iCm1zZ3N0ciAiRmlsZW4gZXhpc3RlcmFyLCBTS1JJVkEg1lZFUj8iCgojOiBmaWxlcy5jOjIzMTkKbXNnaWQgIihtb3JlKSIKbXNnc3RyICIobWVyKSIKCiM6IGZpbGVzLmM6MjYyNAptc2dpZCAiQ2FuJ3QgbW92ZSB1cCBhIGRpcmVjdG9yeSIKbXNnc3RyICJLYW4gaW50ZSBn5SB1cHAgZW4ga2F0YWxvZyIKCiM6IGZpbGVzLmM6MjYzNSBmaWxlcy5jOjI3MDgKIywgYy1mb3JtYXQKbXNnaWQgIkNhbid0IGdvIG91dHNpZGUgb2YgJXMgaW4gcmVzdHJpY3RlZCBtb2RlIgptc2dzdHIgIkthbiBpbnRlIGflIHV0YW5m9nIgJXMgaSBiZWdy5G5zYXQgbORnZSIKCiM6IGZpbGVzLmM6MjY0MiBmaWxlcy5jOjI2NjkgZmlsZXMuYzoyNzE2CiMsIGMtZm9ybWF0Cm1zZ2lkICJDYW4ndCBvcGVuIFwiJXNcIjogJXMiCm1zZ3N0ciAiS2FuIGludGUg9nBwbmEgXCIlc1wiOiAlcyIKCiM6IGZpbGVzLmM6MjY5MAptc2dpZCAiR290byBEaXJlY3RvcnkiCm1zZ3N0ciAiR+UgdGlsbCBrYXRhbG9nIgoKIzogZmlsZXMuYzoyNjk1Cm1zZ2lkICJHb3RvIENhbmNlbGxlZCIKbXNnc3RyICJH5SB0aWxsIGF2YnJ1dGV0IgoKIzogZmlsZXMuYzoyODk2CiMsIGMtZm9ybWF0Cm1zZ2lkICJVbmFibGUgdG8gb3BlbiB+Ly5uYW5vX2hpc3RvcnkgZmlsZSwgJXMiCm1zZ3N0ciAiS2FuIGludGUg9nBwbmEgZmlsZW4gfi8ubmFub19oaXN0b3J5LCAlcyIKCiM6IGZpbGVzLmM6Mjk0NiBmaWxlcy5jOjI5NTUgZmlsZXMuYzoyOTYwIGZpbGVzLmM6Mjk2NwojLCBjLWZvcm1hdAptc2dpZCAiVW5hYmxlIHRvIHdyaXRlIH4vLm5hbm9faGlzdG9yeSBmaWxlLCAlcyIKbXNnc3RyICJLYW4gaW50ZSBza3JpdmEgZmlsZW4gfi8ubmFub19oaXN0b3J5LCAlcyIKCiM6IGdsb2JhbC5jOjI0Ngptc2dpZCAiQ29uc3RhbnQgY3Vyc29yIHBvc2l0aW9uIgptc2dzdHIgIktvbnN0YW50IG1hcmv2cnBvc2l0aW9uIgoKIzogZ2xvYmFsLmM6MjQ3Cm1zZ2lkICJBdXRvIGluZGVudCIKbXNnc3RyICJBdXRvbWF0aXNrIGluZHJhZ25pbmciCgojOiBnbG9iYWwuYzoyNDgKbXNnaWQgIlN1c3BlbmQiCm1zZ3N0ciAiU2tqdXQgdXBwIgoKIzogZ2xvYmFsLmM6MjQ5Cm1zZ2lkICJIZWxwIG1vZGUiCm1zZ3N0ciAiSGrkbHBs5GdlIgoKIzogZ2xvYmFsLmM6MjUxCm1zZ2lkICJNb3VzZSBzdXBwb3J0Igptc2dzdHIgIk11c3N09mQiCgojOiBnbG9iYWwuYzoyNTMKbXNnaWQgIkN1dCB0byBlbmQiCm1zZ3N0ciAiS2xpcHAgdXQgdGlsbCBzbHV0ZXQiCgojOiBnbG9iYWwuYzoyNTQKbXNnaWQgIk5vIGNvbnZlcnNpb24gZnJvbSBET1MvTWFjIGZvcm1hdCIKbXNnc3RyICJJbmdlbiBrb252ZXJ0ZXJpbmcgZnLlbiBET1MvTWFjLWZvcm1hdCIKCiM6IGdsb2JhbC5jOjI1NQptc2dpZCAiV3JpdGluZyBmaWxlIGluIERPUyBmb3JtYXQiCm1zZ3N0ciAiU2tyaXZlciBmaWwgaSBET1MtZm9ybWF0IgoKIzogZ2xvYmFsLmM6MjU2Cm1zZ2lkICJXcml0aW5nIGZpbGUgaW4gTWFjIGZvcm1hdCIKbXNnc3RyICJTa3JpdmVyIGZpbCBpIE1hYy1mb3JtYXQiCgojOiBnbG9iYWwuYzoyNTcKbXNnaWQgIkJhY2tpbmcgdXAgZmlsZSIKbXNnc3RyICJT5GtlcmhldHNrb3BpZXJhciBmaWwiCgojOiBnbG9iYWwuYzoyNTggbmFuby5jOjY1NAptc2dpZCAiU21vb3RoIHNjcm9sbGluZyIKbXNnc3RyICJNanVrIHJ1bGxuaW5nIgoKIzogZ2xvYmFsLmM6MjYwCm1zZ2lkICJDb2xvciBzeW50YXggaGlnaGxpZ2h0aW5nIgptc2dzdHIgIkbkcmdtYXJrZXJpbmcgYXYgc3ludGF4IgoKIzogZ2xvYmFsLmM6MjYzCm1zZ2lkICJBdXRvIHdyYXAiCm1zZ3N0ciAiUmFkYnJ5dCBhdXRvbWF0aXNrdCIKCiM6IGdsb2JhbC5jOjI2Ngptc2dpZCAiTXVsdGlwbGUgZmlsZSBidWZmZXJzIgptc2dzdHIgIkZsZXJhIGZpbGJ1ZmZlcnRhciIKCiM6IGdsb2JhbC5jOjM0OQptc2dpZCAiSW52b2tlIHRoZSBoZWxwIG1lbnUiCm1zZ3N0ciAiU3RhcnRhIGhq5GxwbWVueW4iCgojOiBnbG9iYWwuYzozNTAKbXNnaWQgIldyaXRlIHRoZSBjdXJyZW50IGZpbGUgdG8gZGlzayIKbXNnc3RyICJTa3JpdiBkZW4gYWt0dWVsbGEgZmlsZW4gdGlsbCBkaXNrIgoKIzogZ2xvYmFsLmM6MzUyCm1zZ2lkICJDbG9zZSBjdXJyZW50bHkgbG9hZGVkIGZpbGUvRXhpdCBmcm9tIG5hbm8iCm1zZ3N0ciAiU3TkbmcgYWt0dWVsbCBpbmzkc3QgZmlsL0F2c2x1dGEgbmFubyIKCiM6IGdsb2JhbC5jOjM1NAptc2dpZCAiRXhpdCBmcm9tIG5hbm8iCm1zZ3N0ciAiQXZzbHV0YSBuYW5vIgoKIzogZ2xvYmFsLmM6MzU2Cm1zZ2lkICJHbyB0byBhIHNwZWNpZmljIGxpbmUgbnVtYmVyIgptc2dzdHIgIkflIHRpbGwgZXR0IHNwZWNpZmlrdCByYWRudW1tZXIiCgojOiBnbG9iYWwuYzozNTcKbXNnaWQgIkp1c3RpZnkgdGhlIGN1cnJlbnQgcGFyYWdyYXBoIgptc2dzdHIgIkp1c3RlcmEgZGV0IGFrdHVlbGxhIHN0eWNrZXQiCgojOiBnbG9iYWwuYzozNTgKbXNnaWQgIlVuanVzdGlmeSBhZnRlciBhIGp1c3RpZnkiCm1zZ3N0ciAixXRlcnN05GxsIGVuIGp1c3RlcmluZyIKCiM6IGdsb2JhbC5jOjM1OQptc2dpZCAiUmVwbGFjZSB0ZXh0IHdpdGhpbiB0aGUgZWRpdG9yIgptc2dzdHIgIkVyc+R0dCB0ZXh0IGludXRpIHRleHRyZWRpZ2VyYXJlbiIKCiM6IGdsb2JhbC5jOjM2MAptc2dpZCAiSW5zZXJ0IGFub3RoZXIgZmlsZSBpbnRvIHRoZSBjdXJyZW50IG9uZSIKbXNnc3RyICJJbmZvZ2EgeXR0ZXJsaWdhcmUgZW4gZmlsIGkgZGVuIG51dmFyYW5kZSIKCiM6IGdsb2JhbC5jOjM2MQptc2dpZCAiU2VhcmNoIGZvciB0ZXh0IHdpdGhpbiB0aGUgZWRpdG9yIgptc2dzdHIgIlP2ayBlZnRlciB0ZXh0IGludXRpIHRleHRyZWRpZ2VyYXJlbiIKCiM6IGdsb2JhbC5jOjM2Mgptc2dpZCAiTW92ZSB0byB0aGUgcHJldmlvdXMgc2NyZWVuIgptc2dzdHIgIkflIHRpbGwgZvZyZWflZW5kZSBza+RybSIKCiM6IGdsb2JhbC5jOjM2Mwptc2dpZCAiTW92ZSB0byB0aGUgbmV4dCBzY3JlZW4iCm1zZ3N0ciAiR+UgdGlsbCBu5HN0YSBza+RybSIKCiM6IGdsb2JhbC5jOjM2NAptc2dpZCAiQ3V0IHRoZSBjdXJyZW50IGxpbmUgYW5kIHN0b3JlIGl0IGluIHRoZSBjdXRidWZmZXIiCm1zZ3N0ciAiS2xpcHBlciB1dCBkZW4gYWt0dWVsbGEgcmFkZW4gb2NoIGxhZ3JhciBkZW4gaSB1cmtsaXBwc2J1ZmZlcnRlbiIKCiM6IGdsb2JhbC5jOjM2NQptc2dpZCAiVW5jdXQgZnJvbSB0aGUgY3V0YnVmZmVyIGludG8gdGhlIGN1cnJlbnQgbGluZSIKbXNnc3RyICJLbGlzdHJhIGluIGZy5W4gdXJrbGlwcHNidWZmZXJ0ZW4gaSBha3R1ZWxsIHJhZCIKCiM6IGdsb2JhbC5jOjM2Ngptc2dpZCAiU2hvdyB0aGUgcG9zaXRpb24gb2YgdGhlIGN1cnNvciIKbXNnc3RyICJWaXNhIG1hcmv2cmVucyBwb3NpdGlvbiIKCiM6IGdsb2JhbC5jOjM2Nwptc2dpZCAiSW52b2tlIHRoZSBzcGVsbCBjaGVja2VyLCBpZiBhdmFpbGFibGUiCm1zZ3N0ciAiU3RhcnRhIHN0YXZuaW5nc2tvbnRyb2xsZW4sIG9tIHRpbGxn5G5nbGlnIgoKIzogZ2xvYmFsLmM6MzY4Cm1zZ2lkICJNb3ZlIHVwIG9uZSBsaW5lIgptc2dzdHIgIkflIHVwcCBlbiByYWQiCgojOiBnbG9iYWwuYzozNjkKbXNnaWQgIk1vdmUgZG93biBvbmUgbGluZSIKbXNnc3RyICJH5SBuZXIgZW4gcmFkIgoKIzogZ2xvYmFsLmM6MzcwCm1zZ2lkICJNb3ZlIGZvcndhcmQgb25lIGNoYXJhY3RlciIKbXNnc3RyICJH5SBmcmFt5XQgZXR0IHRlY2tlbiIKCiM6IGdsb2JhbC5jOjM3MQptc2dpZCAiTW92ZSBiYWNrIG9uZSBjaGFyYWN0ZXIiCm1zZ3N0ciAiR+UgYmFr5XQgZXR0IHRlY2tlbiIKCiM6IGdsb2JhbC5jOjM3Mgptc2dpZCAiTW92ZSB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBjdXJyZW50IGxpbmUiCm1zZ3N0ciAiR+UgdGlsbCBi9nJqYW4gcOUgYWt0dWVsbCByYWQiCgojOiBnbG9iYWwuYzozNzMKbXNnaWQgIk1vdmUgdG8gdGhlIGVuZCBvZiB0aGUgY3VycmVudCBsaW5lIgptc2dzdHIgIkflIHRpbGwgc2x1dGV0IHDlIGFrdHVlbGwgcmFkIgoKIzogZ2xvYmFsLmM6Mzc0Cm1zZ2lkICJHbyB0byB0aGUgZmlyc3QgbGluZSBvZiB0aGUgZmlsZSIKbXNnc3RyICJH5SB0aWxsIGZpbGVucyBm9nJzdGEgcmFkIgoKIzogZ2xvYmFsLmM6Mzc1Cm1zZ2lkICJHbyB0byB0aGUgbGFzdCBsaW5lIG9mIHRoZSBmaWxlIgptc2dzdHIgIkflIHRpbGwgZmlsZW5zIHNpc3RhIHJhZCIKCiM6IGdsb2JhbC5jOjM3Ngptc2dpZCAiUmVmcmVzaCAocmVkcmF3KSB0aGUgY3VycmVudCBzY3JlZW4iCm1zZ3N0ciAiVXBwZGF0ZXJhIChyaXRhIG9tKSBkZW4gYWt0dWVsbGEgc2vkcm1lbiIKCiM6IGdsb2JhbC5jOjM3Nwptc2dpZCAiTWFyayB0ZXh0IGF0IHRoZSBjdXJyZW50IGN1cnNvciBsb2NhdGlvbiIKbXNnc3RyICJNYXJrZXJhIHRleHQgdmlkIGFrdHVlbGwgbWFya/ZycG9zaXRpb24iCgojOiBnbG9iYWwuYzozNzgKbXNnaWQgIkRlbGV0ZSB0aGUgY2hhcmFjdGVyIHVuZGVyIHRoZSBjdXJzb3IiCm1zZ3N0ciAiVGEgYm9ydCB0ZWNrbmV0IHVuZGVyIG1hcmv2cmVuIgoKIzogZ2xvYmFsLmM6MzgwCm1zZ2lkICJEZWxldGUgdGhlIGNoYXJhY3RlciB0byB0aGUgbGVmdCBvZiB0aGUgY3Vyc29yIgptc2dzdHIgIlRhIGJvcnQgdGVja25ldCB0aWxsIHbkbnN0ZXIgb20gbWFya/ZyZW4iCgojOiBnbG9iYWwuYzozODEKbXNnaWQgIkluc2VydCBhIHRhYiBjaGFyYWN0ZXIiCm1zZ3N0ciAiSW5mb2dhIGV0dCB0YWJ1bGF0b3JzdGVnIgoKIzogZ2xvYmFsLmM6MzgyCm1zZ2lkICJJbnNlcnQgYSBjYXJyaWFnZSByZXR1cm4gYXQgdGhlIGN1cnNvciBwb3NpdGlvbiIKbXNnc3RyICJJbmZvZ2EgZW4gdmFnbnJldHVyIHZpZCBtYXJr9nJwb3NpdGlvbmVuIgoKIzogZ2xvYmFsLmM6Mzg0Cm1zZ2lkICJNYWtlIHRoZSBjdXJyZW50IHNlYXJjaCBvciByZXBsYWNlIGNhc2UgKGluKXNlbnNpdGl2ZSIKbXNnc3RyICJH9nIgZGVuIGFrdHVlbGxhIHP2a25pbmdlbiBlbGxlciBlcnPkdHRuaW5nZW4gc2tpZnRs5Gdlc29r5G5zbGlnIgoKIzogZ2xvYmFsLmM6Mzg1Cm1zZ2lkICJHbyB0byBmaWxlIGJyb3dzZXIiCm1zZ3N0ciAiR+UgdGlsIGZpbGJs5GRkcmFyZSIKCiM6IGdsb2JhbC5jOjM4Ngptc2dpZCAiRXhlY3V0ZSBleHRlcm5hbCBjb21tYW5kIgptc2dzdHIgIkv2ciBleHRlcm50IGtvbW1hbmRvIgoKIzogZ2xvYmFsLmM6Mzg3Cm1zZ2lkICJHbyB0byBkaXJlY3RvcnkiCm1zZ3N0ciAiR+UgdGlsbCBrYXRhbG9nIgoKIzogZ2xvYmFsLmM6Mzg4Cm1zZ2lkICJDYW5jZWwgdGhlIGN1cnJlbnQgZnVuY3Rpb24iCm1zZ3N0ciAiQXZicnl0IGRlbiBha3R1ZWxsYSBmdW5rdGlvbmVuIgoKIzogZ2xvYmFsLmM6Mzg5Cm1zZ2lkICJBcHBlbmQgdG8gdGhlIGN1cnJlbnQgZmlsZSIKbXNnc3RyICJM5GdnIHRpbGwgaSBkZW4gYWt0dWVsbGEgZmlsZW4iCgojOiBnbG9iYWwuYzozOTAKbXNnaWQgIlByZXBlbmQgdG8gdGhlIGN1cnJlbnQgZmlsZSIKbXNnc3RyICJJbmZvZ2EgaSBkZW4gYWt0dWVsbGEgZmlsZW4iCgojOiBnbG9iYWwuYzozOTEKbXNnaWQgIlNlYXJjaCBiYWNrd2FyZHMiCm1zZ3N0ciAiU/ZrIGJha2zkbmdlcyIKCiM6IGdsb2JhbC5jOjM5Mgptc2dpZCAiV3JpdGUgZmlsZSBvdXQgaW4gRE9TIGZvcm1hdCIKbXNnc3RyICJTa3JpdiBmaWwgaSBET1MtZm9ybWF0IgoKIzogZ2xvYmFsLmM6MzkzCm1zZ2lkICJXcml0ZSBmaWxlIG91dCBpbiBNYWMgZm9ybWF0Igptc2dzdHIgIlNrcml2IGZpbCBpIE1hYy1mb3JtYXQiCgojOiBnbG9iYWwuYzozOTQKbXNnaWQgIkJhY2sgdXAgb3JpZ2luYWwgZmlsZSB3aGVuIHNhdmluZyIKbXNnc3RyICJT5GtlcmhldHNrb3BpZXJhIHVyc3BydW5nbGlnIGZpbCB2aWQgc3BhcmFuZGUiCgojOiBnbG9iYWwuYzozOTUKbXNnaWQgIkVkaXQgdGhlIHByZXZpb3VzIHNlYXJjaC9yZXBsYWNlIHN0cmluZ3MiCm1zZ3N0ciAiUmVkaWdlcmEgZGUgdGlkaWdhcmUgc/ZrL2Vyc+R0dC1zdHLkbmdhcm5hIgoKIzogZ2xvYmFsLmM6Mzk3Cm1zZ2lkICJVc2UgcmVndWxhciBleHByZXNzaW9ucyIKbXNnc3RyICJBbnbkbmQgcmVndWxq5HJhIHV0dHJ5Y2siCgojOiBnbG9iYWwuYzozOTgKbXNnaWQgIkZpbmQgb3RoZXIgYnJhY2tldCIKbXNnc3RyICJIaXR0YSBhbmRyYSBrbGFtbWVybiIKCiM6IGdsb2JhbC5jOjQwMQptc2dpZCAiT3BlbiBwcmV2aW91c2x5IGxvYWRlZCBmaWxlIgptc2dzdHIgItZwcG5hIGb2cmVn5WVuZGUgaW5s5HN0YSBmaWwiCgojOiBnbG9iYWwuYzo0MDIKbXNnaWQgIk9wZW4gbmV4dCBsb2FkZWQgZmlsZSIKbXNnc3RyICLWcHBuYSBu5HN0YSBpbmzkc3RhIGZpbCIKCiM6IGdsb2JhbC5jOjQwMwptc2dpZCAiVG9nZ2xlIGluc2VydCBpbnRvIG5ldyBidWZmZXIiCm1zZ3N0ciAiVuR4bGEgaW5mb2dhIGkgbnkgYnVmZmVydCIKCiM6IGdsb2JhbC5jOjQxOCBnbG9iYWwuYzo1NzggZ2xvYmFsLmM6NjI3IGdsb2JhbC5jOjY2NCBnbG9iYWwuYzo2ODMKIzogZ2xvYmFsLmM6NzEzIGdsb2JhbC5jOjc1MSBnbG9iYWwuYzo3NzUgZ2xvYmFsLmM6Nzg1IGdsb2JhbC5jOjc5NQojOiBnbG9iYWwuYzo4MTYKbXNnaWQgIkdldCBIZWxwIgptc2dzdHIgIkblIGhq5GxwIgoKIzogZ2xvYmFsLmM6NDI1Cm1zZ2lkICJDbG9zZSIKbXNnc3RyICJTdORuZyIKCiM6IGdsb2JhbC5jOjQzMiBnbG9iYWwuYzo3MDYKbXNnaWQgIkV4aXQiCm1zZ3N0ciAiQXZzbHV0YSIKCiM6IGdsb2JhbC5jOjQzNwptc2dpZCAiV3JpdGVPdXQiCm1zZ3N0ciAiU3BhcmEiCgojOiBnbG9iYWwuYzo0NDIKbXNnaWQgIkp1c3RpZnkiCm1zZ3N0ciAiSnVzdGVyYSIKCiM6IGdsb2JhbC5jOjQ0OAptc2dpZCAiUmVhZCBGaWxlIgptc2dzdHIgIkzkcyBmaWwiCgojOiBnbG9iYWwuYzo0NTgKbXNnaWQgIldoZXJlIElzIgptc2dzdHIgIlZhciBmaW5ucyIKCiM6IGdsb2JhbC5jOjQ2MyBnbG9iYWwuYzo2OTggZ2xvYmFsLmM6ODAxCm1zZ2lkICJQcmV2IFBhZ2UiCm1zZ3N0ciAiRvZyZWcgc2lkIgoKIzogZ2xvYmFsLmM6NDY4IGdsb2JhbC5jOjcwMiBnbG9iYWwuYzo4MDUKbXNnaWQgIk5leHQgUGFnZSIKbXNnc3RyICJO5HN0YSBzaWQiCgojOiBnbG9iYWwuYzo0NzMKbXNnaWQgIkN1dCBUZXh0Igptc2dzdHIgIktsaXBwIHV0IgoKIzogZ2xvYmFsLmM6NDc5Cm1zZ2lkICJVbkp1c3RpZnkiCm1zZ3N0ciAiT2p1c3RlcmEiCgojOiBnbG9iYWwuYzo0ODQKbXNnaWQgIlVuQ3V0IFR4dCIKbXNnc3RyICJLbGlzdC4gaW4iCgojOiBnbG9iYWwuYzo0ODkKbXNnaWQgIkN1ciBQb3MiCm1zZ3N0ciAiQWt0LiBwb3MiCgojOiBnbG9iYWwuYzo0OTQKbXNnaWQgIlRvIFNwZWxsIgptc2dzdHIgIlN0YXZrb250ci4iCgojOiBnbG9iYWwuYzo0OTggbmFuby5jOjQyMCB3aW5pby5jOjY1NQptc2dpZCAiVXAiCm1zZ3N0ciAiVXBwIgoKIzogZ2xvYmFsLmM6NTAyCm1zZ2lkICJEb3duIgptc2dzdHIgIk5lciIKCiM6IGdsb2JhbC5jOjUwNgptc2dpZCAiRm9yd2FyZCIKbXNnc3RyICJGcmFt5XQiCgojOiBnbG9iYWwuYzo1MTAKbXNnaWQgIkJhY2siCm1zZ3N0ciAiQmFr5XQiCgojOiBnbG9iYWwuYzo1MTQKbXNnaWQgIkhvbWUiCm1zZ3N0ciAiSGVtIgoKIzogZ2xvYmFsLmM6NTE4Cm1zZ2lkICJFbmQiCm1zZ3N0ciAiU2x1dCIKCiM6IGdsb2JhbC5jOjUyMgptc2dpZCAiUmVmcmVzaCIKbXNnc3RyICJVcHBkYXRlcmEiCgojOiBnbG9iYWwuYzo1MjYKbXNnaWQgIk1hcmsgVGV4dCIKbXNnc3RyICJNYXJrZXJhIHRleHQiCgojOiBnbG9iYWwuYzo1MzAKbXNnaWQgIkRlbGV0ZSIKbXNnc3RyICJUYSBib3J0IgoKIzogZ2xvYmFsLmM6NTM0Cm1zZ2lkICJCYWNrc3BhY2UiCm1zZ3N0ciAiQmFja3N0ZWciCgojOiBnbG9iYWwuYzo1MzgKbXNnaWQgIlRhYiIKbXNnc3RyICJUYWJiIgoKIzogZ2xvYmFsLmM6NTQxIGdsb2JhbC5jOjU5NQptc2dpZCAiUmVwbGFjZSIKbXNnc3RyICJFcnPkdHQiCgojOiBnbG9iYWwuYzo1NDUKbXNnaWQgIkVudGVyIgptc2dzdHIgIlJldHVyIgoKIzogZ2xvYmFsLmM6NTQ5IGdsb2JhbC5jOjU5OSBnbG9iYWwuYzo2NDMKbXNnaWQgIkdvIFRvIExpbmUiCm1zZ3N0ciAiR+UgdGlsbCByYWQiCgojOiBnbG9iYWwuYzo1NTQKbXNnaWQgIk5leHQgV29yZCIKbXNnc3RyICJO5HN0YSBvcmQiCgojOiBnbG9iYWwuYzo1NTUKbXNnaWQgIk1vdmUgZm9yd2FyZCBvbmUgd29yZCIKbXNnc3RyICJH5SBmcmFt5XQgZXR0IG9yZCIKCiM6IGdsb2JhbC5jOjU1OAptc2dpZCAiUHJldiBXb3JkIgptc2dzdHIgIkb2cmVnIG9yZCIKCiM6IGdsb2JhbC5jOjU1OQptc2dpZCAiTW92ZSBiYWNrd2FyZCBvbmUgd29yZCIKbXNnc3RyICJH5SBiYWvldCBldHQgb3JkIgoKIzogZ2xvYmFsLmM6NTYzCm1zZ2lkICJGaW5kIE90aGVyIEJyYWNrZXQiCm1zZ3N0ciAiSGl0dGEgYW5kcmEga2xhbW1lcm4iCgojOiBnbG9iYWwuYzo1NjgKbXNnaWQgIlByZXZpb3VzIEZpbGUiCm1zZ3N0ciAiRvZyZWflZW5kZSBmaWwiCgojOiBnbG9iYWwuYzo1NzEKbXNnaWQgIk5leHQgRmlsZSIKbXNnc3RyICJO5HN0YSBmaWwiCgojOiBnbG9iYWwuYzo1ODIgZ2xvYmFsLmM6NjMwIGdsb2JhbC5jOjY2NyBnbG9iYWwuYzo2ODYgZ2xvYmFsLmM6NzQ2CiM6IGdsb2JhbC5jOjc1NCBnbG9iYWwuYzo3NzggZ2xvYmFsLmM6Nzg4IGdsb2JhbC5jOjc5OCBnbG9iYWwuYzo4MTkKIzogd2luaW8uYzoxMzIzCm1zZ2lkICJDYW5jZWwiCm1zZ3N0ciAiQXZicnl0IgoKIzogZ2xvYmFsLmM6NTg2IGdsb2JhbC5jOjYzMyBnbG9iYWwuYzo2NzAgZ2xvYmFsLmM6Njg5Cm1zZ2lkICJGaXJzdCBMaW5lIgptc2dzdHIgIkb2cnN0YSByYWRlbiIKCiM6IGdsb2JhbC5jOjU5MSBnbG9iYWwuYzo2MzYgZ2xvYmFsLmM6NjczIGdsb2JhbC5jOjY5Mgptc2dpZCAiTGFzdCBMaW5lIgptc2dzdHIgIlNpc3RhIHJhZGVuIgoKIzogZ2xvYmFsLmM6NjA0IGdsb2JhbC5jOjY0Nwptc2dpZCAiQ2FzZSBTZW5zIgptc2dzdHIgIlNraWZ0a+Ruc2wiCgojOiBnbG9iYWwuYzo2MDggZ2xvYmFsLmM6NjUwCm1zZ2lkICJEaXJlY3Rpb24iCm1zZ3N0ciAiUmlrdG5pbmciCgojOiBnbG9iYWwuYzo2MTMgZ2xvYmFsLmM6NjU0Cm1zZ2lkICJSZWdleHAiCm1zZ3N0ciAiUmVndWxq5HJ0IHV0dHIiCgojOiBnbG9iYWwuYzo2MTkgZ2xvYmFsLmM6NjU4IGdsb2JhbC5jOjY3Nwptc2dpZCAiSGlzdG9yeSIKbXNnc3RyICJIaXN0b3JpayIKCiM6IGdsb2JhbC5jOjY0MAptc2dpZCAiTm8gUmVwbGFjZSIKbXNnc3RyICJJbmdlbiBlcnPkdHRuaW5nIgoKIzogZ2xvYmFsLmM6NzE4IGdsb2JhbC5jOjc1OAptc2dpZCAiVG8gRmlsZXMiCm1zZ3N0ciAiVGlsbCBmaWxlciIKCiM6IGdsb2JhbC5jOjcyNAptc2dpZCAiRE9TIEZvcm1hdCIKbXNnc3RyICJET1MtZm9ybWF0IgoKIzogZ2xvYmFsLmM6NzI4Cm1zZ2lkICJNYWMgRm9ybWF0Igptc2dzdHIgIk1hYy1mb3JtYXQiCgojOiBnbG9iYWwuYzo3MzMKbXNnaWQgIkFwcGVuZCIKbXNnc3RyICJM5GdnIHRpbGwiCgojOiBnbG9iYWwuYzo3MzcKbXNnaWQgIlByZXBlbmQiCm1zZ3N0ciAiSW5mb2dhIgoKIzogZ2xvYmFsLmM6NzQyCm1zZ2lkICJCYWNrdXAgRmlsZSIKbXNnc3RyICJT5GtlcmhldHNrb3BpZXJhIGZpbCIKCiM6IGdsb2JhbC5jOjc2Mwptc2dpZCAiRXhlY3V0ZSBDb21tYW5kIgptc2dzdHIgIkv2ciBrb21tYW5kbyIKCiM6IGdsb2JhbC5jOjc2NyB3aW5pby5jOjU5Ngptc2dpZCAiTmV3IEJ1ZmZlciIKbXNnc3RyICJOeSBidWZmZXJ0IgoKIzogZ2xvYmFsLmM6ODEwCm1zZ2lkICJHbyBUbyBEaXIiCm1zZ3N0ciAiR+UgdGlsbCBrYXRhbG9nIgoKIzogbmFuby5jOjE2OQojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJCdWZmZXIgd3JpdHRlbiB0byAlc1xuIgptc2dzdHIgIiIKIlxuIgoiQnVmZmVydGVuIHNrcmV2cyB0aWxsICVzXG4iCgojOiBuYW5vLmM6MTcxCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIk5vICVzIHdyaXR0ZW4gKHRvbyBtYW55IGJhY2t1cCBmaWxlcz8pXG4iCm1zZ3N0ciAiIgoiXG4iCiJJbmdlbiAlcyBza3JldnMgKGb2ciBt5W5nYSBz5GtlcmhldHNrb3Bpb3I/KVxuIgoKIzogbmFuby5jOjE4MAptc2dpZCAiV2luZG93IHNpemUgaXMgdG9vIHNtYWxsIGZvciBuYW5vLi4uXG4iCm1zZ3N0ciAiRvZuc3RlcnN0b3JsZWtlbiDkciBm9nIgbGl0ZW4gZvZyIE5hbm8uLi5cbiIKCiM6IG5hbm8uYzoxODUKbXNnaWQgIktleSBpbGxlZ2FsIGluIFZJRVcgbW9kZSIKbXNnc3RyICJUYW5nZW50ZW4gb2dpbHRpZyBpIFZJU05JTkdzbORnZXQiCgojOiBuYW5vLmM6Mjc5Cm1zZ2lkICIiCiJTZWFyY2ggQ29tbWFuZCBIZWxwIFRleHRcbiIKIlxuIgoiIEVudGVyIHRoZSB3b3JkcyBvciBjaGFyYWN0ZXJzIHlvdSB3b3VsZCBsaWtlIHRvIHNlYXJjaCBmb3IsIHRoZW4gaGl0ICIKImVudGVyLiAgSWYgdGhlcmUgaXMgYSBtYXRjaCBmb3IgdGhlIHRleHQgeW91IGVudGVyZWQsIHRoZSBzY3JlZW4gd2lsbCBiZSAiCiJ1cGRhdGVkIHRvIHRoZSBsb2NhdGlvbiBvZiB0aGUgbmVhcmVzdCBtYXRjaCBmb3IgdGhlIHNlYXJjaCBzdHJpbmcuXG4iCiJcbiIKIiBUaGUgcHJldmlvdXMgc2VhcmNoIHN0cmluZyB3aWxsIGJlIHNob3duIGluIGJyYWNrZXRzIGFmdGVyIHRoZSBTZWFyY2g6ICIKInByb21wdC4gIEhpdHRpbmcgRW50ZXIgd2l0aG91dCBlbnRlcmluZyBhbnkgdGV4dCB3aWxsIHBlcmZvcm0gdGhlIHByZXZpb3VzICIKInNlYXJjaC5cbiIKIlxuIgoiIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb24ga2V5cyBhcmUgYXZhaWxhYmxlIGluIFNlYXJjaCBtb2RlOlxuIgoiXG4iCm1zZ3N0ciAiIgoiSGrkbHB0ZXh0IGb2ciBz9mtrb21tYW5kb1xuIgoiXG4iCiIgQW5nZSBkZSBvcmQgZWxsZXIgdGVja2VuIHNvbSBkdSB2aWxsIHP2a2EgZWZ0ZXIgb2NoIHRyeWNrIHNlZGFuIHJldHVyLiBPbSAiCiJkZXQgZmlubnMgZW4gdHLkZmYgZvZyIGRldCBkdSBhbmdhdiBrb21tZXIgc2vkcm1lbiBhdHQgdXBwZGF0ZXJhcyB0aWxsIGF0dCAiCiJ2aXNhIGRlbiBu5HJtYXN0ZSB0cuRmZmVuIGb2ciBz9mtzdHLkbmdlbi5cbiIKIlxuIgoiIERlbiBm9nJlZ+VlbmRlIHP2a3N0cuRuZ2VuIGtvbW1lciBhdHQgdmlzYXMgaW5vbSBrbGFtcmFyIGVmdGVyIFP2azotIgoicHJvbXB0ZW4uIEF0dCB0cnlja2EgcmV0dXIgdXRhbiBhdHQgYW5nZSBu5WdvbiB0ZXh0IGtvbW1lciBhdHQgZ2Vub21m9nJhIGRlbiAiCiJ0aWRpZ2FyZSBz9mtuaW5nZW4uXG4iCiJcbiIKIiBG9mxqYW5kZSBmdW5rdGlvbnN0YW5nZW50ZXIg5HIgdGlsbGfkbmdsaWdhIGkgc/ZrbORnZTpcbiIKIlxuIgoKIzogbmFuby5jOjI4OQptc2dpZCAiIgoiR28gVG8gTGluZSBIZWxwIFRleHRcbiIKIlxuIgoiIEVudGVyIHRoZSBsaW5lIG51bWJlciB0aGF0IHlvdSB3aXNoIHRvIGdvIHRvIGFuZCBoaXQgRW50ZXIuICBJZiB0aGVyZSBhcmUgIgoiZmV3ZXIgbGluZXMgb2YgdGV4dCB0aGFuIHRoZSBudW1iZXIgeW91IGVudGVyZWQsIHlvdSB3aWxsIGJlIGJyb3VnaHQgdG8gdGhlICIKImxhc3QgbGluZSBvZiB0aGUgZmlsZS5cbiIKIlxuIgoiIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb24ga2V5cyBhcmUgYXZhaWxhYmxlIGluIEdvIFRvIExpbmUgbW9kZTpcbiIKIlxuIgptc2dzdHIgIiIKIkhq5GxwdGV4dCBm9nIgR+UgdGlsbCByYWRcbiIKIlxuIgoiIEFuZ2UgZGV0IHJhZG51bW1lciBkdSB2aWxsIGflIHRpbGwgb2NoIHRyeWNrIHJldHVyLiBPbSBkZXQgZmlubnMgZuRycmUgIgoidGV4dHJhZGVyIORuIGRldCB0YWwgZHUgYW5nYXYga29tbWVyIGR1IGF0dCB0YXMgdGlsbCBkZW4gc2lzdGEgcmFkZW4gaSAiCiJmaWxlbi5cbiIKIlxuIgoiIEb2bGphbmRlIGZ1bmt0aW9uc3RhbmdlbnRlciDkciB0aWxsZ+RuZ2xpZ2EgaSBH5SB0aWxsIHJhZC1s5GdlOlxuIgoiXG4iCgojOiBuYW5vLmM6Mjk2Cm1zZ2lkICIiCiJJbnNlcnQgRmlsZSBIZWxwIFRleHRcbiIKIlxuIgoiIFR5cGUgaW4gdGhlIG5hbWUgb2YgYSBmaWxlIHRvIGJlIGluc2VydGVkIGludG8gdGhlIGN1cnJlbnQgZmlsZSBidWZmZXIgYXQgIgoidGhlIGN1cnJlbnQgY3Vyc29yIGxvY2F0aW9uLlxuIgoiXG4iCiIgSWYgeW91IGhhdmUgY29tcGlsZWQgbmFubyB3aXRoIG11bHRpcGxlIGZpbGUgYnVmZmVyIHN1cHBvcnQsIGFuZCBlbmFibGUgIgoibXVsdGlwbGUgYnVmZmVycyB3aXRoIHRoZSAtRiBvciAtLW11bHRpYnVmZmVyIGNvbW1hbmQgbGluZSBmbGFncywgdGhlIE1ldGEtRiAiCiJ0b2dnbGUsIG9yIGEgbmFub3JjIGZpbGUsIGluc2VydGluZyBhIGZpbGUgd2lsbCBjYXVzZSBpdCB0byBiZSBsb2FkZWQgaW50byBhICIKInNlcGFyYXRlIGJ1ZmZlciAodXNlIE1ldGEtPCBhbmQgPiB0byBzd2l0Y2ggYmV0d2VlbiBmaWxlIGJ1ZmZlcnMpLlxuIgoiXG4iCiIgSWYgeW91IG5lZWQgYW5vdGhlciBibGFuayBidWZmZXIsIGRvIG5vdCBlbnRlciBhbnkgZmlsZW5hbWUsIG9yIHR5cGUgaW4gYSAiCiJub25leGlzdGVudCBmaWxlbmFtZSBhdCB0aGUgcHJvbXB0IGFuZCBwcmVzcyBFbnRlci5cbiIKIlxuIgoiIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb24ga2V5cyBhcmUgYXZhaWxhYmxlIGluIEluc2VydCBGaWxlIG1vZGU6XG4iCiJcbiIKbXNnc3RyICIiCiJIauRscHRleHQgZvZyIGluZm9nYSBmaWxcbiIKIlxuIgoiIEFuZ2UgbmFtbmV0IHDlIGRlbiBmaWwgc29tIHNrYSBz5HR0YXMgaW4gaSBkZW4gYWt0dWVsbGEgZmlsYnVmZmVydGVuIHDlIGRlbiAiCiJha3R1ZWxsYSBwbGF0c2VuIGb2ciBtYXJr9nJlbi5cbiIKIlxuIgoiIE9tIGR1IGhhciBrb21waWxlcmF0IG5hbm8gbWVkIHN09mQgZvZyIGZsZXJhIHNhbXRpZGlnYSBmaWxidWZmZXJ0YXIgb2NoICIKImFrdGl2ZXJhciBmbGVyYSBidWZmZXJ0YXIgbWVkIGtvbW1hbmRvcmFkc2ZsYWdnb3JuYSAtRiBlbGxlciAtLW11bHRpYnVmZmVyLCAiCiJrb21iaW5hdGlvbmVuIE1ldGEtRiBlbGxlciBlbiBuYW5vcmMtZmlsLCBrb21tZXIgYXR0IGluZm9nYSBlbiBmaWwgZ/ZyYSBz5SAiCiJhdHQgZGVuIGzkc2VzIGluIGkgZW4gc2VwYXJhdCBidWZmZXJ0IChhbnbkbmQgTWV0YS08IG9jaCA+IGb2ciBhdHQgduR4bGEgIgoibWVsbGFuIGZpbGJ1ZmZlcnRhcikuXG4iCiJcbiIKIiBPbSBkdSBiZWj2dmVyIHl0dGVybGlnYXJlIGVuIHRvbSBidWZmZXJ0IGthbiBkdSB0cnlja2EgcmV0dXIgdmlkIHByb21wdGVuICIKInV0YW4gYXR0IGFuZ2UgZXR0IGZpbG5hbW4sIGVsbGVyIGFuZ2UgZXR0IGlja2VleGlzdGVyYW5kZSBmaWxuYW1uIHZpZCAiCiJwcm9tcHRlbiBvY2ggdHJ5Y2thIHJldHVyLlxuIgoiXG4iCiIgRvZsamFuZGUgZnVua3Rpb25zdGFuZ2VudGVyIORyIHRpbGxn5G5nbGlnYSBpIGluZm9nYSBmaWwtbORnZTpcbiIKIlxuIgoKIzogbmFuby5jOjMxMAptc2dpZCAiIgoiV3JpdGUgRmlsZSBIZWxwIFRleHRcbiIKIlxuIgoiIFR5cGUgdGhlIG5hbWUgdGhhdCB5b3Ugd2lzaCB0byBzYXZlIHRoZSBjdXJyZW50IGZpbGUgYXMgYW5kIGhpdCBFbnRlciB0byAiCiJzYXZlIHRoZSBmaWxlLlxuIgoiXG4iCiIgSWYgeW91IGhhdmUgc2VsZWN0ZWQgdGV4dCB3aXRoIEN0cmwtXiwgeW91IHdpbGwgYmUgcHJvbXB0ZWQgdG8gc2F2ZSBvbmx5ICIKInRoZSBzZWxlY3RlZCBwb3J0aW9uIHRvIGEgc2VwYXJhdGUgZmlsZS4gIFRvIHJlZHVjZSB0aGUgY2hhbmNlIG9mICIKIm92ZXJ3cml0aW5nIHRoZSBjdXJyZW50IGZpbGUgd2l0aCBqdXN0IGEgcG9ydGlvbiBvZiBpdCwgdGhlIGN1cnJlbnQgZmlsZW5hbWUgIgoiaXMgbm90IHRoZSBkZWZhdWx0IGluIHRoaXMgbW9kZS5cbiIKIlxuIgoiIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb24ga2V5cyBhcmUgYXZhaWxhYmxlIGluIFdyaXRlIEZpbGUgbW9kZTpcbiIKIlxuIgptc2dzdHIgIiIKIkhq5GxwdGV4dCBm9nIgc2tyaXYgZmlsXG4iCiJcbiIKIiBBbmdlIGRldCBuYW1uIHNvbSBkdSB2aWxsIHNwYXJhIGFrdHVlbGwgZmlsIHNvbSBvY2ggdHJ5Y2sgcmV0dXIgZvZyIGF0dCAiCiJzcGFyYSBmaWxlbi5cbiIKIlxuIgoiIE9tIGR1IGhhciBtYXJrZXJhdCB0ZXh0IG1lZCBDdHJsLV4ga29tbWVyIGR1IGblIGZy5WdhbiBvbSBhdHQgZW5kYXN0IHNwYXJhICIKIm1hcmtlcmluZ2VuIHRpbGwgZW4gc2VwYXJhdCBmaWwuIEb2ciBhdHQgbWluc2thIHJpc2tlbiBhdHQgZGVuIGFrdHVlbGxhICIKImZpbGVuIHNrcml2cyD2dmVyIG1lZCBlbmRhc3QgZW4gZGVsIGF2IGRlbiDkciBpbnRlIGRldCBha3R1ZWxsYSBmaWxuYW1uZXQgIgoic3RhbmRhcmRhbHRlcm5hdGl2ZXQgaSBkZXR0YSBs5GdlLlxuIgoiXG4iCiIgRvZsamFuZGUgZnVua3Rpb25zdGFuZ2VudGVyIORyIHRpbGxn5G5nbGlnYSBpIGZpbHNrcml2bmluZ3Ns5GdlOlxuIgoiXG4iCgojOiBuYW5vLmM6MzIxCm1zZ2lkICIiCiJGaWxlIEJyb3dzZXIgSGVscCBUZXh0XG4iCiJcbiIKIiBUaGUgZmlsZSBicm93c2VyIGlzIHVzZWQgdG8gdmlzdWFsbHkgYnJvd3NlIHRoZSBkaXJlY3Rvcnkgc3RydWN0dXJlIHRvICIKInNlbGVjdCBhIGZpbGUgZm9yIHJlYWRpbmcgb3Igd3JpdGluZy4gIFlvdSBtYXkgdXNlIHRoZSBhcnJvdyBrZXlzIG9yIFBhZ2UgVXAvIgoiRG93biB0byBicm93c2UgdGhyb3VnaCB0aGUgZmlsZXMsIGFuZCBTIG9yIEVudGVyIHRvIGNob29zZSB0aGUgc2VsZWN0ZWQgZmlsZSAiCiJvciBlbnRlciB0aGUgc2VsZWN0ZWQgZGlyZWN0b3J5LiAgVG8gbW92ZSB1cCBvbmUgbGV2ZWwsIHNlbGVjdCB0aGUgZGlyZWN0b3J5ICIKImNhbGxlZCBcIi4uXCIgYXQgdGhlIHRvcCBvZiB0aGUgZmlsZSBsaXN0LlxuIgoiXG4iCiIgVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBrZXlzIGFyZSBhdmFpbGFibGUgaW4gdGhlIGZpbGUgYnJvd3NlcjpcbiIKIlxuIgptc2dzdHIgIiIKIkhq5GxwdGV4dCBm9nIgZmlsYmzkZGRyYXJlXG4iCiJcbiIKIiBGaWxibORkZHJhcmVuIGFuduRuZHMgZvZyIGF0dCB2aXN1ZWxsdCBibORkZHJhIGkga2F0YWxvZ3N0cnVrdHVyZW4gZvZyIGF0dCAiCiJ25GxqYSBlbiBmaWwgZvZyIGzkc25pbmcgZWxsZXIgc2tyaXZuaW5nLiBEdSBrYW4gYW525G5kYSBwaWx0YW5nZW50ZXJuYSAiCiJlbGxlciBQYWdlVXAvUGFnZURvd24gZvZyIGF0dCBibORkZHJhIGJsYW5kIGZpbGVybmEsIG9jaCBTIGVsbGVyIHJldHVyIGb2ciAiCiJhdHQgduRsamEgZGVuIG1hcmtlcmFkZSBmaWxlbiBlbGxlciBn5SBpbiBpIGRlbiBtYXJrZXJhZGUga2F0YWxvZ2VuLiBG9nIgYXR0ICIKImflIHVwcCBlbiBuaXblIHbkbGplciBkdSBrYXRhbG9nZW4ga2FsbGFkIFwiLi5cIiD2dmVyc3QgaSBmaWxsaXN0YW4uXG4iCiJcbiIKIiBG9mxqYW5kZSBmdW5rdGlvbnN0YW5nZW50ZXIg5HIgdGlsbGfkbmdsaWdhIGkgZmlsYmzkZGRyYXJlbjpcbiIKIlxuIgoKIzogbmFuby5jOjMzMgptc2dpZCAiIgoiQnJvd3NlciBHbyBUbyBEaXJlY3RvcnkgSGVscCBUZXh0XG4iCiJcbiIKIiBFbnRlciB0aGUgbmFtZSBvZiB0aGUgZGlyZWN0b3J5IHlvdSB3b3VsZCBsaWtlIHRvIGJyb3dzZSB0by5cbiIKIlxuIgoiIElmIHRhYiBjb21wbGV0aW9uIGhhcyBub3QgYmVlbiBkaXNhYmxlZCwgeW91IGNhbiB1c2UgdGhlIFRBQiBrZXkgdG8gIgoiKGF0dGVtcHQgdG8pIGF1dG9tYXRpY2FsbHkgY29tcGxldGUgdGhlIGRpcmVjdG9yeSBuYW1lLlxuIgoiXG4iCiIgVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBrZXlzIGFyZSBhdmFpbGFibGUgaW4gQnJvd3NlciBHbyBUbyBEaXJlY3RvcnkgbW9kZTpcbiIKIlxuIgptc2dzdHIgIiIKIkhq5GxwdGV4dCBm9nIgZ+UgdGlsbCBrYXRhbG9nIGkgYmzkZGRyYXJlblxuIgoiXG4iCiIgQW5nZSBuYW1uZXQgcOUgZGVuIGthdGFsb2cgc29tIGR1IHZpbGwgZ+UgdGlsbC5cbiIKIlxuIgoiIE9tIHRhYnVsYXRvcmtvbXBsZXR0ZXJpbmcgaW50ZSBoYXIgaW5ha3RpdmVyYXRzIGthbiBkdSBhbnbkbmRhIFRBQlVMQVRPUi0iCiJ0YW5nZW50ZW4gZvZyIGF0dCAoZvZyc/ZrYSBhdHQpIGF1dG9tYXRpc2t0IGtvbXBsZXR0ZXJhIGthdGFsb2duYW1uZXQuXG4iCiJcbiIKIiBG9mxqYW5kZSBmdW5rdGlvbnN0YW5nZW50ZXIg5HIgdGlsbGfkbmdsaWdhIGkgYmzkZGRyYXJlbnMgZ+UgdGlsbCBrYXRhbG9nLSIKImzkZ2U6XG4iCiJcbiIKCiM6IG5hbm8uYzozNDEKbXNnaWQgIiIKIlNwZWxsIENoZWNrIEhlbHAgVGV4dFxuIgoiXG4iCiIgVGhlIHNwZWxsIGNoZWNrZXIgY2hlY2tzIHRoZSBzcGVsbGluZyBvZiBhbGwgdGV4dCBpbiB0aGUgY3VycmVudCBmaWxlLiAgIgoiV2hlbiBhbiB1bmtub3duIHdvcmQgaXMgZW5jb3VudGVyZWQsIGl0IGlzIGhpZ2hsaWdodGVkIGFuZCBhIHJlcGxhY2VtZW50IGNhbiAiCiJiZSBlZGl0ZWQuICBJdCB3aWxsIHRoZW4gcHJvbXB0IHRvIHJlcGxhY2UgZXZlcnkgaW5zdGFuY2Ugb2YgdGhlIGdpdmVuICIKIm1pc3NwZWxsZWQgd29yZCBpbiB0aGUgY3VycmVudCBmaWxlLlxuIgoiXG4iCiIgVGhlIGZvbGxvd2luZyBvdGhlciBmdW5jdGlvbnMgYXJlIGF2YWlsYWJsZSBpbiBTcGVsbCBDaGVjayBtb2RlOlxuIgoiXG4iCm1zZ3N0ciAiIgoiSGrkbHB0ZXh0IGb2ciBzdGF2bmluZ3Nrb250cm9sbGVuXG4iCiJcbiIKIiBTdGF2bmluZ3Nrb250cm9sbGVuIGtvbnRyb2xsZXJhciBzdGF2bmluZ2VuIGF2IGFsbCB0ZXh0IGkgZGVuIGFrdHVlbGxhICIKImZpbGVuLiBO5HIgZXR0IG9r5G50IG9yZCBoaXR0YXMgbWFya2VyYXMgZGV0IG9jaCBlbiBlcnPkdHRuaW5nIGthbiAiCiJyZWRpZ2VyYXMuIERlbiBrb21tZXIgc2VkYW4gYXR0IGb2ciB2YXJlbmRhIGb2cmVrb21zdCBhdiBkZXQgYW5naXZuYSAiCiJmZWxzdGF2YWRlIG9yZGV0IGkgZGVuIGFrdHVlbGxhIGZpbGVuIGZy5WdhIG9tIGRldCBza2EgZXJz5HR0YXMuXG4iCiJcbiIKIiBG9mxqYW5kZSBmdW5rdGlvbnN0YW5nZW50ZXIg5HIgdGlsbGfkbmdsaWdhIGkgc3Rhdm5pbmdza29udHJvbGxzbORnZXQ6XG4iCiJcbiIKCiM6IG5hbm8uYzozNTIKbXNnaWQgIiIKIkV4dGVybmFsIENvbW1hbmQgSGVscCBUZXh0XG4iCiJcbiIKIiBUaGlzIG1lbnUgYWxsb3dzIHlvdSB0byBpbnNlcnQgdGhlIG91dHB1dCBvZiBhIGNvbW1hbmQgcnVuIGJ5IHRoZSBzaGVsbCAiCiJpbnRvIHRoZSBjdXJyZW50IGJ1ZmZlciAob3IgYSBuZXcgYnVmZmVyIGluIG11bHRpYnVmZmVyIG1vZGUpLlxuIgoiXG4iCiIgVGhlIGZvbGxvd2luZyBrZXlzIGFyZSBhdmFpbGFibGUgaW4gdGhpcyBtb2RlOlxuIgoiXG4iCm1zZ3N0ciAiIgoiSGrkbHB0ZXh0IGb2ciBleHRlcm50IGtvbW1hbmRvXG4iCiJcbiIKIiBEZW5uYSBtZW55IGzldGVyIGRpZyBpbmZvZ2EgdXRkYXRhIGZy5W4gZXR0IGtvbW1hbmRvIHNvbSBr9nJzIGF2IGV0dCBza2FsIGkgIgoiZGVuIGFrdHVlbGxhIGJ1ZmZlcnRlbiAoZWxsZXIgZW4gbnkgYnVmZmVydCBpIGZsZXJidWZmZXJ0bORnZSkuXG4iCiJcbiIKIiBG9mxqYW5kZSB0YW5nZW50ZXIg5HIgdGlsbGfkbmdsaWdhIGkgZGV0dGEgbORnZTpcbiIKIlxuIgoKIzogbmFuby5jOjM1OQptc2dpZCAiIgoiIG5hbm8gaGVscCB0ZXh0XG4iCiJcbiIKIiBUaGUgbmFubyBlZGl0b3IgaXMgZGVzaWduZWQgdG8gZW11bGF0ZSB0aGUgZnVuY3Rpb25hbGl0eSBhbmQgZWFzZS1vZi11c2Ugb2YgIgoidGhlIFVXIFBpY28gdGV4dCBlZGl0b3IuICBUaGVyZSBhcmUgZm91ciBtYWluIHNlY3Rpb25zIG9mIHRoZSBlZGl0b3I6IFRoZSAiCiJ0b3AgbGluZSBzaG93cyB0aGUgcHJvZ3JhbSB2ZXJzaW9uLCB0aGUgY3VycmVudCBmaWxlbmFtZSBiZWluZyBlZGl0ZWQsIGFuZCAiCiJ3aGV0aGVyIG9yIG5vdCB0aGUgZmlsZSBoYXMgYmVlbiBtb2RpZmllZC4gIE5leHQgaXMgdGhlIG1haW4gZWRpdG9yIHdpbmRvdyAiCiJzaG93aW5nIHRoZSBmaWxlIGJlaW5nIGVkaXRlZC4gIFRoZSBzdGF0dXMgbGluZSBpcyB0aGUgdGhpcmQgbGluZSBmcm9tIHRoZSAiCiJib3R0b20gYW5kIHNob3dzIGltcG9ydGFudCBtZXNzYWdlcy4gVGhlIGJvdHRvbSB0d28gbGluZXMgc2hvdyB0aGUgbW9zdCAiCiJjb21tb25seSB1c2VkIHNob3J0Y3V0cyBpbiB0aGUgZWRpdG9yLlxuIgoiXG4iCiIgVGhlIG5vdGF0aW9uIGZvciBzaG9ydGN1dHMgaXMgYXMgZm9sbG93czogQ29udHJvbC1rZXkgc2VxdWVuY2VzIGFyZSBub3RhdGVkICIKIndpdGggYSBjYXJldCAoXikgc3ltYm9sIGFuZCBhcmUgZW50ZXJlZCB3aXRoIHRoZSBDb250cm9sIChDdHJsKSBrZXkuICBFc2NhcGUtIgoia2V5IHNlcXVlbmNlcyBhcmUgbm90YXRlZCB3aXRoIHRoZSBNZXRhIChNKSBzeW1ib2wgYW5kIGNhbiBiZSBlbnRlcmVkIHVzaW5nICIKImVpdGhlciB0aGUgRXNjLCBBbHQgb3IgTWV0YSBrZXkgZGVwZW5kaW5nIG9uIHlvdXIga2V5Ym9hcmQgc2V0dXAuICBUaGUgIgoiZm9sbG93aW5nIGtleXN0cm9rZXMgYXJlIGF2YWlsYWJsZSBpbiB0aGUgbWFpbiBlZGl0b3Igd2luZG93LiAgQWx0ZXJuYXRpdmUgIgoia2V5cyBhcmUgc2hvd24gaW4gcGFyZW50aGVzZXM6XG4iCiJcbiIKbXNnc3RyICIiCiIgaGrkbHB0ZXh0IGb2ciBuYW5vXG4iCiJcbiIKIiBUZXh0cmVkaWdlcmFyZW4gbmFubyDkciBza2FwYWQgZvZyIGF0dCBlbXVsZXJhIGZ1bmt0aW9uYWxpdGV0ZW4gb2NoICIKImzkdHRhbnbkbmRoZXRlbiBob3MgdGV4dHJlZGlnZXJhcmVuIFVXIFBpY28uIERldCBmaW5ucyBmeXJhIGh1dnVkZGVsYXIgaSAiCiJyZWRpZ2VyYXJlbjog1nZlcnN0YSByYWRlbiB2aXNhciBwcm9ncmFtbWV0cyB2ZXJzaW9uc251bW1lciwgbmFtbmV0IHDlIGZpbGVuICIKInNvbSByZWRpZ2VyYXMgb2NoIG9tIGZpbGVuIGhhciDkbmRyYXRzLiBFZnRlciBkZXR0YSBmaW5ucyBodXZ1ZGb2bnN0cmV0IHNvbSAiCiJ2aXNhciBmaWxlbiBzb20gcmVkaWdlcmFzLiBTdGF0dXNyYWRlbiDkciB0cmVkamUgcmFkZW4gZnLlbiBuZWRlcmthbnRlbiBvY2ggIgoidmlzYXIgdmlrdGlnYSBtZWRkZWxhbmRlbi4gRGUgbmVkZXJzdGEgdHblIHJhZGVybmEgdmlzYXIgZGUgdmFubGlnYXN0ZSAiCiJrb3J0a29tbWFuZG9uYSBzb20gYW525G5kcyBpIHRleHRyZWRpZ2VyYXJlbi5cbiIKIlxuIgoiIE5vdGF0aW9uZW4gZvZyIGtvcnRrb21tYW5kb24g5HIgc29tIGb2bGplcjogU2VrdmVuc2VyIG1lZCBDb250cm9sLXRhbmdlbnQgIgoic2tyaXZzIG1lZCBldHQgdGFrdGVja2VuICheKSBvY2ggdHJ5Y2tzIHRpbGxzYW1tYW5zIG1lZCBDb250cm9sLXRhbmdlbnRlbiAiCiIoQ3RybCkuIEVzY2FwZS1zZWt2ZW5zZXIgc2tyaXZzIG1lZCBtZXRhdGVja25ldCAoTSkgb2NoIG9jaCBhbmdlcyBhbnRpbmdlbiAiCiJtZWQgRXNjLSwgQWx0LSBlbGxlciBNZXRhLXRhbmdlbnRlbiBiZXJvZW5kZSBw5SBkaW5hICIKInRhbmdlbnRib3Jkc2luc3TkbGxuaW5nYXIuIEb2bGphbmRlIHRhbmdlbnRrb21iaW5hdGlvbmVyIORyIHRpbGxn5G5nbGlnYSBpICIKInJlZGlnZXJhcmVucyBodXZ1ZGb2bnN0ZXIuIEFsdGVybmF0aXZhIHRhbmdlbnRlciB2aXNhcyBpbm9tIHBhcmVudGVzOlxuIgoiXG4iCgojOiBuYW5vLmM6Mzg4IG5hbm8uYzo0NTgKbXNnaWQgImVuYWJsZS9kaXNhYmxlIgptc2dzdHIgImFrdGl2ZXJhL2luYWt0aXZlcmEiCgojOiBuYW5vLmM6NDE1IG5hbm8uYzo0MTgKbXNnaWQgIlNwYWNlIgptc2dzdHIgIkJsYW5rc3RlZyIKCiM6IG5hbm8uYzo2MjIKbXNnaWQgIiIKIlVzYWdlOiBuYW5vIFsrTElORV0gW0dOVSBsb25nIG9wdGlvbl0gW29wdGlvbl0gW2ZpbGVdXG4iCiJcbiIKbXNnc3RyICIiCiJBbnbkbmRuaW5nOiBuYW5vIFsrUkFEXSBbbOVuZyBHTlUtZmxhZ2dhXSBbZmxhZ2dhXSBbZmlsXVxuIgoiXG4iCgojOiBuYW5vLmM6NjIzCm1zZ2lkICJPcHRpb25cdFx0TG9uZyBvcHRpb25cdFx0TWVhbmluZ1xuIgptc2dzdHIgIkZsYWdnYVx0XHRM5W5nIGZsYWdnYVx0XHRCZXR5ZGVsc2VcbiIKCiM6IG5hbm8uYzo2MjUKbXNnaWQgIiIKIlVzYWdlOiBuYW5vIFsrTElORV0gW29wdGlvbl0gW2ZpbGVdXG4iCiJcbiIKbXNnc3RyICIiCiJBbnbkbmRuaW5nOiBuYW5vIFsrUkFEXSBbZmxhZ2dhXSBbZmlsXVxuIgoiXG4iCgojOiBuYW5vLmM6NjI2Cm1zZ2lkICJPcHRpb25cdFx0TWVhbmluZ1xuIgptc2dzdHIgIkZsYWdnYVx0XHRCZXR5ZGVsc2VcbiIKCiM6IG5hbm8uYzo2MjkKbXNnaWQgIlNob3cgdGhpcyBtZXNzYWdlIgptc2dzdHIgIlZpc2EgZGV0dGEgbWVkZGVsYW5kZSIKCiM6IG5hbm8uYzo2MzAKbXNnaWQgIitMSU5FIgptc2dzdHIgIitSQUQiCgojOiBuYW5vLmM6NjMwCm1zZ2lkICJTdGFydCBhdCBsaW5lIG51bWJlciBMSU5FIgptc2dzdHIgIlN0YXJ0YSB2aWQgcmFkbnVtbWVyIFJBRCIKCiM6IG5hbm8uYzo2MzIKbXNnaWQgIkJhY2t1cCBleGlzdGluZyBmaWxlcyBvbiBzYXZlIgptc2dzdHIgIlPka2VyaGV0c2tvcGllcmFyIGJlZmludGxpZ2EgZmlsZXIgdmlkIHNwYXJhbmRlIgoKIzogbmFuby5jOjYzMwptc2dpZCAiV3JpdGUgZmlsZSBpbiBET1MgZm9ybWF0Igptc2dzdHIgIlNrcml2IGZpbCBpIERPUy1mb3JtYXQiCgojOiBuYW5vLmM6NjM2Cm1zZ2lkICJFbmFibGUgbXVsdGlwbGUgZmlsZSBidWZmZXJzIgptc2dzdHIgIkFuduRuZCBmbGVyYSBmaWxidWZmZXJ0YXIiCgojOiBuYW5vLmM6NjM5Cm1zZ2lkICJMb2cgJiByZWFkIHNlYXJjaC9yZXBsYWNlIHN0cmluZyBoaXN0b3J5Igptc2dzdHIgIkxvZ2dhIG9jaCBs5HMgc3Ry5G5naGlzdG9yaWsgZvZyIHP2ay9lcnPkdHQiCgojOiBuYW5vLmM6NjQwCm1zZ2lkICJEb24ndCBsb29rIGF0IG5hbm9yYyBmaWxlcyIKbXNnc3RyICJUaXR0YSBpbnRlIGkgbmFub3JjLWZpbGVyIgoKIzogbmFuby5jOjY0Mgptc2dpZCAiVXNlIGFsdGVybmF0ZSBrZXlwYWQgcm91dGluZXMiCm1zZ3N0ciAiQW525G5kIGFsdGVybmF0aXZhIHRhbmdlbnRib3Jkc3J1dGluZXIiCgojOiBuYW5vLmM6NjQ0Cm1zZ2lkICJXcml0ZSBmaWxlIGluIE1hYyBmb3JtYXQiCm1zZ3N0ciAiU2tyaXYgZmlsIGkgTWFjLWZvcm1hdCIKCiM6IG5hbm8uYzo2NDUKbXNnaWQgIkRvbid0IGNvbnZlcnQgZmlsZXMgZnJvbSBET1MvTWFjIGZvcm1hdCIKbXNnc3RyICJLb252ZXJ0ZXJhIGludGUgZmlsZXIgZnLlbiBET1MvTWFjLWZvcm1hdCIKCiM6IG5hbm8uYzo2NDgKbXNnaWQgIi1RIFtzdHJdIgptc2dzdHIgIi1RIFtzdHJdIgoKIzogbmFuby5jOjY0OAptc2dpZCAiLS1xdW90ZXN0cj1bc3RyXSIKbXNnc3RyICItLXF1b3Rlc3RyPVtzdHJdIgoKIzogbmFuby5jOjY0OAptc2dpZCAiUXVvdGluZyBzdHJpbmcsIGRlZmF1bHQgXCI+IFwiIgptc2dzdHIgIkNpdGF0c3Ry5G5nLCBzdGFuZGFyZHbkcmRlIFwiPiBcIiIKCiM6IG5hbm8uYzo2NTEKbXNnaWQgIkRvIHJlZ3VsYXIgZXhwcmVzc2lvbiBzZWFyY2hlcyIKbXNnc3RyICJT9msgbWVkIHJlZ3VsauRydCB1dHRyeWNrIgoKIzogbmFuby5jOjY1Ngptc2dpZCAiLVQgW251bV0iCm1zZ3N0ciAiLVQgW2FudGFsXSIKCiM6IG5hbm8uYzo2NTYKbXNnaWQgIi0tdGFic2l6ZT1bbnVtXSIKbXNnc3RyICItLXRhYnNpemU9W2FudGFsXSIKCiM6IG5hbm8uYzo2NTYKbXNnaWQgIlNldCB3aWR0aCBvZiBhIHRhYiB0byBudW0iCm1zZ3N0ciAiU3TkbGwgaW4gYnJlZGRlbiBw5SBldHQgdGFiYnN0ZWcgdGlsbCBhbnRhbCIKCiM6IG5hbm8uYzo2NTcKbXNnaWQgIlByaW50IHZlcnNpb24gaW5mb3JtYXRpb24gYW5kIGV4aXQiCm1zZ3N0ciAiU2tyaXYgdXQgdmVyc2lvbnNpbmZvcm1hdGlvbiBvY2ggYXZzbHV0YSIKCiM6IG5hbm8uYzo2NTkKbXNnaWQgIi1ZIFtzdHJdIgptc2dzdHIgIi1ZIFtzdHJdIgoKIzogbmFuby5jOjY1OQptc2dpZCAiLS1zeW50YXggW3N0cl0iCm1zZ3N0ciAiLS1zeW50YXggW3N0cl0iCgojOiBuYW5vLmM6NjU5Cm1zZ2lkICJTeW50YXggZGVmaW5pdGlvbiB0byB1c2UiCm1zZ3N0ciAiU3ludGF4ZGVmaW5pdGlvbiBhdHQgYW525G5kYSIKCiM6IG5hbm8uYzo2NjEKbXNnaWQgIkNvbnN0YW50bHkgc2hvdyBjdXJzb3IgcG9zaXRpb24iCm1zZ3N0ciAiVmlzYSBtYXJr9nJwb3NpdGlvbiBoZWxhIHRpZGVuIgoKIzogbmFuby5jOjY2Mwptc2dpZCAiQXV0b21hdGljYWxseSBpbmRlbnQgbmV3IGxpbmVzIgptc2dzdHIgIkRyYSBhdXRvbWF0aXNrdCBpbiBueWEgcmFkZXIiCgojOiBuYW5vLmM6NjY0Cm1zZ2lkICJMZXQgXksgY3V0IGZyb20gY3Vyc29yIHRvIGVuZCBvZiBsaW5lIgptc2dzdHIgIkzldCBeSyBrbGlwcGEgdXQgZnLlbiBtYXJr9nJlbiB0aWxsIHNsdXRldCBw5SByYWRlbiIKCiM6IG5hbm8uYzo2NjYKbXNnaWQgIkRvbid0IGZvbGxvdyBzeW1ib2xpYyBsaW5rcywgb3ZlcndyaXRlIgptc2dzdHIgIkb2bGogaW50ZSBzeW1ib2xpc2thIGzkbmthciwgc2tyaXYg9nZlciIKCiM6IG5hbm8uYzo2NjgKbXNnaWQgIkVuYWJsZSBtb3VzZSIKbXNnc3RyICJN9mpsaWdn9nIgbXVzYW525G5kbmluZyIKCiM6IG5hbm8uYzo2NzEKbXNnaWQgIi1vIFtkaXJdIgptc2dzdHIgIi1vIFtrYXRdIgoKIzogbmFuby5jOjY3MQptc2dpZCAiLS1vcGVyYXRpbmdkaXI9W2Rpcl0iCm1zZ3N0ciAiLS1vcGVyYXRpbmdkaXI9W2thdF0iCgojOiBuYW5vLmM6NjcxCm1zZ2lkICJTZXQgb3BlcmF0aW5nIGRpcmVjdG9yeSIKbXNnc3RyICJTdORsbCBpbiBhcmJldHNrYXRhbG9nIgoKIzogbmFuby5jOjY3Mwptc2dpZCAiUHJlc2VydmUgWE9OICheUSkgYW5kIFhPRkYgKF5TKSBrZXlzIgptc2dzdHIgIkJldmFyYSBYT04gKF5RKS0gb2NoIFhPRkYgKF5TKS10YW5nZW50ZXIiCgojOiBuYW5vLmM6Njc1Cm1zZ2lkICItciBbI2NvbHNdIgptc2dzdHIgIi1yIFt0ZWNrZW5dIgoKIzogbmFuby5jOjY3NQptc2dpZCAiLS1maWxsPVsjY29sc10iCm1zZ3N0ciAiLS1maWxsPVt0ZWNrZW5dIgoKIzogbmFuby5jOjY3NQptc2dpZCAiU2V0IGZpbGwgY29scyB0byAod3JhcCBsaW5lcyBhdCkgI2NvbHMiCm1zZ3N0ciAiQnJ5dCByYWRlciBlZnRlciBhbnRhbCB0ZWNrZW4iCgojOiBuYW5vLmM6Njc4Cm1zZ2lkICItcyBbcHJvZ10iCm1zZ3N0ciAiLXMgW3Byb2ddIgoKIzogbmFuby5jOjY3OAptc2dpZCAiLS1zcGVsbGVyPVtwcm9nXSIKbXNnc3RyICItLXNwZWxsZXI9W3Byb2ddIgoKIzogbmFuby5jOjY3OAptc2dpZCAiRW5hYmxlIGFsdGVybmF0ZSBzcGVsbGVyIgptc2dzdHIgIkFuduRuZCBhbHRlcm5hdGl2IHN0YXZuaW5nc2tvbnRyb2xsIgoKIzogbmFuby5jOjY4MAptc2dpZCAiQXV0byBzYXZlIG9uIGV4aXQsIGRvbid0IHByb21wdCIKbXNnc3RyICJTcGFyYSBhdXRvbWF0aXNrdCB2aWQgYXZzbHV0LCBmcuVnYSBpbnRlIgoKIzogbmFuby5jOjY4MQptc2dpZCAiVmlldyAocmVhZCBvbmx5KSBtb2RlIgptc2dzdHIgIlZpc25pbmdzbORnZSAoc2tyaXZza3lkZGF0KSIKCiM6IG5hbm8uYzo2ODMKbXNnaWQgIkRvbid0IHdyYXAgbG9uZyBsaW5lcyIKbXNnc3RyICJSYWRicnl0IGludGUgbOVuZ2EgcmFkZXIiCgojOiBuYW5vLmM6Njg1Cm1zZ2lkICJEb24ndCBzaG93IGhlbHAgd2luZG93Igptc2dzdHIgIlZpc2EgaW50ZSBoauRscGb2bnN0ZXIiCgojOiBuYW5vLmM6Njg2Cm1zZ2lkICJFbmFibGUgc3VzcGVuZCIKbXNnc3RyICJBbnbkbmQgc3VzcGVuZCIKCiM6IG5hbm8uYzo2ODkKbXNnaWQgIihpZ25vcmVkLCBmb3IgUGljbyBjb21wYXRpYmlsaXR5KSIKbXNnc3RyICIoaWdub3JlcmFkIGb2ciBrb21wYXRpYmlsaXRldCBtZWQgUGljbykiCgojOiBuYW5vLmM6Njk2CiMsIGMtZm9ybWF0Cm1zZ2lkICIgR05VIG5hbm8gdmVyc2lvbiAlcyAoY29tcGlsZWQgJXMsICVzKVxuIgptc2dzdHIgIiBHTlUgbmFubyB2ZXJzaW9uICVzIChrb21waWxlcmFkICVzLCAlcylcbiIKCiM6IG5hbm8uYzo2OTkKbXNnaWQgIiBFbWFpbDogbmFub0BuYW5vLWVkaXRvci5vcmdcdFdlYjogaHR0cDovL3d3dy5uYW5vLWVkaXRvci5vcmcvIgptc2dzdHIgIiBFLXBvc3Q6IG5hbm9AbmFuby1lZGl0b3Iub3JnXHRIZW1zaWRhOiBodHRwOi8vd3d3Lm5hbm8tZWRpdG9yLm9yZy8iCgojOiBuYW5vLmM6NzAwCm1zZ2lkICIiCiJcbiIKIiBDb21waWxlZCBvcHRpb25zOiIKbXNnc3RyICIiCiJcbiIKIiBLb21waWxlcmluZ3NmbGFnZ29yOiIKCiM6IG5hbm8uYzo3NzIKbXNnaWQgIlNvcnJ5LCBzdXBwb3J0IGZvciB0aGlzIGZ1bmN0aW9uIGhhcyBiZWVuIGRpc2FibGVkIgptc2dzdHIgIlR5duRyciwgc3T2ZCBm9nIgZGVubmEgZnVua3Rpb24gaGFyIGluYWt0aXZlcmF0cyIKCiM6IG5hbm8uYzo4MDYKbXNnaWQgIkNvdWxkIG5vdCBwaXBlIgptc2dzdHIgIkt1bmRlIGludGUgYW525G5kYSBy9nIiCgojOiBuYW5vLmM6ODI4IG5hbm8uYzoxNzc4IG5hbm8uYzoxOTExCm1zZ2lkICJDb3VsZCBub3QgZm9yayIKbXNnc3RyICJLdW5kZSBpbnRlIGdyZW5hIgoKIzogbmFuby5jOjEzNjUKbXNnaWQgIk1hcmsgU2V0Igptc2dzdHIgIk1hcmtlcmluZyBzYXR0IgoKIzogbmFuby5jOjEzNzAKbXNnaWQgIk1hcmsgVU5zZXQiCm1zZ3N0ciAiTWFya2VyaW5nIGJvcnR0YWdlbiIKCiM6IG5hbm8uYzoxNjMzCm1zZ2lkICJFZGl0IGEgcmVwbGFjZW1lbnQiCm1zZ3N0ciAiUmVkaWdlcmEgZW4gZXJz5HR0bmluZyIKCiM6IG5hbm8uYzoxNjg2Cm1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIHBpcGUiCm1zZ3N0ciAiS3VuZGUgaW50ZSBza2FwYSBy9nIiCgojOiBuYW5vLmM6MTY4OAptc2dpZCAiQ3JlYXRpbmcgbWlzc3BlbGxlZCB3b3JkIGxpc3QsIHBsZWFzZSB3YWl0Li4uIgptc2dzdHIgIlNrYXBhciBsaXN0YSD2dmVyIGZlbHN0YXZhZGUgb3JkLCB2YXIgduRubGlnIHbkbnRhLi4uIgoKIzogbmFuby5jOjE3ODQKbXNnaWQgIkNvdWxkIG5vdCBnZXQgc2l6ZSBvZiBwaXBlIGJ1ZmZlciIKbXNnc3RyICJLdW5kZSBpbnRlIGblIHRhZyBpIHL2cmJ1ZmZlcnRlbnMgc3RvcmxlayIKCiM6IG5hbm8uYzoxODM2Cm1zZ2lkICJFcnJvciBpbnZva2luZyBcInNwZWxsXCIiCm1zZ3N0ciAiRmVsIHZpZCBzdGFydCBhdiBcInNwZWxsXCIiCgojOiBuYW5vLmM6MTgzOQptc2dpZCAiRXJyb3IgaW52b2tpbmcgXCJzb3J0IC1mXCIiCm1zZ3N0ciAiRmVsIHZpZCBzdGFydCBhdiBcInNvcnQgLWZcIiIKCiM6IG5hbm8uYzoxODQyCm1zZ2lkICJFcnJvciBpbnZva2luZyBcInVuaXFcIiIKbXNnc3RyICJGZWwgdmlkIHN0YXJ0IGF2IFwidW5pcVwiIgoKIzogbmFuby5jOjE5MTgKIywgYy1mb3JtYXQKbXNnaWQgIkNvdWxkIG5vdCBpbnZva2UgXCIlc1wiIgptc2dzdHIgIkt1bmRlIGludGUgc3RhcnRhIFwiJXNcIiIKCiM6IG5hbm8uYzoxOTYxCiMsIGMtZm9ybWF0Cm1zZ2lkICJDb3VsZCBub3QgY3JlYXRlIGEgdGVtcG9yYXJ5IGZpbGVuYW1lOiAlcyIKbXNnc3RyICJLdW5kZSBpbnRlIHNrYXBhIGV0dCB0ZW1wb3LkcnQgZmlsbmFtbjogJXMiCgojOiBuYW5vLmM6MTk2Nwptc2dpZCAiU3BlbGwgY2hlY2tpbmcgZmFpbGVkOiB1bmFibGUgdG8gd3JpdGUgdGVtcCBmaWxlISIKbXNnc3RyICJTdGF2bmluZ3Nrb250cm9sbCBtaXNzbHlja2FkZXM6IGthbiBpbnRlIHNrcml2YSB0aWxsIHRlbXBvcuRyZmlsISIKCiM6IG5hbm8uYzoxOTg2CiMsIGMtZm9ybWF0Cm1zZ2lkICJTcGVsbCBjaGVja2luZyBmYWlsZWQ6ICVzIgptc2dzdHIgIlN0YXZuaW5nc2tvbnRyb2xsZW4gbWlzc2x5Y2thZGVzOiAlcyIKCiM6IG5hbm8uYzoxOTkwCm1zZ2lkICJGaW5pc2hlZCBjaGVja2luZyBzcGVsbGluZyIKbXNnc3RyICJTdGF2bmluZ3Nrb250cm9sbGVuIHNsdXRm9nJkZXMiCgojOiBuYW5vLmM6MjMzMwojLCBjLWZvcm1hdAptc2dpZCAiQmFkIHF1b3RlIHN0cmluZyAlczogJXMiCm1zZ3N0ciAiRmVsYWt0aWcgY2l0ZXJpbmdzc3Ry5G5nICVzOiAlcyIKCiM6IG5hbm8uYzoyNjAwCm1zZ2lkICJDYW4gbm93IFVuSnVzdGlmeSEiCm1zZ3N0ciAiS2FuIG9qdXN0ZXJhIG51ISIKCiM6IG5hbm8uYzoyNjk2Cm1zZ2lkICJTYXZlIG1vZGlmaWVkIGJ1ZmZlciAoQU5TV0VSSU5HIFwiTm9cIiBXSUxMIERFU1RST1kgQ0hBTkdFUykgPyAiCm1zZ3N0ciAiIgoiU3BhcmEg5G5kcmFkIGJ1ZmZlcnQgKEFUVCBTVkFSQSBcIk5lalwiIEtPTU1FUiBBVFQgRtZSU1TWUkEgxE5EUklOR0FSKT8gIgoKIzogbmFuby5jOjI3OTYKbXNnaWQgIlJlY2VpdmVkIFNJR0hVUCBvciBTSUdURVJNXG4iCm1zZ3N0ciAiTW90dG9nIFNJR0hVUCBlbGxlciBTSUdURVJNXG4iCgojOiBuYW5vLmM6MjgwMwptc2dpZCAiVXNlIFwiZmdcIiB0byByZXR1cm4gdG8gbmFubyIKbXNnc3RyICJBbnbkbmQgXCJmZ1wiIGb2ciBhdHQg5XRlcnbkbmRhIHRpbGwgbmFubyIKCiM6IG5hbm8uYzoyODc2Cm1zZ2lkICJDYW5ub3QgcmVzaXplIHRvcCB3aW4iCm1zZ3N0ciAiS2FuIGludGUg5G5kcmEgc3RvcmxlayBw5SD2dnJlIGb2bnN0cmV0IgoKIzogbmFuby5jOjI4NzgKbXNnaWQgIkNhbm5vdCBtb3ZlIHRvcCB3aW4iCm1zZ3N0ciAiS2FuIGludGUgZmx5dHRhIPZ2cmUgZvZuc3RyZXQiCgojOiBuYW5vLmM6Mjg4MAptc2dpZCAiQ2Fubm90IHJlc2l6ZSBlZGl0IHdpbiIKbXNnc3RyICJLYW4gaW50ZSDkbmRyYSBzdG9ybGVrIHDlIHJlZGlnZXJpbmdzZvZuc3RyZXQiCgojOiBuYW5vLmM6Mjg4Mgptc2dpZCAiQ2Fubm90IG1vdmUgZWRpdCB3aW4iCm1zZ3N0ciAiS2FuIGludGUgZmx5dHRhIHJlZGlnZXJpbmdzZvZuc3RyZXQiCgojOiBuYW5vLmM6Mjg4NAptc2dpZCAiQ2Fubm90IHJlc2l6ZSBib3R0b20gd2luIgptc2dzdHIgIkthbiBpbnRlIORuZHJhIHN0b3JsZWsgcOUgbmVkcmUgZvZuc3RyZXQiCgojOiBuYW5vLmM6Mjg4Ngptc2dpZCAiQ2Fubm90IG1vdmUgYm90dG9tIHdpbiIKbXNnc3RyICJLYW4gaW50ZSBmbHl0dGEgbmVkcmUgZvZuc3RyZXQiCgojOiBuYW5vLmM6MjkxOQptc2dpZCAiTnVtTG9jayBnbGl0Y2ggZGV0ZWN0ZWQuICBLZXlwYWQgd2lsbCBtYWxmdW5jdGlvbiB3aXRoIE51bUxvY2sgb2ZmIgptc2dzdHIgIiIKIk51bUxvY2stcHJvYmxlbSB1cHB05GNrdGVzLiBUYW5nZW50ZXJuYSBrb21tZXIgaW50ZSBhdHQgZnVuZ2VyYSB1dGFuIE51bUxvY2siCgojOiBuYW5vLmM6Mjk2OAptc2dpZCAiZW5hYmxlZCIKbXNnc3RyICJha3RpdmVyYWQiCgojOiBuYW5vLmM6Mjk2OAptc2dpZCAiZGlzYWJsZWQiCm1zZ3N0ciAiaW5ha3RpdmVyYWQiCgojOiBuYW5vLmM6MzE2MAptc2dpZCAiVGFiIHNpemUgaXMgdG9vIHNtYWxsIGZvciBuYW5vLi4uXG4iCm1zZ3N0ciAiVGFidWxhdG9yc3Rvcmxla2VuIORyIGb2ciBsaXRlbiBm9nIgbmFuby4uLlxuIgoKIzogbmFuby5jOjM3MTEKbXNnaWQgIlhPRkYgaWdub3JlZCwgbXVtYmxlIG11bWJsZS4iCm1zZ3N0ciAiWE9GRiBpZ25vcmVyYWRlcywgbXVtbWVsIG11bW1lbC4iCgojOiBuYW5vLmM6MzcxMwptc2dpZCAiWE9OIGlnbm9yZWQsIG11bWJsZSBtdW1ibGUuIgptc2dzdHIgIlhPTiBpZ25vcmVyYWRlcywgbXVtbWVsIG11bW1lbC4iCgojOiByY2ZpbGUuYzoxMDMKIywgYy1mb3JtYXQKbXNnaWQgIkVycm9yIGluICVzIG9uIGxpbmUgJWQ6ICIKbXNnc3RyICJGZWwgaSAlcyBw5SByYWQgJWQ6ICIKCiM6IHJjZmlsZS5jOjEwOAptc2dpZCAiIgoiXG4iCiJQcmVzcyByZXR1cm4gdG8gY29udGludWUgc3RhcnRpbmcgbmFub1xuIgptc2dzdHIgIiIKIlxuIgoiVHJ5Y2sgcmV0dXIgZvZyIGF0dCBmb3J0c+R0dGEgc3RhcnRhIG5hbm9cbiIKCiM6IHJjZmlsZS5jOjE3MwojLCBjLWZvcm1hdAptc2dpZCAiYXJndW1lbnQgJXMgaGFzIHVudGVybWluYXRlZCBcIiIKbXNnc3RyICJhcmd1bWVudCAlcyBoYXIgb2F2c2x1dGF0IFwiIgoKIzogcmNmaWxlLmM6MjE1CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJjb2xvciAlcyBub3QgdW5kZXJzdG9vZC5cbiIKIlZhbGlkIGNvbG9ycyBhcmUgXCJncmVlblwiLCBcInJlZFwiLCBcImJsdWVcIiwgXG4iCiJcIndoaXRlXCIsIFwieWVsbG93XCIsIFwiY3lhblwiLCBcIm1hZ2VudGFcIiBhbmQgXG4iCiJcImJsYWNrXCIsIHdpdGggdGhlIG9wdGlvbmFsIHByZWZpeCBcImJyaWdodFwiLlxuIgptc2dzdHIgIiIKImb2cnN05XIgaW50ZSBm5HJnZW4gJXMuXG4iCiJHaWx0aWdhIGbkcmdlciDkciBcImdyZWVuXCIsIFwicmVkXCIsIFwiYmx1ZVwiLCBcbiIKIlwid2hpdGVcIiwgXCJ5ZWxsb3dcIiwgXCJjeWFuXCIsIFwibWFnZW50YVwiIG9jaCBcbiIKIlwiYmxhY2tcIiwgbWVkIGRldCB2YWxmcmlhIGb2cmxlZGV0IFwiYnJpZ2h0XCIuXG4iCgojOiByY2ZpbGUuYzoyNTQKIywgYy1mb3JtYXQKbXNnaWQgIkJhZCByZWdleCBcIiVzXCI6ICVzIgptc2dzdHIgIkZlbGFrdGlndCByZWd1bGrkcnQgdXR0cnljayBcIiVzXCI6ICVzIgoKIzogcmNmaWxlLmM6Mjc0IHJjZmlsZS5jOjM5OCByY2ZpbGUuYzo0NDUKbXNnaWQgInJlZ2V4IHN0cmluZ3MgbXVzdCBiZWdpbiBhbmQgZW5kIHdpdGggYSBcIiBjaGFyYWN0ZXJcbiIKbXNnc3RyICIiCiJzdHLkbmdhciBtZWQgcmVndWxq5HJhIHV0dHJ5Y2sgbeVzdGUgYvZyamEgb2NoIHNsdXRhIG1lZCBldHQgXCItdGVja2VuXG4iCgojOiByY2ZpbGUuYzoyODMKbXNnaWQgIk1pc3Npbmcgc3ludGF4IG5hbWUiCm1zZ3N0ciAiU3ludGF4bmFtbiBzYWtuYXMiCgojOiByY2ZpbGUuYzozNTIKbXNnaWQgIk1pc3NpbmcgY29sb3IgbmFtZSIKbXNnc3RyICJG5HJnbmFtbiBzYWtuYXMiCgojOiByY2ZpbGUuYzozNjkKbXNnaWQgIkNhbm5vdCBhZGQgYSBjb2xvciBkaXJlY3RpdmUgd2l0aG91dCBhIHN5bnRheCBsaW5lIgptc2dzdHIgIkthbiBpbnRlIGzkZ2dhIHRpbGwgZXR0IGbkcmdkaXJla3RpdiB1dGFuIGVuIHN5bnRheHJhZCIKCiM6IHJjZmlsZS5jOjQzNwptc2dpZCAiXCJzdGFydD1cIiByZXF1aXJlcyBhIGNvcnJlc3BvbmRpbmcgXCJlbmQ9XCIiCm1zZ3N0ciAiXCJzdGFydD1cIiBrcuR2ZXIgZXR0IG1vdHN2YXJhbmRlIFwiZW5kPVwiIgoKIzogcmNmaWxlLmM6NTA5CiMsIGMtZm9ybWF0Cm1zZ2lkICJjb21tYW5kICVzIG5vdCB1bmRlcnN0b29kIgptc2dzdHIgImb2cnN05XIgaW50ZSBrb21tYW5kb3QgJXMiCgojOiByY2ZpbGUuYzo1NDEKIywgYy1mb3JtYXQKbXNnaWQgIm9wdGlvbiAlcyByZXF1aXJlcyBhbiBhcmd1bWVudCIKbXNnc3RyICJmbGFnZ2FuICVzIGty5HZlciBldHQgYXJndW1lbnQiCgojOiByY2ZpbGUuYzo1NjYKIywgYy1mb3JtYXQKbXNnaWQgInJlcXVlc3RlZCBmaWxsIHNpemUgJWQgaW52YWxpZCIKbXNnc3RyICJiZWfkcmQgZnlsbG5pbmdzc3RvcmxlayAlZCDkciBvZ2lsdGlnIgoKIzogcmNmaWxlLmM6NTkwCiMsIGMtZm9ybWF0Cm1zZ2lkICJyZXF1ZXN0ZWQgdGFiIHNpemUgJWQgaW52YWxpZCIKbXNnc3RyICJiZWfkcmQgdGFidWxhdG9yc3RvcmxlayAlZCDkciBvZ2lsdGlnIgoKIzogcmNmaWxlLmM6NjE0Cm1zZ2lkICJFcnJvcnMgZm91bmQgaW4gLm5hbm9yYyBmaWxlIgptc2dzdHIgIkZlbCBoaXR0YWRlcyBpIGZpbGVuIC5uYW5vcmMiCgojOiByY2ZpbGUuYzo2NTAKbXNnaWQgIkkgY2FuJ3QgZmluZCBteSBob21lIGRpcmVjdG9yeSEgIFdhaCEiCm1zZ3N0ciAiSmFnIGthbiBpbnRlIGhpdHRhIG1pbiBoZW1rYXRhbG9nISBCdWh1ISIKCiM6IHJjZmlsZS5jOjY3MAojLCBjLWZvcm1hdAptc2dpZCAiVW5hYmxlIHRvIG9wZW4gfi8ubmFub3JjIGZpbGUsICVzIgptc2dzdHIgIkthbiBpbnRlIPZwcG5hIGZpbGVuIH4vLm5hbm9yYywgJXMiCgojOiBzZWFyY2guYzo2MwojLCBjLWZvcm1hdAptc2dpZCAiXCIlcy4uLlwiIG5vdCBmb3VuZCIKbXNnc3RyICJcIiVzLi4uXCIga3VuZGUgaW50ZSBoaXR0YXMiCgojOiBzZWFyY2guYzoxMDUKIywgYy1mb3JtYXQKbXNnaWQgIkludmFsaWQgcmVnZXggXCIlc1wiIgptc2dzdHIgIk9naWx0aWd0IHJlZ3VsauRydCB1dHRyeWNrIFwiJXNcIiIKCiM6IHNlYXJjaC5jOjEzMwptc2dpZCAiU2VhcmNoIgptc2dzdHIgIlP2ayIKCiM6IHNlYXJjaC5jOjEzNwptc2dpZCAiIFtDYXNlIFNlbnNpdGl2ZV0iCm1zZ3N0ciAiIFtTa2lmdGzkZ2Vza+Ruc2xpZ10iCgojOiBzZWFyY2guYzoxNDEKbXNnaWQgIiBbUmVnZXhwXSIKbXNnc3RyICIgW1JlZ3VsauRydCB1dHRyeWNrXSIKCiM6IHNlYXJjaC5jOjE0NQptc2dpZCAiIFtCYWNrd2FyZHNdIgptc2dzdHIgIiBbQmFrbORuZ2VzXSIKCiM6IHNlYXJjaC5jOjE0Nwptc2dpZCAiICh0byByZXBsYWNlKSIKbXNnc3RyICIgKGF0dCBlcnPkdHRhKSIKCiM6IHNlYXJjaC5jOjE1NQptc2dpZCAiU2VhcmNoIENhbmNlbGxlZCIKbXNnc3RyICJT9mtuaW5nZW4gYXZicnV0ZW4iCgojOiBzZWFyY2guYzoyOTYgc2VhcmNoLmM6MzQ4Cm1zZ2lkICJTZWFyY2ggV3JhcHBlZCIKbXNnc3RyICJT9mtuaW5nZW4gYvZyamFkZSBvbSBmcuVuIGL2cmphbiIKCiM6IHNlYXJjaC5jOjQyMwptc2dpZCAiVGhpcyBpcyB0aGUgb25seSBvY2N1cnJlbmNlIgptc2dzdHIgIkRldHRhIORyIGVuZGEgZvZyZWtvbXN0ZW4iCgojOiBzZWFyY2guYzo1NzQgc2VhcmNoLmM6NzAzCm1zZ2lkICJSZXBsYWNlIENhbmNlbGxlZCIKbXNnc3RyICJFcnPkdHRuaW5nZW4gYXZicvZ0cyIKCiM6IHNlYXJjaC5jOjYxNAptc2dpZCAiUmVwbGFjZSB0aGlzIGluc3RhbmNlPyIKbXNnc3RyICJFcnPkdHRhIGRlbm5hIGb2cmVrb21zdD8iCgojOiBzZWFyY2guYzo2MjkKbXNnaWQgIlJlcGxhY2UgZmFpbGVkOiB1bmtub3duIHN1YmV4cHJlc3Npb24hIgptc2dzdHIgIkVyc+R0dG5pbmdlbiBtaXNzbHlja2FkZXM6IG9r5G50IGRlbHV0dHJ5Y2shIgoKIzogc2VhcmNoLmM6NzQwCm1zZ2lkICJSZXBsYWNlIHdpdGgiCm1zZ3N0ciAiRXJz5HR0IG1lZCIKCiM6IHNlYXJjaC5jOjc2MAojLCBjLWZvcm1hdAptc2dpZCAiUmVwbGFjZWQgJWQgb2NjdXJyZW5jZSIKbXNnaWRfcGx1cmFsICJSZXBsYWNlZCAlZCBvY2N1cnJlbmNlcyIKbXNnc3RyWzBdICJFcnNhdHRlICVkIGb2cmVrb21zdCIKbXNnc3RyWzFdICJFcnNhdHRlICVkIGb2cmVrb21zdGVyIgoKIzogc2VhcmNoLmM6Nzc3Cm1zZ2lkICJFbnRlciBsaW5lIG51bWJlciIKbXNnc3RyICJBbmdlIHJhZG51bW1lciIKCiM6IHNlYXJjaC5jOjc4MQptc2dpZCAiQWJvcnRlZCIKbXNnc3RyICJBdmJydXRlbiIKCiM6IHNlYXJjaC5jOjc5MQptc2dpZCAiQ29tZSBvbiwgYmUgcmVhc29uYWJsZSIKbXNnc3RyICJLb20gaWdlbiwgdmFyIG51IGb2cnN05W5kaWciCgojOiBzZWFyY2guYzo4NTEKbXNnaWQgIk5vdCBhIGJyYWNrZXQiCm1zZ3N0ciAiSW50ZSBlbiBrbGFtbWVyIgoKIzogc2VhcmNoLmM6OTAyCm1zZ2lkICJObyBtYXRjaGluZyBicmFja2V0Igptc2dzdHIgIkluZ2VuIG1hdGNoYW5kZSBrbGFtbWVyIgoKIzogdXRpbHMuYzoyNTcgdXRpbHMuYzoyNjcKbXNnaWQgIm5hbm8gaXMgb3V0IG9mIG1lbW9yeSEiCm1zZ3N0ciAibmFubyBoYXIgc2x1dCBw5SBtaW5uZSEiCgojOiB3aW5pby5jOjYwMAptc2dpZCAiICBGaWxlOiAuLi4iCm1zZ3N0ciAiICBGaWw6Li4uIgoKIzogd2luaW8uYzo2MDIKbXNnaWQgIiAgIERJUjogLi4uIgptc2dzdHIgIiAgIEtBVDouLi4iCgojOiB3aW5pby5jOjYwNwptc2dpZCAiRmlsZTogIgptc2dzdHIgIkZpbDogIgoKIzogd2luaW8uYzo2MTAKbXNnaWQgIiBESVI6ICIKbXNnc3RyICIgS0FUOiAiCgojOiB3aW5pby5jOjYxNQptc2dpZCAiIE1vZGlmaWVkICIKbXNnc3RyICIgxG5kcmFkICIKCiM6IHdpbmlvLmM6NjE3Cm1zZ2lkICIgVmlldyAiCm1zZ3N0ciAiIFZpc2EgIgoKIzogd2luaW8uYzo4MDMKbXNnaWQgIlJlZnVzaW5nIDAgbGVuZ3RoIHJlZ2V4IG1hdGNoIgptc2dzdHIgIlbkZ3JhciBtYXRjaG5pbmcgYXYgcmVndWxq5HJ0IHV0dHJ5Y2sgbWVkIGzkbmdkIDAiCgojOiB3aW5pby5jOjEyOTcKbXNnaWQgIll5Igptc2dzdHIgIkpqWXkiCgojOiB3aW5pby5jOjEyOTgKbXNnaWQgIk5uIgptc2dzdHIgIk5uIgoKIzogd2luaW8uYzoxMjk5Cm1zZ2lkICJBYSIKbXNnc3RyICJBYSIKCiM6IHdpbmlvLmM6MTMxMAptc2dpZCAiWWVzIgptc2dzdHIgIkphIgoKIzogd2luaW8uYzoxMzE1Cm1zZ2lkICJBbGwiCm1zZ3N0ciAiQWxsYSIKCiM6IHdpbmlvLmM6MTMyMAptc2dpZCAiTm8iCm1zZ3N0ciAiTmVqIgoKIzogd2luaW8uYzoxNDk5CiMsIGMtZm9ybWF0Cm1zZ2lkICJsaW5lICVsZC8lbGQgKCVkJSUpLCBjb2wgJWx1LyVsdSAoJWQlJSksIGNoYXIgJWx1LyVsZCAoJWQlJSkiCm1zZ3N0ciAicmFkICVsZC8lbGQgKCVkJSUpLCBrb2x1bW4gJWx1LyVsdSAoJWQlJSksIHRlY2tlbiAlbHUvJWxkICglZCUlKSIKCiM6IHdpbmlvLmM6MTgzOAptc2dpZCAiVGhlIG5hbm8gdGV4dCBlZGl0b3IiCm1zZ3N0ciAiVGV4dHJlZGlnZXJhcmVuIG5hbm8iCgojOiB3aW5pby5jOjE4MzkKbXNnaWQgInZlcnNpb24gIgptc2dzdHIgInZlcnNpb24gIgoKIzogd2luaW8uYzoxODQwCm1zZ2lkICJCcm91Z2h0IHRvIHlvdSBieToiCm1zZ3N0ciAiUHJlc2VudGVyYXMgYXY6IgoKIzogd2luaW8uYzoxODQxCm1zZ2lkICJTcGVjaWFsIHRoYW5rcyB0bzoiCm1zZ3N0ciAiWXR0ZXJsaWdhcmUgdGFjayB0aWxsOiIKCiM6IHdpbmlvLmM6MTg0Mgptc2dpZCAiVGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiIKbXNnc3RyICJGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24iCgojOiB3aW5pby5jOjE4NDMKbXNnaWQgIkZvciBuY3Vyc2VzOiIKbXNnc3RyICJG9nIgbmN1cnNlczoiCgojOiB3aW5pby5jOjE4NDQKbXNnaWQgImFuZCBhbnlvbmUgZWxzZSB3ZSBmb3Jnb3QuLi4iCm1zZ3N0ciAib2NoIGFsbGEgYW5kcmEgc29tIHZpIGhhciBnbPZtdC4uLiIKCiM6IHdpbmlvLmM6MTg0NQptc2dpZCAiVGhhbmsgeW91IGZvciB1c2luZyBuYW5vIVxuIgptc2dzdHIgIlRhY2sgZvZyIGF0dCBkdSBhbnbkbmRlciBuYW5vIVxuIgoKI34gbXNnaWQgImFkZF90b19jdXRidWZmZXIoKSBjYWxsZWQgd2l0aCBpbnB0ci0+ZGF0YSA9ICVzXG4iCiN+IG1zZ3N0ciAiYWRkX3RvX2N1dGJ1ZmZlcigpIGFucm9wYWRlcyBtZWQgaW5wdHItPmRhdGEgPSAlc1xuIgoKI34gbXNnaWQgIkJsZXcgYXdheSBjdXRidWZmZXIgPSlcbiIKI34gbXNnc3RyICJTcHLkbmdkZSB1cmtsaXBwc2J1ZmZlcnRlbiA9KVxuIgoKI34gbXNnaWQgImZpbGVuYW1lIGlzICVzXG4iCiN+IG1zZ3N0ciAiZmlsbmFtbmV0IORyICVzXG4iCgojfiBtc2dpZCAiJXM6IGZyZWUnZCBhIG5vZGUsIFlBWSFcbiIKI34gbXNnc3RyICIlczogZnJpZ2pvcmRlIGVuIG5vZCwgSklQUEkhXG4iCgojfiBtc2dpZCAiJXM6IGZyZWUnZCBsYXN0IG5vZGUuXG4iCiN+IG1zZ3N0ciAiJXM6IGZyaWdqb3JkZSBzaXN0YSBub2Rlbi5cbiIKCiN+IG1zZ2lkICJCYWNraW5nIHVwICVzIHRvICVzXG4iCiN+IG1zZ3N0ciAiU+RrZXJoZXRza29waWVyYXIgJXMgdGlsbCAlc1xuIgoKI34gbXNnaWQgIldyb3RlID4lc1xuIgojfiBtc2dzdHIgIlNrcmV2ID4lc1xuIgoKI34gbXNnaWQgImN1cnJlbnQtPmRhdGEgbm93ID0gXCIlc1wiXG4iCiN+IG1zZ3N0ciAiY3VycmVudC0+ZGF0YSBudSA9IFwiJXNcIlxuIgoKI34gbXNnaWQgIkFmdGVyLCBkYXRhID0gXCIlc1wiXG4iCiN+IG1zZ3N0ciAiRWZ0ZXIsIGRhdGEgPSBcIiVzXCJcbiIKCiN+IG1zZ2lkICJNYWluOiBzZXQgdXAgd2luZG93c1xuIgojfiBtc2dzdHIgIk1haW46IGtvbmZpZ3VyZXJhIGb2bnN0ZXJcbiIKCiN+IG1zZ2lkICJNYWluOiBib3R0b20gd2luXG4iCiN+IG1zZ3N0ciAiTWFpbjogbmVkcmUgZvZuc3RyZXRcbiIKCiN+IG1zZ2lkICJNYWluOiBvcGVuIGZpbGVcbiIKI34gbXNnc3RyICJNYWluOiD2cHBuYSBmaWxcbiIKCiN+IG1zZ2lkICJBSEEhICAlYyAoJWQpXG4iCiN+IG1zZ3N0ciAiQUhBISAlYyAoJWQpXG4iCgojfiBtc2dpZCAiSSBnb3QgQWx0LU8tJWMhICglZClcbiIKI34gbXNnc3RyICJKYWcgbW90dG9nIEFsdC1PLSVjISAoJWQpXG4iCgojfiBtc2dpZCAiSSBnb3QgQWx0LVstMS0lYyEgKCVkKVxuIgojfiBtc2dzdHIgIkphZyBtb3R0b2cgQWx0LVstMS0lYyEgKCVkKVxuIgoKI34gbXNnaWQgIkkgZ290IEFsdC1bLTItJWMhICglZClcbiIKI34gbXNnc3RyICJKYWcgbW90dG9nIEFsdC1bLTItJWMhICglZClcbiIKCiN+IG1zZ2lkICJJIGdvdCBBbHQtWy0lYyEgKCVkKVxuIgojfiBtc2dzdHIgIkphZyBtb3R0b2cgQWx0LVstJWMhICglZClcbiIKCiN+IG1zZ2lkICJJIGdvdCBBbHQtJWMhICglZClcbiIKI34gbXNnc3RyICJKYWcgbW90dG9nIEFsdC0lYyEgKCVkKVxuIgoKI34gbXNnaWQgIkkgZ290ICVjICglZCkhXG4iCiN+IG1zZ3N0ciAiSmFnIG1vdHRvZyAlYyAoJWQpIVxuIgoKI34gbXNnaWQgIkFkZGluZyBuZXcgc3ludGF4IGFmdGVyIDFzdFxuIgojfiBtc2dzdHIgIkzkZ2dlciB0aWxsIG55IHN5bnRheCBlZnRlciBm9nJzdGFcbiIKCiN+IG1zZ2lkICJTdGFydGluZyBhIG5ldyBzeW50YXggdHlwZVxuIgojfiBtc2dzdHIgIlN0YXJ0YXIgbnkgc3ludGF4dHlwXG4iCgojIGZnID0gZvZyZ3J1bmQsIGJnID0gYmFrZ3J1bmQgZ2lzc2FyIGphZwojfiBtc2dpZCAiU3RhcnRpbmcgYSBuZXcgY29sb3JzdHJpbmcgZm9yIGZnICVkIGJnICVkXG4iCiN+IG1zZ3N0ciAiU3RhcnRhciBlbiBueSBm5HJnc3Ry5G5nIGb2ciBmZyAlZCBiZyAlZFxuIgoKI34gbXNnaWQgIkFkZGluZyBuZXcgZW50cnkgZm9yIGZnICVkIGJnICVkXG4iCiN+IG1zZ3N0ciAiTORnZ2VyIHRpbGwgbnkgcG9zdCBm9nIgZmcgJWQgYmcgJWRcbiIKCiN+IG1zZ2lkICIlczogUmVhZCBhIGNvbW1lbnRcbiIKI34gbXNnc3RyICIlczogTORzdGUgaW4gZW4ga29tbWVudGFyXG4iCgojfiBtc2dpZCAiJXM6IFBhcnNpbmcgb3B0aW9uICVzXG4iCiN+IG1zZ3N0ciAiJXM6IFRvbGthciBmbGFnZ2FuICVzXG4iCgojfiBtc2dpZCAic2V0IGZsYWcgJWQhXG4iCiN+IG1zZ3N0ciAic2F0dGUgZmxhZ2dhICVkIVxuIgoKI34gbXNnaWQgInVuc2V0IGZsYWcgJWQhXG4iCiN+IG1zZ3N0ciAidG9nIGJvcnQgZmxhZ2dhICVkIVxuIgoKI34gbXNnaWQgImFjdHVhbF94IGZvciB4cGx1cz0lZCByZXR1cm5zICVkXG4iCiN+IG1zZ3N0ciAiYWN0dWFsX3ggZvZyIHhwbHVzPSVkIHJldHVybmVyYWRlICVkXG4iCgojfiBtc2dpZCAiQWhhISAnJWMnICglZClcbiIKI34gbXNnc3RyICJBaGEhIFwiJWNcIiAoJWQpXG4iCgojIE9z5Gtlci4KI34gbXNnaWQgImlucHV0ICclYycgKCVkKVxuIgojfiBtc2dzdHIgImluZGF0YSBcIiVjXCIgKCVkKVxuIgoKI34gbXNnaWQgIk1vdmVkIHRvICglZCwgJWQpIGluIGVkaXQgYnVmZmVyXG4iCiN+IG1zZ3N0ciAiR2ljayB0aWxsICglZCwgJWQpIGkgcmVkaWdlcmluZ3NidWZmZXJ0ZW5cbiIKCiN+IG1zZ2lkICJJIGdvdCBcIiVzXCJcbiIKI34gbXNnc3RyICJKYWcgbW90dG9nIFwiJXNcIlxuIgoKI34gbXNnaWQgIkR1bXBpbmcgZmlsZSBidWZmZXIgdG8gc3RkZXJyLi4uXG4iCiN+IG1zZ3N0ciAiRHVtcGFyIGZpbGJ1ZmZlcnRlbiB0aWxsIHN0YW5kYXJkIGZlbC4uLlxuIgoKI34gbXNnaWQgIkR1bXBpbmcgY3V0YnVmZmVyIHRvIHN0ZGVyci4uLlxuIgojfiBtc2dzdHIgIkR1bXBhciB1cmtsaXBwc2J1ZmZlcnRlbiB0aWxsIHN0YW5kYXJkIGZlbC4uLlxuIgoKI34gbXNnaWQgIkR1bXBpbmcgYSBidWZmZXIgdG8gc3RkZXJyLi4uXG4iCiN+IG1zZ3N0ciAiRHVtcGFyIGVuIGJ1ZmZlcnQgdGlsIHN0YW5kYXJkIGZlbC4uLlxuIgoKI34gbXNnaWQgIiIKI34gIlxuIgojfiAiVGhlIC1wIGZsYWcgbm93IGludm9rZXMgdGhlIFBpY28gXCJwcmVzZXJ2ZVwiIGZsYWcuXG4iCiN+ICJUaGUgUGljbyBjb21wYXRpYmlsaXR5IGZsYWcgaGFzIGJlZW4gcmVtb3ZlZCBhcyBuYW5vXG4iCiN+ICJub3cgZnVsbHkgUGljbyBjb21wYXRpYmxlLiAgUGxlYXNlIHNlZSB0aGUgbmFubyBGQVFcbiIKI34gImZvciBtb3JlIGluZm8gb24gdGhpcyBjaGFuZ2UuLi5cbiIKI34gIlxuIgojfiAiUHJlc3MgcmV0dXJuIHRvIGNvbnRpbnVlXG4iCiN+IG1zZ3N0ciAiIgojfiAiXG4iCiN+ICJGbGFnZ2FuIC1wIHN0YXJ0YXIgbnUgUGljb3MgXCJwcmVzZXJ2ZVwiLWZsYWdnYS4gUGljby1cbiIKI34gImtvbXBhdGliaWxpdGV0c2ZsYWdnYW4gaGFyIHRhZ2l0cyBib3J0IGVmdGVyc29tIG5hbm8gbnVcbiIKI34gIuRyIGZ1bGxzdORuZGlndCBQaWNvLWtvbXBhdGliZWwuIEzkcyBuYW5vcyBmcuVnb3Igb2NoXG4iCiN+ICJzdmFyIGb2ciBtZXIgaW5mb3JtYXRpb24gb20gZGVubmEg5G5kcmluZy4uLlxuIgojfiAiXG4iCiN+ICJUcnljayByZXR1ciBm9nIgYXR0IGZvcnRz5HR0YVxuIgoKI34gbXNnaWQgIkdlbmVyaWMgZXJyb3IiCiN+IG1zZ3N0ciAiQWxsbeRudCBmZWwiCgojfiBtc2dpZCAiUmVjZWl2ZWQgU0lHSFVQIG9yIFNJR1RFUk0iCiN+IG1zZ3N0ciAiTW90dG9nIFNJR0hVUCBlbGxlciBTSUdURVJNIgoKI34gbXNnaWQgImxpbmUgJWxkLyVsZCAoJWQlJSksIGNvbCAlbHUvJWx1ICglZCUlKSwgY2hhciAlbHUvJWx1ICglZCUlKSIKI34gbXNnc3RyICJyYWQgJWxkLyVsZCAoJWQlJSksIGtvbHVtbiAlbHUvJWx1ICglZCUlKSwgdGVja2VuICVsdS8lbHUgKCVkJSUpIgoKI34gbXNnaWQgImRlbGV0ZV9vcGVubm9kZSgpOiBmcmVlJ2QgYSBub2RlLCBZQVkhXG4iCiN+IG1zZ3N0ciAiZGVsZXRlX29wZW5ub2RlKCk6IGZyaWdqb3JkZSBlbiBub2QsIEpJUFBJIVxuIgoKI34gbXNnaWQgImRlbGV0ZV9vcGVubm9kZSgpOiBmcmVlJ2QgbGFzdCBub2RlLlxuIgojfiBtc2dzdHIgImRlbGV0ZV9vcGVubm9kZSgpOiBmcmlnam9yZGUgc2lzdGEgbm9kZW4uXG4iCgojfiBtc2dpZCAiQ2FuJ3QgdmlzaXQgcGFyZW50IGluIHJlc3RyaWN0ZWQgbW9kZSIKI34gbXNnc3RyICJLYW4gaW50ZSBiZXP2a2EgZvZy5GxkZXIgaSBiZWdy5G5zYXQgbORnZSIKCiN+IG1zZ2lkICItcCIKI34gbXNnc3RyICItcCIKCiN+IG1zZ2lkICItLXByZXNlcnZlIgojfiBtc2dzdHIgIi0tcHJlc2VydmUiCgojIFVSSyEgRmVscmFwcG9ydGVyYXQKI34gbXNnaWQgIiIKI34gIlxuIgojfiAiVGhlIC1wIGZsYWcgbm93IGludm9rZXMgdGhlIFBpY28gXCJwcmVzZXJ2ZVwiIGZsYWcuICBUaGUgUGljb1xuIgojfiBtc2dzdHIgIiIKI34gIlxuIgojfiAiRmxhZ2dhbiAtcCBzdGFydGFyIG51IFBpY29zIFwicHJlc2VydmVcIi1mbGFnZ2EuIFBpY29cbiIKCiN+IG1zZ2lkICJjb21wYXRpYmlsaXR5IGZsYWcgaGFzIGJlZW4gcmVtb3ZlZCBhcyBuYW5vIGlzIG5vdyBmdWxseSBQaWNvXG4iCiN+IG1zZ3N0ciAiIgojfiAia29tcGF0aWJpbGl0ZXRzZmxhZ2dhbiBoYXIgdGFnaXRzIGJvcnQgZWZ0ZXJzb20gbmFubyBudSDkciBmdWxsc3TkbmRpZ3QgIgojfiAiUGljb1xuIgoKI34gbXNnaWQgIiIKI34gImNvbXBhdGlibGUuICBQbGVhc2Ugc2VlIHRoZSBuYW5vIEZBUSBmb3IgbW9yZSBpbmZvIG9uIHRoaXMgY2hhbmdlLi4uXG4iCiN+ICJcbiIKI34gbXNnc3RyICIiCiN+ICJrb21wYXRpYmVsLiBM5HMgbmFub3MgZnLlZ29yIG9jaCBzdmFyIGb2ciBtZXIgaW5mb3JtYXRpb24gb20gZGVubmEgIgojfiAi5G5kcmluZy4uLlxuIgojfiAiXG4iCgojfiBtc2dpZCAiUHJlc3MgcmV0dXJuIHRvIGNvbnRpbnVlXG4iCiN+IG1zZ3N0ciAiVHJ5Y2sgcmV0dXIgZvZyIGF0dCBmb3J0c+R0dGFcbiIKCiN+IG1zZ2lkICJzdHJpbmcgdmFsPSVzXG4iCiN+IG1zZ3N0ciAic3Ry5G5nduRyZGU9JXNcbiIKCiN+IG1zZ2lkICJGb3IgZW5kIHBhcnQsIGJlZ2lubmluZyA9IFwiJXNcIlxuIgojfiBtc2dzdHIgIkb2ciBzbHV0ZGVsLCBi9nJqYW4gPSBcIiVzXCJcbiIKCiN+IG1zZ2lkICJjdXJyZW50LT5kYXRhID0gXCIlc1wiXG4iCiN+IG1zZ3N0ciAiY3VycmVudC0+ZGF0YSA9IFwiJXNcIlxuIgoKI34gbXNnaWQgImRvX2N1cnNvcnBvczogbGluZXBjdCA9ICVmLCBieXRlcGN0ID0gJWZcbiIKI34gbXNnc3RyICJkb19jdXJzb3Jwb3M6IGxpbmVwY3QgPSAlZiwgYnl0ZXBjdCA9ICVmXG4iCgojfiBtc2dpZCAicmVhZF9saW5lOiBub3Qgb24gZmlyc3QgbGluZSBhbmQgcHJldiBpcyBOVUxMIgojfiBtc2dzdHIgInJlYWRfbGluZTogaW50ZSBw5SBm9nJzdGEgcmFkZW4gb2NoIHByZXYg5HIgTlVMTCIKCiN+IG1zZ2lkICJQaWNvIG1vZGUiCiN+IG1zZ3N0ciAiUGljby1s5GdlIgoKI34gbXNnaWQgIkVtdWxhdGUgUGljbyBhcyBjbG9zZWx5IGFzIHBvc3NpYmxlIgojfiBtc2dzdHIgIkVtdWxlcmEgUGljbyBz5SB0cm9nZXQgc29tIG32amxpZ3QiCgojfiBtc2dpZCAiJ1wiKX1dPiIKI34gbXNnc3RyICInXCIpfV0+IgoKI34gbXNnaWQgIi4/ISIKI34gbXNnc3RyICIuPyEiCgojfiBtc2dpZCAiUmVwbGFjZWQgMSBvY2N1cnJlbmNlIgojfiBtc2dzdHIgIkVyc2F0dGUgMSBm9nJla29tc3QiCgojfiBtc2dpZCAiUmVwbGFjZSB3aXRoIFslc10iCiN+IG1zZ3N0ciAiRXJz5HR0IG1lZCBbJXNdIgoKI34gbXNnaWQgIm5hbm86IHJlYWxsb2M6IG91dCBvZiBtZW1vcnkhIgojfiBtc2dzdHIgIm5hbm86IHJlYWxsb2M6IHNsdXQgcOUgbWlubmUhIgoKI34gbXNnaWQgIm5hbm86IGNhbGxvYzogb3V0IG9mIG1lbW9yeSEiCiN+IG1zZ3N0ciAibmFubzogY2FsbG9jOiBzbHV0IHDlIG1pbm5lISIKCiN+IG1zZ2lkICJNYXRjaCEgKCVkIGNoYXJzKSBcIiVzXCJcbiIKI34gbXNnc3RyICJUcuRmZiEgKCVkIHRlY2tlbikgXCIlc1wiXG4iCgojfiBtc2dpZCAicGFpbnRsZW4gKCVkKSA9IGVvICglZCkgLSBzbyAoJWQpXG4iCiN+IG1zZ3N0ciAibeVsbmluZ3Ns5G5nZCAoJWQpID0gZW8gKCVkKSAtIHNvICglZClcbiIKCiN+IG1zZ2lkICJwYWludGxlbiAoJWQpID0gQ09MUyAoJWQpIC0gayAoJWQpLCAtIHJtLnNvICglZCkgLSAxXG4iCiN+IG1zZ3N0ciAibeVsbmluZ3Ns5G5nZCAoJWQpID0gS09MVU1ORVIgKCVkKSAtIGsgKCVkKSwgLSBybS5zbyAoJWQpIC0gMVxuIgoKI34gbXNnaWQgInN0YXJ0ID0gJWQsIHNtYXRjaCA9ICVkLCBlbWF0Y2ggPSAlZFxuIgojfiBtc2dzdHIgInN0YXJ0ID0gJWQsIHN0cuRmZiA9ICVkLCBldHLkZmYgPSAlZFxuIgoKI34gbXNnaWQgIkJhY2t3YXJkcyBzZWFyY2giCiN+IG1zZ3N0ciAiQmFrbORuZ2Vzc/ZrbmluZyIKCiN+IG1zZ2lkICJDYXNlIHNlbnNpdGl2ZSBzZWFyY2giCiN+IG1zZ3N0ciAiU2tpZnRs5Gdlc2vkbnNsaWcgc/ZrbmluZyIKCiN+IG1zZ2lkICJHb3RvIgojfiBtc2dzdHIgIkflIHRpbGwiCgojfiBtc2dpZCAiY2hlY2tfd3JhcCBjYWxsZWQgd2l0aCBpbnB0ci0+ZGF0YT1cIiVzXCJcbiIKI34gbXNnc3RyICJjaGVja193cmFwIGFucm9wYWRlcyBtZWQgaW5wdHItPmRhdGE9XCIlc1wiXG4iCgojfiBtc2dpZCAiIC1EIFx0XHQtLWRvc1x0XHRcdFdyaXRlIGZpbGUgaW4gRE9TIGZvcm1hdFxuIgojfiBtc2dzdHIgIiAtRCBcdFx0LS1kb3NcdFx0XHRTa3JpdiBmaWwgaSBET1MtZm9ybWF0XG4iCgojfiBtc2dpZCAiIC1GIFx0XHQtLW11bHRpYnVmZmVyXHRcdEVuYWJsZSBtdWx0aXBsZSBmaWxlIGJ1ZmZlcnNcbiIKI34gbXNnc3RyICIgLUYgXHRcdC0tbXVsdGlidWZmZXJcdFx0QW525G5kIGZsZXJhIGZpbGJ1ZmZlcnRhclxuIgoKI34gbXNnaWQgIiAtSyBcdFx0LS1rZXlwYWRcdFx0VXNlIGFsdGVybmF0ZSBrZXlwYWQgcm91dGluZXNcbiIKI34gbXNnc3RyICIgLUsgXHRcdC0ta2V5cGFkXHRcdEFuduRuZCBhbHRlcm5hdGl2YSB0YW5nZW50Ym9yZHNydXRpbmVyXG4iCgojfiBtc2dpZCAiIC1NIFx0XHQtLW1hY1x0XHRcdFdyaXRlIGZpbGUgaW4gTWFjIGZvcm1hdFxuIgojfiBtc2dzdHIgIiAtTSBcdFx0LS1tYWNcdFx0XHRTa3JpdiBmaWwgaSBNYWMtZm9ybWF0XG4iCgojfiBtc2dpZCAiIC1OIFx0XHQtLW5vY29udmVydFx0XHREb24ndCBjb252ZXJ0IGZpbGVzIGZyb20gRE9TL01hYyBmb3JtYXRcbiIKI34gbXNnc3RyICIgLU4gXHRcdC0tbm9jb252ZXJ0XHRcdEtvbnZlcnRlcmEgaW50ZSBmaWxlciBmcuVuIERPUy9NYWMtZm9ybWF0XG4iCgojfiBtc2dpZCAiIC1RIFtzdHJdXHQtLXF1b3Rlc3RyIFtzdHJdXHRRdW90aW5nIHN0cmluZywgZGVmYXVsdCBcIj4gXCJcbiIKI34gbXNnc3RyICIgLVEgW3N0cl1cdC0tcXVvdGVzdHIgW3N0cl1cdENpdGVyYXIgc3TkbmcsIHN0YW5kYXJkduRyZGUgXCI+IFwiXG4iCgojfiBtc2dpZCAiIC1TXHRcdC0tc21vb3RoXHRcdFNtb290aCBzY3JvbGxpbmdcbiIKI34gbXNnc3RyICIgLVNcdFx0LS1zbW9vdGhcdFx0TWp1ayBydWxsbmluZ1xuIgoKI34gbXNnaWQgIiAtVCBbbnVtXVx0LS10YWJzaXplPVtudW1dXHRcdFNldCB3aWR0aCBvZiBhIHRhYiB0byBudW1cbiIKI34gbXNnc3RyICIiCiN+ICIgLVQgW2FudGFsXVx0LS10YWJzaXplPVthbnRhbF1cdFx0U3TkbGwgaW4gYnJlZGRlbiBw5SBldHQgdGFiYnN0ZWcgdGlsbCAiCiN+ICJhbnRhbFxuIgoKI34gbXNnaWQgIiAtViBcdFx0LS12ZXJzaW9uXHRcdFByaW50IHZlcnNpb24gaW5mb3JtYXRpb24gYW5kIGV4aXRcbiIKI34gbXNnc3RyICIgLVYgXHRcdC0tdmVyc2lvblx0XHRTa3JpdiB1dCB2ZXJzaW9uc2luZm9ybWF0aW9uIG9jaCBhdnNsdXRhXG4iCgojfiBtc2dpZCAiIC1jIFx0XHQtLWNvbnN0XHRcdFx0Q29uc3RhbnRseSBzaG93IGN1cnNvciBwb3NpdGlvblxuIgojfiBtc2dzdHIgIiAtYyBcdFx0LS1jb25zdFx0XHRcdFZpc2EgbWFya/ZycG9zaXRpb24gaGVsYSB0aWRlblxuIgoKI34gbXNnaWQgIiAtaCBcdFx0LS1oZWxwXHRcdFx0U2hvdyB0aGlzIG1lc3NhZ2VcbiIKI34gbXNnc3RyICIgLWggXHRcdC0taGVscFx0XHRcdFZpc2EgZGV0dGEgbWVkZGVsYW5kZVxuIgoKI34gbXNnaWQgIiAtaSBcdFx0LS1hdXRvaW5kZW50XHRcdEF1dG9tYXRpY2FsbHkgaW5kZW50IG5ldyBsaW5lc1xuIgojfiBtc2dzdHIgIiAtaSBcdFx0LS1hdXRvaW5kZW50XHRcdERyYSBhdXRvbWF0aXNrdCBpbiBueWEgcmFkZXJcbiIKCiN+IG1zZ2lkICIgLWsgXHRcdC0tY3V0XHRcdFx0TGV0IF5LIGN1dCBmcm9tIGN1cnNvciB0byBlbmQgb2YgbGluZVxuIgojfiBtc2dzdHIgIiIKI34gIiAtayBcdFx0LS1jdXRcdFx0XHRM5XQgXksga2xpcHBhIHV0IGZy5W4gbWFya/ZyZW4gdGlsbCBzbHV0ZXQgcOUgcmFkZW5cbiIKCiN+IG1zZ2lkICIgLWwgXHRcdC0tbm9mb2xsb3dcdFx0RG9uJ3QgZm9sbG93IHN5bWJvbGljIGxpbmtzLCBvdmVyd3JpdGVcbiIKI34gbXNnc3RyICIgLWwgXHRcdC0tbm9mb2xsb3dcdFx0RvZsaiBpbnRlIHN5bWJvbGlza2EgbORua2FyLCBza3JpdiD2dmVyXG4iCgojfiBtc2dpZCAiIC1tIFx0XHQtLW1vdXNlXHRcdFx0RW5hYmxlIG1vdXNlXG4iCiN+IG1zZ3N0ciAiIC1tIFx0XHQtLW1vdXNlXHRcdFx0QW525G5kIG11c1xuIgoKI34gbXNnaWQgIiAtbyBbZGlyXSBcdC0tb3BlcmF0aW5nZGlyPVtkaXJdXHRTZXQgb3BlcmF0aW5nIGRpcmVjdG9yeVxuIgojfiBtc2dzdHIgIiAtbyBba2F0XSBcdC0tb3BlcmF0aW5nZGlyPVtrYXRdXHRTdORsbCBpbiBhcmJldHNrYXRhbG9nXG4iCgojfiBtc2dpZCAiIC1wIFx0XHQtLXBpY29cdFx0XHRFbXVsYXRlIFBpY28gYXMgY2xvc2VseSBhcyBwb3NzaWJsZVxuIgojfiBtc2dzdHIgIiAtcCBcdFx0LS1waWNvXHRcdFx0RW11bGVyYSBQaWNvIHPlIHRyb2dldCBzb20gbfZqbGlndFxuIgoKI34gbXNnaWQgIiIKI34gIiAtciBbI2NvbHNdIFx0LS1maWxsPVsjY29sc11cdFx0U2V0IGZpbGwgY29scyB0byAod3JhcCBsaW5lcyBhdCkgI2NvbHNcbiIKI34gbXNnc3RyICIgLXIgW3RlY2tlbl0gXHQtLWZpbGw9W3RlY2tlbl1cdFx0QnJ5dCByYWRlciBlZnRlciBhbnRhbCB0ZWNrZW5cbiIKCiN+IG1zZ2lkICIgLXMgW3Byb2ddIFx0LS1zcGVsbGVyPVtwcm9nXVx0RW5hYmxlIGFsdGVybmF0ZSBzcGVsbGVyXG4iCiN+IG1zZ3N0ciAiIgojfiAiIC1zIFtwcm9nXSBcdC0tc3BlbGxlcj1bcHJvZ11cdEFuduRuZCBhbHRlcm5hdGl2IHN0YXZuaW5nc2tvbnRyb2xsXG4iCgojfiBtc2dpZCAiIC10IFx0XHQtLXRlbXBmaWxlXHRcdEF1dG8gc2F2ZSBvbiBleGl0LCBkb24ndCBwcm9tcHRcbiIKI34gbXNnc3RyICIgLXQgXHRcdC0tdGVtcGZpbGVcdFx0U3BhcmEgYXV0b21hdGlza3QgdmlkIGF2c2x1dCwgZnLlZ2EgaW50ZVxuIgoKI34gbXNnaWQgIiAtdiBcdFx0LS12aWV3XHRcdFx0VmlldyAocmVhZCBvbmx5KSBtb2RlXG4iCiN+IG1zZ3N0ciAiIC12IFx0XHQtLXZpZXdcdFx0XHRWaXNuaW5nc2zkZ2UgKHNrcml2c2t5ZGRhdClcbiIKCiN+IG1zZ2lkICIgLXcgXHRcdC0tbm93cmFwXHRcdERvbid0IHdyYXAgbG9uZyBsaW5lc1xuIgojfiBtc2dzdHIgIiAtdyBcdFx0LS1ub3dyYXBcdFx0UmFkYnJ5dCBpbnRlIGzlbmdhIHJhZGVyXG4iCgojfiBtc2dpZCAiIC14IFx0XHQtLW5vaGVscFx0XHREb24ndCBzaG93IGhlbHAgd2luZG93XG4iCiN+IG1zZ3N0ciAiIC14IFx0XHQtLW5vaGVscFx0XHRWaXNhIGludGUgaGrkbHBm9m5zdGVyXG4iCgojfiBtc2dpZCAiIC16IFx0XHQtLXN1c3BlbmRcdFx0RW5hYmxlIHN1c3BlbmRcbiIKI34gbXNnc3RyICIgLXogXHRcdC0tc3VzcGVuZFx0XHRBbnbkbmQgc3VzcGVuZFxuIgoKI34gbXNnaWQgIiArTElORVx0XHRcdFx0XHRTdGFydCBhdCBsaW5lIG51bWJlciBMSU5FXG4iCiN+IG1zZ3N0ciAiICtSQURcdFx0XHRcdFx0U3RhcnRhIHZpZCByYWRudW1tZXIgUkFEXG4iCgojfiBtc2dpZCAiIC1EIFx0XHRXcml0ZSBmaWxlIGluIERPUyBmb3JtYXRcbiIKI34gbXNnc3RyICIgLUQgXHRcdFNrcml2IGZpbCBpIERPUy1mb3JtYXRcbiIKCiN+IG1zZ2lkICIgLU0gXHRcdFdyaXRlIGZpbGUgaW4gTWFjIGZvcm1hdFxuIgojfiBtc2dzdHIgIiAtTSBcdFx0U2tyaXYgZmlsIGkgTWFjLWZvcm1hdFxuIgoKI34gbXNnaWQgIiAtUlx0XHRVc2UgcmVndWxhciBleHByZXNzaW9ucyBmb3Igc2VhcmNoXG4iCiN+IG1zZ3N0ciAiIC1SXHRcdEFuduRuZCByZWd1bGrkcmEgdXR0cnljayBm9nIgc/ZrbmluZ1xuIgoKI34gbXNnaWQgIiAtU1x0XHRTbW9vdGggc2Nyb2xsaW5nXG4iCiN+IG1zZ3N0ciAiIC1TXHRcdE1qdWsgcnVsbG5pbmdcbiIKCiN+IG1zZ2lkICJQYXZlbCBDdXJ0aXMsIFpleWQgQmVuLUhhbGltIGFuZCBFcmljIFMuIFJheW1vbmQgZm9yIG5jdXJzZXMiCiN+IG1zZ3N0ciAiUGF2ZWwgQ3VydGlzLCBaZXlkIEJlbi1IYWxpbSBvY2ggRXJpYyBTLiBSYXltb25kIGb2ciBuY3Vyc2VzIgoKI34gbXNnaWQgIkZpbGUgYWxyZWFkeSBsb2FkZWQiCiN+IG1zZ3N0ciAiRmlsZW4g5HIgcmVkYW4gaW5s5HN0IgoKI34gbXNnaWQgIiAtUlx0XHQtLXJlZ2V4cFx0XHRVc2UgcmVndWxhciBleHByZXNzaW9ucyBmb3Igc2VhcmNoXG4iCiN+IG1zZ3N0ciAiIC1SXHRcdC0tcmVnZXhwXHRcdEFuduRuZCByZWd1bGrkcmEgdXR0cnljayBm9nIgc/ZrbmluZ1xuIgoKIyBEZW5uYSBpZGlvdGlza2EgbWVkZGVsYW5kZWtvbnN0cnVrdGlvbiDkciBmZWxyYXBwb3J0ZXJhZAojfiBtc2dpZCAiV3JpdGUiCiN+IG1zZ3N0ciAiU2tyaXYiCgojfiBtc2dpZCAiQmFja3dhcmQiCiN+IG1zZ3N0ciAiQmFr5XQiCgojIEphLCBkZW5uYSBpZGlvdGlza2EgbWVkZGVsYW5kZWtvbnN0cnVrdGlvbiDkciBmZWxyYXBwb3J0ZXJhZAojfiBtc2dpZCAiUmVnZXhwICIKI34gbXNnc3RyICJyZWd1bGrkciB1dHRyeWNrcyIKCiN+IG1zZ2lkICJDYXNlIFNlbnNpdGl2ZSBSZWdleHAgU2VhcmNoJXMlcyIKI34gbXNnc3RyICJTa2lmdGzkZ2Vza+Ruc2xpZyBz9mtuaW5nIG1lZCByZWd1bGrkcmEgdXR0cnljayVzJXMiCgojfiBtc2dpZCAiUmVnZXhwIFNlYXJjaCVzJXMiCiN+IG1zZ3N0ciAiU/ZrbmluZyBtZWQgcmVndWxq5HJhIHV0dHJ5Y2slcyVzIgoKI34gbXNnaWQgIk9ubHkgJWQgbGluZXMgYXZhaWxhYmxlLCBza2lwcGluZyB0byBsYXN0IGxpbmUiCiN+IG1zZ3N0ciAiRW5kYXN0ICVkIHJhZGVyIORyIHRpbGxn5G5nbGlnYSwgaG9wcGFyIHRpbGwgc2lzdGEgcmFkZW4iCgojfiBtc2dpZCAiWE9GRiBpZ25vcmVkLiIKI34gbXNnc3RyICJYT0ZGIGlnbm9yZXJhZGVzLiIKCiN+IG1zZ2lkICJSZWNlaXZlZCBTSUdIVVAiCiN+IG1zZ3N0ciAiTW90dG9nIFNJR0hVUCIKCiN+IG1zZ2lkICJSZWNlaXZlZCBTSUdURVJNIgojfiBtc2dzdHIgIk1vdHRvZyBTSUdURVJNIgo=