IyBJTkkgR2VuZXJhdG9yIHZlcnNpb24gMS40OyBBbGlnbmVkIHRvIFRTIHZlcnNpb24gNi4xLjIuMC4yNwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU0VDVElPTiAxOiAgIE5vbiBGRU0tZGVwZW5kYW50IHNlY3Rpb24KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgU0VDVElPTiAxLjE6IEdlbmVyYWwgcGFyYW1ldGVycwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tClRYQmlQRkVNQXV0b0RldGVjdCAgPSAwMCAjIExlbmd0aDogMTsgVW5pdDogT3B0aW9ucyAoMDogTWFudWFsIE1vZGUsIDE6IEF1dG9tYXRpYyBtb2RlKTsgRm9ybWF0OiBVbnNpZ25lZDsgU291cmNlOiBDdXN0b21lcjsgQ29tbWVudDogVGhpcyBwYXJhbWV0ZXIgaXMgdXNlZCBieSB0aGUgRlcgdG8gZGVjaWRlIGlmIHRoZSBmcm9udC1lbmQgaXMgZGV0ZXJtaW5lZCBhdXRvbWF0aWNhbGx5IG9yIG1hbnVhbGx5ClRYQmlQRkVNTWFudWZhY3R1cmVyICA9IDAxICMgTGVuZ3RoOiAxOyBVbml0OiBCaXRfT3B0aW9uczsgRm9ybWF0OiBVbnNpZ25lZDsgU291cmNlOiBDdXN0b21lcjsgQ29tbWVudDogQml0MSwwOiB1c2VkIHRvIGRldGVybWluZSB3aGljaCBGRU0gdmVuZG9yIHR5cGUgaXMgdXNlZCBvbiB0aGUgcGxhdGZvcm0gKDA6IFJGTUQsIDE6IFRRUywgMjpTS1csIDM6SFApLCBCaXQzLDI6IHVudXNlZCwgQml0Ny00OkV4dGVybmFsL2ludGVybmFsIGxvYWQgKDQtU0tXIFNCLCA1LVNLVyBIQiwgNi1IUCBTQiwgNy1IUCBIQikKUmVmQ2xrICA9IDAyICMgTGVuZ3RoOiAxOyBVbml0OiBCaXRfT3B0aW9uczsgRm9ybWF0OiBVbnNpZ25lZDsgU291cmNlOiBDdXN0b21lcjsgQ29tbWVudDogQml0IDAsMSwyLTA6MTkuMk1IeiwxOjI2TUh6LDI6MzguNE1IeltEZWZhdWx0XSwzOjUyTUh6LDQ6MzguNE1IeiBYVEFMLDU6MjZNSHogWFRBTCwgQml0IDMtQ0xLX1JFUSB0eXBlLCAwPXdpcmVkLU9SLCAxPXB1c2gtcHVsbCwgQml0IDQtQ0xLX1JFUSBwb2xhcml0eQpTZXR0bGluZ1RpbWUgID0gMDUgIyBMZW5ndGg6IDE7IFVuaXQ6IG1zICgwLTE1KTsgRm9ybWF0OiBVbnNpZ25lZDsgU291cmNlOiBDdXN0b21lcjsgQ29tbWVudDogVGhlIHRpbWUgZnJvbSBhc3NlcnRpbmcgQ0xLX1JFUSAobG93IHRvIGhpZ2gpIHRvIHZhbGlkIEZSRUYgY2xvY2sgb24gdGhlIGRldmljZSBpbnB1dHMKQ2xvY2tWYWxpZE9uV2FrZXVwICA9IDAwICMgTGVuZ3RoOiAxOyBVbml0OiBPcHRpb25zICgwOiBSZWZlcmVuY2UgY2xvY2sgbm90IHZhbGlkLCAxOiBSZWZlcmVuY2UgY2xvY2sgaXMgdmFsaWQgYW5kIHN0YWJsZSk7IEZvcm1hdDogVW5zaWduZWQ7IFNvdXJjZTogQ3VzdG9tZXI7IENvbW1lbnQ6IFRoaXMgcGFyYW1ldGVyIGluZGljYXRlcyB3aGV0aGVyIHRoZSBGUkVGIGNsb2NrIGlzIHZhbGlkIG9uIHdha2V1cApEQzJEQ01vZGUgID0gMDAgIyBMZW5ndGg6IDE7IFVuaXQ6IEJpdF9PcHRpb25zOyBGb3JtYXQ6IFVuc2lnbmVkLCBTb3VyY2U6IEN1c3RvbWVyOyBDb21tZW50OiBCaXQwIC0gREMyREMgbW9kZSAoMDogYnRTUEkgaXMgbm90IHVzZWQ7MTogYnRTUEkgdXNlZCBtdXggREMyREMgdG8gQlRfRlVOQzIpLCBCaXQxLSBMZXZlbCBzaGlmdGVyIHN1cHBvcnQgKDA6IE5vIExTLCAxOiBXaXRoIExTKQpTaW5nbGVfRHVhbF9CYW5kX1NvbHV0aW9uICA9IDAwICMgTGVuZ3RoOiAxOyBVbml0OiBPcHRpb25zICgwOiBTaW5nbGUgYmFuZCwgMTogRHVhbCBiYW5kKTsgRm9ybWF0OiBVbnNpZ25lZDsgU291cmNlOiBDdXN0b21lcjsgQ29tbWVudDogVGhpcyBwYXJhbWV0ZXIgaW5kaWNhdGVzIGlmIHRoZSBzb2x1dGlvbiBpcyBzaW5nbGUgYmFuZCAoMi40R0h6IG9ubHkpIG9yIGR1YWwgYmFuZCAoMi40R0h6ICYgNUdIeikKU2V0dGluZ3MgID0gMDEgIyBMZW5ndGg6IDE7IFVuaXQ6IEJpdF9PcHRpb25zOyBGb3JtYXQ6IFVuc2lnbmVkOyBTb3VyY2U6IEN1c3RvbWVyOyBDb21tZW50OiBCaXQwLU5CSSgwOk9mZiwxOk9uKSxCaXQxLVRlbGVjIGNoMTQoMDpPZmYsMTpPbiksQml0Mi1GRU0wLUxCLEJpdDMtRkVNMC1IQixCaXQ0LUZFTTEtTEIsQml0NS1GRU0xLUhCLVRYIEJpUCBsb2FkKDA6SW50LiwxOkV4dC4pLEJpdDYtTFBEIExCLEJpdDctTFBEIEhCClNSU3RhdGUgPSAwMCAjIExlbmd0aDogMTsgVW5pdDogT3B0aW9ucyAoMDogRGlzYWJsZWQsIDE6IEVuYWJsZWQpOyBGb3JtYXQ6IERlY2ltYWw7IFNvdXJjZTogVEk7IENvbW1lbnQ6IFNtYXJ0IFJlZmxheCAocHJvcHJpZXRhcnkgbWVjaGFuaXNtIG9mIFRJIHRoYXQgaWRlbnRpZnkgdGhlIHNpbGljb24gcHJvY2VzcyBzcGVjaWZpYyBwYXJhbXMpIHN0YXRlClNSRjEgPSAwOSAwNCAxOCAxMCAwOCAwMCBGNyBFRiBFNyBERiAwMCAwMCAwMCAwMCAwRiAzRiAgIyBMZW5ndGg6IDE2OyBVbml0OiBTUkYxIHZhbHVlczsgRm9ybWF0OiBTaWduZWQ7IFNvdXJjZTogVEk7IENvbW1lbnQ6IFRoZSB0YWJsZSBob2xkcyB0aGUgc3BlY2lmaWMgcGFyYW1ldGVycyBmb3IgdXNpbmcgdGhlIFNtYXJ0UmVmbGV4IG1lY2hhbmlzbQpTUkYyID0gMDkgMDQgMTggMTAgMDggMDAgRjcgRUYgRTcgREYgMDAgMDAgMDAgMDAgMDAgMDAgICMgTGVuZ3RoOiAxNjsgVW5pdDogU1JGMiB2YWx1ZXM7IEZvcm1hdDogU2lnbmVkOyBTb3VyY2U6IFRJOyBDb21tZW50OiBUaGUgdGFibGUgaG9sZHMgdGhlIHNwZWNpZmljIHBhcmFtZXRlcnMgZm9yIHVzaW5nIHRoZSBTbWFydFJlZmxleCBtZWNoYW5pc20KU1JGMyA9IDA5IDA0IDE4IDEwIDA4IDAwIEY3IEVGIEU3IERGIDAwIDAwIDAwIDAwIDAwIDAwICAjIExlbmd0aDogMTY7IFVuaXQ6IFNSRjMgdmFsdWVzOyBGb3JtYXQ6IFNpZ25lZDsgU291cmNlOiBUSTsgQ29tbWVudDogVGhlIHRhYmxlIGhvbGRzIHRoZSBzcGVjaWZpYyBwYXJhbWV0ZXJzIGZvciB1c2luZyB0aGUgU21hcnRSZWZsZXggbWVjaGFuaXNtCiNTUl9EZWJ1Z19UYWJsZSA9IDA5IDA0IDE4IDEwIDA4IDAwIEY3IEVGIEU3IERGIDAwIDAwIDAwIDAwIDAwIDAwICAjIExlbmd0aDogMTY7IFVuaXQ6IFNSX0RlYnVnX1RhYmxlIHZhbHVlczsgRm9ybWF0OiBTaWduZWQ7IFNvdXJjZTogVEk7IENvbW1lbnQ6IFNSIERlYnVnIHZhbHVlcyCWIGZvciBUSSBpbnRlcm5hbCB1c2Ugb25seQojU1JfU0VOX05fUCA9IDIyICMgTGVuZ3RoOiAxOyBVbml0OiBTUl9TRU5fTl9QIHZhbHVlczsgRm9ybWF0OiBVbnNpZ25lZDsgU291cmNlOiBUSTsgQ29tbWVudDogU1IgRGVidWcgdmFsdWVzIJYgZm9yIFRJIGludGVybmFsIHVzZSBvbmx5CiNTUl9TRU5fTl9QX0dhaW4gPSBhOSAjIExlbmd0aDogMTsgVW5pdDogU1JfU0VOX05fUF9HQUlOIHZhbHVlczsgRm9ybWF0OiBVbnNpZ25lZDsgU291cmNlOiBUSTsgQ29tbWVudDogU1IgRGVidWcgdmFsdWVzIJYgZm9yIFRJIGludGVybmFsIHVzZSBvbmx5CiNTUl9TRU5fTlJOID0gYzEgIyBMZW5ndGg6IDE7IFVuaXQ6IFNSX1NFTl9OUk4gdmFsdWVzOyBGb3JtYXQ6IFVuc2lnbmVkOyBTb3VyY2U6IFRJIDsgQ29tbWVudDogU1IgRGVidWcgdmFsdWVzIJYgZm9yIFRJIGludGVybmFsIHVzZSBvbmx5CiNTUl9TRU5fUFJOID0gOGQgIyBMZW5ndGg6IDE7IFVuaXQ6IFNSX1NFTl9QUk4gdmFsdWVzOyBGb3JtYXQ6IFVuc2lnbmVkOyBTb3VyY2U6IFRJIDsgQ29tbWVudDogU1IgRGVidWcgdmFsdWVzIJYgZm9yIFRJIGludGVybmFsIHVzZSBvbmx5CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTRUNUSU9OIDEuMjogQmFuZC1kZXBlbmRhbnQgcGFyYW1ldGVycwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTRUNUSU9OIDEuMi4xOiAyLjRHIHBhcmFtZXRlcnMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpSeFRyYWNlSW5zZXJ0aW9uTG9zc18yXzRHID0gMDAgIyBMZW5ndGg6IDE7IFVuaXQ6IDEvOGRCOyBGb3JtYXQ6IFVuc2lnbmVkOyBTb3VyY2U6IEN1c3RvbWVyOyBDb21tZW50OiBUaGlzIHBhcmFtZXRlciBpbmRpY2F0ZXMgdGhlIHByaW50ZWQgY2lyY3VpdCBib2FyZCAoUENCKSB0cmFjZSBpbnNlcnRpb24gbG9zcwpUWFRyYWNlTG9zc18yXzRHID0gMDAgIyBMZW5ndGg6IDE7IFVuaXQ6IDEvOGRCOyBGb3JtYXQ6IFVuc2lnbmVkOyBTb3VyY2U6IEN1c3RvbWVyOyBDb21tZW50OiBUaGlzIHBhcmFtZXRlciBpcyB1c2VkIHRvIGFsaWduIHRoZSBvdXRwdXQgcG93ZXIgdG8gYSBkaWZmZXJlbnQgbG9jYXRpb24gb24gdGhlIGJvYXJkClJ4UnNzaUFuZFByb2Nlc3NDb21wZW5zYXRpb25fMl80RyAgPSBFQyBGNiAwMCAwQyAxOCBGOCBGQyAwMCAwOCAxMCBGMCBGOCAwMCAwQSAxNCAjIExlbmd0aDogMTU7IFVuaXQ6IDEvOGRCOyBGb3JtYXQ6IFNpZ25lZDsgU291cmNlOiBUSTsgQ29tbWVudDogVGhlIFJTU0kgY29ybmVyIHBvaW50cyBhcmUgZGV0ZXJtaW5lZCBkdXJpbmcgUlNTSSB0ZW1wZXJhdHVyZSBhbmQgcHJvY2VzcyBjaGFyYWN0ZXJpemF0aW9uCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTRUNUSU9OIDEuMi4yOiA1RyBwYXJhbWV0ZXJzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFNFQ1RJT04gMjogICAgIEZFTS1kZXBlbmRhbnQgc2VjdGlvbgojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTRUNUSU9OIDIuMTogICBGRU0gcGFyYW1ldGVycwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIFNFQ1RJT04gMi4xLjE6IDIuNEcgcGFyYW1ldGVycwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCkZFTTFfVFhCaVBSZWZlcmVuY2VQRHZvbHRhZ2VfMl80RyA9IDAxNzcgIyBMZW5ndGg6IDE7IFVuaXQ6IDFtVjsgRm9ybWF0OiBVbnNpZ25lZDsgU291cmNlOiBUSTsgQ29tbWVudDogVGhpcyBwYXJhbWV0ZXIgZGVmaW5lIHRoZSByZWZlcmVuY2UgcG9pbnQgb2YgdGhlIEZFTSBwb3dlciBkZXRlY3RvcgpGRU0xX1R4QmlQUmVmZXJlbmNlUG93ZXJfMl80RyAgPSA4MCAjIExlbmd0aDogMTsgVW5pdDogMS84ZEI7IEZvcm1hdDogU2lnbmVkOyBTb3VyY2U6IFRJOyBDb21tZW50OiBSZWZlcmVuY2Ugb3V0cHV0IHBvd2VyIHRoYXQgcHJvZHVjZXMgZ2l2ZW4gcmVmZXJlbmNlIHBvd2VyIGRldGVjdG9yIG91dHB1dCB2b2x0YWdlIC4KRkVNMV9UeEJpUE9mZnNldGRCXzJfNEcgPSAwMCAjIExlbmd0aDogMTsgVW5pdDogMS84ZEI7IEZvcm1hdDogU2lnbmVkOyBTb3VyY2U6IEN1c3RvbWVyOyBDb21tZW50OiBUaGlzIGZpZWxkIGlzIHVzZWQgdG8gZmluZS10dW5lIHRoZSBUWCBCaVAgYnkgdGhlIGN1c3RvbWVyCkZFTTFfVHhQZXJSYXRlUG93ZXJMaW1pdHNfMl80R19Ob3JtYWwgPSAxRCAxRiAyMiAyNiAyNyAyOSAjIExlbmd0aDogNjsgVW5pdDogMS8yZEI7IEZvcm1hdDogU2lnbmVkOyBTb3VyY2U6IEN1c3RvbWVyOyBDb21tZW50OiBUaGUgbGltaXRzIGFyZSBhcHBsaWVkIHRvIHRoZSBwb3dlciBjb250cm9sIHByb2Nlc3MgYWNjb3JkaW5nIHRvIHRoZSBWQkFUIGFuZCB0ZW1wIHJhbmdlIGluIHdoaWNoIHRoZSBGRU0gaXMgb3BlcmF0aW5nCkZFTTFfVHhQZXJSYXRlUG93ZXJMaW1pdHNfMl80R19EZWdyYWRlZCA9IDFBIDFGIDIyIDI1IDI1IDI3ICMgTGVuZ3RoOiA2OyBVbml0OiAxLzJkQjsgRm9ybWF0OiBTaWduZWQ7IFNvdXJjZTogQ3VzdG9tZXI7IENvbW1lbnQ6IFRoZSBsaW1pdHMgYXJlIGFwcGxpZWQgdG8gdGhlIHBvd2VyIGNvbnRyb2wgcHJvY2VzcyBhY2NvcmRpbmcgdG8gdGhlIFZCQVQgYW5kIHRlbXAgcmFuZ2UgaW4gd2hpY2ggdGhlIEZFTSBpcyBvcGVyYXRpbmcKRkVNMV9UeFBlclJhdGVQb3dlckxpbWl0c18yXzRHX0V4dHJlbWUgPSAxNiAxRCAxRSAyMCAyNCAyNSAjIExlbmd0aDogNjsgVW5pdDogMS8yZEI7IEZvcm1hdDogU2lnbmVkOyBTb3VyY2U6IEN1c3RvbWVyOyBDb21tZW50OiBUaGUgbGltaXRzIGFyZSBhcHBsaWVkIHRvIHRoZSBwb3dlciBjb250cm9sIHByb2Nlc3MgYWNjb3JkaW5nIHRvIHRoZSBWQkFUIGFuZCB0ZW1wIHJhbmdlIGluIHdoaWNoIHRoZSBGRU0gaXMgb3BlcmF0aW5nCkZFTTFfRGVncmFkZWRMb3dUb05vcm1hbFRocl8yXzRHID0gMUUgIyBMZW5ndGg6IDE7IFVuaXQ6IDEvMTAgdm9sdHM7IEZvcm1hdDogVW5zaWduZWQ7IFNvdXJjZTogVEk7IENvbW1lbnQ6IFRoZSBsaW1pdHMgYXJlIGFwcGxpZWQgdG8gdGhlIHBvd2VyIGNvbnRyb2wgcHJvY2VzcyBhY2NvcmRpbmcgdG8gdGhlIFZCQVQgYW5kIHRlbXAgcmFuZ2UgaW4gd2hpY2ggdGhlIEZFTSBpcyBvcGVyYXRpbmcKRkVNMV9Ob3JtYWxUb0RlZ3JhZGVkSGlnaFRocl8yXzRHID0gMkQgIyBMZW5ndGg6IDE7IFVuaXQ6IDEvMTAgdm9sdHM7IEZvcm1hdDogVW5zaWduZWQ7IFNvdXJjZTogVEk7IENvbW1lbnQ6IFRoZSBsaW1pdHMgYXJlIGFwcGxpZWQgdG8gdGhlIHBvd2VyIGNvbnRyb2wgcHJvY2VzcyBhY2NvcmRpbmcgdG8gdGhlIFZCQVQgYW5kIHRlbXAgcmFuZ2UgaW4gd2hpY2ggdGhlIEZFTSBpcyBvcGVyYXRpbmcKRkVNMV9UeFBlckNoYW5uZWxQb3dlckxpbWl0c18yXzRHXzExYiA9IDUwIDUwIDUwIDUwIDUwIDUwIDUwIDUwIDUwIDUwIDUwIDUwIDUwIDUwICMgTGVuZ3RoOiAxNDsgVW5pdDogMS8yZEI7IEZvcm1hdDogU2lnbmVkOyBTb3VyY2U6IEN1c3RvbWVyOyBDb21tZW50OiBUaGUgcHVycG9zZSBvZiB0aGlzIHRhYmxlIGlzIHRvIGFsbG93IGNsaXBwaW5nIG9mIHRoZSBtYXhpbXVtIG91dHB1dCBwb3dlciBvbiBjZXJ0YWluIGNoYW5uZWxzCkZFTTFfVHhQZXJDaGFubmVsUG93ZXJMaW1pdHNfMl80R19PRkRNID0gNTAgNTAgNTAgNTAgNTAgNTAgNTAgNTAgNTAgNTAgNTAgNTAgNTAgNTAgIyBMZW5ndGg6IDE0OyBVbml0OiAxLzJkQjsgRm9ybWF0OiBTaWduZWQ7IFNvdXJjZTogQ3VzdG9tZXI7IENvbW1lbnQ6IFRoZSBwdXJwb3NlIG9mIHRoaXMgdGFibGUgaXMgdG8gYWxsb3cgY2xpcHBpbmcgb2YgdGhlIG1heGltdW0gb3V0cHV0IHBvd2VyIG9uIGNlcnRhaW4gY2hhbm5lbHMKRkVNMV9UeFBEVnNSYXRlT2Zmc2V0c18yXzRHID0gMDEgMDIgMDIgMDIgMDIgMDAgIyBMZW5ndGg6IDY7IFVuaXQ6IDEvOGRCOyBGb3JtYXQ6IFNpZ25lZDsgU291cmNlOiBUSTsgQ29tbWVudDogVGhpcyBwYXJhbWV0ZXIgaXMgYSBwb3dlciBkZXRlY3RvciBvZmZzZXQgdmFsdWUgdXNlZCB0byBjb3JyZWN0IHRoZSBwb3dlciBkZXRlY3RvciBjdXJ2ZSBmb3IgZWFjaCByYXRlIGdyb3VwCkZFTTFfVHhJYmlhc1RhYmxlXzJfNEcgID0gMTUgMTUgMTUgMTEgMTUgMTUgIyBMZW5ndGg6IDY7IFVuaXQ6IENvZGV3b3JkIDsgRm9ybWF0OiBVbnNpZ25lZDsgU291cmNlOiBUSTsgQ29tbWVudDogVGhpcyBwYXJhbWV0ZXIgc2V0cyB0aGUgYmlhcyBjdXJyZW50IHByb3ZpZGVkIGJ5IHRoZSBTb0MgdG8gdGhlIFBBIGluIHRoZSBGRU0uIE9wdGlvbnMgKE1DUzcsIDU0LzQ4LCAzNi8yNCwgMTgvMTIsIDkvNiwgMTFiKQpGRU0xX1J4RmVtSW5zZXJ0aW9uTG9zc18yXzRHICA9IDBFICMgTGVuZ3RoOiAxOyBVbml0OiAxLzhkQjsgRm9ybWF0OiBVbnNpZ25lZDsgU291cmNlOiBUSTsgQ29tbWVudDogVGhpcyBwYXJhbWV0ZXIgc3BlY2lmaWVzIHRoZSByZWNlaXZlZCBpbnNlcnRpb24gbG9zcyBvZiB0aGUgV0wxMjd4CiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBTRUNUSU9OIDIuMS4yOiA1RyBwYXJhbWV0ZXJzCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCg==