IyBHYWxpY2lhbiB0cmFuc2xhdGlvbiBvZiBHTlUgbWFrZS4KIyBDb3B5cmlnaHQgKEMpIDIwMDAsIDIwMDIgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMgSmFjb2JvIFRhcnJpbyA8anRhcnJpb0B0cmFzbm8ubmV0PiwgMjAwMCwgMjAwMi4KIwptc2dpZCAiIgptc2dzdHIgIiIKIlByb2plY3QtSWQtVmVyc2lvbjogbWFrZSAzLjgwXG4iCiJSZXBvcnQtTXNnaWQtQnVncy1UbzogYnVnLW1ha2VAZ251Lm9yZ1xuIgoiUE9ULUNyZWF0aW9uLURhdGU6IDIwMDYtMDQtMDEgMDE6NDAtMDUwMFxuIgoiUE8tUmV2aXNpb24tRGF0ZTogMjAwMi0xMC0wNSAxNDo0NiswMjAwXG4iCiJMYXN0LVRyYW5zbGF0b3I6IEphY29ibyBUYXJyaW8gPGp0YXJyaW9AdHJhc25vLm5ldD5cbiIKIkxhbmd1YWdlLVRlYW06IEdhbGljaWFuIDxncHVsLXRyYWR1Y2Npb25AY2V1LmZpLnVkYy5lcz5cbiIKIk1JTUUtVmVyc2lvbjogMS4wXG4iCiJDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4NTktMVxuIgoiQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdFxuIgoKIzogYXIuYzo1MwojLCBjLWZvcm1hdAptc2dpZCAiYXR0ZW1wdCB0byB1c2UgdW5zdXBwb3J0ZWQgZmVhdHVyZTogYCVzJyIKbXNnc3RyICJ0ZW50b3VzZSB1c2FyIHVuaGEgY2FyYWN0ZXLtc3RpY2Egbm9uIHNvcG9ydGFkYTogYCVzJyIKCiM6IGFyLmM6MTM3Cm1zZ2lkICJ0b3VjaCBhcmNoaXZlIG1lbWJlciBpcyBub3QgYXZhaWxhYmxlIG9uIFZNUyIKbXNnc3RyICJhIG9wZXJhY2nzbiBkZSB0b2NhciB1biBtZW1icm8gZG8gYXJxdWl2byBub24gZXN04SBkaXNwb/FpYmxlIGVuIFZNUyIKCiM6IGFyLmM6MTY4CiMsIGMtZm9ybWF0Cm1zZ2lkICJ0b3VjaDogQXJjaGl2ZSBgJXMnIGRvZXMgbm90IGV4aXN0Igptc2dzdHIgInRvdWNoOiBPIGFycXVpdm8gYCVzJyBub24gZXhpc3RlIgoKIzogYXIuYzoxNzEKIywgYy1mb3JtYXQKbXNnaWQgInRvdWNoOiBgJXMnIGlzIG5vdCBhIHZhbGlkIGFyY2hpdmUiCm1zZ3N0ciAidG91Y2g6IGAlcycgbm9uIOkgdW4gYXJxdWl2byB24WxpZG8iCgojOiBhci5jOjE3OAojLCBjLWZvcm1hdAptc2dpZCAidG91Y2g6IE1lbWJlciBgJXMnIGRvZXMgbm90IGV4aXN0IGluIGAlcyciCm1zZ3N0ciAidG91Y2g6IE8gbWVtYnJvIGAlcycgbm9uIGV4aXN0ZSBlbiBgJXMnIgoKIzogYXIuYzoxODUKIywgYy1mb3JtYXQKbXNnaWQgInRvdWNoOiBCYWQgcmV0dXJuIGNvZGUgZnJvbSBhcl9tZW1iZXJfdG91Y2ggb24gYCVzJyIKbXNnc3RyICJ0b3VjaDogQ/NkaWdvIGRlIHJldG9ybm8gaW5jb3JyZWN0byBkZSBhcl9tZW1iZXJfdG91Y2ggZW4gYCVzJyIKCiM6IGFyc2Nhbi5jOjY5CiMsIGMtZm9ybWF0Cm1zZ2lkICJsYnIkc2V0X21vZHVsZSBmYWlsZWQgdG8gZXh0cmFjdCBtb2R1bGUgaW5mbywgc3RhdHVzID0gJWQiCm1zZ3N0ciAiIgoiYSBjaGFtYWRhIGEgbGJyJHNldF9tb2R1bGUgbm9uIHB1aWRvIGV4dHJhZS1sYSBpbmZvcm1hY2nzbiBkbyBt82R1bG8sIHN0YXR1cyAiCiI9ICVkIgoKIzogYXJzY2FuLmM6MTU0CiMsIGMtZm9ybWF0Cm1zZ2lkICJsYnIkaW5pX2NvbnRyb2wgZmFpbGVkIHdpdGggc3RhdHVzID0gJWQiCm1zZ3N0ciAiYSBjaGFtYWRhIGEgbGJyJGluaV9jb250cm9sIGZhbGxvdSBjb24gc3RhdHVzID0gJWQiCgojOiBhcnNjYW4uYzoxNjUKIywgYy1mb3JtYXQKbXNnaWQgInVuYWJsZSB0byBvcGVuIGxpYnJhcnkgYCVzJyB0byBsb29rdXAgbWVtYmVyIGAlcyciCm1zZ3N0ciAibm9uIHNlIHBvZGUgYWJyaS1sYSBiaWJsaW90ZWNhIGAlcycgcGFyYSBidXNjYS1sbyBtZW1icm8gYCVzJyIKCiM6IGFyc2Nhbi5jOjgyNQojLCBjLWZvcm1hdAptc2dpZCAiTWVtYmVyIGAlcyclczogJWxkIGJ5dGVzIGF0ICVsZCAoJWxkKS5cbiIKbXNnc3RyICJNZW1icm8gYCVzJyVzOiAlbGQgYnl0ZXMgZW4gJWxkICglbGQpLlxuIgoKIzogYXJzY2FuLmM6ODI2Cm1zZ2lkICIgKG5hbWUgbWlnaHQgYmUgdHJ1bmNhdGVkKSIKbXNnc3RyICIgKG8gbm9tZSBwb2RlIHF1ZWRhciB0cnVuY2FkbykiCgojOiBhcnNjYW4uYzo4MjgKIywgYy1mb3JtYXQKbXNnaWQgIiAgRGF0ZSAlcyIKbXNnc3RyICIgIERhdGEgJXMiCgojOiBhcnNjYW4uYzo4MjkKIywgYy1mb3JtYXQKbXNnaWQgIiAgdWlkID0gJWQsIGdpZCA9ICVkLCBtb2RlID0gMCVvLlxuIgptc2dzdHIgIiAgdWlkID0gJWQsIGdpZCA9ICVkLCBtb2RvID0gMCVvLlxuIgoKIzogY29tbWFuZHMuYzo0MjIKbXNnaWQgIioqKiBCcmVhay5cbiIKbXNnc3RyICIqKiogSW50ZXJyb21waWRvLlxuIgoKIzogY29tbWFuZHMuYzo1NDUKIywgYy1mb3JtYXQKbXNnaWQgIioqKiBbJXNdIEFyY2hpdmUgbWVtYmVyIGAlcycgbWF5IGJlIGJvZ3VzOyBub3QgZGVsZXRlZCIKbXNnc3RyICIqKiogWyVzXSBPIG1lbWJybyBkbyBhcnF1aXZvIGAlcycgcG9kZSBub24gc2VyIGNvcnJlY3RvOyBub24gYm9ycmFkbyIKCiM6IGNvbW1hbmRzLmM6NTQ4CiMsIGMtZm9ybWF0Cm1zZ2lkICIqKiogQXJjaGl2ZSBtZW1iZXIgYCVzJyBtYXkgYmUgYm9ndXM7IG5vdCBkZWxldGVkIgptc2dzdHIgIioqKiBPIG1lbWJybyBkbyBhcnF1aXZvIGAlcycgcG9kZSBub24gc2VyIGNvcnJlY3RvOyBub24gYm9ycmFkbyIKCiM6IGNvbW1hbmRzLmM6NTYxCiMsIGMtZm9ybWF0Cm1zZ2lkICIqKiogWyVzXSBEZWxldGluZyBmaWxlIGAlcyciCm1zZ3N0ciAiKioqIFslc10gQm9ycmFuZG8gbyBmaWNoZWlybyBgJXMnIgoKIzogY29tbWFuZHMuYzo1NjMKIywgYy1mb3JtYXQKbXNnaWQgIioqKiBEZWxldGluZyBmaWxlIGAlcyciCm1zZ3N0ciAiKioqIEJvcnJhbmRvIG8gZmljaGVpcm8gYCVzJyIKCiM6IGNvbW1hbmRzLmM6NTk5Cm1zZ2lkICIjICBjb21tYW5kcyB0byBleGVjdXRlIgptc2dzdHIgIiMgIGNvbWFuZG9zIHBhcmEgZXhlY3V0YXIiCgojOiBjb21tYW5kcy5jOjYwMgptc2dpZCAiIChidWlsdC1pbik6Igptc2dzdHIgIiAoaW5jbHVpZGFzKToiCgojOiBjb21tYW5kcy5jOjYwNAojLCBjLWZvcm1hdAptc2dpZCAiIChmcm9tIGAlcycsIGxpbmUgJWx1KTpcbiIKbXNnc3RyICIgKGRlIGAlcycsIGxp8WEgJWx1KTpcbiIKCiM6IGRpci5jOjk4Mwptc2dpZCAiIgoiXG4iCiIjIERpcmVjdG9yaWVzXG4iCm1zZ3N0ciAiIgoiXG4iCiIjIERpcmVjdG9yaW9zXG4iCgojOiBkaXIuYzo5OTUKIywgYy1mb3JtYXQKbXNnaWQgIiMgJXM6IGNvdWxkIG5vdCBiZSBzdGF0J2QuXG4iCm1zZ3N0ciAiIyAlczogbm9uIHNlIHB1aWRvIGZhY2UtbGEgb3BlcmFjafNuIGRlIHN0YXQuXG4iCgojOiBkaXIuYzo5OTkKIywgYy1mb3JtYXQKbXNnaWQgIiMgJXMgKGtleSAlcywgbXRpbWUgJWQpOiBjb3VsZCBub3QgYmUgb3BlbmVkLlxuIgptc2dzdHIgIiMgJXMgKGNsYXZlICVzLCBtdGltZSAlZCk6IG5vbiBzZSBwdWlkbyBhYnJpci5cbiIKCiM6IGRpci5jOjEwMDMKIywgYy1mb3JtYXQKbXNnaWQgIiMgJXMgKGRldmljZSAlZCwgaW5vZGUgWyVkLCVkLCVkXSk6IGNvdWxkIG5vdCBiZSBvcGVuZWQuXG4iCm1zZ3N0ciAiIyAlcyAoZGlzcG9zaXRpdm8gJWQsIGlub2RlIFslZCwlZCwlZF0pOiBub24gc2UgcHVpZG8gYWJyaXIuXG4iCgojOiBkaXIuYzoxMDA4CiMsIGMtZm9ybWF0Cm1zZ2lkICIjICVzIChkZXZpY2UgJWxkLCBpbm9kZSAlbGQpOiBjb3VsZCBub3QgYmUgb3BlbmVkLlxuIgptc2dzdHIgIiMgJXMgKGRpc3Bvc2l0aXZvICVsZCwgaW5vZGUgJWxkKTogbm9uIHNlIHB1aWRvIGFicmlyLlxuIgoKIzogZGlyLmM6MTAzNQojLCBjLWZvcm1hdAptc2dpZCAiIyAlcyAoa2V5ICVzLCBtdGltZSAlZCk6ICIKbXNnc3RyICIjICVzIChjbGF2ZSAlcywgbXRpbWUgJWQpOiAiCgojOiBkaXIuYzoxMDM5CiMsIGMtZm9ybWF0Cm1zZ2lkICIjICVzIChkZXZpY2UgJWQsIGlub2RlIFslZCwlZCwlZF0pOiAiCm1zZ3N0ciAiIyAlcyAoZGlzcG9zaXRpdm8gJWQsIGlub2RlIFslZCwlZCwlZF0pOiAiCgojOiBkaXIuYzoxMDQ0CiMsIGMtZm9ybWF0Cm1zZ2lkICIjICVzIChkZXZpY2UgJWxkLCBpbm9kZSAlbGQpOiAiCm1zZ3N0ciAiIyAlcyAoZGlzcG9zaXRpdm8gJWxkLCBpbm9kZSAlbGQpOiAiCgojOiBkaXIuYzoxMDUwIGRpci5jOjEwNzEKbXNnaWQgIk5vIgptc2dzdHIgIk5vbiIKCiM6IGRpci5jOjEwNTMgZGlyLmM6MTA3NAptc2dpZCAiIGZpbGVzLCAiCm1zZ3N0ciAiIGZpY2hlaXJvcywgIgoKIzogZGlyLmM6MTA1NSBkaXIuYzoxMDc2Cm1zZ2lkICJubyIKbXNnc3RyICJub24iCgojOiBkaXIuYzoxMDU4Cm1zZ2lkICIgaW1wb3NzaWJpbGl0aWVzIgptc2dzdHIgIiBpbXBvc2libGVzIgoKIzogZGlyLmM6MTA2Mgptc2dpZCAiIHNvIGZhci4iCm1zZ3N0ciAiIGF0YSBhcXXtLiIKCiM6IGRpci5jOjEwNzkKIywgYy1mb3JtYXQKbXNnaWQgIiBpbXBvc3NpYmlsaXRpZXMgaW4gJWx1IGRpcmVjdG9yaWVzLlxuIgptc2dzdHIgIiBpbXBvc2libGVzIGVuICVsdSBkaXJlY3Rvcmlvcy5cbiIKCiM6IGV4cGFuZC5jOjEyOAojLCBjLWZvcm1hdAptc2dpZCAiUmVjdXJzaXZlIHZhcmlhYmxlIGAlcycgcmVmZXJlbmNlcyBpdHNlbGYgKGV2ZW50dWFsbHkpIgptc2dzdHIgIkEgdmFyaWFibGUgcmVjdXJzaXZhIGAlcycgZmFpIHJlZmVyZW5jaWEgYSBzaSBtZXNtYSAoYW8gZmluYWwpIgoKIzogZXhwYW5kLmM6MjY2Cm1zZ2lkICJ1bnRlcm1pbmF0ZWQgdmFyaWFibGUgcmVmZXJlbmNlIgptc2dzdHIgInJlZmVyZW5jaWEgYSB2YXJpYWJsZSBub24gcmVtYXRhZGEiCgojOiBmaWxlLmM6MjcwCiMsIGMtZm9ybWF0Cm1zZ2lkICJDb21tYW5kcyB3ZXJlIHNwZWNpZmllZCBmb3IgZmlsZSBgJXMnIGF0ICVzOiVsdSwiCm1zZ3N0ciAiRXNwZWNpZmlj4XJvbnNlIGNvbWFuZG9zIGRvIGZpY2hlaXJvIGAlcycgZW4gJXM6JWx1LCIKCiM6IGZpbGUuYzoyNzUKIywgYy1mb3JtYXQKbXNnaWQgIkNvbW1hbmRzIGZvciBmaWxlIGAlcycgd2VyZSBmb3VuZCBieSBpbXBsaWNpdCBydWxlIHNlYXJjaCwiCm1zZ3N0ciAiIgoiQXRvcOFyb25zZSBvcyBjb21hbmRvcyBkbyBmaWNoZWlybyBgJXMnIHBvciBidXNjYSBkZSByZWdyYXMgaW1wbO1jaXRhcywiCgojOiBmaWxlLmM6Mjc4CiMsIGMtZm9ybWF0Cm1zZ2lkICJidXQgYCVzJyBpcyBub3cgY29uc2lkZXJlZCB0aGUgc2FtZSBmaWxlIGFzIGAlcycuIgptc2dzdHIgInBlcm8gYWdvcmEgY29uc2lk6XJhc2UgcXVlIGAlcycg6SBvIG1lc21vIGZpY2hlaXJvIHF1ZSBgJXMnLiIKCiM6IGZpbGUuYzoyODEKIywgYy1mb3JtYXQKbXNnaWQgIkNvbW1hbmRzIGZvciBgJXMnIHdpbGwgYmUgaWdub3JlZCBpbiBmYXZvciBvZiB0aG9zZSBmb3IgYCVzJy4iCm1zZ3N0ciAiT3MgY29tYW5kb3MgZGUgYCVzJyBzZXLhbiBpZ25vcmFkb3MgZW4gZmF2b3IgZG9zIGRlIGAlcycuIgoKIzogZmlsZS5jOjMwMQojLCBjLWZvcm1hdAptc2dpZCAiY2FuJ3QgcmVuYW1lIHNpbmdsZS1jb2xvbiBgJXMnIHRvIGRvdWJsZS1jb2xvbiBgJXMnIgptc2dzdHIgIm5vbiBzZSBwb2RlIHJlbm9tZWFyIGAlcycgY29uIGRvdXMgcHVudG9zIGEgYCVzJyBjb24gY2F0cm8gcHVudG9zIgoKIzogZmlsZS5jOjMwNgojLCBjLWZvcm1hdAptc2dpZCAiY2FuJ3QgcmVuYW1lIGRvdWJsZS1jb2xvbiBgJXMnIHRvIHNpbmdsZS1jb2xvbiBgJXMnIgptc2dzdHIgIm5vbiBzZSBwb2RlIHJlbm9tZWFyIGAlcycgY29uIGNhdHJvIHB1bnRvcyBhIGAlcycgY29uIGRvdXMgcHVudG9zIgoKIzogZmlsZS5jOjM4MQojLCBjLWZvcm1hdAptc2dpZCAiKioqIERlbGV0aW5nIGludGVybWVkaWF0ZSBmaWxlIGAlcyciCm1zZ3N0ciAiKioqIEJvcnJhbmRvIG8gZmljaGVpcm8gaW50ZXJtZWRpbyBgJXMnIgoKIzogZmlsZS5jOjM4NQptc2dpZCAiUmVtb3ZpbmcgaW50ZXJtZWRpYXRlIGZpbGVzLi4uXG4iCm1zZ3N0ciAiQm9ycmFuZG8gb3MgZmljaGVpcm9zIGludGVybWVkaW9zLi4uXG4iCgojOiBmaWxlLmM6NzgxCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogVGltZXN0YW1wIG91dCBvZiByYW5nZTsgc3Vic3RpdHV0aW5nICVzIgptc2dzdHIgIiVzOiBNYXJjYSBkZSB0ZW1wbyBm83JhIGRlIHJhbmdvOyBzdWJzdGl0de1uZG8gJXMiCgojOiBmaWxlLmM6NzgyCm1zZ2lkICJDdXJyZW50IHRpbWUiCm1zZ3N0ciAiSG9yYSBhY3R1YWwiCgojOiBmaWxlLmM6ODgxCm1zZ2lkICIjIE5vdCBhIHRhcmdldDoiCm1zZ3N0ciAiIyBOb24g6SB1biBvYnhlY3Rpdm86IgoKIzogZmlsZS5jOjkwMwptc2dpZCAiIyAgUHJlY2lvdXMgZmlsZSAocHJlcmVxdWlzaXRlIG9mIC5QUkVDSU9VUykuIgptc2dzdHIgIiMgIEZpY2hlaXJvIHByZWNpb3NvIChwcmVycmVxdWlzaXRvIGRlIC5QUkVDSU9VUykuIgoKIzogZmlsZS5jOjkwNQptc2dpZCAiIyAgUGhvbnkgdGFyZ2V0IChwcmVyZXF1aXNpdGUgb2YgLlBIT05ZKS4iCm1zZ3N0ciAiIyAgT2J4ZWN0aXZvIGZhbHNvIChwcmVycmVxdWlzaXRvIGRlIC5QSE9OWSkuIgoKIzogZmlsZS5jOjkwNwptc2dpZCAiIyAgQ29tbWFuZC1saW5lIHRhcmdldC4iCm1zZ3N0ciAiIyAgT2J4ZWN0aXZvIGRhIGxp8WEgZGUgY29tYW5kby4iCgojOiBmaWxlLmM6OTA5CiMsIGZ1enp5Cm1zZ2lkICIjICBBIGRlZmF1bHQsIE1BS0VGSUxFUywgb3IgLWluY2x1ZGUvc2luY2x1ZGUgbWFrZWZpbGUuIgptc2dzdHIgIiMgIFVuIGZpY2hlaXJvIGRlIG1ha2UgcG9yIGRlZmVjdG8gb3UgZGUgTUFLRUZJTEVTLiIKCiM6IGZpbGUuYzo5MTEKbXNnaWQgIiMgIEltcGxpY2l0IHJ1bGUgc2VhcmNoIGhhcyBiZWVuIGRvbmUuIgptc2dzdHIgIiMgIEbteG9zZSBhIGJ1c2NhIGRlIHJlZ3JhcyBpbXBs7WNpdGFzLiIKCiM6IGZpbGUuYzo5MTIKbXNnaWQgIiMgIEltcGxpY2l0IHJ1bGUgc2VhcmNoIGhhcyBub3QgYmVlbiBkb25lLiIKbXNnc3RyICIjICBOb24gc2UgZml4byBhIGJ1c2NhIGRlIHJlZ3JhcyBpbXBs7WNpdGFzLiIKCiM6IGZpbGUuYzo5MTQKIywgYy1mb3JtYXQKbXNnaWQgIiMgIEltcGxpY2l0L3N0YXRpYyBwYXR0ZXJuIHN0ZW06IGAlcydcbiIKbXNnc3RyICIjICBSYWl6IGRvIHBhdHLzbiBpbXBs7WNpdG8vZXN04XRpY286IGAlcydcbiIKCiM6IGZpbGUuYzo5MTYKbXNnaWQgIiMgIEZpbGUgaXMgYW4gaW50ZXJtZWRpYXRlIHByZXJlcXVpc2l0ZS4iCm1zZ3N0ciAiIyAgTyBmaWNoZWlybyDpIHVuIHByZXJyZXF1aXNpdG8gaW50ZXJtZWRpby4iCgojOiBmaWxlLmM6OTE5Cm1zZ2lkICIjICBBbHNvIG1ha2VzOiIKbXNnc3RyICIjICBUYW3pbiBzZSBmYWk6IgoKIzogZmlsZS5jOjkyNQptc2dpZCAiIyAgTW9kaWZpY2F0aW9uIHRpbWUgbmV2ZXIgY2hlY2tlZC4iCm1zZ3N0ciAiIyAgTnVuY2Egc2UgY29tcHJvYm91IG8gdGVtcG8gZGUgbW9kaWZpY2FjafNuLiIKCiM6IGZpbGUuYzo5MjcKbXNnaWQgIiMgIEZpbGUgZG9lcyBub3QgZXhpc3QuIgptc2dzdHIgIiMgIE8gZmljaGVpcm8gbm9uIGV4aXN0ZS4iCgojOiBmaWxlLmM6OTI5Cm1zZ2lkICIjICBGaWxlIGlzIHZlcnkgb2xkLiIKbXNnc3RyICIjICBPIGZpY2hlaXJvIOkgbW9pIGFudGlnby4iCgojOiBmaWxlLmM6OTM0CiMsIGMtZm9ybWF0Cm1zZ2lkICIjICBMYXN0IG1vZGlmaWVkICVzXG4iCm1zZ3N0ciAiIyAg2mx0aW1hIG1vZGlmaWNhY2nzbjogJXNcbiIKCiM6IGZpbGUuYzo5MzcKbXNnaWQgIiMgIEZpbGUgaGFzIGJlZW4gdXBkYXRlZC4iCm1zZ3N0ciAiIyAgTyBmaWNoZWlybyBmb2kgYWN0dWFsaXphZG8uIgoKIzogZmlsZS5jOjkzNwptc2dpZCAiIyAgRmlsZSBoYXMgbm90IGJlZW4gdXBkYXRlZC4iCm1zZ3N0ciAiIyAgTyBmaWNoZWlybyBub24gZm9pIGFjdHVhbGl6YWRvLiIKCiM6IGZpbGUuYzo5NDEKbXNnaWQgIiMgIENvbW1hbmRzIGN1cnJlbnRseSBydW5uaW5nIChUSElTIElTIEEgQlVHKS4iCm1zZ3N0ciAiIyAgQ29tYW5kb3MgcXVlIHNlIGVzdOFuIGEgZXhlY3V0YXIgYWdvcmEgKElTVE8gySBVTiBFUlJPKS4iCgojOiBmaWxlLmM6OTQ0Cm1zZ2lkICIjICBEZXBlbmRlbmNpZXMgY29tbWFuZHMgcnVubmluZyAoVEhJUyBJUyBBIEJVRykuIgptc2dzdHIgIiMgIENvbWFuZG9zIGRlIGRlcGVuZGVuY2lhcyBxdWUgc2UgZXN04W4gYSBleGVjdXRhciAoSVNUTyDJIFVOIEVSUk8pLiIKCiM6IGZpbGUuYzo5NTMKbXNnaWQgIiMgIFN1Y2Nlc3NmdWxseSB1cGRhdGVkLiIKbXNnc3RyICIjICBBY3R1YWxpemFkbyBjb24g6XhpdG8uIgoKIzogZmlsZS5jOjk1Nwptc2dpZCAiIyAgTmVlZHMgdG8gYmUgdXBkYXRlZCAoLXEgaXMgc2V0KS4iCm1zZ3N0ciAiIyAgVGVuIHF1ZSBzZXIgYWN0dWFsaXphZG8gKC1xIGVzdOEgZXN0YWJyZWNpZG8pLiIKCiM6IGZpbGUuYzo5NjAKbXNnaWQgIiMgIEZhaWxlZCB0byBiZSB1cGRhdGVkLiIKbXNnc3RyICIjICBOb24gc2UgcHVpZG8gYWN0dWFsaXphci4iCgojOiBmaWxlLmM6OTYzCm1zZ2lkICIjICBJbnZhbGlkIHZhbHVlIGluIGB1cGRhdGVfc3RhdHVzJyBtZW1iZXIhIgptc2dzdHIgIiMgIKFWYWxvciBub24gduFsaWRvIG5vIG1lbWJybyBgdXBkYXRlX3N0YXR1cychIgoKIzogZmlsZS5jOjk3MAptc2dpZCAiIyAgSW52YWxpZCB2YWx1ZSBpbiBgY29tbWFuZF9zdGF0ZScgbWVtYmVyISIKbXNnc3RyICIjICChVmFsb3Igbm9uIHbhbGlkbyBubyBtZW1icm8gYGNvbW1hbmRfc3RhdGUnISIKCiM6IGZpbGUuYzo5ODkKbXNnaWQgIiIKIlxuIgoiIyBGaWxlcyIKbXNnc3RyICIiCiJcbiIKIiMgRmljaGVpcm9zIgoKIzogZmlsZS5jOjk5Mwptc2dpZCAiIgoiXG4iCiIjIGZpbGVzIGhhc2gtdGFibGUgc3RhdHM6XG4iCiIjICIKbXNnc3RyICIiCiJcbiIKIiMgZXN0YXTtc3RpY2FzIGRhIHThYm9hIGhhc2ggZGUgZmljaGVpcm9zOlxuIgoiIyAiCgojOiBmdW5jdGlvbi5jOjc1OQptc2dpZCAibm9uLW51bWVyaWMgZmlyc3QgYXJndW1lbnQgdG8gYHdvcmQnIGZ1bmN0aW9uIgptc2dzdHIgInByaW1laXJvIGFyZ3VtZW50byBkYSBmdW5jafNuIGB3b3JkJyBub24gbnVt6XJpY28iCgojOiBmdW5jdGlvbi5jOjc2NAptc2dpZCAiZmlyc3QgYXJndW1lbnQgdG8gYHdvcmQnIGZ1bmN0aW9uIG11c3QgYmUgZ3JlYXRlciB0aGFuIDAiCm1zZ3N0ciAibyBwcmltZWlybyBhcmd1bWVudG8gZGEgZnVuY2nzbiBgd29yZCcgZGViZSBzZXIgbWFpb3IgcXVlIDAiCgojOiBmdW5jdGlvbi5jOjc4NQptc2dpZCAibm9uLW51bWVyaWMgZmlyc3QgYXJndW1lbnQgdG8gYHdvcmRsaXN0JyBmdW5jdGlvbiIKbXNnc3RyICJwcmltZWlybyBhcmd1bWVudG8gZGEgZnVuY2nzbiBgd29yZGxpc3QnIG5vbiBudW3pcmljbyIKCiM6IGZ1bmN0aW9uLmM6Nzg3Cm1zZ2lkICJub24tbnVtZXJpYyBzZWNvbmQgYXJndW1lbnQgdG8gYHdvcmRsaXN0JyBmdW5jdGlvbiIKbXNnc3RyICJzZWd1bmRvIGFyZ3VtZW50byBkYSBmdW5jafNuIGB3b3JkbGlzdCcgbm9uIG51belyaWNvIgoKIzogZnVuY3Rpb24uYzoxNDUzCiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiY3JlYXRlX2NoaWxkX3Byb2Nlc3M6IER1cGxpY2F0ZUhhbmRsZShJbikgZmFpbGVkIChlPSVsZClcbiIKbXNnc3RyICJjcmVhdGVfY2hpbGRfcHJvY2VzczogYSBjaGFtYWRhIGEgRHVwbGljYXRlSGFuZGxlKEluKSBmYWxsb3UgKGU9JWQpXG4iCgojOiBmdW5jdGlvbi5jOjE0NjQKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICJjcmVhdGVfY2hpbGRfcHJvY2VzczogRHVwbGljYXRlSGFuZGxlKEVycikgZmFpbGVkIChlPSVsZClcbiIKbXNnc3RyICJjcmVhdGVfY2hpbGRfcHJvY2VzczogYSBjaGFtYWRhIGEgRHVwbGljYXRlSGFuZGxlKEVycikgZmFsbG91IChlPSVkKVxuIgoKIzogZnVuY3Rpb24uYzoxNDY5CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiQ3JlYXRlUGlwZSgpIGZhaWxlZCAoZT0lbGQpXG4iCm1zZ3N0ciAiQSBjaGFtYWRhIGEgQ3JlYXRlUGlwZSgpIGZhbGxvdSAoZT0lZClcbiIKCiM6IGZ1bmN0aW9uLmM6MTQ3NAptc2dpZCAid2luZG93czMyX29wZW5waXBlICgpOiBwcm9jZXNzX2luaXRfZmQoKSBmYWlsZWRcbiIKbXNnc3RyICJ3aW5kb3dzMzJfb3BlbnBpcGUgKCk6IGEgY2hhbWFkYSBhIHByb2Nlc3NfaW5pdF9mZCgpIGZhbGxvdVxuIgoKIzogZnVuY3Rpb24uYzoxNzI1CiMsIGMtZm9ybWF0Cm1zZ2lkICJDbGVhbmluZyB1cCB0ZW1wb3JhcnkgYmF0Y2ggZmlsZSAlc1xuIgptc2dzdHIgIkxpbXBhbmRvIG8gZmljaGVpcm8gZGUgbG90ZXMgdGVtcG9yYWwgJXNcbiIKCiM6IGZ1bmN0aW9uLmM6MjEwMQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgImluc3VmZmljaWVudCBudW1iZXIgb2YgYXJndW1lbnRzICglZCkgdG8gZnVuY3Rpb24gYCVzJyIKbXNnc3RyICJO+m1lcm8gZGUgYXJndW1lbnRvcyBpbnN1ZmljaWVudGUgKCVkKSBuYSBjaGFtYWRhIOEgZnVuY2nzbiBgJXMnIgoKIzogZnVuY3Rpb24uYzoyMTEzCiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAidW5pbXBsZW1lbnRlZCBvbiB0aGlzIHBsYXRmb3JtOiBmdW5jdGlvbiBgJXMnIgptc2dzdHIgIk5vbiBpbXBsZW1lbnRhZGEgbmVzdGEgcGxhdGFmb3JtYTogZnVuY2nzbiBgJXMnIgoKIzogZnVuY3Rpb24uYzoyMTYzCiMsIGMtZm9ybWF0Cm1zZ2lkICJ1bnRlcm1pbmF0ZWQgY2FsbCB0byBmdW5jdGlvbiBgJXMnOiBtaXNzaW5nIGAlYyciCm1zZ3N0ciAiY2hhbWFkYSDhIGZ1bmNp824gYCVzJyBub24gcmVtYXRhZGE6IGZhbGxhIGAlYyciCgojOiBnZXRvcHQuYzo2NjMKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBvcHRpb24gYCVzJyBpcyBhbWJpZ3VvdXNcbiIKbXNnc3RyICIlczogYSBvcGNp824gYCVzJyDpIGFtYmlndWFcbiIKCiM6IGdldG9wdC5jOjY4NwojLCBjLWZvcm1hdAptc2dpZCAiJXM6IG9wdGlvbiBgLS0lcycgZG9lc24ndCBhbGxvdyBhbiBhcmd1bWVudFxuIgptc2dzdHIgIiVzOiBhIG9wY2nzbiBgLS0lcycgbm9uIGFkbWl0ZSB1biBhcmd1bWVudG9cbiIKCiM6IGdldG9wdC5jOjY5MgojLCBjLWZvcm1hdAptc2dpZCAiJXM6IG9wdGlvbiBgJWMlcycgZG9lc24ndCBhbGxvdyBhbiBhcmd1bWVudFxuIgptc2dzdHIgIiVzOiBhIG9wY2nzbiBgJWMlcycgbm9uIGFkbWl0ZSB1biBhcmd1bWVudG9cbiIKCiM6IGdldG9wdC5jOjcwOSBnZXRvcHQuYzo4ODIKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBvcHRpb24gYCVzJyByZXF1aXJlcyBhbiBhcmd1bWVudFxuIgptc2dzdHIgIiVzOiBhIG9wY2nzbiBgJXMnIHByZWNpc2EgZHVuIGFyZ3VtZW50b1xuIgoKIzogZ2V0b3B0LmM6NzM4CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogdW5yZWNvZ25pemVkIG9wdGlvbiBgLS0lcydcbiIKbXNnc3RyICIlczogb3BjafNuIGAtLSVzJyBub24gcmVjb/FlY2lkYVxuIgoKIzogZ2V0b3B0LmM6NzQyCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogdW5yZWNvZ25pemVkIG9wdGlvbiBgJWMlcydcbiIKbXNnc3RyICIlczogb3BjafNuIGAlYyVzJyBub24gcmVjb/FlY2lkYVxuIgoKIzogZ2V0b3B0LmM6NzY4CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogaWxsZWdhbCBvcHRpb24gLS0gJWNcbiIKbXNnc3RyICIlczogb3BjafNuIG5vbiB24WxpZGEgLS0gJWNcbiIKCiM6IGdldG9wdC5jOjc3MQojLCBjLWZvcm1hdAptc2dpZCAiJXM6IGludmFsaWQgb3B0aW9uIC0tICVjXG4iCm1zZ3N0ciAiJXM6IG9wY2nzbiBub24gduFsaWRhIC0tICVjXG4iCgojOiBnZXRvcHQuYzo4MDEgZ2V0b3B0LmM6OTMxCiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogb3B0aW9uIHJlcXVpcmVzIGFuIGFyZ3VtZW50IC0tICVjXG4iCm1zZ3N0ciAiJXM6IGEgb3BjafNuIHByZWNpc2EgZHVuIGFyZ3VtZW50byAtLSAlY1xuIgoKIzogZ2V0b3B0LmM6ODQ4CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogb3B0aW9uIGAtVyAlcycgaXMgYW1iaWd1b3VzXG4iCm1zZ3N0ciAiJXM6IGEgb3BjafNuIGAtVyAlcycg6SBhbWJpZ3VhXG4iCgojOiBnZXRvcHQuYzo4NjYKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBvcHRpb24gYC1XICVzJyBkb2Vzbid0IGFsbG93IGFuIGFyZ3VtZW50XG4iCm1zZ3N0ciAiJXM6IGEgb3BjafNuIGAtVyAlcycgbm9uIGFkbWl0ZSB1biBhcmd1bWVudG9cbiIKCiM6IGhhc2guYzo1MQojLCBjLWZvcm1hdAptc2dpZCAiY2FuJ3QgYWxsb2NhdGUgJWxkIGJ5dGVzIGZvciBoYXNoIHRhYmxlOiBtZW1vcnkgZXhoYXVzdGVkIgptc2dzdHIgIm5vbiBzZSBwb2RlbiByZXNlcnZhciAlbGQgYnl0ZXMgcGFyYSBhIHThYm9hIGhhc2g6IG1lbW9yaWEgZXNnb3RhZGEiCgojOiBoYXNoLmM6MjgyCiMsIGMtZm9ybWF0Cm1zZ2lkICJMb2FkPSVsZC8lbGQ9JS4wZiUlLCAiCm1zZ3N0ciAiQ2FyZ2E9JWxkLyVsZD0lLjBmJSUsICIKCiM6IGhhc2guYzoyODQKIywgYy1mb3JtYXQKbXNnaWQgIlJlaGFzaD0lZCwgIgptc2dzdHIgIlJlaGFzaD0lZCwgIgoKIzogaGFzaC5jOjI4NQojLCBjLWZvcm1hdAptc2dpZCAiQ29sbGlzaW9ucz0lbGQvJWxkPSUuMGYlJSIKbXNnc3RyICJDb2xpc2nzbnM9JWxkLyVsZD0lLjBmJSUiCgojOiBpbXBsaWNpdC5jOjQxCiMsIGMtZm9ybWF0Cm1zZ2lkICJMb29raW5nIGZvciBhbiBpbXBsaWNpdCBydWxlIGZvciBgJXMnLlxuIgptc2dzdHIgIkJ1c2NhbmRvIHVuaGEgcmVncmEgaW1wbO1jaXRhIHBhcmEgYCVzJy5cbiIKCiM6IGltcGxpY2l0LmM6NTcKIywgYy1mb3JtYXQKbXNnaWQgIkxvb2tpbmcgZm9yIGFyY2hpdmUtbWVtYmVyIGltcGxpY2l0IHJ1bGUgZm9yIGAlcycuXG4iCm1zZ3N0ciAiQnVzY2FuZG8gdW5oYSByZWdyYSBpbXBs7WNpdGEgbWVtYnJvIGRvIGFycXVpdm8gcGFyYSBgJXMnLlxuIgoKIzogaW1wbGljaXQuYzozMTkKbXNnaWQgIkF2b2lkaW5nIGltcGxpY2l0IHJ1bGUgcmVjdXJzaW9uLlxuIgptc2dzdHIgIkV2aXRhbmRvIGEgcmVjdXJzafNuIGRlIHJlZ3JhcyBpbXBs7WNpdGFzLlxuIgoKIzogaW1wbGljaXQuYzo0NzYKIywgYy1mb3JtYXQKbXNnaWQgIlRyeWluZyBwYXR0ZXJuIHJ1bGUgd2l0aCBzdGVtIGAlLipzJy5cbiIKbXNnc3RyICJQcm9iYW5kbyBhIHJlZ3JhIGRlIHBhdHLzbiBjb24gcmFpeiBgJS4qcycuXG4iCgojOiBpbXBsaWNpdC5jOjY2NwojLCBjLWZvcm1hdAptc2dpZCAiUmVqZWN0aW5nIGltcG9zc2libGUgaW1wbGljaXQgcHJlcmVxdWlzaXRlIGAlcycuXG4iCm1zZ3N0ciAiUmV4ZWl0YW5kbyBvIHByZXJyZXF1aXNpdG8gaW1wbO1jaXRvIGltcG9zaWJsZSBgJXMnLlxuIgoKIzogaW1wbGljaXQuYzo2NjgKIywgYy1mb3JtYXQKbXNnaWQgIlJlamVjdGluZyBpbXBvc3NpYmxlIHJ1bGUgcHJlcmVxdWlzaXRlIGAlcycuXG4iCm1zZ3N0ciAiUmV4ZWl0YW5kbyBvIHByZXJyZXF1aXNpdG8gaW1wb3NpYmxlIGAlcycuXG4iCgojOiBpbXBsaWNpdC5jOjY3OAojLCBjLWZvcm1hdAptc2dpZCAiVHJ5aW5nIGltcGxpY2l0IHByZXJlcXVpc2l0ZSBgJXMnLlxuIgptc2dzdHIgIlByb2JhbmRvIG8gcHJlcnJlcXVpc2l0byBpbXBs7WNpdG8gYCVzJy5cbiIKCiM6IGltcGxpY2l0LmM6Njc5CiMsIGMtZm9ybWF0Cm1zZ2lkICJUcnlpbmcgcnVsZSBwcmVyZXF1aXNpdGUgYCVzJy5cbiIKbXNnc3RyICJQcm9iYW5kbyBvIHByZXJyZXF1aXNpdG8gYCVzJy5cbiIKCiM6IGltcGxpY2l0LmM6NzEwCiMsIGMtZm9ybWF0Cm1zZ2lkICJGb3VuZCBwcmVyZXF1aXNpdGUgYCVzJyBhcyBWUEFUSCBgJXMnXG4iCm1zZ3N0ciAiQXRvcG91c2UgYSBvIHByZXJyZXF1aXNpdG8gYCVzJyBjb21hIFZQQVRIIGAlcydcbiIKCiM6IGltcGxpY2l0LmM6NzMwCiMsIGMtZm9ybWF0Cm1zZ2lkICJMb29raW5nIGZvciBhIHJ1bGUgd2l0aCBpbnRlcm1lZGlhdGUgZmlsZSBgJXMnLlxuIgptc2dzdHIgIkJ1c2NhbmRvIHVuaGEgcmVncmEgY28gZmljaGVpcm8gaW50ZXJtZWRpbyBgJXMnLlxuIgoKIzogam9iLmM6MzIxCiMsIGZ1enp5Cm1zZ2lkICJDYW5ub3QgY3JlYXRlIGEgdGVtcG9yYXJ5IGZpbGVcbiIKbXNnc3RyICJmd3JpdGUgKGZpY2hlaXJvIHRlbXBvcmFsKSIKCiM6IGpvYi5jOjM4OAojLCBjLWZvcm1hdAptc2dpZCAiKioqIFslc10gRXJyb3IgMHgleCAoaWdub3JlZCkiCm1zZ3N0ciAiKioqIFslc10gRXJybyAweCV4IChpZ25vcmFkbykiCgojOiBqb2IuYzozODkKIywgYy1mb3JtYXQKbXNnaWQgIioqKiBbJXNdIEVycm9yIDB4JXgiCm1zZ3N0ciAiKioqIFslc10gRXJybyAweCV4IgoKIzogam9iLmM6MzkzCiMsIGMtZm9ybWF0Cm1zZ2lkICJbJXNdIEVycm9yICVkIChpZ25vcmVkKSIKbXNnc3RyICJbJXNdIEVycm8gJWQgKGlnbm9yYWRvKSIKCiM6IGpvYi5jOjM5NAojLCBjLWZvcm1hdAptc2dpZCAiKioqIFslc10gRXJyb3IgJWQiCm1zZ3N0ciAiKioqIFslc10gRXJybyAlZCIKCiM6IGpvYi5jOjM5OQptc2dpZCAiIChjb3JlIGR1bXBlZCkiCm1zZ3N0ciAiIChtZW1vcmlhIGVudm9yY2FkYSkiCgojOiBqb2IuYzo0ODgKbXNnaWQgIioqKiBXYWl0aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMuLi4uIgptc2dzdHIgIioqKiBBZ2FyZGFuZG8gcG9yIHRyYWJhbGxvcyBub24gcmVtYXRhZG9zLi4uLiIKCiM6IGpvYi5jOjUxOAojLCBjLWZvcm1hdAptc2dpZCAiTGl2ZSBjaGlsZCAweCUwOGx4ICglcykgUElEICVsZCAlc1xuIgptc2dzdHIgIlByb2Nlc28gZmlsbG8gdml2byAweCUwOGx4ICglcykgUElEICVsZCAlc1xuIgoKIzogam9iLmM6NTIwIGpvYi5jOjcwMSBqb2IuYzo4MDQgam9iLmM6MTQ1Nwptc2dpZCAiIChyZW1vdGUpIgptc2dzdHIgIiAocmVtb3RvKSIKCiM6IGpvYi5jOjY5OAojLCBjLWZvcm1hdAptc2dpZCAiUmVhcGluZyBsb3NpbmcgY2hpbGQgMHglMDhseCBQSUQgJWxkICVzXG4iCm1zZ3N0ciAiQ29sbGVpdGFuZG8gbyBwcm9jZXNvIGZpbGxvIHBlcmRlZG9yIDB4JTA4bHggUElEICVsZCAlc1xuIgoKIzogam9iLmM6Njk5CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWFwaW5nIHdpbm5pbmcgY2hpbGQgMHglMDhseCBQSUQgJWxkICVzXG4iCm1zZ3N0ciAiQ29sbGVpdGFuZG8gbyBwcm9jZXNvIGZpbGxvIGdh8WFkb3IgMHglMDhseCBQSUQgJWxkICVzXG4iCgojOiBqb2IuYzo3MDQKIywgYy1mb3JtYXQKbXNnaWQgIkNsZWFuaW5nIHVwIHRlbXAgYmF0Y2ggZmlsZSAlc1xuIgptc2dzdHIgIkxpbXBhbmRvIG8gZmljaGVpcm8gZGUgbG90ZXMgdGVtcG9yYWwgJXNcbiIKCiM6IGpvYi5jOjgwMgojLCBjLWZvcm1hdAptc2dpZCAiUmVtb3ZpbmcgY2hpbGQgMHglMDhseCBQSUQgJWxkJXMgZnJvbSBjaGFpbi5cbiIKbXNnc3RyICJFbGltaW5hbmRvIG8gcHJvY2VzbyBmaWxsbyAweCUwOGx4IFBJRCAlbGQlcyBkYSBjYWRlYS5cbiIKCiM6IGpvYi5jOjg2Mgptc2dpZCAid3JpdGUgam9ic2VydmVyIgptc2dzdHIgIndyaXRlIGpvYnNlcnZlciIKCiM6IGpvYi5jOjg2NAojLCBjLWZvcm1hdAptc2dpZCAiUmVsZWFzZWQgdG9rZW4gZm9yIGNoaWxkIDB4JTA4bHggKCVzKS5cbiIKbXNnc3RyICJMaWJlcm91c2UgdW4gZWxlbWVudG8gcGFyYSBvIHByb2Nlc28gZmlsbG8gMHglMDhseCAoJXMpLlxuIgoKIzogam9iLmM6MTM4MwojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgInByb2Nlc3NfZWFzeSgpIGZhaWxlZCB0byBsYXVuY2ggcHJvY2VzcyAoZT0lbGQpXG4iCm1zZ3N0ciAicHJvY2Vzc19lYXN5KCkgbm9uIHB1aWRvIGxhbnphLWxvIHByb2Nlc28gKGU9JWQpXG4iCgojOiBqb2IuYzoxMzg3IGpvYi5jOjIwMjAKIywgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiQ291bnRlZCAlZCBhcmdzIGluIGZhaWxlZCBsYXVuY2hcbiIKbXNnc3RyICIiCiJcbiIKIkNvbnThcm9uc2UgJWQgYXJndW1lbnRvcyBubyBsYW56YW1lbnRvIHF1ZSBmYWxsb3VcbiIKCiM6IGpvYi5jOjE0NTUKIywgYy1mb3JtYXQKbXNnaWQgIlB1dHRpbmcgY2hpbGQgMHglMDhseCAoJXMpIFBJRCAlbGQlcyBvbiB0aGUgY2hhaW4uXG4iCm1zZ3N0ciAiUG/xZW5kbyBvIHByb2Nlc28gZmlsbG8gMHglMDhseCAoJXMpIFBJRCAlbGQlcyBuYSBjYWRlYS5cbiIKCiM6IGpvYi5jOjE3MDkKIywgYy1mb3JtYXQKbXNnaWQgIk9idGFpbmVkIHRva2VuIGZvciBjaGlsZCAweCUwOGx4ICglcykuXG4iCm1zZ3N0ciAiT2J07XZvc2UgdW4gZWxlbWVudG8gcGFyYSBvIHByb2Nlc28gZmlsbG8gMHglMDhseCAoJXMpLlxuIgoKIzogam9iLmM6MTcxOAptc2dpZCAicmVhZCBqb2JzIHBpcGUiCm1zZ3N0ciAibGVjdHVyYSBkbyBjYW5vIGRlIHRyYWJhbGxvcyIKCiM6IGpvYi5jOjE4MzIKbXNnaWQgImNhbm5vdCBlbmZvcmNlIGxvYWQgbGltaXRzIG9uIHRoaXMgb3BlcmF0aW5nIHN5c3RlbSIKbXNnc3RyICJub24gc2UgcG9kZW4gaW1wb/FlciBs7W1pdGVzIGRlIGNhcmdhIG5lc3RlIHNpc3RlbWEgb3BlcmF0aXZvIgoKIzogam9iLmM6MTgzNAptc2dpZCAiY2Fubm90IGVuZm9yY2UgbG9hZCBsaW1pdDogIgptc2dzdHIgIm5vbiBzZSBwb2RlIGltcG/xZXIgdW4gbO1taXRlIGRlIGNhcmdhOiAiCgojOiBqb2IuYzoxOTA3Cm1zZ2lkICJubyBtb3JlIGZpbGUgaGFuZGxlczogY291bGQgbm90IGR1cGxpY2F0ZSBzdGRpblxuIgptc2dzdHIgIiIKCiM6IGpvYi5jOjE5MDkKbXNnaWQgIm5vIG1vcmUgZmlsZSBoYW5kbGVzOiBjb3VsZCBub3QgZHVwbGljYXRlIHN0ZG91dFxuIgptc2dzdHIgIiIKCiM6IGpvYi5jOjE5MzcKbXNnaWQgIkNvdWxkIG5vdCByZXN0b3JlIHN0ZGluXG4iCm1zZ3N0ciAiIgoKIzogam9iLmM6MTk0NQptc2dpZCAiQ291bGQgbm90IHJlc3RvcmUgc3Rkb3V0XG4iCm1zZ3N0ciAiIgoKIzogam9iLmM6MjAxNgojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgInByb2Nlc3NfZWFzeSgpIGZhaWxlZCBmYWlsZWQgdG8gbGF1bmNoIHByb2Nlc3MgKGU9JWxkKVxuIgptc2dzdHIgInByb2Nlc3NfZWFzeSgpIG5vbiBwdWlkbyBsYW56YS1sbyBwcm9jZXNvIChlPSVkKVxuIgoKIzogam9iLmM6MjA0NgojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIm1ha2UgcmVhcGVkIGNoaWxkIHBpZCAlbGQsIHN0aWxsIHdhaXRpbmcgZm9yIHBpZCAlbGRcbiIKbXNnc3RyICIiCiJtYWtlIGNvbGxlaXRvdSB1biBwcm9jZXNvIGZpbGxvIGRlIHBpZCAlZCwgYWluZGEgc2UgYWdhcmRhIHBvbG8gcGlkICVkXG4iCgojOiBqb2IuYzoyMDg1CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogQ29tbWFuZCBub3QgZm91bmQiCm1zZ3N0ciAiJXM6IENvbWFuZG8gbm9uIGF0b3BhZG8iCgojOiBqb2IuYzoyMTQ1CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogU2hlbGwgcHJvZ3JhbSBub3QgZm91bmQiCm1zZ3N0ciAiJXM6IEludOlycHJldGUgZGUgY29tYW5kb3Mgbm9uIGF0b3BhZG8iCgojOiBqb2IuYzoyMTU0Cm1zZ2lkICJzcGF3bnZwZTogZW52aXJvbm1lbnQgc3BhY2UgbWlnaHQgYmUgZXhoYXVzdGVkIgptc2dzdHIgIiIKCiM6IGpvYi5jOjIzNjMKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIkU0hFTEwgY2hhbmdlZCAod2FzIGAlcycsIG5vdyBgJXMnKVxuIgptc2dzdHIgIk8gdmFsb3IgZGUgJFNIRUxMIGNhbWJpb3UgKGFudGVzIGVyYSBgJXMnLCBhZ29yYSBgJXMnKSIKCiM6IGpvYi5jOjI3ODkKIywgYy1mb3JtYXQKbXNnaWQgIkNyZWF0aW5nIHRlbXBvcmFyeSBiYXRjaCBmaWxlICVzXG4iCm1zZ3N0ciAiQ3JlYW5kbyB1biBmaWNoZWlybyBwb3IgbG90ZXMgdGVtcG9yYWwgJXNcbiIKCiM6IGpvYi5jOjI5MDIKIywgYy1mb3JtYXQKbXNnaWQgIiVzIChsaW5lICVkKSBCYWQgc2hlbGwgY29udGV4dCAoIXVuaXh5ICYmICFiYXRjaF9tb2RlX3NoZWxsKVxuIgptc2dzdHIgIiIKIiVzIChsafFhICVkKSBDb250ZXh0byBkbyBpbnTpcnByZXRlIGRlIGNvbWFuZG9zIGluY29ycmVjdG8gKCF1bml4eSAmJiAhIgoiYmF0Y2hfbW9kZV9zaGVsbClcbiIKCiM6IG1haW4uYzoyOTEKbXNnaWQgIk9wdGlvbnM6XG4iCm1zZ3N0ciAiT3BjafNuczpcbiIKCiM6IG1haW4uYzoyOTIKbXNnaWQgIiAgLWIsIC1tICAgICAgICAgICAgICAgICAgICAgIElnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkuXG4iCm1zZ3N0ciAiICAtYiwgLW0gICAgICAgICAgICAgICAgICAgICAgSWdub3JhZG8gcG9yIGNvbXBhdGliaWxpZGFkZS5cbiIKCiM6IG1haW4uYzoyOTQKbXNnaWQgIiAgLUIsIC0tYWx3YXlzLW1ha2UgICAgICAgICAgIFVuY29uZGl0aW9uYWxseSBtYWtlIGFsbCB0YXJnZXRzLlxuIgptc2dzdHIgIiIKIiAgLUIsIC0tYWx3YXlzLW1ha2UgICAgICAgICAgIEZhY2VyIHTzZG9sb3Mgb2J4ZWN0aXZvcyBpbmNvbmRpY2lvbmFsbWVudGUuXG4iCgojOiBtYWluLmM6Mjk2Cm1zZ2lkICIiCiIgIC1DIERJUkVDVE9SWSwgLS1kaXJlY3Rvcnk9RElSRUNUT1JZXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFuZ2UgdG8gRElSRUNUT1JZIGJlZm9yZSBkb2luZyBhbnl0aGluZy5cbiIKbXNnc3RyICIiCiIgIC1DIERJUkVDVE9SSU8sIC0tZGlyZWN0b3J5PURJUkVDVE9SSU9cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENhbWJpYXIgYW8gRElSRUNUT1JJTyBhbnRlcyBkZSBmYWNlciBuYWRhLlxuIgoKIzogbWFpbi5jOjI5OQptc2dpZCAiICAtZCAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgbG90cyBvZiBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24uXG4iCm1zZ3N0ciAiIgoiICAtZCAgICAgICAgICAgICAgICAgICAgICAgICAgQW1vc2FyIG1vaXRhIGluZm9ybWFjafNuIGRlIGRlcHVyYWNp824uXG4iCgojOiBtYWluLmM6MzAxCm1zZ2lkICIiCiIgIC0tZGVidWdbPUZMQUdTXSAgICAgICAgICAgICBQcmludCB2YXJpb3VzIHR5cGVzIG9mIGRlYnVnZ2luZyBpbmZvcm1hdGlvbi5cbiIKbXNnc3RyICIiCiIgIC0tZGVidWdbPU1PRElGSUNBRE9SRVNdICAgICBBbW9zYXIgdmFyaW9zIHRpcG9zIGRlIGluZm9ybWFjafNuIGRlICIKImRlcHVyYWNp824uXG4iCgojOiBtYWluLmM6MzAzCm1zZ2lkICIiCiIgIC1lLCAtLWVudmlyb25tZW50LW92ZXJyaWRlc1xuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRW52aXJvbm1lbnQgdmFyaWFibGVzIG92ZXJyaWRlIG1ha2VmaWxlcy5cbiIKbXNnc3RyICIiCiIgIC1lLCAtLWVudmlyb25tZW50LW92ZXJyaWRlc1xuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQXMgdmFyaWFibGVzIGRlIGFtYmllbnRlIHN1YnN0aXT6ZW4gYW9zICIKImZpY2hlaXJvc1xuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGUgbWFrZS5cbiIKCiM6IG1haW4uYzozMDYKbXNnaWQgIiIKIiAgLWYgRklMRSwgLS1maWxlPUZJTEUsIC0tbWFrZWZpbGU9RklMRVxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVhZCBGSUxFIGFzIGEgbWFrZWZpbGUuXG4iCm1zZ3N0ciAiIgoiICAtZiBGSUNIRUlSTywgLS1maWxlPUZJQ0hFSVJPLCAtLW1ha2VmaWxlPUZJQ0hFSVJPXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZS1sbyBGSUNIRUlSTyBjb21hIGZpY2hlaXJvIGRlIG1ha2UuXG4iCgojOiBtYWluLmM6MzA5Cm1zZ2lkICIgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICAgICBQcmludCB0aGlzIG1lc3NhZ2UgYW5kIGV4aXQuXG4iCm1zZ3N0ciAiICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgICAgQW1vc2FyIGVzdGEgbWVuc2F4ZSBlIHNh7XIuXG4iCgojOiBtYWluLmM6MzExCm1zZ2lkICIgIC1pLCAtLWlnbm9yZS1lcnJvcnMgICAgICAgICBJZ25vcmUgZXJyb3JzIGZyb20gY29tbWFuZHMuXG4iCm1zZ3N0ciAiICAtaSwgLS1pZ25vcmUtZXJyb3JzICAgICAgICAgSWdub3JhLWxvcyBlcnJvcyBkb3MgY29tYW5kb3MuXG4iCgojOiBtYWluLmM6MzEzCm1zZ2lkICIiCiIgIC1JIERJUkVDVE9SWSwgLS1pbmNsdWRlLWRpcj1ESVJFQ1RPUllcbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNlYXJjaCBESVJFQ1RPUlkgZm9yIGluY2x1ZGVkIG1ha2VmaWxlcy5cbiIKbXNnc3RyICIiCiIgIC1JIERJUkVDVE9SSU8sIC0taW5jbHVkZS1kaXI9RElSRUNUT1JJT1xuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVzY2EtbG9zIGZpY2hlaXJvcyBkZSBtYWtlIGluY2x17WRvc1xuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm8gZGlyZWN0b3Jpby5cbiIKCiM6IG1haW4uYzozMTYKbXNnaWQgIiIKIiAgLWogW05dLCAtLWpvYnNbPU5dICAgICAgICAgIEFsbG93IE4gam9icyBhdCBvbmNlOyBpbmZpbml0ZSBqb2JzIHdpdGggbm8gIgoiYXJnLlxuIgptc2dzdHIgIiIKIiAgLWogW05dLCAtLWpvYnNbPU5dICAgICAgICAgIEFkbWl0aXIgTiB0cmFiYWxsb3Mg4SB2ZXo7IGluZmluaXRvcyBzZW5cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuIGFyZ3VtZW50by5cbiIKCiM6IG1haW4uYzozMTgKbXNnaWQgIiIKIiAgLWssIC0ta2VlcC1nb2luZyAgICAgICAgICAgIEtlZXAgZ29pbmcgd2hlbiBzb21lIHRhcmdldHMgY2FuJ3QgYmUgbWFkZS5cbiIKbXNnc3RyICIiCiIgIC1rLCAtLWtlZXAtZ29pbmcgICAgICAgICAgICBDb250aW51YXIgY2FuZG8gbm8gc2UgcG9pZGFuIGZhY2VyXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGf6bnMgb2J4ZWN0aXZvcy5cbiIKCiM6IG1haW4uYzozMjAKbXNnaWQgIiIKIiAgLWwgW05dLCAtLWxvYWQtYXZlcmFnZVs9Tl0sIC0tbWF4LWxvYWRbPU5dXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEb24ndCBzdGFydCBtdWx0aXBsZSBqb2JzIHVubGVzcyBsb2FkIGlzIGJlbG93ICIKIk4uXG4iCm1zZ3N0ciAiIgoiICAtbCBbTl0sIC0tbG9hZC1hdmVyYWdlWz1OXSwgLS1tYXgtbG9hZFs9Tl1cbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vbiBpbmljaWFyIHZhcmlvcyB0cmFiYWxsb3MgY29uIGNhcmdhXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN1cGVyaW9yIGEgTi5cbiIKCiM6IG1haW4uYzozMjMKbXNnaWQgIiIKIiAgLUwsIC0tY2hlY2stc3ltbGluay10aW1lcyAgIFVzZSB0aGUgbGF0ZXN0IG10aW1lIGJldHdlZW4gc3ltbGlua3MgYW5kICIKInRhcmdldC5cbiIKbXNnc3RyICIiCgojOiBtYWluLmM6MzI1Cm1zZ2lkICIiCiIgIC1uLCAtLWp1c3QtcHJpbnQsIC0tZHJ5LXJ1biwgLS1yZWNvblxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRG9uJ3QgYWN0dWFsbHkgcnVuIGFueSBjb21tYW5kczsganVzdCBwcmludCAiCiJ0aGVtLlxuIgptc2dzdHIgIiIKIiAgLW4sIC0tanVzdC1wcmludCwgLS1kcnktcnVuLCAtLXJlY29uXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOb24gZXhlY3V0YXIgbmluZ/puIGNvbWFuZG87IHPzIGFtb3NhbG9zLlxuIgoKIzogbWFpbi5jOjMyOAptc2dpZCAiIgoiICAtbyBGSUxFLCAtLW9sZC1maWxlPUZJTEUsIC0tYXNzdW1lLW9sZD1GSUxFXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25zaWRlciBGSUxFIHRvIGJlIHZlcnkgb2xkIGFuZCBkb24ndCByZW1ha2UgIgoiaXQuXG4iCm1zZ3N0ciAiIgoiICAtbyBGSUNIRUlSTywgLS1vbGQtZmlsZT1GSUNIRUlSTywgLS1hc3N1bWUtb2xkPUZJQ0hFSVJPXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmF0YS1sbyBGSUNIRUlSTyBjb21hIG1vaSBhbnRpZ28gZSBub24gIgoicmVmYWNlbG8uXG4iCgojOiBtYWluLmM6MzMxCm1zZ2lkICIgIC1wLCAtLXByaW50LWRhdGEtYmFzZSAgICAgICBQcmludCBtYWtlJ3MgaW50ZXJuYWwgZGF0YWJhc2UuXG4iCm1zZ3N0ciAiIgoiICAtcCwgLS1wcmludC1kYXRhLWJhc2UgICAgICAgQW1vc2EtbGEgYmFzZSBkZSBkYXRvcyBpbnRlcm5hIGRlIG1ha2UuXG4iCgojOiBtYWluLmM6MzMzCm1zZ2lkICIiCiIgIC1xLCAtLXF1ZXN0aW9uICAgICAgICAgICAgICBSdW4gbm8gY29tbWFuZHM7IGV4aXQgc3RhdHVzIHNheXMgaWYgdXAgdG8gIgoiZGF0ZS5cbiIKbXNnc3RyICIiCiIgIC1xLCAtLXF1ZXN0aW9uICAgICAgICAgICAgICBOb24gZXhlY3V0YXIgbmluZ/puIGNvbWFuZG87IG8gZXN0YWRvIGRlXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzYe1kYSBkaSBzZSBlc3ThIGFjdHVhbGl6YWRvLlxuIgoKIzogbWFpbi5jOjMzNQptc2dpZCAiICAtciwgLS1uby1idWlsdGluLXJ1bGVzICAgICAgRGlzYWJsZSB0aGUgYnVpbHQtaW4gaW1wbGljaXQgcnVsZXMuXG4iCm1zZ3N0ciAiIgoiICAtciwgLS1uby1idWlsdGluLXJ1bGVzICAgICAgRGVzYWN0aXZhLWxhcyByZWdyYXMgaW1wbO1jaXRhcyBpbmNsdWlkYXMuXG4iCgojOiBtYWluLmM6MzM3Cm1zZ2lkICIgIC1SLCAtLW5vLWJ1aWx0aW4tdmFyaWFibGVzICBEaXNhYmxlIHRoZSBidWlsdC1pbiB2YXJpYWJsZSBzZXR0aW5ncy5cbiIKbXNnc3RyICIiCiIgIC1SLCAtLW5vLWJ1aWx0aW4tdmFyaWFibGVzICBEZXNhY3RpdmEtbG9zIHZhbG9yZXMgZGFzIHZhcmlhYmxlcyAiCiJpbmNsdWlkb3MuXG4iCgojOiBtYWluLmM6MzM5Cm1zZ2lkICIgIC1zLCAtLXNpbGVudCwgLS1xdWlldCAgICAgICBEb24ndCBlY2hvIGNvbW1hbmRzLlxuIgptc2dzdHIgIiAgLXMsIC0tc2lsZW50LCAtLXF1aWV0ICAgICAgICAgICAgIE5vbiBhbW9zYS1sb3MgY29tYW5kb3MuXG4iCgojOiBtYWluLmM6MzQxCm1zZ2lkICIiCiIgIC1TLCAtLW5vLWtlZXAtZ29pbmcsIC0tc3RvcFxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHVybnMgb2ZmIC1rLlxuIgptc2dzdHIgIiIKIiAgLVMsIC0tbm8ta2VlcC1nb2luZywgLS1zdG9wXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXNhY3RpdmEgLWsuXG4iCgojOiBtYWluLmM6MzQ0Cm1zZ2lkICIgIC10LCAtLXRvdWNoICAgICAgICAgICAgICAgICBUb3VjaCB0YXJnZXRzIGluc3RlYWQgb2YgcmVtYWtpbmcgdGhlbS5cbiIKbXNnc3RyICIiCiIgIC10LCAtLXRvdWNoICAgICAgICAgICAgICAgICBUb2NhLWxvcyBvYnhlY3Rpdm9zIG5vIGNhbnRvIGRlIG9zIHJlZmFjZXIuXG4iCgojOiBtYWluLmM6MzQ2Cm1zZ2lkICIiCiIgIC12LCAtLXZlcnNpb24gICAgICAgICAgICAgICBQcmludCB0aGUgdmVyc2lvbiBudW1iZXIgb2YgbWFrZSBhbmQgZXhpdC5cbiIKbXNnc3RyICIiCiIgIC12LCAtLXZlcnNpb24gICAgICAgICAgICAgICBBbW9zYS1sbyBu+m1lcm8gZGUgdmVyc2nzbiBkZSBtYWtlIGUgc2Htci5cbiIKCiM6IG1haW4uYzozNDgKbXNnaWQgIiAgLXcsIC0tcHJpbnQtZGlyZWN0b3J5ICAgICAgIFByaW50IHRoZSBjdXJyZW50IGRpcmVjdG9yeS5cbiIKbXNnc3RyICIgIC13LCAtLXByaW50LWRpcmVjdG9yeSAgICAgICBBbW9zYS1sbyBkaXJlY3RvcmlvIGFjdHVhbC5cbiIKCiM6IG1haW4uYzozNTAKbXNnaWQgIiIKIiAgLS1uby1wcmludC1kaXJlY3RvcnkgICAgICAgIFR1cm4gb2ZmIC13LCBldmVuIGlmIGl0IHdhcyB0dXJuZWQgb24gIgoiaW1wbGljaXRseS5cbiIKbXNnc3RyICIiCiIgIC0tbm8tcHJpbnQtZGlyZWN0b3J5ICAgICAgICBEZXNhY3RpdmFyIC13LCBpbmNsdXNvIHNlIHNlIGFjdGl2b3VcbiIKIiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltcGxpY2l0YW1lbnRlLlxuIgoKIzogbWFpbi5jOjM1Mgptc2dpZCAiIgoiICAtVyBGSUxFLCAtLXdoYXQtaWY9RklMRSwgLS1uZXctZmlsZT1GSUxFLCAtLWFzc3VtZS1uZXc9RklMRVxuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uc2lkZXIgRklMRSB0byBiZSBpbmZpbml0ZWx5IG5ldy5cbiIKbXNnc3RyICIiCiIgIC1XIEZJQ0hFSVJPLCAtLXdoYXQtaWY9RklDSEVJUk8sIC0tbmV3LWZpbGU9RklDSEVJUk8sIC0tYXNzdW1lLSIKIm5ldz1GSUNIRUlST1xuIgoiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJhdGEtbG8gRklDSEVJUk8gY29tYSBpbmZpbml0YW1lbnRlIG5vdm8uXG4iCgojOiBtYWluLmM6MzU1Cm1zZ2lkICIiCiIgIC0td2Fybi11bmRlZmluZWQtdmFyaWFibGVzICBXYXJuIHdoZW4gYW4gdW5kZWZpbmVkIHZhcmlhYmxlIGlzICIKInJlZmVyZW5jZWQuXG4iCm1zZ3N0ciAiIgoiICAtLXdhcm4tdW5kZWZpbmVkLXZhcmlhYmxlcyAgQXZpc2FyIGNhbmRvIHNlIGZhZ2EgcmVmZXJlbmNpYSBhXG4iCiIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmhhIHZhcmlhYmxlIG5vbiBkZWZpbmlkYS5cbiIKCiM6IG1haW4uYzo1NDkKbXNnaWQgImVtcHR5IHN0cmluZyBpbnZhbGlkIGFzIGZpbGUgbmFtZSIKbXNnc3RyICJhIGNhZGVhIGJhbGVpcmEgbm9uIOkgduFsaWRhIGNvbWEgbm9tZSBkZSBmaWNoZWlybyIKCiM6IG1haW4uYzo2MzAKIywgYy1mb3JtYXQKbXNnaWQgInVua25vd24gZGVidWcgbGV2ZWwgc3BlY2lmaWNhdGlvbiBgJXMnIgptc2dzdHIgImVzcGVjaWZpY2FjafNuIGRlIG5pdmVsIGRlIGRlcHVyYWNp824gZGVzY2/xZWNpZG8gYCVzJyIKCiM6IG1haW4uYzo2NzAKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIlczogSW50ZXJydXB0L0V4Y2VwdGlvbiBjYXVnaHQgKGNvZGUgPSAweCVseCwgYWRkciA9IDB4JWx4KVxuIgptc2dzdHIgIiIKIiVzOiBBdHJhcG91c2UgdW5oYSBJbnRlcnJ1cGNp824vRXhjZXBjafNuIChj82RpZ28gPSAweCV4LCBlbmRlcmV6byA9IDB4JXgpXG4iCgojOiBtYWluLmM6Njc3CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJVbmhhbmRsZWQgZXhjZXB0aW9uIGZpbHRlciBjYWxsZWQgZnJvbSBwcm9ncmFtICVzXG4iCiJFeGNlcHRpb25Db2RlID0gJWx4XG4iCiJFeGNlcHRpb25GbGFncyA9ICVseFxuIgoiRXhjZXB0aW9uQWRkcmVzcyA9ICVseFxuIgptc2dzdHIgIiIKIlxuIgoiRmlsdHJvIGRlIGV4Y2VwY2nzbnMgbm9uIG1hbmV4YWRhcyBjaGFtYWRvIGRlbmRlIG8gcHJvZ3JhbWEgJXNcbiIKIkV4Y2VwdGlvbkNvZGUgPSAleFxuIgoiRXhjZXB0aW9uRmxhZ3MgPSAleFxuIgoiRXhjZXB0aW9uQWRkcmVzcyA9ICV4XG4iCgojOiBtYWluLmM6Njg1CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiQWNjZXNzIHZpb2xhdGlvbjogd3JpdGUgb3BlcmF0aW9uIGF0IGFkZHJlc3MgJWx4XG4iCm1zZ3N0ciAiVmlvbGFjafNuIGRlIGFjY2Vzbzogb3BlcmFjafNuIGRlIGVzY3JpdHVyYSBubyBlbmRlcmV6byAleFxuIgoKIzogbWFpbi5jOjY4NgojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIkFjY2VzcyB2aW9sYXRpb246IHJlYWQgb3BlcmF0aW9uIGF0IGFkZHJlc3MgJWx4XG4iCm1zZ3N0ciAiVmlvbGFjafNuIGRlIGFjY2Vzbzogb3BlcmFjafNuIGRlIGxlY3R1cmEgbm8gZW5kZXJlem8gJXhcbiIKCiM6IG1haW4uYzo3NjIgbWFpbi5jOjc3MwojLCBjLWZvcm1hdAptc2dpZCAiZmluZF9hbmRfc2V0X3NoZWxsIHNldHRpbmcgZGVmYXVsdF9zaGVsbCA9ICVzXG4iCm1zZ3N0ciAiZmluZF9hbmRfc2V0X3NoZWxsIGVzdGFicmVjZW5kbyBkZWZhdWx0X3NoZWxsID0gJXNcbiIKCiM6IG1haW4uYzo4MTQKIywgYy1mb3JtYXQKbXNnaWQgImZpbmRfYW5kX3NldF9zaGVsbCBwYXRoIHNlYXJjaCBzZXQgZGVmYXVsdF9zaGVsbCA9ICVzXG4iCm1zZ3N0ciAiZmluZF9hbmRfc2V0X3NoZWxsIGJ1c2NhIGRlIGNhbWnxb3MgZXN0YWJyZWNlIGRlZmF1bHRfc2hlbGwgPSAlc1xuIgoKIzogbWFpbi5jOjEyMzYKIywgYy1mb3JtYXQKbXNnaWQgIiVzIGlzIHN1c3BlbmRpbmcgZm9yIDMwIHNlY29uZHMuLi4iCm1zZ3N0ciAiJXMgZXN04SBzdXNwZW5kaWRvIGR1cmFudGUgMzAgc2VndW5kb3MuLi4iCgojOiBtYWluLmM6MTIzOAojLCBjLWZvcm1hdAptc2dpZCAiZG9uZSBzbGVlcCgzMCkuIENvbnRpbnVpbmcuXG4iCm1zZ3N0ciAicmVtYXRvdXNlIHNsZWVwKDMwKS4gQ29udGludWFuZG8uXG4iCgojOiBtYWluLmM6MTQ2Ngptc2dpZCAiTWFrZWZpbGUgZnJvbSBzdGFuZGFyZCBpbnB1dCBzcGVjaWZpZWQgdHdpY2UuIgptc2dzdHIgIk8gZmljaGVpcm8gZGUgbWFrZSBkYSBlbnRyYWRhIGVzdOFuZGFyIGZvaSBlc3BlY2lmaWNhZG8gZPphcyB2ZWNlcy4iCgojOiBtYWluLmM6MTUwNSB2bXNqb2JzLmM6NDg2Cm1zZ2lkICJmb3BlbiAodGVtcG9yYXJ5IGZpbGUpIgptc2dzdHIgImZvcGVuIChmaWNoZWlybyB0ZW1wb3JhbCkiCgojOiBtYWluLmM6MTUxMQptc2dpZCAiZndyaXRlICh0ZW1wb3JhcnkgZmlsZSkiCm1zZ3N0ciAiZndyaXRlIChmaWNoZWlybyB0ZW1wb3JhbCkiCgojOiBtYWluLmM6MTY0MAptc2dpZCAiUGFyYWxsZWwgam9icyAoLWopIGFyZSBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgcGxhdGZvcm0uIgptc2dzdHIgIk9zIHRyYWJhbGxvcyBlbiBwYXJhbGVsbyAoLWopIG5vbiBlc3ThbiBzb3BvcnRhZG9zIG5lc3RhIHBsYXRhZm9ybWEuIgoKIzogbWFpbi5jOjE2NDEKbXNnaWQgIlJlc2V0dGluZyB0byBzaW5nbGUgam9iICgtajEpIG1vZGUuIgptc2dzdHIgIlJlaW5pY2lhbmRvIHBhcmEgZW50cmFyIG5vIG1vZG8gZGUgdW4gdHJhYmFsbG8gKC1qMSkuIgoKIzogbWFpbi5jOjE2NTYKbXNnaWQgImludGVybmFsIGVycm9yOiBtdWx0aXBsZSAtLWpvYnNlcnZlci1mZHMgb3B0aW9ucyIKbXNnc3RyICJlcnJvIGludGVybm86IG9wY2nzbnMgLS1qb2JzZXJ2ZXItZmRzIG36bHRpcGxlcyIKCiM6IG1haW4uYzoxNjY0CiMsIGMtZm9ybWF0Cm1zZ2lkICJpbnRlcm5hbCBlcnJvcjogaW52YWxpZCAtLWpvYnNlcnZlci1mZHMgc3RyaW5nIGAlcyciCm1zZ3N0ciAiZXJybyBpbnRlcm5vOiBjYWRlYSAtLWpvYnNlcnZlci1mZHMgbm9uIHbhbGlkYSBgJXMnIgoKIzogbWFpbi5jOjE2NzQKbXNnaWQgIndhcm5pbmc6IC1qTiBmb3JjZWQgaW4gc3VibWFrZTogZGlzYWJsaW5nIGpvYnNlcnZlciBtb2RlLiIKbXNnc3RyICIiCiJhdmlzbzogLWpOIGZvcnphZG8gbm8gc3VibWFrZTogZGVzYWN0aXZhbmRvIG8gbW9kbyBkZSBzZXJ2aWRvciBkZSB0cmFiYWxsb3MuIgoKIzogbWFpbi5jOjE2ODQKbXNnaWQgImR1cCBqb2JzZXJ2ZXIiCm1zZ3N0ciAiZHVwIGpvYnNlcnZlciIKCiM6IG1haW4uYzoxNjg3Cm1zZ2lkICIiCiJ3YXJuaW5nOiBqb2JzZXJ2ZXIgdW5hdmFpbGFibGU6IHVzaW5nIC1qMS4gIEFkZCBgKycgdG8gcGFyZW50IG1ha2UgcnVsZS4iCm1zZ3N0ciAiIgoiYXZpc286IG8gc2Vydmlkb3IgZGUgdHJhYmFsbG9zIG5vbiBlc3ThIGRpc3Bv8WlibGU6IHVzYW5kbyAtajEuIEVuZ2FkYSBgKycg4SAiCiJyZWdyYSBkbyBtYWtlIHBhaS4iCgojOiBtYWluLmM6MTcxMAptc2dpZCAiY3JlYXRpbmcgam9icyBwaXBlIgptc2dzdHIgImNyZWFuZG8gbyBjYW5vIGRlIHRyYWJhbGxvcyIKCiM6IG1haW4uYzoxNzI1Cm1zZ2lkICJpbml0IGpvYnNlcnZlciBwaXBlIgptc2dzdHIgImluaWNpYWxpemEtbG8gY2FubyBkbyBzZXJ2aWRvciBkZSB0cmFiYWxsb3MiCgojOiBtYWluLmM6MTc0NAptc2dpZCAiU3ltYm9saWMgbGlua3Mgbm90IHN1cHBvcnRlZDogZGlzYWJsaW5nIC1MLiIKbXNnc3RyICIiCgojOiBtYWluLmM6MTgyMAptc2dpZCAiVXBkYXRpbmcgbWFrZWZpbGVzLi4uLlxuIgptc2dzdHIgIkFjdHVhbGl6YW5kbyBvcyBmaWNoZWlyb3MgZGUgbWFrZS4uLi5cbiIKCiM6IG1haW4uYzoxODQ1CiMsIGMtZm9ybWF0Cm1zZ2lkICJNYWtlZmlsZSBgJXMnIG1pZ2h0IGxvb3A7IG5vdCByZW1ha2luZyBpdC5cbiIKbXNnc3RyICJPIGZpY2hlaXJvIGRlIG1ha2UgYCVzJyBwb2Rlcu1hIGNhdXNhciB1biBsYXpvOyBub24gc2UgcmVmYWkuXG4iCgojOiBtYWluLmM6MTkyNAojLCBjLWZvcm1hdAptc2dpZCAiRmFpbGVkIHRvIHJlbWFrZSBtYWtlZmlsZSBgJXMnLiIKbXNnc3RyICJOb24gc2UgcHVpZG8gcmVmYWNlLWxvIGZpY2hlaXJvIGRlIG1ha2UgYCVzJy4iCgojOiBtYWluLmM6MTk0MQojLCBjLWZvcm1hdAptc2dpZCAiSW5jbHVkZWQgbWFrZWZpbGUgYCVzJyB3YXMgbm90IGZvdW5kLiIKbXNnc3RyICJOb24gc2UgYXRvcG91IG8gZmljaGVpcm8gZGUgbWFrZSBpbmNsdWlkbyBgJXMnLiIKCiM6IG1haW4uYzoxOTQ2CiMsIGMtZm9ybWF0Cm1zZ2lkICJNYWtlZmlsZSBgJXMnIHdhcyBub3QgZm91bmQiCm1zZ3N0ciAiTm9uIHNlIGF0b3BvdSBvIGZpY2hlaXJvIGRlIG1ha2UgYCVzJyIKCiM6IG1haW4uYzoyMDE2Cm1zZ2lkICJDb3VsZG4ndCBjaGFuZ2UgYmFjayB0byBvcmlnaW5hbCBkaXJlY3RvcnkuIgptc2dzdHIgIk5vbiBzZSBwdWlkbyB2b2x0YXIgYW8gZGlyZWN0b3JpbyBvcml4aW5hbC4iCgojOiBtYWluLmM6MjAyNAojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIlJlLWV4ZWN1dGluZ1sldV06Igptc2dzdHIgIlJlLWV4ZWN1dGFuZG86IgoKIzogbWFpbi5jOjIxNDAKbXNnaWQgInVubGluayAodGVtcG9yYXJ5IGZpbGUpOiAiCm1zZ3N0ciAidW5saW5rIChmaWNoZWlybyB0ZW1wb3JhbCkiCgojOiBtYWluLmM6MjE2OQptc2dpZCAiLkRFRkFVTFRfR09BTCBjb250YWlucyBtb3JlIHRoYW4gb25lIHRhcmdldCIKbXNnc3RyICIiCgojOiBtYWluLmM6MjE4OQptc2dpZCAiTm8gdGFyZ2V0cyBzcGVjaWZpZWQgYW5kIG5vIG1ha2VmaWxlIGZvdW5kIgptc2dzdHIgIk5vbiBzZSBlc3BlY2lmaWNhcm9uIG9ieGVjdGl2b3MgZSBub24gc2UgYXRvcG91IHVuIGZpY2hlaXJvIGRlIG1ha2UiCgojOiBtYWluLmM6MjE5MQptc2dpZCAiTm8gdGFyZ2V0cyIKbXNnc3RyICJOb24gaGFpIG9ieGVjdGl2b3MiCgojOiBtYWluLmM6MjE5Ngptc2dpZCAiVXBkYXRpbmcgZ29hbCB0YXJnZXRzLi4uLlxuIgptc2dzdHIgIkFjdHVhbGl6YW5kbyBvcyBvYnhlY3Rpdm9zIG1ldGEuLi4uXG4iCgojOiBtYWluLmM6MjIyMgptc2dpZCAid2FybmluZzogIENsb2NrIHNrZXcgZGV0ZWN0ZWQuICBZb3VyIGJ1aWxkIG1heSBiZSBpbmNvbXBsZXRlLiIKbXNnc3RyICIiCiJhdmlzbzogRGV0ZWN04XJvbnNlIGluY29uc2lzdGVuY2lhcyBkZSByZWxveG8uIEEgb3BlcmFjafNuIHBvZGUgcXVlZGFyICIKImluY29tcGxldGEuIgoKIzogbWFpbi5jOjIzODMKIywgYy1mb3JtYXQKbXNnaWQgIlVzYWdlOiAlcyBbb3B0aW9uc10gW3RhcmdldF0gLi4uXG4iCm1zZ3N0ciAiVXNvOiAlcyBbb3BjafNuc10gW29ieGVjdGl2b10gLi4uXG4iCgojOiBtYWluLmM6MjM4OQojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiJUaGlzIHByb2dyYW0gYnVpbHQgZm9yICVzXG4iCm1zZ3N0ciAiIgoiXG4iCiJFc3RlIHByb2dyYW1hIGNvbXBpbG91IHBhcmEgJXNcbiIKCiM6IG1haW4uYzoyMzkxCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIlRoaXMgcHJvZ3JhbSBidWlsdCBmb3IgJXMgKCVzKVxuIgptc2dzdHIgIiIKIlxuIgoiRXN0ZSBwcm9ncmFtYSBjb21waWxvdSBwYXJhICVzICglcylcbiIKCiM6IG1haW4uYzoyMzk0CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZXBvcnQgYnVncyB0byA8YnVnLW1ha2VAZ251Lm9yZz5cbiIKbXNnc3RyICIiCiJJbmZvcm1lIGRvcyBlcnJvcyBubyBwcm9ncmFtYSBhIDxidWctbWFrZUBnbnUub3JnPi5cbiIKIkluZm9ybWUgZG9zIGVycm9zIG5hIHRyYWR1Y2Np824gYSA8cHJveGVjdG9AdHJhc25vLm5ldD4uXG4iCgojOiBtYWluLmM6MjQ2NgojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgInRoZSBgLSVjJyBvcHRpb24gcmVxdWlyZXMgYSBub24tZW1wdHkgc3RyaW5nIGFyZ3VtZW50Igptc2dzdHIgImEgb3BjafNuIGAtJWMnIHByZWNpc2EgZHVuIGFyZ3VtZW50byBpbnRlZ3JhbCBwb3NpdGl2byIKCiM6IG1haW4uYzoyNTE4CiMsIGMtZm9ybWF0Cm1zZ2lkICJ0aGUgYC0lYycgb3B0aW9uIHJlcXVpcmVzIGEgcG9zaXRpdmUgaW50ZWdyYWwgYXJndW1lbnQiCm1zZ3N0ciAiYSBvcGNp824gYC0lYycgcHJlY2lzYSBkdW4gYXJndW1lbnRvIGludGVncmFsIHBvc2l0aXZvIgoKIzogbWFpbi5jOjI5NDIKIywgYy1mb3JtYXQKbXNnaWQgIiIKIiVzVGhpcyBpcyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIHNvdXJjZSBmb3IgY29weWluZyBjb25kaXRpb25zLlxuIgoiJXNUaGVyZSBpcyBOTyB3YXJyYW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBXG4iCiIlc1BBUlRJQ1VMQVIgUFVSUE9TRS5cbiIKbXNnc3RyICIiCiIlc0lzdG8g6SBzb2Z0d2FyZSBsaWJyZTsgdmV4YSBvIGPzZGlnbyBmb250ZSBwb2xhcyBjb25kaWNp825zIGRlIGNvcGlhLlxuIgoiJXNOT04gaGFpIGdhcmFudO1hOyBuaW4gc2VxdWVyYSBkZSBDT01FUkNJQUJJTElEQURFIG91IEFQVElUVURFIFBBUkFcbiIKIiVzVU4gRklOIERFVEVSTUlOQURPLlxuIgoKIzogbWFpbi5jOjI5NDgKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiVzVGhpcyBwcm9ncmFtIGJ1aWx0IGZvciAlc1xuIgptc2dzdHIgIiIKIlxuIgoiRXN0ZSBwcm9ncmFtYSBjb21waWxvdSBwYXJhICVzXG4iCgojOiBtYWluLmM6Mjk1MAojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiIKIlxuIgoiJXNUaGlzIHByb2dyYW0gYnVpbHQgZm9yICVzICglcylcbiIKbXNnc3RyICIiCiJcbiIKIkVzdGUgcHJvZ3JhbWEgY29tcGlsb3UgcGFyYSAlcyAoJXMpXG4iCgojOiBtYWluLmM6Mjk2OAojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiIjIE1ha2UgZGF0YSBiYXNlLCBwcmludGVkIG9uICVzIgptc2dzdHIgIiIKIlxuIgoiIyBCYXNlIGRlIGRhdG9zIGRlIE1ha2UsIGltcHJpbWlkYSBlbiAlcyIKCiM6IG1haW4uYzoyOTc4CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiMgRmluaXNoZWQgTWFrZSBkYXRhIGJhc2Ugb24gJXNcbiIKbXNnc3RyICIiCiJcbiIKIiMgQmFzZSBkZSBkYXRvcyBkZSBNYWtlIHJlbWF0YWRhIGVuICVzXG4iCgojOiBtYWluLmM6MzEwMQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzOiBFbnRlcmluZyBhbiB1bmtub3duIGRpcmVjdG9yeVxuIgptc2dzdHIgIiVzOiBFbnRyYW5kbyBudW4gZGlyZWN0b3JpbyBkZXNjb/FlY2lkbyIKCiM6IG1haW4uYzozMTAzCiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiJXM6IExlYXZpbmcgYW4gdW5rbm93biBkaXJlY3RvcnlcbiIKbXNnc3RyICIlczogU2HtbmRvIGR1biBkaXJlY3RvcmlvIGRlc2Nv8WVjaWRvIgoKIzogbWFpbi5jOjMxMDYKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiBFbnRlcmluZyBkaXJlY3RvcnkgYCVzJ1xuIgptc2dzdHIgIiVzOiBFbnRyYW5kbyBubyBkaXJlY3RvcmlvIGAlcydcbiIKCiM6IG1haW4uYzozMTA5CiMsIGMtZm9ybWF0Cm1zZ2lkICIlczogTGVhdmluZyBkaXJlY3RvcnkgYCVzJ1xuIgptc2dzdHIgIiVzOiBTYe1uZG8gZG8gZGlyZWN0b3JpbyBgJXMnXG4iCgojOiBtYWluLmM6MzExNAojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzWyV1XTogRW50ZXJpbmcgYW4gdW5rbm93biBkaXJlY3RvcnlcbiIKbXNnc3RyICIlc1sldV06IEVudHJhbmRvIG51biBkaXJlY3RvcmlvIGRlc2Nv8WVjaWRvIgoKIzogbWFpbi5jOjMxMTcKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIlc1sldV06IExlYXZpbmcgYW4gdW5rbm93biBkaXJlY3RvcnlcbiIKbXNnc3RyICIlc1sldV06IFNh7W5kbyBkdW4gZGlyZWN0b3JpbyBkZXNjb/FlY2lkbyIKCiM6IG1haW4uYzozMTIxCiMsIGMtZm9ybWF0Cm1zZ2lkICIlc1sldV06IEVudGVyaW5nIGRpcmVjdG9yeSBgJXMnXG4iCm1zZ3N0ciAiJXNbJXVdOiBFbnRyYW5kbyBubyBkaXJlY3RvcmlvIGAlcydcbiIKCiM6IG1haW4uYzozMTI0CiMsIGMtZm9ybWF0Cm1zZ2lkICIlc1sldV06IExlYXZpbmcgZGlyZWN0b3J5IGAlcydcbiIKbXNnc3RyICIlc1sldV06IFNh7W5kbyBkbyBkaXJlY3RvcmlvIGAlcydcbiIKCiM6IG1pc2MuYzoyODUKbXNnaWQgIi4gIFN0b3AuXG4iCm1zZ3N0ciAiLiBEZXRpZG8uXG4iCgojOiBtaXNjLmM6MzA2CiMsIGMtZm9ybWF0Cm1zZ2lkICJVbmtub3duIGVycm9yICVkIgptc2dzdHIgIkVycm8gJWQgZGVzY2/xZWNpZG8iCgojOiBtaXNjLmM6MzE2CiMsIGMtZm9ybWF0Cm1zZ2lkICIlcyVzOiAlcyIKbXNnc3RyICIlcyVzOiAlcyIKCiM6IG1pc2MuYzozMjQKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiAlcyIKbXNnc3RyICIlczogJXMiCgojOiBtaXNjLmM6MzQ0IG1pc2MuYzozNTkgbWlzYy5jOjM3NiByZWFkLmM6MzEyNwptc2dpZCAidmlydHVhbCBtZW1vcnkgZXhoYXVzdGVkIgptc2dzdHIgIm1lbW9yaWEgdmlydHVhbCBlc2dvdGFkYSIKCiM6IG1pc2MuYzo2NDYKIywgYy1mb3JtYXQKbXNnaWQgIiVzOiB1c2VyICVsdSAocmVhbCAlbHUpLCBncm91cCAlbHUgKHJlYWwgJWx1KVxuIgptc2dzdHIgIiVzOiB1c3VhcmlvICVsdSAocmVhbCAlbHUpLCBncnVwbyAlbHUgKHJlYWwgJWx1KVxuIgoKIzogbWlzYy5jOjY2Nwptc2dpZCAiSW5pdGlhbGl6ZWQgYWNjZXNzIgptc2dzdHIgIkFjY2VzbyBpbmljaWFsaXphZG8iCgojOiBtaXNjLmM6NzQ2Cm1zZ2lkICJVc2VyIGFjY2VzcyIKbXNnc3RyICJBY2Nlc28gZGUgdXN1YXJpbyIKCiM6IG1pc2MuYzo3OTQKbXNnaWQgIk1ha2UgYWNjZXNzIgptc2dzdHIgIkFjY2VzbyBkZSBtYWtlIgoKIzogbWlzYy5jOjgyOAptc2dpZCAiQ2hpbGQgYWNjZXNzIgptc2dzdHIgIkFjY2VzbyBkZSBmaWxsbyIKCiM6IG1pc2MuYzo4OTIKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICJ3cml0ZSBlcnJvcjogJXMiCm1zZ3N0ciAiRXJyb3MgcmVkaXJpeGlkb3MgYSAlc1xuIgoKIzogbWlzYy5jOjg5NAojLCBmdXp6eQptc2dpZCAid3JpdGUgZXJyb3IiCm1zZ3N0ciAid3JpdGUgam9ic2VydmVyIgoKIzogcmVhZC5jOjE2MAptc2dpZCAiUmVhZGluZyBtYWtlZmlsZXMuLi5cbiIKbXNnc3RyICJMZW5kbyBvcyBmaWNoZWlyb3MgZGUgbWFrZS4uLlxuIgoKIzogcmVhZC5jOjMxNQojLCBjLWZvcm1hdAptc2dpZCAiUmVhZGluZyBtYWtlZmlsZSBgJXMnIgptc2dzdHIgIkxlbmRvIG8gZmljaGVpcm8gZGUgbWFrZSBgJXMnIgoKIzogcmVhZC5jOjMxNwojLCBjLWZvcm1hdAptc2dpZCAiIChubyBkZWZhdWx0IGdvYWwpIgptc2dzdHIgIiAobm9uIGhhaSB1biBvYnhlY3Rpdm8gcG9yIGRlZmVjdG8pIgoKIzogcmVhZC5jOjMxOQojLCBjLWZvcm1hdAptc2dpZCAiIChzZWFyY2ggcGF0aCkiCm1zZ3N0ciAiIChjYW1p8W8gZGUgYnVzY2EpIgoKIzogcmVhZC5jOjMyMQojLCBjLWZvcm1hdAptc2dpZCAiIChkb24ndCBjYXJlKSIKbXNnc3RyICIgKG5vbiBpbXBvcnRhKSIKCiM6IHJlYWQuYzozMjMKIywgYy1mb3JtYXQKbXNnaWQgIiAobm8gfiBleHBhbnNpb24pIgptc2dzdHIgIiAobm9uIGhhaSBleHBhbnNp824gZGUgfikiCgojOiByZWFkLmM6NjIzCm1zZ2lkICJpbnZhbGlkIHN5bnRheCBpbiBjb25kaXRpb25hbCIKbXNnc3RyICJzaW50YXhlIG5vbiB24WxpZGEgbm8gY29uZGljaW9uYWwiCgojOiByZWFkLmM6NjMzCm1zZ2lkICJleHRyYW5lb3VzIGBlbmRlZiciCm1zZ3N0ciAiYGVuZGVmJyBzdXBlcmZsdW8iCgojOiByZWFkLmM6NjQ1IHJlYWQuYzo2NzMgdmFyaWFibGUuYzoxMzE2Cm1zZ2lkICJlbXB0eSB2YXJpYWJsZSBuYW1lIgptc2dzdHIgIm5vbWUgZGUgdmFyaWFibGUgYmFsZWlybyIKCiM6IHJlYWQuYzo2NjIKbXNnaWQgImVtcHR5IGBvdmVycmlkZScgZGlyZWN0aXZlIgptc2dzdHIgImRpcmVjdGl2YSBgb3ZlcnJpZGUnIGJhbGVpcmEiCgojOiByZWFkLmM6Njg3Cm1zZ2lkICJpbnZhbGlkIGBvdmVycmlkZScgZGlyZWN0aXZlIgptc2dzdHIgImRpcmVjdGl2YSBgb3ZlcnJpZGUnIG5vbiB24WxpZGEiCgojOiByZWFkLmM6ODU0Cm1zZ2lkICJjb21tYW5kcyBjb21tZW5jZSBiZWZvcmUgZmlyc3QgdGFyZ2V0Igptc2dzdHIgIm9zIGNvbWFuZG9zIGNvbWV6YW4gYW50ZXMgZG8gcHJpbWVpcm8gb2J4ZWN0aXZvIgoKIzogcmVhZC5jOjkwNQptc2dpZCAibWlzc2luZyBydWxlIGJlZm9yZSBjb21tYW5kcyIKbXNnc3RyICJmYWxsYSB1bmhhIHJlZ3JhIGFudGVzIGRvcyBjb21hbmRvcyIKCiM6IHJlYWQuYzo5OTIKIywgYy1mb3JtYXQKbXNnaWQgIm1pc3Npbmcgc2VwYXJhdG9yJXMiCm1zZ3N0ciAiZmFsbGEgdW4gc2VwYXJhZG9yJXMiCgojOiByZWFkLmM6OTk0Cm1zZ2lkICIgKGRpZCB5b3UgbWVhbiBUQUIgaW5zdGVhZCBvZiA4IHNwYWNlcz8pIgptc2dzdHIgIiAov3NlIGNhZHJhIHVuaGEgdGFidWxhY2nzbiBubyBjYW50byBkZSBvaXRvIGVzcGFjaW9zPykiCgojOiByZWFkLmM6MTE1Mgptc2dpZCAibWlzc2luZyB0YXJnZXQgcGF0dGVybiIKbXNnc3RyICJmYWxsYSB1biBwYXRy824gb2J4ZWN0aXZvIgoKIzogcmVhZC5jOjExNTQKbXNnaWQgIm11bHRpcGxlIHRhcmdldCBwYXR0ZXJucyIKbXNnc3RyICJwYXRy825zIGRlIG9ieGVjdGl2byBt+mx0aXBsZXMiCgojOiByZWFkLmM6MTE1OAojLCBjLWZvcm1hdAptc2dpZCAidGFyZ2V0IHBhdHRlcm4gY29udGFpbnMgbm8gYCUlJyIKbXNnc3RyICJvIHBhdHLzbiBvYnhlY3Rpdm8gbm9uIGNvbnTpbiBgJSUnIgoKIzogcmVhZC5jOjEyODYKbXNnaWQgIm1pc3NpbmcgYGVuZGlmJyIKbXNnc3RyICJmYWxsYSBgZW5kaWYnIgoKIzogcmVhZC5jOjEzNzcKbXNnaWQgIkV4dHJhbmVvdXMgdGV4dCBhZnRlciBgZW5kZWYnIGRpcmVjdGl2ZSIKbXNnc3RyICJUZXh0byBzdXBlcmZsdW8gdHJhbGEgZGlyZWN0aXZhIGBlbmRlZiciCgojOiByZWFkLmM6MTQxMQptc2dpZCAibWlzc2luZyBgZW5kZWYnLCB1bnRlcm1pbmF0ZWQgYGRlZmluZSciCm1zZ3N0ciAiZmFsbGEgYGVuZGVmJywgYGRlZmluZScgc2VuIHJlbWF0YXIiCgojOiByZWFkLmM6MTQ1NAojLCBjLWZvcm1hdAptc2dpZCAiRXh0cmFuZW91cyB0ZXh0IGFmdGVyIGAlcycgZGlyZWN0aXZlIgptc2dzdHIgIlRleHRvIHN1cGVyZmx1byB0cmFsYSBkaXJlY3RpdmEgYCVzJyIKCiM6IHJlYWQuYzoxNDYzIHJlYWQuYzoxNDc3CiMsIGMtZm9ybWF0Cm1zZ2lkICJleHRyYW5lb3VzIGAlcyciCm1zZ3N0ciAiYCVzJyBzdXBlcmZsdW8iCgojOiByZWFkLmM6MTQ4Mgptc2dpZCAib25seSBvbmUgYGVsc2UnIHBlciBjb25kaXRpb25hbCIKbXNnc3RyICJz8yB1biBgZWxzZScgcG9yIGNvbmRpY2lvbmFsIgoKIzogcmVhZC5jOjE4MjQKIywgZnV6enkKbXNnaWQgIk1hbGZvcm1lZCB0YXJnZXQtc3BlY2lmaWMgdmFyaWFibGUgZGVmaW5pdGlvbiIKbXNnc3RyICJEZWZpbmljafNuIGR1bmhhIHZhcmlhYmxlIHBvciBvYnhlY3Rpdm8gbWFsIGZvcm1hZGEiCgojOiByZWFkLmM6MTg4Ngptc2dpZCAicHJlcmVxdWlzaXRlcyBjYW5ub3QgYmUgZGVmaW5lZCBpbiBjb21tYW5kIHNjcmlwdHMiCm1zZ3N0ciAiIgoKIzogcmVhZC5jOjE5MjEKbXNnaWQgIm1peGVkIGltcGxpY2l0IGFuZCBzdGF0aWMgcGF0dGVybiBydWxlcyIKbXNnc3RyICJyZWdy4XMgZGUgcGF0cvNuIGltcGztY2l0YXMgZSBlc3ThdGljYXMgbWVzdHVyYWRhcyIKCiM6IHJlYWQuYzoxOTI0Cm1zZ2lkICJtaXhlZCBpbXBsaWNpdCBhbmQgbm9ybWFsIHJ1bGVzIgptc2dzdHIgInJlZ3JhcyBpbXBs7WNpdGFzIGUgbm9ybWFpcyBtZXN0dXJhZGFzIgoKIzogcmVhZC5jOjE5NTQKIywgYy1mb3JtYXQKbXNnaWQgInRhcmdldCBgJXMnIGRvZXNuJ3QgbWF0Y2ggdGhlIHRhcmdldCBwYXR0ZXJuIgptc2dzdHIgIm8gb2J4ZWN0aXZvIGAlcycgbm9uIGNvaW5jaWRlIGNvIHBhdHLzbiBkbyBvYnhlY3Rpdm8iCgojOiByZWFkLmM6MTk3MyByZWFkLmM6MjA3NAojLCBjLWZvcm1hdAptc2dpZCAidGFyZ2V0IGZpbGUgYCVzJyBoYXMgYm90aCA6IGFuZCA6OiBlbnRyaWVzIgptc2dzdHIgIm8gZmljaGVpcm8gb2J4ZWN0aXZvIGAlcycgdGVuIGVudHJhZGFzIDogZSA6OiIKCiM6IHJlYWQuYzoxOTc5CiMsIGMtZm9ybWF0Cm1zZ2lkICJ0YXJnZXQgYCVzJyBnaXZlbiBtb3JlIHRoYW4gb25jZSBpbiB0aGUgc2FtZSBydWxlLiIKbXNnc3RyICJvIG9ieGVjdGl2byBgJXMnIGFwYXJlY2UgbeFpcyBkdW5oYSB2ZXogbmEgbWVzbWEgcmVncmEuIgoKIzogcmVhZC5jOjE5ODgKIywgYy1mb3JtYXQKbXNnaWQgIndhcm5pbmc6IG92ZXJyaWRpbmcgY29tbWFuZHMgZm9yIHRhcmdldCBgJXMnIgptc2dzdHIgImF2aXNvOiBpZ25vcmFuZG8gb3MgY29tYW5kb3MgZG8gb2J4ZWN0aXZvIGAlcyciCgojOiByZWFkLmM6MTk5MQojLCBjLWZvcm1hdAptc2dpZCAid2FybmluZzogaWdub3Jpbmcgb2xkIGNvbW1hbmRzIGZvciB0YXJnZXQgYCVzJyIKbXNnc3RyICJhdmlzbzogaWdu83JhbnNlIG9zIGNvbWFuZG9zIGFudGlnb3MgZG8gb2J4ZWN0aXZvIGAlcyciCgojOiByZWFkLmM6MjU3NQptc2dpZCAid2FybmluZzogTlVMIGNoYXJhY3RlciBzZWVuOyByZXN0IG9mIGxpbmUgaWdub3JlZCIKbXNnc3RyICJhdmlzbzogdml1c2UgdW4gY2Fy4WN0ZXIgTlVMOyBpZ27zcmFzZSBvIHJlc3RvIGRhIGxp8WEiCgojOiByZW1ha2UuYzoyMjkKIywgYy1mb3JtYXQKbXNnaWQgIk5vdGhpbmcgdG8gYmUgZG9uZSBmb3IgYCVzJy4iCm1zZ3N0ciAiTm9uIGhhaSBuYWRhIHF1ZSBmYWNlciBwYXJhIGAlcyciCgojOiByZW1ha2UuYzoyMzAKIywgYy1mb3JtYXQKbXNnaWQgImAlcycgaXMgdXAgdG8gZGF0ZS4iCm1zZ3N0ciAiYCVzJyBlc3ThIGFjdHVhbGl6YWRvLiIKCiM6IHJlbWFrZS5jOjI5NwojLCBjLWZvcm1hdAptc2dpZCAiUHJ1bmluZyBmaWxlIGAlcycuXG4iCm1zZ3N0ciAiUG9kYW5kbyBvIGZpY2hlaXJvIGAlcycuXG4iCgojOiByZW1ha2UuYzozNDkKIywgYy1mb3JtYXQKbXNnaWQgIiVzTm8gcnVsZSB0byBtYWtlIHRhcmdldCBgJXMnJXMiCm1zZ3N0ciAiJXNOb24gaGFpIHVuaGEgcmVncmEgcGFyYSBmYWNlLWxvIG9ieGVjdGl2byBgJXMnJXMiCgojOiByZW1ha2UuYzozNTEKIywgYy1mb3JtYXQKbXNnaWQgIiVzTm8gcnVsZSB0byBtYWtlIHRhcmdldCBgJXMnLCBuZWVkZWQgYnkgYCVzJyVzIgptc2dzdHIgIiVzTm9uIGhhaSB1bmhhIHJlZ3JhIHBhcmEgZmFjZS1sbyBvYnhlY3Rpdm8gYCVzJywgcXVlIHByZWNpc2EgYCVzJyVzIgoKIzogcmVtYWtlLmM6Mzc4CiMsIGMtZm9ybWF0Cm1zZ2lkICJDb25zaWRlcmluZyB0YXJnZXQgZmlsZSBgJXMnLlxuIgptc2dzdHIgIkNvbnNpZGVyYW5kbyBvIGZpY2hlaXJvIG9ieGVjdGl2byBgJXMnLlxuIgoKIzogcmVtYWtlLmM6Mzg1CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWNlbnRseSB0cmllZCBhbmQgZmFpbGVkIHRvIHVwZGF0ZSBmaWxlIGAlcycuXG4iCm1zZ3N0ciAiSGFpIHBvdWNvIHByb2JvdXNlIGEgYWN0dWFsaXphLWxvIGZpY2hlaXJvIGAlcycgZSBub24gc2UgcHVpZG8uXG4iCgojOiByZW1ha2UuYzo0MDAKIywgYy1mb3JtYXQKbXNnaWQgIkZpbGUgYCVzJyB3YXMgY29uc2lkZXJlZCBhbHJlYWR5LlxuIgptc2dzdHIgIk8gZmljaGVpcm8gYCVzJyB4YSBmb3JhIGNvbnNpZGVyYWRvLlxuIgoKIzogcmVtYWtlLmM6NDEwCiMsIGMtZm9ybWF0Cm1zZ2lkICJTdGlsbCB1cGRhdGluZyBmaWxlIGAlcycuXG4iCm1zZ3N0ciAiQWluZGEgc2UgZXN04SBhY3R1YWxpemFuZG8gbyBmaWNoZWlybyBgJXMnLlxuIgoKIzogcmVtYWtlLmM6NDEzCiMsIGMtZm9ybWF0Cm1zZ2lkICJGaW5pc2hlZCB1cGRhdGluZyBmaWxlIGAlcycuXG4iCm1zZ3N0ciAiUmVtYXRvdXNlIGRlIGFjdHVhbGl6YS1sbyBmaWNoZWlybyBgJXMnLlxuIgoKIzogcmVtYWtlLmM6NDM0CiMsIGMtZm9ybWF0Cm1zZ2lkICJGaWxlIGAlcycgZG9lcyBub3QgZXhpc3QuXG4iCm1zZ3N0ciAiTyBmaWNoZWlybyBgJXMnIG5vbiBleGlzdGUuXG4iCgojOiByZW1ha2UuYzo0NDEKIywgYy1mb3JtYXQKbXNnaWQgIiIKIioqKiBXYXJuaW5nOiAuTE9XX1JFU09MVVRJT05fVElNRSBmaWxlIGAlcycgaGFzIGEgaGlnaCByZXNvbHV0aW9uIHRpbWUgc3RhbXAiCm1zZ3N0ciAiIgoiKioqIEF2aXNvOiBvIGZpY2hlaXJvIGAlcycgZGUgLkxPV19SRVNPTFVUSU9OX1RJTUUgdGVuIHVuaGEgbWFyY2EgZGUgdGVtcG8gIgoiZGUgYWx0YSByZXNvbHVjafNuIgoKIzogcmVtYWtlLmM6NDU0IHJlbWFrZS5jOjk2MgojLCBjLWZvcm1hdAptc2dpZCAiRm91bmQgYW4gaW1wbGljaXQgcnVsZSBmb3IgYCVzJy5cbiIKbXNnc3RyICJBdG9wb3VzZSB1bmhhIHJlZ3JhIGltcGztY2l0YSBkZSBgJXMnLlxuIgoKIzogcmVtYWtlLmM6NDU2IHJlbWFrZS5jOjk2NAojLCBjLWZvcm1hdAptc2dpZCAiTm8gaW1wbGljaXQgcnVsZSBmb3VuZCBmb3IgYCVzJy5cbiIKbXNnc3RyICJOb24gc2UgYXRvcG91IHVuaGEgcmVncmEgaW1wbO1jaXRhIHBhcmEgYCVzJy5cbiIKCiM6IHJlbWFrZS5jOjQ2MiByZW1ha2UuYzo5NzAKIywgYy1mb3JtYXQKbXNnaWQgIlVzaW5nIGRlZmF1bHQgY29tbWFuZHMgZm9yIGAlcycuXG4iCm1zZ3N0ciAiVXNhbmRvIG9zIGNvbWFuZG9zIHBvciBkZWZlY3RvIHBhcmEgYCVzJy5cbiIKCiM6IHJlbWFrZS5jOjQ4NCByZW1ha2UuYzo5OTYKIywgYy1mb3JtYXQKbXNnaWQgIkNpcmN1bGFyICVzIDwtICVzIGRlcGVuZGVuY3kgZHJvcHBlZC4iCm1zZ3N0ciAiQSBkZXBlbmRlbmNpYSBjaXJjdWxhciAlcyA8LSAlcyBmb2kgZWxpbWluYWRhLiIKCiM6IHJlbWFrZS5jOjYwMQojLCBjLWZvcm1hdAptc2dpZCAiRmluaXNoZWQgcHJlcmVxdWlzaXRlcyBvZiB0YXJnZXQgZmlsZSBgJXMnLlxuIgptc2dzdHIgIlJlbWF04XJvbnNlIG9zIHByZXJyZXF1aXNpdG9zIGRvIGZpY2hlaXJvIG9ieGVjdGl2byBgJXMnLlxuIgoKIzogcmVtYWtlLmM6NjA3CiMsIGMtZm9ybWF0Cm1zZ2lkICJUaGUgcHJlcmVxdWlzaXRlcyBvZiBgJXMnIGFyZSBiZWluZyBtYWRlLlxuIgptc2dzdHIgIkVzdGFuIGEgc2UgZmFjZS1sb3MgcHJlcnJlcXVpc2l0b3MgZGUgYCVzJy5cbiIKCiM6IHJlbWFrZS5jOjYyMAojLCBjLWZvcm1hdAptc2dpZCAiR2l2aW5nIHVwIG9uIHRhcmdldCBmaWxlIGAlcycuXG4iCm1zZ3N0ciAiQWJhbmRvbmFuZG8gbm8gZmljaGVpcm8gb2J4ZWN0aXZvIGAlcycuXG4iCgojOiByZW1ha2UuYzo2MjUKIywgYy1mb3JtYXQKbXNnaWQgIlRhcmdldCBgJXMnIG5vdCByZW1hZGUgYmVjYXVzZSBvZiBlcnJvcnMuIgptc2dzdHIgIk5vbiBzZSByZWZhaSBvIG9ieGVjdGl2byBgJXMnIGEgY2F1c2EgZG9zIGVycm9zLiIKCiM6IHJlbWFrZS5jOjY3NwojLCBjLWZvcm1hdAptc2dpZCAiUHJlcmVxdWlzaXRlIGAlcycgaXMgb3JkZXItb25seSBmb3IgdGFyZ2V0IGAlcycuXG4iCm1zZ3N0ciAiTyBwcmVycmVxdWlzaXRvIGAlcycg6SBz8y1vcmRlIHBhcmEgbyBvYnhlY3Rpdm8gYCVzJy5cbiIKCiM6IHJlbWFrZS5jOjY4MgojLCBjLWZvcm1hdAptc2dpZCAiUHJlcmVxdWlzaXRlIGAlcycgb2YgdGFyZ2V0IGAlcycgZG9lcyBub3QgZXhpc3QuXG4iCm1zZ3N0ciAiTyBwcmVycmVxdWlzaXRvIGAlcycgZG8gb2J4ZWN0aXZvIGAlcycgbm9uIGV4aXN0ZS5cbiIKCiM6IHJlbWFrZS5jOjY4NwojLCBjLWZvcm1hdAptc2dpZCAiUHJlcmVxdWlzaXRlIGAlcycgaXMgbmV3ZXIgdGhhbiB0YXJnZXQgYCVzJy5cbiIKbXNnc3RyICJPIHByZXJyZXF1aXNpdG8gYCVzJyDpIG3haXMgbm92byBj8yBvYnhlY3Rpdm8gYCVzJy5cbiIKCiM6IHJlbWFrZS5jOjY5MAojLCBjLWZvcm1hdAptc2dpZCAiUHJlcmVxdWlzaXRlIGAlcycgaXMgb2xkZXIgdGhhbiB0YXJnZXQgYCVzJy5cbiIKbXNnc3RyICJPIHByZXJyZXF1aXNpdG8gYCVzJyDpIG3haXMgdmVsbG8gY/Mgb2J4ZWN0aXZvIGAlcycuXG4iCgojOiByZW1ha2UuYzo3MDgKIywgYy1mb3JtYXQKbXNnaWQgIlRhcmdldCBgJXMnIGlzIGRvdWJsZS1jb2xvbiBhbmQgaGFzIG5vIHByZXJlcXVpc2l0ZXMuXG4iCm1zZ3N0ciAiTyBvYnhlY3Rpdm8gYCVzJyB0ZW4gY2F0cm8gcHVudG9zIGUgbm9uIHRlbiBwcmVycmVxdWlzaXRvcy5cbiIKCiM6IHJlbWFrZS5jOjcxNQojLCBjLWZvcm1hdAptc2dpZCAiTm8gY29tbWFuZHMgZm9yIGAlcycgYW5kIG5vIHByZXJlcXVpc2l0ZXMgYWN0dWFsbHkgY2hhbmdlZC5cbiIKbXNnc3RyICJOb24gaGFpIGNvbWFuZG9zIGRlIGAlcycsIGUgbm9uIGNhbWJpYXJvbiBvcyBwcmVycmVxdWlzaXRvcy5cbiIKCiM6IHJlbWFrZS5jOjcyMAojLCBjLWZvcm1hdAptc2dpZCAiTWFraW5nIGAlcycgZHVlIHRvIGFsd2F5cy1tYWtlIGZsYWcuXG4iCm1zZ3N0ciAiRmFjZW5kbyBgJXMnIGRlYmlkbyDhIG1hcmNhIGRlIHNlbXByZS1mYWNlci5cbiIKCiM6IHJlbWFrZS5jOjcyOAojLCBjLWZvcm1hdAptc2dpZCAiTm8gbmVlZCB0byByZW1ha2UgdGFyZ2V0IGAlcyciCm1zZ3N0ciAiTm9uIOkgcHJlY2lzbyByZWZhY2UtbG8gb2J4ZWN0aXZvIGAlcyciCgojOiByZW1ha2UuYzo3MzAKIywgYy1mb3JtYXQKbXNnaWQgIjsgdXNpbmcgVlBBVEggbmFtZSBgJXMnIgptc2dzdHIgIjsgdXNhbmRvIG8gbm9tZSBkZSBWUEFUSCBgJXMnIgoKIzogcmVtYWtlLmM6NzUwCiMsIGMtZm9ybWF0Cm1zZ2lkICJNdXN0IHJlbWFrZSB0YXJnZXQgYCVzJy5cbiIKbXNnc3RyICJEZWJlIHJlZmFjZXJzZSBvIG9ieGVjdGl2byBgJXMnLlxuIgoKIzogcmVtYWtlLmM6NzU2CiMsIGMtZm9ybWF0Cm1zZ2lkICIgIElnbm9yaW5nIFZQQVRIIG5hbWUgYCVzJy5cbiIKbXNnc3RyICIgIElnbm9yYW5kbyBvIG5vbWUgVlBBVEggYCVzJy5cbiIKCiM6IHJlbWFrZS5jOjc2NQojLCBjLWZvcm1hdAptc2dpZCAiQ29tbWFuZHMgb2YgYCVzJyBhcmUgYmVpbmcgcnVuLlxuIgptc2dzdHIgIkVzdGFuc2UgYSBleGVjdXRhLWxvcyBjb21hbmRvcyBkZSBgJXMnLlxuIgoKIzogcmVtYWtlLmM6NzcyCiMsIGMtZm9ybWF0Cm1zZ2lkICJGYWlsZWQgdG8gcmVtYWtlIHRhcmdldCBmaWxlIGAlcycuXG4iCm1zZ3N0ciAiTm9uIHNlIHB1aWRvIHJlZmFjZS1sbyBmaWNoZWlybyBvYnhlY3Rpdm8gYCVzJy5cbiIKCiM6IHJlbWFrZS5jOjc3NQojLCBjLWZvcm1hdAptc2dpZCAiU3VjY2Vzc2Z1bGx5IHJlbWFkZSB0YXJnZXQgZmlsZSBgJXMnLlxuIgptc2dzdHIgIk8gZmljaGVpcm8gb2J4ZWN0aXZvIGAlcycgZm9pIGZlaXRvIGRlIG5vdm8gY29uIOl4aXRvLlxuIgoKIzogcmVtYWtlLmM6Nzc4CiMsIGMtZm9ybWF0Cm1zZ2lkICJUYXJnZXQgZmlsZSBgJXMnIG5lZWRzIHJlbWFkZSB1bmRlciAtcS5cbiIKbXNnc3RyICJPIGZpY2hlaXJvIG9ieGVjdGl2byBgJXMnIHByZWNpc2EgcmVmYWNlcnNlIGNvbiAtcS5cbiIKCiM6IHJlbWFrZS5jOjEzMDYKIywgYy1mb3JtYXQKbXNnaWQgIldhcm5pbmc6IEZpbGUgYCVzJyBoYXMgbW9kaWZpY2F0aW9uIHRpbWUgaW4gdGhlIGZ1dHVyZSIKbXNnc3RyICJBdmlzbzogTyBmaWNoZWlybyBgJXMnIHRlbiB1bmhhIGRhdGEgZGUgbW9kaWZpY2FjafNuIG5vIGZ1dHVybyIKCiM6IHJlbWFrZS5jOjEzMTMKIywgYy1mb3JtYXQKbXNnaWQgIldhcm5pbmc6IEZpbGUgYCVzJyBoYXMgbW9kaWZpY2F0aW9uIHRpbWUgJS4yZyBzIGluIHRoZSBmdXR1cmUiCm1zZ3N0ciAiQXZpc286IE8gZmljaGVpcm8gYCVzJyB0ZW4gdW5oYSBkYXRhIGRlIG1vZGlmaWNhY2nzbiAlLjJnIHMuIG5vIGZ1dHVybyIKCiM6IHJlbWFrZS5jOjE1MTEKIywgYy1mb3JtYXQKbXNnaWQgIi5MSUJQQVRURVJOUyBlbGVtZW50IGAlcycgaXMgbm90IGEgcGF0dGVybiIKbXNnc3RyICJPIGVsZW1lbnRvIGRlIC5MSUJQQVRURVJOUyBgJXMnIG5vbiDpIHVuIHBhdHLzbiIKCiM6IHJlbW90ZS1jc3Rtcy5jOjEyNQojLCBjLWZvcm1hdAptc2dpZCAiQ3VzdG9tcyB3b24ndCBleHBvcnQ6ICVzXG4iCm1zZ3N0ciAiQSBBZHVhbmEgbm9uIGV4cG9ydGE6ICVzXG4iCgojOiBydWxlLmM6NTQ4Cm1zZ2lkICIiCiJcbiIKIiMgSW1wbGljaXQgUnVsZXMiCm1zZ3N0ciAiIgoiXG4iCiIjIFJlZ3JhcyBJbXBs7WNpdGFzIgoKIzogcnVsZS5jOjU2Mwptc2dpZCAiIgoiXG4iCiIjIE5vIGltcGxpY2l0IHJ1bGVzLiIKbXNnc3RyICIiCiJcbiIKIiMgTm9uIGhhaSByZWdyYXMgaW1wbO1jaXRhcy4iCgojOiBydWxlLmM6NTY2CiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiMgJXUgaW1wbGljaXQgcnVsZXMsICV1Igptc2dzdHIgIiIKIlxuIgoiIyAldSByZWdyYXMgaW1wbO1jaXRhcywgJXUiCgojOiBydWxlLmM6NTc1Cm1zZ2lkICIgdGVybWluYWwuIgptc2dzdHIgIiB0ZXJtaW5hbC4iCgojOiBydWxlLmM6NTgzCiMsIGMtZm9ybWF0Cm1zZ2lkICJCVUc6IG51bV9wYXR0ZXJuX3J1bGVzIHdyb25nISAgJXUgIT0gJXUiCm1zZ3N0ciAiRVJSTzogoW51bV9wYXR0ZXJuX3J1bGVzIOkgaW5jb3JyZWN0byEgJXUgIT0gJXUiCgojOiBzaWduYW1lLmM6ODUKbXNnaWQgInVua25vd24gc2lnbmFsIgptc2dzdHIgInNpbmFsIGRlc2Nv8WVjaWRvIgoKIzogc2lnbmFtZS5jOjkzCm1zZ2lkICJIYW5ndXAiCm1zZ3N0ciAiQ29sZ2FyIgoKIzogc2lnbmFtZS5jOjk2Cm1zZ2lkICJJbnRlcnJ1cHQiCm1zZ3N0ciAiSW50ZXJyb21waWRvIgoKIzogc2lnbmFtZS5jOjk5Cm1zZ2lkICJRdWl0Igptc2dzdHIgIlNh7XIiCgojOiBzaWduYW1lLmM6MTAyCm1zZ2lkICJJbGxlZ2FsIEluc3RydWN0aW9uIgptc2dzdHIgIkluc3RydWNjafNuIElsZWdhbCIKCiM6IHNpZ25hbWUuYzoxMDUKbXNnaWQgIlRyYWNlL2JyZWFrcG9pbnQgdHJhcCIKbXNnc3RyICJUcmFtcGEgZGUgdHJhemFkby9wdW50byBkZSBkZXRlbmNp824iCgojOiBzaWduYW1lLmM6MTEwCm1zZ2lkICJBYm9ydGVkIgptc2dzdHIgIkFib3J0YWRvIgoKIzogc2lnbmFtZS5jOjExMwptc2dpZCAiSU9UIHRyYXAiCm1zZ3N0ciAiVHJhbXBhIGRlIElPVCIKCiM6IHNpZ25hbWUuYzoxMTYKbXNnaWQgIkVNVCB0cmFwIgptc2dzdHIgIlRyYW1wYSBFTVQiCgojOiBzaWduYW1lLmM6MTE5Cm1zZ2lkICJGbG9hdGluZyBwb2ludCBleGNlcHRpb24iCm1zZ3N0ciAiRXhjZXBjafNuIGRlIGNvbWEgZmxvdGFudGUiCgojOiBzaWduYW1lLmM6MTIyCm1zZ2lkICJLaWxsZWQiCm1zZ3N0ciAiTWF0YWRvIgoKIzogc2lnbmFtZS5jOjEyNQptc2dpZCAiQnVzIGVycm9yIgptc2dzdHIgIkVycm8gZG8gYnVzIgoKIzogc2lnbmFtZS5jOjEyOAptc2dpZCAiU2VnbWVudGF0aW9uIGZhdWx0Igptc2dzdHIgIkZhbGxvIGRlIHNlZ21lbnRvIgoKIzogc2lnbmFtZS5jOjEzMQptc2dpZCAiQmFkIHN5c3RlbSBjYWxsIgptc2dzdHIgIkNoYW1hZGEgYW8gc2lzdGVtYSBpbmNvcnJlY3RhIgoKIzogc2lnbmFtZS5jOjEzNAptc2dpZCAiQnJva2VuIHBpcGUiCm1zZ3N0ciAiQ2FubyByb21waWRvIgoKIzogc2lnbmFtZS5jOjEzNwptc2dpZCAiQWxhcm0gY2xvY2siCm1zZ3N0ciAiVGVtcG9yaXphZG9yIgoKIzogc2lnbmFtZS5jOjE0MAptc2dpZCAiVGVybWluYXRlZCIKbXNnc3RyICJSZW1hdGFkbyIKCiM6IHNpZ25hbWUuYzoxNDMKbXNnaWQgIlVzZXIgZGVmaW5lZCBzaWduYWwgMSIKbXNnc3RyICJTaW5hbCBkZWZpbmlkbyBwb2xvIHVzdWFyaW8gMSIKCiM6IHNpZ25hbWUuYzoxNDYKbXNnaWQgIlVzZXIgZGVmaW5lZCBzaWduYWwgMiIKbXNnc3RyICJTaW5hbCBkZWZpbmlkbyBwb2xvIHVzdWFyaW8gMiIKCiM6IHNpZ25hbWUuYzoxNTEgc2lnbmFtZS5jOjE1NAptc2dpZCAiQ2hpbGQgZXhpdGVkIgptc2dzdHIgIk8gcHJvY2VzbyBmaWxsbyByZW1hdG91IgoKIzogc2lnbmFtZS5jOjE1Nwptc2dpZCAiUG93ZXIgZmFpbHVyZSIKbXNnc3RyICJGYWxsbyBkZSBzdW1pbmlzdHJvIGVs6WN0cmljbyIKCiM6IHNpZ25hbWUuYzoxNjAKbXNnaWQgIlN0b3BwZWQiCm1zZ3N0ciAiRGV0aWRvIgoKIzogc2lnbmFtZS5jOjE2Mwptc2dpZCAiU3RvcHBlZCAodHR5IGlucHV0KSIKbXNnc3RyICJEZXRpZG8gKGVudHJhZGEgZGUgY29uc29sYSkiCgojOiBzaWduYW1lLmM6MTY2Cm1zZ2lkICJTdG9wcGVkICh0dHkgb3V0cHV0KSIKbXNnc3RyICJEZXRpZG8gKHNh7WRhIGRlIGNvbnNvbGEpIgoKIzogc2lnbmFtZS5jOjE2OQptc2dpZCAiU3RvcHBlZCAoc2lnbmFsKSIKbXNnc3RyICJEZXRpZG8gKHNpbmFsKSIKCiM6IHNpZ25hbWUuYzoxNzIKbXNnaWQgIkNQVSB0aW1lIGxpbWl0IGV4Y2VlZGVkIgptc2dzdHIgIkztbWl0ZSBkZSB0ZW1wbyBkZSBDUFUgc3VwZXJhZG8iCgojOiBzaWduYW1lLmM6MTc1Cm1zZ2lkICJGaWxlIHNpemUgbGltaXQgZXhjZWVkZWQiCm1zZ3N0ciAiTO1taXRlIGRlIHRhbWHxbyBkZSBmaWNoZWlyb3Mgc3VwZXJhZG8iCgojOiBzaWduYW1lLmM6MTc4Cm1zZ2lkICJWaXJ0dWFsIHRpbWVyIGV4cGlyZWQiCm1zZ3N0ciAiVGVtcG9yaXphZG9yIHZpcnR1YWwgZXNnb3RhZG8iCgojOiBzaWduYW1lLmM6MTgxCm1zZ2lkICJQcm9maWxpbmcgdGltZXIgZXhwaXJlZCIKbXNnc3RyICJPIHRlbXBvcml6YWRvciBlc2dvdG91c2UiCgojOiBzaWduYW1lLmM6MTg3Cm1zZ2lkICJXaW5kb3cgY2hhbmdlZCIKbXNnc3RyICJBIGZpZXN0cmEgY2FtYmlvdSIKCiM6IHNpZ25hbWUuYzoxOTAKbXNnaWQgIkNvbnRpbnVlZCIKbXNnc3RyICJDb250aW51YWRvIgoKIzogc2lnbmFtZS5jOjE5Mwptc2dpZCAiVXJnZW50IEkvTyBjb25kaXRpb24iCm1zZ3N0ciAiQ29uZGljafNuIGRlIEUvUyB1cnhlbnRlIgoKIzogc2lnbmFtZS5jOjIwMCBzaWduYW1lLmM6MjA5Cm1zZ2lkICJJL08gcG9zc2libGUiCm1zZ3N0ciAiQSBFL1Mg6SBwb3NpYmxlIgoKIzogc2lnbmFtZS5jOjIwMwptc2dpZCAiU0lHV0lORCIKbXNnc3RyICJTSUdXSU5EIgoKIzogc2lnbmFtZS5jOjIwNgptc2dpZCAiU0lHUEhPTkUiCm1zZ3N0ciAiU0lHUEhPTkUiCgojOiBzaWduYW1lLmM6MjEyCm1zZ2lkICJSZXNvdXJjZSBsb3N0Igptc2dzdHIgIlJlY3Vyc28gcGVyZGlkbyIKCiM6IHNpZ25hbWUuYzoyMTUKbXNnaWQgIkRhbmdlciBzaWduYWwiCm1zZ3N0ciAiU2luYWwgZGUgcGVyaWdvIgoKIzogc2lnbmFtZS5jOjIxOAptc2dpZCAiSW5mb3JtYXRpb24gcmVxdWVzdCIKbXNnc3RyICJQZXRpY2nzbiBkZSBpbmZvcm1hY2nzbiIKCiM6IHNpZ25hbWUuYzoyMjEKbXNnaWQgIkZsb2F0aW5nIHBvaW50IGNvLXByb2Nlc3NvciBub3QgYXZhaWxhYmxlIgptc2dzdHIgIk8gY28tcHJvY2VzYWRvciBkZSBjb21hIGZsb3RhbnRlIG5vbiBlc3ThIGRpc3Bv8WlibGUiCgojOiBzdHJjYWNoZS5jOjIxMAojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiIlcyAjIG9mIHN0cmluZ3MgaW4gc3RyY2FjaGU6ICVkXG4iCm1zZ3N0ciAiIgoKIzogc3RyY2FjaGUuYzoyMTEKIywgYy1mb3JtYXQKbXNnaWQgIiVzICMgb2Ygc3RyY2FjaGUgYnVmZmVyczogJWRcbiIKbXNnc3RyICIiCgojOiBzdHJjYWNoZS5jOjIxMgojLCBjLWZvcm1hdAptc2dpZCAiJXMgc3RyY2FjaGUgc2l6ZTogdG90YWwgPSAlZCAvIG1heCA9ICVkIC8gbWluID0gJWQgLyBhdmcgPSAlZFxuIgptc2dzdHIgIiIKCiM6IHN0cmNhY2hlLmM6MjE0CiMsIGMtZm9ybWF0Cm1zZ2lkICIlcyBzdHJjYWNoZSBmcmVlOiB0b3RhbCA9ICVkIC8gbWF4ID0gJWQgLyBtaW4gPSAlZCAvIGF2ZyA9ICVkXG4iCm1zZ3N0ciAiIgoKIzogdmFyaWFibGUuYzoxMzY5Cm1zZ2lkICJkZWZhdWx0Igptc2dzdHIgInBvciBkZWZlY3RvIgoKIzogdmFyaWFibGUuYzoxMzcyCm1zZ2lkICJlbnZpcm9ubWVudCIKbXNnc3RyICJhbWJpZW50ZSIKCiM6IHZhcmlhYmxlLmM6MTM3NQptc2dpZCAibWFrZWZpbGUiCm1zZ3N0ciAiZmljaGVpcm8gZGUgbWFrZSIKCiM6IHZhcmlhYmxlLmM6MTM3OAptc2dpZCAiZW52aXJvbm1lbnQgdW5kZXIgLWUiCm1zZ3N0ciAiYW1iaWVudGUgYmFpeG8gLWUiCgojOiB2YXJpYWJsZS5jOjEzODEKbXNnaWQgImNvbW1hbmQgbGluZSIKbXNnc3RyICJsafFhIGRlIGNvbWFuZG9zIgoKIzogdmFyaWFibGUuYzoxMzg0Cm1zZ2lkICJgb3ZlcnJpZGUnIGRpcmVjdGl2ZSIKbXNnc3RyICJkaXJlY3RpdmEgYG92ZXJyaWRlJyIKCiM6IHZhcmlhYmxlLmM6MTM4Nwptc2dpZCAiYXV0b21hdGljIgptc2dzdHIgImF1dG9t4XRpY28iCgojOiB2YXJpYWJsZS5jOjEzOTYKIywgYy1mb3JtYXQKbXNnaWQgIiAoZnJvbSBgJXMnLCBsaW5lICVsdSkiCm1zZ3N0ciAiIChkZSBgJXMnLCBsafFhICVsdSkiCgojOiB2YXJpYWJsZS5jOjE0MzgKbXNnaWQgIiMgdmFyaWFibGUgc2V0IGhhc2gtdGFibGUgc3RhdHM6XG4iCm1zZ3N0ciAiIyBlc3RhdO1zdGljYXMgZGEgdOFib2EgaGFzaCBkZSBjb254dW50byBkZSB2YXJpYWJsZXM6XG4iCgojOiB2YXJpYWJsZS5jOjE0NDkKbXNnaWQgIiIKIlxuIgoiIyBWYXJpYWJsZXNcbiIKbXNnc3RyICIiCiJcbiIKIiMgVmFyaWFibGVzXG4iCgojOiB2YXJpYWJsZS5jOjE0NTMKIywgZnV6enkKbXNnaWQgIiIKIlxuIgoiIyBQYXR0ZXJuLXNwZWNpZmljIFZhcmlhYmxlIFZhbHVlcyIKbXNnc3RyICIiCiJcbiIKIiMgVmFsb3JlcyBkZSB2YXJpYWJsZXMgZXNwZWPtZmljb3MgZG8gcGF0cvNuIgoKIzogdmFyaWFibGUuYzoxNDY3Cm1zZ2lkICIiCiJcbiIKIiMgTm8gcGF0dGVybi1zcGVjaWZpYyB2YXJpYWJsZSB2YWx1ZXMuIgptc2dzdHIgIiIKIlxuIgoiIyBOb24gaGFpIHZhbG9yZXMgZXNwZWPtZmljb3MgZG8gcGF0cvNuLiIKCiM6IHZhcmlhYmxlLmM6MTQ2OQojLCBjLWZvcm1hdAptc2dpZCAiIgoiXG4iCiIjICV1IHBhdHRlcm4tc3BlY2lmaWMgdmFyaWFibGUgdmFsdWVzIgptc2dzdHIgIiIKIlxuIgoiIyAldSB2YWxvcmVzIGRlIHZhcmlhYmxlcyBlc3BlY+1maWNvcyBkbyBwYXRy824iCgojOiB2YXJpYWJsZS5oOjE4OQojLCBjLWZvcm1hdAptc2dpZCAid2FybmluZzogdW5kZWZpbmVkIHZhcmlhYmxlIGAlLipzJyIKbXNnc3RyICJhdmlzbzogdmFyaWFibGUgbm9uIGRlZmluaWRhIGAlLipzJyIKCiM6IHZtc2Z1bmN0aW9ucy5jOjk0CiMsIGMtZm9ybWF0Cm1zZ2lkICJzeXMkc2VhcmNoIGZhaWxlZCB3aXRoICVkXG4iCm1zZ3N0ciAiYSBjaGFtYWRhIGEgc3lzJHNlYXJjaCBmYWxsb3UgY29uICVkXG4iCgojOiB2bXNqb2JzLmM6NzEKIywgYy1mb3JtYXQKbXNnaWQgIldhcm5pbmc6IEVtcHR5IHJlZGlyZWN0aW9uXG4iCm1zZ3N0ciAiQXZpc286IFJlZGlyZWNjafNuIGJhbGVpcmFcbiIKCiM6IHZtc2pvYnMuYzoxNzUKIywgYy1mb3JtYXQKbXNnaWQgImludGVybmFsIGVycm9yOiBgJXMnIGNvbW1hbmRfc3RhdGUiCm1zZ3N0ciAiZXJybyBpbnRlcm5vOiBgJXMnIGNvbW1hbmRfc3RhdGUiCgojOiB2bXNqb2JzLmM6MjY4CiMsIGMtZm9ybWF0Cm1zZ2lkICItd2FybmluZywgQ1RSTC1ZIHdpbGwgbGVhdmUgc3ViLXByb2Nlc3MoZXMpIGFyb3VuZC5cbiIKbXNnc3RyICItYXZpc28sIENUUkwtWSBkZWl4YXLhIHN1YnByb2Nlc29zIGNlaWJvcy5cbiIKCiM6IHZtc2pvYnMuYzoyODQKIywgYy1mb3JtYXQKbXNnaWQgIi13YXJuaW5nLCB5b3UgbWF5IGhhdmUgdG8gcmUtZW5hYmxlIENUUkwtWSBoYW5kbGluZyBmcm9tIERDTC5cbiIKbXNnc3RyICItYXZpc28sIHBvZGUgcXVlIHRl8WEgcXVlIHJlYWN0aXZhLWxvIG1hbmV4byBkZSBDVFJMLVkgZGVuZGUgbyBEQ0wuXG4iCgojOiB2bXNqb2JzLmM6NDA3CiMsIGMtZm9ybWF0Cm1zZ2lkICJCVUlMVElOIFslc11bJXNdXG4iCm1zZ3N0ciAiQlVJTFRJTiBbJXNdWyVzXVxuIgoKIzogdm1zam9icy5jOjQxOAojLCBjLWZvcm1hdAptc2dpZCAiQlVJTFRJTiBDRCAlc1xuIgptc2dzdHIgIkJVSUxUSU4gQ0QgJXNcbiIKCiM6IHZtc2pvYnMuYzo0MzYKIywgYy1mb3JtYXQKbXNnaWQgIkJVSUxUSU4gUk0gJXNcbiIKbXNnc3RyICJCVUlMVElOIFJNICVzXG4iCgojOiB2bXNqb2JzLmM6NDU3CiMsIGMtZm9ybWF0Cm1zZ2lkICJVbmtub3duIGJ1aWx0aW4gY29tbWFuZCAnJXMnXG4iCm1zZ3N0ciAiQ29tYW5kbyBpbmNsdWlkbyBkZXNjb/FlY2lkbyAnJXMnXG4iCgojOiB2bXNqb2JzLmM6NDc5CiMsIGMtZm9ybWF0Cm1zZ2lkICJFcnJvciwgZW1wdHkgY29tbWFuZFxuIgptc2dzdHIgIkVycm8sIGNvbWFuZG8gYmFsZWlyb1xuIgoKIzogdm1zam9icy5jOjQ5MQojLCBjLWZvcm1hdAptc2dpZCAiUmVkaXJlY3RlZCBpbnB1dCBmcm9tICVzXG4iCm1zZ3N0ciAiRW50cmFkYSByZWRpcml4aWRhIGRlICVzXG4iCgojOiB2bXNqb2JzLmM6NDk4CiMsIGMtZm9ybWF0Cm1zZ2lkICJSZWRpcmVjdGVkIGVycm9yIHRvICVzXG4iCm1zZ3N0ciAiRXJyb3MgcmVkaXJpeGlkb3MgYSAlc1xuIgoKIzogdm1zam9icy5jOjUwNQojLCBjLWZvcm1hdAptc2dpZCAiUmVkaXJlY3RlZCBvdXRwdXQgdG8gJXNcbiIKbXNnc3RyICJTYe1kYSByZWRpcml4aWRhIGEgJXNcbiIKCiM6IHZtc2pvYnMuYzo1NjgKIywgYy1mb3JtYXQKbXNnaWQgIkV4ZWN1dGluZyAlcyBpbnN0ZWFkXG4iCm1zZ3N0ciAiRXhlY3V0YW5kbyAlcyBubyBjYW50b1xuIgoKIzogdm1zam9icy5jOjY2OAojLCBjLWZvcm1hdAptc2dpZCAiRXJyb3Igc3Bhd25pbmcsICVkXG4iCm1zZ3N0ciAiRXJybyBhbyBsYW56YXIsICVkXG4iCgojOiB2cGF0aC5jOjU3MQptc2dpZCAiIgoiXG4iCiIjIFZQQVRIIFNlYXJjaCBQYXRoc1xuIgptc2dzdHIgIiIKIlxuIgoiIyBDYW1p8W9zIGRlIEJ1c2NhIFZQQVRIXG4iCgojOiB2cGF0aC5jOjU4OAptc2dpZCAiIyBObyBgdnBhdGgnIHNlYXJjaCBwYXRocy4iCm1zZ3N0ciAiIyBOb24gaGFpIGNhbWnxb3MgZGUgYnVzY2EgYHZwYXRoJyIKCiM6IHZwYXRoLmM6NTkwCiMsIGMtZm9ybWF0Cm1zZ2lkICIiCiJcbiIKIiMgJXUgYHZwYXRoJyBzZWFyY2ggcGF0aHMuXG4iCm1zZ3N0ciAiIgoiXG4iCiIjICV1IGNhbWnxb3MgZGUgYnVzY2EgYHZwYXRoJy5cbiIKCiM6IHZwYXRoLmM6NTkzCm1zZ2lkICIiCiJcbiIKIiMgTm8gZ2VuZXJhbCAoYFZQQVRIJyB2YXJpYWJsZSkgc2VhcmNoIHBhdGguIgptc2dzdHIgIiIKIlxuIgoiIyBOb24gaGFpIHVuIGNhbWnxbyBkZSBidXNjYSB4ZXJhbCAodmFyaWFibGUgYFZQQVRIJykuIgoKIzogdnBhdGguYzo1OTkKbXNnaWQgIiIKIlxuIgoiIyBHZW5lcmFsIChgVlBBVEgnIHZhcmlhYmxlKSBzZWFyY2ggcGF0aDpcbiIKIiMgIgptc2dzdHIgIiIKIlxuIgoiIyBDYW1p8W8gZGUgYnVzY2EgeGVyYWwgKHZhcmlhYmxlIGBWUEFUSCcpOlxuIgoiIyAiCgojfiBtc2dpZCAiU3ludGF4IGVycm9yLCBzdGlsbCBpbnNpZGUgJ1wiJ1xuIgojfiBtc2dzdHIgIkVycm8gZGUgc2ludGF4ZSwgYWluZGEgZGVudHJvIGRlICdcIidcbiIKCiN+IG1zZ2lkICJHb3QgYSBTSUdDSExEOyAldSB1bnJlYXBlZCBjaGlsZHJlbi5cbiIKI34gbXNnc3RyICJSZWNpYml1c2UgdW4gc2luYWwgU0lHQ0hMRDsgJXUgcHJvY2Vzb3MgZmlsbG9zIG5vbiBjb2xsZWl0YWRvcy5cbiIKCiN+IG1zZ2lkICJEbyBub3Qgc3BlY2lmeSAtaiBvciAtLWpvYnMgaWYgc2guZXhlIGlzIG5vdCBhdmFpbGFibGUuIgojfiBtc2dzdHIgIk5vbiBlc3BlY2lmaXF1ZSAtaiBvdSAtLWpvYnMgc2Ugc2guZXhlIG5vbiBlc3ThIGRpc3Bv8WlibGUuIgoKI34gbXNnaWQgIlJlc2V0dGluZyBtYWtlIGZvciBzaW5nbGUgam9iIG1vZGUuIgojfiBtc2dzdHIgIlJlaW5pY2lhbmRvIG1ha2UgcGFyYSBlbnRyYXIgbm8gbW9kbyBkZSB1biB0cmFiYWxsby4iCgojfiBtc2dpZCAibm8gZmlsZSBuYW1lIGZvciBgJXNpbmNsdWRlJyIKI34gbXNnc3RyICJub24gaGFpIHVuIGhvbWUgZGUgZmljaGVpcm8gZW4gYCVzaW5jbHVkZSciCgojfiBtc2dpZCAidGFyZ2V0IGAlcycgbGVhdmVzIHByZXJlcXVpc2l0ZSBwYXR0ZXJuIGVtcHR5IgojfiBtc2dzdHIgIm8gb2J4ZWN0aXZvIGAlcycgZGVpeGEgbyBwYXRy824gcHJlcnJlcXVpc2l0byBiYWxlaXJvIgoKI34gbXNnaWQgIiIKI34gIlxuIgojfiAiIyBObyBmaWxlcy4iCiN+IG1zZ3N0ciAiIgojfiAiXG4iCiN+ICIjIE5vbiBoYWkgZmljaGVpcm9zLiIKCiN+IG1zZ2lkICIiCiN+ICJcbiIKI34gIiMgJXUgZmlsZXMgaW4gJXUgaGFzaCBidWNrZXRzLlxuIgojfiBtc2dzdHIgIiIKI34gIlxuIgojfiAiIyAldSBmaWNoZWlyb3MgZW4gJXUgYmFsZGVzIGhhc2guXG4iCgojfiBtc2dpZCAiIyBhdmVyYWdlICUuM2YgZmlsZXMgcGVyIGJ1Y2tldCwgbWF4ICV1IGZpbGVzIGluIG9uZSBidWNrZXQuXG4iCiN+IG1zZ3N0ciAiIgojfiAiIyAlLjNmIGZpY2hlaXJvcyBkZSBtZWRpYSBwb3IgYmFsZGUsIG3heGltbyBkZSAldSBmaWNoZWlyb3MgbnVuIGJhbGRlLlxuIgoKI34gbXNnaWQgIkRJUkVDVE9SWSIKI34gbXNnc3RyICJESVJFQ1RPUklPIgoKI34gbXNnaWQgIkNoYW5nZSB0byBESVJFQ1RPUlkgYmVmb3JlIGRvaW5nIGFueXRoaW5nIgojfiBtc2dzdHIgIkVudHJhciBubyBESVJFQ1RPUklPIGFudGVzIGRlIGZhY2VyIG5hZGEiCgojfiBtc2dpZCAiRkxBR1MiCiN+IG1zZ3N0ciAiTU9ESUZJQ0FET1JFUyIKCiN+IG1zZ2lkICJTdXNwZW5kIHByb2Nlc3MgdG8gYWxsb3cgYSBkZWJ1Z2dlciB0byBhdHRhY2giCiN+IG1zZ3N0ciAiU3VzcGVuZGUtbG8gcHJvY2VzbyBwYXJhIHBvZGVyIGNvbmVjdGFyIHVuIGRlcHVyYWRvciIKCiN+IG1zZ2lkICJFbnZpcm9ubWVudCB2YXJpYWJsZXMgb3ZlcnJpZGUgbWFrZWZpbGVzIgojfiBtc2dzdHIgIiIKI34gIkFzIHZhcmlhYmxlcyBkZSBhbWJpZW50ZSB0ZfFlbiBwcmlvcmlkYWRlIHNvYnJlIG9zIGZpY2hlaXJvcyBkZSBtYWtlIgoKI34gbXNnaWQgIkZJTEUiCiN+IG1zZ3N0ciAiRklDSEVJUk8iCgojfiBtc2dpZCAiUmVhZCBGSUxFIGFzIGEgbWFrZWZpbGUiCiN+IG1zZ3N0ciAiTGUtbG8gRklDSEVJUk8gY29tYSB1biBmaWNoZWlybyBkZSBtYWtlIgoKI34gbXNnaWQgIlNlYXJjaCBESVJFQ1RPUlkgZm9yIGluY2x1ZGVkIG1ha2VmaWxlcyIKI34gbXNnc3RyICJCdXNjYS1sb3MgZmljaGVpcm9zIGRlIG1ha2UgaW5jbHVpZG9zIG5vIERJUkVDVE9SSU8iCgojfiBtc2dpZCAiRG9uJ3Qgc3RhcnQgbXVsdGlwbGUgam9icyB1bmxlc3MgbG9hZCBpcyBiZWxvdyBOIgojfiBtc2dzdHIgIk5vbiBjb21lemFyIHRyYWJhbGxvcyBt+mx0aXBsZXMgc2UgYSBjYXJnYSBub24g6SBpbmZlcmlvciBhIE4iCgojfiBtc2dpZCAiRG9uJ3QgYWN0dWFsbHkgcnVuIGFueSBjb21tYW5kczsganVzdCBwcmludCB0aGVtIgojfiBtc2dzdHIgIk5vbiBleGVjdXRhciBuaW5n+m4gY29tYW5kbzsgc/MgYW1vc2Fsb3MiCgojfiBtc2dpZCAiQ29uc2lkZXIgRklMRSB0byBiZSB2ZXJ5IG9sZCBhbmQgZG9uJ3QgcmVtYWtlIGl0IgojfiBtc2dzdHIgIkNvbnNpZGVyYXIgcXVlIG8gRklDSEVJUk8g6SBtb2kgdmVsbG8sIGUgbm9uIG8gcmVmYWNlciIKCiN+IG1zZ2lkICJEb24ndCBlY2hvIGNvbW1hbmRzIgojfiBtc2dzdHIgIk5vbiBhbW9zYS1sb3MgY29tYW5kb3MiCgojfiBtc2dpZCAiVHVybnMgb2ZmIC1rIgojfiBtc2dzdHIgIkRlc2FjdGl2YSAtayIKCiN+IG1zZ2lkICJDb25zaWRlciBGSUxFIHRvIGJlIGluZmluaXRlbHkgbmV3IgojfiBtc2dzdHIgIkNvbnNpZGVyYXIgcXVlIG8gRklDSEVJUk8g6SBpbmZpbml0YW1lbnRlIG5vdm8iCgojfiBtc2dpZCAiRW50ZXJpbmciCiN+IG1zZ3N0ciAiRW50cmFuZG8iCgojfiBtc2dpZCAiTGVhdmluZyIKI34gbXNnc3RyICJTYWluZG8iCgojfiBtc2dpZCAiIyBObyB2YXJpYWJsZXMuIgojfiBtc2dzdHIgIiMgTm9uIGhhaSB2YXJpYWJsZXMuIgoKI34gbXNnaWQgIiMgYXZlcmFnZSBvZiAlLjFmIHZhcmlhYmxlcyBwZXIgYnVja2V0LCBtYXggJXUgaW4gb25lIGJ1Y2tldC5cbiIKI34gbXNnc3RyICIjICUuMWYgdmFyaWFibGVzIGRlIG1lZGlhIHBvciBiYWxkZSwgbeF4aW1vIGRlICV1IG51biBiYWxkZS5cbiIKCiN+IG1zZ2lkICIjIGF2ZXJhZ2Ugb2YgJWQuJWQgdmFyaWFibGVzIHBlciBidWNrZXQsIG1heCAldSBpbiBvbmUgYnVja2V0LlxuIgojfiBtc2dzdHIgIiMgJWQuJWQgdmFyaWFibGVzIGRlIG1lZGlhIHBvciBiYWxkZSwgbeF4aW1vIGRlICV1IG51biBiYWxkZS5cbiIKCiN+IG1zZ2lkICJ0aGUgYHdvcmQnIGZ1bmN0aW9uIHRha2VzIGEgcG9zaXRpdmUgaW5kZXggYXJndW1lbnQiCiN+IG1zZ3N0ciAiYSBmdW5jafNuIGB3b3JkJyB0b21hIHVuIGFyZ3VtZW50byDtbmRpY2UgcG9zaXRpdm8iCgojfiBtc2dpZCAiIChpZ25vcmVkKSIKI34gbXNnc3RyICIgKGlnbm9yYWRvKSIKCiN+IG1zZ2lkICIgbm90IgojfiBtc2dzdHIgIiBub24iCgojfiBtc2dpZCAiIHJlbW90ZSIKI34gbXNnc3RyICIgcmVtb3RvIgoKI34gbXNnaWQgIiB3aXRoIGFyZyAlcyIKI34gbXNnc3RyICIgY28gYXJndW1lbnRvICVzIgoKI34gbXNnaWQgIiVzIGZpbmlzaGVkLiIKI34gbXNnc3RyICIlcyByZW1hdG91LiIKCiN+IG1zZ2lkICIlczogdW5rbm93biBzaWduYWwiCiN+IG1zZ3N0ciAiJXM6IHNpbmFsIGRlc2Nv8WVjaWRvIgoKI34gbXNnaWQgIiVzR05VIE1ha2UgdmVyc2lvbiAlcyIKI34gbXNnc3RyICIlc0dOVSBNYWtlIHZlcnNp824gJXMiCgojfiBtc2dpZCAiMS1taW51dGU6ICVmICAiCiN+IG1zZ3N0ciAiMSBtaW51dG86ICVmICAiCgojfiBtc2dpZCAiMTUtbWludXRlOiAlZiAgIgojfiBtc2dzdHIgIjE1IG1pbnV0b3M6ICVmICAiCgojfiBtc2dpZCAiNS1taW51dGU6ICVmICAiCiN+IG1zZ3N0ciAiNSBtaW51dG9zOiAlZiAgIgoKI34gbXNnaWQgIj8/IGdldG9wdCByZXR1cm5lZCBjaGFyYWN0ZXIgY29kZSAwJW8gPz9cbiIKI34gbXNnc3RyICI/PyBnZXRvcHQgZGV2b2x2ZXUgbyBj82RpZ28gZG8gY2Fy4WN0ZXIgMCVvID8/XG4iCgojfiBtc2dpZCAiQ2hpbGQiCiN+IG1zZ3N0ciAiRmlsbG8iCgojfiBtc2dpZCAiRGVwZW5kZW5jeSBgJXMnIGRvZXMgbm90IGV4aXN0LlxuIgojfiBtc2dzdHIgIkEgZGVwZW5kZW5jaWEgYCVzJyBub24gZXhpc3RlLlxuIgoKI34gbXNnaWQgIkVycm9yICVsZCIKI34gbXNnc3RyICJFcnJvICVsZCIKCiN+IG1zZ2lkICJFcnJvciBnZXR0aW5nIGxvYWQgYXZlcmFnZSIKI34gbXNnc3RyICJFcnJvIGFvIG9idGUtbGEgY2FyZ2EgbWVkaWEiCgojfiBtc2dpZCAiRXJyb3IgbWFsbG9jaW5nIGZvciBGQUJcbiIKI34gbXNnc3RyICJFcnJvIGFvIHJlc2VydmFyIG1lbW9yaWEgcGFyYSBGQUJcbiIKCiN+IG1zZ2lkICJFcnJvciBtYWxsb2NpbmcgZm9yIE5BTVxuIgojfiBtc2dzdHIgIkVycm8gYW8gcmVzZXJ2YXIgbWVtb3JpYSBwYXJhIE5BTVxuIgoKI34gbXNnaWQgIkVycm9yIG1hbGxvY2luZyBmb3IgZGlyZWN0XG4iCiN+IG1zZ3N0ciAiRXJybyBhbyByZXNlcnZhciBtZW1vcmlhIHBhcmEgZGlyZWN0XG4iCgojfiBtc2dpZCAiRXJyb3IgbWFsbG9jaW5nIGZvciBzZWFyY2hzcGVjXG4iCiN+IG1zZ3N0ciAiRXJybyBhbyByZXNlcnZhciBtZW1vcmlhIHBhcmEgc2VhcmNoc3BlY1xuIgoKI34gbXNnaWQgIkV4Y2VwdGlvbkFkZHJlc3MgPSAleFxcclxuIgojfiBtc2dzdHIgIkV4Y2VwdGlvbkFkZHJlc3MgPSAleFxcclxuIgoKI34gbXNnaWQgIkV4Y2VwdGlvbkNvZGUgPSAleFxcclxuIgojfiBtc2dzdHIgIkV4Y2VwdGlvbkNvZGUgPSAlc1xcclxuIgoKI34gbXNnaWQgIkV4Y2VwdGlvbkZsYWdzID0gJXhcXHJcbiIKI34gbXNnc3RyICJFeGNlcHRpb25GbGFncyA9ICV4XFxyXG4iCgojfiBtc2dpZCAiSm9iIGV4cG9ydGVkIHRvICVzIElEICV1XG4iCiN+IG1zZ3N0ciAiVHJhYmFsbG8gZXhwb3J0YWRvIGEgJXMgSUQgJXVcbiIKCiN+IG1zZ2lkICJNeUV4ZWN1dGU6IENhbm5vdCBhbGxvY2F0ZSBzcGFjZSBmb3IgY2FsbGluZyBhIGNvbW1hbmQiCiN+IG1zZ3N0ciAiTXlFeGVjdXRlOiBOb24gc2UgcG9kZSByZXNlcnZhciBlc3BhY2lvIHBhcmEgY2hhbWFyIHVuIGNvbWFuZG8iCgojfiBtc2dpZCAiVHJ5aW5nICVzIGRlcGVuZGVuY3kgYCVzJy5cbiIKI34gbXNnc3RyICJQcm9iYW5kbyBhIGRlcGVuZGVuY2lhICVzIGAlcycuXG4iCgojfiBtc2dpZCAiVW5rbm93biBlcnJvciAxMjM0NTY3ODkwMTIzNDU2Nzg5MCIKI34gbXNnc3RyICJFcnJvIDEyMzQ1Njc4OTAxMjM0NTY3ODkwIGRlc2Nv8WVjaWRvIgoKI34gbXNnaWQgIlVua25vd24lcyBqb2IgJWQiCiN+IG1zZ3N0ciAiVHJhYmFsbG8lcyAlZCBkZXNjb/FlY2lkbyIKCiN+IG1zZ2lkICJVc2VyIgojfiBtc2dzdHIgIlVzdWFyaW8iCgojfiBtc2dpZCAiYXJnIHdpdGggd2hpdGUgc3BhY2Ugb3IgZG91YmxlcXVvdGVzOiAlc1xuIgojfiBtc2dzdHIgImFyZ3VtZW50byBjb24gZXNwYWNpb3MgZW4gYnJhbmNvIG91IGNvbWnxYXMgZG9icmVzOiAlc1xuIgoKI34gbXNnaWQgImRpZ2l0cyBvY2N1ciBpbiB0d28gZGlmZmVyZW50IGFyZ3YtZWxlbWVudHMuXG4iCiN+IG1zZ3N0ciAiYXBhcmVjZW4gZO14aXRvcyBlbiBkb3VzIGVsZW1lbnRvcyBkZSBhcmd2IGRpc3RpbnRvcy5cbiIKCiN+IG1zZ2lkICJlbXB0eSBzdHJpbmcgYXJnOiAlc1xuIgojfiBtc2dzdHIgImFyZ3VtZW50byBkZSBjYWRlYSBiYWxlaXJvOiAlc1xuIgoKI34gbXNnaWQgImVudmlyb25tZW50IG92ZXJyaWRlIgojfiBtc2dzdHIgInN1cGxpLWxvIGFtYmllbnRlIgoKI34gbXNnaWQgImV4ZWN2ZTogIgojfiBtc2dzdHIgImV4ZWN2ZTogIgoKI34gbXNnaWQgImV4ZWN2cDogIgojfiBtc2dzdHIgImV4ZWN2cDogIgoKI34gbXNnaWQgImV4cGFuZF9mdW5jdGlvbjogdW5hYmxlIHRvIGxhdW5jaCBwcm9jZXNzIChlPSVkKVxuIgojfiBtc2dzdHIgImV4cGFuZF9mdW5jdGlvbjogbm9uIHNlIHB1aWRvIGxhbnphLWxvIHByb2Nlc28gKGU9JWQpXG4iCgojfiBtc2dpZCAiZXhwb3J0aW5nOiAiCiN+IG1zZ3N0ciAiZXhwb3J0YW5kbzogIgoKI34gbXNnaWQgImV4cG9ydGluZzogJXMiCiN+IG1zZ3N0ciAiZXhwb3J0YW5kbzogJXMiCgojfiBtc2dpZCAiZXhwb3J0aW5nOiBDb3VsZG4ndCBjcmVhdGUgcmV0dXJuIHNvY2tldC4iCiN+IG1zZ3N0ciAiZXhwb3J0YW5kbzogTm9uIHNlIHB1aWRvIGNyZWEtbG8gc29ja2V0IGRlIHJldG9ybm8uIgoKI34gbXNnaWQgImdldGN3ZDogIgojfiBtc2dzdHIgImdldGN3ZDogIgoKI34gbXNnaWQgImdldHdkOiAlcyIKI34gbXNnc3RyICJnZXR3ZDogJXMiCgojfiBtc2dpZCAiaW1wbGljaXQiCiN+IG1zZ3N0ciAiaW1wbO1jaXRhIgoKI34gbXNnaWQgImludGVybWVkaWF0ZSIKI34gbXNnc3RyICJpbnRlcm1lZGlhIgoKI34gbXNnaWQgImxvc2luZyIKI34gbXNnc3RyICJxdWUgcGVyZGUiCgojfiBtc2dpZCAibmV2ZXIiCiN+IG1zZ3N0ciAibnVuY2EiCgojfiBtc2dpZCAibmV3ZXIiCiN+IG1zZ3N0ciAibeFpcyBub3ZvIgoKI34gbXNnaWQgIm5vbi1vcHRpb24gQVJHVi1lbGVtZW50czogIgojfiBtc2dzdHIgImVsZW1lbnRvcyBBUkdWIHF1ZSBub24gc29uIG9wY2nzbnM6ICIKCiN+IG1zZ2lkICJvbGRlciIKI34gbXNnc3RyICJt4WlzIHZlbGxvIgoKI34gbXNnaWQgIm9wdGlvbiAlY1xuIgojfiBtc2dzdHIgIm9wY2nzbiAlY1xuIgoKI34gbXNnaWQgIm9wdGlvbiAlcyIKI34gbXNnc3RyICJvcGNp824gJXMiCgojfiBtc2dpZCAib3B0aW9uIGFcbiIKI34gbXNnc3RyICJvcGNp824gYVxuIgoKI34gbXNnaWQgIm9wdGlvbiBiXG4iCiN+IG1zZ3N0ciAib3BjafNuIGJcbiIKCiN+IG1zZ2lkICJvcHRpb24gYyB3aXRoIHZhbHVlIGAlcydcbiIKI34gbXNnc3RyICJvcGNp824gYyBjbyB2YWxvciBgJXMnXG4iCgojfiBtc2dpZCAib3B0aW9uIGQgd2l0aCB2YWx1ZSBgJXMnXG4iCiN+IG1zZ3N0ciAib3BjafNuIGQgY28gdmFsb3IgYCVzJ1xuIgoKI34gbXNnaWQgIm9yaWdpbmFsIGFyZzogJXNcbiIKI34gbXNnc3RyICJhcmd1bWVudG8gb3JpeGluYWw6ICVzXG4iCgojfiBtc2dpZCAib3ZlcnJpZGUiCiN+IG1zZ3N0ciAic3VwbGlyIgoKI34gbXNnaWQgInBsYWluIGFyZzogJXNcbiIKI34gbXNnc3RyICJhcmd1bWVudG8gc2ltcGxlOiAlc1xuIgoKI34gbXNnaWQgInByb2Nlc3NfYmVnaW46IENyZWF0ZVByb2Nlc3MoJXMsICVzLCAuLi4pIGZhaWxlZC5cbiIKI34gbXNnc3RyICJwcm9jZXNzX2JlZ2luOiBhIGNoYW1hZGEgYSBDcmVhdGVQcm9jZXNzKCVzLCAlcywgLi4uKSBmYWxsb3UuXG4iCgojfiBtc2dpZCAicHJvY2Vzc19lYXN5OiBEdXBsaWNhdGVIYW5kbGUoRXJyKSBmYWlsZWQgKGU9JWQpXG4iCiN+IG1zZ3N0ciAicHJvY2Vzc19lYXN5OiBhIGNoYW1hZGEgYSBEdXBsaWNhdGVIYW5kbGUoRXJyKSBmYWxsb3UgKGU9JWQpXG4iCgojfiBtc2dpZCAicHJvY2Vzc19lYXN5OiBEdXBsaWNhdGVIYW5kbGUoSW4pIGZhaWxlZCAoZT0lZClcbiIKI34gbXNnc3RyICJwcm9jZXNzX2Vhc3k6IGEgY2hhbWFkYSBhIER1cGxpY2F0ZUhhbmRsZShJbikgZmFsbG91IChlPSVkKVxuIgoKI34gbXNnaWQgInByb2Nlc3NfZWFzeTogRHVwbGljYXRlSGFuZGxlKE91dCkgZmFpbGVkIChlPSVkKVxuIgojfiBtc2dzdHIgInByb2Nlc3NfZWFzeTogYSBjaGFtYWRhIGEgRHVwbGljYXRlSGFuZGxlKE91dCkgZmFsbG91IChlPSVkKVxuIgoKI34gbXNnaWQgInJlYWQiCiN+IG1zZ3N0ciAibGVjdHVyYSIKCiN+IG1zZ2lkICJydWxlIgojfiBtc2dzdHIgInJlZ3JhIgoKI34gbXNnaWQgInRvdWNoICVzIgojfiBtc2dzdHIgInRvY2FyICVzIgoKI34gbXNnaWQgInVuZGVmaW5lZCIKI34gbXNnc3RyICJub24gZGVmaW5pZG8iCgojfiBtc2dpZCAidW5saW5rOiAiCiN+IG1zZ3N0ciAidW5saW5rOiAiCgojfiBtc2dpZCAid2lubmluZyIKI34gbXNnc3RyICJxdWUgZ2HxYSIKCiN+IG1zZ2lkICJ3cml0ZSIKI34gbXNnc3RyICJlc2NyaXR1cmEiCg==