Q29udGVudC1sYW5ndWFnZTogY3MKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMgpCb2R5Oi0tLS0tLS0tLS1jcy0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9ImNzIgotLT48IS0tI3NldCB2YXI9IkNIQVJBQ1RFUl9FTkNPRElORyIgdmFsdWU9IklTTy04ODU5LTIiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSJDaHlibuEgaGxhdmnoa2EgQ29udGVudC1MZW5ndGghIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgUG++YWRhdmVrIG1ldG9kb3UgPCEtLSNlY2hvIHZhcj0iUkVESVJFQ1RfUkVRVUVTVF9NRVRIT0QiIC0tPgogICAgdnm+YWR1amUga29yZWt0bu0gaGxhdmnoa3UgPGNvZGU+Q29udGVudC1MZW5ndGg8L2NvZGU+LgoKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tY3MtLQoKQ29udGVudC1sYW5ndWFnZTogZGUKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQpCb2R5Oi0tLS0tLS0tLS1kZS0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9ImRlIgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iQ29udGVudC1MZW5ndGgtQW5nYWJlIGZlaGxlcmhhZnQhIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgRGllIEFuZnJhZ2Uga2FubiBuaWNodCBiZWFudHdvcnRldCB3ZXJkZW4uCiAgICBCZWkgVmVyd2VuZHVuZyBkZXIgPCEtLSNlY2hvIHZhcj0iUkVESVJFQ1RfUkVRVUVTVF9NRVRIT0QiIC0tPi1NZXRob2RlCiAgICBtdSZzemxpZzsgZWluIGtvcnJla3RlciA8Y29kZT5Db250ZW50LUxlbmd0aDwvY29kZT4tSGVhZGVyCiAgICBhbmdlZ2ViZW4gd2VyZGVuLiAKCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWRlLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IGVuCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0tZW4tLQo8IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iQmFkIENvbnRlbnQtTGVuZ3RoISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIEEgcmVxdWVzdCB3aXRoIHRoZSA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+CiAgICBtZXRob2QgcmVxdWlyZXMgYSB2YWxpZCA8Y29kZT5Db250ZW50LUxlbmd0aDwvY29kZT4gaGVhZGVyLgoKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tZW4tLQoKQ29udGVudC1sYW5ndWFnZTogZXMKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQpCb2R5Oi0tLS0tLS0tLS1lcy0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9ImVzIgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iJmlleGNsO0NvbnRlbnQtTGVuZ3RoIGVyciZvYWN1dGU7bmVvISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIFVuYSBzb2xpY2l0dWQgY29uIGVsIG0mZWFjdXRlO3RvZG8gPCEtLSNlY2hvIHZhcj0iUkVESVJFQ1RfUkVRVUVTVF9NRVRIT0QiIC0tPiAKICAgIG5lY2VzaXRhIHVuYSBjYWJlY2VyYSA8Y29kZT5Db250ZW50LUxlbmd0aDwvY29kZT4gdiZhYWN1dGU7bGlkYS4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWVzLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IGZyCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0tZnItLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJmciIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9Ikxvbmd1ZXVyIGR1IGNvbnRlbnUgaWxsJmVhY3V0ZTtnYWwhIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgVW5lIHJlcXUmZWNpcmM7dGUgdXRpbGlzYW50IGxhIG0mZWFjdXRlO3Rob2RlIDwhLS0jZWNobwogICAgdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+IG4mZWFjdXRlO2Nlc3NpdGUgdW4gaGVhZGVyIHZhbGFibGUKICAgIDxjb2RlPkNvbnRlbnQtTGVuZ3RoPC9jb2RlPiAoaW5kaXF1YW50IGxhIGxvbmd1ZXVyKS4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWZyLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IGdhCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0tZ2EtLQo8IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iQ29udGVudC1MZW5ndGggbSZpYWN1dGU7Y2hlYXJ0ISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIElzIGcmYWFjdXRlOyBnbyBtYmgmZWFjdXRlO2FkaCBjZWFubnQmYWFjdXRlO2lzYyAKICAgIDxjb2RlPkNvbnRlbnQtTGVuZ3RoPC9jb2RlPgogICAgYmhhaWwmaWFjdXRlOyBkbyBpYXJyYXRhaXMgZmFvaW4gbW9kaCAKICAgIDwhLS0jZWNobyB2YXI9IlJFRElSRUNUX1JFUVVFU1RfTUVUSE9EIiAtLT4uCgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1nYS0tCgoKQ29udGVudC1sYW5ndWFnZTogaXQKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQpCb2R5Oi0tLS0tLS0tLS1pdC0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9Iml0IgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iQ2FtcG8gQ29udGVudC1MZW5ndGggbm9uIHZhbGlkbyEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICBVbmEgcmljaGllc3RhIGNvbiBpbCBtZXRvZG8KICAgIDwhLS0jZWNobyB2YXI9IlJFRElSRUNUX1JFUVVFU1RfTUVUSE9EIiAtLT4KICAgIHJpY2hpZWRlIGNoZSB2ZW5nYSBzcGVjaWZpY2F0byB1biBoZWFkZXIgPGNvZGU+Q29udGVudC1MZW5ndGg8L2NvZGU+CiAgICB2YWxpZG8uCgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1pdC0tCgpDb250ZW50LWxhbmd1YWdlOiBqYQpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tMjAyMi1KUApCb2R5Oi0tLS0tLS0tLS1qYS0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9ImphIgotLT48IS0tI3NldCB2YXI9IkNIQVJBQ1RFUl9FTkNPRElORyIgdmFsdWU9Imlzby0yMDIyLWpwIgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iQmFkIENvbnRlbnQtTGVuZ3RoISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIDwhLS0jZWNobyB2YXI9IlJFRElSRUNUX1JFUVVFU1RfTUVUSE9EIi0tPgogICAgGyRCJWElPSVDJUkkTiVqJS8lKCU5JUgkRyRPISIbKEIKICAgIBskQkA1JDckJBsoQiA8Y29kZT5Db250ZW50LUxlbmd0aDwvY29kZT4gGyRCJVglQyVAJCxJLE1XJEskSiRqJF4kOSEjGyhCCgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1qYS0tCgpDb250ZW50LWxhbmd1YWdlOiBrbwpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1FVUMtS1IKQm9keTotLS0tLS0tLS0ta28tLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJrbyIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9IsDfuPi1yCBDb250ZW50LUxlbmd0aCEiCi0tPjwhLS0jc2V0IHZhcj0iQ0hBUkFDVEVSX0VOQ09ESU5HIiB2YWx1ZT0iRVVDLUtSIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgPCEtLSNlY2hvIGVuY29kaW5nPSJub25lIiB2YXI9IlJFRElSRUNUX1JFUVVFU1RfTUVUSE9EIi0tPiC55r3EwLsgvrK0wgogICAgv+TDu8C6IL/Dudm4pSA8Y29kZT5Db250ZW50LUxlbmd0aDwvY29kZT4gx+y09bW1IMfUsrIgurizu77fuLggx9W0z7TZLgoKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0ta28tLQoKQ29udGVudC1sYW5ndWFnZTogbmwKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQpCb2R5Oi0tLS0tLS0tLS1ubC0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9Im5sIgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iT25nZWxkaWdlIGxlbmd0ZSBpbmhvdWQhIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgRWVuIHZyYWFnIG1ldCBoZXQgPCEtLSNlY2hvIHZhcj0iUkVESVJFQ1RfUkVRVUVTVF9NRVRIT0QiIC0tPgogICAgdHlwZSBtZXRob2RlIGhlZWZ0IGVlbiBjb3JyZWN0ZSA8Y29kZT5Db250ZW50LUxlbmd0aDwvY29kZT4gbGlqbiBub2RpZy4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLW5sLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IHBsCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTIKQm9keTotLS0tLS0tLS0tcGwtLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJwbCIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9IkKz6mRuZSBDb250ZW50LUxlbmd0aCEiCi0tPjwhLS0jc2V0IHZhcj0iQ0hBUkFDVEVSX0VOQ09ESU5HIiB2YWx1ZT0iSVNPLTg4NTktMiIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIK+xZGFuaWUgPCEtLSNlY2hvIHZhcj0iUkVESVJFQ1RfUkVRVUVTVF9NRVRIT0QiIC0tPgogICAgd3ltYWdhIHBvcHJhd25lZ28gbmFns/N3a2EgPGNvZGU+Q29udGVudC1MZW5ndGg8L2NvZGU+LgoKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tcGwtLQoKQ29udGVudC1sYW5ndWFnZTogcHQtYnIKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQpCb2R5Oi0tLS0tLS1wdC1ici0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9InB0LWJyIgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iQ29udGVudC1MZW5ndGggSW52JmFhY3V0ZTtsaWRvISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIFVtYSByZXF1aXNpJmNjZWRpbDsmYXRpbGRlO28gCiAgICBkbyBtJmVhY3V0ZTt0b2RvIDwhLS0jZWNobyB2YXI9IlJFRElSRUNUX1JFUVVFU1RfTUVUSE9EIi0tPgogICAgcmVxdWVyIHVtIGNhYmUmY2NlZGlsO2FsaG8gPGNvZGU+Q29udGVudC1MZW5ndGg8L2NvZGU+IHYmYWFjdXRlO2xpZG8uCgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS1wdC1ici0tCgpDb250ZW50LWxhbmd1YWdlOiBybwpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xCkJvZHk6LS0tLS0tLS0tLXJvLS0KPCEtLSNzZXQgdmFyPSJDT05URU5UX0xBTkdVQUdFIiB2YWx1ZT0icm8iCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSJDb250ZW50LUxlbmd0aCBpbnZhbGlkISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIE8gY2VyZXJlIGN1IG1ldG9kYSA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+CiAgICBuZWNlc2l0YSB1biBoZWFkZXIgPGNvZGU+Q29udGVudC1MZW5ndGg8L2NvZGU+IHZhbGlkLgoKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tcm8tLQoKQ29udGVudC1sYW5ndWFnZTogc3IKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktNQpCb2R5Oi0tLS0tLS0tLS1zci0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9InNyIgotLT48IS0tI3NldCB2YXI9IkNIQVJBQ1RFUl9FTkNPRElORyIgdmFsdWU9IklTTy04ODU5LTUiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSK73ujVIENvbnRlbnQtTGVuZ3RoINfQ09vQ0vnVISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgILfQ5eLV0iDh0CA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+CiAgICDc1eLe1N7cINze4NAg2NzQ4tgg2OHf4NDS3d4gPGNvZGU+Q29udGVudC1MZW5ndGg8L2NvZGU+CiAgICAo1OPW2N3QIOHQ1ODW0PjQKSDX0NPb0NL51S4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLXNyLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IHN2CkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0tc3YtLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJzdiIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9IkZlbGFrdGlnIENvbnRlbnQtTGVuZ3RoISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIEVuIGYmb3VtbDtyZnImYXJpbmc7Z2FuIG1lZCA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+CiAgICBtZXRvZGVuIGtyJmF1bWw7dmVyIGV0dCBrb3JyZWt0IDxjb2RlPkNvbnRlbnQtTGVuZ3RoPC9jb2RlPiBodXZ1ZC4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLXN2LS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IHRyCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTkKQm9keTotLS0tLS0tLS0tdHItLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJ0ciIKLS0+PCEtLSNzZXQgdmFyPSJDSEFSQUNURVJfRU5DT0RJTkciIHZhbHVlPSJJU08tODg1OS05IgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iQmFkIENvbnRlbnQtTGVuZ3RoISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIDwhLS0jZWNobyB2YXI9IlJFRElSRUNUX1JFUVVFU1RfTUVUSE9EIiAtLT4gbWV0b2R1bnUga3VsbGFuYW4gYmlyIHRhbGVwCiAgICBnZedlcmxpIGJpciA8Y29kZT5Db250ZW50LUxlbmd0aDwvY29kZT4gKGnnZXJpayB1enVubHUmIzI4Nzt1KSBiYSYjMzUxO2wmIzMwNTsmIzI4NzsmIzMwNTsgZ2VyZWt0aXJpci4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLXRyLS0K