IyB0cmFuc2xhdGlvbiBvZiBjb3JldXRpbHMtNS4yLjEucG8gdG8gRXVza2FyYQojIEJhc3F1ZSB0cmFuc2xhdGlvbiBvZiA1LjIuMS4KIyBDb3B5cmlnaHQgKEMpIDIwMDQgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCiMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBzYW1lIGxpY2Vuc2UgYXMgdGhlIENvcmV1dGlscy01LjIuMSBwYWNrYWdlLgojIE1pa2VsIE9sYXNhZ2FzdGkgPGhleV9uZWtlbkBtdW5kdXJhdC5uZXQ+LCAyMDA0LgojCm1zZ2lkICIiCm1zZ3N0ciAiIgoiUHJvamVjdC1JZC1WZXJzaW9uOiBjb3JldXRpbHMtNS4yLjFcbiIKIlJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBidWctZ251bGliQGdudS5vcmdcbiIKIlBPVC1DcmVhdGlvbi1EYXRlOiAyMDE5LTEyLTExIDA3OjQzKzAxMDBcbiIKIlBPLVJldmlzaW9uLURhdGU6IDIwMDUtMDEtMDQgMjA6MjcrMDEwMFxuIgoiTGFzdC1UcmFuc2xhdG9yOiBNaWtlbCBPbGFzYWdhc3RpIDxoZXlfbmVrZW5AbXVuZHVyYXQubmV0PlxuIgoiTGFuZ3VhZ2UtVGVhbTogQmFzcXVlIDx0cmFuc2xhdGlvbi10ZWFtLWV1QGxpc3RzLnNvdXJjZWZvcmdlLm5ldD5cbiIKIkxhbmd1YWdlOiBldVxuIgoiTUlNRS1WZXJzaW9uOiAxLjBcbiIKIkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1JU08tODg1OS0xXG4iCiJDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0XG4iCiJYLUJ1Z3M6IFJlcG9ydCB0cmFuc2xhdGlvbiBlcnJvcnMgdG8gdGhlIExhbmd1YWdlLVRlYW0gYWRkcmVzcy5cbiIKIlBsdXJhbC1Gb3JtczogIG5wbHVyYWxzPTI7IHBsdXJhbD0obiAhPSAxKTtcbiIKCiM6IGxpYi9hcmdtYXRjaC5jOjEzMgojLCBjLWZvcm1hdAptc2dpZCAiaW52YWxpZCBhcmd1bWVudCAlcyBmb3IgJXMiCm1zZ3N0ciAiJXMgYmFsaW9nYWJla28gYXJndW1lbnR1YSBkYSAlcy0ocillbnR6YXQiCgojOiBsaWIvYXJnbWF0Y2guYzoxMzMKIywgYy1mb3JtYXQKbXNnaWQgImFtYmlndW91cyBhcmd1bWVudCAlcyBmb3IgJXMiCm1zZ3N0ciAiJXMgYXJndW1lbnR1IGFuYmlndW9hIGRhICVzLShyKWVudHphdCIKCiM6IGxpYi9hcmdtYXRjaC5jOjE1MiBsaWIvYXJnbWF0Y2guaDoyMjMKbXNnaWQgIlZhbGlkIGFyZ3VtZW50cyBhcmU6Igptc2dzdHIgIkJhbGlvemtvIGFyZ3VtZW50dWFrIGhhdWVrIGRpcmE6IgoKIzogbGliL2JpdHNldC9zdGF0cy5jOjE3NwojLCBjLWZvcm1hdAptc2dpZCAiJXUgYml0c2V0X2FsbG9jcywgJXUgZnJlZWQgKCUuMmYlJSkuXG4iCm1zZ3N0ciAiIgoKIzogbGliL2JpdHNldC9zdGF0cy5jOjE4MAojLCBjLWZvcm1hdAptc2dpZCAiJXUgYml0c2V0X3NldHMsICV1IGNhY2hlZCAoJS4yZiUlKVxuIgptc2dzdHIgIiIKCiM6IGxpYi9iaXRzZXQvc3RhdHMuYzoxODMKIywgYy1mb3JtYXQKbXNnaWQgIiV1IGJpdHNldF9yZXNldHMsICV1IGNhY2hlZCAoJS4yZiUlKVxuIgptc2dzdHIgIiIKCiM6IGxpYi9iaXRzZXQvc3RhdHMuYzoxODYKIywgYy1mb3JtYXQKbXNnaWQgIiV1IGJpdHNldF90ZXN0cywgJXUgY2FjaGVkICglLjJmJSUpXG4iCm1zZ3N0ciAiIgoKIzogbGliL2JpdHNldC9zdGF0cy5jOjE5MAojLCBjLWZvcm1hdAptc2dpZCAiJXUgYml0c2V0X2xpc3RzXG4iCm1zZ3N0ciAiIgoKIzogbGliL2JpdHNldC9zdGF0cy5jOjE5Mgptc2dpZCAiY291bnQgbG9nIGhpc3RvZ3JhbVxuIgptc2dzdHIgIiIKCiM6IGxpYi9iaXRzZXQvc3RhdHMuYzoxOTUKbXNnaWQgInNpemUgbG9nIGhpc3RvZ3JhbVxuIgptc2dzdHIgIiIKCiM6IGxpYi9iaXRzZXQvc3RhdHMuYzoxOTgKbXNnaWQgImRlbnNpdHkgaGlzdG9ncmFtXG4iCm1zZ3N0ciAiIgoKIzogbGliL2JpdHNldC9zdGF0cy5jOjIxMAojLCBjLWZvcm1hdAptc2dpZCAiIgoiQml0c2V0IHN0YXRpc3RpY3M6XG4iCiJcbiIKbXNnc3RyICIiCgojOiBsaWIvYml0c2V0L3N0YXRzLmM6MjEzCiMsIGMtZm9ybWF0Cm1zZ2lkICJBY2N1bXVsYXRlZCBydW5zID0gJXVcbiIKbXNnc3RyICIiCgojOiBsaWIvYml0c2V0L3N0YXRzLmM6MjU1IGxpYi9iaXRzZXQvc3RhdHMuYzoyNjAKIywgZnV6enkKbXNnaWQgImNhbm5vdCByZWFkIHN0YXRzIGZpbGUiCm1zZ3N0ciAiZXppbiBkYSAlcyBlc3Rla2Egc29ydHUiCgojOiBsaWIvYml0c2V0L3N0YXRzLmM6MjU3CiMsIGMtZm9ybWF0Cm1zZ2lkICJiYWQgc3RhdHMgZmlsZSBzaXplXG4iCm1zZ3N0ciAiIgoKIzogbGliL2JpdHNldC9zdGF0cy5jOjI4MSBsaWIvYml0c2V0L3N0YXRzLmM6MjgzCiMsIGZ1enp5Cm1zZ2lkICJjYW5ub3Qgd3JpdGUgc3RhdHMgZmlsZSIKbXNnc3RyICJlemluIGRhICVzIGVzdGVrYSBzb3J0dSIKCiM6IGxpYi9iaXRzZXQvc3RhdHMuYzoyODYKIywgZnV6enkKbXNnaWQgImNhbm5vdCBvcGVuIHN0YXRzIGZpbGUgZm9yIHdyaXRpbmciCm1zZ3N0ciAiZXJyZXBpa2F0dSBhcnRlIgoKIzogbGliL2Nsb3Nlb3V0LmM6MTIyCm1zZ2lkICJ3cml0ZSBlcnJvciIKbXNnc3RyICJpZGF6a2V0YSBlcnJvcmVhIgoKIzogbGliL2Vycm9yLmM6MTk1Cm1zZ2lkICJVbmtub3duIHN5c3RlbSBlcnJvciIKbXNnc3RyICJTaXN0ZW1hLWVycm9yZSBlemV6YWd1bmEiCgojOiBsaWIvZ2V0b3B0LmM6Mjc4CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiJXM6IG9wdGlvbiAnJXMlcycgaXMgYW1iaWd1b3VzXG4iCm1zZ3N0ciAiJXM6ICclcycgYXVrZXJhIGFuYmlndW9hIGRhXG4iCgojOiBsaWIvZ2V0b3B0LmM6Mjg0CiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiJXM6IG9wdGlvbiAnJXMlcycgaXMgYW1iaWd1b3VzOyBwb3NzaWJpbGl0aWVzOiIKbXNnc3RyICIlczogJyVzJyBhdWtlcmEgYW5iaWd1b2EgZGFcbiIKCiM6IGxpYi9nZXRvcHQuYzozMTkKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIlczogdW5yZWNvZ25pemVkIG9wdGlvbiAnJXMlcydcbiIKbXNnc3RyICIlczogJyVjJXMnIGF1a2VyYSBlemV6YWd1bmFcbiIKCiM6IGxpYi9nZXRvcHQuYzozNDUKIywgZnV6enksIGMtZm9ybWF0Cm1zZ2lkICIlczogb3B0aW9uICclcyVzJyBkb2Vzbid0IGFsbG93IGFuIGFyZ3VtZW50XG4iCm1zZ3N0ciAiJXM6ICclYyVzJyBhdWtlcmFrIGV6IGR1IGFyZ3VtZW50dXJpayBvbmFydHplblxuIgoKIzogbGliL2dldG9wdC5jOjM2MAojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzOiBvcHRpb24gJyVzJXMnIHJlcXVpcmVzIGFuIGFyZ3VtZW50XG4iCm1zZ3N0ciAiJXM6ICclcycgYXVrZXJhayBhcmd1bWVudHUgYmF0IGJlaGFyIGR1XG4iCgojOiBsaWIvZ2V0b3B0LmM6NjIxCiMsIGZ1enp5LCBjLWZvcm1hdAptc2dpZCAiJXM6IGludmFsaWQgb3B0aW9uIC0tICclYydcbiIKbXNnc3RyICIlczogLS0gJWMgYXVrZXJhIGJhbGlvZ2FiZWFcbiIKCiM6IGxpYi9nZXRvcHQuYzo2MzYgbGliL2dldG9wdC5jOjY4MgojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzOiBvcHRpb24gcmVxdWlyZXMgYW4gYXJndW1lbnQgLS0gJyVjJ1xuIgptc2dzdHIgIiVzOiBhdWtlcmFrIC0tJWMgYXJndW1lbnR1IGJhdCBiZWhhciBkdVxuIgoKIzogbGliL29ic3RhY2suYzozMzggbGliL29ic3RhY2suYzozNDAgbGliL3hhbGxvYy1kaWUuYzozNAptc2dpZCAibWVtb3J5IGV4aGF1c3RlZCIKbXNnc3RyICJtZW1vcmlhIGFnb3J0dXRhIgoKIy4gVFJBTlNMQVRPUlM6CiMuIEdldCB0cmFuc2xhdGlvbnMgZm9yIG9wZW4gYW5kIGNsb3NpbmcgcXVvdGF0aW9uIG1hcmtzLgojLiBUaGUgbWVzc2FnZSBjYXRhbG9nIHNob3VsZCB0cmFuc2xhdGUgImAiIHRvIGEgbGVmdAojLiBxdW90YXRpb24gbWFyayBzdWl0YWJsZSBmb3IgdGhlIGxvY2FsZSwgYW5kIHNpbWlsYXJseSBmb3IKIy4gIiciLiAgRm9yIGV4YW1wbGUsIGEgRnJlbmNoIFVuaWNvZGUgbG9jYWwgc2hvdWxkIHRyYW5zbGF0ZQojLiB0aGVzZSB0byBVKzAwQUIgKExFRlQtUE9JTlRJTkcgRE9VQkxFIEFOR0xFCiMuIFFVT1RBVElPTiBNQVJLKSwgYW5kIFUrMDBCQiAoUklHSFQtUE9JTlRJTkcgRE9VQkxFIEFOR0xFCiMuIFFVT1RBVElPTiBNQVJLKSwgcmVzcGVjdGl2ZWx5LgojLgojLiBJZiB0aGUgY2F0YWxvZyBoYXMgbm8gdHJhbnNsYXRpb24sIHdlIHdpbGwgdHJ5IHRvCiMuIHVzZSBVbmljb2RlIFUrMjAxOCAoTEVGVCBTSU5HTEUgUVVPVEFUSU9OIE1BUkspIGFuZAojLiBVbmljb2RlIFUrMjAxOSAoUklHSFQgU0lOR0xFIFFVT1RBVElPTiBNQVJLKS4gIElmIHRoZQojLiBjdXJyZW50IGxvY2FsZSBpcyBub3QgVW5pY29kZSwgbG9jYWxlX3F1b3Rpbmdfc3R5bGUKIy4gd2lsbCBxdW90ZSAnbGlrZSB0aGlzJywgYW5kIGNsb2NhbGVfcXVvdGluZ19zdHlsZSB3aWxsCiMuIHF1b3RlICJsaWtlIHRoaXMiLiAgWW91IHNob3VsZCBhbHdheXMgaW5jbHVkZSB0cmFuc2xhdGlvbnMKIy4gZm9yICJgIiBhbmQgIiciIGV2ZW4gaWYgVSsyMDE4IGFuZCBVKzIwMTkgYXJlIGFwcHJvcHJpYXRlCiMuIGZvciB5b3VyIGxvY2FsZS4KIy4KIy4gSWYgeW91IGRvbid0IGtub3cgd2hhdCB0byBwdXQgaGVyZSwgcGxlYXNlIHNlZQojLiA8aHR0cHM6Ly9lbi53aWtpcGVkaWEub3JnL3dpa2kvUXVvdGF0aW9uX21hcmtzX2luX290aGVyX2xhbmd1YWdlcz4KIy4gYW5kIHVzZSBnbHlwaHMgc3VpdGFibGUgZm9yIHlvdXIgbGFuZ3VhZ2UuCiM6IGxpYi9xdW90ZWFyZy5jOjM2Mgptc2dpZCAiYCIKbXNnc3RyICJgIgoKIzogbGliL3F1b3RlYXJnLmM6MzYzCm1zZ2lkICInIgptc2dzdHIgIiciCgojOiBsaWIvc3Bhd24tcGlwZS5jOjE0MSBsaWIvc3Bhd24tcGlwZS5jOjE0NCBsaWIvc3Bhd24tcGlwZS5jOjI2NQojOiBsaWIvc3Bhd24tcGlwZS5jOjI2OAojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgImNhbm5vdCBjcmVhdGUgcGlwZSIKbXNnc3RyICJlemluIGRhICVzIGVzdGVrYSBzb3J0dSIKCiM6IGxpYi9zcGF3bi1waXBlLmM6MjM1IGxpYi9zcGF3bi1waXBlLmM6MzQ5IGxpYi93YWl0LXByb2Nlc3MuYzoyOTAKIzogbGliL3dhaXQtcHJvY2Vzcy5jOjM2NAojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzIHN1YnByb2Nlc3MgZmFpbGVkIgptc2dzdHIgImJhbGlvZ2FiZWEiCgojOiBsaWIvdGltZXZhci5jOjMxNgptc2dpZCAiRXhlY3V0aW9uIHRpbWVzIChzZWNvbmRzKSIKbXNnc3RyICIiCgojOiBsaWIvdGltZXZhci5jOjMxOAptc2dpZCAiQ1BVIHVzZXIiCm1zZ3N0ciAiIgoKIzogbGliL3RpbWV2YXIuYzozMTgKbXNnaWQgIkNQVSBzeXN0ZW0iCm1zZ3N0ciAiIgoKIzogbGliL3RpbWV2YXIuYzozMTgKbXNnaWQgIndhbGwgY2xvY2siCm1zZ3N0ciAiIgoKIzogbGliL3czMnNwYXduLmg6NDkKIywgYy1mb3JtYXQKbXNnaWQgIl9vcGVuX29zZmhhbmRsZSBmYWlsZWQiCm1zZ3N0ciAiIgoKIzogbGliL3czMnNwYXduLmg6OTAKIywgYy1mb3JtYXQKbXNnaWQgImNhbm5vdCByZXN0b3JlIGZkICVkOiBkdXAyIGZhaWxlZCIKbXNnc3RyICIiCgojOiBsaWIvd2FpdC1wcm9jZXNzLmM6MjMxIGxpYi93YWl0LXByb2Nlc3MuYzoyNjMgbGliL3dhaXQtcHJvY2Vzcy5jOjMyNQojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzIHN1YnByb2Nlc3MiCm1zZ3N0ciAiYmFsaW9nYWJlYSIKCiM6IGxpYi93YWl0LXByb2Nlc3MuYzoyODIgbGliL3dhaXQtcHJvY2Vzcy5jOjM1NAojLCBmdXp6eSwgYy1mb3JtYXQKbXNnaWQgIiVzIHN1YnByb2Nlc3MgZ290IGZhdGFsIHNpZ25hbCAlZCIKbXNnc3RyICJiYWxpb2dhYmVhIgoKI34gbXNnaWQgIldyaXR0ZW4gYnkgJXMuXG4iCiN+IG1zZ3N0ciAiJXMtayBpZGF0emlhLlxuIgoKI34gbXNnaWQgIldyaXR0ZW4gYnkgJXMgYW5kICVzLlxuIgojfiBtc2dzdHIgIiVzLWsgZXRhICVzLWsgaWRhdHppYS5cbiIKCiN+IG1zZ2lkICJXcml0dGVuIGJ5ICVzLCAlcywgYW5kICVzLlxuIgojfiBtc2dzdHIgIiVzLCAlcyBldGEgJXMtayBpZGF0emlhLlxuIgoKI34gbXNnaWQgIiIKI34gIldyaXR0ZW4gYnkgJXMsICVzLCAlcyxcbiIKI34gImFuZCAlcy5cbiIKI34gbXNnc3RyICIiCiN+ICIlcywgJXMsICVzLFxuIgojfiAiZXRhICVzLWsgaWRhdHppYS5cbiIKCiN+IG1zZ2lkICIiCiN+ICJXcml0dGVuIGJ5ICVzLCAlcywgJXMsXG4iCiN+ICIlcywgYW5kICVzLlxuIgojfiBtc2dzdHIgIiIKI34gIiVzLCAlcywgJXMsXG4iCiN+ICIlcyBldGEgJXMtayBpZGF0emlhLlxuIgoKI34gbXNnaWQgIiIKI34gIldyaXR0ZW4gYnkgJXMsICVzLCAlcyxcbiIKI34gIiVzLCAlcywgYW5kICVzLlxuIgojfiBtc2dzdHIgIiIKI34gIiVzLCAlcywgJXMsXG4iCiN+ICIlcywgJXMgZXRhICVzLWsgaWRhdHppYS5cbiIKCiN+IG1zZ2lkICIiCiN+ICJXcml0dGVuIGJ5ICVzLCAlcywgJXMsXG4iCiN+ICIlcywgJXMsICVzLCBhbmQgJXMuXG4iCiN+IG1zZ3N0ciAiIgojfiAiJXMsICVzLCAlcyxcbiIKI34gIiVzLCAlcywgJXMsIGV0YSAlcy1rIGlkYXR6aWEuXG4iCgojfiBtc2dpZCAiIgojfiAiV3JpdHRlbiBieSAlcywgJXMsICVzLFxuIgojfiAiJXMsICVzLCAlcywgJXMsXG4iCiN+ICJhbmQgJXMuXG4iCiN+IG1zZ3N0ciAiIgojfiAiJXMsICVzLCAlcyxcbiIKI34gIiVzLCAlcywgJXMsICVzLFxuIgojfiAiZXRhICVzLWsgaWRhdHppYS5cbiIKCiN+IG1zZ2lkICIiCiN+ICJXcml0dGVuIGJ5ICVzLCAlcywgJXMsXG4iCiN+ICIlcywgJXMsICVzLCAlcyxcbiIKI34gIiVzLCBhbmQgJXMuXG4iCiN+IG1zZ3N0ciAiIgojfiAiJXMsICVzLCAlcyxcbiIKI34gIiVzLCAlcywgJXMsICVzLCVzLCBldGEgJXMtayBpZGF0emlhLlxuIgoKI34gbXNnaWQgIiIKI34gIldyaXR0ZW4gYnkgJXMsICVzLCAlcyxcbiIKI34gIiVzLCAlcywgJXMsICVzLFxuIgojfiAiJXMsICVzLCBhbmQgb3RoZXJzLlxuIgojfiBtc2dzdHIgIiIKI34gIiVzLCAlcywgJXMsXG4iCiN+ICIlcywgJXMsICVzLCAlcyxcbiIKI34gIiVzLCAlcyy3ZXRhIGJlc3RlIGJhdHp1ayBpZGF0emlhLlxuIgoKIywgZnV6enkKI34gbXNnaWQgIlJlcG9ydCBidWdzIHRvOiAlc1xuIgojfiBtc2dzdHIgIiIKI34gIlxuIgojfiAiUHJvZ3JhbWEtZXJyb3JlZW4gYmVycmkgZW1hdGVrbyBpZGF0emkgaG9uYTogPCVzPi5cbiIKCiMsIGZ1enp5CiN+IG1zZ2lkICJSZXBvcnQgJXMgYnVncyB0bzogJXNcbiIKI34gbXNnc3RyICIiCiN+ICJcbiIKI34gIlByb2dyYW1hLWVycm9yZWVuIGJlcnJpIGVtYXRla28gaWRhdHppIGhvbmE6IDwlcz4uXG4iCgojLCBmdXp6eQojfiBtc2dpZCAiIgojfiAiTWFuZGF0b3J5IG9yIG9wdGlvbmFsIGFyZ3VtZW50cyB0byBsb25nIG9wdGlvbnMgYXJlIGFsc28gbWFuZGF0b3J5IG9yICIKI34gIm9wdGlvbmFsIGZvciBhbnkgY29ycmVzcG9uZGluZyBzaG9ydCBvcHRpb25zLiIKI34gbXNnc3RyICIiCiN+ICJCZWhhcnJlemtvYWsgZGlyZW4gYXJndW1lbnR1YWsgYXVrZXJhIGx1emVldGFuLCBiZWhhcnJlemtvYWsgZGlyYSBhdWtlcmEgIgojfiAidHhpa2lldGFuIGVyZS5cbiIKCiMsIGZ1enp5CiN+IG1zZ2lkICIgW09QVElPTi4uLl0iCiN+IG1zZ3N0ciAiRXJhYmlsZXJhOiAlcyBbQVVLRVJBXS4uLlxuIgoKIywgZnV6enkKI34gbXNnaWQgIlRyeSBgJXMgLS1oZWxwJyBvciBgJXMgLS11c2FnZScgZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4iCiN+IG1zZ3N0ciAiU2FpYXR1IGAlcyAtLWhlbHAnIGVyYWJpbHR6ZW4gaW5mb3JtYXppbyBnZWhpYWdvcmFrby5cbiIKCiN+IG1zZ2lkICJOQU1FIgojfiBtc2dzdHIgIklaRU5BIgoKIywgZnV6enkKI34gbXNnaWQgIiVzOiBUb28gbWFueSBhcmd1bWVudHNcbiIKI34gbXNnc3RyICJlIgoKIywgZnV6enkKI34gbXNnaWQgInByb2dyYW0gZXJyb3IiCiN+IG1zZ3N0ciAiaXJha3Vya2V0YSBlcnJvcmVhIgoKIywgZnV6enkKI34gbXNnaWQgImVycm9yIHdoaWxlIG9wZW5pbmcgXCIlc1wiIGZvciByZWFkaW5nIgojfiBtc2dzdHIgImVycmVwaWthdHUgYXJ0ZSIKCiMsIGZ1enp5CiN+IG1zZ2lkICJlcnJvciByZWFkaW5nIFwiJXNcIiIKI34gbXNnc3RyICJlcnJvcmVhICVzIGlyYWt1cnR6ZW4iCgojLCBmdXp6eQojfiBtc2dpZCAiZXJyb3Igd3JpdGluZyBcIiVzXCIiCiN+IG1zZ3N0ciAiZXJyb3JlYSAlcyBpZGF6dGVuIgoKIywgZnV6enkKI34gbXNnaWQgImVycm9yIGFmdGVyIHJlYWRpbmcgXCIlc1wiIgojfiBtc2dzdHIgImVycm9yZWEgJXMgaXJha3VydHplbiIKCiMsIGZ1enp5CiN+IG1zZ2lkICJmZG9wZW4oKSBmYWlsZWQiCiN+IG1zZ3N0ciAiaXJla2l0emVhayBodXRzIGVnaW4gZHUiCgojfiBtc2dpZCAicmVndWxhciBlbXB0eSBmaWxlIgojfiBtc2dzdHIgImZpdHhhdGVnaSBlcnJlZ3VsYXIgaHV0c2EiCgojfiBtc2dpZCAicmVndWxhciBmaWxlIgojfiBtc2dzdHIgIkVzcHJlc2lvIGVycmVndWxhcnJhIgoKI34gbXNnaWQgImRpcmVjdG9yeSIKI34gbXNnc3RyICJkaXJla3RvcmlvYSIKCiMsIGZ1enp5CiN+IG1zZ2lkICJibG9jayBzcGVjaWFsIGZpbGUiCiN+IG1zZ3N0ciAiYmxva2UgdGFtYWludWEiCgojLCBmdXp6eQojfiBtc2dpZCAiY2hhcmFjdGVyIHNwZWNpYWwgZmlsZSIKI34gbXNnc3RyICJvZmZzZXQga2FyYWt0ZXJlYSB6ZXJvIGRhIgoKI34gbXNnaWQgImZpZm8iCiN+IG1zZ3N0ciAiZmlmbyIKCiN+IG1zZ2lkICJzeW1ib2xpYyBsaW5rIgojfiBtc2dzdHIgImVzdGVrYSBzaW5ib2xpa29hIgoKI34gbXNnaWQgInNvY2tldCIKI34gbXNnc3RyICJzb2NrZXQtYSIKCiN+IG1zZ2lkICJtZXNzYWdlIHF1ZXVlIgojfiBtc2dzdHIgIkJpZGFsaSBpbGFyYSIKCiN+IG1zZ2lkICJzZW1hcGhvcmUiCiN+IG1zZ3N0ciAic2VtYWZvcm9hIgoKI34gbXNnaWQgInNoYXJlZCBtZW1vcnkgb2JqZWN0IgojfiBtc2dzdHIgIm1lbW9yaWEgcGFydGVrYXR1YXJlbiBvYmpla3R1YSIKCiMsIGZ1enp5CiN+IG1zZ2lkICJ0eXBlZCBtZW1vcnkgb2JqZWN0IgojfiBtc2dzdHIgIm1lbW9yaWEgcGFydGVrYXR1YXJlbiBvYmpla3R1YSIKCiN+IG1zZ2lkICJ3ZWlyZCBmaWxlIgojfiBtc2dzdHIgImZpdHhhdGVnaSBhcnJhcm9hIgoKIywgZnV6enkKI34gbXNnaWQgIkFkZHJlc3MgZmFtaWx5IGZvciBob3N0bmFtZSBub3Qgc3VwcG9ydGVkIgojfiBtc2dzdHIgImZpZm8gZml0eGF0ZWdpZWsgZXogZHV0ZSBldXNrYXJyaXJpayIKCiMsIGZ1enp5CiN+IG1zZ2lkICJhaV9mYW1pbHkgbm90IHN1cHBvcnRlZCIKI34gbXNnc3RyICJmaWZvIGZpdHhhdGVnaWVrIGV6IGR1dGUgZXVza2FycmlyaWsiCgojLCBmdXp6eQojfiBtc2dpZCAiYWlfc29ja3R5cGUgbm90IHN1cHBvcnRlZCIKI34gbXNnc3RyICJmaWZvIGZpdHhhdGVnaWVrIGV6IGR1dGUgZXVza2FycmlyaWsiCgojLCBmdXp6eQojfiBtc2dpZCAiU3lzdGVtIGVycm9yIgojfiBtc2dzdHIgImlkYXprZXRhIGVycm9yZWEiCgojLCBmdXp6eQojfiBtc2dpZCAiVW5rbm93biBlcnJvciIKI34gbXNnc3RyICJTaXN0ZW1hLWVycm9yZSBlemV6YWd1bmEiCgojfiBtc2dpZCAiJXM6IG9wdGlvbiBgLS0lcycgZG9lc24ndCBhbGxvdyBhbiBhcmd1bWVudFxuIgojfiBtc2dzdHIgIiVzOiAnLS0lcycgYXVrZXJhayBleiBkdSBhcmd1bWVudHVyaWsgb25hcnR6ZW5cbiIKCiN+IG1zZ2lkICIlczogdW5yZWNvZ25pemVkIG9wdGlvbiBgLS0lcydcbiIKI34gbXNnc3RyICIlczogJy0tJXMnIGF1a2VyYSBlemV6YWd1bmFcbiIKCiN+IG1zZ2lkICIlczogaWxsZWdhbCBvcHRpb24gLS0gJWNcbiIKI34gbXNnc3RyICIlczogLS0gJWMgYXVrZXJhIGlsZWdhbGFcbiIKCiN+IG1zZ2lkICIlczogb3B0aW9uIGAtVyAlcycgaXMgYW1iaWd1b3VzXG4iCiN+IG1zZ3N0ciAiJXM6ICctVyAlcycgYXVrZXJhIGFuYmlndW9hIGRhXG4iCgojfiBtc2dpZCAiJXM6IG9wdGlvbiBgLVcgJXMnIGRvZXNuJ3QgYWxsb3cgYW4gYXJndW1lbnRcbiIKI34gbXNnc3RyICIlczogJy1XLiVzJyBhdWtlcmFrIGV6IGR1IGFyZ3VtZW50dXJpayBvbmFydHplblxuIgoKI34gbXNnaWQgImJsb2NrIHNpemUiCiN+IG1zZ3N0ciAiYmxva2UgdGFtYWludWEiCgojfiBtc2dpZCAiJXMgZXhpc3RzIGJ1dCBpcyBub3QgYSBkaXJlY3RvcnkiCiN+IG1zZ3N0ciAiJXMgYmFkYWdvIGJhaW5hIGV6IGRhIGRpcmVrdG9yaW8gYmF0IgoKI34gbXNnaWQgImNhbm5vdCBjaGFuZ2Ugb3duZXIgYW5kL29yIGdyb3VwIG9mICVzIgojfiBtc2dzdHIgImV6aW4gZGEgJXMtKHIpZW4gamFiZXR6YSBldGEvZWRvIHRhbGRlYSBhbGRhdHUiCgojfiBtc2dpZCAiY2Fubm90IGNyZWF0ZSBkaXJlY3RvcnkgJXMiCiN+IG1zZ3N0ciAiZXppbiBkYSAlcyBkaXJla3RvcmlvYSBzb3J0dSIKCiMsIGZ1enp5CiN+IG1zZ2lkICJjYW5ub3QgY2hkaXIgdG8gZGlyZWN0b3J5ICVzIgojfiBtc2dzdHIgImV6aW4gZGEgJXMgZGlyZWt0b3Jpb3JhIGFsZGF0dSIKCiN+IG1zZ2lkICJjYW5ub3QgY2hhbmdlIHBlcm1pc3Npb25zIG9mICVzIgojfiBtc2dzdHIgImV6aW4gZGEgJXMtKHIpZW4gYmFpbWVuYWsgYWxkYXR1IgoKIywgZnV6enkKI34gbXNnaWQgInVuYWJsZSB0byByZWNvcmQgY3VycmVudCB3b3JraW5nIGRpcmVjdG9yeSIKI34gbXNnc3RyICJJbnByaW1hdHUgRml0eGF0ZWdpLWl6ZW5hIC0gZSBlIgoKIywgZnV6enkKI34gbXNnaWQgIkZhaWxlZCB0byBvcGVuIC9kZXYvemVybyBmb3IgcmVhZCIKI34gbXNnc3RyICJiYWltZW5hayBlcnJlcGlrYXR1IGFydGUiCgojLCBmdXp6eQojfiBtc2dpZCAiSW52YWxpZCByZWd1bGFyIGV4cHJlc3Npb24iCiN+IG1zZ3N0ciAiYmFsaW9nYWJlYSIKCiMsIGZ1enp5CiN+IG1zZ2lkICJJbnZhbGlkIGNoYXJhY3RlciBjbGFzcyBuYW1lIgojfiBtc2dzdHIgImJhbGlvZ2FiZWEiCgojLCBmdXp6eQojfiBtc2dpZCAiTWVtb3J5IGV4aGF1c3RlZCIKI34gbXNnc3RyICJtZW1vcmlhIGFnb3J0dXRhIgoKIywgZnV6enkKI34gbXNnaWQgIkludmFsaWQgcHJlY2VkaW5nIHJlZ3VsYXIgZXhwcmVzc2lvbiIKI34gbXNnc3RyICJiYWxpb2dhYmVhIgoKIywgZnV6enkKI34gbXNnaWQgIlByZW1hdHVyZSBlbmQgb2YgcmVndWxhciBleHByZXNzaW9uIgojfiBtc2dzdHIgImluIGJpbGF0dSIKCiMsIGZ1enp5CiN+IG1zZ2lkICJSZWd1bGFyIGV4cHJlc3Npb24gdG9vIGJpZyIKI34gbXNnc3RyICJiYWxpb2dhYmVhIgoKIywgZnV6enkKI34gbXNnaWQgIk5vIHByZXZpb3VzIHJlZ3VsYXIgZXhwcmVzc2lvbiIKI34gbXNnc3RyICJpbiBiaWxhdHUiCgojfiBtc2dpZCAiXlt5WV0iCiN+IG1zZ3N0ciAiXltiQl0iCgojfiBtc2dpZCAiXltuTl0iCiN+IG1zZ3N0ciAiXltlRV0iCgojfiBtc2dpZCAiY2hhcmFjdGVyIG91dCBvZiByYW5nZSIKI34gbXNnc3RyICJrYXJha3RlcmVhIGJhcnJ1dGl0aWsga2FucG9yYSIKCiN+IG1zZ2lkICJpbnZhbGlkIHVzZXIiCiN+IG1zZ3N0ciAiYmFsaW9nYWJla28gZXJhYmlsdHphaWxlYSIKCiN+IG1zZ2lkICJpbnZhbGlkIGdyb3VwIgojfiBtc2dzdHIgImJhbGlvZ2FiZWtvIHRhbGRlYSIKCiN+IG1zZ2lkICJjYW5ub3QgZ2V0IHRoZSBsb2dpbiBncm91cCBvZiBhIG51bWVyaWMgVUlEIgojfiBtc2dzdHIgImV6aW4gZGEgVUlEIHplbmJha2kgYmF0ZW4gc2FpbyB0YWxkZWEgbG9ydHUiCgojLCBmdXp6eQojfiBtc2dpZCAiIgojfiAiXG4iCiN+ICJUaGlzIGlzIGZyZWUgc29mdHdhcmUuICBZb3UgbWF5IHJlZGlzdHJpYnV0ZSBjb3BpZXMgb2YgaXQgdW5kZXIgdGhlIHRlcm1zICIKI34gIm9mXG4iCiN+ICJ0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9ncGwuaHRtbD4uXG4iCiN+ICJUaGVyZSBpcyBOTyBXQVJSQU5UWSwgdG8gdGhlIGV4dGVudCBwZXJtaXR0ZWQgYnkgbGF3LlxuIgojfiAiXG4iCiN+IG1zZ3N0ciAiIgojfiAicHJvZ3JhbWEgZGEgZXRhIGVkbyAtIE9yb2tvcnJhIFB1Ymxpa29hIExpemVudHppYSBiaWRlciBMaWJyZSBTb2Z0d2FyZWEgIgojfiAiZWRvIGUgZSIKCiN+IG1zZ2lkICJzdHJpbmcgY29tcGFyaXNvbiBmYWlsZWQiCiN+IG1zZ3N0ciAia2F0ZSBrb25wYXJha2V0YWsgaHV0cyBlZ2luIGR1IgoKI34gbXNnaWQgIlNldCBMQ19BTEw9J0MnIHRvIHdvcmsgYXJvdW5kIHRoZSBwcm9ibGVtLiIKI34gbXNnc3RyICJFemFycmkgTENfQUxMPSdDJyBhcmF6byBoYXUgdW5lIGJhdGV6IGtvbnBvbnR6ZWtvIgoKI34gbXNnaWQgIlRoZSBzdHJpbmdzIGNvbXBhcmVkIHdlcmUgJXMgYW5kICVzLiIKI34gbXNnc3RyICJBbGRlcmF0dXRha28gYmkga2F0ZWFrICVzIGV0YSAlcyBpemFuIGRpcmEuIgo=