IyBAKCMpIFN3ZWRpc2ggbWVzc2FnZXMgdjEuMTUgZm9yIG1ha2UgMy43OS4xCiMgQ29weXJpZ2h0IChDKSAyMDAyIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgojIFRvbWFzIEdyYWRpbiA8dGdAZGYubHRoLnNlPiwgMTk5Ni0yMDAyLgojCm1zZ2lkICIiCm1zZ3N0ciAiIgoiUHJvamVjdC1JZC1WZXJzaW9uOiBtYWtlIDMuNzkuMVxuIgoiUmVwb3J0LU1zZ2lkLUJ1Z3MtVG86IGJ1Zy1tYWtlQGdudS5vcmdcbiIKIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDA2LTA0LTAxIDAxOjQwLTA1MDBcbiIKIlBPLVJldmlzaW9uLURhdGU6IDIwMDItMDgtMDIgMTQ6MjgrMDIwMFxuIgoiTGFzdC1UcmFuc2xhdG9yOiBUb21hcyBHcmFkaW4gPHRnQGRmLmx0aC5zZT5cbiIKIkxhbmd1YWdlLVRlYW06IFN3ZWRpc2ggPHN2QGxpLm9yZz5cbiIKIk1JTUUtVmVyc2lvbjogMS4wXG4iCiJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4NTktMVxuIgoiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgoKIzogYXIuYzo1MwojLCBjLWZvcm1hdAptc2dpZCAiYXR0ZW1wdCB0byB1c2UgdW5zdXBwb3J0ZWQgZmVhdHVyZTogYCVzJyIKbXNnc3RyICJm9nJz9msgYXR0IGFuduRuZGEgZW4gZnVua3Rpb24gc29tIGludGUgc3T2ZHM6IFwiJXNcIiIKCiM6IGFyLmM6MTM3Cm1zZ2lkICJ0b3VjaCBhcmNoaXZlIG1lbWJlciBpcyBub3QgYXZhaWxhYmxlIG9uIFZNUyIKbXNnc3RyICJueWRhdGVyaW5nIGF2IGFya2l2bWVkbGVtIORyIGludGUgdGlsbGfkbmdsaWd0IGkgVk1TIgoKIzogYXIuYzoxNjgKIywgYy1mb3JtYXQKbXNnaWQgInRvdWNoOiBBcmNoaXZlIGAlcycgZG9lcyBub3QgZXhpc3QiCm1zZ3N0ciAibnlkYXRlcmE6IEFya2l2ZXQgXCIlc1wiIGZpbm5zIGludGUiCgojOiBhci5jOjE3MQojLCBjLWZvcm1hdAptc2dpZCAidG91Y2g6IGAlcycgaXMgbm90IGEgdmFsaWQgYXJjaGl2ZSIKbXNnc3RyICJueWRhdGVyYTogXCIlc1wiIORyIGludGUgbuVnb3QgZ2lsdGlndCBhcmtpdiIKCiM6IGFyLmM6MTc4CiMsIGMtZm9ybWF0Cm1zZ2lkICJ0b3VjaDogTWVtYmVyIGAlcycgZG9lcyBub3QgZXhpc3QgaW4gYCVzJyIKbXNnc3RyICJueWRhdGVyYTogbWVkbGVtbWVuIFwiJXNcIiBmaW5ucyBpbnRlIGkgXCIlc1wiIgoKIzogYXIuYzoxODUKIywgYy1mb3JtYXQKbXNnaWQgInRvdWNoOiBCYWQgcmV0dXJuIGNvZGUgZnJvbSBhcl9tZW1iZXJfdG91Y2ggb24gYCVzJyIKbXNnc3RyICJueWRhdGVyYTogRmVsYWt0aWcgcmV0dXJrb2QgZnLlbiBhcl9tZW1iZXJfdG91Y2ggcOUgXCIlc1wiIgoKIzogYXJzY2FuLmM6NjkKIywgYy1mb3JtYXQKbXNnaWQgImxiciRzZXRfbW9kdWxlIGZhaWxlZCB0byBleHRyYWN0IG1vZHVsZSBpbmZvLCBzdGF0dXMgPSAlZCIKbXNnc3RyICIiCiJsYnIkc2V0X21vZHVsZSBtaXNzbHlja2FkZXMgbWVkIGF0dCBleHRyYWhlcmEgbW9kdWxpbmZvcm1hdGlvbiwgc3RhdHVzID0gJWQiCgojOiBhcnNjYW4uYzoxNTQKIywgYy1mb3JtYXQKbXNnaWQgImxiciRpbmlfY29udHJvbCBmYWlsZWQgd2l0aCBzdGF0dXMgPSAlZCIKbXNnc3RyICJsYnIkaW5pX2NvbnRyb2wgbWlzc2x5Y2thZGVzIG9jaCBnYXYgc3RhdHVzID0gJWQiCgojOiBhcnNjYW4uYzoxNjUKIywgYy1mb3JtYXQKbXNnaWQgInVuYWJsZSB0byBvcGVuIGxpYnJhcnkgYCVzJyB0byBsb29rdXAgbWVtYmVyIGAlcyciCm1zZ3N0ciAia2FuIGludGUg9nBwbmEgYmlibGlvdGVrZXQgXCIlc1wiIGb2ciBhdHQgc2zlIHVwcCBtZWRsZW1tZW4gXCIlc1wiIgoKIzogYXJzY2FuLmM6ODI1CiMsIGMtZm9ybWF0Cm1zZ2lkICJNZW1iZXIgYCVzJyVzOiAlbGQgYnl0ZXMgYXQgJWxkICglbGQpLlxuIgptc2dzdHIgIk1lZGxlbSBcIiVzXCIlczogJWxkIGJ5dGUgdmlkICVsZCAoJWxkKS5cbiIKCiM6IGFyc2Nhbi5jOjgyNgptc2dpZCAiIChuYW1lIG1pZ2h0IGJlIHRydW5jYXRlZCkiCm1zZ3N0ciAiIChuYW1uZXQga2FuIHZhcmEgYXZrb3J0YXQpIgoKIzogYXJzY2FuLmM6ODI4CiMsIGMtZm9ybWF0Cm1zZ2lkICIgIERhdGUgJXMiCm1zZ3N0ciAiICBEYXR1bSAlcyIKCiM6IGFyc2Nhbi5jOjgyOQojLCBjLWZvcm1hdAptc2dpZCAiICB1aWQgPSAlZCwgZ2lkID0gJWQsIG1vZGUgPSAwJW8uXG4iCm1zZ3N0ciAiICB1aWQgPSAlZCwgZ2lkID0gJWQsIGZsYWdnb3IgPSAwJW8uXG4iCgojOiBjb21tYW5kcy5jOjQyMgptc2dpZCAiKioqIEJyZWFrLlxuIgptc2dzdHIgIioqKiBBdmJyb3R0LlxuIgoKIzogY29tbWFuZHMuYzo1NDUKIywgYy1mb3JtYXQKbXNnaWQgIioqKiBbJXNdIEFyY2hpdmUgbWVtYmVyIGAlcycgbWF5IGJlIGJvZ3VzOyBub3QgZGVsZXRlZCIKbXNnc3RyICIqKiogWyVzXSBBcmtpdm1lZGxlbW1lbiBcIiVzXCIga2FuIHZhcmEgZmVsYWt0aWc7IGVqIGJvcnR0YWdlbiIKCiM6IGNvbW1hbmRzLmM6NTQ4CiMsIGMtZm9ybWF0Cm1zZ2lkICIqKiogQXJjaGl2ZSBtZW1iZXIgYCVzJyBtYXkgYmUgYm9ndXM7IG5vdCBkZWxldGVkIgptc2dzdHIgIioqKiBBcmtpdm1lZGxlbW1lbiBcIiVzXCIga2FuIHZhcmEgZmVsYWt0aWc7IGVqIGJvcnR0YWdlbiIKCiM6IGNvbW1hbmRzLmM6NTYxCiMsIGMtZm9ybWF0Cm1zZ2lkICIqKiogWyVzXSBEZWxldGluZyBmaWxlIGAlcyciCm1zZ3N0ciAiKioqIFslc10gVGFyIGJvcnQgZmlsZW4gXCIlc1wiIgoKIzogY29tbWFuZHMuYzo1NjMKIywgYy1mb3JtYXQKbXNnaWQgIioqKiBEZWxldGluZyBmaWxlIGAlcyciCm1zZ3N0ciAiKioqIFRhciBib3J0IGZpbGVuIFwiJXNcIiIKCiM6IGNvbW1hbmRzLmM6NTk5Cm1zZ2lkICIjICBjb21tYW5kcyB0byBleGVjdXRlIgptc2dzdHIgIiMgIGtvbW1hbmRvbiBhdHQgdXRm9nJhIgoKIzogY29tbWFuZHMuYzo2MDIKbXNnaWQgIiAoYnVpbHQtaW4pOiIKbXNnc3RyICIgKGluYnlnZ2QpOiIKCiM6IGNvbW1hbmRzLmM6NjA0CiMsIGMtZm9ybWF0Cm1zZ2lkICIgKGZyb20gYCVzJywgbGluZSAlbHUpOlxuIgptc2dzdHIgIiAoZnLlbiBcIiVzXCIsIHJhZCAlbHUpOlxuIgoKIzogZGlyLmM6OTgzCm1zZ2lkICIiCiJcbiIKIiMgRGlyZWN0b3JpZXNcbiIKbXNnc3RyICIiCiJcbiIKIiMgS2F0YWxvZ2VyXG4iCgojOiBkaXIuYzo5OTUKIywgYy1mb3JtYXQKbXNnaWQgIiMgJXM6IGNvdWxkIG5vdCBiZSBzdGF0J2QuXG4iCm1zZ3N0ciAiIyAlczoga3VuZGUgaW50ZSB0YSBzdGF0dXMuXG4iCgojOiBkaXIuYzo5OTkKIywgYy1mb3JtYXQKbXNnaWQgIiMgJXMgKGtleSAlcywgbXRpbWUgJWQpOiBjb3VsZCBub3QgYmUgb3BlbmVkLlxuIgptc2dzdHIgIiMgJXMgKG55Y2tlbCAlcywgbXRpZCAlZCk6IGt1bmRlIGludGUg9nBwbmFzLlxuIgoKIzogZGlyLmM6MTAwMwojLCBjLWZvcm1hdAptc2dpZCAiIyAlcyAoZGV2aWNlICVkLCBpbm9kZSBbJWQsJWQsJWRdKTogY291bGQgbm90IGJlIG9wZW5lZC5cbiIKbXNnc3RyICIjICVzIChlbmhldCAlZCwgaW5vZCBbJWQsJWQsJWRdKToga3VuZGUgaW50ZSD2cHBuYXMuXG4iCgojOiBkaXIuYzoxMDA4CiMsIGMtZm9ybWF0Cm1zZ2lkICIjICVzIChkZXZpY2UgJWxkLCBpbm9kZSAlbGQpOiBjb3VsZCBub3QgYmUgb3BlbmVkLlxuIgptc2dzdHIgIiMgJXMgKGVuaGV0ICVsZCwgaW5vZCAlbGQpOiBrdW5kZSBpbnRlIPZwcG5hcy5cbiIKCiM6IGRpci5jOjEwMzUKIywgYy1mb3JtYXQKbXNnaWQgIiMgJXMgKGtleSAlcywgbXRpbWUgJWQpOiAiCm1zZ3N0ciAiIyAlcyAobnlja2VsICVzLCBtdGlkICVkKTogIgoKIzogZGlyLmM6MTAzOQojLCBjLWZvcm1hdAptc2dpZCAiIyAlcyAoZGV2aWNlICVkLCBpbm9kZSBbJWQsJWQsJWRdKTogIgptc2dzdHIgIiMgJXMgKGVuaGV0ICVkLCBpbm9kIFslZCwlZCwlZF0pOiAiCgojOiBkaXIuYzoxMDQ0CiMsIGMtZm9ybWF0Cm1zZ2lkICIjICVzIChkZXZpY2UgJWxkLCBpbm9kZSAlbGQpOiAiCm1zZ3N0ciAiIyAlcyAoZW5oZXQgJWxkLCBpbm9kICVsZCk6ICIKCiM6IGRpci5jOjEwNTAgZGlyLmM6MTA3MQptc2dpZCAiTm8iCm1zZ3N0ciAiSW5nYSIKCiM6IGRpci5jOjEwNTMgZGlyLmM6MTA3NAptc2dpZCAiIGZpbGVzLCAiCm1zZ3N0ciAiIGZpbGVyLCAiCgojOiBkaXIuYzoxMDU1IGRpci5jOjEwNzYKbXNnaWQgIm5vIgptc2dzdHIgImluZ2EiCgojOiBkaXIuYzoxMDU4Cm1zZ2lkICIgaW1wb3NzaWJpbGl0aWVzIgptc2dzdHIgIiBvbfZqbGlnaGV0ZXIiCgojOiBkaXIuYzoxMDYyCm1zZ2lkICIgc28gZmFyLiIKbXNnc3RyICIgaGl0dGlsbHMuIgoKIzogZGlyLmM6MTA3OQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiBpbXBvc3NpYmlsaXRpZXMgaW4gJWx1IGRpcmVjdG9yaWVzLlxuIgptc2dzdHIgIiBvbfZqbGlnaGV0ZXIgaSAldSBrYXRhbG9nZXIuXG4iCgojOiBleHBhbmQuYzoxMjgKIywgYy1mb3JtYXQKbXNnaWQgIlJlY3Vyc2l2ZSB2YXJpYWJsZSBgJXMnIHJlZmVyZW5jZXMgaXRzZWxmIChldmVudHVhbGx5KSIKbXNnc3RyICJEZW4gcmVrdXJzaXZhIHZhcmlhYmVsbiBcIiVzXCIgaORudmlzYXIgdGlsbCBzaWcgc2rkbHYgKHPlIHNt5W5pbmdvbSkiCgojOiBleHBhbmQuYzoyNjYKbXNnaWQgInVudGVybWluYXRlZCB2YXJpYWJsZSByZWZlcmVuY2UiCm1zZ3N0ciAib2F2c2x1dGFkIHZhcmlhYmVscmVmZXJlbnMiCgojOiBmaWxlLmM6MjcwCiMsIGMtZm9ybWF0Cm1zZ2lkICJDb21tYW5kcyB3ZXJlIHNwZWNpZmllZCBmb3IgZmlsZSBgJXMnIGF0ICVzOiVsdSwiCm1zZ3N0ciAiS29tbWFuZG9uIGFuZ2F2cyBm9nIgZmlsZW4gXCIlc1wiIHDlICVzOiVsdSwiCgojOiBmaWxlLmM6Mjc1CiMsIGMtZm9ybWF0Cm1zZ2lkICJDb21tYW5kcyBmb3IgZmlsZSBgJXMnIHdlcmUgZm91bmQgYnkgaW1wbGljaXQgcnVsZSBzZWFyY2gsIgptc2dzdHIgIktvbW1hbmRvbiBm9nIgZmlsZW4gXCIlc1wiIGhpdHRhZGVzIGdlbm9tIHP2a25pbmcgbWVkIGltcGxpY2l0IHJlZ2VsLCIKCiM6IGZpbGUuYzoyNzgKIywgYy1mb3JtYXQKbXNnaWQgImJ1dCBgJXMnIGlzIG5vdyBjb25zaWRlcmVkIHRoZSBzYW1lIGZpbGUgYXMgYCVzJy4iCm1zZ3N0ciAibWVuIFwiJXNcIiBhbnNlcyBudSB2YXJhIHNhbW1hIGZpbCBzb20gXCIlc1wiLiIKCiM6IGZpbGUuYzoyODEKIywgYy1mb3JtYXQKbXNnaWQgIkNvbW1hbmRzIGZvciBgJXMnIHdpbGwgYmUgaWdub3JlZCBpbiBmYXZvciBvZiB0aG9zZSBmb3IgYCVzJy4iCm1zZ3N0ciAiIgoiS29tbWVyIGF0dCBib3J0c2UgZnLlbiBrb21tYW5kb24gZvZyIFwiJXNcIiB0aWxsIGb2cm3lbiBm9nIgZGVtIHNvbSBn5GxsZXIgIgoiXCIlc1wiLiIKCiM6IGZpbGUuYzozMDEKIywgYy1mb3JtYXQKbXNnaWQgImNhbid0IHJlbmFtZSBzaW5nbGUtY29sb24gYCVzJyB0byBkb3VibGUtY29sb24gYCVzJyIKbXNnc3RyICJrYW4gaW50ZSDkbmRyYSBuYW1uIGZy5W4gZW5rZWxrb2xvbiBcIiVzXCIgdGlsbCBkdWJiZWxrb2xvbiBcIiVzXCIiCgojOiBmaWxlLmM6MzA2CiMsIGMtZm9ybWF0Cm1zZ2lkICJjYW4ndCByZW5hbWUgZG91YmxlLWNvbG9uIGAlcycgdG8gc2luZ2xlLWNvbG9uIGAlcyciCm1zZ3N0ciAia2FuIGludGUg5G5kcmEgbmFtbiBmcuVuIGR1YmJlbGtvbG9uIFwiJXNcIiB0aWxsIGVua2Vsa29sb24gXCIlc1wiIgoKIzogZmlsZS5jOjM4MQojLCBjLWZvcm1hdAptc2dpZCAiKioqIERlbGV0aW5nIGludGVybWVkaWF0ZSBmaWxlIGAlcyciCm1zZ3N0ciAiKioqIFRhciBib3J0IPZ2ZXJn5W5nc2ZpbGVuIFwiJXNcIiIKCiM6IGZpbGUuYzozODUKIywgZnV6enkKbXNnaWQgIlJlbW92aW5nIGludGVybWVkaWF0ZSBmaWxlcy4uLlxuIgptc2dzdHIgIioqKiBUYXIgYm9ydCD2dmVyZ+VuZ3NmaWxlbiBcIiVzXCIiCgojOiBmaWxlLmM6NzgxCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogVGltZXN0YW1wIG91dCBvZiByYW5nZTsgc3Vic3RpdHV0aW5nICVzIgptc2dzdHIgIiVzOiBUaWRzduRyZGUgdXRhbmb2ciBncuRuc2VyOyBlcnPkdHRlciBtZWQgJXMiCgojOiBmaWxlLmM6NzgyCm1zZ2lkICJDdXJyZW50IHRpbWUiCm1zZ3N0ciAiTnV2YXJhbmRlIHRpZCIKCiM6IGZpbGUuYzo4ODEKbXNnaWQgIiMgTm90IGEgdGFyZ2V0OiIKbXNnc3RyICIjIEludGUgZXR0IG3lbDoiCgojOiBmaWxlLmM6OTAzCm1zZ2lkICIjICBQcmVjaW91cyBmaWxlIChwcmVyZXF1aXNpdGUgb2YgLlBSRUNJT1VTKS4iCm1zZ3N0ciAiIyAgVuRyZGVmdWxsIGZpbCAobvZkduRuZGlnIGb2ciAuUFJFQ0lPVVMpLiIKCiM6IGZpbGUuYzo5MDUKbXNnaWQgIiMgIFBob255IHRhcmdldCAocHJlcmVxdWlzaXRlIG9mIC5QSE9OWSkuIgptc2dzdHIgIiMgIEzldHNhc23lbCAobvZkduRuZGlnIGb2ciAuUEhPTlkpLiIKCiM6IGZpbGUuYzo5MDcKbXNnaWQgIiMgIENvbW1hbmQtbGluZSB0YXJnZXQuIgptc2dzdHIgIiMgIEtvbW1hbmRvcmFkc23lbC4iCgojOiBmaWxlLmM6OTA5CiMsIGZ1enp5Cm1zZ2lkICIjICBBIGRlZmF1bHQsIE1BS0VGSUxFUywgb3IgLWluY2x1ZGUvc2luY2x1ZGUgbWFrZWZpbGUuIgptc2dzdHIgIiMgIEVuIHN0YW5kYXJkbWFrZWZpbCAoZWxsZXIgZW5saWd0IE1BS0VGSUxFUykuIgoKIzogZmlsZS5jOjkxMQptc2dpZCAiIyAgSW1wbGljaXQgcnVsZSBzZWFyY2ggaGFzIGJlZW4gZG9uZS4iCm1zZ3N0ciAiIyAgSW1wbGljaXQgcmVnZWxz9mtuaW5nIGhhciBnZW5vbWb2cnRzLiIKCiM6IGZpbGUuYzo5MTIKbXNnaWQgIiMgIEltcGxpY2l0IHJ1bGUgc2VhcmNoIGhhcyBub3QgYmVlbiBkb25lLiIKbXNnc3RyICIjICBJbXBsaWNpdCByZWdlbHP2a25pbmcgaGFyIGludGUgZ2Vub21m9nJ0cy4iCgojOiBmaWxlLmM6OTE0CiMsIGMtZm9ybWF0Cm1zZ2lkICIjICBJbXBsaWNpdC9zdGF0aWMgcGF0dGVybiBzdGVtOiBgJXMnXG4iCm1zZ3N0ciAiIyAgSW1wbGljaXQvc3RhdGlzayBt9m5zdGVyc3RhbTogXCIlc1wiXG4iCgojOiBmaWxlLmM6OTE2Cm1zZ2lkICIjICBGaWxlIGlzIGFuIGludGVybWVkaWF0ZSBwcmVyZXF1aXNpdGUuIgptc2dzdHIgIiMgIEZpbGVuIORyIGV0dCD2dmVyZ+VlbmRlIGJlcm9lbmRlLiIKCiM6IGZpbGUuYzo5MTkKbXNnaWQgIiMgIEFsc28gbWFrZXM6Igptc2dzdHIgIiMgIFNrYXBhciBvY2tz5ToiCgojOiBmaWxlLmM6OTI1Cm1zZ2lkICIjICBNb2RpZmljYXRpb24gdGltZSBuZXZlciBjaGVja2VkLiIKbXNnc3RyICIjICDEbmRyaW5nc3RpZGVuIGhhciBpbnRlIGtvbnRyb2xsZXJhdHMuIgoKIzogZmlsZS5jOjkyNwptc2dpZCAiIyAgRmlsZSBkb2VzIG5vdCBleGlzdC4iCm1zZ3N0ciAiIyAgRmlsZW4gZmlubnMgaW50ZS4iCgojOiBmaWxlLmM6OTI5Cm1zZ2lkICIjICBGaWxlIGlzIHZlcnkgb2xkLiIKbXNnc3RyICIjICBGaWxlbiDkciBteWNrZXQgZ2FtbWFsLiIKCiM6IGZpbGUuYzo5MzQKIywgYy1mb3JtYXQKbXNnaWQgIiMgIExhc3QgbW9kaWZpZWQgJXNcbiIKbXNnc3RyICIjICBTZW5hc3Qg5G5kcmFkICVzXG4iCgojOiBmaWxlLmM6OTM3Cm1zZ2lkICIjICBGaWxlIGhhcyBiZWVuIHVwZGF0ZWQuIgptc2dzdHIgIiMgIEZpbGVuIGhhciB1cHBkYXRlcmF0cy4iCgojOiBmaWxlLmM6OTM3Cm1zZ2lkICIjICBGaWxlIGhhcyBub3QgYmVlbiB1cGRhdGVkLiIKbXNnc3RyICIjICBGaWxlbiBoYXIgaW50ZSB1cHBkYXRlcmF0cy4iCgojOiBmaWxlLmM6OTQxCm1zZ2lkICIjICBDb21tYW5kcyBjdXJyZW50bHkgcnVubmluZyAoVEhJUyBJUyBBIEJVRykuIgptc2dzdHIgIiMgIEtvbW1hbmRva/ZybmluZyBw5WflciAoREVUVEEgxFIgRVRUIEZFTCkuIgoKIzogZmlsZS5jOjk0NAptc2dpZCAiIyAgRGVwZW5kZW5jaWVzIGNvbW1hbmRzIHJ1bm5pbmcgKFRISVMgSVMgQSBCVUcpLiIKbXNnc3RyICIjICBCZXJvZW5kZWtvbW1hbmRvbiBr9nJzIChERVRUQSDEUiBFVFQgRkVMKS4iCgojOiBmaWxlLmM6OTUzCm1zZ2lkICIjICBTdWNjZXNzZnVsbHkgdXBkYXRlZC4iCm1zZ3N0ciAiIyAgVXBwZGF0ZXJpbmdlbiBseWNrYWRlcy4iCgojOiBmaWxlLmM6OTU3Cm1zZ2lkICIjICBOZWVkcyB0byBiZSB1cGRhdGVkICgtcSBpcyBzZXQpLiIKbXNnc3RyICIjICBCZWj2dmVyIHVwcGRhdGVyYXMgKC1xIGhhciBhbmdpdml0cykuIgoKIzogZmlsZS5jOjk2MAptc2dpZCAiIyAgRmFpbGVkIHRvIGJlIHVwZGF0ZWQuIgptc2dzdHIgIiMgIFVwcGRhdGVyaW5nZW4gbWlzc2x5Y2thZGVzLiIKCiM6IGZpbGUuYzo5NjMKbXNnaWQgIiMgIEludmFsaWQgdmFsdWUgaW4gYHVwZGF0ZV9zdGF0dXMnIG1lbWJlciEiCm1zZ3N0ciAiIyAgT2dpbHRpZ3QgduRyZGUgaSBtZWRsZW0gYXYgXCJ1cGRhdGVfc3RhdHVzXCIhIgoKIzogZmlsZS5jOjk3MAptc2dpZCAiIyAgSW52YWxpZCB2YWx1ZSBpbiBgY29tbWFuZF9zdGF0ZScgbWVtYmVyISIKbXNnc3RyICIjICBPZ2lsdGlndCB25HJkZSBpIG1lZGxlbSBhdiBcImNvbW1hbmRfc3RhdGVcIiEiCgojOiBmaWxlLmM6OTg5Cm1zZ2lkICIiCiJcbiIKIiMgRmlsZXMiCm1zZ3N0ciAiIgoiXG4iCiIjIEZpbGVyIgoKIzogZmlsZS5jOjk5Mwptc2dpZCAiIgoiXG4iCiIjIGZpbGVzIGhhc2gtdGFibGUgc3RhdHM6XG4iCiIjICIKbXNnc3RyICIiCgojOiBmdW5jdGlvbi5jOjc1OQptc2dpZCAibm9uLW51bWVyaWMgZmlyc3QgYXJndW1lbnQgdG8gYHdvcmQnIGZ1bmN0aW9uIgptc2dzdHIgImlja2UtbnVtZXJpc2t0IGb2cnN0YSBhcmd1bWVudCB0aWxsIGZ1bmt0aW9uZW4gXCJ3b3JkXCIiCgojOiBmdW5jdGlvbi5jOjc2NAptc2dpZCAiZmlyc3QgYXJndW1lbnQgdG8gYHdvcmQnIGZ1bmN0aW9uIG11c3QgYmUgZ3JlYXRlciB0aGFuIDAiCm1zZ3N0ciAiZGV0IGb2cnN0YSBhcmd1bWVudGV0IHRpbGwgZnVua3Rpb25lbiBcIndvcmRcIiBt5XN0ZSB2YXJhIHN09nJyZSDkbiAwIgoKIzogZnVuY3Rpb24uYzo3ODUKbXNnaWQgIm5vbi1udW1lcmljIGZpcnN0IGFyZ3VtZW50IHRvIGB3b3JkbGlzdCcgZnVuY3Rpb24iCm1zZ3N0ciAiaWNrZS1udW1lcmlza3QgZvZyc3RhIGFyZ3VtZW50IHRpbGwgZnVua3Rpb25lbiBcIndvcmRsaXN0XCIiCgojOiBmdW5jdGlvbi5jOjc4Nwptc2dpZCAibm9uLW51bWVyaWMgc2Vjb25kIGFyZ3VtZW50IHRvIGB3b3JkbGlzdCcgZnVuY3Rpb24iCm1zZ3N0ciAiaWNrZS1udW1lcmlza3QgYW5kcmEgYXJndW1lbnQgdGlsbCBmdW5rdGlvbmVuIFwid29yZGxpc3RcIiIKCiM6IGZ1bmN0aW9uLmM6MTQ1MwojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgImNyZWF0ZV9jaGlsZF9wcm9jZXNzOiBEdXBsaWNhdGVIYW5kbGUoSW4pIGZhaWxlZCAoZT0lbGQpXG4iCm1zZ3N0ciAiY3JlYXRlX2NoaWxkX3Byb2Nlc3M6IER1cGxpY2F0ZUhhbmRsZShJbikgbWlzc2x5Y2thZGVzIChlPSVkKVxuIgoKIzogZnVuY3Rpb24uYzoxNDY0CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiY3JlYXRlX2NoaWxkX3Byb2Nlc3M6IER1cGxpY2F0ZUhhbmRsZShFcnIpIGZhaWxlZCAoZT0lbGQpXG4iCm1zZ3N0ciAiY3JlYXRlX2NoaWxkX3Byb2Nlc3M6IER1cGxpY2F0ZUhhbmRsZShGZWwpIG1pc3NseWNrYWRlcyAoZT0lZClcbiIKCiM6IGZ1bmN0aW9uLmM6MTQ2OQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIkNyZWF0ZVBpcGUoKSBmYWlsZWQgKGU9JWxkKVxuIgptc2dzdHIgIkNyZWF0ZVBpcGUoKSBtaXNzbHlja2FkZXMgKGU9JWQpXG4iCgojOiBmdW5jdGlvbi5jOjE0NzQKbXNnaWQgIndpbmRvd3MzMl9vcGVucGlwZSAoKTogcHJvY2Vzc19pbml0X2ZkKCkgZmFpbGVkXG4iCm1zZ3N0ciAid2luZG93czMyX29wZW5waXBlICgpOiBwcm9jZXNzX2luaXRfZmQoKSBtaXNzbHlja2FkZXNcbiIKCiM6IGZ1bmN0aW9uLmM6MTcyNQojLCBjLWZvcm1hdAptc2dpZCAiQ2xlYW5pbmcgdXAgdGVtcG9yYXJ5IGJhdGNoIGZpbGUgJXNcbiIKbXNnc3RyICJTdORkYXIgYm9ydCB0aWxsZuRsbGlnIG9tZ+VuZ3NmaWwgJXNcbiIKCiM6IGZ1bmN0aW9uLmM6MjEwMQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgImluc3VmZmljaWVudCBudW1iZXIgb2YgYXJndW1lbnRzICglZCkgdG8gZnVuY3Rpb24gYCVzJyIKbXNnc3RyICJPdGlsbHLkY2tsaWd0IGFudGFsIGFyZ3VtZW50ICglZCkgdGlsbCBmdW5rdGlvbmVuIFwiJXNcIiIKCiM6IGZ1bmN0aW9uLmM6MjExMwojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgInVuaW1wbGVtZW50ZWQgb24gdGhpcyBwbGF0Zm9ybTogZnVuY3Rpb24gYCVzJyIKbXNnc3RyICJFaiBpbXBsZW1lbnRlcmF0IHDlIGRlbm5hIHBsYXR0Zm9ybTogZnVua3Rpb25lbiBcIiVzXCIiCgojOiBmdW5jdGlvbi5jOjIxNjMKIywgYy1mb3JtYXQKbXNnaWQgInVudGVybWluYXRlZCBjYWxsIHRvIGZ1bmN0aW9uIGAlcyc6IG1pc3NpbmcgYCVjJyIKbXNnc3RyICJvYXZzbHV0YXQgZnVua3Rpb25zYW5yb3AgXCIlc1wiOiBcIiVjXCIgc2FrbmFzIgoKIzogZ2V0b3B0LmM6NjYzCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogb3B0aW9uIGAlcycgaXMgYW1iaWd1b3VzXG4iCm1zZ3N0ciAiJXM6IGZsYWdnYW4gXCIlc1wiIORyIHR2ZXR5ZGlnXG4iCgojOiBnZXRvcHQuYzo2ODcKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBvcHRpb24gYC0tJXMnIGRvZXNuJ3QgYWxsb3cgYW4gYXJndW1lbnRcbiIKbXNnc3RyICIlczogZmxhZ2dhbiBcIi0tJXNcIiB0YXIgaW5nZXQgYXJndW1lbnRcbiIKCiM6IGdldG9wdC5jOjY5MgojLCBjLWZvcm1hdAptc2dpZCAiJXM6IG9wdGlvbiBgJWMlcycgZG9lc24ndCBhbGxvdyBhbiBhcmd1bWVudFxuIgptc2dzdHIgIiVzOiBmbGFnZ2FuIFwiJWMlc1wiIHRhciBpbmdldCBhcmd1bWVudFxuIgoKIzogZ2V0b3B0LmM6NzA5IGdldG9wdC5jOjg4MgojLCBjLWZvcm1hdAptc2dpZCAiJXM6IG9wdGlvbiBgJXMnIHJlcXVpcmVzIGFuIGFyZ3VtZW50XG4iCm1zZ3N0ciAiJXM6IGZsYWdnYW4gXCIlc1wiIGty5HZlciBldHQgYXJndW1lbnRcbiIKCiM6IGdldG9wdC5jOjczOAojLCBjLWZvcm1hdAptc2dpZCAiJXM6IHVucmVjb2duaXplZCBvcHRpb24gYC0tJXMnXG4iCm1zZ3N0ciAiJXM6IG9r5G5kIGZsYWdnYSBcIi0tJXNcIlxuIgoKIzogZ2V0b3B0LmM6NzQyCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogdW5yZWNvZ25pemVkIG9wdGlvbiBgJWMlcydcbiIKbXNnc3RyICIlczogb2vkbmQgZmxhZ2dhIFwiJWMlc1wiXG4iCgojOiBnZXRvcHQuYzo3NjgKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBpbGxlZ2FsIG9wdGlvbiAtLSAlY1xuIgptc2dzdHIgIiVzOiBvdGlsbOV0ZW4gZmxhZ2dhIC0tICVjXG4iCgojOiBnZXRvcHQuYzo3NzEKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBpbnZhbGlkIG9wdGlvbiAtLSAlY1xuIgptc2dzdHIgIiVzOiBvZ2lsdGlnIGZsYWdnYSAtLSAlY1xuIgoKIzogZ2V0b3B0LmM6ODAxIGdldG9wdC5jOjkzMQojLCBjLWZvcm1hdAptc2dpZCAiJXM6IG9wdGlvbiByZXF1aXJlcyBhbiBhcmd1bWVudCAtLSAlY1xuIgptc2dzdHIgIiVzOiBmbGFnZ2FuIGty5HZlciBldHQgYXJndW1lbnQgLS0gJWNcbiIKCiM6IGdldG9wdC5jOjg0OAojLCBjLWZvcm1hdAptc2dpZCAiJXM6IG9wdGlvbiBgLVcgJXMnIGlzIGFtYmlndW91c1xuIgptc2dzdHIgIiVzOiBmbGFnZ2FuIFwiLVcgJXNcIiDkciB0dmV0eWRpZ1xuIgoKIzogZ2V0b3B0LmM6ODY2CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogb3B0aW9uIGAtVyAlcycgZG9lc24ndCBhbGxvdyBhbiBhcmd1bWVudFxuIgptc2dzdHIgIiVzOiBmbGFnZ2FuIFwiLVcgJXNcIiB0YXIgaW5nZXQgYXJndW1lbnRcbiIKCiM6IGhhc2guYzo1MQojLCBjLWZvcm1hdAptc2dpZCAiY2FuJ3QgYWxsb2NhdGUgJWxkIGJ5dGVzIGZvciBoYXNoIHRhYmxlOiBtZW1vcnkgZXhoYXVzdGVkIgptc2dzdHIgIiIKCiM6IGhhc2guYzoyODIKIywgYy1mb3JtYXQKbXNnaWQgIkxvYWQ9JWxkLyVsZD0lLjBmJSUsICIKbXNnc3RyICIiCgojOiBoYXNoLmM6Mjg0CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWhhc2g9JWQsICIKbXNnc3RyICIiCgojOiBoYXNoLmM6Mjg1CiMsIGMtZm9ybWF0Cm1zZ2lkICJDb2xsaXNpb25zPSVsZC8lbGQ9JS4wZiUlIgptc2dzdHIgIiIKCiM6IGltcGxpY2l0LmM6NDEKIywgYy1mb3JtYXQKbXNnaWQgIkxvb2tpbmcgZm9yIGFuIGltcGxpY2l0IHJ1bGUgZm9yIGAlcycuXG4iCm1zZ3N0ciAiTGV0YXIgZWZ0ZXIgZW4gaW1wbGljaXQgcmVnZWwgZvZyIFwiJXNcIi5cbiIKCiM6IGltcGxpY2l0LmM6NTcKIywgYy1mb3JtYXQKbXNnaWQgIkxvb2tpbmcgZm9yIGFyY2hpdmUtbWVtYmVyIGltcGxpY2l0IHJ1bGUgZm9yIGAlcycuXG4iCm1zZ3N0ciAiTGV0YXIgZWZ0ZXIgZW4gaW1wbGljaXQgcmVnZWwgZvZyIGFya2l2bWVkbGVtbWVuIFwiJXNcIi5cbiIKCiM6IGltcGxpY2l0LmM6MzE5Cm1zZ2lkICJBdm9pZGluZyBpbXBsaWNpdCBydWxlIHJlY3Vyc2lvbi5cbiIKbXNnc3RyICJVbmR2aWtlciByZWt1cnNpb24gb3JzYWthZCBhdiBpbXBsaWNpdCByZWdlbC5cbiIKCiM6IGltcGxpY2l0LmM6NDc2CiMsIGMtZm9ybWF0Cm1zZ2lkICJUcnlpbmcgcGF0dGVybiBydWxlIHdpdGggc3RlbSBgJS4qcycuXG4iCm1zZ3N0ciAiUHL2dmFyIG32bnN0ZXJyZWdlbCBtZWQgc3RhbW1lbiBcIiUuKnNcIi5cbiIKCiM6IGltcGxpY2l0LmM6NjY3CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWplY3RpbmcgaW1wb3NzaWJsZSBpbXBsaWNpdCBwcmVyZXF1aXNpdGUgYCVzJy5cbiIKbXNnc3RyICJBdnZpc2FyIGRldCBvbfZqbGlnYSBpbXBsaWNpdGEgYmVyb2VuZGV0IFwiJXNcIi5cbiIKCiM6IGltcGxpY2l0LmM6NjY4CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWplY3RpbmcgaW1wb3NzaWJsZSBydWxlIHByZXJlcXVpc2l0ZSBgJXMnLlxuIgptc2dzdHIgIkF2dmlzYXIgZGV0IG9t9mpsaWdhIHJlZ2VsYmFzZXJhZGUgYmVyb2VuZGV0IFwiJXNcIi5cbiIKCiM6IGltcGxpY2l0LmM6Njc4CiMsIGMtZm9ybWF0Cm1zZ2lkICJUcnlpbmcgaW1wbGljaXQgcHJlcmVxdWlzaXRlIGAlcycuXG4iCm1zZ3N0ciAiUHL2dmFyIGRldCBpbXBsaWNpdGEgYmVyb2VuZGV0IFwiJXNcIi5cbiIKCiM6IGltcGxpY2l0LmM6Njc5CiMsIGMtZm9ybWF0Cm1zZ2lkICJUcnlpbmcgcnVsZSBwcmVyZXF1aXNpdGUgYCVzJy5cbiIKbXNnc3RyICJQcvZ2YXIgZGV0IHJlZ2VsYmFzZXJhZGUgYmVyb2VuZGV0IFwiJXNcIi5cbiIKCiM6IGltcGxpY2l0LmM6NzEwCiMsIGMtZm9ybWF0Cm1zZ2lkICJGb3VuZCBwcmVyZXF1aXNpdGUgYCVzJyBhcyBWUEFUSCBgJXMnXG4iCm1zZ3N0ciAiSGl0dGFkZSBkZW4gbvZkduRuZGlnYSBcIiVzXCIgc29tIFZQQVRIIFwiJXNcIlxuIgoKIzogaW1wbGljaXQuYzo3MzAKIywgYy1mb3JtYXQKbXNnaWQgIkxvb2tpbmcgZm9yIGEgcnVsZSB3aXRoIGludGVybWVkaWF0ZSBmaWxlIGAlcycuXG4iCm1zZ3N0ciAiTGV0YXIgZWZ0ZXIgZW4gcmVnZWwgbWVkIPZ2ZXJn5W5nc2ZpbGVuIFwiJXNcIi5cbiIKCiM6IGpvYi5jOjMyMQojLCBmdXp6eQptc2dpZCAiQ2Fubm90IGNyZWF0ZSBhIHRlbXBvcmFyeSBmaWxlXG4iCm1zZ3N0ciAiZndyaXRlICh0aWxsZuRsbGlnIGZpbCkiCgojOiBqb2IuYzozODgKIywgYy1mb3JtYXQKbXNnaWQgIioqKiBbJXNdIEVycm9yIDB4JXggKGlnbm9yZWQpIgptc2dzdHIgIioqKiBbJXNdIEZlbCAweCV4IChpZ25vcmVyYXMpIgoKIzogam9iLmM6Mzg5CiMsIGMtZm9ybWF0Cm1zZ2lkICIqKiogWyVzXSBFcnJvciAweCV4Igptc2dzdHIgIioqKiBbJXNdIEZlbCAweCV4IgoKIzogam9iLmM6MzkzCiMsIGMtZm9ybWF0Cm1zZ2lkICJbJXNdIEVycm9yICVkIChpZ25vcmVkKSIKbXNnc3RyICJbJXNdIEZlbCAlZCAoaWdub3JlcmFzKSIKCiM6IGpvYi5jOjM5NAojLCBjLWZvcm1hdAptc2dpZCAiKioqIFslc10gRXJyb3IgJWQiCm1zZ3N0ciAiKioqIFslc10gRmVsICVkIgoKIzogam9iLmM6Mzk5Cm1zZ2lkICIgKGNvcmUgZHVtcGVkKSIKbXNnc3RyICIgKG1pbm5lc2R1bXApIgoKIzogam9iLmM6NDg4Cm1zZ2lkICIqKiogV2FpdGluZyBmb3IgdW5maW5pc2hlZCBqb2JzLi4uLiIKbXNnc3RyICIqKiogSW525G50YXIgb2F2c2x1dGFkZSBqb2JiLi4uIgoKIzogam9iLmM6NTE4CiMsIGMtZm9ybWF0Cm1zZ2lkICJMaXZlIGNoaWxkIDB4JTA4bHggKCVzKSBQSUQgJWxkICVzXG4iCm1zZ3N0ciAiTGV2YW5kZSBiYXJucHJvY2VzcyAweCUwOGx4ICglcykgUElEICVsZCAlc1xuIgoKIzogam9iLmM6NTIwIGpvYi5jOjcwMSBqb2IuYzo4MDQgam9iLmM6MTQ1Nwptc2dpZCAiIChyZW1vdGUpIgptc2dzdHIgIiAoZmrkcnIpIgoKIzogam9iLmM6Njk4CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWFwaW5nIGxvc2luZyBjaGlsZCAweCUwOGx4IFBJRCAlbGQgJXNcbiIKbXNnc3RyICJJbmj2c3RhciBtaXNzbHlja2FkIGJhcm5wcm9jZXNzOiAweCUwOGx4IFBJRCAlbGQgJXNcbiIKCiM6IGpvYi5jOjY5OQojLCBjLWZvcm1hdAptc2dpZCAiUmVhcGluZyB3aW5uaW5nIGNoaWxkIDB4JTA4bHggUElEICVsZCAlc1xuIgptc2dzdHIgIkluaPZzdGFyIGx5Y2thZCBiYXJucHJvY2VzczogMHglMDhseCBQSUQgJWxkICVzXG4iCgojOiBqb2IuYzo3MDQKIywgYy1mb3JtYXQKbXNnaWQgIkNsZWFuaW5nIHVwIHRlbXAgYmF0Y2ggZmlsZSAlc1xuIgptc2dzdHIgIlN05GRhciBib3J0IHRpbGxm5GxsaWcgb21n5W5nc2ZpbCAlc1xuIgoKIzogam9iLmM6ODAyCiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiUmVtb3ZpbmcgY2hpbGQgMHglMDhseCBQSUQgJWxkJXMgZnJvbSBjaGFpbi5cbiIKbXNnc3RyICJUYXIgYm9ydCBiYXJucHJvY2Vzc2VuIDB4JTA4bHggUElEICVsZCAlcyBmcuVuIGtlZGphbi5cbiIKCiM6IGpvYi5jOjg2Mgptc2dpZCAid3JpdGUgam9ic2VydmVyIgptc2dzdHIgInNrcml2ZXIgdGlsbCBqb2Jic2VydmVyIgoKIzogam9iLmM6ODY0CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWxlYXNlZCB0b2tlbiBmb3IgY2hpbGQgMHglMDhseCAoJXMpLlxuIgptc2dzdHIgIkZyaWdqb3JkZSBzeW1ib2wgZvZyIGJhcm5wcm9jZXNzZW4gMHglMDhseCAoJXMpLlxuIgoKIzogam9iLmM6MTM4MwojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgInByb2Nlc3NfZWFzeSgpIGZhaWxlZCB0byBsYXVuY2ggcHJvY2VzcyAoZT0lbGQpXG4iCm1zZ3N0ciAicHJvY2Vzc19lYXN5KCkgbWlzc2x5Y2thZGVzIG1lZCBwcm9jZXNzdGFydCAoZT0lZClcbiIKCiM6IGpvYi5jOjEzODcgam9iLmM6MjAyMAojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJDb3VudGVkICVkIGFyZ3MgaW4gZmFpbGVkIGxhdW5jaFxuIgptc2dzdHIgIiIKIlxuIgoiUuRrbmFkZSB0aWxsICVkIGFyZ3VtZW50IHZpZCBtaXNzbHlja2FkIHN0YXJ0XG4iCgojOiBqb2IuYzoxNDU1CiMsIGMtZm9ybWF0Cm1zZ2lkICJQdXR0aW5nIGNoaWxkIDB4JTA4bHggKCVzKSBQSUQgJWxkJXMgb24gdGhlIGNoYWluLlxuIgptc2dzdHIgIkb2ciB1cHAgYmFybnByb2Nlc3NlbiAweCUwOGx4ICglcykgUElEICVsZCVzIHDlIGtlZGphbi5cbiIKCiM6IGpvYi5jOjE3MDkKIywgYy1mb3JtYXQKbXNnaWQgIk9idGFpbmVkIHRva2VuIGZvciBjaGlsZCAweCUwOGx4ICglcykuXG4iCm1zZ3N0ciAiRXJo9mxsIHN5bWJvbCBm9nIgYmFybnByb2Nlc3NlbiAweCUwOGx4ICglcykuXG4iCgojOiBqb2IuYzoxNzE4Cm1zZ2lkICJyZWFkIGpvYnMgcGlwZSIKbXNnc3RyICJs5HNlciBmcuVuIGpvYmJsZWRuaW5nIgoKIzogam9iLmM6MTgzMgptc2dpZCAiY2Fubm90IGVuZm9yY2UgbG9hZCBsaW1pdHMgb24gdGhpcyBvcGVyYXRpbmcgc3lzdGVtIgptc2dzdHIgImthbiBpbnRlIHVwcHLkdHRo5WxsYSBsYXN0YmVncuRuc25pbmdhciBpIGRldHRhIG9wZXJhdGl2c3lzdGVtIgoKIzogam9iLmM6MTgzNAptc2dpZCAiY2Fubm90IGVuZm9yY2UgbG9hZCBsaW1pdDogIgptc2dzdHIgImthbiBpbnRlIHVwcHLkdHRo5WxsYSBsYXN0YmVncuRuc25pbmc6ICIKCiM6IGpvYi5jOjE5MDcKbXNnaWQgIm5vIG1vcmUgZmlsZSBoYW5kbGVzOiBjb3VsZCBub3QgZHVwbGljYXRlIHN0ZGluXG4iCm1zZ3N0ciAiIgoKIzogam9iLmM6MTkwOQptc2dpZCAibm8gbW9yZSBmaWxlIGhhbmRsZXM6IGNvdWxkIG5vdCBkdXBsaWNhdGUgc3Rkb3V0XG4iCm1zZ3N0ciAiIgoKIzogam9iLmM6MTkzNwptc2dpZCAiQ291bGQgbm90IHJlc3RvcmUgc3RkaW5cbiIKbXNnc3RyICIiCgojOiBqb2IuYzoxOTQ1Cm1zZ2lkICJDb3VsZCBub3QgcmVzdG9yZSBzdGRvdXRcbiIKbXNnc3RyICIiCgojOiBqb2IuYzoyMDE2CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAicHJvY2Vzc19lYXN5KCkgZmFpbGVkIGZhaWxlZCB0byBsYXVuY2ggcHJvY2VzcyAoZT0lbGQpXG4iCm1zZ3N0ciAicHJvY2Vzc19lYXN5KCkgbWlzc2x5Y2thZGVzIG1lZCBwcm9jZXNzdGFydCAoZT0lZClcbiIKCiM6IGpvYi5jOjIwNDYKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICJtYWtlIHJlYXBlZCBjaGlsZCBwaWQgJWxkLCBzdGlsbCB3YWl0aW5nIGZvciBwaWQgJWxkXG4iCm1zZ3N0ciAibWFrZSBpbmj2c3RhZGUgYmFybnByb2Nlc3NlbiBwaWQgJWQsIGluduRudGFyIHBpZCAlZFxuIgoKIzogam9iLmM6MjA4NQojLCBjLWZvcm1hdAptc2dpZCAiJXM6IENvbW1hbmQgbm90IGZvdW5kIgptc2dzdHIgIiVzOiBLb21tYW5kb3QgaGl0dGFkZXMgaW50ZSIKCiM6IGpvYi5jOjIxNDUKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBTaGVsbCBwcm9ncmFtIG5vdCBmb3VuZCIKbXNnc3RyICIlczogU2thbHByb2dyYW1tZXQgaGl0dGFkZXMgaW50ZSIKCiM6IGpvYi5jOjIxNTQKbXNnaWQgInNwYXdudnBlOiBlbnZpcm9ubWVudCBzcGFjZSBtaWdodCBiZSBleGhhdXN0ZWQiCm1zZ3N0ciAiIgoKIzogam9iLmM6MjM2MwojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiRTSEVMTCBjaGFuZ2VkICh3YXMgYCVzJywgbm93IGAlcycpXG4iCm1zZ3N0ciAiJFNIRUxMIORuZHJhZGVzICh2YXIgXCIlc1wiLCDkciBudSBcIiVzXCIpIgoKIzogam9iLmM6Mjc4OQojLCBjLWZvcm1hdAptc2dpZCAiQ3JlYXRpbmcgdGVtcG9yYXJ5IGJhdGNoIGZpbGUgJXNcbiIKbXNnc3RyICJTa2FwYXIgdGlsbGbkbGxpZyBvbWflbmdzZmlsICVzXG4iCgojOiBqb2IuYzoyOTAyCiMsIGMtZm9ybWF0Cm1zZ2lkICIlcyAobGluZSAlZCkgQmFkIHNoZWxsIGNvbnRleHQgKCF1bml4eSAmJiAhYmF0Y2hfbW9kZV9zaGVsbClcbiIKbXNnc3RyICIlcyAocmFkICVkKSBGZWxha3RpZ3Qgc2thbHNhbW1hbmhhbmcgKCF1bml4eSAmJiAhYmF0Y2hfbW9kZV9zaGVsbClcbiIKCiM6IG1haW4uYzoyOTEKbXNnaWQgIk9wdGlvbnM6XG4iCm1zZ3N0ciAiRmxhZ2dvcjpcbiIKCiM6IG1haW4uYzoyOTIKIywgZnV6enkKbXNnaWQgIiAgLWIsIC1tICAgICAgICAgICAgICAgICAgICAgIElnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkuXG4iCm1zZ3N0ciAiSWdub3JlcmFzIGF2IGtvbXBhdGliaWxpdGV0c3Nr5GwiCgojOiBtYWluLmM6Mjk0Cm1zZ2lkICIgIC1CLCAtLWFsd2F5cy1tYWtlICAgICAgICAgICBVbmNvbmRpdGlvbmFsbHkgbWFrZSBhbGwgdGFyZ2V0cy5cbiIKbXNnc3RyICIiCgojOiBtYWluLmM6Mjk2Cm1zZ2lkICIiCiIgIC1DIERJUkVDVE9SWSwgLS1kaXJlY3Rvcnk9RElSRUNUT1JZXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFuZ2UgdG8gRElSRUNUT1JZIGJlZm9yZSBkb2luZyBhbnl0aGluZy5cbiIKbXNnc3RyICIiCgojOiBtYWluLmM6Mjk5CiMsIGZ1enp5Cm1zZ2lkICIgIC1kICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBsb3RzIG9mIGRlYnVnZ2luZyBpbmZvcm1hdGlvbi5cbiIKbXNnc3RyICJTa3JpdiB1dCBtYXNzb3IgYXYgZmVsc/ZrbmluZ3NpbmZvcm1hdGlvbiIKCiM6IG1haW4uYzozMDEKIywgZnV6enkKbXNnaWQgIiIKIiAgLS1kZWJ1Z1s9RkxBR1NdICAgICAgICAgICAgIFByaW50IHZhcmlvdXMgdHlwZXMgb2YgZGVidWdnaW5nIGluZm9ybWF0aW9uLlxuIgptc2dzdHIgIlNrcml2IHV0IG9saWthIHNvcnRlcnMgZmVsc/ZrbmluZ3NpbmZvcm1hdGlvbiIKCiM6IG1haW4uYzozMDMKbXNnaWQgIiIKIiAgLWUsIC0tZW52aXJvbm1lbnQtb3ZlcnJpZGVzXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbnZpcm9ubWVudCB2YXJpYWJsZXMgb3ZlcnJpZGUgbWFrZWZpbGVzLlxuIgptc2dzdHIgIiIKCiM6IG1haW4uYzozMDYKbXNnaWQgIiIKIiAgLWYgRklMRSwgLS1maWxlPUZJTEUsIC0tbWFrZWZpbGU9RklMRVxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVhZCBGSUxFIGFzIGEgbWFrZWZpbGUuXG4iCm1zZ3N0ciAiIgoKIzogbWFpbi5jOjMwOQojLCBmdXp6eQptc2dpZCAiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgICAgUHJpbnQgdGhpcyBtZXNzYWdlIGFuZCBleGl0LlxuIgptc2dzdHIgIlNrcml2IHV0IGRldHRhIG1lZGRlbGFuZGUgb2NoIGF2c2x1dGEiCgojOiBtYWluLmM6MzExCiMsIGZ1enp5Cm1zZ2lkICIgIC1pLCAtLWlnbm9yZS1lcnJvcnMgICAgICAgICBJZ25vcmUgZXJyb3JzIGZyb20gY29tbWFuZHMuXG4iCm1zZ3N0ciAiSWdub3JlcmEga29tbWFuZG9mZWwiCgojOiBtYWluLmM6MzEzCm1zZ2lkICIiCiIgIC1JIERJUkVDVE9SWSwgLS1pbmNsdWRlLWRpcj1ESVJFQ1RPUllcbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlYXJjaCBESVJFQ1RPUlkgZm9yIGluY2x1ZGVkIG1ha2VmaWxlcy5cbiIKbXNnc3RyICIiCgojOiBtYWluLmM6MzE2CiMsIGZ1enp5Cm1zZ2lkICIiCiIgIC1qIFtOXSwgLS1qb2JzWz1OXSAgICAgICAgICBBbGxvdyBOIGpvYnMgYXQgb25jZTsgaW5maW5pdGUgam9icyB3aXRoIG5vICIKImFyZy5cbiIKbXNnc3RyICJUaWxs5XQgTiBzYW10aWRpZ2Egam9iYjsgb+RuZGxpZ3QgbeVuZ2Egb20gaW5nZXQgYW50YWwgYW5nZXMiCgojOiBtYWluLmM6MzE4CiMsIGZ1enp5Cm1zZ2lkICIiCiIgIC1rLCAtLWtlZXAtZ29pbmcgICAgICAgICAgICBLZWVwIGdvaW5nIHdoZW4gc29tZSB0YXJnZXRzIGNhbid0IGJlIG1hZGUuXG4iCm1zZ3N0ciAiRm9ydHPkdHQg5HZlbiBvbSB2aXNzYSBt5WwgaW50ZSBrYW4gc2thcGFzIgoKIzogbWFpbi5jOjMyMAptc2dpZCAiIgoiICAtbCBbTl0sIC0tbG9hZC1hdmVyYWdlWz1OXSwgLS1tYXgtbG9hZFs9Tl1cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERvbid0IHN0YXJ0IG11bHRpcGxlIGpvYnMgdW5sZXNzIGxvYWQgaXMgYmVsb3cgIgoiTi5cbiIKbXNnc3RyICIiCgojOiBtYWluLmM6MzIzCm1zZ2lkICIiCiIgIC1MLCAtLWNoZWNrLXN5bWxpbmstdGltZXMgICBVc2UgdGhlIGxhdGVzdCBtdGltZSBiZXR3ZWVuIHN5bWxpbmtzIGFuZCAiCiJ0YXJnZXQuXG4iCm1zZ3N0ciAiIgoKIzogbWFpbi5jOjMyNQptc2dpZCAiIgoiICAtbiwgLS1qdXN0LXByaW50LCAtLWRyeS1ydW4sIC0tcmVjb25cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERvbid0IGFjdHVhbGx5IHJ1biBhbnkgY29tbWFuZHM7IGp1c3QgcHJpbnQgIgoidGhlbS5cbiIKbXNnc3RyICIiCgojOiBtYWluLmM6MzI4Cm1zZ2lkICIiCiIgIC1vIEZJTEUsIC0tb2xkLWZpbGU9RklMRSwgLS1hc3N1bWUtb2xkPUZJTEVcbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbnNpZGVyIEZJTEUgdG8gYmUgdmVyeSBvbGQgYW5kIGRvbid0IHJlbWFrZSAiCiJpdC5cbiIKbXNnc3RyICIiCgojOiBtYWluLmM6MzMxCiMsIGZ1enp5Cm1zZ2lkICIgIC1wLCAtLXByaW50LWRhdGEtYmFzZSAgICAgICBQcmludCBtYWtlJ3MgaW50ZXJuYWwgZGF0YWJhc2UuXG4iCm1zZ3N0ciAiU2tyaXYgdXQgbWFrZXMgaW50ZXJuYSBkYXRhYmFzIgoKIzogbWFpbi5jOjMzMwojLCBmdXp6eQptc2dpZCAiIgoiICAtcSwgLS1xdWVzdGlvbiAgICAgICAgICAgICAgUnVuIG5vIGNvbW1hbmRzOyBleGl0IHN0YXR1cyBzYXlzIGlmIHVwIHRvICIKImRhdGUuXG4iCm1zZ3N0ciAiS/ZyIGluZ2Ega29tbWFuZG9uOyBzbHV0c3RhdHVzIHZpc2FyIGbkcnNraGV0ZW4iCgojOiBtYWluLmM6MzM1CiMsIGZ1enp5Cm1zZ2lkICIgIC1yLCAtLW5vLWJ1aWx0aW4tcnVsZXMgICAgICBEaXNhYmxlIHRoZSBidWlsdC1pbiBpbXBsaWNpdCBydWxlcy5cbiIKbXNnc3RyICJJbmFrdGl2ZXJhIGRlIGluYnlnZ2RhIGltcGxpY2l0YSByZWdsZXJuYSIKCiM6IG1haW4uYzozMzcKIywgZnV6enkKbXNnaWQgIiAgLVIsIC0tbm8tYnVpbHRpbi12YXJpYWJsZXMgIERpc2FibGUgdGhlIGJ1aWx0LWluIHZhcmlhYmxlIHNldHRpbmdzLlxuIgptc2dzdHIgIkluYWt0aXZlcmEgZGUgaW5ieWdnZGEgdmFyaWFiZWxpbnN05GxsbmluZ2FybmEiCgojOiBtYWluLmM6MzM5Cm1zZ2lkICIgIC1zLCAtLXNpbGVudCwgLS1xdWlldCAgICAgICBEb24ndCBlY2hvIGNvbW1hbmRzLlxuIgptc2dzdHIgIiIKCiM6IG1haW4uYzozNDEKbXNnaWQgIiIKIiAgLVMsIC0tbm8ta2VlcC1nb2luZywgLS1zdG9wXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUdXJucyBvZmYgLWsuXG4iCm1zZ3N0ciAiIgoKIzogbWFpbi5jOjM0NAojLCBmdXp6eQptc2dpZCAiICAtdCwgLS10b3VjaCAgICAgICAgICAgICAgICAgVG91Y2ggdGFyZ2V0cyBpbnN0ZWFkIG9mIHJlbWFraW5nIHRoZW0uXG4iCm1zZ3N0ciAiTnlkYXRlcmEgbeVsIGkgc3TkbGxldCBm9nIgYXR0IOV0ZXJza2FwYSBkZW0iCgojOiBtYWluLmM6MzQ2CiMsIGZ1enp5Cm1zZ2lkICIiCiIgIC12LCAtLXZlcnNpb24gICAgICAgICAgICAgICBQcmludCB0aGUgdmVyc2lvbiBudW1iZXIgb2YgbWFrZSBhbmQgZXhpdC5cbiIKbXNnc3RyICJTa3JpdiB1dCBtYWtlcyB2ZXJzaW9uc251bW1lciBvY2ggYXZzbHV0YSIKCiM6IG1haW4uYzozNDgKIywgZnV6enkKbXNnaWQgIiAgLXcsIC0tcHJpbnQtZGlyZWN0b3J5ICAgICAgIFByaW50IHRoZSBjdXJyZW50IGRpcmVjdG9yeS5cbiIKbXNnc3RyICJTa3JpdiB1dCBha3R1ZWxsIGthdGFsb2ciCgojOiBtYWluLmM6MzUwCiMsIGZ1enp5Cm1zZ2lkICIiCiIgIC0tbm8tcHJpbnQtZGlyZWN0b3J5ICAgICAgICBUdXJuIG9mZiAtdywgZXZlbiBpZiBpdCB3YXMgdHVybmVkIG9uICIKImltcGxpY2l0bHkuXG4iCm1zZ3N0ciAiU3TkbmcgYXYgLXcsIOR2ZW4gb20gZGV0IORyIGltcGxpY2l0IHDlc2xhZ2V0IgoKIzogbWFpbi5jOjM1Mgptc2dpZCAiIgoiICAtVyBGSUxFLCAtLXdoYXQtaWY9RklMRSwgLS1uZXctZmlsZT1GSUxFLCAtLWFzc3VtZS1uZXc9RklMRVxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uc2lkZXIgRklMRSB0byBiZSBpbmZpbml0ZWx5IG5ldy5cbiIKbXNnc3RyICIiCgojOiBtYWluLmM6MzU1CiMsIGZ1enp5Cm1zZ2lkICIiCiIgIC0td2Fybi11bmRlZmluZWQtdmFyaWFibGVzICBXYXJuIHdoZW4gYW4gdW5kZWZpbmVkIHZhcmlhYmxlIGlzICIKInJlZmVyZW5jZWQuXG4iCm1zZ3N0ciAiVmFybmEgdmlkIGFuduRuZG5pbmcgYXYgZW4gb2RlZmluaWVyYWQgdmFyaWFiZWwiCgojOiBtYWluLmM6NTQ5Cm1zZ2lkICJlbXB0eSBzdHJpbmcgaW52YWxpZCBhcyBmaWxlIG5hbWUiCm1zZ3N0ciAiZW4gdG9tIHN0cuRuZyDkciBldHQgb2dpbHRpZ3QgZmlsbmFtbiIKCiM6IG1haW4uYzo2MzAKIywgYy1mb3JtYXQKbXNnaWQgInVua25vd24gZGVidWcgbGV2ZWwgc3BlY2lmaWNhdGlvbiBgJXMnIgptc2dzdHIgIm9r5G5kIGZlbHP2a25pbmdzbml25SBcIiVzXCIgYW5naXZlbiIKCiM6IG1haW4uYzo2NzAKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIlczogSW50ZXJydXB0L0V4Y2VwdGlvbiBjYXVnaHQgKGNvZGUgPSAweCVseCwgYWRkciA9IDB4JWx4KVxuIgptc2dzdHIgIiVzOiBBdmJyb3R0L1VuZGFudGFnIGblbmdhdCAoa29kID0gMHgleCwgYWRyZXNzID0gMHgleClcbiIKCiM6IG1haW4uYzo2NzcKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIlVuaGFuZGxlZCBleGNlcHRpb24gZmlsdGVyIGNhbGxlZCBmcm9tIHByb2dyYW0gJXNcbiIKIkV4Y2VwdGlvbkNvZGUgPSAlbHhcbiIKIkV4Y2VwdGlvbkZsYWdzID0gJWx4XG4iCiJFeGNlcHRpb25BZGRyZXNzID0gJWx4XG4iCm1zZ3N0ciAiIgoiXG4iCiJFdHQgb2hhbnRlcmF0IHVuZGFudGFnc2ZpbHRlciBhbnJvcGFkZXMgZnLlbiBwcm9ncmFtbWV0ICVzXG4iCiJVbmRhbnRhZ3Nrb2QgPSAleFxuIgoiVW5kYW50YWdzZmxhZ2dvciA9ICV4XG4iCiJVbmRhbnRhZ3NhZHJlc3MgPSAleFxuIgoKIzogbWFpbi5jOjY4NQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIkFjY2VzcyB2aW9sYXRpb246IHdyaXRlIG9wZXJhdGlvbiBhdCBhZGRyZXNzICVseFxuIgptc2dzdHIgIsV0a29tc3Rm9nJzZWVsc2U6IHNrcml2aW5zdHJ1a3Rpb24gcOUgYWRyZXNzZW4gJXhcbiIKCiM6IG1haW4uYzo2ODYKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICJBY2Nlc3MgdmlvbGF0aW9uOiByZWFkIG9wZXJhdGlvbiBhdCBhZGRyZXNzICVseFxuIgptc2dzdHIgIsV0a29tc3Rm9nJzZWVsc2U6IGzkc2luc3RydWt0aW9uIHDlIGFkcmVzc2VuICV4XG4iCgojOiBtYWluLmM6NzYyIG1haW4uYzo3NzMKIywgYy1mb3JtYXQKbXNnaWQgImZpbmRfYW5kX3NldF9zaGVsbCBzZXR0aW5nIGRlZmF1bHRfc2hlbGwgPSAlc1xuIgptc2dzdHIgImZpbmRfYW5kX3NldF9zaGVsbCBnZXIgZGVmYXVsdF9zaGVsbCA9ICVzXG4iCgojOiBtYWluLmM6ODE0CiMsIGMtZm9ybWF0Cm1zZ2lkICJmaW5kX2FuZF9zZXRfc2hlbGwgcGF0aCBzZWFyY2ggc2V0IGRlZmF1bHRfc2hlbGwgPSAlc1xuIgptc2dzdHIgImZpbmRfYW5kX3NldF9zaGVsbC1z9mt25GdlbiBnYXYgZGVmYXVsdF9zaGVsbCA9ICVzXG4iCgojOiBtYWluLmM6MTIzNgojLCBjLWZvcm1hdAptc2dpZCAiJXMgaXMgc3VzcGVuZGluZyBmb3IgMzAgc2Vjb25kcy4uLiIKbXNnc3RyICIlcyBzdXNwZW5kZXJhcyBpIDMwIHNla3VuZGVyLi4uIgoKIzogbWFpbi5jOjEyMzgKIywgYy1mb3JtYXQKbXNnaWQgImRvbmUgc2xlZXAoMzApLiBDb250aW51aW5nLlxuIgptc2dzdHIgImbkcmRpZyBtZWQgc2xlZXAoMzApLiBGb3J0c+R0dGVyLlxuIgoKIzogbWFpbi5jOjE0NjYKbXNnaWQgIk1ha2VmaWxlIGZyb20gc3RhbmRhcmQgaW5wdXQgc3BlY2lmaWVkIHR3aWNlLiIKbXNnc3RyICJNYWtlZmlsIGZy5W4gc3RhbmRhcmRpbmthbmFsZW4gYW5nYXZzIGR1YmJlbHQuIgoKIzogbWFpbi5jOjE1MDUgdm1zam9icy5jOjQ4Ngptc2dpZCAiZm9wZW4gKHRlbXBvcmFyeSBmaWxlKSIKbXNnc3RyICJmb3BlbiAodGlsbGbkbGxpZyBmaWwpIgoKIzogbWFpbi5jOjE1MTEKbXNnaWQgImZ3cml0ZSAodGVtcG9yYXJ5IGZpbGUpIgptc2dzdHIgImZ3cml0ZSAodGlsbGbkbGxpZyBmaWwpIgoKIzogbWFpbi5jOjE2NDAKbXNnaWQgIlBhcmFsbGVsIGpvYnMgKC1qKSBhcmUgbm90IHN1cHBvcnRlZCBvbiB0aGlzIHBsYXRmb3JtLiIKbXNnc3RyICJQYXJhbGxlbGxhIGpvYmIgKC1qKSBzdPZkcyBpbnRlIHDlIGRlbm5hIHBsYXR0Zm9ybS4iCgojOiBtYWluLmM6MTY0MQptc2dpZCAiUmVzZXR0aW5nIHRvIHNpbmdsZSBqb2IgKC1qMSkgbW9kZS4iCm1zZ3N0ciAixXRlcnN05GxsZXIgdGlsbCBlbmtlbGpvYmJzbORnZSAoLWoxKS4iCgojOiBtYWluLmM6MTY1Ngptc2dpZCAiaW50ZXJuYWwgZXJyb3I6IG11bHRpcGxlIC0tam9ic2VydmVyLWZkcyBvcHRpb25zIgptc2dzdHIgImludGVybnQgZmVsOiBmbGVyYSBcIi0tam9ic2VydmVyLWZkc1wiLWZsYWdnb3IiCgojOiBtYWluLmM6MTY2NAojLCBjLWZvcm1hdAptc2dpZCAiaW50ZXJuYWwgZXJyb3I6IGludmFsaWQgLS1qb2JzZXJ2ZXItZmRzIHN0cmluZyBgJXMnIgptc2dzdHIgImludGVybnQgZmVsOiBvZ2lsdGlnIFwiLS1qb2JzZXJ2ZXItZmRzXCItc3Ry5G5nIFwiJXNcIiIKCiM6IG1haW4uYzoxNjc0Cm1zZ2lkICJ3YXJuaW5nOiAtak4gZm9yY2VkIGluIHN1Ym1ha2U6IGRpc2FibGluZyBqb2JzZXJ2ZXIgbW9kZS4iCm1zZ3N0ciAidmFybmluZzogLWpOIGZyYW10dmluZ2F0IGkgZGVsLW1ha2U6IGluYWt0aXZlcmFyIGpvYmJzZXJ2ZXJs5GdlLiIKCiM6IG1haW4uYzoxNjg0Cm1zZ2lkICJkdXAgam9ic2VydmVyIgptc2dzdHIgImR1cGxpY2VyYXIgam9iYnNlcnZlciIKCiM6IG1haW4uYzoxNjg3Cm1zZ2lkICIiCiJ3YXJuaW5nOiBqb2JzZXJ2ZXIgdW5hdmFpbGFibGU6IHVzaW5nIC1qMS4gIEFkZCBgKycgdG8gcGFyZW50IG1ha2UgcnVsZS4iCm1zZ3N0ciAiIgoidmFybmluZzogam9iYnNlcnZlciBvdGlsbGfkbmdsaWc6IGFuduRuZGVyIC1qMS4gTORnZyB0aWxsIFwiK1wiIGkgIgoiZvZy5GxkcmFyZWdlbG4uIgoKIzogbWFpbi5jOjE3MTAKbXNnaWQgImNyZWF0aW5nIGpvYnMgcGlwZSIKbXNnc3RyICJza2FwYXIgam9iYmxlZG5pbmciCgojOiBtYWluLmM6MTcyNQptc2dpZCAiaW5pdCBqb2JzZXJ2ZXIgcGlwZSIKbXNnc3RyICJpb3JkbmluZ3N05GxsZXIgbGVkbmluZyB0aWxsIGpvYmJzZXJ2ZXIiCgojOiBtYWluLmM6MTc0NAptc2dpZCAiU3ltYm9saWMgbGlua3Mgbm90IHN1cHBvcnRlZDogZGlzYWJsaW5nIC1MLiIKbXNnc3RyICIiCgojOiBtYWluLmM6MTgyMAptc2dpZCAiVXBkYXRpbmcgbWFrZWZpbGVzLi4uLlxuIgptc2dzdHIgIlVwcGRhdGVyYXIgbWFrZWZpbGVyLi4uXG4iCgojOiBtYWluLmM6MTg0NQojLCBjLWZvcm1hdAptc2dpZCAiTWFrZWZpbGUgYCVzJyBtaWdodCBsb29wOyBub3QgcmVtYWtpbmcgaXQuXG4iCm1zZ3N0ciAiTWFrZWZpbGVuIFwiJXNcIiB0b3JkZSBsb29wYTsg5XRlcnNrYXBhcyBpbnRlLlxuIgoKIzogbWFpbi5jOjE5MjQKIywgYy1mb3JtYXQKbXNnaWQgIkZhaWxlZCB0byByZW1ha2UgbWFrZWZpbGUgYCVzJy4iCm1zZ3N0ciAiTWlzc2x5Y2thZGVzIG1lZCBhdHQg5XRlcnNrYXBhIG1ha2VmaWxlbiBcIiVzXCIuIgoKIzogbWFpbi5jOjE5NDEKIywgYy1mb3JtYXQKbXNnaWQgIkluY2x1ZGVkIG1ha2VmaWxlIGAlcycgd2FzIG5vdCBmb3VuZC4iCm1zZ3N0ciAiRGVuIGlua2x1ZGVyYWRlIG1ha2VmaWxlbiBcIiVzXCIgaGl0dGFkZXMgaW50ZS4iCgojOiBtYWluLmM6MTk0NgojLCBjLWZvcm1hdAptc2dpZCAiTWFrZWZpbGUgYCVzJyB3YXMgbm90IGZvdW5kIgptc2dzdHIgIk1ha2VmaWxlbiBcIiVzXCIgaGl0dGFkZXMgaW50ZSIKCiM6IG1haW4uYzoyMDE2Cm1zZ2lkICJDb3VsZG4ndCBjaGFuZ2UgYmFjayB0byBvcmlnaW5hbCBkaXJlY3RvcnkuIgptc2dzdHIgIkt1bmRlIGludGUg5XRlcmflIHRpbGwgdXJzcHJ1bmdza2F0YWxvZ2VuLiIKCiM6IG1haW4uYzoyMDI0CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiUmUtZXhlY3V0aW5nWyV1XToiCm1zZ3N0ciAiVXRm9nIgcOUgbnl0dDoiCgojOiBtYWluLmM6MjE0MAptc2dpZCAidW5saW5rICh0ZW1wb3JhcnkgZmlsZSk6ICIKbXNnc3RyICJhdmzkbmthICh0aWxsZuRsbGlnIGZpbCk6ICIKCiM6IG1haW4uYzoyMTY5Cm1zZ2lkICIuREVGQVVMVF9HT0FMIGNvbnRhaW5zIG1vcmUgdGhhbiBvbmUgdGFyZ2V0Igptc2dzdHIgIiIKCiM6IG1haW4uYzoyMTg5Cm1zZ2lkICJObyB0YXJnZXRzIHNwZWNpZmllZCBhbmQgbm8gbWFrZWZpbGUgZm91bmQiCm1zZ3N0ciAiSW5nYSBt5WwgYW5nYXZzIG9jaCBpbmdlbiBtYWtlZmlsIGhpdHRhZGVzIgoKIzogbWFpbi5jOjIxOTEKbXNnaWQgIk5vIHRhcmdldHMiCm1zZ3N0ciAiSW5nYSBt5WwiCgojOiBtYWluLmM6MjE5Ngptc2dpZCAiVXBkYXRpbmcgZ29hbCB0YXJnZXRzLi4uLlxuIgptc2dzdHIgIlVwcGRhdGVyYXIgc2x1dG3lbC4uLlxuIgoKIzogbWFpbi5jOjIyMjIKbXNnaWQgIndhcm5pbmc6ICBDbG9jayBza2V3IGRldGVjdGVkLiAgWW91ciBidWlsZCBtYXkgYmUgaW5jb21wbGV0ZS4iCm1zZ3N0ciAiIgoidmFybmluZzogIEtsb2NrZvZyc2tqdXRuaW5nIHVwcHTkY2t0LiAgQnlnZ2V0IGthbiBoYSBibGl2aXQgb2Z1bGxzdORuZGlndC4iCgojOiBtYWluLmM6MjM4MwojLCBjLWZvcm1hdAptc2dpZCAiVXNhZ2U6ICVzIFtvcHRpb25zXSBbdGFyZ2V0XSAuLi5cbiIKbXNnc3RyICJBbnbkbmRuaW5nOiAlcyBbZmxhZ2dvcl0gW23lbF0gLi4uXG4iCgojOiBtYWluLmM6MjM4OQojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJUaGlzIHByb2dyYW0gYnVpbHQgZm9yICVzXG4iCm1zZ3N0ciAiIgoKIzogbWFpbi5jOjIzOTEKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiVGhpcyBwcm9ncmFtIGJ1aWx0IGZvciAlcyAoJXMpXG4iCm1zZ3N0ciAiIgoKIzogbWFpbi5jOjIzOTQKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICJSZXBvcnQgYnVncyB0byA8YnVnLW1ha2VAZ251Lm9yZz5cbiIKbXNnc3RyICIiCiJcbiIKIkFubeRsIGZlbCB0aWxsIDxidWctbWFrZUBnbnUub3JnPi5cbiIKIlNraWNrYSBzeW5wdW5rdGVyIHDlIPZ2ZXJz5HR0bmluZ2VuIHRpbGwgPHN2QGxpLm9yZz4uXG4iCgojOiBtYWluLmM6MjQ2NgojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgInRoZSBgLSVjJyBvcHRpb24gcmVxdWlyZXMgYSBub24tZW1wdHkgc3RyaW5nIGFyZ3VtZW50Igptc2dzdHIgImZsYWdnYW4gXCItJWNcIiBrcuR2ZXIgZXR0IHBvc2l0aXZ0IGhlbHRhbCBzb20gYXJndW1lbnQiCgojOiBtYWluLmM6MjUxOAojLCBjLWZvcm1hdAptc2dpZCAidGhlIGAtJWMnIG9wdGlvbiByZXF1aXJlcyBhIHBvc2l0aXZlIGludGVncmFsIGFyZ3VtZW50Igptc2dzdHIgImZsYWdnYW4gXCItJWNcIiBrcuR2ZXIgZXR0IHBvc2l0aXZ0IGhlbHRhbCBzb20gYXJndW1lbnQiCgojOiBtYWluLmM6Mjk0MgojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiIKIiVzVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIHNvdXJjZSBmb3IgY29weWluZyBjb25kaXRpb25zLlxuIgoiJXNUaGVyZSBpcyBOTyB3YXJyYW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBXG4iCiIlc1BBUlRJQ1VMQVIgUFVSUE9TRS5cbiIKbXNnc3RyICIiCiIsIGF2IFJpY2hhcmQgU3RhbGxtYW4gb2NoIFJvbGFuZCBNY0dyYXRoLlxuIgoiJXNCeWdnZCBm9nIgJXNcbiIKIiVzQ29weXJpZ2h0IKkgMTk4OCwgODksIDkwLCA5MSwgOTIsIDkzLCA5NCwgOTUsIDk2LCA5NywgOTgsIDk5LCAyMDAwXG4iCiIlc1x0RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuXG4iCiIlc0RldHRhIORyIGZyaSBwcm9ncmFtdmFyYTsgc2Uga+RsbGtvZGVuIGb2ciBrb3BpZXJpbmdzdmlsbGtvci5cbiIKIiVzSU5HQSBnYXJhbnRpZXIgbORtbmFzLCBpbnRlIGVucyB2aWQgS9ZQIGVsbGVyIEbWUiBOxUdPVCBTUEVDSUZJS1QgIgoixE5EQU3FTC5cbiIKIlxuIgoiJXNBbm3kbCBmZWwgdGlsbCA8YnVnLW1ha2VAZ251Lm9yZz4uXG4iCiIlc1NraWNrYSBzeW5wdW5rdGVyIHDlIPZ2ZXJz5HR0bmluZ2VuIHRpbGwgPHN2QGxpLm9yZz4uXG4iCiJcbiIKCiM6IG1haW4uYzoyOTQ4CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiVzVGhpcyBwcm9ncmFtIGJ1aWx0IGZvciAlc1xuIgptc2dzdHIgIiIKCiM6IG1haW4uYzoyOTUwCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiVzVGhpcyBwcm9ncmFtIGJ1aWx0IGZvciAlcyAoJXMpXG4iCm1zZ3N0ciAiIgoKIzogbWFpbi5jOjI5NjgKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiIyBNYWtlIGRhdGEgYmFzZSwgcHJpbnRlZCBvbiAlcyIKbXNnc3RyICIiCiJcbiIKIiMgTWFrZS1kYXRhYmFzLCB1dHNrcml2ZW4gJXMiCgojOiBtYWluLmM6Mjk3OAojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiIjIEZpbmlzaGVkIE1ha2UgZGF0YSBiYXNlIG9uICVzXG4iCm1zZ3N0ciAiIgoiXG4iCiIjIEbkcmRpZ3N05GxsZGUgTWFrZS1kYXRhYmFzICVzXG4iCgojOiBtYWluLmM6MzEwMQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzOiBFbnRlcmluZyBhbiB1bmtub3duIGRpcmVjdG9yeVxuIgptc2dzdHIgImVuIG9r5G5kIGthdGFsb2ciCgojOiBtYWluLmM6MzEwMwojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzOiBMZWF2aW5nIGFuIHVua25vd24gZGlyZWN0b3J5XG4iCm1zZ3N0ciAiZW4gb2vkbmQga2F0YWxvZyIKCiM6IG1haW4uYzozMTA2CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiJXM6IEVudGVyaW5nIGRpcmVjdG9yeSBgJXMnXG4iCm1zZ3N0ciAia2F0YWxvZ2VuIFwiJXNcIlxuIgoKIzogbWFpbi5jOjMxMDkKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIlczogTGVhdmluZyBkaXJlY3RvcnkgYCVzJ1xuIgptc2dzdHIgImthdGFsb2dlbiBcIiVzXCJcbiIKCiM6IG1haW4uYzozMTE0CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiJXNbJXVdOiBFbnRlcmluZyBhbiB1bmtub3duIGRpcmVjdG9yeVxuIgptc2dzdHIgImVuIG9r5G5kIGthdGFsb2ciCgojOiBtYWluLmM6MzExNwojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzWyV1XTogTGVhdmluZyBhbiB1bmtub3duIGRpcmVjdG9yeVxuIgptc2dzdHIgImVuIG9r5G5kIGthdGFsb2ciCgojOiBtYWluLmM6MzEyMQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzWyV1XTogRW50ZXJpbmcgZGlyZWN0b3J5IGAlcydcbiIKbXNnc3RyICJrYXRhbG9nZW4gXCIlc1wiXG4iCgojOiBtYWluLmM6MzEyNAojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzWyV1XTogTGVhdmluZyBkaXJlY3RvcnkgYCVzJ1xuIgptc2dzdHIgImthdGFsb2dlbiBcIiVzXCJcbiIKCiM6IG1pc2MuYzoyODUKbXNnaWQgIi4gIFN0b3AuXG4iCm1zZ3N0ciAiLiAgU3Rhbm5hci5cbiIKCiM6IG1pc2MuYzozMDYKIywgYy1mb3JtYXQKbXNnaWQgIlVua25vd24gZXJyb3IgJWQiCm1zZ3N0ciAiT2vkbnQgZmVsICVkIgoKIzogbWlzYy5jOjMxNgojLCBjLWZvcm1hdAptc2dpZCAiJXMlczogJXMiCm1zZ3N0ciAiIgoKIzogbWlzYy5jOjMyNAojLCBjLWZvcm1hdAptc2dpZCAiJXM6ICVzIgptc2dzdHIgIiIKCiM6IG1pc2MuYzozNDQgbWlzYy5jOjM1OSBtaXNjLmM6Mzc2IHJlYWQuYzozMTI3Cm1zZ2lkICJ2aXJ0dWFsIG1lbW9yeSBleGhhdXN0ZWQiCm1zZ3N0ciAidmlydHVlbGx0IG1pbm5lIHV0dPZtdCIKCiM6IG1pc2MuYzo2NDYKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIlczogdXNlciAlbHUgKHJlYWwgJWx1KSwgZ3JvdXAgJWx1IChyZWFsICVsdSlcbiIKbXNnc3RyICIlcyDldGtvbXN0OiBhbnbkbmRhcmUgJWx1ICh2ZXJrbGlnICVsdSksIGdydXBwICVsdSAodmVya2xpZyAlbHUpXG4iCgojOiBtaXNjLmM6NjY3CiMsIGZ1enp5Cm1zZ2lkICJJbml0aWFsaXplZCBhY2Nlc3MiCm1zZ3N0ciAiSW5sZWRkIgoKIzogbWlzYy5jOjc0Ngptc2dpZCAiVXNlciBhY2Nlc3MiCm1zZ3N0ciAiIgoKIzogbWlzYy5jOjc5NAptc2dpZCAiTWFrZSBhY2Nlc3MiCm1zZ3N0ciAiIgoKIzogbWlzYy5jOjgyOAptc2dpZCAiQ2hpbGQgYWNjZXNzIgptc2dzdHIgIiIKCiM6IG1pc2MuYzo4OTIKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICJ3cml0ZSBlcnJvcjogJXMiCm1zZ3N0ciAiRmVsa2FuYWwgb21kaXJpZ2VyYWQgdGlsbCAlc1xuIgoKIzogbWlzYy5jOjg5NAojLCBmdXp6eQptc2dpZCAid3JpdGUgZXJyb3IiCm1zZ3N0ciAic2tyaXZlciB0aWxsIGpvYmJzZXJ2ZXIiCgojOiByZWFkLmM6MTYwCm1zZ2lkICJSZWFkaW5nIG1ha2VmaWxlcy4uLlxuIgptc2dzdHIgIkzkc2VyIG1ha2VmaWxlci4uLlxuIgoKIzogcmVhZC5jOjMxNQojLCBjLWZvcm1hdAptc2dpZCAiUmVhZGluZyBtYWtlZmlsZSBgJXMnIgptc2dzdHIgIkzkc2VyIG1ha2VmaWwgXCIlc1wiIgoKIzogcmVhZC5jOjMxNwojLCBjLWZvcm1hdAptc2dpZCAiIChubyBkZWZhdWx0IGdvYWwpIgptc2dzdHIgIiAoaW5nZXQgc3RhbmRhcmRt5WwpIgoKIzogcmVhZC5jOjMxOQojLCBjLWZvcm1hdAptc2dpZCAiIChzZWFyY2ggcGF0aCkiCm1zZ3N0ciAiIChz9mt25GcpIgoKIzogcmVhZC5jOjMyMQojLCBjLWZvcm1hdAptc2dpZCAiIChkb24ndCBjYXJlKSIKbXNnc3RyICIgKG92aWt0aWd0KSIKCiM6IHJlYWQuYzozMjMKIywgYy1mb3JtYXQKbXNnaWQgIiAobm8gfiBleHBhbnNpb24pIgptc2dzdHIgIiAoaW5nZW4gfi1leHBhbnNpb24pIgoKIzogcmVhZC5jOjYyMwptc2dpZCAiaW52YWxpZCBzeW50YXggaW4gY29uZGl0aW9uYWwiCm1zZ3N0ciAib2dpbHRpZyBzeW50YXggaSB2aWxsa29yc3NhdHMiCgojOiByZWFkLmM6NjMzCm1zZ2lkICJleHRyYW5lb3VzIGBlbmRlZiciCm1zZ3N0ciAi9nZlcmZs9mRpZ3QgXCJlbmRlZlwiIgoKIzogcmVhZC5jOjY0NSByZWFkLmM6NjczIHZhcmlhYmxlLmM6MTMxNgptc2dpZCAiZW1wdHkgdmFyaWFibGUgbmFtZSIKbXNnc3RyICJ0b210IHZhcmlhYmVsbmFtbiIKCiM6IHJlYWQuYzo2NjIKbXNnaWQgImVtcHR5IGBvdmVycmlkZScgZGlyZWN0aXZlIgptc2dzdHIgInRvbXQgXCJvdmVycmlkZVwiLWRpcmVrdGl2IgoKIzogcmVhZC5jOjY4Nwptc2dpZCAiaW52YWxpZCBgb3ZlcnJpZGUnIGRpcmVjdGl2ZSIKbXNnc3RyICJvZ2lsdGlndCBcIm92ZXJyaWRlXCItZGlyZWt0aXYiCgojOiByZWFkLmM6ODU0Cm1zZ2lkICJjb21tYW5kcyBjb21tZW5jZSBiZWZvcmUgZmlyc3QgdGFyZ2V0Igptc2dzdHIgImtvbW1hbmRvbiBpbmxlZHMgZvZyZSBm9nJzdGEgbeVsZXQiCgojOiByZWFkLmM6OTA1Cm1zZ2lkICJtaXNzaW5nIHJ1bGUgYmVmb3JlIGNvbW1hbmRzIgptc2dzdHIgInJlZ2VsIHNha25hcyBm9nJlIGtvbW1hbmRvbiIKCiM6IHJlYWQuYzo5OTIKIywgYy1mb3JtYXQKbXNnaWQgIm1pc3Npbmcgc2VwYXJhdG9yJXMiCm1zZ3N0ciAic2VwYXJhdG9yIHNha25hcyVzIgoKIzogcmVhZC5jOjk5NAptc2dpZCAiIChkaWQgeW91IG1lYW4gVEFCIGluc3RlYWQgb2YgOCBzcGFjZXM/KSIKbXNnc3RyICIgKHZhciBhdnNpa3RlbiBUQUIgaSBzdORsbGV0IGb2ciA4IG1lbGxhbnNsYWc/KSIKCiM6IHJlYWQuYzoxMTUyCm1zZ2lkICJtaXNzaW5nIHRhcmdldCBwYXR0ZXJuIgptc2dzdHIgIm3lbG32bnN0ZXIgc2FrbmFzIgoKIzogcmVhZC5jOjExNTQKbXNnaWQgIm11bHRpcGxlIHRhcmdldCBwYXR0ZXJucyIKbXNnc3RyICJmbGVyYSBt5Wxt9m5zdGVyIgoKIzogcmVhZC5jOjExNTgKIywgYy1mb3JtYXQKbXNnaWQgInRhcmdldCBwYXR0ZXJuIGNvbnRhaW5zIG5vIGAlJSciCm1zZ3N0ciAibeVsbfZuc3RyZXQgaW5uZWjlbGxlciBpbmdldCBcIiUlXCIiCgojOiByZWFkLmM6MTI4Ngptc2dpZCAibWlzc2luZyBgZW5kaWYnIgptc2dzdHIgIlwiZW5kaWZcIiBzYWtuYXMiCgojOiByZWFkLmM6MTM3Nwptc2dpZCAiRXh0cmFuZW91cyB0ZXh0IGFmdGVyIGBlbmRlZicgZGlyZWN0aXZlIgptc2dzdHIgItZ2ZXJmbPZkaWcgdGV4dCBlZnRlciBkaXJla3RpdmV0IFwiZW5kZWZcIiIKCiM6IHJlYWQuYzoxNDExCm1zZ2lkICJtaXNzaW5nIGBlbmRlZicsIHVudGVybWluYXRlZCBgZGVmaW5lJyIKbXNnc3RyICJcImVuZGVmXCIgc2FrbmFzLCBvYXZzbHV0YXQgXCJkZWZpbmVcIiIKCiM6IHJlYWQuYzoxNDU0CiMsIGMtZm9ybWF0Cm1zZ2lkICJFeHRyYW5lb3VzIHRleHQgYWZ0ZXIgYCVzJyBkaXJlY3RpdmUiCm1zZ3N0ciAi1nZlcmZs9mRpZyB0ZXh0IGVmdGVyIGRpcmVrdGl2ZXQgXCIlc1wiIgoKIzogcmVhZC5jOjE0NjMgcmVhZC5jOjE0NzcKIywgYy1mb3JtYXQKbXNnaWQgImV4dHJhbmVvdXMgYCVzJyIKbXNnc3RyICL2dmVyZmz2ZGlndCBcIiVzXCIiCgojOiByZWFkLmM6MTQ4Mgptc2dpZCAib25seSBvbmUgYGVsc2UnIHBlciBjb25kaXRpb25hbCIKbXNnc3RyICJlbmRhc3QgZXR0IFwiZWxzZVwiIHBlciB2aWxsa29yIgoKIzogcmVhZC5jOjE4MjQKIywgZnV6enkKbXNnaWQgIk1hbGZvcm1lZCB0YXJnZXQtc3BlY2lmaWMgdmFyaWFibGUgZGVmaW5pdGlvbiIKbXNnc3RyICJGZWxmb3JtYWQgbeVsYmVyb2VuZGUgdmFyaWFiZWxkZWZpbml0aW9uIgoKIzogcmVhZC5jOjE4ODYKbXNnaWQgInByZXJlcXVpc2l0ZXMgY2Fubm90IGJlIGRlZmluZWQgaW4gY29tbWFuZCBzY3JpcHRzIgptc2dzdHIgIiIKCiM6IHJlYWQuYzoxOTIxCm1zZ2lkICJtaXhlZCBpbXBsaWNpdCBhbmQgc3RhdGljIHBhdHRlcm4gcnVsZXMiCm1zZ3N0ciAiYmxhbmRhZGUgaW1wbGljaXRhIHJlZ2xlciBvY2ggc3RhdGlza2EgbfZuc3RlcnJlZ2xlciIKCiM6IHJlYWQuYzoxOTI0Cm1zZ2lkICJtaXhlZCBpbXBsaWNpdCBhbmQgbm9ybWFsIHJ1bGVzIgptc2dzdHIgImJsYW5kYWRlIGltcGxpY2l0YSByZWdsZXIgb2NoIG5vcm1hbGEgcmVnbGVyIgoKIzogcmVhZC5jOjE5NTQKIywgYy1mb3JtYXQKbXNnaWQgInRhcmdldCBgJXMnIGRvZXNuJ3QgbWF0Y2ggdGhlIHRhcmdldCBwYXR0ZXJuIgptc2dzdHIgIm3lbGV0IFwiJXNcIiBtb3RzdmFyYXIgaW50ZSBt5Wxt9m5zdHJldCIKCiM6IHJlYWQuYzoxOTczIHJlYWQuYzoyMDc0CiMsIGMtZm9ybWF0Cm1zZ2lkICJ0YXJnZXQgZmlsZSBgJXMnIGhhcyBib3RoIDogYW5kIDo6IGVudHJpZXMiCm1zZ3N0ciAibeVsZmlsZW4gXCIlc1wiIGhhciBi5WRlIHBvc3RlciBtZWQgOiBvY2ggOjoiCgojOiByZWFkLmM6MTk3OQojLCBjLWZvcm1hdAptc2dpZCAidGFyZ2V0IGAlcycgZ2l2ZW4gbW9yZSB0aGFuIG9uY2UgaW4gdGhlIHNhbWUgcnVsZS4iCm1zZ3N0ciAibeVsZXQgXCIlc1wiIGFuZ2VzIGZsZXJhIGflbmdlciBpIHNhbW1hIHJlZ2VsLiIKCiM6IHJlYWQuYzoxOTg4CiMsIGMtZm9ybWF0Cm1zZ2lkICJ3YXJuaW5nOiBvdmVycmlkaW5nIGNvbW1hbmRzIGZvciB0YXJnZXQgYCVzJyIKbXNnc3RyICJ2YXJuaW5nOiDlc2lkb3PkdHRlciBrb21tYW5kb24gZvZyIG3lbGV0IFwiJXNcIiIKCiM6IHJlYWQuYzoxOTkxCiMsIGMtZm9ybWF0Cm1zZ2lkICJ3YXJuaW5nOiBpZ25vcmluZyBvbGQgY29tbWFuZHMgZm9yIHRhcmdldCBgJXMnIgptc2dzdHIgInZhcm5pbmc6IGJvcnRzZXIgZnLlbiBnYW1sYSBrb21tYW5kb24gZvZyIG3lbGV0IFwiJXNcIiIKCiM6IHJlYWQuYzoyNTc1Cm1zZ2lkICJ3YXJuaW5nOiBOVUwgY2hhcmFjdGVyIHNlZW47IHJlc3Qgb2YgbGluZSBpZ25vcmVkIgptc2dzdHIgInZhcm5pbmc6IE5VTC10ZWNrZW4gdXBwdORja3QsIGJvcnRzZXIgZnLlbiByZXN0ZW4gYXYgcmFkZW4iCgojOiByZW1ha2UuYzoyMjkKIywgYy1mb3JtYXQKbXNnaWQgIk5vdGhpbmcgdG8gYmUgZG9uZSBmb3IgYCVzJy4iCm1zZ3N0ciAiSW5nZXQgYmVo9nZlciBn9nJhcyBm9nIgXCIlc1wiLiIKCiM6IHJlbWFrZS5jOjIzMAojLCBjLWZvcm1hdAptc2dpZCAiYCVzJyBpcyB1cCB0byBkYXRlLiIKbXNnc3RyICJcIiVzXCIg5HIgZuRyc2suIgoKIzogcmVtYWtlLmM6Mjk3CiMsIGMtZm9ybWF0Cm1zZ2lkICJQcnVuaW5nIGZpbGUgYCVzJy5cbiIKbXNnc3RyICJCZXNr5HIgZmlsZW4gXCIlc1wiLlxuIgoKIzogcmVtYWtlLmM6MzQ5CiMsIGMtZm9ybWF0Cm1zZ2lkICIlc05vIHJ1bGUgdG8gbWFrZSB0YXJnZXQgYCVzJyVzIgptc2dzdHIgIiVzSW5nZW4gcmVnZWwgZvZyIGF0dCBza2FwYSBt5WxldCBcIiVzXCIlcyIKCiM6IHJlbWFrZS5jOjM1MQojLCBjLWZvcm1hdAptc2dpZCAiJXNObyBydWxlIHRvIG1ha2UgdGFyZ2V0IGAlcycsIG5lZWRlZCBieSBgJXMnJXMiCm1zZ3N0ciAiJXNJbmdlbiByZWdlbCBm9nIgYXR0IHNrYXBhIG3lbGV0IFwiJXNcIiwgc29tIGJlaPZ2cyB0aWxsIFwiJXNcIiVzIgoKIzogcmVtYWtlLmM6Mzc4CiMsIGMtZm9ybWF0Cm1zZ2lkICJDb25zaWRlcmluZyB0YXJnZXQgZmlsZSBgJXMnLlxuIgptc2dzdHIgItZ2ZXJ25GdlciBt5WxmaWxlbiBcIiVzXCIuXG4iCgojOiByZW1ha2UuYzozODUKIywgYy1mb3JtYXQKbXNnaWQgIlJlY2VudGx5IHRyaWVkIGFuZCBmYWlsZWQgdG8gdXBkYXRlIGZpbGUgYCVzJy5cbiIKbXNnc3RyICJNaXNzbHlja2FkZXMgbnlsaWdlbiBtZWQgYXR0IHVwcGRhdGVyYSBmaWxlbiBcIiVzXCIuXG4iCgojOiByZW1ha2UuYzo0MDAKIywgYy1mb3JtYXQKbXNnaWQgIkZpbGUgYCVzJyB3YXMgY29uc2lkZXJlZCBhbHJlYWR5LlxuIgptc2dzdHIgIkZpbGVuIFwiJXNcIiBoYXIgcmVkYW4g9nZlcnbkZ3RzLlxuIgoKIzogcmVtYWtlLmM6NDEwCiMsIGMtZm9ybWF0Cm1zZ2lkICJTdGlsbCB1cGRhdGluZyBmaWxlIGAlcycuXG4iCm1zZ3N0ciAiVXBwZGF0ZXJhciBmb3J0ZmFyYW5kZSBmaWxlbiBcIiVzXCIuXG4iCgojOiByZW1ha2UuYzo0MTMKIywgYy1mb3JtYXQKbXNnaWQgIkZpbmlzaGVkIHVwZGF0aW5nIGZpbGUgYCVzJy5cbiIKbXNnc3RyICJTbHV0ZvZyZGUgdXBwZGF0ZXJhbmRldCBhdiBmaWxlbiBcIiVzXCIuXG4iCgojOiByZW1ha2UuYzo0MzQKIywgYy1mb3JtYXQKbXNnaWQgIkZpbGUgYCVzJyBkb2VzIG5vdCBleGlzdC5cbiIKbXNnc3RyICJGaWxlbiBcIiVzXCIgZmlubnMgaW50ZS5cbiIKCiM6IHJlbWFrZS5jOjQ0MQojLCBjLWZvcm1hdAptc2dpZCAiIgoiKioqIFdhcm5pbmc6IC5MT1dfUkVTT0xVVElPTl9USU1FIGZpbGUgYCVzJyBoYXMgYSBoaWdoIHJlc29sdXRpb24gdGltZSBzdGFtcCIKbXNnc3RyICIiCgojOiByZW1ha2UuYzo0NTQgcmVtYWtlLmM6OTYyCiMsIGMtZm9ybWF0Cm1zZ2lkICJGb3VuZCBhbiBpbXBsaWNpdCBydWxlIGZvciBgJXMnLlxuIgptc2dzdHIgIkhpdHRhZGUgZW4gaW1wbGljaXQgcmVnZWwgZvZyIFwiJXNcIi5cbiIKCiM6IHJlbWFrZS5jOjQ1NiByZW1ha2UuYzo5NjQKIywgYy1mb3JtYXQKbXNnaWQgIk5vIGltcGxpY2l0IHJ1bGUgZm91bmQgZm9yIGAlcycuXG4iCm1zZ3N0ciAiSGl0dGFkZSBpbmdlbiBpbXBsaWNpdCByZWdlbCBm9nIgXCIlc1wiLlxuIgoKIzogcmVtYWtlLmM6NDYyIHJlbWFrZS5jOjk3MAojLCBjLWZvcm1hdAptc2dpZCAiVXNpbmcgZGVmYXVsdCBjb21tYW5kcyBmb3IgYCVzJy5cbiIKbXNnc3RyICJBbnbkbmRlciBzdGFuZGFyZGtvbW1hbmRvbiBm9nIgXCIlc1wiLlxuIgoKIzogcmVtYWtlLmM6NDg0IHJlbWFrZS5jOjk5NgojLCBjLWZvcm1hdAptc2dpZCAiQ2lyY3VsYXIgJXMgPC0gJXMgZGVwZW5kZW5jeSBkcm9wcGVkLiIKbXNnc3RyICJEZXQgY2lya3Vs5HJhIGJlcm9lbmRldCAlcyA8LSAlcyBzbORwcHRlcy4iCgojOiByZW1ha2UuYzo2MDEKIywgYy1mb3JtYXQKbXNnaWQgIkZpbmlzaGVkIHByZXJlcXVpc2l0ZXMgb2YgdGFyZ2V0IGZpbGUgYCVzJy5cbiIKbXNnc3RyICJG5HJkaWdzdORsbGRlIGRlIG72ZHbkbmRpZ2EgZvZydXRz5HR0bmluZ2FybmEgZvZyIG3lbGZpbGVuIFwiJXNcIi5cbiIKCiM6IHJlbWFrZS5jOjYwNwojLCBjLWZvcm1hdAptc2dpZCAiVGhlIHByZXJlcXVpc2l0ZXMgb2YgYCVzJyBhcmUgYmVpbmcgbWFkZS5cbiIKbXNnc3RyICJEZSBu9mR25G5kaWdhIGb2cnV0c+R0dG5pbmdhcm5hIGb2ciBcIiVzXCIgaOVsbGVyIHDlIGF0dCBza2FwYXMuXG4iCgojOiByZW1ha2UuYzo2MjAKIywgYy1mb3JtYXQKbXNnaWQgIkdpdmluZyB1cCBvbiB0YXJnZXQgZmlsZSBgJXMnLlxuIgptc2dzdHIgIkdlciB1cHAgbWVkIG3lbGZpbGVuIFwiJXNcIi5cbiIKCiM6IHJlbWFrZS5jOjYyNQojLCBjLWZvcm1hdAptc2dpZCAiVGFyZ2V0IGAlcycgbm90IHJlbWFkZSBiZWNhdXNlIG9mIGVycm9ycy4iCm1zZ3N0ciAiTeVsZXQgXCIlc1wiIOV0ZXJza2FwYWRlcyBpbnRlIHDlIGdydW5kIGF2IGZlbC4iCgojOiByZW1ha2UuYzo2NzcKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICJQcmVyZXF1aXNpdGUgYCVzJyBpcyBvcmRlci1vbmx5IGZvciB0YXJnZXQgYCVzJy5cbiIKbXNnc3RyICJEZW4gbvZkduRuZGlnYSBm9nJ1dHPkdHRuaW5nZW4gXCIlc1wiIORyIORsZHJlIORuIG3lbGV0IFwiJXNcIi5cbiIKCiM6IHJlbWFrZS5jOjY4MgojLCBjLWZvcm1hdAptc2dpZCAiUHJlcmVxdWlzaXRlIGAlcycgb2YgdGFyZ2V0IGAlcycgZG9lcyBub3QgZXhpc3QuXG4iCm1zZ3N0ciAiRGVuIG72ZHbkbmRpZ2EgZvZydXRz5HR0bmluZ2VuIFwiJXNcIiBm9nIgbeVsZXQgXCIlc1wiIGZpbm5zIGludGUuXG4iCgojOiByZW1ha2UuYzo2ODcKIywgYy1mb3JtYXQKbXNnaWQgIlByZXJlcXVpc2l0ZSBgJXMnIGlzIG5ld2VyIHRoYW4gdGFyZ2V0IGAlcycuXG4iCm1zZ3N0ciAiRGVuIG72ZHbkbmRpZ2EgZvZydXRz5HR0bmluZ2VuIFwiJXNcIiDkciBueWFyZSDkbiBt5WxldCBcIiVzXCIuXG4iCgojOiByZW1ha2UuYzo2OTAKIywgYy1mb3JtYXQKbXNnaWQgIlByZXJlcXVpc2l0ZSBgJXMnIGlzIG9sZGVyIHRoYW4gdGFyZ2V0IGAlcycuXG4iCm1zZ3N0ciAiRGVuIG72ZHbkbmRpZ2EgZvZydXRz5HR0bmluZ2VuIFwiJXNcIiDkciDkbGRyZSDkbiBt5WxldCBcIiVzXCIuXG4iCgojOiByZW1ha2UuYzo3MDgKIywgYy1mb3JtYXQKbXNnaWQgIlRhcmdldCBgJXMnIGlzIGRvdWJsZS1jb2xvbiBhbmQgaGFzIG5vIHByZXJlcXVpc2l0ZXMuXG4iCm1zZ3N0ciAiTeVsZXQgXCIlc1wiIORyIGR1YmJlbGtvbG9uIG9jaCBoYXIgaW5nYSBiZXJvZW5kZW4uXG4iCgojOiByZW1ha2UuYzo3MTUKIywgYy1mb3JtYXQKbXNnaWQgIk5vIGNvbW1hbmRzIGZvciBgJXMnIGFuZCBubyBwcmVyZXF1aXNpdGVzIGFjdHVhbGx5IGNoYW5nZWQuXG4iCm1zZ3N0ciAiIgoiSW5nYSBrb21tYW5kb24gZWxsZXIgbvZkduRuZGlnYSBm9nJ1dHPkdHRuaW5nYXIgZvZyIFwiJXNcIiBoYXIgZvZy5G5kcmF0cy5cbiIKCiM6IHJlbWFrZS5jOjcyMAojLCBjLWZvcm1hdAptc2dpZCAiTWFraW5nIGAlcycgZHVlIHRvIGFsd2F5cy1tYWtlIGZsYWcuXG4iCm1zZ3N0ciAiIgoKIzogcmVtYWtlLmM6NzI4CiMsIGMtZm9ybWF0Cm1zZ2lkICJObyBuZWVkIHRvIHJlbWFrZSB0YXJnZXQgYCVzJyIKbXNnc3RyICJN5WxldCBcIiVzXCIgYmVo9nZlciBpbnRlIOV0ZXJza2FwYXMiCgojOiByZW1ha2UuYzo3MzAKIywgYy1mb3JtYXQKbXNnaWQgIjsgdXNpbmcgVlBBVEggbmFtZSBgJXMnIgptc2dzdHIgIjsgYW525G5kZXIgVlBBVEgtbmFtbmV0IFwiJXNcIiIKCiM6IHJlbWFrZS5jOjc1MAojLCBjLWZvcm1hdAptc2dpZCAiTXVzdCByZW1ha2UgdGFyZ2V0IGAlcycuXG4iCm1zZ3N0ciAiTeVzdGUg5XRlcnNrYXBhIG3lbGV0IFwiJXNcIi5cbiIKCiM6IHJlbWFrZS5jOjc1NgojLCBjLWZvcm1hdAptc2dpZCAiICBJZ25vcmluZyBWUEFUSCBuYW1lIGAlcycuXG4iCm1zZ3N0ciAiICBCb3J0c2VyIGZy5W4gVlBBVEgtbmFtbmV0IFwiJXNcIi5cbiIKCiM6IHJlbWFrZS5jOjc2NQojLCBjLWZvcm1hdAptc2dpZCAiQ29tbWFuZHMgb2YgYCVzJyBhcmUgYmVpbmcgcnVuLlxuIgptc2dzdHIgIktvbW1hbmRvbiBm9nIgXCIlc1wiIGv2cnMuXG4iCgojOiByZW1ha2UuYzo3NzIKIywgYy1mb3JtYXQKbXNnaWQgIkZhaWxlZCB0byByZW1ha2UgdGFyZ2V0IGZpbGUgYCVzJy5cbiIKbXNnc3RyICJNaXNzbHlja2FkZXMgbWVkIGF0dCDldGVyc2thcGEgbeVsZmlsZW4gXCIlc1wiLlxuIgoKIzogcmVtYWtlLmM6Nzc1CiMsIGMtZm9ybWF0Cm1zZ2lkICJTdWNjZXNzZnVsbHkgcmVtYWRlIHRhcmdldCBmaWxlIGAlcycuXG4iCm1zZ3N0ciAiTeVsZmlsZW4gXCIlc1wiIOV0ZXJza2FwYWRlcy5cbiIKCiM6IHJlbWFrZS5jOjc3OAojLCBjLWZvcm1hdAptc2dpZCAiVGFyZ2V0IGZpbGUgYCVzJyBuZWVkcyByZW1hZGUgdW5kZXIgLXEuXG4iCm1zZ3N0ciAiTeVsZmlsZW4gXCIlc1wiIGJlaPZ2ZXIg5XRlcnNrYXBhcyBtZWQgLXEuXG4iCgojOiByZW1ha2UuYzoxMzA2CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiV2FybmluZzogRmlsZSBgJXMnIGhhcyBtb2RpZmljYXRpb24gdGltZSBpbiB0aGUgZnV0dXJlIgptc2dzdHIgIioqKiBWYXJuaW5nOiBGaWxlbiBcIiVzXCIgaGFyIGV0dCDkbmRyaW5nc2RhdHVtIGkgZnJhbXRpZGVuICglcyA+ICVzKSIKCiM6IHJlbWFrZS5jOjEzMTMKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICJXYXJuaW5nOiBGaWxlIGAlcycgaGFzIG1vZGlmaWNhdGlvbiB0aW1lICUuMmcgcyBpbiB0aGUgZnV0dXJlIgptc2dzdHIgIioqKiBWYXJuaW5nOiBGaWxlbiBcIiVzXCIgaGFyIGV0dCDkbmRyaW5nc2RhdHVtIGkgZnJhbXRpZGVuICglcyA+ICVzKSIKCiM6IHJlbWFrZS5jOjE1MTEKIywgYy1mb3JtYXQKbXNnaWQgIi5MSUJQQVRURVJOUyBlbGVtZW50IGAlcycgaXMgbm90IGEgcGF0dGVybiIKbXNnc3RyICIuTElCUEFUVEVSTlMtZWxlbWVudGV0IFwiJXNcIiDkciBpbnRlIG7lZ290IG32bnN0ZXIiCgojOiByZW1vdGUtY3N0bXMuYzoxMjUKIywgYy1mb3JtYXQKbXNnaWQgIkN1c3RvbXMgd29uJ3QgZXhwb3J0OiAlc1xuIgptc2dzdHIgIkN1c3RvbXMga29tbWVyIGludGUgYXR0IGV4cG9ydGVyYSAlc1xuIgoKIzogcnVsZS5jOjU0OAojLCBmdXp6eQptc2dpZCAiIgoiXG4iCiIjIEltcGxpY2l0IFJ1bGVzIgptc2dzdHIgIiIKIlxuIgoiIyBJbmdhIGltcGxpY2l0YSByZWdsZXIuIgoKIzogcnVsZS5jOjU2Mwptc2dpZCAiIgoiXG4iCiIjIE5vIGltcGxpY2l0IHJ1bGVzLiIKbXNnc3RyICIiCiJcbiIKIiMgSW5nYSBpbXBsaWNpdGEgcmVnbGVyLiIKCiM6IHJ1bGUuYzo1NjYKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiIyAldSBpbXBsaWNpdCBydWxlcywgJXUiCm1zZ3N0ciAiIgoiXG4iCiIjICV1IGltcGxpY2l0YSByZWdsZXIsICV1IgoKIzogcnVsZS5jOjU3NQptc2dpZCAiIHRlcm1pbmFsLiIKbXNnc3RyICIgc2x1dHJlZ2xlci4iCgojOiBydWxlLmM6NTgzCiMsIGMtZm9ybWF0Cm1zZ2lkICJCVUc6IG51bV9wYXR0ZXJuX3J1bGVzIHdyb25nISAgJXUgIT0gJXUiCm1zZ3N0ciAiRkVMOiBudW1fcGF0dGVybl9ydWxlcyBmZWxha3RpZ3QhICAldSAhPSAldSIKCiM6IHNpZ25hbWUuYzo4NQptc2dpZCAidW5rbm93biBzaWduYWwiCm1zZ3N0ciAib2vkbmQgc2lnbmFsIgoKIzogc2lnbmFtZS5jOjkzCm1zZ2lkICJIYW5ndXAiCm1zZ3N0ciAiQXZyaW5nZCIKCiM6IHNpZ25hbWUuYzo5Ngptc2dpZCAiSW50ZXJydXB0Igptc2dzdHIgIkF2YnJvdHQiCgojOiBzaWduYW1lLmM6OTkKbXNnaWQgIlF1aXQiCm1zZ3N0ciAiQXZzbHV0YWQiCgojOiBzaWduYW1lLmM6MTAyCm1zZ2lkICJJbGxlZ2FsIEluc3RydWN0aW9uIgptc2dzdHIgIk90aWxs5XRlbiBpbnN0cnVrdGlvbiIKCiM6IHNpZ25hbWUuYzoxMDUKbXNnaWQgIlRyYWNlL2JyZWFrcG9pbnQgdHJhcCIKbXNnc3RyICJTcOVybmluZ3Nm5GxsYSIKCiM6IHNpZ25hbWUuYzoxMTAKbXNnaWQgIkFib3J0ZWQiCm1zZ3N0ciAiQXZicnV0ZW4iCgojOiBzaWduYW1lLmM6MTEzCm1zZ2lkICJJT1QgdHJhcCIKbXNnc3RyICJJTy1m5GxsYSIKCiM6IHNpZ25hbWUuYzoxMTYKbXNnaWQgIkVNVCB0cmFwIgptc2dzdHIgIkVtdWxhdG9yZuRsbGEiCgojOiBzaWduYW1lLmM6MTE5Cm1zZ2lkICJGbG9hdGluZyBwb2ludCBleGNlcHRpb24iCm1zZ3N0ciAiRmx5dHRhbHN1bmRhbnRhZyIKCiM6IHNpZ25hbWUuYzoxMjIKbXNnaWQgIktpbGxlZCIKbXNnc3RyICJE9mRhZCIKCiM6IHNpZ25hbWUuYzoxMjUKbXNnaWQgIkJ1cyBlcnJvciIKbXNnc3RyICJCdXNzZmVsIgoKIzogc2lnbmFtZS5jOjEyOAptc2dpZCAiU2VnbWVudGF0aW9uIGZhdWx0Igptc2dzdHIgIlNlZ21lbnRlcmluZ3NmZWwiCgojOiBzaWduYW1lLmM6MTMxCm1zZ2lkICJCYWQgc3lzdGVtIGNhbGwiCm1zZ3N0ciAiRmVsYWt0aWd0IHN5c3RlbWFucm9wIgoKIzogc2lnbmFtZS5jOjEzNAptc2dpZCAiQnJva2VuIHBpcGUiCm1zZ3N0ciAiTGVkbmluZ3Nicm90dCIKCiM6IHNpZ25hbWUuYzoxMzcKbXNnaWQgIkFsYXJtIGNsb2NrIgptc2dzdHIgIkFsYXJta2xvY2thIgoKIzogc2lnbmFtZS5jOjE0MAptc2dpZCAiVGVybWluYXRlZCIKbXNnc3RyICJBdnNsdXRhZCIKCiM6IHNpZ25hbWUuYzoxNDMKbXNnaWQgIlVzZXIgZGVmaW5lZCBzaWduYWwgMSIKbXNnc3RyICJBbnbkbmRhcnNpZ25hbCAxIgoKIzogc2lnbmFtZS5jOjE0Ngptc2dpZCAiVXNlciBkZWZpbmVkIHNpZ25hbCAyIgptc2dzdHIgIkFuduRuZGFyc2lnbmFsIDIiCgojOiBzaWduYW1lLmM6MTUxIHNpZ25hbWUuYzoxNTQKbXNnaWQgIkNoaWxkIGV4aXRlZCIKbXNnc3RyICJCYXJuIGF2c2x1dGFkZXMiCgojOiBzaWduYW1lLmM6MTU3Cm1zZ2lkICJQb3dlciBmYWlsdXJlIgptc2dzdHIgIlN0cvZtYXZicm90dCIKCiM6IHNpZ25hbWUuYzoxNjAKbXNnaWQgIlN0b3BwZWQiCm1zZ3N0ciAiU3RvcHBhZGVzIgoKIzogc2lnbmFtZS5jOjE2Mwptc2dpZCAiU3RvcHBlZCAodHR5IGlucHV0KSIKbXNnc3RyICJTdG9wcGFkZXMgKHR0eS1s5HNuaW5nKSIKCiM6IHNpZ25hbWUuYzoxNjYKbXNnaWQgIlN0b3BwZWQgKHR0eSBvdXRwdXQpIgptc2dzdHIgIlN0b3BwYWRlcyAodHR5LXV0c2tyaWZ0KSIKCiM6IHNpZ25hbWUuYzoxNjkKbXNnaWQgIlN0b3BwZWQgKHNpZ25hbCkiCm1zZ3N0ciAiU3RvcHBhZGVzIChzaWduYWwpIgoKIzogc2lnbmFtZS5jOjE3Mgptc2dpZCAiQ1BVIHRpbWUgbGltaXQgZXhjZWVkZWQiCm1zZ3N0ciAiQ1BVLXRpZHNncuRucyD2dmVyc2tyZWRzIgoKIzogc2lnbmFtZS5jOjE3NQptc2dpZCAiRmlsZSBzaXplIGxpbWl0IGV4Y2VlZGVkIgptc2dzdHIgIkZpbHN0b3JsZWtzZ3LkbnMg9nZlcnNrcmVkcyIKCiM6IHNpZ25hbWUuYzoxNzgKbXNnaWQgIlZpcnR1YWwgdGltZXIgZXhwaXJlZCIKbXNnc3RyICJWaXJ0dWVsbHQgdGlkdXIgbPZwdGUgdXQiCgojOiBzaWduYW1lLmM6MTgxCm1zZ2lkICJQcm9maWxpbmcgdGltZXIgZXhwaXJlZCIKbXNnc3RyICJQcm9maWxlcmluZ3N0aWR1ciBs9nB0ZSB1dCIKCiM6IHNpZ25hbWUuYzoxODcKbXNnaWQgIldpbmRvdyBjaGFuZ2VkIgptc2dzdHIgIkb2bnN0ZXIg5G5kcmF0IgoKIzogc2lnbmFtZS5jOjE5MAptc2dpZCAiQ29udGludWVkIgptc2dzdHIgIkZvcnRzYXR0ZSIKCiM6IHNpZ25hbWUuYzoxOTMKbXNnaWQgIlVyZ2VudCBJL08gY29uZGl0aW9uIgptc2dzdHIgIkJy5WRza2FuZGUgSS9PLWzkZ2UiCgojOiBzaWduYW1lLmM6MjAwIHNpZ25hbWUuYzoyMDkKbXNnaWQgIkkvTyBwb3NzaWJsZSIKbXNnc3RyICJJL08tdGlsbGbkbGxlIgoKIzogc2lnbmFtZS5jOjIwMwptc2dpZCAiU0lHV0lORCIKbXNnc3RyICJTSUdXSU5EIgoKIzogc2lnbmFtZS5jOjIwNgptc2dpZCAiU0lHUEhPTkUiCm1zZ3N0ciAiU0lHUEhPTkUiCgojOiBzaWduYW1lLmM6MjEyCm1zZ2lkICJSZXNvdXJjZSBsb3N0Igptc2dzdHIgIk1pc3RlIHJlc3VycyIKCiM6IHNpZ25hbWUuYzoyMTUKbXNnaWQgIkRhbmdlciBzaWduYWwiCm1zZ3N0ciAiRmFyb3NpZ25hbCIKCiM6IHNpZ25hbWUuYzoyMTgKbXNnaWQgIkluZm9ybWF0aW9uIHJlcXVlc3QiCm1zZ3N0ciAiSW5mb3JtYXRpb25zYmVn5HJhbiIKCiM6IHNpZ25hbWUuYzoyMjEKbXNnaWQgIkZsb2F0aW5nIHBvaW50IGNvLXByb2Nlc3NvciBub3QgYXZhaWxhYmxlIgptc2dzdHIgIkZseXR0YWxzcHJvY2Vzc29yIGludGUgdGlsbGfkbmdsaWciCgojOiBzdHJjYWNoZS5jOjIxMAojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiIlcyAjIG9mIHN0cmluZ3MgaW4gc3RyY2FjaGU6ICVkXG4iCm1zZ3N0ciAiIgoKIzogc3RyY2FjaGUuYzoyMTEKIywgYy1mb3JtYXQKbXNnaWQgIiVzICMgb2Ygc3RyY2FjaGUgYnVmZmVyczogJWRcbiIKbXNnc3RyICIiCgojOiBzdHJjYWNoZS5jOjIxMgojLCBjLWZvcm1hdAptc2dpZCAiJXMgc3RyY2FjaGUgc2l6ZTogdG90YWwgPSAlZCAvIG1heCA9ICVkIC8gbWluID0gJWQgLyBhdmcgPSAlZFxuIgptc2dzdHIgIiIKCiM6IHN0cmNhY2hlLmM6MjE0CiMsIGMtZm9ybWF0Cm1zZ2lkICIlcyBzdHJjYWNoZSBmcmVlOiB0b3RhbCA9ICVkIC8gbWF4ID0gJWQgLyBtaW4gPSAlZCAvIGF2ZyA9ICVkXG4iCm1zZ3N0ciAiIgoKIzogdmFyaWFibGUuYzoxMzY5Cm1zZ2lkICJkZWZhdWx0Igptc2dzdHIgIm5vcm1hbCIKCiM6IHZhcmlhYmxlLmM6MTM3Mgptc2dpZCAiZW52aXJvbm1lbnQiCm1zZ3N0ciAibWlsavYiCgojOiB2YXJpYWJsZS5jOjEzNzUKbXNnaWQgIm1ha2VmaWxlIgptc2dzdHIgIm1ha2VmaWwiCgojOiB2YXJpYWJsZS5jOjEzNzgKbXNnaWQgImVudmlyb25tZW50IHVuZGVyIC1lIgptc2dzdHIgIm1pbGr2IGVubGlndCAtZSIKCiM6IHZhcmlhYmxlLmM6MTM4MQptc2dpZCAiY29tbWFuZCBsaW5lIgptc2dzdHIgImtvbW1hbmRvcmFkIgoKIzogdmFyaWFibGUuYzoxMzg0Cm1zZ2lkICJgb3ZlcnJpZGUnIGRpcmVjdGl2ZSIKbXNnc3RyICJcIm92ZXJyaWRlXCItZGlyZWt0aXYiCgojOiB2YXJpYWJsZS5jOjEzODcKbXNnaWQgImF1dG9tYXRpYyIKbXNnc3RyICJhdXRvbWF0aXNrIgoKIzogdmFyaWFibGUuYzoxMzk2CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiIChmcm9tIGAlcycsIGxpbmUgJWx1KSIKbXNnc3RyICIgKGZy5W4gXCIlc1wiLCByYWQgJWx1KTpcbiIKCiM6IHZhcmlhYmxlLmM6MTQzOAojLCBmdXp6eQptc2dpZCAiIyB2YXJpYWJsZSBzZXQgaGFzaC10YWJsZSBzdGF0czpcbiIKbXNnc3RyICIjICV1IHZhcmlhYmxlciBpICV1IGhhc2hiZWjlbGxhcmUuXG4iCgojOiB2YXJpYWJsZS5jOjE0NDkKbXNnaWQgIiIKIlxuIgoiIyBWYXJpYWJsZXNcbiIKbXNnc3RyICIiCiJcbiIKIiMgVmFyaWFibGVyXG4iCgojOiB2YXJpYWJsZS5jOjE0NTMKIywgZnV6enkKbXNnaWQgIiIKIlxuIgoiIyBQYXR0ZXJuLXNwZWNpZmljIFZhcmlhYmxlIFZhbHVlcyIKbXNnc3RyICIiCiJcbiIKIiMgTfZuc3RlcnNwZWNpZmlrYSB2YXJpYWJlbHbkcmRlbiIKCiM6IHZhcmlhYmxlLmM6MTQ2Nwptc2dpZCAiIgoiXG4iCiIjIE5vIHBhdHRlcm4tc3BlY2lmaWMgdmFyaWFibGUgdmFsdWVzLiIKbXNnc3RyICIiCiJcbiIKIiMgSW5nYSBt9m5zdGVyc3BlY2lmaWthIHZhcmlhYmVsduRyZGVuLiIKCiM6IHZhcmlhYmxlLmM6MTQ2OQojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiIjICV1IHBhdHRlcm4tc3BlY2lmaWMgdmFyaWFibGUgdmFsdWVzIgptc2dzdHIgIiIKIlxuIgoiIyAldSBt9m5zdGVyc3BlY2lmaWthIHZhcmlhYmVsduRyZGVuIgoKIzogdmFyaWFibGUuaDoxODkKIywgYy1mb3JtYXQKbXNnaWQgIndhcm5pbmc6IHVuZGVmaW5lZCB2YXJpYWJsZSBgJS4qcyciCm1zZ3N0ciAidmFybmluZzogb2RlZmluaWVyYWQgdmFyaWFiZWwgXCIlLipzXCIiCgojOiB2bXNmdW5jdGlvbnMuYzo5NAojLCBjLWZvcm1hdAptc2dpZCAic3lzJHNlYXJjaCBmYWlsZWQgd2l0aCAlZFxuIgptc2dzdHIgInN5cyRzZWFyY2ggbWlzc2x5Y2thZGVzIG9jaCBnYXYgJWRcbiIKCiM6IHZtc2pvYnMuYzo3MQojLCBjLWZvcm1hdAptc2dpZCAiV2FybmluZzogRW1wdHkgcmVkaXJlY3Rpb25cbiIKbXNnc3RyICJWYXJuaW5nOiBUb20gb21kaXJpZ2VyaW5nXG4iCgojOiB2bXNqb2JzLmM6MTc1CiMsIGMtZm9ybWF0Cm1zZ2lkICJpbnRlcm5hbCBlcnJvcjogYCVzJyBjb21tYW5kX3N0YXRlIgptc2dzdHIgImludGVybnQgZmVsOiBcIiVzXCIgY29tbWFuZF9zdGF0ZSIKCiM6IHZtc2pvYnMuYzoyNjgKIywgYy1mb3JtYXQKbXNnaWQgIi13YXJuaW5nLCBDVFJMLVkgd2lsbCBsZWF2ZSBzdWItcHJvY2VzcyhlcykgYXJvdW5kLlxuIgptc2dzdHIgIi12YXJuaW5nLCBDVFJMLVkgbORtbmFyIGVmdGVyIHNpZyB1bmRlcnByb2Nlc3MoZXIpLlxuIgoKIzogdm1zam9icy5jOjI4NAojLCBjLWZvcm1hdAptc2dpZCAiLXdhcm5pbmcsIHlvdSBtYXkgaGF2ZSB0byByZS1lbmFibGUgQ1RSTC1ZIGhhbmRsaW5nIGZyb20gRENMLlxuIgptc2dzdHIgIi12YXJuaW5nLCBDVFJMLVktaGFudGVyaW5nIGthbnNrZSBiZWj2dmVyIOV0ZXJzdORsbGFzIGZy5W4gRENMLlxuIgoKIzogdm1zam9icy5jOjQwNwojLCBjLWZvcm1hdAptc2dpZCAiQlVJTFRJTiBbJXNdWyVzXVxuIgptc2dzdHIgIklOQllHR1QgWyVzXVslc11cbiIKCiM6IHZtc2pvYnMuYzo0MTgKIywgYy1mb3JtYXQKbXNnaWQgIkJVSUxUSU4gQ0QgJXNcbiIKbXNnc3RyICJJTkJZR0dUIENEICVzXG4iCgojOiB2bXNqb2JzLmM6NDM2CiMsIGMtZm9ybWF0Cm1zZ2lkICJCVUlMVElOIFJNICVzXG4iCm1zZ3N0ciAiSU5CWUdHVCBSTSAlc1xuIgoKIzogdm1zam9icy5jOjQ1NwojLCBjLWZvcm1hdAptc2dpZCAiVW5rbm93biBidWlsdGluIGNvbW1hbmQgJyVzJ1xuIgptc2dzdHIgIk9r5G50IGluYnlnZ3Qga29tbWFuZG8gXCIlc1wiXG4iCgojOiB2bXNqb2JzLmM6NDc5CiMsIGMtZm9ybWF0Cm1zZ2lkICJFcnJvciwgZW1wdHkgY29tbWFuZFxuIgptc2dzdHIgIkZlbCwgdG9tdCBrb21tYW5kb1xuIgoKIzogdm1zam9icy5jOjQ5MQojLCBjLWZvcm1hdAptc2dpZCAiUmVkaXJlY3RlZCBpbnB1dCBmcm9tICVzXG4iCm1zZ3N0ciAiSW5rYW5hbCBvbWRpcmlnZXJhZCB0aWxsICVzXG4iCgojOiB2bXNqb2JzLmM6NDk4CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWRpcmVjdGVkIGVycm9yIHRvICVzXG4iCm1zZ3N0ciAiRmVsa2FuYWwgb21kaXJpZ2VyYWQgdGlsbCAlc1xuIgoKIzogdm1zam9icy5jOjUwNQojLCBjLWZvcm1hdAptc2dpZCAiUmVkaXJlY3RlZCBvdXRwdXQgdG8gJXNcbiIKbXNnc3RyICJVdGthbmFsIG9tZGlyaWdlcmFkIHRpbGwgJXNcbiIKCiM6IHZtc2pvYnMuYzo1NjgKIywgYy1mb3JtYXQKbXNnaWQgIkV4ZWN1dGluZyAlcyBpbnN0ZWFkXG4iCm1zZ3N0ciAiVXRm9nIgJXMgaSBzdORsbGV0XG4iCgojOiB2bXNqb2JzLmM6NjY4CiMsIGMtZm9ybWF0Cm1zZ2lkICJFcnJvciBzcGF3bmluZywgJWRcbiIKbXNnc3RyICJGZWwgdmlkIGF2a25vcHBuaW5nLCAlZFxuIgoKIzogdnBhdGguYzo1NzEKbXNnaWQgIiIKIlxuIgoiIyBWUEFUSCBTZWFyY2ggUGF0aHNcbiIKbXNnc3RyICIiCiJcbiIKIiMgVlBBVEgtc/ZrduRnYXJcbiIKCiM6IHZwYXRoLmM6NTg4Cm1zZ2lkICIjIE5vIGB2cGF0aCcgc2VhcmNoIHBhdGhzLiIKbXNnc3RyICIjIEluZ2EgXCJ2cGF0aFwiLXP2a3bkZ2FyLiIKCiM6IHZwYXRoLmM6NTkwCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiMgJXUgYHZwYXRoJyBzZWFyY2ggcGF0aHMuXG4iCm1zZ3N0ciAiIgoiXG4iCiIjICV1IFwidnBhdGhcIi1z9mt25Gdhci5cbiIKCiM6IHZwYXRoLmM6NTkzCm1zZ2lkICIiCiJcbiIKIiMgTm8gZ2VuZXJhbCAoYFZQQVRIJyB2YXJpYWJsZSkgc2VhcmNoIHBhdGguIgptc2dzdHIgIiIKIlxuIgoiIyBJbmdlbiBhbGxt5G4gc/ZrduRnIChlbmxpZ3QgXCJWUEFUSFwiLXZhcmlhYmVsbikuIgoKIzogdnBhdGguYzo1OTkKbXNnaWQgIiIKIlxuIgoiIyBHZW5lcmFsIChgVlBBVEgnIHZhcmlhYmxlKSBzZWFyY2ggcGF0aDpcbiIKIiMgIgptc2dzdHIgIiIKIlxuIgoiIyBBbGxt5G4gc/ZrduRnIChlbmxpZ3QgXCJWUEFUSFwiLXZhcmlhYmVsbik6XG4iCiIjICIKCiN+IG1zZ2lkICIiCiN+ICJcbiIKI34gIiMgTm8gZmlsZXMuIgojfiBtc2dzdHIgIiIKI34gIlxuIgojfiAiIyBJbmdhIGZpbGVyLiIKCiN+IG1zZ2lkICIiCiN+ICJcbiIKI34gIiMgJXUgZmlsZXMgaW4gJXUgaGFzaCBidWNrZXRzLlxuIgojfiBtc2dzdHIgIiIKI34gIlxuIgojfiAiIyAldSBmaWxlciBpICV1IGhhc2hiZWjlbGxhcmUuXG4iCgojfiBtc2dpZCAiIyBhdmVyYWdlICUuM2YgZmlsZXMgcGVyIGJ1Y2tldCwgbWF4ICV1IGZpbGVzIGluIG9uZSBidWNrZXQuXG4iCiN+IG1zZ3N0ciAiIgojfiAiIyBpIGdlbm9tc25pdHQgJS4zZiBmaWxlciBwZXIgYmVo5WxsYXJlLCBo9mdzdCAldSBmaWxlciBpIHNhbW1hICIKI34gImJlaOVsbGFyZS5cbiIKCiN+IG1zZ2lkICJTeW50YXggZXJyb3IsIHN0aWxsIGluc2lkZSAnXCInXG4iCiN+IG1zZ3N0ciAiU3ludGF4ZmVsLCDkciBmb3J0ZmFyYW5kZSBpbm5hbmb2ciAnXCInXG4iCgojfiBtc2dpZCAiR290IGEgU0lHQ0hMRDsgJXUgdW5yZWFwZWQgY2hpbGRyZW4uXG4iCiN+IG1zZ3N0ciAiRXJo9mxsIFNJR0NITEQ7ICV1IGt2YXJ2YXJhbmRlIGJhcm5wcm9jZXNzZXIuXG4iCgojfiBtc2dpZCAiRElSRUNUT1JZIgojfiBtc2dzdHIgIktBVEFMT0ciCgojfiBtc2dpZCAiQ2hhbmdlIHRvIERJUkVDVE9SWSBiZWZvcmUgZG9pbmcgYW55dGhpbmciCiN+IG1zZ3N0ciAiQnl0IHRpbGwgS0FUQUxPRyBm9nJzdCIKCiN+IG1zZ2lkICJGTEFHUyIKI34gbXNnc3RyICJGTEFHR09SIgoKI34gbXNnaWQgIlN1c3BlbmQgcHJvY2VzcyB0byBhbGxvdyBhIGRlYnVnZ2VyIHRvIGF0dGFjaCIKI34gbXNnc3RyICJTdXNwZW5kZXJhIHByb2Nlc3NlbiBm9nIgYXR0IG32amxpZ2f2cmEgYW5zbHV0bmluZyBhdiBmZWxz9mthcmUiCgojfiBtc2dpZCAiRW52aXJvbm1lbnQgdmFyaWFibGVzIG92ZXJyaWRlIG1ha2VmaWxlcyIKI34gbXNnc3RyICJNaWxq9nZhcmlhYmxlciDlc2lkb3PkdHRlciBtYWtlZmlsZXIiCgojfiBtc2dpZCAiRklMRSIKI34gbXNnc3RyICJGSUwiCgojfiBtc2dpZCAiUmVhZCBGSUxFIGFzIGEgbWFrZWZpbGUiCiN+IG1zZ3N0ciAiQW525G5kIEZJTCBzb20gbWFrZWZpbCIKCiN+IG1zZ2lkICJTZWFyY2ggRElSRUNUT1JZIGZvciBpbmNsdWRlZCBtYWtlZmlsZXMiCiN+IG1zZ3N0ciAiR2Vub21z9msgS0FUQUxPRyBlZnRlciBpbmtsdWRlcmFkZSBtYWtlZmlsZXIiCgojfiBtc2dpZCAiRG9uJ3Qgc3RhcnQgbXVsdGlwbGUgam9icyB1bmxlc3MgbG9hZCBpcyBiZWxvdyBOIgojfiBtc2dzdHIgIlDlYvZyamEgZmxlcmEgam9iYiBlbmRhc3Qgb20gbGFzdGVuIHVuZGVyc3RpZ2VyIE4iCgojfiBtc2dpZCAiRG9uJ3QgYWN0dWFsbHkgcnVuIGFueSBjb21tYW5kczsganVzdCBwcmludCB0aGVtIgojfiBtc2dzdHIgIkv2ciBpbnRlIGtvbW1hbmRvbmEsIHNrcml2IGJhcmEgdXQgZGVtIgoKI34gbXNnaWQgIkNvbnNpZGVyIEZJTEUgdG8gYmUgdmVyeSBvbGQgYW5kIGRvbid0IHJlbWFrZSBpdCIKI34gbXNnc3RyICJCZXRyYWt0YSBGSUwgc29tIG15Y2tldCBnYW1tYWwgb2NoIOV0ZXJza2FwYSBkZW4gaW50ZSIKCiN+IG1zZ2lkICJEb24ndCBlY2hvIGNvbW1hbmRzIgojfiBtc2dzdHIgIsV0ZXJnZSBpbnRlIGtvbW1hbmRvbiIKCiN+IG1zZ2lkICJUdXJucyBvZmYgLWsiCiN+IG1zZ3N0ciAiU3TkbmdlciBhdiAtayIKCiN+IG1zZ2lkICJDb25zaWRlciBGSUxFIHRvIGJlIGluZmluaXRlbHkgbmV3IgojfiBtc2dzdHIgIkJldHJha3RhIEZJTCBzb20gaHVyIG55IHNvbSBoZWxzdCIKCiN+IG1zZ2lkICJEbyBub3Qgc3BlY2lmeSAtaiBvciAtLWpvYnMgaWYgc2guZXhlIGlzIG5vdCBhdmFpbGFibGUuIgojfiBtc2dzdHIgIkFuZ2UgaW50ZSAtaiBlbGxlciAtLWpvYnMgb20gc2guZXhlIGludGUgZmlubnMgdGlsbGfkbmdsaWcuIgoKI34gbXNnaWQgIlJlc2V0dGluZyBtYWtlIGZvciBzaW5nbGUgam9iIG1vZGUuIgojfiBtc2dzdHIgIsV0ZXJzdORsbGVyIG1ha2UgZvZyIGVua2Vsam9iYnNs5GdlLiIKCiN+IG1zZ2lkICJFbnRlcmluZyIKI34gbXNnc3RyICJH5XIgdGlsbCIKCiN+IG1zZ2lkICJMZWF2aW5nIgojfiBtc2dzdHIgIkzkbW5hciIKCiN+IG1zZ2lkICJubyBmaWxlIG5hbWUgZm9yIGAlc2luY2x1ZGUnIgojfiBtc2dzdHIgImluZ2V0IGZpbG5hbW4gdGlsbCBcIiVzaW5jbHVkZVwiIgoKI34gbXNnaWQgInRhcmdldCBgJXMnIGxlYXZlcyBwcmVyZXF1aXNpdGUgcGF0dGVybiBlbXB0eSIKI34gbXNnc3RyICJt5WxldCBcIiVzXCIgaGFyIGV0dCB0b210IGJlcm9lbmRlbfZuc3RlciIKCiN+IG1zZ2lkICIjIE5vIHZhcmlhYmxlcy4iCiN+IG1zZ3N0ciAiIyBJbmdhIHZhcmlhYmxlci4iCgojfiBtc2dpZCAiIyBhdmVyYWdlIG9mICUuMWYgdmFyaWFibGVzIHBlciBidWNrZXQsIG1heCAldSBpbiBvbmUgYnVja2V0LlxuIgojfiBtc2dzdHIgIiIKI34gIiMgaSBnZW5vbXNuaXR0ICUxLmYgdmFyaWFibGVyIHBlciBiZWjlbGxhcmUsIGj2Z3N0ICV1IGkgc2FtbWEgYmVo5WxsYXJlLlxuIgoKI34gbXNnaWQgIiMgYXZlcmFnZSBvZiAlZC4lZCB2YXJpYWJsZXMgcGVyIGJ1Y2tldCwgbWF4ICV1IGluIG9uZSBidWNrZXQuXG4iCiN+IG1zZ3N0ciAiIgojfiAiIyBpIGdlbm9tc25pdHQgJWQuJWQgdmFyaWFibGVyIHBlciBiZWjlbGxhcmUsIGj2Z3N0ICV1IGkgc2FtbWEgIgojfiAiYmVo5WxsYXJlLlxuIgo=