Q29udGVudC1sYW5ndWFnZTogY3MKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMgpCb2R5Oi0tLS0tLS0tLS1jcy0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9ImNzIgotLT48IS0tI3NldCB2YXI9IkNIQVJBQ1RFUl9FTkNPRElORyIgdmFsdWU9IklTTy04ODU5LTIiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSJDaHlibuEgYnLhbmEhIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgUHJveHkgc2VydmVyIG9iZHK+ZWwgb2QgbmFk+GF6ZW7paG8KICAgIHNlcnZlcnUgY2h5Ym5vdSBvZHBvduzvLgoKICA8IS0tI2lmIGV4cHI9IiRSRURJUkVDVF9FUlJPUl9OT1RFUyIgLS0+CiAgICA8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9zcGFjZXIuaHRtbCIgLS0+CiAgICA8IS0tI2VjaG8gZW5jb2Rpbmc9Im5vbmUiIHZhcj0iUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogIDwhLS0jZW5kaWYgLS0+CiAgICAKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tY3MtLQoKQ29udGVudC1sYW5ndWFnZTogZGUKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQpCb2R5Oi0tLS0tLS0tLS1kZS0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9ImRlIgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iRmVobGVyaGFmdGVzIEdhdGV3YXkhIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCItLT4KCiAgICBEZXIgUHJveHktU2VydmVyIGVyaGllbHQgZWluZSBmZWhsZXJoYWZ0ZSBBbnR3b3J0CiAgICBlaW5lcyAmdXVtbDtiZXJnZW9yZG5ldGVuIFNlcnZlcnMgb2RlciBQcm94aWVzLiAKCiAgPCEtLSNpZiBleHByPSIkUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogICAgPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvc3BhY2VyLmh0bWwiIC0tPgogICAgPCEtLSNlY2hvIGVuY29kaW5nPSJub25lIiB2YXI9IlJFRElSRUNUX0VSUk9SX05PVEVTIiAtLT4KICA8IS0tI2VuZGlmIC0tPgogICAgIAo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1kZS0tCgpDb250ZW50LWxhbmd1YWdlOiBlbgpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xCkJvZHk6LS0tLS0tLS0tLWVuLS0KPCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9IkJhZCBHYXRld2F5ISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIFRoZSBwcm94eSBzZXJ2ZXIgcmVjZWl2ZWQgYW4gaW52YWxpZAogICAgcmVzcG9uc2UgZnJvbSBhbiB1cHN0cmVhbSBzZXJ2ZXIuCgogIDwhLS0jaWYgZXhwcj0iJFJFRElSRUNUX0VSUk9SX05PVEVTIiAtLT4KICAgIDwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3NwYWNlci5odG1sIiAtLT4KICAgIDwhLS0jZWNobyBlbmNvZGluZz0ibm9uZSIgdmFyPSJSRURJUkVDVF9FUlJPUl9OT1RFUyIgLS0+CiAgPCEtLSNlbmRpZiAtLT4KICAgIAo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1lbi0tCgpDb250ZW50LWxhbmd1YWdlOiBlcwpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xCkJvZHk6LS0tLS0tLS0tLWVzLS0KPCEtLSNzZXQgdmFyPSJDT05URU5UX0xBTkdVQUdFIiB2YWx1ZT0iZXMiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSImaWV4Y2w7UHVlcnRhIGRlIGVubGFjZSBlcnImb2FjdXRlO25lYSEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCglFbCBzZXJ2aWRvciBvcmlnZW4gcmVjaWJpJm9hY3V0ZTsgaW5mb3JtYWNpJm9hY3V0ZTtuIAoJaW52JmFhY3V0ZTtsaWRhIHBvciBwYXJ0ZSBkZWwgc2Vydmlkb3IgZGVzdGluby4KCiAgPCEtLSNpZiBleHByPSIkUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogICAgPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvc3BhY2VyLmh0bWwiIC0tPgogICAgPCEtLSNlY2hvIGVuY29kaW5nPSJub25lIiB2YXI9IlJFRElSRUNUX0VSUk9SX05PVEVTIiAtLT4KICA8IS0tI2VuZGlmIC0tPgogICAgCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWVzLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IGZyCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0tZnItLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJmciIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9IkdhdGV3YXkgaW5jb3JyZWN0ZSEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICBMZSBzZXJ2ZXVyIHByb3h5IGEgcmUmY2NlZGlsO3UgdW5lIHImZWFjdXRlO3BvbnNlCiAgICBpbmNvcnJlY3RlIGRlIGxhIHBhcnQgZCd1biBzZXJ2ZXVyIHN1cCZlYWN1dGU7cmlldXIuIAoKICA8IS0tI2lmIGV4cHI9IiRSRURJUkVDVF9FUlJPUl9OT1RFUyIgLS0+CiAgICA8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9zcGFjZXIuaHRtbCIgLS0+CiAgICA8IS0tI2VjaG8gZW5jb2Rpbmc9Im5vbmUiIHZhcj0iUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogIDwhLS0jZW5kaWYgLS0+Cgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+ICAgCi0tLS0tLS0tLS1mci0tCgpDb250ZW50LWxhbmd1YWdlOiBnYQpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xCkJvZHk6LS0tLS0tLS0tLWdhLS0KPCEtLSNzZXQgdmFyPSJDT05URU5UX0xBTkdVQUdFIiB2YWx1ZT0iZ2EiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSJHZWF0YSBtJmlhY3V0ZTtjZWFydCEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICBGdWFpciBhbiBzZWFjaGZocmVhc3RhbGEmaWFjdXRlOyBmcmVhZ2FpcnQgbmVhbWhiaGFpbCZpYWN1dGU7CiAgICAmb2FjdXRlOyBmcmVhc3RhbGEmaWFjdXRlOyB0aHVhc3RocnV0aGEuCgogIDwhLS0jaWYgZXhwcj0iJFJFRElSRUNUX0VSUk9SX05PVEVTIiAtLT4KICAgIDwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3NwYWNlci5odG1sIiAtLT4KICAgIDwhLS0jZWNobyBlbmNvZGluZz0ibm9uZSIgdmFyPSJSRURJUkVDVF9FUlJPUl9OT1RFUyIgLS0+CiAgPCEtLSNlbmRpZiAtLT4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWdhLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IGl0CkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0taXQtLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJpdCIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9IkdhdGV3YXkgZXJyYXRvISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIElsIHNlcnZlciBwcm94eSBoYSByaWNldnV0byB1bmEgcmlzcG9zdGEKICAgIG5vbiB2YWxpZGEgZGFsIHNlcnZlciBwcmVjZWRlbnRlLgoKICA8IS0tI2lmIGV4cHI9IiRSRURJUkVDVF9FUlJPUl9OT1RFUyIgLS0+CiAgICA8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9zcGFjZXIuaHRtbCIgLS0+CiAgICA8IS0tI2VjaG8gZW5jb2Rpbmc9Im5vbmUiIHZhcj0iUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogIDwhLS0jZW5kaWYgLS0+Cgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1pdC0tCgpDb250ZW50LWxhbmd1YWdlOiBqYQpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tMjAyMi1KUApCb2R5Oi0tLS0tLS0tLS1qYS0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9ImphIgotLT48IS0tI3NldCB2YXI9IkNIQVJBQ1RFUl9FTkNPRElORyIgdmFsdWU9Imlzby0yMDIyLWpwIgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iQmFkIEdhdGV3YXkhIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgGyRCJVclbSUvJTclNSE8JVAkTz5lTi4lNSE8JVAkKyRpSVRANSRKMX5FeiRyPHU/LiQ3JF4kNyQ/ISMbKEIKCiAgPCEtLSNpZiBleHByPSIkUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogICAgPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvc3BhY2VyLmh0bWwiIC0tPgogICAgPCEtLSNlY2hvIHZhcj0iUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogIDwhLS0jZW5kaWYgLS0+CiAgICAKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tamEtLQoKQ29udGVudC1sYW5ndWFnZToga28KQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9RVVDLUtSCkJvZHk6LS0tLS0tLS0tLWtvLS0KPCEtLSNzZXQgdmFyPSJDT05URU5UX0xBTkdVQUdFIiB2YWx1ZT0ia28iCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSLA37j4tcggsNTAzMauv/7AzCEiCi0tPjwhLS0jc2V0IHZhcj0iQ0hBUkFDVEVSX0VOQ09ESU5HIiB2YWx1ZT0iRVVDLUtSIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgx8G3z73DILytufawoSC09SDArcLKwMcgvK259rfOus7FzSDA37j4tcggwMC05MC7ILnevtK9wLTPtNkuCgogIDwhLS0jaWYgZXhwcj0iJFJFRElSRUNUX0VSUk9SX05PVEVTIiAtLT4KICAgIDwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3NwYWNlci5odG1sIiAtLT4KICAgIDwhLS0jZWNobyAgZW5jb2Rpbmc9Im5vbmUiIHZhcj0iUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogIDwhLS0jZW5kaWYgLS0+Cgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1rby0tCgpDb250ZW50LWxhbmd1YWdlOiBubApDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xCkJvZHk6LS0tLS0tLS0tLW5sLS0KPCEtLSNzZXQgdmFyPSJDT05URU5UX0xBTkdVQUdFIiB2YWx1ZT0ibmwiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSJWZXJrZWVyZGUgR2F0ZXdheSEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICBEZSBwcm94eSBzZXJ2ZXIgaGVlZnQgZWVuIG9uZ2VsZGlnCiAgICBhbnR3b29yZCBvbnR2YW5nZW4gdmFuIGVlbiBnZWNvbnRhY3RlZXJkZSBzZXJ2ZXIuCgogIDwhLS0jaWYgZXhwcj0iJFJFRElSRUNUX0VSUk9SX05PVEVTIiAtLT4KICAgIDwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3NwYWNlci5odG1sIiAtLT4KICAgIDwhLS0jZWNobyBlbmNvZGluZz0ibm9uZSIgdmFyPSJSRURJUkVDVF9FUlJPUl9OT1RFUyIgLS0+CiAgPCEtLSNlbmRpZiAtLT4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLW5sLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IHBsCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTIKQm9keTotLS0tLS0tLS0tcGwtLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJwbCIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9Ik5pZXByYXdpZLNvd2EgYnJhbWEhIgotLT48IS0tI3NldCB2YXI9IkNIQVJBQ1RFUl9FTkNPRElORyIgdmFsdWU9IklTTy04ODU5LTIiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICBTZXJ3ZXIgb3RyenltYbMgbmllcHJhd2lks293sSBvZHBvd2llZLwKICAgIG9kIGtvbGVqbmVnbyBzZXJ3ZXJhLgoKICA8IS0tI2lmIGV4cHI9IiRSRURJUkVDVF9FUlJPUl9OT1RFUyIgLS0+CiAgICA8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9zcGFjZXIuaHRtbCIgLS0+CiAgICA8IS0tI2VjaG8gZW5jb2Rpbmc9Im5vbmUiIHZhcj0iUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogIDwhLS0jZW5kaWYgLS0+Cgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1wbC0tCgpDb250ZW50LWxhbmd1YWdlOiBwdC1icgpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xCkJvZHk6LS0tLS0tLXB0LWJyLS0KPCEtLSNzZXQgdmFyPSJDT05URU5UX0xBTkdVQUdFIiB2YWx1ZT0icHQtYnIiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSJHYXRld2F5IGludiZhYWN1dGU7bGlkbyEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICBPIHNlcnZpZG9yIHByb3h5IHJlY2ViZXUgdW1hIHJlc3Bvc3RhCiAgICBpbnYmYWFjdXRlO2xpZGEgZG8gc2Vydmlkb3IgZGVzdGluby4KCiAgPCEtLSNpZiBleHByPSIkUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogICAgPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvc3BhY2VyLmh0bWwiIC0tPgogICAgPCEtLSNlY2hvICBlbmNvZGluZz0ibm9uZSIgdmFyPSJSRURJUkVDVF9FUlJPUl9OT1RFUyIgLS0+CiAgPCEtLSNlbmRpZiAtLT4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLXB0LWJyLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IHJvCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0tcm8tLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJybyIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9IkdhdGV3YXkgaW52YWxpZCEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICBTZXJ2ZXJ1bCBwcm94eSBhIHByaW1pdCB1biByYXNwdW5zIGludmFsaWQKICAgIGRlIGxhIHNlcnZlcnVsIHByZWNlZGVudC4KCiAgPCEtLSNpZiBleHByPSIkUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogICAgPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvc3BhY2VyLmh0bWwiIC0tPgogICAgPCEtLSNlY2hvIGVuY29kaW5nPSJub25lIiB2YXI9IlJFRElSRUNUX0VSUk9SX05PVEVTIiAtLT4KICA8IS0tI2VuZGlmIC0tPgoKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tcm8tLQoKQ29udGVudC1sYW5ndWFnZTogc3IKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktNQpCb2R5Oi0tLS0tLS0tLS1zci0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9InNyIgotLT48IS0tI3NldCB2YXI9IkNIQVJBQ1RFUl9FTkNPRElORyIgdmFsdWU9IklTTy04ODU5LTUiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSK73ugg3+De29DXISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIL/e4eDV1N3Y59rYIOHV4NLV4CD41SDf4Njc2N4g3dXY4d/g0NLQ3QogICAg3tTT3tLe4CDe1CDh29XU1fvV0yDh1eDS1eDQIOMg3djX4y4KCiAgPCEtLSNpZiBleHByPSIkUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogICAgPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvc3BhY2VyLmh0bWwiIC0tPgogICAgPCEtLSNlY2hvIGVuY29kaW5nPSJub25lIiB2YXI9IlJFRElSRUNUX0VSUk9SX05PVEVTIiAtLT4KICA8IS0tI2VuZGlmIC0tPgoKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tc3ItLQoKQ29udGVudC1sYW5ndWFnZTogc3YKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQpCb2R5Oi0tLS0tLS0tLS1zdi0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9InN2IgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iRmVsYWt0aWcgR2F0ZXdheSEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICBQcm94eXNlcnZlcm4gbW90dG9nIGV0dCBmZWxha3RpZ3Qgc3ZhciBmciZhcmluZztuCiAgICBlbiB0aWRpZ2FyZSBzZXJ2ZXIuCgogIDwhLS0jaWYgZXhwcj0iJFJFRElSRUNUX0VSUk9SX05PVEVTIiAtLT4KICAgIDwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3NwYWNlci5odG1sIiAtLT4KICAgIDwhLS0jZWNobyBlbmNvZGluZz0ibm9uZSIgdmFyPSJSRURJUkVDVF9FUlJPUl9OT1RFUyIgLS0+CiAgPCEtLSNlbmRpZiAtLT4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4gICAKLS0tLS0tLS0tLXN2LS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IHRyCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTkKQm9keTotLS0tLS0tLS0tdHItLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJ0ciIKLS0+PCEtLSNzZXQgdmFyPSJDSEFSQUNURVJfRU5DT0RJTkciIHZhbHVlPSJJU08tODg1OS05IgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iQmFkIEdhdGV3YXkhIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgVmVraWwgKHByb3h5KSBzdW51Y3Ug/HN0YmlyaW0gKHVwc3RyZWFtKSBzdW51Y3VzdW5kYW4KICAgIGFubGFtcyYjMzA1O3ogYmlyIGNldmFwIGFsZCYjMzA1Oy4KCiAgPCEtLSNpZiBleHByPSIkUkVESVJFQ1RfRVJST1JfTk9URVMiIC0tPgogICAgPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvc3BhY2VyLmh0bWwiIC0tPgogICAgPCEtLSNlY2hvIGVuY29kaW5nPSJub25lIiB2YXI9IlJFRElSRUNUX0VSUk9SX05PVEVTIiAtLT4KICA8IS0tI2VuZGlmIC0tPgogICAgCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLXRyLS0K