Q29udGVudC1sYW5ndWFnZTogY3MKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMgpCb2R5Oi0tLS0tLS0tLS1jcy0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9ImNzIgotLT48IS0tI3NldCB2YXI9IkNIQVJBQ1RFUl9FTkNPRElORyIgdmFsdWU9IklTTy04ODU5LTIiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSJNZXRvZGEgbmVwb3ZvbGVuYSEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICBNZXRvZGEgPCEtLSNlY2hvIHZhcj0iUkVESVJFQ1RfUkVRVUVTVF9NRVRIT0QiIC0tPgogICAgbmVu7SBwcm8gcG++YWRvdmFu6SBVUkwgcG92b2xlbmEuCiAgICAKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tY3MtLQoKQ29udGVudC1sYW5ndWFnZTogZGUKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQpCb2R5Oi0tLS0tLS0tLS1kZS0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9ImRlIgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iTWV0aG9kZSBuaWNodCBlcmxhdWJ0ISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIERpZSA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+LU1ldGhvZGUKICAgIGlzdCBmJnV1bWw7ciBkZW4gYW5nZWZvcmRlcnRlbiBVUkwgbmljaHQgZXJsYXVidC4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWRlLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IGVuCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0tZW4tLQo8IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iTWV0aG9kIG5vdCBhbGxvd2VkISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIFRoZSA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+CiAgICBtZXRob2QgaXMgbm90IGFsbG93ZWQgZm9yIHRoZSByZXF1ZXN0ZWQgVVJMLgogICAgCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWVuLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IGVzCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0tZXMtLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJlcyIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9IiZpZXhjbDtNJmVhY3V0ZTt0b2RvIG5vIHBlcm1pdGlkbyEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCglFbCA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+CgltJmVhY3V0ZTt0b2RvIHV0aWxpemFkbyBwb3Igc3Ugc29saWNpdHVkIG5vIGVzdCZhYWN1dGU7IAoJcGVybWl0aWRvIHBvciBlbCBlbmxhY2UuCiAgICAKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tZXMtLQoKQ29udGVudC1sYW5ndWFnZTogZnIKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQpCb2R5Oi0tLS0tLS0tLS1mci0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9ImZyIgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iTSZlYWN1dGU7dGhvZGUgaW50ZXJkaXRlISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIExhIG0mZWFjdXRlO3Rob2RlIDwhLS0jZWNobyB2YXI9IlJFRElSRUNUX1JFUVVFU1RfTUVUSE9EIiAtLT4KICAgIG4nZXN0IHBhcyB1dGlsaXNhYmxlIHBvdXIgbCdVUkwgcmVxdWlzZS4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWZyLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IGdhCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0tZ2EtLQo8IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iTW9kaCBuZWFtaGNoZWFkYWl0aGUhIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgTiZpYWN1dGU7bCBjZWFkIGFuIG1vZGggCiAgICA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+CiAgICBhICZ1YWN1dGU7YXMmYWFjdXRlO2lkIGxlaXMgYW4gVVJMIGlhcnJhaXRoZS4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWdhLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IGl0CkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0taXQtLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJpdCIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9Ik1ldG9kbyBub24gY29uc2VudGl0byEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICBJbCBtZXRvZG8gPCEtLSNlY2hvIHZhcj0iUkVESVJFQ1RfUkVRVUVTVF9NRVRIT0QiIC0tPgogICAgbm9uICZlZ3JhdmU7IGNvbnNlbnRpdG8gcGVyIGwnVVJMIHJpY2hpZXN0by4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWl0LS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IGphCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy0yMDIyLUpQCkJvZHk6LS0tLS0tLS0tLWphLS0KPCEtLSNzZXQgdmFyPSJDT05URU5UX0xBTkdVQUdFIiB2YWx1ZT0iamEiCi0tPjwhLS0jc2V0IHZhcj0iQ0hBUkFDVEVSX0VOQ09ESU5HIiB2YWx1ZT0iaXNvLTIwMjItanAiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSJNZXRob2Qgbm90IGFsbG93ZWQhIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgPCEtLSNlY2hvIHZhcj0iUkVESVJFQ1RfUkVRVUVTVF9NRVRIT0QiLS0+CiAgICAbJEIlYSU9JUMlSSRPISJNVzVhJDUkbCQ/GyhCIFVSTCAbJEIkS0JQJDckRiRPNXYyRCQ1JGwkRiQkJF4kOyRzISMbKEIKICAgIAo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1qYS0tCgpDb250ZW50LWxhbmd1YWdlOiBrbwpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1FVUMtS1IKQm9keTotLS0tLS0tLS0ta28tLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJrbyIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9Isfjv+u1x8H2IL7KtMIgv+TDuyC55r3EISIKLS0+PCEtLSNzZXQgdmFyPSJDSEFSQUNURVJfRU5DT0RJTkciIHZhbHVlPSJFVUMtS1IiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICA8IS0tI2VjaG8gZW5jb2Rpbmc9Im5vbmUiIHZhcj0iUkVESVJFQ1RfUkVRVUVTVF9NRVRIT0QiLS0+ILnmvcTAugogICAgv+TDu8fRIFVSTL+hILvnv+vH0iC89iC++L3AtM+02S4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLWtvLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IG5sCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tLS0tbmwtLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJubCIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9IlR5cGUgbWV0aG9kZSBuaWV0IHRvZWdlbGF0ZW4hIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgSGV0IDwhLS0jZWNobyB2YXI9IlJFRElSRUNUX1JFUVVFU1RfTUVUSE9EIiAtLT4KICAgIHR5cGUgbWV0aG9kZSBpcyBuaWV0IHRvZWdlbGF0ZW4gdm9vciBkZSBnZXZyYWFnZGUgVVJMLgoKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tbmwtLQoKQ29udGVudC1sYW5ndWFnZTogcGwKQ29udGVudC10eXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMgpCb2R5Oi0tLS0tLS0tLS1wbC0tCjwhLS0jc2V0IHZhcj0iQ09OVEVOVF9MQU5HVUFHRSIgdmFsdWU9InBsIgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0iTmllZG96d29sb25hIG1ldG9kYSEiCi0tPjwhLS0jc2V0IHZhcj0iQ0hBUkFDVEVSX0VOQ09ESU5HIiB2YWx1ZT0iSVNPLTg4NTktMiIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIE1ldG9kYSA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+CiAgICBqZXN0IG5pZWRvendvbG9uYSBkbGEgcG9kYW5lZ28gVVJMYS4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLXBsLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IHB0LWJyCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEKQm9keTotLS0tLS0tcHQtYnItLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJwdC1iciIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9Ik0mZWFjdXRlO3RvZG8gbiZhdGlsZGU7byBwZXJtaXRpZG8hIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgTyBtJmVhY3V0ZTt0b2RvIDwhLS0jZWNobyB2YXI9IlJFRElSRUNUX1JFUVVFU1RfTUVUSE9EIiAtLT4KICAgIG4mYXRpbGRlO28gJmVhY3V0ZTsgcGVybWl0aWRvIHBhcmEgYSBVUkwgcmVxdWlzaXRhZGEuCgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS1wdC1ici0tCgpDb250ZW50LWxhbmd1YWdlOiBybwpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xCkJvZHk6LS0tLS0tLS0tLXJvLS0KPCEtLSNzZXQgdmFyPSJDT05URU5UX0xBTkdVQUdFIiB2YWx1ZT0icm8iCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSJNZXRvZGEgbmVwZXJtaXNhISIKLS0+PCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvdG9wLmh0bWwiIC0tPgoKICAgIE1ldG9kYSA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+CiAgICBudSBlc3RlIHBlcm1pc2EgcGVudHJ1IFVSTC11bCBjZXJ1dC4KCjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL2JvdHRvbS5odG1sIiAtLT4KLS0tLS0tLS0tLXJvLS0KCkNvbnRlbnQtbGFuZ3VhZ2U6IHNyCkNvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTUKQm9keTotLS0tLS0tLS0tc3ItLQo8IS0tI3NldCB2YXI9IkNPTlRFTlRfTEFOR1VBR0UiIHZhbHVlPSJzciIKLS0+PCEtLSNzZXQgdmFyPSJDSEFSQUNURVJfRU5DT0RJTkciIHZhbHVlPSJJU08tODg1OS01IgotLT48IS0tI3NldCB2YXI9IlRJVExFIiB2YWx1ZT0ivNXi3tQg3dj41SDU3tfS3vnV3SEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+CiAgICDc1eLe1CDd2PjVINTe19Le+dXdINfQINfQ5eLV0tDd2CDDwLsuCgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1zci0tCgpDb250ZW50LWxhbmd1YWdlOiBzdgpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS0xCkJvZHk6LS0tLS0tLS0tLXN2LS0KPCEtLSNzZXQgdmFyPSJDT05URU5UX0xBTkdVQUdFIiB2YWx1ZT0ic3YiCi0tPjwhLS0jc2V0IHZhcj0iVElUTEUiIHZhbHVlPSJNZXRvZGVuIGludGUgdGlsbCZhcmluZzt0ZW4hIgotLT48IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS90b3AuaHRtbCIgLS0+CgogICAgPCEtLSNlY2hvIHZhcj0iUkVESVJFQ1RfUkVRVUVTVF9NRVRIT0QiIC0tPgogICAgbWV0b2RlbiAmYXVtbDtyIGludGUgdGlsbCZhcmluZzt0ZW4gZiZvdW1sO3IgZGVuIGYmb3VtbDtyZnImYXJpbmc7Z2FkZQogICAgYWRyZXNzZW4uCgo8IS0tI2luY2x1ZGUgdmlydHVhbD0iaW5jbHVkZS9ib3R0b20uaHRtbCIgLS0+Ci0tLS0tLS0tLS1zdi0tCgpDb250ZW50LWxhbmd1YWdlOiB0cgpDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1JU08tODg1OS05CkJvZHk6LS0tLS0tLS0tLXRyLS0KPCEtLSNzZXQgdmFyPSJDT05URU5UX0xBTkdVQUdFIiB2YWx1ZT0idHIiCi0tPjwhLS0jc2V0IHZhcj0iQ0hBUkFDVEVSX0VOQ09ESU5HIiB2YWx1ZT0iSVNPLTg4NTktOSIKLS0+PCEtLSNzZXQgdmFyPSJUSVRMRSIgdmFsdWU9Ik1ldGhvZCBub3QgYWxsb3dlZCEiCi0tPjwhLS0jaW5jbHVkZSB2aXJ0dWFsPSJpbmNsdWRlL3RvcC5odG1sIiAtLT4KCiAgICA8IS0tI2VjaG8gdmFyPSJSRURJUkVDVF9SRVFVRVNUX01FVEhPRCIgLS0+IHn2bnRlbWkgdGFsZXAgZXR0aSYjMjg3O2luaXogVVJMIGnnaW4ga3VsbGFuJiMzMDU7bGFtYXouCiAgICAKPCEtLSNpbmNsdWRlIHZpcnR1YWw9ImluY2x1ZGUvYm90dG9tLmh0bWwiIC0tPgotLS0tLS0tLS0tdHItLQo=